def handler_ami_createbridge(self, data): logger.debug("AMIBridge handler_ami_createbridge") uniqueid = data['bridge']['uniqueid'] bridgeduniqueid = data['bridge']['bridgeduniqueid'] if self.originateCalls.has_key(uniqueid): originateCall = self.originateCalls[uniqueid] originateCall.srcChannel = data['bridge']['uniqueid'] originateCall.bridgetChannel = data['bridge']['bridgedchannel'] originateCall.bridgetUniqueId = data['bridge']['bridgeduniqueid'] bridgedStatus = data['bridge']['status'] originateCall.bridgedStatus = bridgedStatus if bridgedStatus == 'Dial': self._send_call_state(0x31, self.originateCalls[uniqueid].dest) else: logger.debug("AMIBridge : handler_ami_createbridge skip to send the status %s to F1" % (bridgedStatus)) else: logger.debug("AMIBridge : handler_ami_createbridge can't find into originate calls") #create bridged call bridgekey = (uniqueid, bridgeduniqueid) if not self.bridgedCalls.has_key(bridgekey): ''' ''' bridge = BasicObject("Bridge") bridge.uniqueid = uniqueid bridge.bridgeduniqueid = data['bridge']['bridgeduniqueid'] bridge.channel = data['bridge']['channel'] bridge.bridgedchannel = data['bridge']['bridgedchannel'] bridge.status = data['bridge']['status'] bridge.dialtime = data['bridge']['dialtime'] #bridge.linktime = data['bridge']['linktime'] self._set_callerid_for_bridge(bridge) if logging.DUMPOBJECTS: logger.debug("Bridge create :%s", bridge) self.bridgedCalls[bridgekey] = bridge #update an incomming call if existe self._callCenter.update_call_from_bridge(bridge) else: logger.warning("AMIBridge : bridge call already existe %s with %s" % (data['bridge']['channel'], data['bridge']['bridgedchannel']))