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@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@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@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@internal> sofia status Name Type Data State
================================================================================================= 10.1.1.5 alias internal ALIASED internal profile sip:mod_sofia@10.1.1.5:5060 RUNNING (0) external profile sip:mod_sofia@10.1.1.5:5080 RUNNING (0) external::example.com gateway sip:joeuser@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@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@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@freeswitch.orghttp://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Serverhttp://www.cudatel.com
Official FreeSWITCH Siteshttp://www.freeswitch.orghttp://wiki.freeswitch.orghttp://www.cluecon.com
FreeSWITCH-users mailing listFreeSWITCH-users@lists.freeswitch.orghttp://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-usershttp://www.frees...
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
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
-- Michael S Collins Twitter: @mercutioviz http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org