Outbound Rules – A Complete Example

Configuring Outbound Rules on 3CX Phone System is a very simple affair if you have a single device or service which you deliver calls with – in most cases a single rule will be enough.

But the Outbound Rules in 3CX Phone System allows you to create much more complex rules – allowing you to not only select backup routes which come into effect when other routes fail, but also to select a different set of routes, depending on the type of number being dialled.

For the sake of this example, we will assume that our PBX:

  • Has a Gateway connected to a 23-channel T1 circuit – best rates for local calls
  • Has a VoIP Provider account – this channel provides the best rates for international calls, but (in this example) requires the destination number to be presented in full international format, with the international prefix being “00”
  • Is using 3-digit extensions
  • Has a Bridge connected to another 3CX Phone System (which is also using 3-digit extensions) installed in London

Emergency Number

Probably the best way to handle the “911” Emergency Number is to start with it. First we should create an outbound rule to handle such calls:

Specifying a prefix which has 3 digits, and restricting the rule to numbers which are 3 digits long, effectively creates a rule for only the number in the prefix field – in this case, “911”.

Local Calls

For this example, we will assume that our PBX is in Atlanta, using area code 404. So if a user dials a 7-digit number (eg. 478 6515), this call should reach 404 478 6515. The simple way to capture such calls is by specifying a rule for 7-digit numbers:

Here, we have specified a backup route (in case the primary route is unavailable or fully occupied) via the VoIP Provider account.

Since the VoIP Provider we are using requires us to present the destination number in full international format, we will need to prepend “001404” to the dialled number.

Local Calls Dialled in Other Formats

Sometimes a user may dial a local number in long distance or international format – possibly because he initiates the call from Microsoft Outlook, or some other TAPI-capable CRM application. You may wish to create a custom rule to also catch these calls, and ensure that the outbound rules route the call as intended even in these cases.

Local Calls Dialled in Long Distance Format

Local Calls Dialled in International Format

Long Distance Calls

To capture a call destined to a long distance number, we need to specify a rule that catches dialled numbers which are 10 digits in length if the caller omits the leading “1”:

…and also a rule that catches dialled numbers which are 11 digits in length and start with “1”:

Long Distance Calls Dialled in International Format

International Calls

To capture a call destined to an international number, we need to specify a rule that catches dialled numbers which start with “011”:

It may also be necessary to capture calls dialled to international numbers starting with “00”:

Bridge Calls to Extensions on the Remote PBX

To reach extensions on a remote bridged PBX, we need to choose how we want our users to dial numbers.

Option 1: Dialling 3-Digit Numbers to reach Extensions on the REMOTE PBX

Keeping the Extension Number ranges separate, users can dial 3-digit numbers to reach extensions on the LOCAL PBX, and dial 3-digit numbers to reach extensions on the REMOTE PBX also.

To achieve this, we will need to reserve a range of Extension Numbers for the LOCAL PBX, and a different range of Extension Numbers for the REMOTE PBX. For this example, we will assume that on the LOCAL PBX, Extension Numbers will range from 100 to 299, and on the REMOTE PBX, Extension Numbers will range from 300 to 499. This implies that it will not be possible to have an Extension Number that exists on both PBXs.

On the LOCAL PBX, we need to create a rule that catches calls to the REMOTE PBX’s Extension Numbers:

Option 2: Dialling 4-Digit Numbers to reach Extensions on the REMOTE PBX

With this option, users will need to dial a 4-digit number to reach extensions on the REMOTE PBX, but it does give us the flexibility to use the same extension number for different people on both sides of the bridge.

To achieve this, we will need to dedicate a prefix (for this example “6”) used to reach extensions on the REMOTE PBX, and create an outbound rule to catch such dialled numbers, taking care to strip the leading “6” before delivering the call to the REMOTE PBX:

Most people find this to be a far simpler way of handling the situation – but it is a question of personal preference. The rest of the examples presented here will build on this.

Exploiting a Bridge Connection to get Cheaper International Calls

In our example, we have a Bridge connection to a REMOTE PBX in London in the United Kingdom. If the London PBX has its own gateway connected to the United Kingdom PSTN Network, we can take advantage of this, using 2 rules – one for calls to the UK dialled starting with “01144”:

…and one for calls to the UK dialled starting with “0044”:

The Order in which Outbound Rules are Evaluated

Outbound Rules are evaluated in a top-down fashion, in the order in which they appear in the Outbound Rules Summary Screen. This is the list of Outbound Rules in the order in which they were created:

…but we may appreciate that the last rule, for numbers starting with “0044”, will never be invoked, because there is a previous rule for numbers starting with “00”. Similarly, the rule for numbers starting with “01144” will also never be invoked before there is a rule higher up in the list for calls starting with “011”. Rearranging the Outbound Rules in the correct order, we get:

Making Calls to Skype IDs via the 3CX Skype Gateway

We can use a SIP phone to call a Skype ID if:

  • we use a phone that can dial destinations that are alphanumeric
  • the 3CX Skype Gateway is installed
  • an outbound rule is added which catches such calls

Liked this article?


Get notified of new articles
or share
You might also be interested in:
  1. BJReplay

    When will 3CX support importing rules – as soon as you have multiple outbound providers, and complex routing requirements, the GUI makes rule maintenance incredibly difficult.

    The ability to export current rules (say in Tab Separated Variables, to account for commas being acceptable in rule conditions), and then re-import rules would make management far easier.

    July 25, 2010 at 10:39 am
  2. Kevin

    Hi BJReplay

    This is effectively a feature request, which you could submit to the forum on http://www.3cx.com/ideas/

    Regards

    July 26, 2010 at 5:50 pm