Page tree
Skip to end of metadata
Go to start of metadata


Last Update: 24 September 2012


This example assumes altering the default configuration included with FreeSWITCH. Custom contexts and such will require tweaking. ${FS Install DIR} is used to represent the directory in which FreeSWITCH is installed, by default this is /usr/local/freeswitch.

Outbound Calling

You'll need a few bits to get this working. First, add a Gateway profile to ${FS Install DIR}/conf/sip_profiles/external/voipinnovations.xml


The username and password fields are not used by VI, but are required by FreeSWITCH to create the gateway. The IP address they give you might be '' instead of .30 listed above, check your welcome packet.

This should be just about enough to get outbound calling working. You just need to add one thing to the default dialplan to tell FS to send outbound calls to that gateway. Open up ${FS Install DIR}/conf/diaplans/default/ We'll use this as our template. Inside you should see this:


VI can't handle the 7 digit numbers and doesn't at time of writing do International termination, so you can remove the first and third extension sections. We'll alter the second extension as well, leaving you with something like this:



Please note that this assumes an 11 digit dialed number from the phone. To allow 10 digit dialing as well, you can modify the condition as follows.

Inbound Calling

For inbound calling, we need to add their IP to the ACL rules. The file ${FS Install DIR}/conf/autoload_configs/acl.conf.xml should have a section like this:

Add a line with their IP address like so:


Then open up ${FS Install DIR}/conf/sip_profiles/external.xml and make sure it has these two lines:


If your switch is behind NAT, you may have to add the apply-inbound-acl line to ${FS Install DIR}/conf/sip_profiles/internal.xml. Watch the FS console for errors about unauthenticated calls being rejected by the internal context before altering it, and leave auth-calls true in the internal profile.

Last, but not least, you'll need to add a section to ${FS Install DIR}/conf/dialplan/public/00_inbound_did.xml to route the individual DIDs. The framework of the file is pretty easy to follow. The only thing that should be noted is that by default VI sends the DNIS in E.164 format [2] so you would need to either consider that when making your route, or alter the number of transmit digit in their portal. The example below assumes you're set to receive E.164