Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

titleBGColor#F0F0F0
title<dialplan> tag

The dial plan settings (<dialplan> or <dial-plan> tag) contain the global dial plan parameters. For further description please see the detailed XML dial plan feature description.

Index:

...

titleColor#F85404
titleBGColor#F0F0F0
titleSyntax

Anchor
Syntax
Syntax

The XML Dial plan can be placed either inside the <settings> tag

Code Block
languagexml
titleinside the <settings> tag
<?xml version="1.0" encoding="utf-8" ?>
 <settings>
  <phone-settings></phone-settings>
  <functionKeys></functionKeys>
  <tbook></tbook>
  <uploads></uploads>
  <certificates></certificates>
  <dialplan e="2">
   <!--Example North American Dialplan-->
   <TEMPLATE MATCH="0" Timeout="1" User="Phone"/>
   <TEMPLATE MATCH="9,011*" Timeout="6" User="Phone"/>
   <TEMPLATE MATCH="9,0" Timeout="1" User="Phone"/>
   <TEMPLATE MATCH="9,11" Timeout="0" User="Phone" Rewrite="9911"/>
   <TEMPLATE MATCH="9,.11" Timeout="0" User="Phone"/>
   <TEMPLATE MATCH="9,101..............." Timeout="0" User="Phone"/>
   <TEMPLATE MATCH="9,10.............." Timeout="0" User="Phone"/>
   <TEMPLATE MATCH="9,10*" Timeout="6" User="Phone"/> 
   <TEMPLATE MATCH="9,1.........." Timeout="0" User="Phone"/>
   <TEMPLATE MATCH="9,......." Timeout="0" User="Phone"/>
   <TEMPLATE MATCH="*" Timeout="15"/>
  </dialplan>
 </settings>

or as an individual XML file whose URL is listed inside <setting-files> tag:

Code Block
languagexml
title<dialplan> tag as an individual XML file
<?xml version="1.0" encoding="utf-8"?>
<dialplan e="2">
 <!--Example North American Dialplan-->
 <TEMPLATE MATCH="0" Timeout="1" User="Phone"/>
 <TEMPLATE MATCH="9,011*" Timeout="6" User="Phone"/>
 <TEMPLATE MATCH="9,0" Timeout="1" User="Phone"/>
 <TEMPLATE MATCH="9,11" Timeout="0" User="Phone" Rewrite="9911"/>
 <TEMPLATE MATCH="9,.11" Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,101..............." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,10.............." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,10*" Timeout="6" User="Phone"/> 
 <TEMPLATE MATCH="9,1.........." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,......." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="*" Timeout="15"/>
</dialplan>

...

titleColor#F85404
titleBGColor#F0F0F0
titleAttributes

Anchor
Attributes
Attributes

