Routes

From Taridium

(Difference between revisions)
Jump to: navigation, search
(Outbound Routing)
(Examples)
 
(39 intermediate revisions not shown)
Line 1: Line 1:
 +
To access your routes click on '''Configuration''' → '''Routing'''.
 +
Routes basically tell ipbx what to do with incoming and outgoing calls. In a standard configuration any SIP, IAX or PSTN call is processed by 'Inbound Routing', in the same way any calls to extensions that cannot be found locally are sent to the 'Outbound Routing' for further processing. Note that some special applications such as [[Multi Site]] Support do not need outbound/inbound routing configuration.
Routes basically tell ipbx what to do with incoming and outgoing calls. In a standard configuration any SIP, IAX or PSTN call is processed by 'Inbound Routing', in the same way any calls to extensions that cannot be found locally are sent to the 'Outbound Routing' for further processing. Note that some special applications such as [[Multi Site]] Support do not need outbound/inbound routing configuration.
== Inbound Routing ==
== Inbound Routing ==
-
Inbound routes simply allow you to specify patterns or fully qualified extension and assign them to an extension, group, IVR etc.  
+
Inbound routes simply allow you to specify patterns (see [[#Pattern Matching|Pattern Matching]]) or fully qualified extension and assign them to an extension, group, IVR etc. See also [[Destinations]].
 +
 
 +
Note that in certain cases the position of your route needs to be adjusted. This will for example be the case when you have overlapping number patterns.
 +
 
 +
[[File:default-inbound.png]]
=== Auto Extensions ===
=== Auto Extensions ===
-
Auto Extensions allows you to automatically match up DID's with local extensions. The match is based off the DID/DDI specified in the User configuration (or if a pure channel the External Caller ID). Matches can be strict (full match) or based on a number of digits (right to left). An example would be a Telco that only passes the 3 last digits of the dialed DID/DDI. This route needs only to be once.
+
Auto Extensions allows you to automatically match up DID's with local extensions. The match is based off the DID/DDI specified in the User configuration (or if a pure channel the External Caller ID). Matches can be strict (full match) or based on a number of digits (right to left). An example would be a Telco that only passes the 3 last digits of the dialed DID/DDI.  
 +
 
 +
==== Example ====
 +
 
 +
# Telco passes 10 digit extensions on a PRI, e.g. 6505552044
 +
# User 2044 with DID/DDI (External Caller ID) set to 16505552044
 +
 
 +
Create an auto extension route with 10 digit match. This will cause the DID to have the 1 stripped off and match with any calls to 650-555-2044.
 +
 
 +
This route needs only to be present once.
== Outbound Routing ==
== Outbound Routing ==
-
Outbound routes allow you to specify where to find certain extensions, either fully qualified or by means of a pattern (see [[#Pattern Matching|Pattern Matching]])
+
Outbound routes allow you to specify where to find certain extensions/destinations, either fully qualified or by means of a pattern. A pattern can match the dialed extension and/or a specific caller ID. This allows you to use specific outbound routes for a phone. See also [[#Pattern Matching|Pattern Matching]].
-
== Pattern Matching ==
+
[[File:default-outbound.png]]
-
Extension names are not limited to single specific extension 'numbers'. A single extension can also match patterns. In a pattern, the following characters have special meanings:
 
-
Special Characters for Pattern Matching
+
Note that in certain cases the position of your route needs to be adjusted. This will for example be the case when you have overlapping number patterns.
 +
== Transformations ==
 +
 +
Transformations allow you to modify extensions (dialed numbers) in certain situations. Currently ipbx supports three situations or '''types''':
 +
 +
# before inbound routing
 +
# before outbound routing
 +
# before inside routing
 +
 +
Numbers can be mapped one-to-one e.g. if a call is being sent as extension 200 to your ipbx you can have it processed as 500 instead. Assuming you have an inbound route with DID/DDI 500 etc.
 +
 +
The difference between '''before inside routing''' and '''before outbound routing''' is that the transformation inside is applied before any of the local extensions are looked up, whereas '''before outbound routing''' it will be applied after all internal options have been exhausted.
 +
 +
=== Variables ===
 +
 +
In extension transformations you can use the '''${EXTEN}''' variable in the output field if you need to transform the incoming pattern.
 +
 +
For the caller ID fields you can use '''${CALLERID(num)}''', '''${CALLERID(name)}''', '''${NAME}''' or '''${NUM}''' respectively.
 +
 +
===Examples===
 +
 +
1. Type '''before outbound routing''', Pattern '''_NXXXXXX''' and Output '''+1212${EXTEN}''' - This rule will transform any 7 digit numbers to an E.164 pattern within the 212 area code. You will now have to match the newly formatted number in your outbound routes.
 +
 +
2. Type '''before outbound routing''', Pattern '''_9NXXXXXX''' and Output '''+1212${EXTEN:1}''' - This rule will transform any 8 digit numbers starting with 9 to an E.164 pattern within the 212 area code. You will now have to match the newly formatted number in your outbound routes.
 +
 +
3. Type '''before outbound routing''', Pattern '''6775000''' and Output '''sip:info@taridium.com''' - This rule will transform 6775000 to sip:info@taridium.com. There is no need for an outbound route in this case, since call routing will be performed via DNS records.
 +
 +
4. Type '''before inside routing''', Pattern '''123''' and Output '''*86''' - This rule will transform 123 to *86. This could be used for example for voicemail access via extension 123.
 +
 +
== Inbound Blacklist ==
 +
 +
The inbound blacklist blocks specific incoming caller ID's. Caller ID's can be fully qualified or based on number patterns. See also [[#Pattern Matching|Pattern Matching]]. Entries can be temporarily disabled [[Image:block-off.gif]] or enabled [[Image:block.gif]].
 +
 +
== Pattern Matching ==
 +
 +
Extension names are not limited to single specific extension 'numbers'. A single extension can also match patterns. Patterns always start with a '_' underscore. In a pattern, the following characters have special meanings:
 +
 +
===Special Characters for Pattern Matching===
   X          matches any digit from 0-9
   X          matches any digit from 0-9
Line 26: Line 77:
               (in this example, 1,2,3,7,8,9)
               (in this example, 1,2,3,7,8,9)
   .          wildcard, matches one or more characters
   .          wildcard, matches one or more characters
 +
 +
 +
Some incoming calls might not provide extension information and thus no way to match the incoming call. This will require the use of the reserved '''s''' extension. An example is the use of analog line cards.
 +
 +
===Examples===
 +
 +
  _NXXXXXX        matches a NANP 7 digit telephone number such as 555-1212
 +
  _1NXXNXXXXXX    matches an area code and phone number preceeded by a one such as 1-860-555-1212
 +
  _9011.          matches any string of at least five characters that starts with 9011,
 +
                  but it does not match the four-character string 9011 itself.
 +
 +
== Caller ID Matching ==
 +
 +
As of version 2.0.4 ipbx also supports caller ID pattern matching. Simply separate the pattern string with a forward slash:
 +
 +
  _1NXXNXXXXXX/_500X
 +
 +
The above pattern will only match if the dialed number matches 1NXXNXXXXXX and the caller ID matches 500X.

Latest revision as of 14:47, 13 August 2012

To access your routes click on ConfigurationRouting.

Routes basically tell ipbx what to do with incoming and outgoing calls. In a standard configuration any SIP, IAX or PSTN call is processed by 'Inbound Routing', in the same way any calls to extensions that cannot be found locally are sent to the 'Outbound Routing' for further processing. Note that some special applications such as Multi Site Support do not need outbound/inbound routing configuration.

Contents

Inbound Routing

Inbound routes simply allow you to specify patterns (see Pattern Matching) or fully qualified extension and assign them to an extension, group, IVR etc. See also Destinations.

Note that in certain cases the position of your route needs to be adjusted. This will for example be the case when you have overlapping number patterns.

Default-inbound.png

Auto Extensions

Auto Extensions allows you to automatically match up DID's with local extensions. The match is based off the DID/DDI specified in the User configuration (or if a pure channel the External Caller ID). Matches can be strict (full match) or based on a number of digits (right to left). An example would be a Telco that only passes the 3 last digits of the dialed DID/DDI.

Example

  1. Telco passes 10 digit extensions on a PRI, e.g. 6505552044
  2. User 2044 with DID/DDI (External Caller ID) set to 16505552044

Create an auto extension route with 10 digit match. This will cause the DID to have the 1 stripped off and match with any calls to 650-555-2044.

This route needs only to be present once.

Outbound Routing

Outbound routes allow you to specify where to find certain extensions/destinations, either fully qualified or by means of a pattern. A pattern can match the dialed extension and/or a specific caller ID. This allows you to use specific outbound routes for a phone. See also Pattern Matching.

Default-outbound.png


Note that in certain cases the position of your route needs to be adjusted. This will for example be the case when you have overlapping number patterns.

Transformations

Transformations allow you to modify extensions (dialed numbers) in certain situations. Currently ipbx supports three situations or types:

  1. before inbound routing
  2. before outbound routing
  3. before inside routing

Numbers can be mapped one-to-one e.g. if a call is being sent as extension 200 to your ipbx you can have it processed as 500 instead. Assuming you have an inbound route with DID/DDI 500 etc.

The difference between before inside routing and before outbound routing is that the transformation inside is applied before any of the local extensions are looked up, whereas before outbound routing it will be applied after all internal options have been exhausted.

Variables

In extension transformations you can use the ${EXTEN} variable in the output field if you need to transform the incoming pattern.

For the caller ID fields you can use ${CALLERID(num)}, ${CALLERID(name)}, ${NAME} or ${NUM} respectively.

Examples

1. Type before outbound routing, Pattern _NXXXXXX and Output +1212${EXTEN} - This rule will transform any 7 digit numbers to an E.164 pattern within the 212 area code. You will now have to match the newly formatted number in your outbound routes.

2. Type before outbound routing, Pattern _9NXXXXXX and Output +1212${EXTEN:1} - This rule will transform any 8 digit numbers starting with 9 to an E.164 pattern within the 212 area code. You will now have to match the newly formatted number in your outbound routes.

3. Type before outbound routing, Pattern 6775000 and Output sip:info@taridium.com - This rule will transform 6775000 to sip:info@taridium.com. There is no need for an outbound route in this case, since call routing will be performed via DNS records.

4. Type before inside routing, Pattern 123 and Output *86 - This rule will transform 123 to *86. This could be used for example for voicemail access via extension 123.

Inbound Blacklist

The inbound blacklist blocks specific incoming caller ID's. Caller ID's can be fully qualified or based on number patterns. See also Pattern Matching. Entries can be temporarily disabled Block-off.gif or enabled Block.gif.

Pattern Matching

Extension names are not limited to single specific extension 'numbers'. A single extension can also match patterns. Patterns always start with a '_' underscore. In a pattern, the following characters have special meanings:

Special Characters for Pattern Matching

  X          matches any digit from 0-9
  Z          matches any digit from 1-9
  N          matches any digit from 2-9
  [1237-9]   matches any digit or letter in the brackets
             (in this example, 1,2,3,7,8,9)
  .          wildcard, matches one or more characters


Some incoming calls might not provide extension information and thus no way to match the incoming call. This will require the use of the reserved s extension. An example is the use of analog line cards.

Examples

  _NXXXXXX        matches a NANP 7 digit telephone number such as 555-1212
  _1NXXNXXXXXX    matches an area code and phone number preceeded by a one such as 1-860-555-1212
  _9011.          matches any string of at least five characters that starts with 9011,
                  but it does not match the four-character string 9011 itself.

Caller ID Matching

As of version 2.0.4 ipbx also supports caller ID pattern matching. Simply separate the pattern string with a forward slash:

 _1NXXNXXXXXX/_500X

The above pattern will only match if the dialed number matches 1NXXNXXXXXX and the caller ID matches 500X.

Personal tools
Namespaces
Variants
Actions
Toolbox