Added Bridge Logic to merge two existing channels
Showing
3 changed files
with
17 additions
and
2 deletions
| ... | @@ -19,6 +19,7 @@ use PAMI\Message\Event\HangupEvent; | ... | @@ -19,6 +19,7 @@ use PAMI\Message\Event\HangupEvent; |
| 19 | use PAMI\Message\Event\UnknownEvent; | 19 | use PAMI\Message\Event\UnknownEvent; |
| 20 | use PAMI\Message\Event\DialBeginEvent; | 20 | use PAMI\Message\Event\DialBeginEvent; |
| 21 | use PAMI\Message\Event\DialEndEvent; | 21 | use PAMI\Message\Event\DialEndEvent; |
| 22 | use PAMI\Message\Event\BlindTransferEvent; | ||
| 22 | 23 | ||
| 23 | use PAMI\Message\Action\AGIAction; | 24 | use PAMI\Message\Action\AGIAction; |
| 24 | use PAMI\Message\Action\SIPNotifyAction; | 25 | use PAMI\Message\Action\SIPNotifyAction; |
| ... | @@ -886,6 +887,11 @@ class KPAMIListen implements IEventListener | ... | @@ -886,6 +887,11 @@ class KPAMIListen implements IEventListener |
| 886 | $dialline=Dialline::find($crmcall->dialline_id); | 887 | $dialline=Dialline::find($crmcall->dialline_id); |
| 887 | if($dialline && $dialstatus=="ANSWER") | 888 | if($dialline && $dialstatus=="ANSWER") |
| 888 | { | 889 | { |
| 890 | $tsip=Sipid::find($crmcall->sipid_id); | ||
| 891 | |||
| 892 | $newqueue=new Kqueue(); | ||
| 893 | $newqueue->channelRedirectToExten($tsip->server,$dchannel,"1004".$tsip->id,"confTransfer","1"); | ||
| 894 | |||
| 889 | $dialline->channel=$dchannel; | 895 | $dialline->channel=$dchannel; |
| 890 | $dialline->uniqueid=$uniqueid; | 896 | $dialline->uniqueid=$uniqueid; |
| 891 | $dialline->status="transfer"; | 897 | $dialline->status="transfer"; |
| ... | @@ -903,6 +909,11 @@ class KPAMIListen implements IEventListener | ... | @@ -903,6 +909,11 @@ class KPAMIListen implements IEventListener |
| 903 | } | 909 | } |
| 904 | } | 910 | } |
| 905 | 911 | ||
| 912 | private function BlindTransferEvent(EventMessage $event) | ||
| 913 | { | ||
| 914 | Log::info("BlindTransferEvent"); | ||
| 915 | } | ||
| 916 | |||
| 906 | private function UnknownEvent(EventMessage $event) | 917 | private function UnknownEvent(EventMessage $event) |
| 907 | { | 918 | { |
| 908 | $eventname=$event->getKey("Event"); | 919 | $eventname=$event->getKey("Event"); | ... | ... |
| ... | @@ -74,7 +74,7 @@ class Kqueue extends Model{ | ... | @@ -74,7 +74,7 @@ class Kqueue extends Model{ |
| 74 | $dialstr = $dialline->dialstr; | 74 | $dialstr = $dialline->dialstr; |
| 75 | $server = $dialline->server; | 75 | $server = $dialline->server; |
| 76 | $channel = $dialline->channel; | 76 | $channel = $dialline->channel; |
| 77 | Log::info($channel); | 77 | |
| 78 | if($server != '') | 78 | if($server != '') |
| 79 | { | 79 | { |
| 80 | $odata=array();$odata['VARS']=array(); | 80 | $odata=array();$odata['VARS']=array(); | ... | ... |
| ... | @@ -49,7 +49,7 @@ exten => _X!,n,ConfBridge(${CHANNEL}) | ... | @@ -49,7 +49,7 @@ exten => _X!,n,ConfBridge(${CHANNEL}) |
| 49 | exten => _X!,n,Hangup | 49 | exten => _X!,n,Hangup |
| 50 | 50 | ||
| 51 | [initiateTransfer] | 51 | [initiateTransfer] |
| 52 | exten => _1003XXX!,1,Dial(${dialstr}${callnumber},30,t) | 52 | exten => _1003XXX!,1,Dial(${dialstr}${callnumber},120,tT) |
| 53 | exten => _1003XXX!,n,Hangup | 53 | exten => _1003XXX!,n,Hangup |
| 54 | ;exten => _1000XXX!,1,ConfBridge(${EXTEN}) | 54 | ;exten => _1000XXX!,1,ConfBridge(${EXTEN}) |
| 55 | ;exten => _1000XXX!,n,Hangup | 55 | ;exten => _1000XXX!,n,Hangup |
| ... | @@ -60,6 +60,10 @@ exten => _1003XXX!,n,Hangup | ... | @@ -60,6 +60,10 @@ exten => _1003XXX!,n,Hangup |
| 60 | ;exten => _X!,n,ConfBridge(${chnl}) | 60 | ;exten => _X!,n,ConfBridge(${chnl}) |
| 61 | ;exten => _X!,n,Hangup | 61 | ;exten => _X!,n,Hangup |
| 62 | 62 | ||
| 63 | [confTransfer] | ||
| 64 | exten => _1004XXX!,1,ConfBridge(${CHANNEL}) | ||
| 65 | exten => _1004XXX!,n,Hangup | ||
| 66 | |||
| 63 | [kstychPlayFile] | 67 | [kstychPlayFile] |
| 64 | exten => 1001,1,Answer | 68 | exten => 1001,1,Answer |
| 65 | exten => 1001,n,Playback(silence/1) | 69 | exten => 1001,n,Playback(silence/1) | ... | ... |
-
Please register or sign in to post a comment