Skip to content

Routing Plans

Routing Plan defines set of Dialpeers that will be used for call routing.

Each Routing Plan can include multiple Dialpeers that are used for describing routing and termination price.

Routing Groups

Routing Plan not includes Dialpeers directly, instead intermedite object Routing Group used - it allows to reuse same Dialpeer in multiple Routing Plan

Configuration example:

In this example we are oranizing Rotuing Groups by vendor - Each Routing Group represent routes provided by one vendor(Termination provider). Routing plan routing_plan1 includes Dialpeers(routes) from VendorA and VendorB, routing_plan2 includes Dialpeers(routes) from VendorB and VendorC. As result VendorB routes reused in multiple Rotuing Plans.

Routing Plan attributes

Id

Unique Routing Plan's id.

Name

Unique Routing Plan name.

Sorting

This field is used for setting sorting method for the routes (Dialpeers) within Routing Plan. Regardless from the sorting method all Dialpeers <dialpeers within Routing Plan will be filtered by using following rules:

  • Prefix <dialpeer_prefix of Dialpeer <dialpeers record is in the prefix range of URI name (destination) that was processed by Number translations procedures (if any);

INFO

Examples:

  • Prefix of Dialpeer <dialpeers record = ** ; URI name = 0662296132 =*TRUE*
  • Prefix of Dialpeer <dialpeers record = 066 ; URI name = 0662296132 =*TRUE*
  • Prefix of Dialpeer <dialpeers record = 066[1-3] ; URI name = 0662296132 =*TRUE*
  • Prefix of Dialpeer <dialpeers record = 066[1-3] ; URI name = 0665296132 =*FALSE*
  • Length of URI name (destination) that was processed by Number translations procedures (if any) is between Dst number min and max length <dialpeer_dst_number_min_length values of Dialpeer <dialpeers record;

INFO

Examples:

  • Dst number min length of Dialpeer <dialpeersrecord = 3 ; Dst number max length of Dialpeer <dialpeers record = 15 ; URI name = 380662296132 =*TRUE*
  • Dst number min length of Dialpeer <dialpeers record = 7 ; Dst number max length of Dialpeer <dialpeers record = 7 ; URI name = 7050460 =*TRUE*
  • Dst number min length of Dialpeer <dialpeers record = 0 ; Dst number max length of Dialpeer <dialpeers record = 7 ; URI name = 0487050460 =*FALSE*
  • Dialpeer <dialpeers record is still valid <dialpeer_valid_dates;

  • Balance <account_balance of Vendor's Account <dialpeer_vendor (that was chosen for the Dialpeer <dialpeers) is less than Max balance <account_max_balance value of this Account;

  • Contractor <contractors that was chosen <dialpeer_vendor for the Dialpeer <dialpeers is enabled and has type: Vendor;

  • Routing tags <routing_tag that were chosen for the call at the previous steps (Authentication, Numberlist processing etc.) and Routing tags <routing_tag that were chosen in the field Routing tag ids <dialpeer_routing_tag_ids{.interpreted-text role="ref"} of Dialpeer <dialpeers are matched to each other. Principles of the Routing tags <routing_tag matching are described in this Example (Truth table for tags) <tags_truth_table.

    The following algorithms (sorting methods) are available:

    LCR, No ACD&ASR control
    Sorting only on the basis of least-cost routing (LCR) algorithm (routes with lowest price will be on the top of rating) without control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers.
    Prio,LCR, ACD&ASR control
    Sorting on the basis of internal Priority <dialpeer_priority of Dialpeers <dialpeers with following sorting on the basis of least-cost routing (LCR) algorithm (routes with highest priorities will be on the top of rating, in case of same priorities LCR sorting will be used) with control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers(routes where values of these parameters are less than presetuped limits couldn't be chosen for routing).
    LCR,Prio, ACD&ASR control
    Sorting on the basis of least-cost routing (LCR) algorithm with following sorting on the basis of internal Priority <dialpeer_priority of Dialpeers <dialpeers (routes with lowest price will be on the top of rating, in case of same prices sorting on priorities will be used) with control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers (routes where values of these parameters are less than presetuped limits couldn't be chosen for routing).
    LCRD, Prio, ACD&ASR control
    Sorting on the basis of modified least-cost routing (LCR) algorithm with following sorting on the basis of internal Priority <dialpeer_priority of Dialpeers <dialpeers (routes with lowest price will be on the top of rating, in case of same prices sorting on priorities will be used) with control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers (routes where values of these parameters are less than presetuped limits couldn't be chosen for routing). Difference of this algorithm from the classic LCR algorithm is on the using Rate Delta Max <rate_delta_max value during the sorting of Dialpeers <dialpeers by price. Dialpeers <dialpeers with prices that are different one from other less than Rate Delta Max <rate_delta_max value will be on one level of sorting by price and Priority <dialpeer_priority will be used for building routing rating between them.
    Route testing
    This mode of sorting usually used for testing routes from different Vendors. In this mode you can use especial format of destination number: XX*YYYYYYYYYY, where XX - Vendor ID <contractor_id and YYYYYYYYYY - phone number. In this mode most preferred Dialpeer <dialpeers of Vendor <contractors with XX ID will be used for the routing.
    QD-Static, LCR, ACD&ASR control
    Sorting on the basis of modified internal Priority <dialpeer_priority of Dialpeers <dialpeers with following sorting on the basis of least-cost routing (LCR) algorithm (routes with highest priorities will be on the top of rating, in case of same priorities LCR sorting will be used) with control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers (routes where values of these parameters are less than presetuped limits couldn't be chosen for routing). In this method of sorting Priority <dialpeer_priority of Dialpeers <dialpeers will be re-written byPriority <routing_plan_static_route_priority of the Routing plan static route <routing_plan_static_route (if this static route is present in this Routing plan).
    Static only, No ACD&ASR control
    Sorting only on the basis of Priority <routing_plan_static_route_priority of the Routing plan static route <routing_plan_static_route (if this static route is present in this Routing plan) without control of Acd Limit <dialpeer_acd_limit and Asr Limit <dialpeer_asr_limit parameters of Dialpeer <dialpeers. Routes with highest priorities will be on the top of rating. Routing will be done only in case of presence of Routing plan static route <routing_plan_static_route record and Dialpeer <dialpeers record that are related to this Routing plan.
Use Lnp
If this flag is enabled system will process Routing Plan LPN Rules to determine if LNP lookup required and perform actions configured in these rules.
Rate Delta Max
This value is used for LCRD, Prio, ACD&ASR control method of sorting. You should setup this value in case of using this method of sorting. Dialpeers <dialpeers with prices that are different one from other less than Rate Delta Max <rate_delta_max value will be on one level of sorting by price and Priority <dialpeer_priority will be used for building routing rating between them.
Routing Groups
Routing Groups <routing_group that are related to this Routing Plan. The rules that are described in this Routing plan will be applied to all Dialpeers <dialpeers that are associated with chosen Routing Groups <routing_group.