Adding Routing Number script to Routing Script

From TBwiki
(Difference between revisions)
Jump to: navigation, search
(Updated formatting)
m
 
Line 20: Line 20:
 
{| cellpadding="5" border="1" class="wikitable"
 
{| cellpadding="5" border="1" class="wikitable"
 
|-
 
|-
! width="200" style="background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;" |Capture DTMF Script
+
! width="200" style="background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;" |Routing Number Script
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |

Latest revision as of 13:30, 8 February 2021

Contents

Applies to version(s): v2.9, v2.10, v3.0, v3.1

This shows how to add Routing Number script to any Routing scripts.

Requirements for this script

  1. The routing number is included in the incoming call. For SIP in the Request-URI:
    INVITE sip:0038123456789;rn=8087321000;npdi=yes@192.168.101.160:5060
  2. The routing table must use the called party number
  3. The outgoing call will have:
    For SS7:
    Forward Call Indicators:
    Ported number translation indicator: number translated (Bit M)
    Called Party Number: 8087321000
    Generic Number: [Not present]
  4. The CDR needs to have the Called number set as the Routing Number


Add Routing Number Scripts in system

Download this file:

Routing Number Script

Then upload it in the system with these instructions: Import_Customized_Routing_Script_C

Setting up Routing Number 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_sbc.rb [Edit]

Four things need to be added. At the start of the script:

require 'r_n_cdr'

In the main class:

include RnCdr
before_filter :method => :RN_cdr
after_remap_filter :method => :Swap_back


The final script will look like this:

require 'base_routing'
require 'r_n_cdr'

class SimpleRouting < BaseRouting
  include RnCdr
  
  before_filter :method => :RN_cdr

  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

  after_remap_filter :method => :Swap_back
end

Update Text CDR Configuration

To have the Routing Number (RN) in the CDR logs, add these fields:

Gateway -> Text CDR parameters -> CDR format (Start): ,RN='@{ScriptAttribute:RN}'
Gateway -> Text CDR parameters -> CDR format (End):   ,RN='@{ScriptAttribute:RN}'

And replace the called fields:

Gateway -> Text CDR parameters -> CDR format (Start): ,Called='@{ScriptAttribute:Called2}'
Gateway -> Text CDR parameters -> CDR format (End):   ,Called='@{ScriptAttribute:Called2}'

See instructions here: Text_Call_Detail_Records

Configure LNP Settings

LNP settings need to be:

profiles -> Outgoing calls LNP mode: Relay LNP Information 
profiles -> Incoming calls LNP mode: Forward LNP from incoming to outgoing call

See instructions here: Modify_LNP_profile_D

Personal tools