Configuring Dial Plans

Dial Plans let you categorize incoming calls (source or destination) based on source or destination number. The device categorizes them by searching in the Dial Plan for rules that match these numbers according to prefix, suffix, or whole number. The categorization result in the Dial Plan is a tag corresponding to the matched rule. You can then use tags to represent these calls (source or destination) as matching characteristics (source or destination tags) for various configuration entities:

SBC application:
IP-to-IP Routing rules (see Using Dial Plan Tags for IP-to-IP Routing)
Outbound Manipulations rules (Using Dial Plan Tags for Outbound Manipulation)
Call Setup Rules (Using Dial Plan Tags for Call Setup Rules)
Message Manipulation (Using Dial Plan Tags for Message Manipulation)

You can assign a Dial Plan to an IP Group or SRD. After Classification and Inbound Manipulation, the device checks if a Dial Plan is associated with the incoming call. It first checks the source IP Group and if no Dial Plan is assigned, it checks the SRD. If a Dial Plan is assigned to the IP Group or SRD, the device first searches the Dial Plan for a dial plan rule that matches the source number and then it searches the Dial Plan for a rule that matches the destination number. If matching dial plan rules are found, the tags configured for these rules are used in the routing or manipulation processes as source or destination tags.

In addition to using the source tag (SrcTags) and destination tag (DstTags) in the Call Setup Rules table and Message Manipulations table, you can also use the referred-by tag (ReferredByTags). This tag represents the call party that initiated (i.e., transferor) the call transfer.

