Adding NAP Grouping Script

From TBwiki
Jump to: navigation, search

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

Personal tools