[Freeswitch-users] Cannot ring extension from DID
Michael Collins
msc at freeswitch.org
Wed May 22 01:37:27 MSD 2013
Hi Mike,
No worries - this can be frustrating at first. You'll get the hang of it
shortly.
Okay, technically speaking there is no explicit link between a gateway and
an extension. Rather, the inbound call is handled by the dialplan. If
you're using the vanilla example configs (which you should be to start out)
then your inbound call is handled in the public dialplan context. This
means that you need to have a file in conf/dialplan/public/ to handle your
inbound call. It looks to me like your GothamCity.xom.xml file would work,
but you'll need to make at least two changes:
#1 - move the file from the conf/dialplan/default/ directory into
conf/dialplan/public/
#2 - add the regular expression for your DID number. For example, if your
DID number was 800-555-1212 you would do something like this:
<extension name="vitel-inbound">
<condition field="destination_number" expression="^1?(8005551212)$">
<action application="transfer" data="1000 XML default"/>
</condition>
</extension>
Hope this helps.
-MC
On Tue, May 21, 2013 at 1:23 PM, Mike Hendrie <mike at hendrienet.com> wrote:
> I think I am missing the basic understanding of how the DID connects to
> the gateway then to the extension. Which file does what.
>
> thanks!!
>
>
> On Tue, May 21, 2013 at 3:20 PM, Mike Hendrie <mike at hendrienet.com> wrote:
>
>> I am looking in the vars.xml file and am not seeing any reference to a
>> gateway:
>>
>> ======
>> vars.xml
>>
>> <X-PRE-PROCESS cmd="set" data="default_password=H1dD3n!"/>
>>
>> <X-PRE-PROCESS cmd="set" data="domain=$${local_ip_v4}"/>
>> <X-PRE-PROCESS cmd="set" data="domain_name=$${domain}"/>
>> <X-PRE-PROCESS cmd="set" data="hold_music=local_stream://moh"/>
>> <X-PRE-PROCESS cmd="set" data="use_profile=internal"/>
>>
>> <X-PRE-PROCESS cmd="set" data="zrtp_secure_media=true"/>
>>
>> <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM"/>
>> <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM"/>
>>
>> <X-PRE-PROCESS cmd="set" data="xmpp_client_profile=xmppc"/>
>> <X-PRE-PROCESS cmd="set" data="xmpp_server_profile=xmpps"/>
>>
>> <X-PRE-PROCESS cmd="set" data="bind_server_ip=auto"/>
>>
>> <X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org
>> "/>
>>
>> <X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org
>> "/>
>>
>> <X-PRE-PROCESS cmd="set" data="unroll_loops=true"/>
>>
>> <X-PRE-PROCESS cmd="set" data="outbound_caller_name=FreeSWITCH"/>
>> <X-PRE-PROCESS cmd="set" data="outbound_caller_id=0000000000"/>
>>
>>
>> <X-PRE-PROCESS cmd="set" data="call_debug=false"/>
>> <X-PRE-PROCESS cmd="set" data="console_loglevel=info"/>
>> <X-PRE-PROCESS cmd="set" data="default_areacode=918"/>
>> <X-PRE-PROCESS cmd="set" data="default_country=US"/>
>>
>>
>> <X-PRE-PROCESS cmd="set" data="presence_privacy=false"/>
>>
>> <X-PRE-PROCESS cmd="set" data="be-ring=%(1000,3000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="ca-ring=%(2000,4000,440,480)"/>
>> <X-PRE-PROCESS cmd="set" data="cn-ring=%(1000,4000,450)"/>
>> <X-PRE-PROCESS cmd="set" data="cy-ring=%(1500,3000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="cz-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="de-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="dk-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="dz-ring=%(1500,3500,425)"/>
>> <X-PRE-PROCESS cmd="set" data="eg-ring=%(2000,1000,475,375)"/>
>> <X-PRE-PROCESS cmd="set" data="es-ring=%(1500,3000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="fi-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="fr-ring=%(1500,3500,440)"/>
>> <X-PRE-PROCESS cmd="set"
>> data="hk-ring=%(400,200,440,480);%(400,3000,440,480)"/>
>> <X-PRE-PROCESS cmd="set" data="hu-ring=%(1250,3750,425)"/>
>> <X-PRE-PROCESS cmd="set" data="il-ring=%(1000,3000,400)"/>
>> <X-PRE-PROCESS cmd="set"
>> data="in-ring=%(400,200,425,375);%(400,2000,425,375)"/>
>> <X-PRE-PROCESS cmd="set" data="jp-ring=%(1000,2000,420,380)"/>
>> <X-PRE-PROCESS cmd="set" data="ko-ring=%(1000,2000,440,480)"/>
>> <X-PRE-PROCESS cmd="set" data="pk-ring=%(1000,2000,400)"/>
>> <X-PRE-PROCESS cmd="set" data="pl-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="ro-ring=%(1850,4150,475,425)"/>
>> <X-PRE-PROCESS cmd="set" data="rs-ring=%(1000,4000,425)"/>
>> <X-PRE-PROCESS cmd="set" data="ru-ring=%(800,3200,425)"/>
>> <X-PRE-PROCESS cmd="set" data="sa-ring=%(1200,4600,425)"/>
>> <X-PRE-PROCESS cmd="set" data="tr-ring=%(2000,4000,450)"/>
>> <X-PRE-PROCESS cmd="set"
>> data="uk-ring=%(400,200,400,450);%(400,2000,400,450)"/>
>> <X-PRE-PROCESS cmd="set" data="us-ring=%(2000,4000,440,480)"/>
>> <X-PRE-PROCESS cmd="set"
>> data="bong-ring=v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1400,0,350,440)"/>
>> <X-PRE-PROCESS cmd="set" data="beep=%(1000,0,640)"/>
>> <X-PRE-PROCESS cmd="set"
>> data="sit=%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)"/>
>>
>>
>> <X-PRE-PROCESS cmd="set" data="default_provider=example.com"/>
>> <X-PRE-PROCESS cmd="set" data="default_provider_username=joeuser"/>
>> <X-PRE-PROCESS cmd="set" data="default_provider_password=password"/>
>> <X-PRE-PROCESS cmd="set" data="default_provider_from_domain=example.com
>> "/>
>>
>>
>>
>> <X-PRE-PROCESS cmd="set" data="default_provider_register=false"/>
>> <X-PRE-PROCESS cmd="set" data="default_provider_contact=5000"/>
>>
>> <X-PRE-PROCESS cmd="set" data="sip_tls_version=tlsv1"/>
>>
>>
>> <X-PRE-PROCESS cmd="set" data="internal_auth_calls=true"/>
>> <X-PRE-PROCESS cmd="set" data="internal_sip_port=5060"/>
>> <X-PRE-PROCESS cmd="set" data="internal_tls_port=5061"/>
>> <X-PRE-PROCESS cmd="set" data="internal_ssl_enable=false"/>
>>
>> <X-PRE-PROCESS cmd="set" data="external_auth_calls=false"/>
>> <X-PRE-PROCESS cmd="set" data="external_sip_port=5080"/>
>> <X-PRE-PROCESS cmd="set" data="external_tls_port=5081"/>
>> <X-PRE-PROCESS cmd="set" data="external_ssl_enable=false"/>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Mon, May 20, 2013 at 4:49 PM, Philippe Le Toquin <philippe at ppmt.org>wrote:
>>
>>> I am no expert so I could be wrong but:
>>>
>>> First your outbound is no registered (NOREG) so that is most likely
>>> going to prevent outgoing call
>>>
>>> Also you refer to default_gateway in your dialplan....what value is it
>>> set to? Check vars.xmls
>>>
>>> I normally use directly the name of my gateway instead of using variable
>>> (might not be the best way though )
>>>
>>>
>>>
>>> But you have the
>>> On 13-05-19 11:39 PM, Mike Hendrie wrote:
>>>
>>> Thank you for your response. Per your request here is the result of the sofia
>>> status command:
>>>
>>> freeswitch at internal> sofia status
>>> Name Type
>>> Data State
>>>
>>> =================================================================================================
>>> 10.1.1.5 alias
>>> internal ALIASED
>>> internal profile
>>> sip:mod_sofia at 10.1.1.5:5060 RUNNING (0)
>>> external profile
>>> sip:mod_sofia at 10.1.1.5:5080 RUNNING (0)
>>> external::example.com gateway
>>> sip:joeuser at example.com NOREG
>>> external::BatCave-inbound gateway sip:J0k3R!@BacCave.hole.Xom REGED
>>> external::BatCat-outbound gateway sip:J0k3R!@BacCave.hole.Xom
>>> NOREG
>>> GothamCity.xom alias
>>> internal ALIASED
>>> internal-ipv6 profile sip:mod_sofia@[::1]:5060
>>> RUNNING (0)
>>>
>>> =================================================================================================
>>> 3 profiles 2 aliases
>>>
>>>
>>> ==========================================
>>> /usr/local/freeswitch/conf/dialplan/default/GothamCity.xom.xml
>>>
>>> <!-- http://wiki.freeswitch.org/wiki/Dialplan_XML -->
>>> <include>
>>> <context name="GothamCity.xom">
>>> <extension name="vitel-inbound">
>>> <condition field="destination_number" expression="">
>>> <action application="transfer" data="1000 XML default"/>
>>> </condition>
>>> </extension>
>>> ==========================================
>>>
>>> /usr/local/freeswitch/conf/dialplan/default/GothamCity.xom.xml
>>>
>>> <include>
>>>
>>> <extension name="local.example.com">
>>> <condition field="${toll_allow}" expression="local"/>
>>> <condition field="destination_number" expression="^(\d{7})$">
>>> <action application="set"
>>> data="effective_caller_id_number=${outbound_caller_id_number}"/>
>>> <action application="set"
>>> data="effective_caller_id_name=${outbound_caller_id_name}"/>
>>> <action application="bridge"
>>> data="sofia/gateway/${default_gateway}/1${default_areacode}$1"/>
>>> </condition>
>>> </extension>
>>>
>>> <extension name="domestic.example.com">
>>> <condition field="${toll_allow}" expression="domestic"/>
>>> <condition field="destination_number" expression="^(\d{11})$">
>>> <action application="set"
>>> data="effective_caller_id_number=${outbound_caller_id_number}"/>
>>> <action application="set"
>>> data="effective_caller_id_name=${outbound_caller_id_name}"/>
>>> <action application="bridge"
>>> data="sofia/gateway/${default_gateway}/$1"/>
>>> </condition>
>>> </extension>
>>>
>>> <extension name="international.example.com">
>>> <condition field="${toll_allow}" expression="international"/>
>>> <condition field="destination_number" expression="^(011\d+)$">
>>> <action application="set"
>>> data="effective_caller_id_number=${outbound_caller_id_number}"/>
>>> <action application="set"
>>> data="effective_caller_id_name=${outbound_caller_id_name}"/>
>>> <action application="bridge"
>>> data="sofia/gateway/${default_gateway}/$1"/>
>>> </condition>
>>> </extension>
>>>
>>> </include>
>>>
>>> ==========================================
>>> /usr/local/freeswitch/conf/sip_profiles/external/vitelity.xml
>>>
>>> <include>
>>> <gateway name="BatCave-outbound">
>>> <!--/// account username *required* ///-->
>>> <param name="username" value="Joker"/>
>>> <!--/// auth realm: *optional* same as gateway name, if blank
>>> ///-->
>>> <param name="realm" value="BatCave-outbound"/>
>>> <!--/// account password *required* ///-->
>>> <param name="password" value="2F at ce"/>
>>> <!--/// extension for inbound calls: *optional* same as
>>> username, if blank ///-->
>>> <param name="extension" value="default"/>
>>> <!--/// proxy host: *optional* same as realm, if blank ///-->
>>> <param name="proxy" value="outbound1.BatCave.net"/>
>>> <!--/// expire in seconds: *optional* 3600, if blank ///-->
>>> <param name="expire-seconds" value="600"/>
>>> <!--/// register: *optional* true, if blank ///-->
>>> <param name="register" value="false" />
>>> </gateway>
>>> </include>
>>>
>>>
>>> <include>
>>> <gateway name="BatCave-inbound">
>>> <!--/// account username *required* ///-->
>>> <param name="username" value="Joker"/>
>>> <!--/// auth realm: *optional* same as gateway name, if blank
>>> ///-->
>>> <param name="realm" value="BatCave-inbound"/>
>>> <!--/// account password *required* (do not include
>>> allow=all) ///-->
>>> <param name="password" value="2F at ce"/>
>>> <!--/// extension for inbound calls: *optional* same as
>>> username, if blank ///-->
>>> <param name="extension" value="default"/>
>>> <!--/// proxy host: *optional* same as realm, if blank ///-->
>>> <param name="proxy" value="Yup.Not.REAL.Port"/>
>>> <!--/// expire in seconds: *optional* 3600, if blank ///-->
>>> <param name="expire-seconds" value="600"/>
>>> <param name="context" value="inbound"/>
>>> <!--/// register: *optional* true, if blank ///-->
>>> <param name="register" value="true" />
>>> </gateway>
>>> </include>
>>>
>>> ==========================================
>>> /usr/local/freeswitch/conf/directory/GothamCity.xom/1000.xml
>>>
>>> <include>
>>> <user id="1000">
>>> <params>
>>> <param name="password" value="$${default_password}"/>
>>> <param name="vm-password" value="1000"/>
>>> </params>
>>> <variables>
>>> <variable name="toll_allow" value="domestic,international,local"/>
>>> <variable name="accountcode" value="1000"/>
>>> <!-- <variable name="user_context" value="default"/>-->
>>> <variable name="effective_caller_id_name" value="Extension 1000"/>
>>> <variable name="effective_caller_id_number" value="1000"/>
>>> <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>
>>>
>>> ==========================================
>>>
>>>
>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:consulting at freeswitch.orghttp://www.freeswitchsolutions.com
>>>
>>> FreeSWITCH-powered IP PBX: The CudaTel Communication Server
>>>
>>> Official FreeSWITCH Siteshttp://www.freeswitch.orghttp://wiki.freeswitch.orghttp://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing listFreeSWITCH-users at lists.freeswitch.orghttp://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-usershttp://www.freeswitch.org
>>>
>>>
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>>
>>>
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at 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 at freeswitch.org
> http://www.freeswitchsolutions.com
>
>
>
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
--
Michael S Collins
Twitter: @mercutioviz
http://www.FreeSWITCH.org
http://www.ClueCon.com
http://www.OSTAG.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130521/cc5f8e1d/attachment-0001.html
Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users
mailing list