Gateway application:
IP-to-Tel Routing rules (see Configuring IP-to-Tel Routing Rules
Tel-to-IP Routing rules (see Configuring Tel-to-IP Routing Rules)

Notes for the SBC application:

User categorization by Dial Plan is done only after the device's Classification and Inbound Manipulation processes, and before the routing process.
Once the device successfully categorizes an incoming call by Dial Plan, it not only uses the resultant tag in the immediate routing or manipulation process, but also in subsequent routing and manipulation processes that may occur, for example, due to alternative routing or local handling of call transfer and call forwarding (SIP 3xx\REFER).
For manipulation, tags are applicable only to outbound manipulation.
When tags are used in the IP-to-IP Routing table to determine destination IP Groups (i.e., 'Destination Type' parameter configured to Destination Tag), the device searches the Dial Plan for a matching destination (called) prefix number only.

The figure below shows a conceptual example of routing based on tags, where users categorized as tag "A" are routed to SIP Trunk "X" and those categorized as tag "B" are routed to SIP Trunk "Y":

The Dial Plan itself is a set of dial plan rules having the following attributes:

Prefix: The prefix is matched against the source or destination number of the incoming call (e.g., SIP dialog-initiating request for IP calls).
Tag: The tag corresponds to the matched prefix of the source or destination number and is the categorization result.

You can use various syntax notations to configure the prefix numbers in Dial Plan rules. You can configure the prefix as a complete number (all digits) or as a partial number using some digits and various syntax notations (patterns) to allow the device to match a Dial Plan rule for similar source or destination numbers. The device also employs a "best-match" method instead of a "first-match" method to match the source or destination numbers to the patterns configured in the Dial Plan. For more information, see the description of the 'Prefix' parameter (DialPlanRule_Prefix) described later in this section or see Dial Plan Notations and Priority Matching.

The maximum group of numbers (consisting of single numbers or range of numbers, or both) that can be configured for prefixes and suffixes for all the Dial Plan rules can be calculated by multiplying the maximum number of supported Dial Plan rules by six. For example, if the maximum number of Dial Plan rules is 100, then the maximum group of numbers is 600 (6*100). The following is an example of a Dial Plan rule that is configured with six groups of numbers (each separated by a comma), consisting of ranges and single numbers: [120-125,150,160-164,170,200,210-215]
You can forcibly disconnect calls that match a specific Dial Plan tag, using the CLI command clear voip calls tag.

Dial Plans are configured using two tables with "parent-child" relationship:

Dial Plan table ("parent" table): Defines the name of the Dial Plan. You can configure up to 10 Dial Plans.
Dial Plan Rule table ("child" table): Defines the actual dial plans (rules) per Dial Plan. You can configure up to 2,000 of Dial Plan rules in total (where all can be configured for one Dial Plan or configured between different Dial Plans).

The following procedure describes how to configure Dial Plans through the Web interface. You can also configure it through other management platforms:

Dial Plan table: ini file [DialPlan] or CLI (configure voip > sbc dial-plan)
Dial Plan Rule table: ini file (DialPlanRule) or CLI (configure voip > sbc dial-plan-rule)
To configure Dial Plans:
1. Open the Dial Plan table (Setup menu > Signaling & Media tab > SIP Definitions folder > Dial Plan).
2. Click New; the following dialog box appears:

3. Configure a Dial Plan name according to the parameters described in the table below.
4. Click Apply.

Dial Plan Table Parameter Descriptions

Parameter

Description

'Index'

[Index]

Defines an index number for the new table row.

Note: Each row must be configured with a unique index.

'Name'

name

[Name]

Defines a descriptive name, which is used when associating the row in other tables.

The valid value is a string of up to 15 characters.

Note:

Configure each row with a unique name.
The parameter value cannot contain a forward slash (/).

'Prefix Case Sensitivity'

prefix-case-sensitivity

[PrefixCaseSensitivity]

 

Enables the matching process for the Dial Plan's prefix patterns, configured for its Dial Plan rules, to take into consideration the case (upper or lower) of alphabetical letters.

[0] Disable = Case-insensitive - the Dial Plan matching process ignores the case of the letters of the prefix pattern.
[1] Enable = (Default) Case-sensitive - the Dial Plan matching process takes into consideration the case of the letters of the prefix pattern.

Note: The wildcards "n", "x", and "z" are always case-insensitive.

5. In the Dial Plan table, select the row for which you want to configure dial plan rules, and then click the Dial Plan Rule link located below the table; the Dial Plan Rule table appears.
6. Click New; the following dialog box appears:

7. Configure a dial plan rule according to the parameters described in the table below.
8. Click New, and then save your settings to flash memory.

Dial Plan Rule Table Parameter Descriptions

Parameter

Description

'Index'

index

[DialPlanRule_RuleIndex]

Defines an index number for the new table row.

Note: Each row must be configured with a unique index.

'Name'

name

[DialPlanRule_Name]

Defines a descriptive name, which is used when associating the row in other tables.

The valid value is a string of up to 15 characters.

'Prefix'

prefix

[DialPlanRule_Prefix]

Defines the pattern to match the number (source or destination number) of the incoming call. The pattern can match the number based on prefix, suffix, or entire number.

The valid value is a string of up to 50 characters. For valid notations and syntax, see Dial Plan Notations and Priority Matching.

Note: Dial Plan patterns can be case-sensitive or case-insensitive, depending on the 'Prefix Case Sensitive' parameter settings.

'Tag'

tag

[DialPlanRule_Tag]

Defines a tag(s).

You must configure the tag with a name (e.g., "India") and optionally, with a value (i.e., name=value), for example, "Country=India", where "Country" is the tag's name and "India" is the tag's value. For guidelines on configuring tags, see the notes below.

The valid value is a string of up to 70 characters:

The tag's name can contain only the following characters:
Alphanumeric characters (i.e., a-z, A-Z, and 0-9)
Special characters:
- (dash or hyphen)
! (exclamation)
% (percentage)
* (asterisk)
_ (underscore)
~ (tilde)
@ (at sign)
The tag's value can contain any character, except the following:
= (equal)
; (semicolon)
Spaces (including tab spaces)

Note:

The tag is case-insensitive.
To configure multiple tags, separate each with a semicolon (;). For example, "Belgium;Country1=England;Country2=India;Country3=10.1.1.1".
You can configure only one tag with only a name (i.e., without a value). For example, "Belgium;England" is invalid as both tag names don't have values. A valid configuration is "Belgium;Country1=England;Country2=India" as only the tag "Belgium" has a name without a value.
If you configure a tag with only a name, all the other tags must be configured with a name and value (name=value).
For tags with names and values, the name must be unique. For example, "Country=England;Country=India" is invalid; a valid configuration is "Country1=England;Country2=India".
You can configure the same tag in multiple Dial Plan rules.
In configuration tables that contain fields for assigning tags (e.g., IP-to-IP Routing table), if the field is left empty or configured with a single asterisk (*), any tag can match it.