ENUM Routing
From Yate Documentation
(Difference between revisions)
(→Routing numbers issues) |
|||
(8 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
This module performs routing using the [http://en.wikipedia.org/wiki/Telephone_Number_Mapping ENUM] protocols that maps phone numbers to VoIP (or even other PSTN) resources.<br> This protocol uses a specific format of [http://en.wikipedia.org/wiki/Domain_Name_System DNS] queries and depends on an external domain name server. | This module performs routing using the [http://en.wikipedia.org/wiki/Telephone_Number_Mapping ENUM] protocols that maps phone numbers to VoIP (or even other PSTN) resources.<br> This protocol uses a specific format of [http://en.wikipedia.org/wiki/Domain_Name_System DNS] queries and depends on an external domain name server. | ||
− | ===ENUM subscriber=== | + | <!--===ENUM subscriber=== |
For an ENUM subscriber to be able to activate and use the ENUM service it needs to obtain three elements from a Registrar: | For an ENUM subscriber to be able to activate and use the ENUM service it needs to obtain three elements from a Registrar: | ||
Line 9: | Line 9: | ||
* One E.164 regular personal telephone number associated with the personal URI, to be used on the PSTN part of the network. | * One E.164 regular personal telephone number associated with the personal URI, to be used on the PSTN part of the network. | ||
* Authority to write their call forwarding/termination preferences in the NAPTR record accessible via the personal URI. | * Authority to write their call forwarding/termination preferences in the NAPTR record accessible via the personal URI. | ||
− | + | --> | |
=== Configuration file=== | === Configuration file=== | ||
Line 16: | Line 16: | ||
==== General section ==== | ==== General section ==== | ||
− | + | This section sets the global variables of the ENUM implementation. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
[general] | [general] | ||
− | |||
− | |||
; priority: int: Priority in Yate's handlers chain | ; priority: int: Priority in Yate's handlers chain | ||
; This MUST be set to a positive value to enable the module | ; This MUST be set to a positive value to enable the module | ||
;priority=0 | ;priority=0 | ||
− | + | ||
; prefix: string: Local dial prefix for international numbers | ; prefix: string: Local dial prefix for international numbers | ||
;prefix=00 | ;prefix=00 | ||
− | + | ||
; minlen: int: Minimum length of a number (prefix removed) to try to resolve | ; minlen: int: Minimum length of a number (prefix removed) to try to resolve | ||
;minlen=8 | ;minlen=8 | ||
− | + | ||
; domains: string: Comma separated list of domain suffixes to use for ENUM | ; domains: string: Comma separated list of domain suffixes to use for ENUM | ||
;domains=e164.arpa,e164.org | ;domains=e164.arpa,e164.org | ||
− | + | ||
; domain: string: Domain to use as suffix for ENUM | ; domain: string: Domain to use as suffix for ENUM | ||
; OBSOLETE - do not use, for backwards compatibility only | ; OBSOLETE - do not use, for backwards compatibility only | ||
;domain=e164.arpa | ;domain=e164.arpa | ||
− | + | ||
; backup: string: Secondary domain to use as suffix for ENUM | ; backup: string: Secondary domain to use as suffix for ENUM | ||
; OBSOLETE - do not use, for backwards compatibility only | ; OBSOLETE - do not use, for backwards compatibility only | ||
;backup=e164.org | ;backup=e164.org | ||
− | + | ||
; timeout: int: Timeout of each resolver attempt in seconds | ; timeout: int: Timeout of each resolver attempt in seconds | ||
;timeout=3 | ;timeout=3 | ||
− | + | ||
; retries: int: Number of retries before giving up | ; retries: int: Number of retries before giving up | ||
;retries=2 | ;retries=2 | ||
− | + | ||
; redirect: bool: Attempt to redirect the incoming call to found address | ; redirect: bool: Attempt to redirect the incoming call to found address | ||
;redirect=false | ;redirect=false | ||
− | + | ||
; autofork: bool: Create a fallback route from ordered NAPTR records | ; autofork: bool: Create a fallback route from ordered NAPTR records | ||
;autofork=false | ;autofork=false | ||
− | + | ||
; forkstop: string: Regular expression matching the names of the errors | ; forkstop: string: Regular expression matching the names of the errors | ||
; that will terminate the entire call, not just one route | ; that will terminate the entire call, not just one route | ||
;forkstop=busy | ;forkstop=busy | ||
− | + | ||
; maxcall: int: Milliseconds to call each route when forking the call | ; maxcall: int: Milliseconds to call each route when forking the call | ||
; This parameter is constrained between 2000 and 120000 ms | ; This parameter is constrained between 2000 and 120000 ms | ||
;maxcall=30000 | ;maxcall=30000 | ||
− | + | ||
+ | ==== Protocols section ==== | ||
+ | |||
+ | Allows user to enable or disable different protocols. | ||
+ | |||
[protocols] | [protocols] | ||
− | |||
− | |||
; sip: bool: Enable the SIP protocol (E2U+SIP) | ; sip: bool: Enable the SIP protocol (E2U+SIP) | ||
;sip=yes | ;sip=yes | ||
− | + | ||
; iax: bool: Enable the IAX2 protocol (E2U+IAX2) | ; iax: bool: Enable the IAX2 protocol (E2U+IAX2) | ||
;iax=yes | ;iax=yes | ||
− | + | ||
; h323: bool: Enable the H.323 protocol (E2U+H323) | ; h323: bool: Enable the H.323 protocol (E2U+H323) | ||
;h323=yes | ;h323=yes | ||
− | + | ||
; jingle: bool Enable the Jingle protocol (E2U+XMPP) | ; jingle: bool Enable the Jingle protocol (E2U+XMPP) | ||
;jingle=yes | ;jingle=yes | ||
− | + | ||
; void: bool: Enable declaring unallocated numbers (E2U+VOID) | ; void: bool: Enable declaring unallocated numbers (E2U+VOID) | ||
;void=yes | ;void=yes | ||
− | + | ||
; pstn: bool: Enable routes to PSTN gateways (E2U+PSTN) | ; pstn: bool: Enable routes to PSTN gateways (E2U+PSTN) | ||
;pstn=no | ;pstn=no | ||
− | + | ||
; pstn: bool: Enable routes to Voice terminals (E2U+VOICE) | ; pstn: bool: Enable routes to Voice terminals (E2U+VOICE) | ||
;voice=no | ;voice=no | ||
− | + | ||
; tel: bool: Enable the TEL rerouting (E2U+TEL) | ; tel: bool: Enable the TEL rerouting (E2U+TEL) | ||
;tel=no | ;tel=no | ||
Line 103: | Line 97: | ||
* http://en.wikipedia.org/wiki/Telephone_Number_Mapping | * http://en.wikipedia.org/wiki/Telephone_Number_Mapping | ||
+ | * [[Routing]] | ||
+ | |||
+ | [[Category:Routing]] [[Category:ENUM]] |
Latest revision as of 12:28, 4 November 2013
This module performs routing using the ENUM protocols that maps phone numbers to VoIP (or even other PSTN) resources.
This protocol uses a specific format of DNS queries and depends on an external domain name server.
Contents |
[edit] Configuration file
This is done from enumroute.conf file.
[edit] General section
This section sets the global variables of the ENUM implementation.
[general] ; priority: int: Priority in Yate's handlers chain ; This MUST be set to a positive value to enable the module ;priority=0 ; prefix: string: Local dial prefix for international numbers ;prefix=00 ; minlen: int: Minimum length of a number (prefix removed) to try to resolve ;minlen=8 ; domains: string: Comma separated list of domain suffixes to use for ENUM ;domains=e164.arpa,e164.org ; domain: string: Domain to use as suffix for ENUM ; OBSOLETE - do not use, for backwards compatibility only ;domain=e164.arpa ; backup: string: Secondary domain to use as suffix for ENUM ; OBSOLETE - do not use, for backwards compatibility only ;backup=e164.org ; timeout: int: Timeout of each resolver attempt in seconds ;timeout=3 ; retries: int: Number of retries before giving up ;retries=2 ; redirect: bool: Attempt to redirect the incoming call to found address ;redirect=false ; autofork: bool: Create a fallback route from ordered NAPTR records ;autofork=false ; forkstop: string: Regular expression matching the names of the errors ; that will terminate the entire call, not just one route ;forkstop=busy ; maxcall: int: Milliseconds to call each route when forking the call ; This parameter is constrained between 2000 and 120000 ms ;maxcall=30000
[edit] Protocols section
Allows user to enable or disable different protocols.
[protocols] ; sip: bool: Enable the SIP protocol (E2U+SIP) ;sip=yes ; iax: bool: Enable the IAX2 protocol (E2U+IAX2) ;iax=yes ; h323: bool: Enable the H.323 protocol (E2U+H323) ;h323=yes ; jingle: bool Enable the Jingle protocol (E2U+XMPP) ;jingle=yes ; void: bool: Enable declaring unallocated numbers (E2U+VOID) ;void=yes ; pstn: bool: Enable routes to PSTN gateways (E2U+PSTN) ;pstn=no ; pstn: bool: Enable routes to Voice terminals (E2U+VOICE) ;voice=no ; tel: bool: Enable the TEL rerouting (E2U+TEL) ;tel=no
[edit] Routing numbers issues
ENUM can route only fully qualified E.164 phone numbers.
The number must start with a + character (or the configuration defined international dialing prefix) followed by the country code prefix and the rest of the number.
See also