Esempio n. 1
0
 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']))