after some more tests, it turns out that last commit to master after which ivr connectCallee works is bbc1e33a110b8f462dffd13a09dade3d9d8d26bc on Fri, 7 Dec 2012. then there was a large set of commits by raphael and vaclav that broke ivr connectCallee reply handling. i tested after commit 39f7685192bcccf51cf28453fd790148b24e508a on 2013-01-16 and with that failure reply to connectCallee caused sems to end the call.
below is a bit simpler ivr test script to try if someone figures out what the problem might be. -- juha
import time from log import * from ivr import * beep_file = "/var/lib/sems/audio/general/beep_snd.wav" callee_list = ['sip:[email protected]', 'sip:[email protected]'] beeping = 1 connecting = 2 connected = 3 class IvrDialog(IvrDialogBase): def onSessionStart(self): self.callee_list = callee_list self.callee_index = 0 self.setNoRelayonly() self.state = beeping self.audio_msg = IvrAudioFile() self.audio_msg.open(beep_file, AUDIO_READ) self.enqueue(self.audio_msg, None) def onBye(self): self.stopSession() def onEmptyQueue(self): if self.state == beeping: self.state = connecting self.connectTry() return return def onOtherReply(self, code, reason): info("test: got reply: " + str(code) + " " + reason) if self.state == connecting: if code < 200: return if code >= 200 and code < 300: self.flush() self.disconnectMedia() self.setRelayonly() self.state = connected info('test: connected to ' + self.callee_uri) return if code >= 300: time.sleep(3) self.connectTry() return else: return def connectTry(self): self.callee_uri = self.callee_list[self.callee_index] self.callee_index = (self.callee_index + 1) % 2 info('test: trying to connectCallee ' + self.callee_uri) self.connectCallee(self.callee_uri, self.callee_uri)
_______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
