Actions

Adding YouMail script to Routing Scripts

Revision as of 11:19, 13 June 2022 by Allyntree (talk | contribs) (format and typo)
This article applies to: Product Version
ProSBC 3.1, 3.2

This article describes how to add youmail_spam_risk.rb script to any Routing scripts.

Requirements for this script

  • Devices must be installed with release 3.1.113 or later.
  • The management interface must have an external access to reach the YouMail server. All HTTPS requests will come from the management interface. tbchangeip command can be used from the console of the ProSBC or TMG devices to configure the DNS server.
  • Need to have an account at YouMail to get a Security ID (SID) and an API key. Trial accounts are available.


Add youmail_spam_risk.rb Scripts in system

Download this file:

YouMail spam risk ruby script

Then upload it in the system with these instructions: Import Customized Routing Script

Setting up YouMail spam risk Scripts

To set up 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 with the 'Main' type.
Main scripts.png

You can also copy/paste the content of the main file and create a new 'Main' Script using the Create New Script File menu


Go to the routing script section of the Web portal

Gateway -> Routing scripts -> simple_routing_sbc.rb [Edit]

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

require 'youmail_spam_risk'

In the main class:

include YouMailSpamRisk
   after_filter :method                      => :filter_by_https_spam_risk,
                :server_url                  => "https://dataapi.youmail.com/api/v3/lookup/phone",
                :data_api_sid                => "abc123",  # Need to get the sid and key from YouMail
                :data_api_key                => "abc123",
                :default_score               => 0,
                :sl_timeout_ms               => 2000,
                :order_by_score              => false


The final 'Main' script will look like this:

require 'base_routing'
require 'youmail_spam_risk'

class SimpleRouting < BaseRouting
  include YouMailSpamRisk
  
  route_match :call_field_name => :called
  route_match :call_field_name => :calling
  route_match :call_field_name => :nap

  after_filter :method                      => :filter_by_https_spam_risk,
               :server_url                  => "https://dataapi.youmail.com/api/v3/lookup/phone",
               :data_api_sid                => "abc123", # Need to get the sid and key from YouMail
               :data_api_key                => "abc123",
               :default_score               => 0,
               :sl_timeout_ms               => 2000,
               :order_by_score              => false

  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

There may be other scripts called by this 'Main' script. This is normal.


Adding New max_spam_risk_level Variable

You need to add a new custom column to use this script. There is a default value created and it can be changed in each route afterwards.

Gateway -> Routes -> Create New Route Column

Name: max_spam_risk_level
Type attributes: integer
Default: 0

The result will look like this:
Max spam route column.png
You can then go in each route and change this value. '2' will be accept all calls, no matter what. '0' will be to accept only calls validated by YouMail.