Actions

Adding Label Routing to any Routing Script: Difference between revisions

No edit summary
No edit summary
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Label routing can be implemented in any routing script by following these 3 simple steps:
{{DISPLAYTITLE:Adding Label Routing to a Routing Script}}
<pre>Gateway -&gt; Routing Script -&gt; YourScript.rb (Edit)
</pre>
1. Add a the following line on top of your script file:
<pre>require 'routesets_digit_analyzer'</pre>
2. Include the module in your routing class:
<pre>class MyRoutingClass &lt; BaseRouting</pre>
1.


<br> '''include RoutesetsDigitAnalyzer'''  
{| class="wikitable"
|-
|rowspan="3"|This article applies to:
|'''Product'''
|'''Version'''
|-
|Tmedia
|2.5, 2.6
|}


1.


<br> ...
'''To implement label routing for any routing script, do the following:'''


1.  
1- Click '''Routing script''' in the navigation panel.


<br> end


2. Add a before_filter with 'routesets_digit_analyzer' method:
[[Image:RoutingScript_0_A.png]]
<pre>before_filter&nbsp;:method =&gt;&nbsp;:routesets_digit_analyzer,&nbsp;:trie_order =&gt;&nbsp;:called</pre>
=== <br>Complete Example  ===
<pre>require 'base_routing'
require 'routesets_digit_analyzer'


class MyRoutingClass &lt; BaseRouting
include RoutesetsDigitAnalyzer


before_filter&nbsp;:method =&gt;&nbsp;:routesets_digit_analyzer,&nbsp;:trie_order =&gt;&nbsp;:called
2- '''Edit''' your main script


route_match&nbsp;:call_field_name =&gt;&nbsp;:called
 
route_match&nbsp;:call_field_name =&gt;&nbsp;:calling
[[Image:RoutingScript_2_A.png]]
route_match&nbsp;:call_field_name =&gt;&nbsp;:nap
 
route_match&nbsp;:method =&gt;&nbsp;:match_nap_availability
 
route_remap&nbsp;:call_field_name =&gt;&nbsp;:called,&nbsp;:route_field_name =&gt;&nbsp;:remapped_called
3- Add the following 3 lines to the script:
route_remap&nbsp;:call_field_name =&gt;&nbsp;:calling,&nbsp;:route_field_name =&gt;&nbsp;:remapped_calling
 
route_remap&nbsp;:call_field_name =&gt;&nbsp;:nap,&nbsp;:route_field_name =&gt;&nbsp;:remapped_nap
'''At the top of the page'''
require 'routesets_digit_analyzer'
 
 
'''Following your main class definition'''
include RoutesetsDigitAnalyzer
 
 
'''Add before filter in your main class'''
before_filter :method => :routesets_digit_analyzer, :trie_order => :called
 
 
4- Click '''Save'''
 
== Example  ==
<pre>
require 'base_routing'
require 'routesets_digit_analyzer'                                                # <- Add this line here
 
class my_script < BaseRouting
  include RoutesetsDigitAnalyzer                                                  # <- Add this line here
 
  before_filter :method => :routesets_digit_analyzer, :trie_order => :called     # <- Add this line here
  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
end


@@routing = my_script.new
def init_routes( routes )
  @@routing.init routes
end
def route( call, nap_list )
  @@routing.route call, nap_list
end
</pre>  
</pre>  
<br>
 
 
== Related Action ==
[[How_to_Setup_Filters|How to Setup Filters]]

Latest revision as of 10:31, 13 June 2022


This article applies to: Product Version
Tmedia 2.5, 2.6


To implement label routing for any routing script, do the following:

1- Click Routing script in the navigation panel.



2- Edit your main script



3- Add the following 3 lines to the script:

At the top of the page

require 'routesets_digit_analyzer'


Following your main class definition

include RoutesetsDigitAnalyzer


Add before filter in your main class

before_filter :method => :routesets_digit_analyzer, :trie_order => :called


4- Click Save

Example

require 'base_routing'
require 'routesets_digit_analyzer'                                                # <- Add this line here

class my_script < BaseRouting
  include RoutesetsDigitAnalyzer                                                  # <- Add this line here
  
  before_filter :method => :routesets_digit_analyzer, :trie_order => :called      # <- Add this line here
  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

@@routing = my_script.new

def init_routes( routes )
  @@routing.init routes
end

def route( call, nap_list )
  @@routing.route call, nap_list
end


Related Action

How to Setup Filters