Adding NAP Grouping Script
Line 29: | Line 29: | ||
|} | |} | ||
+ | == Setting up '''NAP Grouping''' Scripts<br> == | ||
+ | |||
+ | 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.<br> | ||
+ | |||
+ | First, go to the routing script section of the Web portal | ||
+ | <pre>Gateway -> Routing scripts -> Example Scripts -> simple_routing.rb [Edit] | ||
+ | </pre> | ||
+ | Three things need to be added. At the start of the script:<br> | ||
+ | <pre>require 'multiple_naps' | ||
+ | </pre> | ||
+ | In the main class:<br> | ||
+ | <pre>include MultipleNaps | ||
+ | </pre> | ||
+ | <pre>before_filter :method => :multiple_naps | ||
+ | </pre> | ||
+ | <br> | ||
+ | The final script will look like this: | ||
+ | <pre> | ||
+ | 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 | ||
+ | </pre> | ||
== Adding New Custom Variable <br> == | == Adding New Custom Variable <br> == | ||
You need to add a custom column to use this script. | You need to add a custom column to use this script. | ||
<pre>Gateway -> Routes -> Create New Route Column</pre> | <pre>Gateway -> Routes -> Create New Route Column</pre> | ||
'''Name''': additional_naps<br>'''Type attributes''': text<br>'''<br> | '''Name''': additional_naps<br>'''Type attributes''': text<br>'''<br> |
Latest revision as of 02:46, 10 February 2020
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