[Freeswitch-dev] How to route a single channel to multiple conference rooms...
Hello Freeswitch devs… First of all, congratulations on a solid telephony platform… I am particularly impressed with your modular architecture, the careful attention to thread safety, the clean API and the fact that the code can be built from both Linux & windows without a hitch. I need to be able to route a call to several conference rooms simultaneously. Can this be done in Freeswitch? The channel that needs to be multiplied to several conference rooms is input only (i.e. only the person’s voice is fed into the many conference rooms), and that person would not hear any output from any of the conference rooms. (For simplicity below, let’s call this source channel “Channel S”) Seeing that the public api implies that a given channel can only be present in one conference call at a time, I think this needs to be done by hacking the code… Studying the code for mod_conference, I am thinking of approaching this task in one of three ways: 1. Insert ‘Channel S’ into the list of conference participants in multiple conferences. 1. Create a normal conference #1 with channel S as a participant, and other conferences without channel S. 2. Extract the “conference_member” structure for channel S from conference #1 and copy this structure into the other conference rooms. 3. Trap deletion of “channel S” on conference #1 and duplicate the deletion to other conferences as needed. 4. QUESTION: Would issues between the timing between conference rooms or thread issues interfere? 2. Have ‘Channel S’ join a one person conference, record that conference, and instead of routing the outgoing sound packets to disk, patch “conference_play_file” in all conference rooms to insert the latest sound packet from channel S into each conference room. 1. QUESTION: This would only work if the sampling rate & timing is the same between record and “conference_play_file”. Is it? 3. Any other suggestion you might have… perhaps there is a non-public call I could invoke that could create this effect? Which of the above three do you think has the highest probability of working? Any ideas? Jean-Pierre
On 17/03/11 02:31, Jean-Pierre Poulin wrote:
I need to be able to route a call to several conference rooms simultaneously. Can this be done in Freeswitch?
Have you considered this model: Caller S calls into conference #1 Conference #2,#3,#4 are connected to conference #1. So you'd have conf#1 participant S participant conf#2 participant conf#3 participant conf#4 conf#2 participant L1 participant L2 participant L3 participant conf#1 conf#3 participant L4 participant L5 participant L6 participant conf#1 etc You'd need to ensure that the participants in conf#1 are all muted except for S to ensure feedback does not happen. Regards,
Hi Paul, thanks for your feedback and idea. I think it could work. I did not know conference rooms could be linked together by a channel. However... trying to go about understanding how to bridge two conference rooms, I'm having difficulty in finding the cli commands that could do this... could you give me a hint in the right direction? I would understand how to do this if I could create a one-legged call, park it, create another one-legged call, park it and use uuid_bridge or uuid_transfer to set both ends between two conference rooms to bridge them together, but the part I'm struggling with is during the call creation: the only type of calls I know how to make are to registered endpoints like a SIP phone, but in this case these have no value as the final endpoint for both legs have to be conference rooms. Put differently... do you know how to go about connecting two conference rooms together? A few of the many silly things I've tried: - conference 3000-192.168.0.11 dial conference:3001-192.168.0.11@default inline - conference 3000-192.168.0.11 dial conference:3001-192.168.0.11 - conference 3000-192.168.0.11 dial sofia/internal/3001-192.168.0.11- conference 3000-192.168.0.11 dial 3001-192.168.0.11@default inline - conference 3000-192.168.0.11 dial 3001-192.168.0.11 Which basically all give errors that the recipient is either not registered, or 'cannot blind transfer to 1 legged call' Any ideas anyone? Jean-Pierre
Have you considered this model: Caller S calls into conference #1 Conference #2,#3,#4 are connected to conference #1.
On 17/03/11 17:31, Jean-Pierre Poulin wrote:
However... trying to go about understanding how to bridge two conference rooms, I'm having difficulty in finding the cli commands that could do this... could you give me a hint in the right direction?
You want to do something like: conference conf#2 dial conf#1 So your dialplan allows people into conf#1 via, say: sofia/default/conference1 and conf#2 is number 1002 conference 1002 dial sofia/default/conference1 There are more details in the wiki: http://wiki.freeswitch.org/wiki/Mod_conference#API_Reference These commands are not final, it does depend on your local configuration, also I've not taken into account the requirements to mute one leg of the joining calls. Regards,
Hi Paul, thanks again for the help. Unfortunately, these attempts to connect a conference room to a registered SIP phone all fail with the error "Cannot Blind Transfer 1 Legged calls" with a command like "conference 3000-192.168.0.11 dial sofia/internal/1001@192.168.0.11" even though conference room 3000 and extension 1001 are otherwise functional. (I'm using an untouched version of Freeswtich for Windows with the default configuration / dialplan) However, perhaps setting an extension in the dialplan to route to a conference room could get me further... I will attempt to research how that can be done. Thanks again! Jean-Pierre ----- Original Message ----
You want to do something like: conference conf#2 dial conf#1 So your dialplan allows people into conf#1 via, say: sofia/default/conference1 and conf#2 is number 1002 conference 1002 dial sofia/default/conference1
On 17/03/11 23:21, Jean-Pierre Poulin wrote:
However, perhaps setting an extension in the dialplan to route to a conference room could get me further... I will attempt to research how that can be done.
Okay, if you still can't get this working after trying the above with your dialplan, I suggest you post the query to the -users list where there will be more people who can help you (and how may have specific/exact examples for you). Regards,
Do you have a log of that because that makes no sense unless your phone is doing a refer. you can also do originate sofia/internal/foo@bar.com conference:xyz@default inline originate sofia/internal/foo@bar.com &conference(xyz@default) On Thu, Mar 17, 2011 at 6:21 PM, Jean-Pierre Poulin <jeanpierrepoulin@yahoo.com> wrote:
Hi Paul, thanks again for the help.
Unfortunately, these attempts to connect a conference room to a registered SIP phone all fail with the error "Cannot Blind Transfer 1 Legged calls" with a command like "conference 3000-192.168.0.11 dial sofia/internal/1001@192.168.0.11" even though conference room 3000 and extension 1001 are otherwise functional.
(I'm using an untouched version of Freeswtich for Windows with the default configuration / dialplan)
However, perhaps setting an extension in the dialplan to route to a conference room could get me further... I will attempt to research how that can be done.
Thanks again! Jean-Pierre
----- Original Message ----
You want to do something like: conference conf#2 dial conf#1 So your dialplan allows people into conf#1 via, say: sofia/default/conference1 and conf#2 is number 1002 conference 1002 dial sofia/default/conference1
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
Do you have a log of that because that makes no sense unless your phone is doing a refer. you can also do originate sofia/internal/foo@bar.com conference:xyz@default inline originate sofia/internal/foo@bar.com &conference(xyz@default)
---------------------------------- Hi Anthony, thanks for taking the time & congrats on fabulous Freeswitch! J I have tried your suggested commands and they give me the same error messages as “conference dial” My setup is as follows: - Latest version of the latest Freeswtich installed on Windows 7 / 64 bit. (version reports "FreeSWITCH Version 1.0.head (git-cab1565 2010-05-18 10-42-16 -0400)") - All configuration settings are at their defaults, including the dialplan. - By registering an extension 1001 with X-lite on the main computer, and extension 1002 on another computer, both can call each other normally and join conferences together and everything works great. - Thinking this could be an X-lite issue, I have also registered extension 1004 on Bria on iPhone 4 and it can connect directly to the others, be connected by the other extensions and can connect fine to conference calls. For my application I need Freeswitch conferences to be able to dial out to other registed phones. After reading the docs, studying the dialplan, I have still been unable to do so after a half-day of trying various permutations and am currently grasping at straws… (Next attempt is to try the whole thing on Linux) According to the docs, I should be able to initiate an outgoing call to a registered extension with a command like “conference 3000-192.168.0.11 dial sofia/internal/1001@192.168.0.11” I have also tried the following commands as you suggested: - originate sofia/internal/1004@192.168.0.11 &conference(3300-192.168.0.11) - originate sofia/internal/1004@192.168.0.11 &conference(3300-192.168.0.11@default) - originate sofia/internal/1004@192.168.0.11 conference:3300@default inline - originate sofia/internal/1004@192.168.0.11 conference:3300-192.168.0.11@default inline But in all cases to any registered phones on 3 machines get an error as “NO_USER_RESPONSE” and “Cannot Blind Transfer 1 Legged Calls” as the log entry below reveals. Should I try this whole thing in Freeswitch on Linux? Jean-Pierre freeswitch@JPM> conference 3000-192.168.0.11 dial sofia/internal/1002@192.168.0.11 2011-03-18 17:43:14.407892 [NOTICE] switch_channel.c:675 New Channel sofia/internal/1002@192.168.0.11 [0b7f1ab1-2251-4bfb-946e-e5fc639a09b9] 2011-03-18 17:43:14.410892 [NOTICE] switch_channel.c:675 New Channel sofia/internal/0000000000@192.168.0.11 [0a64217d-e1ff-4da8-a0b3-e84546f2e029] 2011-03-18 17:43:14.467895 [INFO] mod_dialplan_xml.c:331 Processing FreeSWITCH->1002 in context public 2011-03-18 17:43:14.471896 [ERR] sofia.c:5413 Cannot Blind Transfer 1 Legged calls Call Requested: result: [NO_USER_RESPONSE] 2011-03-18 17:43:14.472896 [NOTICE] sofia.c:4836 Hangup sofia/internal/1002@192.168.0.11 [CS_CONSUME_MEDIA] [NO_USER_RESPONSE] 2011-03-18 17:43:14.473896 [ERR] mod_conference.c:4597 Cannot create outgoing channel, cause: NO_USER_RESPONSE freeswitch@JPM> 2011-03-18 17:43:14.544900 [NOTICE] switch_core_session.c:1188 Session 43 (sofia/internal/1002@192.168.0.11) Ended 2011-03-18 17:43:14.544900 [NOTICE] switch_core_session.c:1190 Close Channel sofia/internal/1002@192.168.0.11 [CS_DESTROY] 2011-03-18 17:43:14.570901 [NOTICE] switch_core_state_machine.c:185 sofia/internal/0000000000@192.168.0.11 has executed the last dialplan instruction, hanging up. 2011-03-18 17:43:14.570901 [NOTICE] switch_core_state_machine.c:187 Hangup sofia/internal/0000000000@192.168.0.11 [CS_EXECUTE] [NORMAL_CLEARING] 2011-03-18 17:43:14.572901 [NOTICE] switch_core_session.c:1188 Session 44 (sofia/internal/0000000000@192.168.0.11) Ended 2011-03-18 17:43:14.572901 [NOTICE] switch_core_session.c:1190 Close Channel sofia/internal/0000000000@192.168.0.11 [CS_DESTROY]
linux vs windows won't make a difference here. Do you have forwarding turned on for the endpoint your having issues with? Mike On Mar 18, 2011, at 6:14 PM, Jean-Pierre Poulin wrote:
Do you have a log of that because that makes no sense unless your phone is doing a refer. you can also do originate sofia/internal/foo@bar.com conference:xyz@default inline originate sofia/internal/foo@bar.com &conference(xyz@default)
----------------------------------
Hi Anthony, thanks for taking the time & congrats on fabulous Freeswitch! J I have tried your suggested commands and they give me the same error messages as “conference dial” My setup is as follows: - Latest version of the latest Freeswtich installed on Windows 7 / 64 bit. (version reports "FreeSWITCH Version 1.0.head (git-cab1565 2010-05-18 10-42-16 -0400)") - All configuration settings are at their defaults, including the dialplan. - By registering an extension 1001 with X-lite on the main computer, and extension 1002 on another computer, both can call each other normally and join conferences together and everything works great. - Thinking this could be an X-lite issue, I have also registered extension 1004 on Bria on iPhone 4 and it can connect directly to the others, be connected by the other extensions and can connect fine to conference calls. For my application I need Freeswitch conferences to be able to dial out to other registed phones. After reading the docs, studying the dialplan, I have still been unable to do so after a half-day of trying various permutations and am currently grasping at straws… (Next attempt is to try the whole thing on Linux) According to the docs, I should be able to initiate an outgoing call to a registered extension with a command like “conference 3000-192.168.0.11 dial sofia/internal/1001@192.168.0.11” I have also tried the following commands as you suggested: - originate sofia/internal/1004@192.168.0.11 &conference(3300-192.168.0.11) - originate sofia/internal/1004@192.168.0.11 &conference(3300-192.168.0.11@default) - originate sofia/internal/1004@192.168.0.11 conference:3300@default inline - originate sofia/internal/1004@192.168.0.11 conference:3300-192.168.0.11@default inline But in all cases to any registered phones on 3 machines get an error as “NO_USER_RESPONSE” and “Cannot Blind Transfer 1 Legged Calls” as the log entry below reveals. Should I try this whole thing in Freeswitch on Linux? Jean-Pierre freeswitch@JPM> conference 3000-192.168.0.11 dial sofia/internal/1002@192.168.0.11 2011-03-18 17:43:14.407892 [NOTICE] switch_channel.c:675 New Channel sofia/internal/1002@192.168.0.11 [0b7f1ab1-2251-4bfb-946e-e5fc639a09b9] 2011-03-18 17:43:14.410892 [NOTICE] switch_channel.c:675 New Channel sofia/internal/0000000000@192.168.0.11 [0a64217d-e1ff-4da8-a0b3-e84546f2e029] 2011-03-18 17:43:14.467895 [INFO] mod_dialplan_xml.c:331 Processing FreeSWITCH->1002 in context public 2011-03-18 17:43:14.471896 [ERR] sofia.c:5413 Cannot Blind Transfer 1 Legged calls Call Requested: result: [NO_USER_RESPONSE] 2011-03-18 17:43:14.472896 [NOTICE] sofia.c:4836 Hangup sofia/internal/1002@192.168.0.11 [CS_CONSUME_MEDIA] [NO_USER_RESPONSE] 2011-03-18 17:43:14.473896 [ERR] mod_conference.c:4597 Cannot create outgoing channel, cause: NO_USER_RESPONSE freeswitch@JPM> 2011-03-18 17:43:14.544900 [NOTICE] switch_core_session.c:1188 Session 43 (sofia/internal/1002@192.168.0.11) Ended 2011-03-18 17:43:14.544900 [NOTICE] switch_core_session.c:1190 Close Channel sofia/internal/1002@192.168.0.11 [CS_DESTROY] 2011-03-18 17:43:14.570901 [NOTICE] switch_core_state_machine.c:185 sofia/internal/0000000000@192.168.0.11 has executed the last dialplan instruction, hanging up. 2011-03-18 17:43:14.570901 [NOTICE] switch_core_state_machine.c:187 Hangup sofia/internal/0000000000@192.168.0.11 [CS_EXECUTE] [NORMAL_CLEARING] 2011-03-18 17:43:14.572901 [NOTICE] switch_core_session.c:1188 Session 44 (sofia/internal/0000000000@192.168.0.11) Ended 2011-03-18 17:43:14.572901 [NOTICE] switch_core_session.c:1190 Close Channel sofia/internal/0000000000@192.168.0.11 [CS_DESTROY]
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
linux vs windows won't make a difference here. Do you have forwarding turned on for the endpoint your having issues with?
Hi Mike, thanks for your input. As far as I know I don't have forwarding enabled on either my 2 X-lite extensions or my iPhone4's with Bria. I also tried compiling Freeswtich for Windows from source and it does the same thing (both have default configuration & dialplans) The only thing I can think of at this point is maybe it's a Windows 7 / 64 bit issues... grasping at straws! Will try compiling Freeswitch on my Ubuntu VM to see if there is any difference. Thanks again for the help! Jean-Pierre
You want to do something like: conference conf#2 dial conf#1 So your dialplan allows people into conf#1 via, say: sofia/default/conference1 and conf#2 is number 1002 conference 1002 dial sofia/default/conference1
Hi Paul, thanks again for the hint in this direction, but after much research I just can't connect two conference rooms together. My best effort thus far involves registering extensions 3400..3499 in a similar way conferences 3000..3099 are done <extension name="test_conferences"> <condition field="destination_number" expression="^(34\d{2})$"> <action application="answer"/> <action application="conference" data="$1-${domain_name}@default"/> </condition> </extension> And to insert a new user in conf/directory/default for file 3400.xml so that user / conference 3400 can be seen as a registered user. <include> <user id="3400"> <params> <param name="password" value="$${default_password}"/> <param name="vm-password" value="3400"/> </params> <variables> <variable name="toll_allow" value="domestic,international,local"/> <variable name="accountcode" value="3400"/> <variable name="user_context" value="default"/> <variable name="effective_caller_id_name" value="Extension 3400"/> <variable name="effective_caller_id_number" value="3400"/> <variable name="outbound_caller_id_name" value="$${outbound_caller_name}"/> <variable name="outbound_caller_id_number" value="$${outbound_caller_id}"/> <variable name="callgroup" value="techsupport"/> </variables> </user> </include> Unforunately, when I call out with a cli command like "conference 3001-192.168.0.11 dial user/3400" I get 2011-03-23 14:56:46.770577 [ERR] switch_ivr_originate.c:2493 Cannot create outgoing channel of type [error] cause: [USER_NOT_REGISTERED] Call Requested: result: [USER_NOT_REGISTERED] 2011-03-23 14:56:46.770577 [ERR] switch_ivr_originate.c:2493 Cannot create outgoing channel of type [user] cause: [USER_NOT_REGISTERED] 2011-03-23 14:56:46.770577 [ERR] mod_conference.c:4597 Cannot create outgoing channel, cause: USER_NOT_REGISTERED (The above command works fine if I call a registered extension like 1001... In other words, no endpoint appears to be present / answering for 3400 even though I have placed an "answer" application as done for the other conferences. (The same error appears even if I register two SIP phones to conference rooms 3000 and 3400) Has linking two conference rooms ever been done? Thanks for any hint you can offer... I have no idea what to try next and so far the best path forward looks like hacking the code. Jean-Pierre
yes I can do it effortlessly 100 times in a row from many boxes. You need to of course make sure the url you are dialing in the originate actually is reachable by FS. On Wed, Mar 23, 2011 at 2:06 PM, Jean-Pierre Poulin <jeanpierrepoulin@yahoo.com> wrote:
You want to do something like: conference conf#2 dial conf#1 So your dialplan allows people into conf#1 via, say: sofia/default/conference1 and conf#2 is number 1002 conference 1002 dial sofia/default/conference1
Hi Paul, thanks again for the hint in this direction, but after much research I just can't connect two conference rooms together.
My best effort thus far involves registering extensions 3400..3499 in a similar way conferences 3000..3099 are done
<extension name="test_conferences"> <condition field="destination_number" expression="^(34\d{2})$"> <action application="answer"/> <action application="conference" data="$1-${domain_name}@default"/> </condition> </extension>
And to insert a new user in conf/directory/default for file 3400.xml so that user / conference 3400 can be seen as a registered user.
<include> <user id="3400"> <params> <param name="password" value="$${default_password}"/> <param name="vm-password" value="3400"/> </params> <variables> <variable name="toll_allow" value="domestic,international,local"/> <variable name="accountcode" value="3400"/> <variable name="user_context" value="default"/> <variable name="effective_caller_id_name" value="Extension 3400"/> <variable name="effective_caller_id_number" value="3400"/> <variable name="outbound_caller_id_name" value="$${outbound_caller_name}"/> <variable name="outbound_caller_id_number" value="$${outbound_caller_id}"/> <variable name="callgroup" value="techsupport"/> </variables> </user> </include>
Unforunately, when I call out with a cli command like "conference 3001-192.168.0.11 dial user/3400" I get
2011-03-23 14:56:46.770577 [ERR] switch_ivr_originate.c:2493 Cannot create outgoing channel of type [error] cause: [USER_NOT_REGISTERED] Call Requested: result: [USER_NOT_REGISTERED] 2011-03-23 14:56:46.770577 [ERR] switch_ivr_originate.c:2493 Cannot create outgoing channel of type [user] cause: [USER_NOT_REGISTERED] 2011-03-23 14:56:46.770577 [ERR] mod_conference.c:4597 Cannot create outgoing channel, cause: USER_NOT_REGISTERED
(The above command works fine if I call a registered extension like 1001... In other words, no endpoint appears to be present / answering for 3400 even though I have placed an "answer" application as done for the other conferences.
(The same error appears even if I register two SIP phones to conference rooms 3000 and 3400)
Has linking two conference rooms ever been done?
Thanks for any hint you can offer... I have no idea what to try next and so far the best path forward looks like hacking the code.
Jean-Pierre
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
yes I can do it effortlessly 100 times in a row from many boxes. You need to of course make sure the url you are dialing in the originate actually is reachable by FS.
Hi Anthony, thanks again for your time. Knowing this is known to work is exactly what I needed at this time to keep going along this branch. In this particular dialplan (exact same as default dialplan + user 3400.xml added in user directory and dialplan/default.xml opening extension 3400 toward application "conference" as per previous message), I can call extension 3400 from any SIP phone so it is reachable by FS, but thus far the call "conference 3000-192.168.0.11 dial user/3400" simply fails with NOT_REGISTERED even if there is a participant in conference 3400 and conference 3400 is otherwise fully functional. Would you be so kind as telling me what CLI command you use when you want to bridge two conference rooms together? A thousand thanks for any hint you can offer!! Jean-Pierre
user/3400 would be a phone registered to ext 3400 not a magic way to call extension 3400 if you are trying to call another conference on the same box you need to loop the call over sip. try: conference 3000-192.168.0.11 dial sofia/internal/3400@1.2.3.4 replacing 1.2.3.4 with the ip or hostname of your box. On Wed, Mar 23, 2011 at 3:32 PM, Jean-Pierre Poulin <jeanpierrepoulin@yahoo.com> wrote:
yes I can do it effortlessly 100 times in a row from many boxes. You need to of course make sure the url you are dialing in the originate actually is reachable by FS.
Hi Anthony, thanks again for your time. Knowing this is known to work is exactly what I needed at this time to keep going along this branch.
In this particular dialplan (exact same as default dialplan + user 3400.xml added in user directory and dialplan/default.xml opening extension 3400 toward application "conference" as per previous message), I can call extension 3400 from any SIP phone so it is reachable by FS, but thus far the call "conference 3000-192.168.0.11 dial user/3400" simply fails with NOT_REGISTERED even if there is a participant in conference 3400 and conference 3400 is otherwise fully functional.
Would you be so kind as telling me what CLI command you use when you want to bridge two conference rooms together?
A thousand thanks for any hint you can offer!!
Jean-Pierre
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
if you are trying to call another conference on the same box you need to loop the call over sip. try: conference 3000-192.168.0.11 dial sofia/internal/3400@1.2.3.4
Hi Anthony, sorry to bother you with this again, but I've tried your suggested command on three different builds (win binary, win from source, linux from source) all with out-of-the-box dialplan & settings and they all return the 'cannot blind transfer 1 legged calls'. Log of my command attempting to connect conference 3000 and 3001 below: (My IP address is 192.168.0.11) conference 3000-192.168.0.11 dial sofia/internal/3001@192.168.0.11 2011-03-23 18:23:42.298705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/3001@192.168.0.11 [78b3b6d8-38ef-420d-ba88-72fcb3a1b61c] 2011-03-23 18:23:42.302705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/0000000000@192.168.0.11 [079cf467-1db2-4f0b-b6db-06a0899600ea] 2011-03-23 18:23:42.307706 [INFO] mod_dialplan_xml.c:331 Processing FreeSWITCH <0000000000>->3001 in context public 2011-03-23 18:23:42.312706 [ERR] sofia.c:5906 Cannot Blind Transfer 1 Legged calls Call Requested: result: [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [NOTICE] sofia.c:5323 Hangup sofia/internal/3001@192.168.0.11 [CS_CONSUME_MEDIA] [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [ERR] mod_conference.c:5021 Cannot create outgoing channel, cause: NO_USER_RESPONSE 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1306 Session 9 (sofia/internal/3001@192.168.0.11) Ended 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/3001@192.168.0.11 [CS_DESTROY] freeswitch@JPM> 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:189 sofia/internal/0000000000@192.168.0.11 has executed the last dialplan instruction, hanging up. 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:191 Hangup sofia/internal/0000000000@192.168.0.11 [CS_EXECUTE] [NORMAL_CLEARING] 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1306 Session 10 (sofia/internal/0000000000@192.168.0.11) Ended 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/0000000000@192.168.0.11 [CS_DESTROY]
I hate to say it, but what happens when you try this? conference 3000-192.168.0.11 dial loopback/3001 I'm just curious. We aren't fond of the crazy things people try to do with loopback but I just want to know if this connects your two conferences. (It did on my system.) -MC On Wed, Mar 23, 2011 at 3:29 PM, Jean-Pierre Poulin < jeanpierrepoulin@yahoo.com> wrote:
if you are trying to call another conference on the same box you need to loop the call over sip. try: conference 3000-192.168.0.11 dial sofia/internal/3400@1.2.3.4
Hi Anthony, sorry to bother you with this again, but I've tried your suggested command on three different builds (win binary, win from source, linux from source) all with out-of-the-box dialplan & settings and they all return the 'cannot blind transfer 1 legged calls'.
Log of my command attempting to connect conference 3000 and 3001 below: (My IP address is 192.168.0.11)
conference 3000-192.168.0.11 dial sofia/internal/3001@192.168.0.11
2011-03-23 18:23:42.298705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/3001@192.168.0.11 [78b3b6d8-38ef-420d-ba88-72fcb3a1b61c] 2011-03-23 18:23:42.302705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/0000000000@192.168.0.11[079cf467-1db2-4f0b-b6db-06a0899600ea] 2011-03-23 18:23:42.307706 [INFO] mod_dialplan_xml.c:331 Processing FreeSWITCH <0000000000>->3001 in context public 2011-03-23 18:23:42.312706 [ERR] sofia.c:5906 Cannot Blind Transfer 1 Legged calls Call Requested: result: [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [NOTICE] sofia.c:5323 Hangup sofia/internal/3001@192.168.0.11 [CS_CONSUME_MEDIA] [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [ERR] mod_conference.c:5021 Cannot create outgoing channel, cause: NO_USER_RESPONSE 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1306 Session 9 (sofia/internal/3001@192.168.0.11) Ended 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/3001@192.168.0.11 [CS_DESTROY] freeswitch@JPM> 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:189 sofia/internal/0000000000@192.168.0.11 has executed the last dialplan instruction, hanging up. 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:191 Hangup sofia/internal/0000000000@192.168.0.11 [CS_EXECUTE] [NORMAL_CLEARING] 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1306 Session 10 (sofia/internal/0000000000@192.168.0.11) Ended 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/0000000000@192.168.0.11 [CS_DESTROY]
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
Ha! That "conference 3000-192.168.0.11 dial loopback/3001" command did the trick! For the benefit of people later on looking on how to connect two conference rooms together, starting from out-of-the-box FreeSwitch you can connect any conference between 3000..3399 with a command like: conference 3000-192.168.0.11 dial loopback/3001 Once this is done, connect one SIP phone to conference 3000 and the other to 3001, and both SIP phones should magically be able to hear each other. You should be able to verify on both conferences that they are connected with a command like "conference 3000-192.168.0.11 list". In the above-described situation this gives: 3;sofia/internal/1001@192.168.0.11;c6d34e33-5fcd-4a83-b049-f10934738a51;Jean-Pierre;1001;hear|speak;0;0;300 2;loopback/3001-a;1df73907-5eac-479e-bcda-610fb60e9364;;0000000000;hear|speak|talking|floor;0;0;300 Thanks a million to everyone who participated toward this answer... you guys rock! :) Jean-Pierre P.S. Interestingly enough, I still hear music on hold in this situation... (not a big deal for me as I intended to switch it off anyways) ________________________________ From: Michael Collins <msc@freeswitch.org> To: freeswitch-dev@lists.freeswitch.org Sent: Wed, March 23, 2011 7:19:56 PM Subject: Re: [Freeswitch-dev] How to route a single channel to multiple conference rooms... I hate to say it, but what happens when you try this? conference 3000-192.168.0.11 dial loopback/3001 I'm just curious. We aren't fond of the crazy things people try to do with loopback but I just want to know if this connects your two conferences. (It did on my system.) -MC On Wed, Mar 23, 2011 at 3:29 PM, Jean-Pierre Poulin <jeanpierrepoulin@yahoo.com> wrote:
if you are trying to call another conference on the same box you need
to loop the call over sip. try: conference 3000-192.168.0.11 dial sofia/internal/3400@1.2.3.4
Hi Anthony, sorry to bother you with this again, but I've tried your suggested command on three different builds (win binary, win from source, linux from source) all with out-of-the-box dialplan & settings and they all return the 'cannot blind transfer 1 legged calls'.
Log of my command attempting to connect conference 3000 and 3001 below: (My IP address is 192.168.0.11)
conference 3000-192.168.0.11 dial sofia/internal/3001@192.168.0.11
2011-03-23 18:23:42.298705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/3001@192.168.0.11 [78b3b6d8-38ef-420d-ba88-72fcb3a1b61c] 2011-03-23 18:23:42.302705 [NOTICE] switch_channel.c:812 New Channel sofia/internal/0000000000@192.168.0.11 [079cf467-1db2-4f0b-b6db-06a0899600ea] 2011-03-23 18:23:42.307706 [INFO] mod_dialplan_xml.c:331 Processing FreeSWITCH <0000000000>->3001 in context public 2011-03-23 18:23:42.312706 [ERR] sofia.c:5906 Cannot Blind Transfer 1 Legged calls Call Requested: result: [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [NOTICE] sofia.c:5323 Hangup sofia/internal/3001@192.168.0.11 [CS_CONSUME_MEDIA] [NO_USER_RESPONSE] 2011-03-23 18:23:42.314706 [ERR] mod_conference.c:5021 Cannot create outgoing channel, cause: NO_USER_RESPONSE 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1306 Session 9 (sofia/internal/3001@192.168.0.11) Ended 2011-03-23 18:23:42.318706 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/3001@192.168.0.11 [CS_DESTROY] freeswitch@JPM> 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:189 sofia/internal/0000000000@192.168.0.11 has executed the last dialplan instruction, hanging up. 2011-03-23 18:23:42.412712 [NOTICE] switch_core_state_machine.c:191 Hangup sofia/internal/0000000000@192.168.0.11 [CS_EXECUTE] [NORMAL_CLEARING] 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1306 Session 10 (sofia/internal/0000000000@192.168.0.11) Ended 2011-03-23 18:23:42.422712 [NOTICE] switch_core_session.c:1308 Close Channel sofia/internal/0000000000@192.168.0.11 [CS_DESTROY]
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
participants (5)
-
Anthony Minessale
-
Jean-Pierre Poulin
-
Michael Collins
-
Michael Jerris
-
Paul Cupis