Adding Capture DTMF 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 Capture DTMF script to any Routing scripts.

Script description

If the called number is a specific value, it will play an announcement and waits to capture digits.

  1. Call 1-800-999-4444
  2. Hear tone
  3. Enter 2 digit switch number optionally followed by #
  4. Hear tone
  5. Enter TG number – can be 4 or 5 digits depending on which switch the call goes to
  6. Hear tone
  7. Enter destination number

The call then routes to a TG (NAP) based on the 2 digit switch number and the INVITE contains the TG number in the TGRP= parameter. Sample INVITE with TGRP=

 INVITE sip:18003608022@192.168.101.180;tgrp=98741 SIP/2.0

This will work with any TMG device with a license to play files. For ProSBC, it requires transcoding devices.

Add Capture DTMF Scripts in system

Download this file:

Capture DTMF Script

Then upload it in the system with these instructions: Import_Customized_Routing_Script_C

Setting up Capture DTMF 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 'capture_dtmf'

In the main class:

include CaptureDTMF
after_filter :method => :capture_dtmf


The final script will look like this:

require 'base_routing'
require 'capture_dtmf'

class SimpleRouting < BaseRouting
  include CaptureDTMF
  
  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_filter :method => :capture_dtmf
end

Upload audio file

The script will play a tone for the user to ask them to enter a dtmf string. This show how to add the default one which can be downloaded here:

Sample Tone File
  1. Click Audio Prompts in the navigation panel
  2. Click Browse and select 'fen-tone-400hz-300ms.wav'
  3. Click Upload

See instructions here: Toolpack:Configuring_Audio_Prompts_C
However any G.711 alaw or G.711 ulaw wav file can be added to the system to be played: you need to edit the capture_dtmf.rb script with the appropriate wav file.

Personal tools