How to bridge a call to an extension defined in dialplan
Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote:
Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous <anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain &eavesdrop aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003 &eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote:
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before:
Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop aleg_uuid)
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Peter,
Thanks for your reply!
You are right, that is what I have been experiencing but not I wanted.
Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker.
The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice.
I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me.
Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user)
Best, Xing
On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x &eavesdrop(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003 &eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote:
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before:
Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop aleg_uuid)
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Peter,
Thanks for your reply!
You are right, that is what I have been experiencing but not I wanted.
Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker.
The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice.
I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me.
Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user)
Best, Xing
On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote:
You can find the syntax for eavesdrop in the wiki. Here's how I have it working:
api originate sofia/internal/1234@x.x.x.x&eavesdrop(aleg_uuid)
You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs.
You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is:
1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before.
Hope this helps
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Hector,
Many thanks for your advice!
I had a try but without success yet. What I am doing is
1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension>
2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session.
So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop.
At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION]
I am not quite sure if I understand correctly how the eavesdrop works:
Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app?
Thanks! Xing
On 02/27/2012 08:59 PM, Hector Geraldino wrote:
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before:
Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop aleg_uuid)
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Peter,
Thanks for your reply!
You are right, that is what I have been experiencing but not I wanted.
Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker.
The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice.
I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me.
Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user)
Best, Xing
On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote:
You can find the syntax for eavesdrop in the wiki. Here's how I have it working:
api originate sofia/internal/1234@x.x.x.x&eavesdrop(aleg_uuid)
You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs.
You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is:
1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before.
Hope this helps
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Hector,
Many thanks for your advice!
I had a try but without success yet. What I am doing is
1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension>
2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session.
So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop.
At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION]
I am not quite sure if I understand correctly how the eavesdrop works:
Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app?
Thanks! Xing
On 02/27/2012 08:59 PM, Hector Geraldino wrote:
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before:
Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop aleg_uuid)
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Peter,
Thanks for your reply!
You are right, that is what I have been experiencing but not I wanted.
Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker.
The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice.
I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me.
Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user)
Best, Xing
On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote:
Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java)
Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan.
Hope this serve as an starting point...
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Thanks for the detailed explanations, Hector!
First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension?
I am asking those questions because I haven't got mine work and want to fully understand how you did it.
I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated.
I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21]
I copy full outputs here:
2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to&eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING]
Any more thoughts?
Desperately want to sort this out for tomorrow morning's meeting!
Thanks! Xing
On 02/28/2012 03:24 PM, Hector Geraldino wrote:
You can find the syntax for eavesdrop in the wiki. Here's how I have it working:
api originate sofia/internal/1234@x.x.x.x&eavesdrop(aleg_uuid)
You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs.
You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is:
1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before.
Hope this helps
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Hector,
Many thanks for your advice!
I had a try but without success yet. What I am doing is
1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension>
2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session.
So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop.
At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION]
I am not quite sure if I understand correctly how the eavesdrop works:
Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app?
Thanks! Xing
On 02/27/2012 08:59 PM, Hector Geraldino wrote:
You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before:
Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop aleg_uuid)
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi Peter,
Thanks for your reply!
You are right, that is what I have been experiencing but not I wanted.
Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker.
The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice.
I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me.
Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user)
Best, Xing
On 02/27/2012 06:33 PM, Peter Olsson wrote:
Can you explain what you're trying to achieve by doing this?
If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated.
/Peter
Från: freeswitch-users-bounces@lists.freeswitch.org [freeswitch-users-bounces@lists.freeswitch.org] för x.liu [x.liu@hw.ac.uk] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
Hi again,
It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened.
A bit desperately to solve this problem ASAP as we will have a demo in a few days.
Please could anybody give any clue?
Many thanks!
On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" )
I copy part of terminal message here, hope it is not too much message for the email list.
-------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>! -------------------------------------------------
Hi,
H tried this way
<action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/>
74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well.
I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL
What would be the reason for that?
Thanks, Xing
On 02/26/2012 10:29 PM, Liu, Xingkun wrote:
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
________________________________
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.
Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310!
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Yeah, I tried this syntax before. I didn't work. Now tried again, I got error as below and the softphone(1003) was terminated immediately: 2012-02-28 21:52:20.227899 [INFO] switch_channel.c:2695 sofia/internal/1003 Flipping CID from "" <0000000000> to "Outbound Call" <1003%192.168.0.2> 2012-02-28 21:52:20.227899 [ERR] mod_dptools.c:714 Usage: [all | <uuid>] 2012-02-28 21:52:20.227899 [NOTICE] switch_core_state_machine.c:226 sofia/internal/1003 has executed the last dialplan instruction, hanging up. And according to the wiki, the originate api needs a Call_from parameter: Usage: originate <call_url> <exten> <call_url> URL you are calling. <exten> Extension you are calling from Or is this because I have a bit old version of FreeSwitch? FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600) Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 20:33 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Sorry, it works for me. Try to do it from the fs_cli command line and share the results. From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 5:11 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Yeah, I tried this syntax before. I didn't work. Now tried again, I got error as below and the softphone(1003) was terminated immediately: 2012-02-28 21:52:20.227899 [INFO] switch_channel.c:2695 sofia/internal/1003 Flipping CID from "" <0000000000> to "Outbound Call" <1003%192.168.0.2> 2012-02-28 21:52:20.227899 [ERR] mod_dptools.c:714 Usage: [all | <uuid>] 2012-02-28 21:52:20.227899 [NOTICE] switch_core_state_machine.c:226 sofia/internal/1003 has executed the last dialplan instruction, hanging up. And according to the wiki, the originate api needs a Call_from parameter: Usage: originate <call_url> <exten> <call_url> URL you are calling. <exten> Extension you are calling from Or is this because I have a bit old version of FreeSwitch? FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600) Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 20:33 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278.
From the fs_cli command line, I don't know where to get the UUID for eavesdrop. Anyway use "all" instead of a specific UUID for eavesdrop.
It looks like the same results as I issue the command from the ESL app. From fs_cli command line, I issue: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &eavesdrop all I got same error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] When I issue: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all the softphone seems to work fine, I clicked Answer button, but still could not hear any thing from the speaker when I make a call to my app. By the way, which version of FS are you using, the latest Git version? ( I am afraid I don't have time to try the latest FS version tonight, may try it later on) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 22:30 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extensiondefined in dialplan Sorry, it works for me. Try to do it from the fs_cli command line and share the results. From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 5:11 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Yeah, I tried this syntax before. I didn't work. Now tried again, I got error as below and the softphone(1003) was terminated immediately: 2012-02-28 21:52:20.227899 [INFO] switch_channel.c:2695 sofia/internal/1003 Flipping CID from "" <0000000000> to "Outbound Call" <1003%192.168.0.2> 2012-02-28 21:52:20.227899 [ERR] mod_dptools.c:714 Usage: [all | <uuid>] 2012-02-28 21:52:20.227899 [NOTICE] switch_core_state_machine.c:226 sofia/internal/1003 has executed the last dialplan instruction, hanging up. And according to the wiki, the originate api needs a Call_from parameter: Usage: originate <call_url> <exten> <call_url> URL you are calling. <exten> Extension you are calling from Or is this because I have a bit old version of FreeSwitch? FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600) Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 20:33 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
You can get the uuid in fs_cli by using the show channels, or show calls commands. Also, the parameter for the eavesdrop app goes between parenthesis, so it's &eavesdrop(uuid) Finally, try to do the originate without any additional arguments, just: originate originateString and if it works then add the &eavesdrop(uuid). It will help you to figure out where the problem might be. From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 6:14 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extensiondefined in dialplan
From the fs_cli command line, I don't know where to get the UUID for eavesdrop. Anyway use "all" instead of a specific UUID for eavesdrop.
It looks like the same results as I issue the command from the ESL app.
From fs_cli command line, I issue:
originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &eavesdrop all I got same error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] When I issue: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all the softphone seems to work fine, I clicked Answer button, but still could not hear any thing from the speaker when I make a call to my app. By the way, which version of FS are you using, the latest Git version? ( I am afraid I don't have time to try the latest FS version tonight, may try it later on) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 22:30 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extensiondefined in dialplan Sorry, it works for me. Try to do it from the fs_cli command line and share the results. From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 5:11 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Yeah, I tried this syntax before. I didn't work. Now tried again, I got error as below and the softphone(1003) was terminated immediately: 2012-02-28 21:52:20.227899 [INFO] switch_channel.c:2695 sofia/internal/1003 Flipping CID from "" <0000000000> to "Outbound Call" <1003%192.168.0.2> 2012-02-28 21:52:20.227899 [ERR] mod_dptools.c:714 Usage: [all | <uuid>] 2012-02-28 21:52:20.227899 [NOTICE] switch_core_state_machine.c:226 sofia/internal/1003 has executed the last dialplan instruction, hanging up. And according to the wiki, the originate api needs a Call_from parameter: Usage: originate <call_url> <exten> <call_url> URL you are calling. <exten> Extension you are calling from Or is this because I have a bit old version of FreeSwitch? FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600) Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 20:33 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Hi Hector, See my reply inline below. You can get the uuid in fs_cli by using the show channels, or show calls commands. Also, the parameter for the eavesdrop app goes between parenthesis, so it's &eavesdrop(uuid) Thanks for the advice for using fs_cli! What you pointed out here, the "parenthesis", is the key for my problem!! I didn't get it from the wiki usage: eavesdrop [<uuid>|all] and didn't notice it in the wiki's examples! I should have checked every details more carefully! Finally, try to do the originate without any additional arguments, just: originate originateString and if it works then add the &eavesdrop(uuid). It will help you to figure out where the problem might be. I tried, simply combining them won't work. Please see my reply to Michael's response a few minutes ago for details. I also used the bridge (without eavesdrop) to have achieved my goal. Some examples are also in my reply to Michael's response. Hector, you have been so helpful to my problems! Thanks so much for your helps! I greatly appreciate it! Best regards, Xing From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 6:14 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extensiondefined in dialplan
From the fs_cli command line, I don't know where to get the UUID for eavesdrop. Anyway use "all" instead of a specific UUID for eavesdrop.
It looks like the same results as I issue the command from the ESL app.
From fs_cli command line, I issue:
originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &eavesdrop all I got same error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] When I issue: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all the softphone seems to work fine, I clicked Answer button, but still could not hear any thing from the speaker when I make a call to my app. By the way, which version of FS are you using, the latest Git version? ( I am afraid I don't have time to try the latest FS version tonight, may try it later on) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 22:30 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extensiondefined in dialplan Sorry, it works for me. Try to do it from the fs_cli command line and share the results. From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Liu, Xingkun Sent: Tuesday, February 28, 2012 5:11 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Yeah, I tried this syntax before. I didn't work. Now tried again, I got error as below and the softphone(1003) was terminated immediately: 2012-02-28 21:52:20.227899 [INFO] switch_channel.c:2695 sofia/internal/1003 Flipping CID from "" <0000000000> to "Outbound Call" <1003%192.168.0.2> 2012-02-28 21:52:20.227899 [ERR] mod_dptools.c:714 Usage: [all | <uuid>] 2012-02-28 21:52:20.227899 [NOTICE] switch_core_state_machine.c:226 sofia/internal/1003 has executed the last dialplan instruction, hanging up. And according to the wiki, the originate api needs a Call_from parameter: Usage: originate <call_url> <exten> <call_url> URL you are calling. <exten> Extension you are calling from Or is this because I have a bit old version of FreeSwitch? FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600) Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Hector Geraldino Sent: Tue 2/28/2012 20:33 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Why are you specifying the 5801 extension before the eavesdrop? You want to dial the Softphone extension: 1003, so all you need to do is to specifiy it on the originate string and pass the control to the eavesdrop app: originate sofia/internal/1003@X.X.X.X<mailto:sofia/internal/1003@X.X.X.X> &eavesdrop(uuid) You don't need any more references to 5801, specially because you already have the UUID which is all you need to do the eavesdrop From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 2:27 PM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks again! Yes, I used dvarne's Java ESL library for a while. It works fine for the recording the a-leg, but the b-leg which is originated with eavesdrop to a Softphone does not work as expected. There was an error in my originate usage: originate sofia/internal/1003%x.x.x.x 5801&eavesdrop " + this.channelUniqueID); I changed the extension 5801 to &socket(127.0.0.1:9981 async full) which is the action inside the extension 5801 then my softphone does not hang up any more, but I still can not hear the conversation of a-leg on the softphone. There may be something wrong with my use of the combination of originate and eavesdrop. I will look into it again. Best, Xing On 02/28/2012 06:21 PM, Hector Geraldino wrote: Ok, I can see you're using dvarne's java ESL library. Please download the source code from GIT and try to run the outbound client demo (located in src/test/java/SocketClientTest.java) Assuming you're already familiar with the netty programming model, here's what I did: I changed the implementation of the SimpleHangupOutboundHandler class in the demo to do what you're asking: it will first answer the call, bridge it to an extension, record the call and make a 2nd call to another extension using the combination of originate + eavesdrop. Backup the original file and replace it with this new implementation. Also adjust the port number on the SocketClientTest class to match the one configured in your dialplan. Hope this serve as an starting point... -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 12:40 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Thanks for the detailed explanations, Hector! First, sorry for my further questions here: In 2. you originate a 2nd call to an internal extension, what is this internal extension doing? In 5. from where you originate the 3rd call, your java app or dialplan, or does it matter? and to which extension? I am asking those questions because I haven't got mine work and want to fully understand how you did it. I originate a 2rd call to my softphone from my java app. The softphone was ringing and I clicked Answer button on the GUI then it was immediately terminated. I got some confusing outputs like Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] and Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] I copy full outputs here: 2012-02-28 13:18:28.056043 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [b3a3b61c-620e-11e1-8995-0b1a37fbec21] 2012-02-28 13:18:28.076030 [NOTICE] mod_dptools.c:1117 Channel [sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk>] has been answered 2012-02-28 13:18:29.098072 [NOTICE] sofia.c:5460 Ring-Ready sofia/internal/1003! 2012-02-28 13:18:31.839862 [NOTICE] sofia.c:6077 Channel [sofia/internal/1003] has been answered 2012-02-28 13:18:31.839862 [NOTICE] switch_core_state_machine.c:166 Hangup sofia/internal/1003 [CS_ROUTING] [NO_ROUTE_DESTINATION] 2012-02-28 13:18:31.839862 [NOTICE] switch_ivr.c:1711 Transfer sofia/internal/1003 to &eavesdrop[1003@b38cb4c6-620e-11e1-8992-0b1a37fbec21] 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1395 Session 16 (sofia/internal/1003) Ended 2012-02-28 13:18:31.839862 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-28 13:19:02.756130 [NOTICE] sofia.c:634 Hangup sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] Any more thoughts? Desperately want to sort this out for tomorrow morning's meeting! Thanks! Xing On 02/28/2012 03:24 PM, Hector Geraldino wrote: You can find the syntax for eavesdrop in the wiki. Here's how I have it working: api originate sofia/internal/1234@x.x.x.x&eavesdrop<mailto:sofia/internal/1234@x.x.x.x&eavesdrop>(aleg_uuid) You can try this command in the fs_cli command line (w/o the 'api' prefix). Eavesdrop will allow you to jump into a call and monitor the conversation. If the call has been bridged, you can hear both legs. You can do the bridge however you want. The bridge operation is not related to the eavesdrop, so the way I have this working is: 1. I answer the call in the dialplan, and transfer the control to my java app (just as you're doing right now) 2. I originate a 2nd call to an internal extension. 3. When the 2nd call is answered, I bridge both calls using uuid_bridge uuid_lega uuid_legb (you can even do the bridge from the dialplan) 4. I start recording the call using 'uuid_record uuid_lega' (again, you can call the record application from the dialplan) 5. I can (if desired) monitor the call by originating a 3rd call to the manager extension + passing the uuid_lega to the eavesdrop app, as discussed before. Hope this helps -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Tuesday, February 28, 2012 9:08 AM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Hector, Many thanks for your advice! I had a try but without success yet. What I am doing is 1. call to an extension: 5801, it will execute my ESL Java app. I call it a-leg <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> 2. From my ESL Java app, I originate b-leg to my softphoe and eavesdrop on extension 5801 by response = sendSyncSingleLineCommand(ctx.getChannel(), "api originate sofia/internal/1003%x.x.x.x 1003&eavesdrop " + this.channelUniqueID); the channelUniqueID is the UUID of my a-leg session. So I hope my app do the recording and talking to the user and I listen it from the softphone 1003 via eavesdrop. At the moment I got message: Hangup on 1003 with [CS-ROUTING] [NO_ROUTE_DESTINATION] I am not quite sure if I understand correctly how the eavesdrop works: Which UUID should I use in "&eavesdrop UUID", the existing one of a-leg or I need to create a new one for b-leg? Do I need to do the bridge, in extension 5801 or in my app? Thanks! Xing On 02/27/2012 08:59 PM, Hector Geraldino wrote: You can: bridge two endpoints (A -> B), record the conversation using uuid_record (or the record application), and have a 3rd extension hearing the conversation using the eavesdrop app. Here's how I've done this before: Incoming call (A-Party) Bridge call to B-Party (bridge 1xxx@example.domain<mailto:1xxx@example.domain>) Record the conversation (uuid_record aleg_uuid /path/to/audio.file) A C-Party listen using eavesdrop (originate 2xxx@example.domain&eavesdrop<mailto:2xxx@example.domain&eavesdrop> aleg_uuid) -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of x.liu Sent: Monday, February 27, 2012 2:52 PM To: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi Peter, Thanks for your reply! You are right, that is what I have been experiencing but not I wanted. Actually my goal is simply to record the user call by my app (js or java via ESL) and at the same time I want to hear what the user is saying through my computer's speaker. The recording app seems to be ok ( I tried recording via dialplan commands as well as ESL Java app). What I am doing now is to bridge the call to my app for recording and to a softphone for hearing user's voice. I thought it would work as the wiki says the bridge can bridge the call to multiple endpoints at the same time, but unfortunately it won't work for me. Any suggestions to achieve my goal please: recording and hearing user's voice? (Note: my app will do the recording and also allow me send TTS to the user) Best, Xing On 02/27/2012 06:33 PM, Peter Olsson wrote: Can you explain what you're trying to achieve by doing this? If you bridge to multiple destinations, the first destination that answers will create the actual call - all other legs are terminated. /Peter Från: freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org> [freeswitch-users-bounces@lists.freeswitch.org<mailto:freeswitch-users-bounces@lists.freeswitch.org>] för x.liu [x.liu@hw.ac.uk<mailto:x.liu@hw.ac.uk>] Skickat: den 27 februari 2012 19:11 Till: freeswitch-users@lists.freeswitch.org<mailto:freeswitch-users@lists.freeswitch.org> Ämne: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan Hi again, It looks like there is something wrong relating to the [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL], but no idea how this happened. A bit desperately to solve this problem ASAP as we will have a demo in a few days. Please could anybody give any clue? Many thanks! On 02/27/2012 11:34 AM, x.liu wrote: Now I tried it at a different machine with different version of FS. The behaviour is slightly different. This time the softphone is ringing but the recording extension is not correctly executed. The version for this test is "FreeSWITCH Version 1.0.head (git-e566057 2011-12-14 10-27-31 -0500)" (The FS version for previous tries is "FreeSWITCH Version 1.0.head (git-54ddef0 2011-12-06 21-53-45 -0600)" ) I copy part of terminal message here, hope it is not too much message for the email list. -------------------------------------------------- 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> [7596ad60-6133-11e1-9141-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74997 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [75976d18-6133-11e1-9145-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [75977f24-6133-11e1-914a-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [7597aab2-6133-11e1-914e-8b50a5b8b13b] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_channel.c:920 New Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [75980192-6133-11e1-9150-8b50a5b8b13b] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@public] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] 09:04.180223 [INFO] mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context public 09:04.180223 [NOTICE] switch_core_session.c:1397 Session 2 (sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x>) Ended 09:04.180223 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/1003@x.x.x.x<mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x><mailto:sofia/internal/1003@x.x.x.x> [CS_DESTROY] 09:04.180223 [NOTICE] switch_ivr.c:1711 Transfer sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk> to XML[1003@default] 09:04.180223 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->1003 in context default 09:04.180223 [NOTICE] sofia.c:427 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [BLIND_TRANSFER] 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 4 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *1 execute_extension::dx XML features 09:04.201188 [INFO] mod_dialplan_xml.c:481 Processing anonymous<anonymous>->74999 in context public 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *2 record_session:: recordings/anonymous.2012-02-27-11-09-04.wav 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 3 (sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/74999@x.x.x.x<mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x><mailto:sofia/internal/74999@x.x.x.x> [CS_DESTROY] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *3 execute_extension::cf XML features 09:04.201188 [NOTICE] sofia.c:6134 Hangup sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_EXECUTE] [ORIGINATOR_CANCEL] 09:04.201188 [INFO] switch_ivr_async.c:3164 Bound B-Leg: *4 execute_extension::att_xfer XML features 09:04.201188 [NOTICE] switch_core_session.c:1397 Session 5 (sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x>) Ended 09:04.201188 [NOTICE] switch_core_session.c:1399 Close Channel sofia/internal/anonymous@x.x.x.x<mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x><mailto:sofia/internal/anonymous@x.x.x.x> [CS_DESTROY] 09:04.201188 [NOTICE] switch_channel.c:920 New Channel sofia/internal/sip:1003@y.y.y.y:5062 [759a6630-6133-11e1-9158-8b50a5b8b13b] 09:04.740223 [NOTICE] sofia.c:5462 Ring-Ready sofia/internal/sip:1003@y.y.y.y:5062! 09:04.740223 [NOTICE] mod_sofia.c:2470 Ring-Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:04.740223 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! 09:07.700221 [NOTICE] sofia.c:6040 Channel [sofia/internal/sip:1003@y.y.y.y:5062] has been answered 09:07.700221 [NOTICE] switch_ivr_originate.c:483 Ring Ready sofia/external/anonymous@sipgate.co.uk<mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk><mailto:sofia/external/anonymous@sipgate.co.uk>! ------------------------------------------------- Hi, H tried this way <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991@${domain}"/> 74991 is reached and I heard the prompt. The 1003 softphone is terminated immediately after it is reached. then extension 74991 hung up itself as well. I saw the terminal message: mod_dptools.c:2897 Originate Failed. Cause: ORIGINATOR_CANCEL What would be the reason for that? Thanks, Xing On 02/26/2012 10:29 PM, Liu, Xingkun wrote: Hello, I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml It looks like: <extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension> <extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension> The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991. The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time? I did lots of Googling, checked the wiki and tried various ways but still without success. Any advices please? Many Thanks! Xing ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org><mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org><mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. !DSPAM:4f4bc71e32767806511310! _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012 _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. ________________________________ Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012. Heriot-Watt University is a Scottish charity registered under charity number SC000278. -- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Maybe, I am not sure what's wrong. I didn't do the originate and eavesdrop from dialplan, I do it from a ESL Java app. My dialplan is as follow: <extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension> the extension is also specified in my sip_profile so I can dial into 5801 by calling my sip provider's number. My Java app answers the call, then from the app (which also do the recording) I do the originate to the softphone (extension 1003): api originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all This originate call does not give the error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] (It would give the error if I remove &socket(127.0.0.1:9981 async full) ) But I can not hear the conversation from the softphone. My goal is to listen to the conversation while doing the recording. Best, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Ken Rice Sent: Tue 2/28/2012 22:45 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan This looks like a dialplan issue... Show the exact originate and dialplan you are using K On 2/28/12 4:10 PM, "Liu, Xingkun" <X.Liu@hw.ac.uk> wrote:
[ERR] mod_dptools.c:714 Usage: [all | <uuid>]
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Okay, I've been really crazy so I just go to this thread. I confess: TL;DR. ;) Try this for your originate line: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &eavesdrop('all') Also, if you have mod_shout and mod_xml_rpc loaded you can do this trick for listening to calls on your computer's speakers: http://wiki.freeswitch.org/wiki/Webapi#Telecast I don't know if that will do exactly what you want but it might get you going in the right direction. -MC On Tue, Feb 28, 2012 at 3:30 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Maybe, I am not sure what's wrong.
I didn't do the originate and eavesdrop from dialplan, I do it from a ESL Java app.
My dialplan is as follow:
<extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension>
the extension is also specified in my sip_profile so I can dial into 5801 by calling my sip provider's number.
My Java app answers the call, then from the app (which also do the recording) I do the originate to the softphone (extension 1003):
api originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all
This originate call does not give the error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] (It would give the error if I remove &socket(127.0.0.1:9981 async full) )
But I can not hear the conversation from the softphone. My goal is to listen to the conversation while doing the recording.
Best, Xing
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Ken Rice Sent: Tue 2/28/2012 22:45 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
This looks like a dialplan issue...
Show the exact originate and dialplan you are using
K
On 2/28/12 4:10 PM, "Liu, Xingkun" <X.Liu@hw.ac.uk> wrote:
[ERR] mod_dptools.c:714 Usage: [all | <uuid>]
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Michael, See my reply inline below. Okay, I've been really crazy so I just go to this thread. I confess: TL;DR. ;) That's fine, I understand :-) Try this for your originate line: originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &eavesdrop('all') Great, your suggestion works! (With or without the single guote in eavesdrop parameter) It also works when I change 'all' to my UUID: this.channelUniqueID. This morning I used "bridge" without eavesdrop to have achieved my goal: Java app does the recording and the softphone listens the voice. both two example below work: bridge","{ignore_early_media=true}sofia/internal/1003%192.168.0.2 bridge","{ignore_early_media=true}user/1003 The key problem was 1. I missed the parenthesis for eavesdrop as also pointed out by Hector. as I quickly checked the usage in the wiki: eavesdrop [<uuid>|all] but didn't notice the usage in the examples. 2. simply combine the originate and eavesdrop won't work because a separated originate needs two parameters <call_url> <exten> | ... but worked combined originate and eavesdrop only needs one: i.e. <call_url> so "originate <call_url>" won't work but "originate <call_url> <exten> |..." works! (though I didn't figure out the <exten> syntax for a dialplan extension, only got &socket(...) work). "originate <call_url> &eavesdrop(UUID)" works! Also, if you have mod_shout and mod_xml_rpc loaded you can do this trick for listening to calls on your computer's speakers: http://wiki.freeswitch.org/wiki/Webapi#Telecast I don't know if that will do exactly what you want but it might get you going in the right direction. I may look at it as well later on as for now I have the solutions, thanks for the suggestions! Thanks so much for your helps! I greatly appreciate it! Best regards, Xing -MC On Tue, Feb 28, 2012 at 3:30 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Maybe, I am not sure what's wrong.
I didn't do the originate and eavesdrop from dialplan, I do it from a ESL Java app.
My dialplan is as follow:
<extension name="myEslNew5801"> <condition field="destination_number" expression="^5801$"> <action application="limit" data="hash outgoing 5801 4" /> <action application="socket" data="127.0.0.1:9981 async full"/> </condition> </extension>
the extension is also specified in my sip_profile so I can dial into 5801 by calling my sip provider's number.
My Java app answers the call, then from the app (which also do the recording) I do the originate to the softphone (extension 1003):
api originate {ignore_early_media=true}sofia/internal/1003%192.168.0.2 &socket(127.0.0.1:9981 async full) &eavesdrop all
This originate call does not give the error: [ERR] mod_dptools.c:714 Usage: [all | <uuid>] (It would give the error if I remove &socket(127.0.0.1:9981 async full) )
But I can not hear the conversation from the softphone. My goal is to listen to the conversation while doing the recording.
Best, Xing
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Ken Rice Sent: Tue 2/28/2012 22:45 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
This looks like a dialplan issue...
Show the exact originate and dialplan you are using
K
On 2/28/12 4:10 PM, "Liu, Xingkun" <X.Liu@hw.ac.uk> wrote:
[ERR] mod_dptools.c:714 Usage: [all | <uuid>]
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
How about this for your bridge line: <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> -MC On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Michael, Thanks for your suggestion! I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up. I copied the terminal and my dialplan for extension 74991 below: <extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record" data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav 120 200"/> </condition> </extension> ----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk [db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY] -------------------------------------------------- -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan How about this for your bridge line: <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> -MC On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge" data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> </condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring: <action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/> or remove all the above lines and just do this for your bridge line: <action application="bridge" data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/> Also, you may want to use this instead of bypass_media: http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge Give that a try and let us know how it goes. -MC On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hi Michael,
Thanks for your suggestion!
I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up.
I copied the terminal and my dialplan for extension 74991 below:
<extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record" data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav 120 200"/> </condition> </extension>
----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk[db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY]
--------------------------------------------------
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
How about this for your bridge line:
<action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/>
-MC
On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge"
data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/>
</condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
I tried {} notation before but not tried "export". Now I tried both "export" and {} notation. but still got the same problem. I will look at bypass_media_after_bridge as well. Thanks, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 22:27 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring: <action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/> or remove all the above lines and just do this for your bridge line: <action application="bridge" data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/> Also, you may want to use this instead of bypass_media: http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge Give that a try and let us know how it goes. -MC On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hi Michael,
Thanks for your suggestion!
I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up.
I copied the terminal and my dialplan for extension 74991 below:
<extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record" data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav 120 200"/> </condition> </extension>
----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk[db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY]
--------------------------------------------------
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
How about this for your bridge line:
<action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/>
-MC
On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge"
data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/>
</condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Okay, go ahead and pastebin your console debug log of the call from start to finish and also the relevant dialplan code. Use pastebin.freeswitch.organd select "FreeSWITCH Log" for syntax highlighting. -MC On Mon, Feb 27, 2012 at 2:46 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
I tried {} notation before but not tried "export". Now I tried both "export" and {} notation. but still got the same problem.
I will look at bypass_media_after_bridge as well.
Thanks, Xing
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 22:27 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring:
<action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/>
or remove all the above lines and just do this for your bridge line:
<action application="bridge"
data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/>
Also, you may want to use this instead of bypass_media:
http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge
Give that a try and let us know how it goes. -MC
On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hi Michael,
Thanks for your suggestion!
I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up.
I copied the terminal and my dialplan for extension 74991 below:
<extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record"
data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav
120 200"/> </condition> </extension>
----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk [db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY]
--------------------------------------------------
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
How about this for your bridge line:
<action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/>
-MC
On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge"
data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/>
</condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Now I also tried: bypass_media_after_bridge=true I got: switch_ivr_bridge.c:246 Cannot bypass media while bridged to a loopback address. then I changed loopback/74991 to sofia/internal/74991@${domain} and tried again I got the same results as I tested in the very beginning: Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL] Regards, Xing -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 22:27 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring: <action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/> or remove all the above lines and just do this for your bridge line: <action application="bridge" data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/> Also, you may want to use this instead of bypass_media: http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge Give that a try and let us know how it goes. -MC On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hi Michael,
Thanks for your suggestion!
I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up.
I copied the terminal and my dialplan for extension 74991 below:
<extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record" data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav 120 200"/> </condition> </extension>
----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk[db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY]
--------------------------------------------------
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
How about this for your bridge line:
<action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/>
-MC
On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge"
data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/>
</condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
Oh yeah, hehe, now I get it. You can't bypass media in a loopback. I probably should have asked these questions before: Why are you trying to bypass media at all? Also, why are you trying to bypass media and yet at the same time trying to record (x74991)? I think the best question to ask is this: using plain language, could you please describe what you are trying to accomplish? I have a feeling that we are doing a classic XY <http://mywiki.wooledge.org/XyProblem> dance. Thanks, MC On Mon, Feb 27, 2012 at 3:09 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Now I also tried: bypass_media_after_bridge=true
I got:
switch_ivr_bridge.c:246 Cannot bypass media while bridged to a loopback address.
then I changed loopback/74991 to sofia/internal/74991@${domain} and tried again
I got the same results as I tested in the very beginning:
Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL]
Regards, Xing
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 22:27 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring:
<action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/>
or remove all the above lines and just do this for your bridge line:
<action application="bridge"
data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/>
Also, you may want to use this instead of bypass_media:
http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge
Give that a try and let us know how it goes. -MC
On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hi Michael,
Thanks for your suggestion!
I tried your suggestion. I saw the softphone(extension 1003) immediately hung up after it was reached, the I heard "bye" and the extension 74991 hung up.
I copied the terminal and my dialplan for extension 74991 below:
<extension name="testRecordingOnly2_bridge"> <condition field="destination_number" expression="^(74995)$"> <action application="set" data="call_timeout=30"/> <action application="set" data="hangup_after_bridge=false"/> <action application="set" data="bypass_media=true"/> <action application="set" data="ignore_early_media=true"/> <action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/> </condition> </extension> <extension name="testRecordingOnly2"> <condition field="destination_number" expression="^(74991)$"> <action application="answer"/> <action application="set" data="RECORD_TITLE=Recording ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory Records, Inc."/> <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> <action application="set" data="RECORD_ARTIST=Ian Curtis"/> <action application="set" data="RECORD_COMMENT=Love will tear us apart"/> <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d %H:%M)}"/> <action application="set" data="RECORD_STEREO=true"/> <action application="set" data="record_waste_resources=true"/> <action application="set" data="tts_engine=flite"/> <action application="set" data="tts_voice=rms"/> <action application="speak" data="please say something to start recording."/> <action application="set" data="ignore_early_media=true"/> <action application="log" data="XX-BaseDir $${base_dir}"/> <action application="record"
data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav
120 200"/> </condition> </extension>
----------------------------------------------- 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to system time. 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel sofia/external/07875086426@sipgate.co.uk [db748000-618b-11e1-9bae-07e90bb2f0c8] 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->74995 in context public 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer sofia/external/07875086426@sipgate.co.uk! 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel loopback/7499611-a->loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing 07875086426 <07875086426>->7499611 in context public 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel [loopback/7499611-a] has been answered 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel [loopback/7499611-b] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel [sofia/external/07875086426@sipgate.co.uk] has been answered 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 (sofia/internal/1003) Ended 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close Channel sofia/internal/1003 [CS_DESTROY] 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 loopback/7499611-b has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 sofia/external/07875086426@sipgate.co.uk has executed the last dialplan instruction, hanging up. 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup sofia/external/07875086426@sipgate.co.uk [CS_EXECUTE] [NORMAL_CLEARING] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 (loopback/7499611-b) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-b [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 (loopback/7499611-a) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel loopback/7499611-a [CS_DESTROY] 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 (sofia/external/07875086426@sipgate.co.uk) Ended 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close Channel sofia/external/07875086426@sipgate.co.uk [CS_DESTROY]
--------------------------------------------------
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org on behalf of Michael Collins Sent: Mon 2/27/2012 19:59 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
How about this for your bridge line:
<action application="bridge" data="sofia/internal/1003%${sip_profile},loopback/74991"/>
-MC
On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk> wrote:
**
Hello,
I'd like to bridge an incoming to two endpoints simultaneuously: one is a softphone which is registered to FS (to user 1003), another is just an extension which is defined in conf/dialplan/public.xml
It looks like:
<extension name="testRecording_bridge"> <condition field="destination_number" expression="^(74990)$"> <action application="bridge"
data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/>
</condition> </extension>
<extension name="testRecordingOnly"> <condition field="destination_number" expression="^74991$"> <action application="set" data="record_waste_resources=true"/> <action application="javascript" data="testRecordFile.js"/> </condition> </extension>
The incoming call dial to extension 74990, from there I want to bridge the call to the sofphone at 1003 and to the extension 74991.
The problem is that FS can not locate user 74991. So my question is what else I need to modify in order to bridge the call also to extension 74991 at the same time?
I did lots of Googling, checked the wiki and tried various ways but still without success.
Any advices please?
Many Thanks! Xing
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Michael, First apologies if I didn't make myself clear.:-) In the beginning I didn't figure out the syntax for using "bridge" to bridge a call to an extension defined in the dialplan though I found a lot of examples in which bridging a call to registered users are shown. so my first post was just to find its syntax, then the question was developed while I was trying different things. Sorry again. I described my goal when I replied Peter's question, and I copy and rephrase it here for your info: My goal is simply to record the user's call by my app (java app using ESL) and at the same time I want to listen what the user is saying through my computer's speaker. What I am trying to do is to bridge the call to my app for recording and to a softphone for listening user's voice. My java app will do the recording and also allow me to send TTS to the user via a GUI. Regarding to "bypass media", I tried to set bypass media=false but without any help to my problem, then I tried to set it true and wanted to see if there was any help. Hector's suggestion sounds quite promising, but at the moment I am not quite sure how to do it. I am going to look into it. Cheers, Xing On 02/27/2012 11:21 PM, Michael Collins wrote:
Oh yeah, hehe, now I get it. You can't bypass media in a loopback.
I probably should have asked these questions before:
Why are you trying to bypass media at all? Also, why are you trying to bypass media and yet at the same time trying to record (x74991)?
I think the best question to ask is this: using plain language, could you please describe what you are trying to accomplish? I have a feeling that we are doing a classic XY <http://mywiki.wooledge.org/XyProblem> dance.
Thanks, MC
On Mon, Feb 27, 2012 at 3:09 PM, Liu, Xingkun <X.Liu@hw.ac.uk <mailto:X.Liu@hw.ac.uk>> wrote:
Now I also tried: bypass_media_after_bridge=true
I got:
switch_ivr_bridge.c:246 Cannot bypass media while bridged to a loopback address.
then I changed loopback/74991 to sofia/internal/74991@${domain} and tried again
I got the same results as I tested in the very beginning:
Hangup sofia/internal/1003 [CS_CONSUME_MEDIA] [ORIGINATOR_CANCEL]
Regards, Xing
-----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org <mailto:freeswitch-users-bounces@lists.freeswitch.org> on behalf of Michael Collins Sent: Mon 2/27/2012 22:27 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] How to bridge a call to an extension defined in dialplan
I saw one other issue with your dialplan: replace all those "set" apps that occur before the "bridge" with "export" or use the {} notation to specify them in the dialstring:
<action application="export" data="call_timeout=30"/> <action application="export" data="hangup_after_bridge=false"/> <action application="export" data="bypass_media=true"/> <action application="export" data="ignore_early_media=true"/>
or remove all the above lines and just do this for your bridge line:
<action application="bridge" data="{call_timeout=30,hangup_after_bridge=false,bypass_media=true,ignore_early_media=true}sofia/internal/1003%${sip_profile},loopback/74991"/>
Also, you may want to use this instead of bypass_media:
http://wiki.freeswitch.org/wiki/Channel_Variables#bypass_media_after_bridge
Give that a try and let us know how it goes. -MC
On Mon, Feb 27, 2012 at 1:51 PM, Liu, Xingkun <X.Liu@hw.ac.uk <mailto:X.Liu@hw.ac.uk>> wrote:
> ** > > Hi Michael, > > Thanks for your suggestion! > > I tried your suggestion. I saw the softphone(extension 1003) immediately > hung up after it was reached, > the I heard "bye" and the extension 74991 hung up. > > I copied the terminal and my dialplan for extension 74991 below: > > <extension name="testRecordingOnly2_bridge"> > <condition field="destination_number" expression="^(74995)$"> > <action application="set" data="call_timeout=30"/> > <action application="set" data="hangup_after_bridge=false"/> > <action application="set" data="bypass_media=true"/> > <action application="set" data="ignore_early_media=true"/> > <action application="bridge" > data="sofia/internal/1003%${sip_profile},loopback/74991"/> > </condition> > </extension> > <extension name="testRecordingOnly2"> > <condition field="destination_number" expression="^(74991)$"> > <action application="answer"/> > <action application="set" data="RECORD_TITLE=Recording > ${destination_number} ${caller_id_number} ${strftime(%Y-%m-%d %H:%M)}"/> > <action application="set" data="RECORD_COPYRIGHT=(c) 1980 Factory > Records, Inc."/> > <action application="set" data="RECORD_SOFTWARE=FreeSWITCH"/> > <action application="set" data="RECORD_ARTIST=Ian Curtis"/> > <action application="set" data="RECORD_COMMENT=Love will tear us > apart"/> > <action application="set" data="RECORD_DATE=${strftime(%Y-%m-%d > %H:%M)}"/> > <action application="set" data="RECORD_STEREO=true"/> > <action application="set" data="record_waste_resources=true"/> > <action application="set" data="tts_engine=flite"/> > <action application="set" data="tts_voice=rms"/> > <action application="speak" data="please say something to start > recording."/> > <action application="set" data="ignore_early_media=true"/> > <action application="log" data="XX-BaseDir $${base_dir}"/> > <action application="record" > data="$${base_dir}/testRecording/${strftime(%Y-%m-%d-%H-%M-%S)}_${destination_number}_${caller_id_number}.wav > 120 200"/> > </condition> > </extension> > > ----------------------------------------------- > 2012-02-27 21:41:29.004622 [INFO] switch_time.c:423 Clock synchronized to > system time. > 2012-02-27 21:41:50.788883 [NOTICE] switch_channel.c:920 New Channel > sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk>[db748000-618b-11e1-9bae-07e90bb2f0c8] > 2012-02-27 21:41:50.788883 [INFO] mod_dialplan_xml.c:481 Processing > 07875086426 <07875086426>->74995 in context public > 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel > sofia/internal/1003 [db7641f6-618b-11e1-9bb2-07e90bb2f0c8] > 2012-02-27 21:41:50.809112 [INFO] mod_loopback.c:885 Sending early media > 2012-02-27 21:41:50.809112 [NOTICE] mod_sofia.c:2521 Pre-Answer > sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk>! > 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel > loopback/7499611-a [db777864-618b-11e1-9bb7-07e90bb2f0c8] > 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:918 Rename Channel > loopback/7499611-a->loopback/7499611-a > [db777864-618b-11e1-9bb7-07e90bb2f0c8] > 2012-02-27 21:41:50.809112 [NOTICE] switch_channel.c:920 New Channel > loopback/7499611-b [db778ffc-618b-11e1-9bbb-07e90bb2f0c8] > 2012-02-27 21:41:50.809112 [INFO] mod_dialplan_xml.c:481 Processing > 07875086426 <07875086426>->7499611 in context public > 2012-02-27 21:41:50.809112 [NOTICE] mod_loopback.c:755 Channel > [loopback/7499611-a] has been answered > 2012-02-27 21:41:50.809112 [NOTICE] mod_dptools.c:1117 Channel > [loopback/7499611-b] has been answered > 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3182 Hangup > sofia/internal/1003 [CS_CONSUME_MEDIA] [LOSE_RACE] > 2012-02-27 21:41:50.833830 [NOTICE] switch_ivr_originate.c:3209 Channel > [sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk>] has been answered > 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1395 Session 2 > (sofia/internal/1003) Ended > 2012-02-27 21:41:50.833830 [NOTICE] switch_core_session.c:1397 Close > Channel sofia/internal/1003 [CS_DESTROY] > 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:226 > loopback/7499611-b has executed the last dialplan instruction, hanging up. > 2012-02-27 21:42:08.288866 [NOTICE] switch_core_state_machine.c:228 Hangup > loopback/7499611-b [CS_EXECUTE] [NORMAL_CLEARING] > 2012-02-27 21:42:08.288866 [NOTICE] mod_loopback.c:438 Hangup > loopback/7499611-a [CS_EXCHANGE_MEDIA] [NORMAL_CLEARING] > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:226 > sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk> has executed the last dialplan > instruction, hanging up. > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_state_machine.c:228 Hangup > sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk> [CS_EXECUTE] [NORMAL_CLEARING] > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 4 > (loopback/7499611-b) Ended > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close > Channel loopback/7499611-b [CS_DESTROY] > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 3 > (loopback/7499611-a) Ended > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close > Channel loopback/7499611-a [CS_DESTROY] > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1395 Session 1 > (sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk>) Ended > 2012-02-27 21:42:08.308864 [NOTICE] switch_core_session.c:1397 Close > Channel sofia/external/07875086426@sipgate.co.uk <mailto:07875086426@sipgate.co.uk> [CS_DESTROY] > > -------------------------------------------------- > > -----Original Message----- > From: freeswitch-users-bounces@lists.freeswitch.org <mailto:freeswitch-users-bounces@lists.freeswitch.org> on behalf of Michael > Collins > Sent: Mon 2/27/2012 19:59 > To: FreeSWITCH Users Help > Subject: Re: [Freeswitch-users] How to bridge a call to an extension > defined in dialplan > > How about this for your bridge line: > > <action application="bridge" > data="sofia/internal/1003%${sip_profile},loopback/74991"/> > > -MC > > On Sun, Feb 26, 2012 at 2:29 PM, Liu, Xingkun <X.Liu@hw.ac.uk <mailto:X.Liu@hw.ac.uk>> wrote: > > > ** > > > > Hello, > > > > I'd like to bridge an incoming to two endpoints simultaneuously: > > one is a softphone which is registered to FS (to user 1003), > > another is just an extension which is defined in conf/dialplan/public.xml > > > > It looks like: > > > > <extension name="testRecording_bridge"> > > <condition field="destination_number" expression="^(74990)$"> > > <action application="bridge" > > > data="sofia/internal/1003%${sip_profile},sofia/internal/74991%${sip_profile}"/> > > </condition> > > </extension> > > > > <extension name="testRecordingOnly"> > > <condition field="destination_number" expression="^74991$"> > > <action application="set" data="record_waste_resources=true"/> > > <action application="javascript" data="testRecordFile.js"/> > > </condition> > > </extension> > > > > The incoming call dial to extension 74990, from there I want to bridge > the > > call to the sofphone at 1003 and > > to the extension 74991. > > > > The problem is that FS can not locate user 74991. So my question is what > > else I need to modify in order > > to bridge the call also to extension 74991 at the same time? > > > > I did lots of Googling, checked the wiki and tried various ways but still > > without success. > > > > Any advices please? > > > > Many Thanks! > > Xing > > > > ------------------------------ > > > > *Heriot-Watt University is the Sunday Times Scottish University of the > > Year 2011-2012.* > > > > Heriot-Watt University is a Scottish charity registered under charity > > number SC000278. > > > > _________________________________________________________________________ > > Professional FreeSWITCH Consulting Services: > > consulting@freeswitch.org <mailto:consulting@freeswitch.org> > > http://www.freeswitchsolutions.com > > > > FreeSWITCH-powered IP PBX: The CudaTel Communication Server > > http://www.cudatel.com > > > > Official FreeSWITCH Sites > > http://www.freeswitch.org > > http://wiki.freeswitch.org > > http://www.cluecon.com > > > > FreeSWITCH-users mailing list > > FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> > > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users > > http://www.freeswitch.org > > > > > > > ------------------------------ > > *Heriot-Watt University is the Sunday Times Scottish University of the > Year 2011-2012.* > > Heriot-Watt University is a Scottish charity registered under charity > number SC000278. > > _________________________________________________________________________ > Professional FreeSWITCH Consulting Services: > consulting@freeswitch.org <mailto:consulting@freeswitch.org> > http://www.freeswitchsolutions.com > > FreeSWITCH-powered IP PBX: The CudaTel Communication Server > http://www.cudatel.com > > Official FreeSWITCH Sites > http://www.freeswitch.org > http://wiki.freeswitch.org > http://www.cluecon.com > > FreeSWITCH-users mailing list > FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users > http://www.freeswitch.org > >
------------------------------------------------------------------------
*Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012.*
Heriot-Watt University is a Scottish charity registered under charity number SC000278.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Heriot-Watt University is a Scottish charity registered under charity number SC000278. Heriot-Watt University is the Sunday Times Scottish University of the Year 2011-2012
participants (6)
-
Hector Geraldino
-
Ken Rice
-
Liu, Xingkun
-
Michael Collins
-
Peter Olsson
-
x.liu