How do I add a new dial plan?

Video Walkthrough of Dial Plans

Dial Plans require Trunks

"Trunks" are connections to the PSTN (Public Switched Telephone Network).  "PSTN" is a fancy acronym that basically means: you can call other people.

All phone systems (legacy or IP) require trunks.  A phone system is not the same as phone service.

Phone Service comes from a phone company (including VoIP providers)

Phone Systems come from Fonality!

Please read about trunks at the links below:

How do I add a VoIP Trunk/Account?

Centrex Users!

If your analog lines use Centrex - DO NOT EVER STRIP THE 9 IN THE EXAMPLES BELOW.

This condition only applies to a small number of users.  If you do not have Centrex on your analog lines - ignore this section completely.

Step-by-Step Dial Plan Instructions

  1. Click on Options --> dial plan

  2. For trixbox Pro and Dell customers, you may choose the leading digit to dial an outside number (9 by default) by choosing any digit from the drop down menu.

  3. In the box under 'Dial String' enter a new dial string.  Examples of valid dial strings are:

    1. nxxnxxxxxx - matches any 10-digit phone number

    2. 310nxxxxxx - matches any 10-digit phone number beginning with area code 310

    3. nxxxxxx - matchs a 7-digit phone number

    4. 800nxxxxxx - matches any 800 number

    5. 1nxxnxxxxx - matches any 10-digit number preceeded by a 1.

    6. 011. - matches any international number.  011 represents the three digits required to inform your telephone company you are about to make an international call, and '.' indicates any number of subsequent digits entered.  Use the '.' as a wildcard to say 'match any and all digits'

  4. You can create dial plans using any combination of numbers and the wildcard characters: 'n'  'x'  '.'

  5. Enter a Description for your new dial plan.  This description serves to help the administrator quickly tell various dial plans apart.  Descriptions have no effect on the functionality of any dial plan.

  6. The 'Type' field serves to prioritize dial strings.  Choose from among the following types:

    1. Toll Free

    2. Local Call

    3. Long Distance

    4. International

  7. Select the first route from the drop-down under 'Route'.  PBXtra s allow up to three unique routes per dial plan.  If the first route becomes unavailable for any reason, the system attempts to complete the call via the second route.  If the first and second routes are unavailable, the system attempts to complete the call via the third route.  If all three routes are unavailable, the system plays a busy signal to the caller.

  8. Choose the number of digits to remove from the dial string entered by the user.  By default, users place outbound calls by dialing 9 + some number.  Your telephone carrier does not need the initial '9', so all PBXtra s are configured to remove the leading 9 by default.

    1. Hint:  If you would like to create 'security codes' for a particular dial plan (e.g. international calls), enter the security code before the '011' and then strip a number of digits equal to 9 + your security code.  Example:  9 + 12345 + 011.  Strip = 6 (912345).  Digits sent to carrier = 011.

  9. Choose a number of digits to be prepended to your dial plan.  This option is particularly useful if you wish to allow your employees to dial 7 digits only for local numbers even in areas where 10-digit dialing is mandatory.  You can create a dial plan like:  9 + nxxxxxx, Strip 1, Prepend 310.  Now whenever an employee dials 9 + 7-digits, the system will dial 310 + 7-digits which would complete a local call from a Los Angeles location to another Los Angeles location.

  10. Click 'Add Dial Plan'

Dial Plan Examples

Standard Long-Distance

Picture 2.jpg

The long distance dial plan is configured on all systems by default.  It includes only 2 digits and 10 variables.

  1. The first 9 means "this will be an outside call"

  2. The 1 tells your telephone company (or VoIP Provider) that you are making a long-distance call

  3. The next n means "accept any digit from 2-9".  No North American area code begins with a 0 or 1

  4. The x characters will match any digit 0-9

  5. Another n appears because the first digit in a local phone number is never a 0 or 1 according to the NANP

  6. The Description and Type fields exist to help classify the dial plan for Administrators.  End-Users need not be concerned with either of these fields

  7. The Route column provides fail-over in the event that a primary route is down:

    1. In the example above, all long-distance calls will be passed to VoicePulse VoIP first.  If VoicePulse is down for any reason...

    2. The call will be passed to Cbeyond VoIP.  If Cbeyond is down for any reason...

    3. The call will be passed to AF VoIP.  If AF VoIP is down - the call will fail.

  8. The Strip field removes digits from the dial plan string before it is sent to the telephone company (or VoIP Provider).  So Strip 1 means "remove the first digit - 9 - and send the rest to the phone company".  The phone company understands a number like "1 310-861-4300".  The phone company equipment does NOT understand "9 1 310-861-4300".  So we remove the 9 and send the "1 310-861-4300" to the phone company.

 

Targeted Long Distance

Picture 3.jpg

In this dial plan, we statically list a US area code at the beginning of the string.  Unlike the standard long-distance dial plan, this configuration does the following:

  1. Routes all numbers that include a specific area code out a provider who offers the cheapest per minute rates to all numbers within this area code.  

Many Call Centers configure multiple VoIP accounts which offer cheap calls to and from specific locations.  If you have a VoIP service like this, you can change the Route for these specific destinations in order to maximize cost savings on each call to the destination.

