Routing rules are used to tell the PBX how to handle calls (incoming and outgoing) based on different selection criteria. The routing takes care of selecting the gateway on which to forward outgoing calls, sorting incoming calls to the said switchboard entities. A routing rule is essentially composed of a criterion that allows to associate numbers to one and only one entity and then decide the route for the destination of a call.
NOTE : this section of the PBX should normally only be used for special advanced settings (see below), since the main routes for outgoing and incoming calls are made through the LCR module and the Wizard of business numbers .

From the Toolbox -> Routing menu you access the list of existing routing rules. The buttons deletesearcheditserve respectively to eliminate, consult and modify the configurations.

To create a new routing rule click on the icon  add32. The parameters available are the following:

Parameter Description
Company  Company for which the rule is applied
Description  Description of convenience for the rule
Enable  Activate / deactivate the rule
Register Call  Activate the automatic registration of calls that pass through this rule. At the same time the user can also record the call via his GUI.

NOTE: the recording takes place using the G.711 codec (uncompressed, from about 80 kbps per conversation): therefore if the call is made through a VoIP operator it could be disturbed due to the quality of the ADSL connection or in conjunction with a large number of calls

Caller  Type Type of caller on which the rule is activated. There are 2 types:
External: all calls from
Internal Gateway: calls from PBX entities (users, IVRs, etc.)
Calling Number  It is the caller number or prefix. For entry rules v. REGULAR EXPRESSIONS lower down. The wildcard ‘%’ generalizes the rule for any calling number
Hourly table  Indicates when the rule should be applied, by choosing a time table
Called Number  It is the called number or prefix. The wildcard ‘%’ generalizes the rule for any number called.
Rule  Allows you to select the type of rule, choosing between “Routing” and “Mapping”
If on the previous item “Routing” was chosen, it indicates the entity on which the call managed by the rule will be routed (User, Group, Gateway, IVR); in particular, selecting the Gateway item, it will be possible to access two other entries:

  • Select a gateway: allows you to select a gateway from the list of existing corporate gateways
  • Precedence: valid only for outgoing rules, it indicates the sequence of choice if more than one gateway has been chosen in the LCR for the same prefix

Mapped  Number
If in the previous item “Mapping” was chosen, this field allows you to enter the number on which the call is mapped; the rule is useful for the creation of short numbers (eg. Enter a code to call business phones) or to manage the pass-through selection.
Integration enabled Enable SSN integration for the current routing rule: when the call “transits” for this rule, the PBX will execute the script indicated based on the selected event (for more information see the section Settings in the chapter configure the company ).

The call routing rules for a particular number (N) are chosen by the system based on comparison criteria: each comparison provides a score . The scores obtained by the different comparisons are added together and the results obtained are used as priority values: the rule that obtains the highest score will be chosen. Within a company the criteria used for choosing a rule are the following:

  1. Called Number : the N number is compared with the called number. The highest score is assigned to the rule that provides the greatest number of matches, or the longest match (eg: a rule for the entire prefix “347” wins on the rules for the prefix “3”, when calling the number 347 / 1234567);
  2. Time band : if there are two or more matches of the same score in point 1, the time band is compared: the highest score is assigned to the rule in which the time band (if set) includes the current time of the current call;
  3. Calling Number : if there are two or more matches of the same score in point 2 or no time slot is set, the number of the set caller is compared. Here too, as point 1, the greater the correspondence, the higher the priority.

In order for checks to be carried out on entire categories of numbers (eg national, district, international, mobile, etc.) it is possible to define ranges of numbers and strings in a powerful and flexible way thanks to the introduction of regular expressions . A regular expression is a sequence of symbols (hence a string) which in turn identifies a set of strings. Thanks to a particular symbology and a simple syntax it will be possible to build rules to identify sets of numbers.

VOIspeed 6 uses a subset of the regular expressions commonly known in computer science: to be precise, 2 symbols are used to identify the beginning and end of the strings and a Jolly symbol to identify any string.

Symbol    Description  Examples
^ xx String start : indicates all the numbers that start with xx ^ 0 : numbers starting with 0 (national fixed and international numbers)
^ 00 numbers starting with 00 (international)
^ 3 : numbers starting with 3 (mobile)
^ 347: numbers starting with 347
^ + 39: numbers that begin with the Italian international prefix +39
% Wildcard character special character indicating “all numbers”. If used in the “called number” field, it can then be used to indicate ALL outgoing prefixes to compact the routing rules.
$ End of string : indicates the end of the string

Note : the routing rules compare the criterion entered by the administrator with the numbers always starting from the first character , therefore you will notice how the system always automatically inserts the symbol of beginning string (^) even if omitted by the administrator. This also implies that when you insert the end-of-string symbol ($), in fact you are defining a complete number (which assumes an exact comparison 1: 1).

Here are some other examples:

User rule   Description
^ 0  All numbers starting with 0 (national landlines)
^ 06  All numbers starting with 06 (Rome numbers)
^ $ 187  Same numbering at 187 (number of Telecom Italia customers)
^ $ 123  Equal numbering at 123
^ $ 0733811720  Equal numbering at 0733811720
^ 073381188  All the numbers starting with the numbers 073381188. This rule can be used, for example, to manage the pass-through selection with root 073381188

If more criteria are successful in comparison with a number, the criterion containing the greatest number of digits will be chosen (ie the one that offers the longest match). For example, with the number 02123 456789 , between the two criteria ^ 02123 and ^ 02, the first would “win”.


Mapping rules apply a “transformation” from one number to another. The mapping is used for the management of the pass-through selection and the creation of short numbers to call real numbers (for example, the business phones of one’s colleagues).

In this last case, it is very simple to create a short number to call a real number: for example, if you wanted to use the code 4444 , to call the number 3471234567 , the rule will be made like this:

Warning: do not use codes that coincide with the switchboard extensions or with emergency numbers (112, 113, 118, etc.)


Interested in reselling?




Becoming a VOIspeed partner is an opportunity to grow your business and add value to your customers. Discover our partnership programme.

Looking for a phone system?




Would you like more information about our telephone services?
One of our consultants will contact you to discuss your requirements.