Adding NAP Grouping Script
Contents |
Applies to version(s): v2.9, v2.10, v3.0, v3.1
This shows how to add NAP Grouping script to any Routing scripts.
Script description
This filter is used to dynamically generate routes from a Regex.
The trick is to use the NAP names to identify which NAPs are in the same group. The example in the file talk about "SIP_.*" but I would use instead "/GROUPA_.*/".
For example:
- GROUPA_SIP_NAP_10_10_10_10
- GROUPA_SIP_NAP_10_10_10_11
- GROUPA_SIP_NAP_10_10_10_12
- GROUPB_SIP_NAP_10_10_20_20
- GROUPB_SIP_NAP_10_10_20_21
- GROUPC_SIP_NAP_10_10_30_30
Then, in your routes, you can use the Route Column "additional_naps" to put /GROUPA_.*/
Add NAP Grouping Scripts in system
Download this file:
Multiple NAPs Script |
---|
Setting up NAP Grouping Scripts
To setup a Filter, the main script needs to be modified. The main script can be either simple_routing.rb, simple_routing_sbc.rb, or any other script.
First, go to the routing script section of the Web portal
Gateway -> Routing scripts -> Example Scripts -> simple_routing.rb [Edit]
Three things need to be added. At the start of the script:
require 'multiple_naps'
In the main class:
include MultipleNaps
before_filter :method => :multiple_naps
The final script will look like this:
require 'base_routing' require 'multiple_naps' class SimpleRouting < BaseRouting include MultipleNaps before_filter :method => :multiple_naps route_match :call_field_name => :called route_match :call_field_name => :calling route_match :call_field_name => :nap route_remap :call_field_name => :called, :route_field_name => :remapped_called route_remap :call_field_name => :calling, :route_field_name => :remapped_calling route_remap :call_field_name => :nap, :route_field_name => :remapped_nap end
Adding New Custom Variable
You need to add a custom column to use this script.
Gateway -> Routes -> Create New Route Column
Name: additional_naps
Type attributes: text