voicemail operator-extension - Multi-tenant Environment
Hi All, I am trying to use the operator extension in Multi-tenant environment. I modified the voicemail.conf.xml file as below. <param name="operator-extension" value="operator XML *${domain_name}*"/> Looks to me this is not the right way to do ... when I press the 9 (voicemail operator extension) call ended. Below is the log... 2010-12-27 21:07:27.664362 [NOTICE] switch_ivr.c:1603 Transfer loopback/voicemail-b to XML[operator@${domain_name}] 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:366 (loopback/voicemail-b) State EXECUTE going to sleep 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:320 (loopback/voicemail-b) Running State Change CS_ROUTING 2010-12-27 21:07:27.664362 [DEBUG] switch_channel.c:1615 (loopback/voicemail-b) Callstate Change EARLY -> RINGING 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:359 (loopback/voicemail-b) State ROUTING 2010-12-27 21:07:27.665397 [DEBUG] mod_loopback.c:323 loopback/voicemail-b CHANNEL ROUTING 2010-12-27 21:07:27.665397 [DEBUG] switch_core_state_machine.c:77 loopback/voicemail-b Standard ROUTING 2010-12-27 21:07:27.665397 [INFO] mod_dialplan_xml.c:331 Processing Ext 202 <202>->*operator in context ${domain_name}* 2010-12-27 21:07:27.665397 [WARNING] mod_dialplan_xml.c:361 *Context ${domain_name} not found* 2010-12-27 21:07:27.665397 [INFO] switch_core_state_machine.c:142 No Route, Aborting Is there any way to use the *${domain_name} *in the voicemail operator-extension parameter. What is the recommended way of using operator-extension in Multi-tenant environment. * * * * * * Thanks and regards, Lloyd
maybe $${domain} ----- Original Message ----- From: Aloysius Lloyd To: FreeSWITCH Users Help Sent: Monday, December 27, 2010 9:13 PM Subject: [Freeswitch-users] voicemail operator-extension - Multi-tenantEnvironment Hi All, I am trying to use the operator extension in Multi-tenant environment. I modified the voicemail.conf.xml file as below. <param name="operator-extension" value="operator XML ${domain_name}"/> Looks to me this is not the right way to do ... when I press the 9 (voicemail operator extension) call ended. Below is the log... 2010-12-27 21:07:27.664362 [NOTICE] switch_ivr.c:1603 Transfer loopback/voicemail-b to XML[operator@${domain_name}] 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:366 (loopback/voicemail-b) State EXECUTE going to sleep 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:320 (loopback/voicemail-b) Running State Change CS_ROUTING 2010-12-27 21:07:27.664362 [DEBUG] switch_channel.c:1615 (loopback/voicemail-b) Callstate Change EARLY -> RINGING 2010-12-27 21:07:27.664362 [DEBUG] switch_core_state_machine.c:359 (loopback/voicemail-b) State ROUTING 2010-12-27 21:07:27.665397 [DEBUG] mod_loopback.c:323 loopback/voicemail-b CHANNEL ROUTING 2010-12-27 21:07:27.665397 [DEBUG] switch_core_state_machine.c:77 loopback/voicemail-b Standard ROUTING 2010-12-27 21:07:27.665397 [INFO] mod_dialplan_xml.c:331 Processing Ext 202 <202>->operator in context ${domain_name} 2010-12-27 21:07:27.665397 [WARNING] mod_dialplan_xml.c:361 Context ${domain_name} not found 2010-12-27 21:07:27.665397 [INFO] switch_core_state_machine.c:142 No Route, Aborting Is there any way to use the ${domain_name} in the voicemail operator-extension parameter. What is the recommended way of using operator-extension in Multi-tenant environment. Thanks and regards, Lloyd ------------------------------------------------------------------------------ _______________________________________________ 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
Aren't $${VARIABLES} read one-time when the XML is parsed? I believe you are going to need to use ${domain_name} but it needs to be set when the channel is created. Anthony C On Dec 27, 2010, at 9:59 PM, Madovsky wrote:
maybe $${domain} _______________________________________________ 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
$${domain} - incorrect It is already set when the Chanel is created. here is the dialplan when I reach to voicemail box already belong to a domain. <action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/> when is press 9 - I am already in the domain extension voice mail box so there is ${domain_name} variable have the value. looks to me voicemail application does not understand the ${domain_name} Thanks Lloyd On Mon, Dec 27, 2010 at 10:10 PM, Anthony Cosgrove <acosgrov@gmail.com>wrote:
Aren't $${VARIABLES} read one-time when the XML is parsed? I believe you are going to need to use ${domain_name} but it needs to be set when the channel is created.
Anthony C
On Dec 27, 2010, at 9:59 PM, Madovsky wrote:
maybe $${domain} _______________________________________________ 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
_______________________________________________ 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
On Mon, Dec 27, 2010 at 8:08 PM, Aloysius Lloyd < lloyd.aloysius@sunteltech.ca> wrote:
$${domain} - incorrect
It is already set when the Chanel is created. here is the dialplan when I reach to voicemail box already belong to a domain.
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
when is press 9 - I am already in the domain extension voice mail box so there is ${domain_name} variable have the value.
looks to me voicemail application does not understand the ${domain_name}
This is almost a true statement. In actuality, you don't put chan vars in params like this and have them interpolated with each call. Interpolation of channel variables like this is best done in the dialplan. The easiest way for you to do this would be to set the value back to the default of: <param name="operator-extension" value="operator XML default"/> ...and then create the "operator" extension which handles the transfer: <extension name="operator transfer"> <condition field="destination_number" expression="^(operator)$"> <!-- ${domain_name} should be available here --> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension> Just be sure that you don't have a domain name "default" or this will blow up. :) You could also put this "utility" operator extension in the 'features' context and then as long as you didn't have a domain named 'features' then you would be just fine. -MC
Michael, Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/> But in the voicemail.conf.xml there is one parameter like below. *<param name="email-from" value="${voicemail_account}@ ${voicemail_domain}"/>* The above working with multiple domain without any issue. why the param name="operator-extension" does not understand the variable ${domain_name} or ${voicemail_domain} Any help is appreciated. Thanks and regards, Lloyd On Tue, Dec 28, 2010 at 2:51 AM, Michael Collins <msc@freeswitch.org> wrote:
On Mon, Dec 27, 2010 at 8:08 PM, Aloysius Lloyd < lloyd.aloysius@sunteltech.ca> wrote:
$${domain} - incorrect
It is already set when the Chanel is created. here is the dialplan when I reach to voicemail box already belong to a domain.
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
when is press 9 - I am already in the domain extension voice mail box so there is ${domain_name} variable have the value.
looks to me voicemail application does not understand the ${domain_name}
This is almost a true statement. In actuality, you don't put chan vars in params like this and have them interpolated with each call. Interpolation of channel variables like this is best done in the dialplan. The easiest way for you to do this would be to set the value back to the default of: <param name="operator-extension" value="operator XML default"/> ...and then create the "operator" extension which handles the transfer: <extension name="operator transfer"> <condition field="destination_number" expression="^(operator)$"> <!-- ${domain_name} should be available here --> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension>
Just be sure that you don't have a domain name "default" or this will blow up. :) You could also put this "utility" operator extension in the 'features' context and then as long as you didn't have a domain named 'features' then you would be just fine.
-MC
_______________________________________________ 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
and if you set it inline="true" a domain_name var ? ----- Original Message ----- From: Aloysius Lloyd To: FreeSWITCH Users Help Sent: Tuesday, December 28, 2010 12:57 PM Subject: Re: [Freeswitch-users] voicemail operator-extension -Multi-tenantEnvironment Michael, Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/> But in the voicemail.conf.xml there is one parameter like below. <param name="email-from" value="${voicemail_account}@${voicemail_domain}"/> The above working with multiple domain without any issue. why the param name="operator-extension" does not understand the variable ${domain_name} or ${voicemail_domain} Any help is appreciated. Thanks and regards, Lloyd On Tue, Dec 28, 2010 at 2:51 AM, Michael Collins <msc@freeswitch.org> wrote: On Mon, Dec 27, 2010 at 8:08 PM, Aloysius Lloyd <lloyd.aloysius@sunteltech.ca> wrote: $${domain} - incorrect It is already set when the Chanel is created. here is the dialplan when I reach to voicemail box already belong to a domain. <action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/> when is press 9 - I am already in the domain extension voice mail box so there is ${domain_name} variable have the value. looks to me voicemail application does not understand the ${domain_name} This is almost a true statement. In actuality, you don't put chan vars in params like this and have them interpolated with each call. Interpolation of channel variables like this is best done in the dialplan. The easiest way for you to do this would be to set the value back to the default of: <param name="operator-extension" value="operator XML default"/> ...and then create the "operator" extension which handles the transfer: <extension name="operator transfer"> <condition field="destination_number" expression="^(operator)$"> <!-- ${domain_name} should be available here --> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension> Just be sure that you don't have a domain name "default" or this will blow up. :) You could also put this "utility" operator extension in the 'features' context and then as long as you didn't have a domain named 'features' then you would be just fine. -MC _______________________________________________ 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 ------------------------------------------------------------------------------ _______________________________________________ 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
xml_curl. /b On Dec 28, 2010, at 2:02 PM, Madovsky wrote:
and if you set it inline="true" a domain_name var ? ----- Original Message ----- From: Aloysius Lloyd To: FreeSWITCH Users Help Sent: Tuesday, December 28, 2010 12:57 PM Subject: Re: [Freeswitch-users] voicemail operator-extension -Multi-tenantEnvironment
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
But in the voicemail.conf.xml there is one parameter like below.
<param name="email-from" value="${voicemail_account}@${voicemail_domain}"/>
On Tue, Dec 28, 2010 at 9:57 AM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
Please define "not working" - either you press 9 and the call is x-fer'd or it is not. Once it is x-fer'd to the dialplan you should be able to do whatever you want with the call. Or do what bkw says and use xml_curl. -MC
When I press 9 the call get transfered to the default context. Then I try get the ${domain_name} that is giving the default domain_name. I could not find a way to get the correct voicemal domain_name from the from default context. xml_curl .... right now I am using xml_curl. All users defined in mysql, then I use a php script for the user informations. How to use xml_curl for voicemail ? please let me know if there any help/docs on this. Thanks LLoyd On Tue, Dec 28, 2010 at 4:29 PM, Michael Collins <msc@freeswitch.org> wrote:
On Tue, Dec 28, 2010 at 9:57 AM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
Please define "not working" - either you press 9 and the call is x-fer'd or it is not. Once it is x-fer'd to the dialplan you should be able to do whatever you want with the call. Or do what bkw says and use xml_curl. -MC
_______________________________________________ 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
Dialplan sending calls to voicemail <action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/> voicemail.conf.xml <param name="operator-extension" value="operator XML features"/> <param name="operator-key" value="9"/> features.xml <extension name="operator"> <condition field="destination_number" expression="^(operator|0)$"> <action application="set" data="transfer_ringback=$${hold_music}"/> <action application="transfer" data="1000 XML features"/> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension> Domain Name - compaya.com pressing 9 .... voice mail operator extension transfer to features context. But ${domain_name} lost the value compaya.com , but now the ${ domain_name} have the IP address. How to get the ${domain_name} value in features context? Thanks and regards, Lloyd On Tue, Dec 28, 2010 at 5:44 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
When I press 9 the call get transfered to the default context. Then I try get the ${domain_name} that is giving the default domain_name. I could not find a way to get the correct voicemal domain_name from the from default context.
xml_curl .... right now I am using xml_curl. All users defined in mysql, then I use a php script for the user informations.
How to use xml_curl for voicemail ? please let me know if there any help/docs on this.
Thanks LLoyd
On Tue, Dec 28, 2010 at 4:29 PM, Michael Collins <msc@freeswitch.org>wrote:
On Tue, Dec 28, 2010 at 9:57 AM, Aloysius Lloyd <lloyd.aloysius@gmail.com
wrote:
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
Please define "not working" - either you press 9 and the call is x-fer'd or it is not. Once it is x-fer'd to the dialplan you should be able to do whatever you want with the call. Or do what bkw says and use xml_curl. -MC
_______________________________________________ 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
There is a mistake in the last email . Please ignore. Dialplan sending calls to voicemail <action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/> voicemail.conf.xml <param name="operator-extension" value="operator XML features"/> <param name="operator-key" value="9"/> features.xml <extension name="operator"> <condition field="destination_number" expression="^(operator|0)$"> <action application="set" data="transfer_ringback=$${hold_music}"/> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension> Domain Name - compaya.com pressing 9 .... voice mail operator extension transfer to features context. But ${domain_name} lost the value compaya.com , but now the ${ domain_name} have the IP address. How to get the ${domain_name} value in features context? Thanks and regards, Lloyd On Sat, Jan 1, 2011 at 8:51 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
Dialplan sending calls to voicemail
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
voicemail.conf.xml
<param name="operator-extension" value="operator XML features"/> <param name="operator-key" value="9"/>
features.xml
<extension name="operator"> <condition field="destination_number" expression="^(operator|0)$"> <action application="set" data="transfer_ringback=$${hold_music}"/> <action application="transfer" data="1000 XML features"/> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension>
Domain Name - compaya.com
pressing 9 .... voice mail operator extension transfer to features context. But ${domain_name} lost the value compaya.com , but now the ${ domain_name} have the IP address.
How to get the ${domain_name} value in features context?
Thanks and regards, Lloyd
On Tue, Dec 28, 2010 at 5:44 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
When I press 9 the call get transfered to the default context. Then I try get the ${domain_name} that is giving the default domain_name. I could not find a way to get the correct voicemal domain_name from the from default context.
xml_curl .... right now I am using xml_curl. All users defined in mysql, then I use a php script for the user informations.
How to use xml_curl for voicemail ? please let me know if there any help/docs on this.
Thanks LLoyd
On Tue, Dec 28, 2010 at 4:29 PM, Michael Collins <msc@freeswitch.org>wrote:
On Tue, Dec 28, 2010 at 9:57 AM, Aloysius Lloyd < lloyd.aloysius@gmail.com> wrote:
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
Please define "not working" - either you press 9 and the call is x-fer'd or it is not. Once it is x-fer'd to the dialplan you should be able to do whatever you want with the call. Or do what bkw says and use xml_curl. -MC
_______________________________________________ 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 solved the problem using the following dial plan <action application="voicemail" data="default ${domain_name} ${dialed_extension}"/> But loopback/app ... behave differently and not carry the correct ${domain_name} value and it is default to the default domain name. Thanks Lloyd On Sat, Jan 1, 2011 at 8:56 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
There is a mistake in the last email . Please ignore.
Dialplan sending calls to voicemail
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
voicemail.conf.xml
<param name="operator-extension" value="operator XML features"/> <param name="operator-key" value="9"/>
features.xml
<extension name="operator"> <condition field="destination_number" expression="^(operator|0)$"> <action application="set" data="transfer_ringback=$${hold_music}"/> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension>
Domain Name - compaya.com
pressing 9 .... voice mail operator extension transfer to features context. But ${domain_name} lost the value compaya.com , but now the ${ domain_name} have the IP address.
How to get the ${domain_name} value in features context?
Thanks and regards, Lloyd
On Sat, Jan 1, 2011 at 8:51 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com>wrote:
Dialplan sending calls to voicemail
<action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/>
voicemail.conf.xml
<param name="operator-extension" value="operator XML features"/> <param name="operator-key" value="9"/>
features.xml
<extension name="operator"> <condition field="destination_number" expression="^(operator|0)$"> <action application="set" data="transfer_ringback=$${hold_music}"/> <action application="transfer" data="1000 XML features"/> <action application="transfer" data="operator XML ${domain_name}"/> </condition> </extension>
Domain Name - compaya.com
pressing 9 .... voice mail operator extension transfer to features context. But ${domain_name} lost the value compaya.com , but now the ${ domain_name} have the IP address.
How to get the ${domain_name} value in features context?
Thanks and regards, Lloyd
On Tue, Dec 28, 2010 at 5:44 PM, Aloysius Lloyd <lloyd.aloysius@gmail.com
wrote:
When I press 9 the call get transfered to the default context. Then I try get the ${domain_name} that is giving the default domain_name. I could not find a way to get the correct voicemal domain_name from the from default context.
xml_curl .... right now I am using xml_curl. All users defined in mysql, then I use a php script for the user informations.
How to use xml_curl for voicemail ? please let me know if there any help/docs on this.
Thanks LLoyd
On Tue, Dec 28, 2010 at 4:29 PM, Michael Collins <msc@freeswitch.org>wrote:
On Tue, Dec 28, 2010 at 9:57 AM, Aloysius Lloyd < lloyd.aloysius@gmail.com> wrote:
Michael,
Thank you for the suggestion but this is not working . I think because of the the <param name="callback-context" value="default"/>
Please define "not working" - either you press 9 and the call is x-fer'd or it is not. Once it is x-fer'd to the dialplan you should be able to do whatever you want with the call. Or do what bkw says and use xml_curl. -MC
_______________________________________________ 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
participants (6)
-
Aloysius Lloyd
-
Aloysius Lloyd
-
Anthony Cosgrove
-
Brian West
-
Madovsky
-
Michael Collins