LegA is an incoming call, legB is an outgoing call.<div><br></div><div>The dialplan is:</div><div><br></div><div><div> <extension name="myhandler"></div><div> <condition field="destination_number" expression="^xxxx$"></div>
<div> <action application="set" data="dialstring=sofia/external/yyyy@zzzz /></div><div> <action application="socket" data="<a href="http://127.0.0.1:8084">127.0.0.1:8084</a> async full"/></div>
<div> </condition></div><div> </extension></div></div><div><br></div><div>When the legB answer the call, I receive the "CHANNEL_ANSWER" event on legB and I send the "answer" to legA (I have already done a uuid_bridge when originate has ended).</div>
<div>The audio continue to be mute in both direction.</div><div><br></div><div>The "uuid_bridge" works only if I call it after received "CHANNEL_ANSWER" in legB or after I send "answer" to legA.</div>
<div><br></div><div>It's not enough to do a "pre_answer".</div><div><br></div><div>Stephen<br><br><div class="gmail_quote">On Tue, Feb 15, 2011 at 6:15 PM, Anthony Minessale <span dir="ltr"><<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">What happens once they answer?<br>
<br>
This is not one of those attempts to speed up click to call by calling<br>
them both at once is it?<br>
<div><div></div><div class="h5"><br>
<br>
On Tue, Feb 15, 2011 at 10:29 AM, Stephen Wilde <<a href="mailto:wstephen80@gmail.com">wstephen80@gmail.com</a>> wrote:<br>
> Ok, I have tried with "pre_answer" to the inbound channel (that will be the<br>
> first uuid in the "uuid_bridge") but with same result: no audio from<br>
> outbound (in progressing media state) to inbound (in progressing media state<br>
> due to my pre_answer).<br>
> Here the sequence of events:<br>
> [ERROR] newacme.cpp:193 mycallback() Connected!<br>
> [ERROR] newacme.cpp:113 Originate() bgapi originate<br>
> [origination_uuid=61e00b94-f4d3-4ac4-bcf5-8fba02a18de6]sofia/external/xxxx@yyyy<br>
> &park()<br>
> [ERROR] newacme.cpp:115 Originate() Job-ID:<br>
> eee79d97-dbf8-49d4-9bf9-578ef75f73ea<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_UUID]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_OUTGOING]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_ORIGINATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CALL_UPDATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] - [CODEC]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] - [CODEC]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_PROGRESS_MEDIA]<br>
> [ERROR] newacme.cpp:250 mycallback() Executing 'pre_answer' on INBOUND<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_EXECUTE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_PARK]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_PROGRESS_MEDIA]<br>
> [ERROR] newacme.cpp:127 BridgeTo() bgapi uuid_bridge<br>
> 902e2cd4-10ee-4938-97cf-c9eb2ac969f8 61e00b94-f4d3-4ac4-bcf5-8fba02a18de6<br>
> [ERROR] newacme.cpp:129 BridgeTo() Job-ID:<br>
> 7a66a5c7-721c-47f4-aff2-373ec20123c8<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE_COMPLETE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CALL_UPDATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_ANSWER]<br>
> [ERROR] newacme.cpp:255 mycallback() Executing 'answer' on INBOUND<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_ANSWER]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE_COMPLETE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_HANGUP]<br>
> [ERROR] newacme.cpp:260 mycallback() Executing 'hangup' on INBOUND<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_HANGUP]<br>
> [ERROR] newacme.cpp:272 mycallback() Executing 'hangup' on OUTBOUND<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_UNPARK]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE_COMPLETE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_EXECUTE_COMPLETE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_UNPARK]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_EXECUTE_COMPLETE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_HANGUP_COMPLETE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_DESTROY]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_CALLSTATE]<br>
> [ERROR] newacme.cpp:246 mycallback() Got an event: [OUTBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_STATE]<br>
> [ERROR] newacme.cpp:268 mycallback() Got an event: [INBOUND] -<br>
> [CHANNEL_HANGUP_COMPLETE]<br>
> [ERROR] newacme.cpp:290 mycallback() End.<br>
><br>
><br>
> On Tue, Feb 15, 2011 at 5:09 PM, Anthony Minessale<br>
> <<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a>> wrote:<br>
>><br>
>> Well you can't bridge 2 unanswered channels together.<br>
>> You need at least one of them to have been pre_answered and that<br>
>> should be the first uuid in the list.<br>
>><br>
>><br>
>> On Tue, Feb 15, 2011 at 3:48 AM, Stephen Wilde <<a href="mailto:wstephen80@gmail.com">wstephen80@gmail.com</a>><br>
>> wrote:<br>
>> > I have tried to wait originate completition but the "uuid_bridge"<br>
>> > doesn't<br>
>> > works also in this case.<br>
>> > It seems that works only when at least one leg is answered so it's not<br>
>> > possible to do the "uuid_bridge" during progressing phase also if the<br>
>> > originate has ended (I don't set the ignore_early_media).<br>
>> > My application is this: <a href="http://pastebin.freeswitch.org/15387" target="_blank">http://pastebin.freeswitch.org/15387</a><br>
>> > The application:<br>
>> > 1. receive a call with an "inbound_uuid"<br>
>> > 2. create a new "outbound_uuid"<br>
>> > 3. do a "bgapi originate" using the new "outbound_uuid"<br>
>> > 4. when the called phone is ringing, receive a "CHANNEL_PROGRESS_MEDIA"<br>
>> > event on "outbound_uuid" and do a "pre_answer" on "inbound_uuid"<br>
>> > 5. receive a "CHANNEL_PROGRESS_MEDIA" on "inbound_uuid"<br>
>> > 6. receive a job completition event related to the "originate" so issue<br>
>> > an<br>
>> > "uuid_bridge inbound_uuid outbound_uuid"<br>
>> > 7. when a job completition event related to "uuid_bridge" is received,<br>
>> > no<br>
>> > audio flow from outbound to inbound channel<br>
>> > 8. when outbound answer the call, the application answer also the<br>
>> > inbound<br>
>> > call but no audio flow in both directions<br>
>> > If I do the uuid_bridge after legB answer, then all is ok (obviously<br>
>> > with no<br>
>> > audio during progressing phase).<br>
>> ><br>
>> > The log of my application is:<br>
>> > [ERROR] newacme.cpp:46 mycallback() Connected!<br>
>> > [ERROR] newacme.cpp:65 mycallback() Inbound uuid =<br>
>> > 8b2c39db-1ad9-489c-b72f-a92d4087bf99<br>
>> > [ERROR] newacme.cpp:68 mycallback() create_uuid:<br>
>> > 394167aa-2811-4fcd-95c9-85576bdd9a7a<br>
>> > [ERROR] newacme.cpp:89 mycallback() bgapi originate<br>
>> ><br>
>> > [origination_uuid=394167aa-2811-4fcd-95c9-85576bdd9a7a]sofia/external/xxxx@yyyy<br>
>> > &park()<br>
>> > [ERROR] newacme.cpp:91 mycallback() Job-ID:<br>
>> > 1c654ac2-c22d-418f-9fad-bb6b6b35aeff<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_UUID]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_OUTGOING]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_ORIGINATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CALL_UPDATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] - [CODEC]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] - [CODEC]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_PROGRESS_MEDIA]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:112 mycallback() Got an event: [BACKGROUND_JOB] -<br>
>> > [1c654ac2-c22d-418f-9fad-bb6b6b35aeff]<br>
>> > [ERROR] newacme.cpp:119 mycallback() bgapi uuid_bridge<br>
>> > 8b2c39db-1ad9-489c-b72f-a92d4087bf99<br>
>> > 394167aa-2811-4fcd-95c9-85576bdd9a7a<br>
>> > [ERROR] newacme.cpp:123 mycallback() Job-ID:<br>
>> > 0d43cffe-fdc6-4a13-97e6-aeee199c45d5<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_EXECUTE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_PARK]<br>
>> > [ERROR] newacme.cpp:112 mycallback() Got an event: [BACKGROUND_JOB] -<br>
>> > [0d43cffe-fdc6-4a13-97e6-aeee199c45d5]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_PROGRESS_MEDIA]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE_COMPLETE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CALL_UPDATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_ANSWER]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_ANSWER]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE_COMPLETE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_HANGUP]<br>
>> > [ERROR] newacme.cpp:160 mycallback() hangup<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_UNPARK]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_EXECUTE_COMPLETE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_HANGUP_COMPLETE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_DESTROY]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:138 mycallback() Got an event: [OUTBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_CALLSTATE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_HANGUP]<br>
>> > [ERROR] newacme.cpp:171 mycallback() hangup<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE_COMPLETE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_UNPARK]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_EXECUTE_COMPLETE]<br>
>> > [ERROR] newacme.cpp:167 mycallback() Got an event: [INBOUND] -<br>
>> > [CHANNEL_STATE]<br>
>> > [ERROR] newacme.cpp:184 mycallback() End.<br>
>> ><br>
>> > Stephen<br>
>> ><br>
>> > On Tue, Feb 15, 2011 at 1:14 AM, Anthony Minessale<br>
>> > <<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a>> wrote:<br>
>> >><br>
>> >> if you do originate without ignore_early_media=true set it will end<br>
>> >> the soonest possible where it's suitable for a bridge.<br>
>> >> so that is the best bet to wait for originate to end.<br>
>> >><br>
>> >><br>
>> >> On Mon, Feb 14, 2011 at 6:11 PM, Stephen Wilde <<a href="mailto:wstephen80@gmail.com">wstephen80@gmail.com</a>><br>
>> >> wrote:<br>
>> >> > Ok, now I'm doing bridge when I receive "CHANNEL_ANSWER" or<br>
>> >> > "CHANNEL_PROGRESS_MEDIA" on outbound leg but you say that I have wait<br>
>> >> > that<br>
>> >> > "originate has ended": you mean that I have to wait for<br>
>> >> > "BACKGROUND_JOB"<br>
>> >> > event related to my "bgapi originate ... &park"?<br>
>> >> > I'm already doing "uuid_bridge <inbound_uuid> <outbound_uuid>".<br>
>> >> > I'll try also with intercept and inline originate. Thank you!<br>
>> >> > Stephen<br>
>> >> ><br>
>> >> > On Tue, Feb 15, 2011 at 12:53 AM, Anthony Minessale<br>
>> >> > <<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a>> wrote:<br>
>> >> >><br>
>> >> >> you need to make sure originate has ended on the outbound leg before<br>
>> >> >> you use it in a bridge etc.<br>
>> >> >> you also need to supply the inbound leg first in uuid_bridge if that<br>
>> >> >> is something you want to do.<br>
>> >> >><br>
>> >> >> Easier would be to originate the B leg to park inline and tell A leg<br>
>> >> >> to execute intercept on the B leg uuid.<br>
>> >> >><br>
>> >> >><br>
>> >> >><br>
>> >> >> On Mon, Feb 14, 2011 at 5:44 PM, Stephen Wilde<br>
>> >> >> <<a href="mailto:wstephen80@gmail.com">wstephen80@gmail.com</a>><br>
>> >> >> wrote:<br>
>> >> >> > Sorry but I have missed something.<br>
>> >> >> > I know that I can solve this problem directly in dialplan with a<br>
>> >> >> > bridge<br>
>> >> >> > but<br>
>> >> >> > what I'm doing is an "Freeswitch ESL learning" because I have to<br>
>> >> >> > port<br>
>> >> >> > some<br>
>> >> >> > application in Freeswitch and I'm learning how to implement some<br>
>> >> >> > functionality.<br>
>> >> >> > For me it's important to take control of both inbound/outbound in<br>
>> >> >> > full<br>
>> >> >> > async<br>
>> >> >> > way and I have the necessity to do the complete call control.<br>
>> >> >> > I'm not sure but to me it seems that with a normal bridge I lose<br>
>> >> >> > the<br>
>> >> >> > control<br>
>> >> >> > of two sessions, for example, an outbound answer is propagated by<br>
>> >> >> > bridge<br>
>> >> >> > application as inbound answer.<br>
>> >> >> > What I want to do is an audio bridging so my application can take<br>
>> >> >> > control of<br>
>> >> >> > "signaling bridging".<br>
>> >> >> ><br>
>> >> >> > I'm wrong? There are other way to do that?<br>
>> >> >> > Stephen<br>
>> >> >> > On Tue, Feb 15, 2011 at 12:19 AM, Michael Collins<br>
>> >> >> > <<a href="mailto:msc@freeswitch.org">msc@freeswitch.org</a>><br>
>> >> >> > wrote:<br>
>> >> >> >><br>
>> >> >> >> My head is spinning after reading this email. :)<br>
>> >> >> >> It sounds like you just need a simple bridge from the incoming<br>
>> >> >> >> leg<br>
>> >> >> >> to<br>
>> >> >> >> the<br>
>> >> >> >> outgoing leg. Can you pre_answer the A leg then execute a good<br>
>> >> >> >> old-fashioned<br>
>> >> >> >> bridge to the b-leg?<br>
>> >> >> >> -MC<br>
>> >> >> >> On Mon, Feb 14, 2011 at 4:57 PM, Stephen Wilde<br>
>> >> >> >> <<a href="mailto:wstephen80@gmail.com">wstephen80@gmail.com</a>><br>
>> >> >> >> wrote:<br>
>> >> >> >>><br>
>> >> >> >>> The problem I have is to propagate the audio coming from an<br>
>> >> >> >>> "originated"<br>
>> >> >> >>> outbound session to the inbound session when the outbound is in<br>
>> >> >> >>> the<br>
>> >> >> >>> PROGRESS<br>
>> >> >> >>> MEDIA phase.<br>
>> >> >> >>> When my application receives the "CHANNEL_PROGRESS_MEDIA" event<br>
>> >> >> >>> from<br>
>> >> >> >>> outbound session I can do a "pre_answer" on inbound session but<br>
>> >> >> >>> I'm<br>
>> >> >> >>> not<br>
>> >> >> >>> capable to do an audio bridge.<br>
>> >> >> >>> I have tried with "uuid_bridge <outbound_uuid> <inbound_uuid>"<br>
>> >> >> >>> with<br>
>> >> >> >>> no<br>
>> >> >> >>> result probably because this api requires that at least one<br>
>> >> >> >>> session<br>
>> >> >> >>> must be<br>
>> >> >> >>> answered.<br>
>> >> >> >>> I don't want to answer to the inbound session to propagate the<br>
>> >> >> >>> outbound<br>
>> >> >> >>> progressing media but I want to answer to inbound only on<br>
>> >> >> >>> outbound<br>
>> >> >> >>> answer.<br>
>> >> >> >>> Any way to do that?<br>
>> >> >> >>> Stephen<br>
>> >> >> >>> _______________________________________________<br>
>> >> >> >>> FreeSWITCH-users mailing list<br>
>> >> >> >>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> >> >>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >> >> >>><br>
>> >> >> >>><br>
>> >> >> >>><br>
>> >> >> >>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> >> >>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> >> >> >>><br>
>> >> >> >><br>
>> >> >> >><br>
>> >> >> >> _______________________________________________<br>
>> >> >> >> FreeSWITCH-users mailing list<br>
>> >> >> >> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> >> >> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >> >> >><br>
>> >> >> >><br>
>> >> >> >><br>
>> >> >> >> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> >> >> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> >> >> >><br>
>> >> >> ><br>
>> >> >> ><br>
>> >> >> > _______________________________________________<br>
>> >> >> > FreeSWITCH-users mailing list<br>
>> >> >> > <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> >> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >> >> ><br>
>> >> >> ><br>
>> >> >> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> >> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> >> >> ><br>
>> >> >> ><br>
>> >> >><br>
>> >> >><br>
>> >> >><br>
>> >> >> --<br>
>> >> >> Anthony Minessale II<br>
>> >> >><br>
>> >> >> FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
>> >> >> ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
>> >> >> Twitter: <a href="http://twitter.com/FreeSWITCH_wire" target="_blank">http://twitter.com/FreeSWITCH_wire</a><br>
>> >> >><br>
>> >> >> AIM: anthm<br>
>> >> >> <a href="mailto:MSN%3Aanthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
>> >> >> GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com">PAYPAL:anthony.minessale@gmail.com</a><br>
>> >> >> IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
>> >> >><br>
>> >> >> FreeSWITCH Developer Conference<br>
>> >> >> <a href="mailto:sip%3A888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
>> >> >> <a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
>> >> >> pstn:+19193869900<br>
>> >> >><br>
>> >> >> _______________________________________________<br>
>> >> >> FreeSWITCH-users mailing list<br>
>> >> >> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> >> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >> >><br>
>> >> >><br>
>> >> >> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> >> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> >> ><br>
>> >> ><br>
>> >> > _______________________________________________<br>
>> >> > FreeSWITCH-users mailing list<br>
>> >> > <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >> ><br>
>> >> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> >> ><br>
>> >> ><br>
>> >><br>
>> >><br>
>> >><br>
>> >> --<br>
>> >> Anthony Minessale II<br>
>> >><br>
>> >> FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
>> >> ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
>> >> Twitter: <a href="http://twitter.com/FreeSWITCH_wire" target="_blank">http://twitter.com/FreeSWITCH_wire</a><br>
>> >><br>
>> >> AIM: anthm<br>
>> >> <a href="mailto:MSN%3Aanthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
>> >> GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com">PAYPAL:anthony.minessale@gmail.com</a><br>
>> >> IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
>> >><br>
>> >> FreeSWITCH Developer Conference<br>
>> >> <a href="mailto:sip%3A888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
>> >> <a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
>> >> pstn:+19193869900<br>
>> >><br>
>> >> _______________________________________________<br>
>> >> FreeSWITCH-users mailing list<br>
>> >> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> >> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> >><br>
>> >> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> >> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > FreeSWITCH-users mailing list<br>
>> > <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>><br>
>><br>
>><br>
>> --<br>
>> Anthony Minessale II<br>
>><br>
>> FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
>> ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
>> Twitter: <a href="http://twitter.com/FreeSWITCH_wire" target="_blank">http://twitter.com/FreeSWITCH_wire</a><br>
>><br>
>> AIM: anthm<br>
>> <a href="mailto:MSN%3Aanthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
>> GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com">PAYPAL:anthony.minessale@gmail.com</a><br>
>> IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
>><br>
>> FreeSWITCH Developer Conference<br>
>> <a href="mailto:sip%3A888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
>> <a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
>> pstn:+19193869900<br>
>><br>
>> _______________________________________________<br>
>> FreeSWITCH-users mailing list<br>
>> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
><br>
><br>
> _______________________________________________<br>
> FreeSWITCH-users mailing list<br>
> <a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
><br>
><br>
<br>
<br>
<br>
--<br>
Anthony Minessale II<br>
<br>
FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
Twitter: <a href="http://twitter.com/FreeSWITCH_wire" target="_blank">http://twitter.com/FreeSWITCH_wire</a><br>
<br>
AIM: anthm<br>
<a href="mailto:MSN%3Aanthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
GTALK/JABBER/<a href="mailto:PAYPAL%3Aanthony.minessale@gmail.com">PAYPAL:anthony.minessale@gmail.com</a><br>
IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
<br>
FreeSWITCH Developer Conference<br>
<a href="mailto:sip%3A888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
<a href="mailto:googletalk%3Aconf%2B888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
pstn:+19193869900<br>
<br>
_______________________________________________<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div></blockquote></div><br></div>