Wireless Gateway FAQ connect with FreeSwitch1.10.5

This document mainly describes the detailed steps of connecting the wireless gateway with FreeSwitch.

Follow the steps below to configure two-way calls between the phone and the gateway:

  • Outgoing call: from FreeSwitch SIP extension 1000 to the gateway through relay 1008;

  • Incoming call: call from an outside line to the gateway, through SIP 1020 to FreeSwitch, and then send the call to the 1000 SIP extension through FreeSwitch;

 

Step1.Create a SIP Trunk in FreeSWITCH

Enter the directory of FreeSWITCH’s default configuration directory, add the gateway’s configuration in /etc/freeswitch/directory/default/1008.xml

vi /etc/freeswitch/directory/default/1008.xml

<include>
<user id="1008">
<params>
<param name="password" value="1008"/>
<param name="vm-password" value="1008"/>
</params>
<variables>
<variable name="toll_allow" value="domestic,international,local"/>
<variable name="accountcode" value="1008"/>
<variable name="user_context" value="default"/>
<variable name="effective_caller_id_name" value="1008"/>
<variable name="effective_caller_id_number" value="1008"/>
<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>

parameter name

value

parameter name

value

user id

1008

password

1008

effective_caller_id_name

1008

effective_caller_id_number

1008

 

Step 2.Creat extension 1000 in Freeswtich

Edit 1000.xml in /etc/freeswitch/directory/default/ .

<include>
<user id="1000">
<params>
<param name="password" value="1000"/>
<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>

parameter name

value

parameter name

value

user id

1000

password

1000

 

Step 3.Dialing Rules in FreeSWITCH

Outbound rules realize dialing “9+destination number ” to the remote part, and 9 can be replaced by any other digital.

Edit the outband dialplan in /etc/freeswitch/dialplan/default.xml

<extension name="outbound">
<condition field="destination_number" expression="^9(\d+)$">
<action application="answer"/>
<action application="set" data="ringback=${us-ring}"/>
<action application="bridge" data="sofia/internal/$1@172.16.6.242"/>
</condition>
</extension>

parameter name

value

parameter name

value

extension name

outbound

expression

^9(\d+)$, ^marks the beginning of the match, $ marks the end of the match.

\d means 0-9, + will match one or more numbers. So ^9(\d+)$ will match all phone number which starts with 9. And it will save all numbers which is behind 9 to $1

data

sofia/internal/$1@172.16.6.242

If you want to know more about regular expression, you can google PCRE regular expression.

 

Inbound rules realize all incoming calls transfer to SIP extension 1000.

Edit the inbound dialplan in /etc/freeswitch/dialplan/public/00_inbound_did.xml.

<include>
<extension name="public_did">
<condition field="destination_number" expression="1020">
<action application="set" data="domain_name=$${domain}"/>
<action application="transfer" data="1000 XML default"/>
</condition>
</extension>
</include>

parameter name

value

parameter name

value

expression

1020

data

1000 XML default

 

Step 4. Set Network Parameters in Web

Log in to the network in the browser, and click "Network -> LAN Settings" to set your network parameters. The figure below is an example for reference only.

Save your changes. Please type in your DNS server in “DNS Server Address”.

 

Step 5. Create a SIP Endpoint in Web

Please select “SIP—>SIP Endpoints—>Add New SIP Endpoint” to set SIP trunk 1008 and endpoint 1020. The following figure shows detail information about how to set it.

 

parameter name

value

parameter name

value

name

1008

user name

1008

password

1008

hostname or IP Address

172.16.8.184, your PBX IP

About other parameters in SIP, please set by your requirements for there is no need to set them in simple calls.

 

Step 6. Set Routing Rules in Web

Click “ROUTING—> Call Routing Rules—> New Call Routing Rule” to set outbound and inbound routing rules like the following:

Save the inbound call routing rules, please set the outbound rules as introduced. In order to make all calls successfully, please enable and set failover function in advanced routing rule like that:

Please save all your changes to make effect.

 

Step 7. Register a SIP extension by software

Taking advantage of SIP software such as Xlite, eyeBeam to register a SIP extension(1000). After all above steps, you can try to make calls and send SMS.

 

Test call:
Incoming call test: Dial the number of port 2.5 on the gateway via your mobile to see if 1000 will ring. If 1000 rings, it means your configuration is successful; unless, it means there is something wrong with your configuration, please check it.
Outgoing call test: Dial your mobile number on 1000 extension registered in a software phone. If your mobile rings, it means your configuration is ok; unless, please check your configuration.