예제 #1
0
 private void Pbx_OnBridgeAttendedTransferEvent(IAriClient sender, BridgeAttendedTransferEvent e)
 {
     ProtocolMessages.Message msg = null;
     lock (_locker)
     {
         //Este evento trae muchisima info, requiere de mayor estudio/prueba
         //ver como queda el canal del caller, seguro hay un rename por ahi
         CallHandler callHandler = callHandlerCache.GetByChannelId(e.Transferee.Id);
         if (callHandler == null)
         {
             callHandler = callHandlerCache.GetByChannelId(e.Transfer_target.Id);
         }
         if (callHandler != null)
         {
             msg = callHandler.AttendedTransferEvent(e.Transferee, e.Transfer_target);
         }
     }
     //Mando el mensaje
     if (msg != null)
     {
         actorPbxProxy.Send(msg);
     }
     else
     {
         Log.Logger.Debug("AttTransfer devolvió msg = null");
     }
 }
예제 #2
0
 private void Pbx_OnBridgeBlindTransferEvent(IAriClient sender, BridgeBlindTransferEvent e)
 {
     ProtocolMessages.Message msg = null;
     lock (_locker)
     {
         CallHandler callHandler = callHandlerCache.GetByChannelId(e.Transferee.Id);
         if (callHandler == null)
         {
             callHandler = callHandlerCache.GetByChannelId(e.Replace_channel.Id);
         }
         if (callHandler != null)
         {
             msg = callHandler.AttendedTransferEvent(e.Transferee, e.Replace_channel);
         }
     }
     //Mando el mensaje
     if (msg != null)
     {
         actorPbxProxy.Send(msg);
     }
     else
     {
         Log.Logger.Debug("UnAttTransfer devolvió msg = null");
     }
 }