In the Dial String field - we statically assign "303" as the area code (Denver, CO).  ALL calls dialed to a 303 area code will use Cbeyond VoIP (as configured above) as the primary route.  

Cbeyond might be offering us unlimited free inbound and outbound calls to Denver, CO, which is why we choose this as the primary trunk.

 

Standard International

Standard International dial plans are very simple.

  1. Start with 9 for an outside line

  2. The user must dial 011 to indicate this call is an International call

  3. Then we use the . variable which means "any digit, and any number of digits until the user stops dialing" (this could mean the user presses the 1 key once, or the 1 key a thousand times - the . will catch all numbers entered after the "011")

It's important to use the . symbol sparingly when creating your dial plans.  You could unintentionally create two similar dial plans that overlap.

Let's look at the Route, Strip, and Prepend fields:

  1. The first route is Bandwidth.com .  Bandwidth requires some interesting formatting for dial plans:

    1. All International calls should NOT contain "011" when sent to Bandwidth - therefore we strip 4 digits (9 + 011) and send only the country code and number to Bandwidth.

    2. All outbound calls require a leading + sign according to Bandwidth.  Therefore we prepend a + sign to the number.

  2. The result is an International number send to Bandwidth as follows (using Japan as the country for example):

9 011 81 090 5432 1234

Strip 9 011

81 090 5432 1234

Prepend +

+ 81 090 5432 1234

The last number is the number that will be sent to Bandwidth properly formatted according to this company's dial plan rules.  

Different companies may have different rules about dial plans - please check with your PROVIDER for the proper formatting conventions.

 

International Calls with Access Code Restriction

In the dial plan above, we have introduced a new convention - access code restrictions - preventing people who do not know the code from making International calls.

In the Dial String area, we have created a random code of 87643.  We should give this code to our Executive team or anyone authorized to make International calls.

When an authorized person tries to dial an International call - they will need to dial 87643 + the International number in order to successfully place the call.

Using the Strip Digits field, we remove the first 6 digits from this dial string.  In other words - we are removing the 9 + 87643 before sending the string to the telephone company (or VoIP Provider).

In this fashion - we have created a usable access code preventing unauthorized people from placing calls to certain destinations.

 

Using a Linked Server to place outbound calls

Customers who purchased the Linked Server option can configure their dial plans such that users on Server A can place outbound calls through Server B's trunks (PRI, Analog lines, VoIP trunk, etc.)

The dial plan above demonstrates this configuration.  To understand this dial plan, you should:

  1. Assume the server in the picture above is Server B

  2. Notice that all calls to the 310 area code will be captured by this dial string

  3. Notice the Route field has been configured to "Goto S(ServerID)" via an internal and then external connection.

When you select the Route for a linked-server dial plan, you must choose from:

  1. Internal

  2. External

The difference between these two types is as follows:

An Internal connection tries to use the private IP address of each server in order to communicate.  If your servers are setup in geographically different locations (such as NY and LA), then you will most likely not be able to use the Internal connection.

If you have a VPN connecting all sites (recommended whenever possible) then you CAN use the Internal route.

An External connection uses the public IP address of each server in order to communicate.  This is analogous to your PC contacting Google to search.  Your public IP address is used to communicate with the public IP address of a server in the Google network.

External connections should always work as long as the firewall at each location allows UDP 4569 to your phone system.

 

Only dial 7 digits for local calls (add the area code automatically)

If your office is located in a part of America where 10-digit dialing is not yet standard, you can create a dial plan to automatically add the area-code to all local numbers.

Most VoIP providers require 10-digit-dialing.  But forcing users who are accustomed to making local calls without dialing their own area code to change is too difficult and time consuming for administrators.

Crafty dial plans solve this problem nicely.

In the image above, we have a leading 9 followed by 7 digits.  Simple enough.  For the route, we've chosen Bandwidth.com (as an example), and then we use the Strip field to remove the 9.

The Prepend field does all the work of adding the properly-formatted area code for us.

We insert +310 for Bandwidth because they require a leading + sign for all calls.  The next two providers do not require this + sign, so we simply insert 310.

This dial plan accomplishes local calls from the 310 area code to another number in the 310 area code such that end-users only need dial the 7 digit phone number.  The server adds 310, and sends all 10 digits (minus the 9) to the telephone company (or VoIP provider).

 

Don't Overlap Dial Plans!

In the list of Dial Strings at left, there are two strings that overlap and will cause problems on your server.

9 + 432nxxxxxx and 9 + 4322011. serve the 432 area code as well as provide an access restriction for International Calls.

Except no one on this server will ever be able to place an International Call.

The reason is:

9 + 4322011xxx will match a phone number in the 432 area code (or if it's not an active number, the caller will hear a "the number dialed does not exist - please hang up and try again" message).

Because of the . variable in the International Dial String, and the 432nxxxxxx variable string, dialing 4322 as an access code actually matches the 432 area code plus the n variable is any number other than 0 or 1.  2 is neither 0 nor 1, so we have a match.  

All calls dialed using the access code will incorrectly match the long-distance dial string, and calls will fail.

Please be careful your dial plans do not overlap, or you will not experience the call routing you expect.

 

 

Return to Documentation Home I Return to Sangoma Support