Dial plan is used to convert a number dialed by a user into a format that the system can understand and route effectively. Typically, the outcome is an E.164 formatted number, such as 61283176200 or 611300123123.
To configure dial plans:
1. Navigate to Settings > Env. Settings.
2. Expand the Dial Plan section.
Structure of a dial plan
A dial plan consists of a prioritized list of rules, each containing:
• Pattern: Defines the dialed number sequence to match.
• Replacement (optional): Specifies how to modify the dialed number upon a pattern match. If left empty, the dialed number remains unchanged.
The system evaluates rules based on priority, starting with the lowest number. If a rule’s pattern matches the dialed number, the system applies the replacement (if specified) and routes the call via the designated trunk. If no match occurs, the system proceeds to the next rule.
Configuring a Dial Plan
When setting up a dial plan:
• Name: Assign a unique identifier to the dial plan.
• Preference: Determine the rule’s evaluation order using a positive integer; lower numbers have higher priority.
• Pattern: Specify the dialed number sequence that triggers the rule.
• Replacement: Define the transformation applied to the dialed number upon a pattern match.
• Service Flag: Each dial plan entry may be enabled or disabled with a service flag. That makes it possible to enable certain entries based on time or based on manually set flags.
• Status: Manually activate or deactivate the rule.
Pattern Matching
Patterns utilize specific symbols to define matching criteria:
• Literal Match: The pattern matches exactly as entered. For example, the pattern 911 matches only the dialed number 911.
• Wildcard (x): Represents any single digit (0-9). For instance, the pattern x11 matches any three-digit number ending in 11, such as 911 or 411.
• Alternatives (|): Separates multiple patterns; the rule matches if any pattern is satisfied. For example, 911|411 matches if the dialed number is either 911 or 411.
• Arbitrary Length (*): The symbol * matches any number of digits of any length. When using this pattern, the replacement will only include the digits matched by *. For example:
By carefully configuring dial plans with appropriate patterns and replacements, you can ensure efficient and accurate call routing within your hosted voice environment.
Examples:
Local calling dial plan
If you use the telephone system in the fixed-length dial plan in a state in Australia, you may use a dial plan similar to the one below. This example is for local dialing in NSW.
Below is an in-depth explanation of all the dial plan above from preference 1 to 9:
000 - This rule matches when a user dials 911. Since the replacement field is empty, the dialed number remains 911. With the highest priority (preference 1), this rule ensures that emergency calls are promptly routed without modification.
xxxxxxxx - The second pattern matches any 8 digit number dialed and the 612* will then be added at the front of the dialed number to ensure that the number format is in E164. If you want to setup local calling for Victoria, you will change this to 613*.
0011* - This pattern matches international dialing. The PBX will remove the 0011 prefix before sending the call out.
0* - This is an extended version of dialing in country numbers like mobile and regional numbers. When a user dials any number that starts with a 0, the PBX will strip the 0 and replace it with a 61 before sending the call out.
13xxxx / 13xxxxxxxx / 18xxxxxxxx - This pattern matches any 1800/13/1300 number that the user dials and prefixes the number with a 61 to ensure that the number is in E164 format before sending the call out.
+ - This is useful when dialing using an address book entry where some contacts are saved in international format. This will ensure that the PBX will accept the call and send it out.
* - This represents any other number dialed that was not addressed above and sends the call out without any changes.