Adding NAP Grouping Script: Difference between revisions
No edit summary |
No edit summary |
||
| 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> | ||
Revision as of 03:46, 10 February 2020
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