The following attributes are allowed:

  • e="2" defines that unicode-values inside xml-escapes (e.g. & # 6 4 ;) may be greater than 255.
  • MATCH=”pattern” is the dial pattern to match. While entering the pattern: numbers 0-9, *, and # represent the keys on the phone that are entered. Use a period (.) to match any key. An asterisk (*) at the very end of the pattern matches one or more characters. Matching just the * key without interference with the wildcard character is done by escaping it with a backslash "\*". To have the phone generate a secondary dial tone when the part of the template matches, use a comma (,). If you want to use * before the comma (,) do not escape it using a backslash, but use it as it is, for example: MATCH="*,..."
  • Timeout=”sec” is the number of seconds before a timeout will occur and the number will be dialed as entered by the user. To have the number dialed immediately, specify 0.
  • User=”type” is either IP or Phone. Enter User=phone or User=IP to have the tag automatically added to the dialed number. Currently, User=phone is supported.
  • Rewrite=”altstrng” is the alternate string to be dialed instead of what the user enters. This field can be left empty. Rewrite will rewrite the exact positions. You cannot add any prefix by the rewrite method.
  • Insert="altstring" is the alternate string to be added at the beginning of what the user enters. Insert can work with rewrites.
  • identity=”number” is the identity that is used to establish the call. If no identity is given, the active identity is used.

If desired, specify at the end of each string where the comment defines the type of plan (for example, Long Distance or Corporate Dial Plan).

Info
titleSpecial note on the dialplan nomenclature:
  • The special characters supported in 'match' include '.' for any digit between 0-9.
  • '*' as a wildcard for all characters and digits.
  • '[' & ']' to specify a range for single digit input e.g. match="[4-7].." would mean any three digit number where the first digit is either 4, 5, 6 or 7 i.e. 4-7 inclusive of both limits.
  • ',' is used to indicate a secondary local dial tone. It often follows a digit usually 9 or 0.
  • The closest logical match through all the dial plans would be selected for any given input match. Ascending or descending order does not overrule this feature. Unless it is a standalone '*' rule which should be at the end of the file.
  • If one doesn't want to specify a timeout, rewrite or user; either leave them empty or do not include them at all. In this case, the default for all would be used.
  • The dialplan attributes can be saved either in capital or small letters. The phone would internally store them in lowercase.

...

...

titleColor#F85404
titleBGColor#F0F0F0
titleExamples

Anchor
Examples
Examples

Code Block
languagexml
titleExample XML dial plan file

...

<?xml version="1.0" encoding="utf-8"?>
<dialplan>
  <template match="0" timeout="4" scheme="sip" user="phone" rewrite="" />
  <template match="00" timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="011............" timeout="4" scheme="sip" user="phone" rewrite="" />
  <template match="*79" timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="*234" timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="9,......." timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="424#" timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="...#" timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="[7-9].." timeout="0" scheme="sip" user="phone" rewrite="" />
  <template match="*[5-7][1-9]" timeout="0" scheme="sip" user="phone" rewrite="" />
</dialplan>
Code Block
languagexml
titleSample North American Dial Plan
<dialplan>
 <TEMPLATE MATCH="0" Timeout="1" User="Phone"/>
 <TEMPLATE MATCH="9,011*" Timeout="6" User="Phone"/>
 <TEMPLATE MATCH="9,0" Timeout="1" User="Phone"/>
 <TEMPLATE MATCH="9,11" Timeout="0" User="Phone" Rewrite="9911"/>
 <TEMPLATE MATCH="9,.11" Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,101..............." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,10.............." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,10*" Timeout="6" User="Phone"/> 
 <TEMPLATE MATCH="9,1.........." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="9,......." Timeout="0" User="Phone"/>
 <TEMPLATE MATCH="*" Timeout="15"/>
</dialplan>
Code Block
languagexml
titleWorking Sample Dial Plan
<?xml version="1.0" encoding="utf-8"?>
<dialplan>
 <Title>US Asterisk</Title>
 <TEMPLATE MATCH="25." Timeout="0" Scheme="sip" User="Phone" Rewrite="252" />
 <!-- test dp-->
 <TEMPLATE MATCH="\*.." Timeout="0" Scheme="sip" User="Phone" />
 <!-- Feature Access-->
 <TEMPLATE MATCH="9,763......." Timeout="0" Scheme="sips" User="Phone" Rewrite="763......." />
 <!-- Local 10 digit-->
 <TEMPLATE MATCH="9,612......." Timeout="0" User="Phone" Rewrite="612......." />
 <!-- Local 10 digit-->
 <TEMPLATE MATCH="9,651......." Timeout="0" User="Phone" Rewrite="651......." />
 <!-- Local 10 digit-->
 <TEMPLATE MATCH="9,952......." Timeout="0" User="Phone" Rewrite="952......." />
 <!-- Local 10 digit-->
 <TEMPLATE MATCH="9,0" Timeout="3" User="Phone" Rewrite="0" />
 <!-- Local operator-->
 <TEMPLATE MATCH="9,00" Timeout="0" User="Phone" Rewrite="00" />
 <!-- LD Operator-->
 <TEMPLATE MATCH="9,01*" Timeout="3" User="Phone" Rewrite="01%1" />
 <!-- International calls-->
 <TEMPLATE MATCH="9,011*" Timeout="3" User="Phone" Rewrite="011%1" />
 <!-- International calls-->
 <TEMPLATE MATCH="9,0.........." Timeout="0" User="Phone" Rewrite="0.........." />
 <!-- Operator assisted-->
 <TEMPLATE MATCH="9,.11" Timeout="0" Scheme="tel" User="Phone" Rewrite=".11" />
 <!-- Service numbers -->
 <TEMPLATE MATCH="9,101....1.........." Timeout="0" User="Phone" Rewrite="101....1.........." />
 <!-- Equal Access Service-->
 <TEMPLATE MATCH="9,101....0.........." Timeout="0" User="Phone" Rewrite="101....0.........." />
 <!-- Equal Access Service-->
 <TEMPLATE MATCH="9,1.........." Timeout="0" User="Phone" Rewrite="1.........." />
 <!-- Long Distance-->
 <TEMPLATE MATCH="9,......." Timeout="0" User="Phone" Rewrite="612......." />
 <!--  7 Digit Dialing-->
 <TEMPLATE MATCH="7.." Timeout="3" User="Phone" />
 <!-- Call Parking-->
 <TEMPLATE MATCH="1." Timeout="5" User="Phone" Rewrite="612548561." />
 <!-- Extension Dialing-->
 <TEMPLATE MATCH="611" Timeout="0" User="Phone" Rewrite="6519990888" />
 <!-- Sound Choice Comm Help -->
 <TEMPLATE MATCH="*" Timeout="15" />
 <!-- Insert prefix -->
 <TEMPLATE MATCH="9,......." Timeout="0" User="Phone" Rewrite="......." Insert="612" />
 <!-- Rewrite the string and insert the prefix -->
 <TEMPLATE MATCH="914" Timeout="0" Rewrite="925" Insert="888"/>
 <!-- Only insert prefix -->
 <TEMPLATE MATCH="914" Timeout="0" Insert="888"/>
 <!-- Anything else -->
</dialplan>