[Freeswitch-users] Unbridge Call

Ian McMaster ian.mcmaster at gmail.com
Tue May 6 16:20:57 MSD 2014


Hi Luiz,

Try the following to control the a-leg and b-leg after a successful bridge,
using ESL.

1.  Create an extension in your dialplan for the b-leg; this may simply
hangup, or play a message then hangup

If you use:
sendmsg
call-command: hangup
hangup-cause: CHANNEL_UNACCEPTABLE\n\n

then both sides will drop.  Try sending this on the socket instead (you
will need the uuid from the CHANNEL_DATA event for this one):

api uuid_transfer <uuid> -bleg <B_LEG_EXT> xml default
(this should get rid of bleg and keep a-leg.for further processing)

Hope this helps,
Ian.


On Tue, May 6, 2014 at 12:24 AM, Luiz Fernando Softov <
fernando at softov.com.br> wrote:

> Hi everyone.
>
>
> I have this problem making outbound call. Maybe someone can help me with
> this.
>
> I'm have a service in C (TCP Server),  where i receive all calls.
>
>
> +--------+                             +--------+
> | A 1001 |--> make call -> dialplan -> | socket |
> +--------+                             +--------+
>
> <extension name="outcalls">
>     <condition>
>         <action application="socket" data="127.0.0.1:8084 async full"/>
>         <action application="hangup"/>
>     </condition>
> </extension>
>
> After i accept the connection on port 8084 i send a connect command,
> and receive the CHANNEL_DATA event.
>
>
> In this service I do all the work of billing and control of active calls.
>
> I have a internal structure, of my extensions (numbers in my FS)
>
> IF EXTENSION HAVE MONEY i will send this commands to connection
>
> to make a bridge between A [1001] and B [1003]
>
> ****
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: set\n
> execute-app-arg: dialed_extension=1003\n\n
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: export\n
> execute-app-arg: dialed_extension=1003
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: set\n
> execute-app-arg: bypass_media=true\n\n
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: set\n
> execute-app-arg: call_timeout=30\n\n
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: set\n
> execute-app-arg: hangup_after_bridge=true\n\n
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: set\n
> execute-app-arg: continue_on_fail=true\n\n
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: bridge\n
> execute-app-arg: user/${dialed_extension}@${domain_name}\n\n
>
> ****
>
> - Call work fine, WITHOUT <uuid>, WITH <uuid> i receive this WARNING
> - [WARNING] mod_sofia.c:1281 Asynchronous PTIME not supported, changing
> our end from 30 to 20
>
> The phone ring, and i answer the call, normal!
>
>
> But now I stopped because I not know, how to CANCEL the bridge (UNBRIDGE)
> and do something with the A-leg.
>
>
> "Something, like, HANGUP B-leg, and play a sound file to A-leg, then
> hangup the call."
>
> I tried, but all commands i have sended like
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: hangup\n
> execute-app-arg: CHANNEL_UNACCEPTABLE\n\n
>
> or
>
> sendmsg\n
> call-command: execute\n
> execute-app-name: break\n\n
>
> Do nothing with the call
>
> I tried with and without "event-lock: true"
>
> I receive only this in FS log
>
> [DEBUG] switch_core_session.c:1151 Send signal sofia/internal/
> 1001 at 192.168.211.69[BREAK]
>
> I tried with and without "event-lock: true"
>
> I need to do this such as: credit is over, I need to cancel the current
> bridge and play a sound to the user and hangup call
>
> or to simple hangup a call
>
> I receive this in FS console LOG after a-leg or bleg hangup a phone and
> call terminated
>
> [DEBUG] switch_ivr.c:614 sofia/internal/1001 at 192.168.211.69Command
> Execute hangup()
> [DEBUG] switch_core_session.c:2614 sofia/internal/1001 at 192.168.211.69Channel
> is hungup and application 'hangup' does not have the zombie_exec flag.
> [DEBUG] switch_ivr.c:657 sofia/internal/1001 at 192.168.211.69 skip receive
> message [AUDIO_SYNC] (channel is hungup already)
>
> This is for each "sendmsg" i send after bridge was answered.
>
>
> Sorry about my english...
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20140506/325559a9/attachment-0001.html 


Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list