[Freeswitch-dev] hangup_after_bridge and intercept application
Francisco de Ezcurra
francisco at deezcurra.com.ar
Thu Aug 14 16:07:07 EDT 2008
The fix works if i hangup the channel that makes the intercept. The other leg
goes back to the fifo. But when i hangup the other leg the channel that made
the intercept is hung up.
What I expect with this (ext. 2101) dialplan is that the channel that makes
the intercept executes the transfer to 2102 when the other leg hangs up.
Is this possible? I can not use the variable api_hangup_hook on the channel
created in the originate via MES because I don't know at that moment the
other leg.
Thanks
Panchi
On Wednesday 13 August 2008, Anthony Minessale wrote:
try the original way you posted with latest trunk.
On Wed, Aug 13, 2008 at 3:39 PM, Francisco de Ezcurra <
francisco at deezcurra.com.ar> wrote:
> I've tried to do the same with the variables exec_after_bridge_app and
> exec_after_bridge_arg but i have a problem with them. As I could see the
> application set in the variable 'exec_after_bridge_app' is executed also
> when
> I use transfer to send both channels of the bridge to another extension
> and I
> only need to execute it if the other leg hangs up.
>
>
> Thanks
> Panchi
>
>
>
>
> On Wednesday 13 August 2008, Juan Jose Comellas wrote:
> According to the way I understand the hangup_after_bridge variable works,
> I
> think what you're doing is correct. There is another way to write the
> extension so that the A leg of the bridge can continue working after the
> B leg hangs up and the bridge is broken. You should rewrite the
> "intercept" extension in the following way:
>
> <extension name="intercept">
> <condition field="destination_number" expression="2101">
> <action application="answer" />
> <action application="set"
> data="exec_after_bridge_app=transfer"/> <action application="set"
> data="exec_after_bridge_arg=2102"/>
> <action application="intercept"
> data="eb13f47c-6960-11dd-b3aa-65ce53a0ab35"/>
> </condition>
> </extension>
>
> AFAIK, the "exec_after_bridge_app" variable only works for the A leg of a
> channel. It would be nice if it also worked for the B leg when the A leg
> hangs up.
>
>
>
> On Wed, Aug 13, 2008 at 12:40 PM, Francisco de Ezcurra <
>
> francisco at deezcurra.com.ar> wrote:
> > Hi all
> >
> > I'm trying to transfer the a channel after the other leg hangup in a
> > bridge created with the application 'intercept' using the flag
> > hangup_after_bridge,
> > but it seems not to be working. (Below are the steps I followed).
> >
> > Am i doing anything wrong ?
> >
> > Thanks in advance
> > Panchi
>
> --------------------------------------------------------------------------
>
> >------------ 1) Make a call via mod_event_socket to a registered phone
> > (here
> > user2.fezcurra) and transfer the it to the extension 2100 (waiting) to
> > wait for the other party.
> >
> > api originate
>
> {hangup_after_bridge=false}sofia/default/user3.fezcurra
>
> > 2100
> >
> > Content-Type: api/response
> > Content-Length: 41
> >
> > +OK 72a3cb6a-6943-11dd-b3aa-65ce53a0ab35
> >
> > 2) Set the UUID in the intercept action in the dialplan.
> >
> > <action application="intercept"
> > data="72a3cb6a-6943-11dd-b3aa-65ce53a0ab35"/>
> >
> > 3) Make a call with another phone to the extension 2101
> >
> > 4) Hangup the first call originated via mod_event_socket (phone
>
> registered
>
> > as
> > user2.fezcurra).
> >
> > Problem:
> > I expected the second phone to be transferred to the extension
> > 2102 and hear the audio and then hangup, but i never hear the audio and
> > the channel is hungup when the bridge terminates.
>
> --------------------------------------------------------------------------
>
> >------------ Here are the extensions in the dialplan:
> >
> > <extension name="waiting">
> > <condition field="destination_number" expression="2100">
> > <action application="fifo" data="myqueue in undef
> > test/clientdata/system/audios/male/en_US/misc/HoldMusic.wav"/>
> > </condition>
> > </extension>
> >
> > <extension name="intercept">
> > <condition field="destination_number" expression="2101">
> > <action application="answer" />
> > <action application="set" data="hangup_after_bridge=false"/>
> > <!-- This is the UUID returned in the originate (step 1) -->
> > <action application="intercept"
> > data="72a3cb6a-6943-11dd-b3aa-65ce53a0ab35"/>
> > <action application="transfer" data="2102"/>
> > </condition>
> > </extension>
> >
> > <extension name="hold_music">
> > <condition field="destination_number" expression="2102">
> > <action application="playback"
> > data="test/clientdata/system/audios/male/en_US/misc/HoldMusic.wav"/>
> > <action application="hangup" />
> > </condition>
> > </extension>
> >
> > _______________________________________________
> > Freeswitch-dev mailing list
> > Freeswitch-dev at lists.freeswitch.org
> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> > http://www.freeswitch.org
>
> _______________________________________________
> Freeswitch-dev mailing list
> Freeswitch-dev at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> http://www.freeswitch.org
More information about the Freeswitch-dev
mailing list