Actions

Network Intelligence/Restcomm Configuration: Difference between revisions

mNo edit summary
 
(88 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:Network Intelligence/Restcomm Configuration}}
{{DISPLAYTITLE:Restcomm CPaaS Platform Configuration}}
 
{| class="wikitable"
|-
|rowspan="3"|This article applies to:
|'''Product'''
|'''Version'''
|-
|SBC
|3.0, 3.1
|}
=Introduction=
=Introduction=
This document provides instructions on how to configure FreeSBC to interoperate with the Netowrk Intelligence/Restcomm Communications platform as a service (CPaaS) system . Restcomm CPaaS enablement provides programmable voice like IVR service, progammable SMS service, mail, chat services and more, for service provider and enterprise customers. FreeSBC acts as a firewall before Restcomm CPaaS platform and provides many essestial protection features for voice communications over SIP and RTP traffic. With the example below, a softphone - PhonerLite, and a real mobile phone are used to provide originating end point that will call through FreeSBC to Restcomm platform. Further, in this example, FreeSBC AWS is used, but in fact, any FreeSBC platform will be able to achieve the same setup. <br/>
This document provides instructions on how to configure a ProSBC to interoperate with the [https://www.restcomm.com/ Restcomm] Communications Platform as a Service (CPaaS) system. <br/>
Restcomm CPaaS platform provides programmable voice-like IVR service, programmable SMS service, mail, chat services and more, for service providers and enterprise customers. <br/>
[[ProSBC]] acts as a Session Border Controller to protect the Restcomm CPaaS platform and provides many essential protection features for voice communications over SIP and RTP traffic. <br/>
With the following example below, a softphone - PhonerLite, and a real mobile phone are used to provide an originating endpoint that will call through [[ProSBC]] to the Restcomm platform. <br/>
Furthermore, in this example, [[ProSBC]] AWS is used, but in fact, any [[ProSBC]] platform will be able to achieve the same setup. <br/>


=Network Diagram and Call Scenarios=
=Network Diagram and Call Scenarios=
This section provides the simplified network diagram containing Softphone, Mobile phone, service provider, FreeSBC, Restcomm system, and the call flow scenarios.
This section provides the simplified network diagram containing Softphone, Mobile phone, service provider, ProSBC, Restcomm system, and the call flow scenarios.
[[File:Network_Intelligence-Restcomm_configuration_setup_call_flows.PNG|1000px]]


# '''Restcomm welcome annuncement''' - PhonerLite sends 'direct call' to FreeSBC with called information 1234@52.60.132.155 where 52.60.132.155 is the public Elastic IP used for voip interface in this FreeSBC AWS. FreeSBC makes a mapping of called number to 1234@13105894010@netg2.restcomm.com before making outgoing call to Network Intelligence/Restcomm platform. PhonerLite hears welcome greeting from Network Intelligence/Restcomm platform. Configuration steps (available in different sections of PhonerLite Configuration, FreeSBC Configuration below):
##PhonerLite direct call setting
##FreeSBC AWS Local NAT Traversal setting
##FreeSBC NAPs setting
##FreeSBC routes setting
##FreeSBC route called remapping
# '''IVR DTMF acknowledgement''' - PhonerLite sends 'direct call'  to FreeSBC with called information 1234@52.60.132.155. FreeSBC makes a mapping of called number to 13105894010@netg2.restcomm.com (1310589401 is a full DID number with country code) before making outgoing call to Network Intelligence/Restcomm platform. PhonerLite hears welcome greeting from Network Intelligence/Restcomm platform with IVR to acknowledge the DTMF tones pressed. Configuration steps:
##PhonerLite direct call setting, PhonerLite DTMF setting
##FreeSBC AWS Local NAT Traversal setting
##FreeSBC NAPs setting
##FreeSBC routes setting
##FreeSBC route called remapping
# '''IVR DID full numer''' - PhonerLite sends 'direct call'  to FreeSBC with called information 1234@52.60.132.155. FreeSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making outgoing call to Network Intelligence/Restcomm platform. PhonerLite hears welcome greeting from Network Intelligence/Restcomm platform with IVR to acknowledge the DTMF tones pressed. Configuration steps:
##PhonerLite direct call setting, PhonerLite DTMF setting
##FreeSBC AWS Local NAT Traversal setting
##FreeSBC NAPs setting
##FreeSBC routes setting
##FreeSBC route called remapping
# '''Calling DID registered called number with IVR''' - Mobile phone is calling an international number 902129550330 through Telecom opertaor/SIP provider. 902129550330 is a registered number in ths Telecom operator/SIP provider. FreeSBC registering to this Telecom operator/SIP provider (NAP) as a user for this 90212955033 and act as a termination point for this number.  Once Mobile phone calling 902129550330, FreeSBC detecting this called number and forward it out, with remapping called number of 13105894010@netg2.restcomm.com to Network Intelligence/Restcomm platform. This call will also get IVR DTMF acknowledgement for DTMF tones pressed. Configuration steps:
##PhonerLite direct call setting, PhonerLite DTMF setting
##FreeSBC AWS Local NAT Traversal setting
##FreeSBC NAPs setting, FreeSBC register to NAP with username and password
##FreeSBC routes setting
##FreeSBC route called remapping
# '''IVR DID full number outside call''' - PhonerLite sends 'direct call'  to FreeSBC with called information 1234@52.60.132.155. FreeSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making outgoing call to Network Intelligence/Restcomm platform. PhonerLite hears welcome greeting from Network Intelligence/Restcomm platform with IVR to ask caller to press '1', which will enable a separate call back from Network Intelligence/Restcomm platform.  This separate call back is then routed through FreeSBC to the Telecom operator/SIP provider and onto a outside number of a Telecobridges office phone number set. Configuration steps:
##PhonerLite direct call setting, PhonerLite DTMF setting
##FreeSBC AWS Local NAT Traversal setting
##FreeSBC NAPs setting, FreeSBC register to NAP with username and password
##FreeSBC routes setting
##FreeSBC route called remapping


# '''Restcomm welcome announcement''' - PhonerLite sends 'direct call' to ProSBC with called information 1234@52.60.132.155 where 52.60.132.155 is the public Elastic IP used for voip interface in this ProSBC AWS. ProSBC makes a mapping of the called number to 1234@netg2.restcomm.com before making an outgoing call to the Restcomm platform. PhonerLite hears a welcome greeting from Restcomm platform. Configuration steps (available in different sections of PhonerLite Configuration, ProSBC Configuration below):[[File:Restcomm_welcome_announcement.PNG|1000px]]
##[[Network_Intelligence/Restcomm_Configuration#PhonerLite_direct_call_setting|PhonerLite direct call setting]]
##[[Network_Intelligence/Restcomm_Configuration#ProSBC Local NAT Traversal setting|ProSBC Local NAT Traversal setting]]
##[[Network_Intelligence/Restcomm_Configuration#ProSBC NAPs setting|ProSBC NAPs setting]]
##[[Network_Intelligence/Restcomm_Configuration#ProSBC routes setting|ProSBC routes setting]]
##[[Network_Intelligence/Restcomm_Configuration#ProSBC route called remapping|ProSBC route called remapping]]
# '''IVR DTMF acknowledgement''' - PhonerLite sends 'direct call'  to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 1234@netg2.restcomm.com before making outgoing call to Restcomm platform. PhonerLite hears welcome greeting from Restcomm platform with IVR to acknowledge the DTMF tones pressed. Same configuration steps as in call flow 1 with addition of [[Network_Intelligence/Restcomm_Configuration#PhonerLite_direct_call_setting|PhonerLite DTMF setting]] :[[File:IVR_DTMF_acknowledgement.PNG|1000px]]
# '''IVR DID full number''' - PhonerLite sends 'direct call'  to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making outgoing call to Restcomm platform. PhonerLite hears welcome greeting from Restcomm platform with IVR to acknowledge the DTMF tones pressed. Same configuration steps as in call flow 1 with addition of [[Network_Intelligence/Restcomm_Configuration#PhonerLite_direct_call_setting|PhonerLite DTMF setting]] :[[File:IVR_DID_full_number.PNG|1000px]]
# '''Calling DID registered called number with IVR''' - Mobile phone is calling an international number 902129550330 through Mobile operator and SIP provider. 902129550330 is a registered number in SIP provider. ProSBC registering to this SIP provider (NAP) as a user for this 90212955033 and act as a termination point for this number.  Once Mobile phone calling 902129550330, ProSBC detecting this called the number and forward it out, with remapping called number of 13105894010@netg2.restcomm.com to Restcomm platform. This call will also get IVR DTMF acknowledgment for DTMF tones pressed. Same configuration steps as in call flow 3 with addition of [[Network_Intelligence/Restcomm_Configuration#ProSBC register to NAP with username and password|ProSBC register to NAP with username and password]] :[[File:Calling_DID_registered_called_number_with_IVR.PNG|1000px]]
# '''IVR DID full number outside call''' - PhonerLite sends 'direct call'  to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making an outgoing call to Restcomm platform. PhonerLite hears a welcome greeting from Restcomm platform with IVR to ask the caller to press '1', which will enable a separate call back from Restcomm platform.  This separate call back is then routed through ProSBC to the SIP provider and Telecom operator and onto an outside number of a Telecobridges office phone number set. Same configuration steps as in call flow 4.
[[File:IVR_DID_full_number_outside_call.PNG|1000px]]


=PhonerLite Configuration=
=PhonerLite Configuration=
Line 46: Line 39:
==PhonerLite direct call setting==
==PhonerLite direct call setting==


Below are sections required to setup outbound direct call on PhonerLite,
The following section are required to set up the outbound direct call on PhonerLite,
 
'''Server''' setting: All Proxy/Registrar and Domain/Realm are empty
 
[[File:PhonerLite_direct_call_Server.png|500px]]
 
'''User''' setting
 
[[File:PhonerLite_direct_call_User.png|500px]]
 
'''Network''' setting
 
[[File:PhonerLite_direct_call_Network.png|500px]]
 
'''Codecs and DTMF''' setting
 
[[File:PhonerLite_direct_call_Codecs_and_DTMF.png|500px]]
 
For dial out, we can specify the called number as 1234@52.60.132.155 where 52.60.132.155 is the public Elastic IP used for voip interface in this ProSBC AWS.
 
=ProSBC Configuration=
This section provides ProSBC configurations for the solution.
==ProSBC Local NAT Traversal setting==
 
* See NAT section in [[Toolpack:Tsbc IP Network Settings 3.0]]
 
==ProSBC NAPs setting==
 
* See [[Toolpack:Allocating a SIP Network Access Point (NAP) SBC A|Create SIP NAP]] and [[Toolpack:Allocating a SIP Open Network Access Point (NAP) SBC A|Create Open NAP]]
** Here, SIP NAP will be Restcomm NAP and Service Provider NAP, and Open NAP will be from PhonerLite
 
==ProSBC register to NAP with username and password==
 
* The following sections need to be set, as in example below,
 
 
[[File:ProSBC register to NAP with username and password.png|700px]]
 
* In this example, ProSBC is behind NAT, so local NAT method is set
 
==ProSBC routes setting==
 
* See [[Toolpack:Creating a First Call Route E|Create a Static Route]]
** Here, we set the SIP end points (NAP) to and from as required in each call flow scenario
 
==ProSBC route called remapping==


=FreeSBC Configuration=
* The following section needs to be set, and depending what called number remapping required as in each call flow scenario,
This section provides FreeSBC configurations for the solution.
   
==Configure Routing Script==
[[File:ProSBC route called remapping.png|700px]]
FreeSBC is configured to use routing script to handle SIP 3xx Redirect response.
:1. Enable routing script
  Gateway->Use script
:2. Load routing scripts
Gateway->Routes->Routing Script->Import Script File
    File->txnx_shaken.rb
    ScriptType->TxNx
    Load on startup->unchecked
Gateway->Routes->Routing Script->Import Script File
    File->txnx_routing.rb
    ScriptType->Txnx
    Load on startup->checked


[[:File:Txnx_scripts.zip|Click here to download txnx_shaken.rb and txnx_routing.rb Routing Scripts]]


==Configure NAP (Network Access Point)==
== References ==
OSPrey-A and OSPrey-B are configured as NAP on FreeSBC-A and FreeSBC-B respectively. A general SIP endpoint, NAP-ANY, is configured on both FreeSBC’s.
*[https://www.telestax.com/ Communications Platform as a Service(CPaas)]
* On FreeSBC-A
*[https://www.restcomm.com/ Cloud based Voice and SMS APIs]
NAPs->Create New NAP
    Name->NAP_OSPrey_A
    Proxy address->x.x.x.x (IP of OSPrey-A)
NAPs->Create New NAP
    Name->NAP_ANY
Use Proxy Address->Unchecked
* On FreeSBC-B
NAPs->Create New NAP
    Name->NAP_OSPrey_B
    Proxy address->x.x.x.x (IP of OSPrey-B)
NAPs->Create New NAP
    Name->NAP_ANY
    Use Proxy Address->Unchecked
Note: To configure local routing policy with other destination NAPs, OSPrey NAPs should have the highest priority alone all destination NAPs.
==Configure NAP Column==
NAP column is used to mark OSPrey as redirect server.
Gateway->Routes->NAP Column->Create New NAP Column
    Name: server_type
    Type Attributes: NORMAL|REDIRECT
    Default: NORMAL
*Both NAP_OSPrey-A and NAP_OSPrey-B are configured with NAP column server_type REDIRECT.
*NAP_ANY are configured with NAP column server_type NORMAL.
==Configure Static Route==
A static route to NAP_ANY should be configured on both FreeSBC’s to allow FreeSBC to try the destination in the SIP 3xx response.
Gateway->Routes->Create New Static Route
    Name->ToEndpoints
    NAP->any
    Remapped_NAP->NAP_ANY
==Enable SIP Custom Header==
Enable SIP Custom Headers must be checked to pass SHAKEN Identity header and several other headers used by the solution.
Profiles->SIP->Enable SIP Custom Headers
==Disable Legacy Redirection Mode==
Use legacy redirection mode must be unchecked to allow FreeSBC to use routing script to handle SIP 3xx response.
SIP->Editing SIP Configuration->Header Parameters->Use legacy redirection mode
==Configure Route Retry Action==
Route retry action of 3xx, 404 and 603 must be configured to allow FreeSBC to perform failover, fraud control and SHAKEN AS/VS request.
Profiles->Edit Reason Cause Mapping
    300 Multiple Choices->Route retry action->Process call routing
    302 Moved temporarily->Route retry action->Process call routing
    404 Not found->Route retry action->Continue call
    603 Decline->Route retry action->Stop call
Notes:
*The default route retry action of 404 is Stop call.
*The default route retry action of 603 is Continue call.

Latest revision as of 10:15, 16 May 2022


This article applies to: Product Version
SBC 3.0, 3.1

Introduction

This document provides instructions on how to configure a ProSBC to interoperate with the Restcomm Communications Platform as a Service (CPaaS) system.
Restcomm CPaaS platform provides programmable voice-like IVR service, programmable SMS service, mail, chat services and more, for service providers and enterprise customers.
ProSBC acts as a Session Border Controller to protect the Restcomm CPaaS platform and provides many essential protection features for voice communications over SIP and RTP traffic.
With the following example below, a softphone - PhonerLite, and a real mobile phone are used to provide an originating endpoint that will call through ProSBC to the Restcomm platform.
Furthermore, in this example, ProSBC AWS is used, but in fact, any ProSBC platform will be able to achieve the same setup.

Network Diagram and Call Scenarios

This section provides the simplified network diagram containing Softphone, Mobile phone, service provider, ProSBC, Restcomm system, and the call flow scenarios.


  1. Restcomm welcome announcement - PhonerLite sends 'direct call' to ProSBC with called information 1234@52.60.132.155 where 52.60.132.155 is the public Elastic IP used for voip interface in this ProSBC AWS. ProSBC makes a mapping of the called number to 1234@netg2.restcomm.com before making an outgoing call to the Restcomm platform. PhonerLite hears a welcome greeting from Restcomm platform. Configuration steps (available in different sections of PhonerLite Configuration, ProSBC Configuration below):
    1. PhonerLite direct call setting
    2. ProSBC Local NAT Traversal setting
    3. ProSBC NAPs setting
    4. ProSBC routes setting
    5. ProSBC route called remapping
  2. IVR DTMF acknowledgement - PhonerLite sends 'direct call' to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 1234@netg2.restcomm.com before making outgoing call to Restcomm platform. PhonerLite hears welcome greeting from Restcomm platform with IVR to acknowledge the DTMF tones pressed. Same configuration steps as in call flow 1 with addition of PhonerLite DTMF setting :
  3. IVR DID full number - PhonerLite sends 'direct call' to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making outgoing call to Restcomm platform. PhonerLite hears welcome greeting from Restcomm platform with IVR to acknowledge the DTMF tones pressed. Same configuration steps as in call flow 1 with addition of PhonerLite DTMF setting :
  4. Calling DID registered called number with IVR - Mobile phone is calling an international number 902129550330 through Mobile operator and SIP provider. 902129550330 is a registered number in SIP provider. ProSBC registering to this SIP provider (NAP) as a user for this 90212955033 and act as a termination point for this number. Once Mobile phone calling 902129550330, ProSBC detecting this called the number and forward it out, with remapping called number of 13105894010@netg2.restcomm.com to Restcomm platform. This call will also get IVR DTMF acknowledgment for DTMF tones pressed. Same configuration steps as in call flow 3 with addition of ProSBC register to NAP with username and password :
  5. IVR DID full number outside call - PhonerLite sends 'direct call' to ProSBC with called information 1234@52.60.132.155. ProSBC makes a mapping of called number to 13105894010@netg2.restcomm.com before making an outgoing call to Restcomm platform. PhonerLite hears a welcome greeting from Restcomm platform with IVR to ask the caller to press '1', which will enable a separate call back from Restcomm platform. This separate call back is then routed through ProSBC to the SIP provider and Telecom operator and onto an outside number of a Telecobridges office phone number set. Same configuration steps as in call flow 4.

PhonerLite Configuration

This section provides PhonerLite configurations for the solution.

PhonerLite direct call setting

The following section are required to set up the outbound direct call on PhonerLite,

Server setting: All Proxy/Registrar and Domain/Realm are empty

User setting

Network setting

Codecs and DTMF setting

For dial out, we can specify the called number as 1234@52.60.132.155 where 52.60.132.155 is the public Elastic IP used for voip interface in this ProSBC AWS.

ProSBC Configuration

This section provides ProSBC configurations for the solution.

ProSBC Local NAT Traversal setting

ProSBC NAPs setting

ProSBC register to NAP with username and password

  • The following sections need to be set, as in example below,


File:ProSBC register to NAP with username and password.png

  • In this example, ProSBC is behind NAT, so local NAT method is set

ProSBC routes setting

  • See Create a Static Route
    • Here, we set the SIP end points (NAP) to and from as required in each call flow scenario

ProSBC route called remapping

  • The following section needs to be set, and depending what called number remapping required as in each call flow scenario,

File:ProSBC route called remapping.png


References