[Freeswitch-users] Freeswitch Multi-Tenant Dialplan
Zoltán Szabó
zzoell at gmail.com
Tue Jun 25 16:25:31 MSD 2013
Hi,
I'm trying to set up a multi tenant config with FS. At the moment i
configured only one domain, lets say it is mydomain.com
This is my mydomain.com.xml in dialplan directory:
<?xml version="1.0" encoding="utf-8"?>
<include>
<context name="mydomain.com">
<extension name="Internal Call">
<condition field="destination_number" expression="^(\d\d\d\d)$">
<action application="bridge" data="sofia/mydomain.com/$1"/>
</condition>
</extension>
</context>
</include>
Here is my mydomain.com.xml in the directory directory:
<include>
<domain name="mydomain.com">
<params>
<param name="dial-string"
value="{presence_id=${dialed_user}@${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}"/>
</params>
<variables>
<variable name="record_stereo" value="true"/>
<variable name="default_gateway" value="$${default_provider}"/>
<variable name="default_areacode" value="$${default_areacode}"/>
<variable name="transfer_fallback_extension" value="operator"/>
<variable name="user_context" value="mydomain.com"/>
</variables>
<groups>
<group name="mydomain.com">
<users>
<X-PRE-PROCESS cmd="include" data="mydomain.com/*.xml"/>
</users>
</group>
</groups>
</domain>
</include>
The directory/mydomain.com contains two users (i dont configured
user_context here because its configured in the previous config already):
6000.xml:
<include>
<user id="6000">
<params>
<param name="password" value="12345"/>
<param name="vm-password" value="12345"/>
</params>
<variables>
<variable name="toll_allow" value="domestic,international,local"/>
<variable name="accountcode" value="6000"/>
<!--<variable name="user_context" value="default"/>-->
<variable name="effective_caller_id_name" value="Mr. Teszt Elek"/>
<variable name="effective_caller_id_number" value="6000"/>
<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>
6001.xml:
<include>
<user id="6001">
<params>
<param name="password" value="12345"/>
<param name="vm-password" value="12345"/>
</params>
<variables>
<variable name="toll_allow" value="domestic,international,local"/>
<variable name="accountcode" value="6001"/>
<!--<variable name="user_context" value="default"/>-->
<variable name="effective_caller_id_name" value="Mekk Elek"/>
<variable name="effective_caller_id_number" value="6001"/>
<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>
I can login with softphones to 6000 and 6001. Now im trying to call from
6000 to 6001 and it seems not working for some reason. First of all every
time i call it tries to get dialplan from the public context. I changed the
context parameter in the interlan sip profile so it is now looking for the
dialplan in my mydomain.com contexts
2013-06-25 01:59:32.470028 [NOTICE] switch_channel.c:968 New Channel
sofia/internal/6000 at mydomain.com:5060
[ffc81a48-2c77-4797-8f96-fcf291fc6da3]
2013-06-25 01:59:32.650035 [INFO] mod_dialplan_xml.c:557 Processing
6000 <6000>->6001 in context mydomain.com
2013-06-25 01:59:32.650035 [WARNING] mod_sofia.c:4839 Cannot locate
registered user 6001 at mydomain.com
2013-06-25 01:59:32.650035 [NOTICE] mod_sofia.c:5079 Close Channel N/A [CS_NEW]
2013-06-25 01:59:32.650035 [NOTICE] switch_ivr_originate.c:2608 Cannot
create outgoing channel of type [sofia] cause: [USER_NOT_REGISTERED]
2013-06-25 01:59:32.650035 [INFO] mod_dptools.c:3055 Originate Failed.
Cause: USER_NOT_REGISTERED
2013-06-25 01:59:32.650035 [NOTICE] mod_dptools.c:3175 Hangup
sofia/internal/6000 at mydomain.com:5060 [CS_EXECUTE]
[USER_NOT_REGISTERED]
2013-06-25 01:59:32.650035 [NOTICE] switch_core_session.c:1506 Session
4 (sofia/internal/6000 at mydomain.com:5060) Ended
2013-06-25 01:59:32.650035 [NOTICE] switch_core_session.c:1510 Close
Channel sofia/internal/6000 at mydomain.com:5060 [CS_DESTROY]
By the way my default port is not 5060 as it is written in the log, its a
totally different number.
I tried with this bridge too:
<action application="bridge" data="sofia/internal/$1 at mydomain.com"/>
The error now with this:
2013-06-25 02:04:06.910054 [NOTICE] switch_channel.c:968 New Channel
sofia/internal/6000 at mydomain.com:5060
[954bab64-1a79-4cd1-bab1-51d0f87410f2]
2013-06-25 02:04:07.090036 [INFO] mod_dialplan_xml.c:557 Processing
6000 <6000>->6001 in context mydomain.com
2013-06-25 02:04:07.090036 [NOTICE] switch_channel.c:968 New Channel
sofia/internal/6001 at mydomain.com
[3f59b312-7b62-4757-87c4-ce737ea405b8]
2013-06-25 02:04:07.090036 [NOTICE] sofia.c:6383 Hangup
sofia/internal/6001 at mydomain.com [CS_CONSUME_MEDIA]
[NORMAL_TEMPORARY_FAILURE]
2013-06-25 02:04:07.113421 [INFO] mod_dptools.c:3055 Originate Failed.
Cause: NORMAL_TEMPORARY_FAILURE
2013-06-25 02:04:07.113421 [NOTICE] mod_dptools.c:3175 Hangup
sofia/internal/6000 at mydomain.com:5060 [CS_EXECUTE]
[NORMAL_TEMPORARY_FAILURE]
2013-06-25 02:04:07.160607 [NOTICE] switch_core_session.c:1506 Session
9 (sofia/internal/6001 at mydomain.com) Ended
2013-06-25 02:04:07.160607 [NOTICE] switch_core_session.c:1510 Close
Channel sofia/internal/6001 at mydomain.com [CS_DESTROY]
2013-06-25 02:04:07.223801 [NOTICE] switch_core_session.c:1506 Session
8 (sofia/internal/6000 at mydomain.com:5060) Ended
2013-06-25 02:04:07.223801 [NOTICE] switch_core_session.c:1510 Close
Channel sofia/internal/6000 at mydomain.com:5060 [CS_DESTROY]
Have two questions. Why is this error happening? From my asterisk
experiences maybe i have to create a context where my extensions can
receive the calls? Other question is how can i tell the mydomain.com domain
to use the mydomain.com.xml dialplan not the public?
Thanks,
Zoltan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130625/41d2c2cf/attachment-0001.html
Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users
mailing list