[Freeswitch-users] Take uuid out of conference and bridge
Birgit Arkesteijn
birgit at westhawk.co.uk
Thu Oct 23 07:02:48 EDT 2008
Hi,
Just a thought ... is there a way in javascript to (re)create a session
object given an existing uuid?
If that was the case, I could do something like:
var session = new Session (uuid);
session.bridge(customer_service_url);
If that's not possible, I appreciate any thought about my current setup.
Thanks, Birgit
On 23/10/08 11:43, Birgit Arkesteijn wrote:
> Hi,
>
> Thanks Anthony for your response.
> Unfortunately removing the 'kick' didn't make a difference.
>
> The result is also different if I change the order of the UUIDs around.
> In one scenario I get [NORMAL_CLEARING], in the other
> [DESTINATION_OUT_OF_ORDER].
>
> I added the code (again) and 2 snippets of the freeswitch.log below.
>
> Does anyone have an alternative?
>
> Thanks, Birgit
>
>
> Current code:
>
> function bridge_to_customer_services(conf_name, member_id, uuid,
> customer_service_url)
> {
> if (uuid)
> {
> var sSession = new
> Session("{ignore_early_media=true,originate_timeout=10}"
> + customer_service_url);
> var ready = sSession.ready();
> log("customer services answered: " + ready);
> if (ready == true)
> {
> // The customer services call has been answered
> argument = sSession.uuid + " " + uuid;
> var res = apiExecute("uuid_bridge", argument);
> log("after apiExecute uuid_bridge: " + res);
> }
> }
> }
>
> When I set argument as:
> argument = sSession.uuid + " " + uuid;
>
> I see the following in the freeswitch log:
>
> (
> sofia/external/0663: is the 'new' customer services call,
> sofia/external/0662: is the call in the conference
> )
>
> 2008-10-23 11:27:05 [NOTICE] switch_channel.c:534
> switch_channel_set_name() New Channel sofia/external/0663
> [23638bbc-a0ed-11dd-843a-d9638db44114]
> 2008-10-23 11:27:05 [NOTICE] sofia.c:1786 sofia_handle_sip_i_state()
> Ring-Ready sofia/external/0663!
> 2008-10-23 11:27:08 [NOTICE] sofia.c:2110 sofia_handle_sip_i_state()
> Channel [sofia/external/0663] has been answered
> 2008-10-23 11:27:08 [INFO] dispatcher_general.js:70 console_log()
> customer services answered: true
> 2008-10-23 11:27:08 [INFO] dispatcher_general.js:70 console_log() after
> apiExecute uuid_bridge: +OK 20f309de-a0ed-11dd-843a-d9638db44114
>
> 2008-10-23 11:27:08 [NOTICE] mod_spidermonkey.c:2860 session_destroy()
> Hangup sofia/external/0663 [CS_RESET] [NORMAL_CLEARING]
> 2008-10-23 11:27:08 [INFO] dispatcher_general.js:70 console_log() after
> cSession in conf
> 2008-10-23 11:27:08 [NOTICE] mod_spidermonkey.c:2860 session_destroy()
> Hangup sofia/external/0662 [CS_RESET] [NORMAL_CLEARING]
> 2008-10-23 11:27:08 [NOTICE] switch_core_session.c:802
> switch_core_session_thread() Session 6 (sofia/external/0663) Ended
> 2008-10-23 11:27:08 [NOTICE] switch_core_session.c:804
> switch_core_session_thread() Close Channel sofia/external/0663 [CS_HANGUP]
> 2008-10-23 11:27:08 [NOTICE] switch_core_session.c:802
> switch_core_session_thread() Session 5 (sofia/external/0662) Ended
> 2008-10-23 11:27:08 [NOTICE] switch_core_session.c:804
> switch_core_session_thread() Close Channel sofia/external/0662 [CS_HANGUP]
>
>
>
> When I set argument as:
> argument = uuid + " " + sSession.uuid;
>
>
> I see the following in the freeswitch log:
>
> 2008-10-23 11:35:00 [NOTICE] switch_channel.c:534
> switch_channel_set_name() New Channel sofia/external/0663
> [3ea7fdd0-a0ee-11dd-843a-d9638db44114]
> 2008-10-23 11:35:00 [NOTICE] sofia.c:1786 sofia_handle_sip_i_state()
> Ring-Ready sofia/external/0663!
> 2008-10-23 11:35:03 [NOTICE] sofia.c:2110 sofia_handle_sip_i_state()
> Channel [sofia/external/0663] has been answered
> 2008-10-23 11:35:03 [INFO] dispatcher_general.js:70 console_log()
> customer services answered: true
> 2008-10-23 11:35:03 [INFO] dispatcher_general.js:70 console_log() after
> apiExecute uuid_bridge: +OK 3ea7fdd0-a0ee-11dd-843a-d9638db44114
>
> 2008-10-23 11:35:03 [NOTICE] mod_spidermonkey.c:2860 session_destroy()
> Hangup sofia/external/0663 [CS_RESET] [NORMAL_CLEARING]
> 2008-10-23 11:35:03 [NOTICE] switch_ivr_bridge.c:484
> uuid_bridge_on_soft_execute() Hangup sofia/external/0662
> [CS_SOFT_EXECUTE] [DESTINATION_OUT_OF_ORDER]
> 2008-10-23 11:42:21 [INFO] dispatcher_general.js:70 console_log()
> consumer consumer_hungup(): cSession hangup HOOK, name:
> sofia/external/0662, uuid: 42e859d4-a0ef-11dd-843a-d9638db44114, state:
> CS_HANGUP, cause: DESTINATION_OUT_OF_ORDER
> 2008-10-23 11:35:03 [INFO] dispatcher_general.js:70 console_log() after
> apiExecute conference:
> 2008-10-23 11:35:03 [INFO] dispatcher_general.js:70 console_log() after
> cSession in conf
> 2008-10-23 11:35:03 [NOTICE] switch_core_session.c:802
> switch_core_session_thread() Session 8 (sofia/external/0663) Ended
> 2008-10-23 11:35:03 [NOTICE] switch_core_session.c:804
> switch_core_session_thread() Close Channel sofia/external/0663 [CS_HANGUP]
> 2008-10-23 11:35:03 [NOTICE] switch_core_session.c:802
> switch_core_session_thread() Session 7 (sofia/external/0662) Ended
> 2008-10-23 11:35:03 [NOTICE] switch_core_session.c:804
> switch_core_session_thread() Close Channel sofia/external/0662 [CS_HANGUP]
>
>
>
> On 22/10/08 18:54, Anthony Minessale wrote:
>> try skipping the kick
>> if you call uuid_bridge on a session who is busy doing something he will
>> be warped to your bridge anyway.
>
--
-- Birgit Arkesteijn, birgit at westhawk.co.uk,
-- Westhawk Ltd, Albion Wharf, 19 Albion Street, Manchester M1 5LN, UK
-- Company no: 1769350
-- Registered Office:
-- 15 London Road, Stockton Heath, Warrington WA4 6SJ. UK.
-- tel.: +44 (0)161 237 0660
-- <URL: http://www.westhawk.co.uk>
More information about the Freeswitch-users
mailing list