Routing

From Yate Documentation
(Difference between revisions)
Jump to: navigation, search
 
(45 intermediate revisions by 2 users not shown)
Line 6: Line 6:
 
This is the list of the routing modules and a [[How To's]] for each of them:
 
This is the list of the routing modules and a [[How To's]] for each of them:
  
{|class="wikitable"
+
{|class="yate-table"
!Routing modules in Yate
+
|class="yate-header-left"|'''Routing modules in Yate'''
!How to do routing in Yate
+
|class="yate-header-right"|'''How to do routing in Yate'''
|-
+
|[[Regfile|Regfile module]] || [[How to register users from regfile]]
+
|-
+
|[[Regular expressions|Regular expressions module]] || [[Redirecting Calls to another User in the Regex Module]]
+
|-
+
|[[Javascript routing|Javascript routing module]] || [[How to do routing using javascript]]
+
|-
+
|[[register|Register module]] || [[How to register users from register]]
+
|-
+
|[[Call_Forker|Call forker module]] || [[Round_Robin_Routing|How to do round-robin routing]]
+
|-
+
|[[ENUM_Routing|ENUM route module]]
+
|
+
|-
+
|[[Clustering|Cluster route module]]
+
|[[Example using parameters in cluster route module|Configuring regexp and callto parameters in cluster route module]]
+
|-
+
|[[Late routing Module]]
+
|[[Example of forking a call using lateroute|Forking a call using lateroute]]
+
 
|-
 
|-
 +
|class="yate-content-left"|
 +
* [[Regfile|Regfile module]]
 +
Module used for autentication, registration, and routing of users from a file.
 +
* [[Regular expressions|Regular expressions module]]
 +
Module used for routing incoming and outgoing call legs.
 +
* [[Javascript module|Javascript routing module]]
 +
Javascript module is a module support for programmatically routing a call.
 +
* [[register|Register module]]
 +
Module used to write CDR(Call Detail Record) data in the database.
 +
* [[Call_Forker|Call forker module]]
 +
Module used to route a call to multiple alternative targets.
 +
* [[ENUM_Routing|ENUM route module]]
 +
Performs routing using the ENUM protocols that maps phone numbers to VoIP (or even other PSTN) resources.
 +
* [[Clustering|Cluster route module]]
 +
This module allows building clusters of servers for a single domain.
 +
* [[Late routing Module]]
 +
This module can be used whenever you need to route the calls to one or several numbers or aliases whose addresses are unknown in advance.
 +
* [[Call Counters|Call Counters Module]]
 +
This module keeps a count of active calls per user specified context and adds one or all counters to be used in routing decisions.
 +
 +
| class="yate-content-right"|
 +
* [[How to register users from regfile]]
 +
Example of register users in Regfile module.
 +
* [[Redirecting Calls to another User in the Regex Module]]
 +
Example of redirecting calls to another user.
 +
* [[How to do routing using javascript]]
 +
Examples of how to route calls from javascript module.
 +
* [[How to register users from register]]
 +
Example of how to register users from a database.
 +
* [[Round_Robin_Routing|How to do round-robin routing]]
 +
Round robin routing examples.
 +
* [[Configuring regexp and callto parameters in cluster route module]]
 +
Example of configuring parameters in cluster route module.
 +
* [[Example of forking a call using lateroute|Forking a call using lateroute]]
 +
Examples for routing calls using lateroute.
 +
* [[How to use callcounters module to count incoming calls]]
 +
Example of count incoming calls.
 +
* [[How to route and bill from a database]]
 +
Example on how to route and bill from a database.
 
|}
 
|}
forking the call to several numbers
 
regexroute.conf holds:
 
  
[default]
 
^100$=fork lateroute/201 | lateroute/202 | sip/sip:\0@my.gateway
 
  
The call will first attempt to reach the 201 number through whatever routing possible - usually some form of registration. Then it will repeat for number 202 and only finally it will be directed to 100 at the gateway. Exact route and parameters for 201 and 202 don't have to be known in advance
+
'''See also'''
 +
 
 +
* [[Modules| All Yate modules]]
 +
* [[Telephony]]
 +
 
 +
[[Category:Routing]]

Latest revision as of 11:01, 10 March 2016

Yate has multiple routing modules. A routing module is a module that handles (sees) the call.route message.

You can set all routing in a single module or use a combination of modules. If more than one module is used, then the priority that is set in each configuration file determines the order of the modules processing the message. A numerically lower priority means a higher priority of the route. A module can add/modify parameters without handling the message.

This is the list of the routing modules and a How To's for each of them:

Routing modules in Yate How to do routing in Yate

Module used for autentication, registration, and routing of users from a file.

Module used for routing incoming and outgoing call legs.

Javascript module is a module support for programmatically routing a call.

Module used to write CDR(Call Detail Record) data in the database.

Module used to route a call to multiple alternative targets.

Performs routing using the ENUM protocols that maps phone numbers to VoIP (or even other PSTN) resources.

This module allows building clusters of servers for a single domain.

This module can be used whenever you need to route the calls to one or several numbers or aliases whose addresses are unknown in advance.

This module keeps a count of active calls per user specified context and adds one or all counters to be used in routing decisions.

Example of register users in Regfile module.

Example of redirecting calls to another user.

Examples of how to route calls from javascript module.

Example of how to register users from a database.

Round robin routing examples.

Example of configuring parameters in cluster route module.

Examples for routing calls using lateroute.

Example of count incoming calls.

Example on how to route and bill from a database.


See also

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers