Table of Contents



Interoperable Vendors



© 2021 Ribbon Communications Operating Company, Inc. © 2021 ECI Telecom Ltd. All rights reserved. The compilation (meaning the collection, arrangement and assembly) of all content on this site is protected by U.S. and international copyright laws and treaty provisions and may not be used, copied, reproduced, modified, published, uploaded, posted, transmitted or distributed in any way, without prior written consent of Ribbon Communications Inc.

The trademarks, logos, service marks, trade names, and trade dress (“look and feel”) on this website, including without limitation the RIBBON and RIBBON logo marks, are protected by applicable US and foreign trademark rights and other proprietary rights and are the property of Ribbon Communications Operating Company, Inc. or its affiliates. Any third-party trademarks, logos, service marks, trade names and trade dress may be the property of their respective owners.  Any uses of the trademarks, logos, service marks, trade names, and trade dress without the prior written consent of Ribbon Communications Operating Company, Inc., its affiliates, or the third parties that own the proprietary rights, are expressly prohibited.

Document Overview

This document outlines the configuration best practices for Virgin Media SIP Trunk involving Ribbon SBC 2000 when deployed with Microsoft Teams. This document also provides the configuration snapshot of the interoperability performed between Ribbon's SBC 2000 and MS Teams.

Scope

This document provides configuration best practices for deploying Ribbon's SBC 2000 with MS Teams and associated clients. Note that these are configuration best practices and each customer may have unique needs and networks. Ribbon recommends that customers work with network design and deployment engineers to establish the network design which best meets their requirements.

The SweLite platform is also supported using version 9.0.4 with MS teams.

Non-Goals

It is not the goal of this document to provide detailed configurations that will meet the requirements of every customer. Use this document as a starting point and build the SBC configurations in consultation with network design and deployment engineers.

Audience

This technical document is intended for telecommunications engineers with the purpose of configuring both the Ribbon SBC 2000 and the MS Teams and associated clients.

Steps will require navigating the third-party product as well as the Ribbon product using graphical user interface (GUI) or command line interface (CLI). An understanding of the basic concepts of TCP/UDP/TLS, IP/Routing, and SIP/RTP/SRTP is needed to complete the configuration and any necessary troubleshooting.

Pre-Requisites

The following aspects are required before proceeding with Ribbon SBC 2000 and MS Teams:

  • MS Teams needs to create users with the correct tenant, add SBC IP in MS Teams, and provide certificates to Ribbon Team.

  • Remote Desktop access to a Windows host is available for installing MS Teams client.

  • Install certificates in Ribbon SBC 2000.

Product and Device Details



Equipment/ProductSoftware Version
Ribbon CommunicationsSBC 2000Version 9.0.4
Third-Party ProductsMS Teams DR

V.2021.8.9.1 i.USWE2.1

MS Teams ClientV1.0
NGT LiteV1.51
VentaFaxV7.3.233.582 I

Network Topology Diagram

Interoperability Test Lab Topology (or Call Flow Diagram)

IOT high-level architecture covering call flows and overall topology is depicted below.

Section-A: SBC 2000 Configuration

Configuring SBC 2000

The following configuration steps provide an example of how to configure the Ribbon SBC 1000/2000 to interoperate with MS Teams and Virgin Media SIP Trunk:

  1. SIP Profile
  2. SIP Server
  3. Media System
  4. Media Profiles
  5. Media List
  6. Remote Authorization Tables
  7. Message Manipulation
  8. Signaling Groups
  9. Transformation
  10. Call Routing Table 
  11. SBC Primary Certificate
  12. Trusted CA Certificates


1. SIP Profile

SIP Profiles control how the Ribbon SBC 1000/2000 communicates with SIP devices. The profiles control important characteristics such as session timers, SIP Header customization, SIP timers, MIME payloads, and option tags. 

Select Settings > SIP > SIP Profiles to access the SIP Profile screen.

The following figures show the default SIP profile used for the Ribbon 1000/2000 used for this configuration.

Virgin Media SIP Profile


MS Teams SIP Profile


Fax SIP Profile

2. SIP Server

SIP Server Tables contain information about the SIP devices connected to the Ribbon SBC 1000/2000. 

Select Settings > SIP > SIP Server Tables to access the SIP Server Tables screen.

The entries in the tables provide information about the IP addresses, ports, and protocols used to communicate with each SIP server. The entries also contain links to counters that are useful for troubleshooting, as shown in the following figures.


Virgin Media SIP Servers


MS Teams SIP Server

Fax SIP Server

3. Media System

The Media System Configuration contains system-wide settings for the Media System. Configuring the media system means setting the number of RTP/RTCP port pairs and the starting port.

Select Settings > Media > Media System Configuration to access the Media System configuration screen.


Media System

4. Media Profiles

Media Profiles specify the individual voice and fax compression codecs and their associated settings for inclusion into a Media List. Different codecs provide varying levels of compression, allowing the reduction of bandwidth requirements at the expense of voice quality. 

Select Settings > Media > Media Profiles. 

The following figures illustrate possible media profiles of the voice codecs used for the SBC 1000/2000.  The examples are for reference only.

Virgin Media Media Profile

MS Teams Media Profile

Fax Media Profile

5. Media List

The Media List shows the selected voice and fax compression codecs and their associated settings. 

 Select Settings > Media > Media List to access the Media List configuration screen.

Virgin Media Media List

MS Teams Media List

Fax Media List

6. Remote Authorization Tables

Remote Authorization Tables and their entries contain information used to respond to request message challenges by an upstream server. The Remote Authorization Tables on this page appear as options in Creating and Modifying Entries in the SIP Servers. (For additional information about Remote Authorization Tables, see the Ribbon online SBC 1000/2000 documentation.)

Select Settings > SIP > Remote Authorization Tables to access the Remote Authorization Tables configuration screen.

Remote Authorization Table

 


7. Message Manipulation

SIP Message Manipulation feature is used by a SIP Signaling Group to manipulate the incoming or outgoing messages. This feature is intended to enhance interoperability with different vendor equipment and applications, and for correcting any fixable protocol errors in SIP messages on a fly without any changes to firmware/software.

The feature's Message Manipulation Engine (MME) manipulates SIP messages to compensate for interoperability issues between different vendor equipment and for dynamically correcting reparable protocol errors in SIP messages. The flows described in this article are message flows and should not be confused with call flows.

Select Settings > Message Manipulation > Message Rule Tables to access the Message Manipulation configuration screen.

  1. MS teams by default adds a Privacy :id. You must create this message manipulation to remove it, and the called can see the calling party number.

Message Manipulation

2. The SBC 2K sent in the BYE message Proxy-Authentication. Virgin Media asked me to remove it. We created the next Message Manipulation.

3. SBC2K needs to send the next PAI to VM: P-Asserted-Identity: <sip:+441183374130@216.110.2.220:5060;user=phone>. Additional we need to remove the next second PAI: P-Asserted-Identity: <sip:prg1teams@interopdomain.com>

8. Signaling Groups

Signaling Groups allow telephony channels for routing and sharing configuration. They are used for 

  • routing calls and selecting Call Routes
  • selecting Tone Tables and Action Sets
  • specifying protocol settings and links to server, media, and mapping tables for SIP

Select Settings > Signaling Groups to access the Signaling Groups configuration screens.


Virgin Media Signaling Group


MS Teams Signaling Group


Fax Signaling Group

9. Transformation

Transformation Tables facilitate the conversion of names, numbers, and other fields when routing a call. For example, transformations can convert a public PSTN number into a private extension number, or a SIP address (URI). Every entry in a Call Routing Table requires a Transformation Table. In addition, the Action Set Table can configure Transformation tables as a reusable pool.

Select Settings > Transformation to access the Transformation configuration screen.

Virgin Media Transformation

MS Teams Transformation


Fax-Tenor Transformation



10. Call Routing Table

Call Routing tables allow you to configure flexible routes for transferring calls between Signaling Groups and for translating the calls. They allow call transfers between ports and protocols, such as ISDN to SIP.  These tables serve as one of the central connection points of the system, linking Transformation Tables, Message Translations, Cause Code Reroute Tables, Media Lists, and the three types of Signaling Groups (ISDN, SIP, and CAS).

Select Settings > Call Routing Table to access the Call Routing Table configuration screen.


Virgin Media Call Routing


MS Teams Routing


Fax Call Routing

11. SBC Primary Certificate

You can change the certificate installed on the SBC Edge system by obtaining the signed certificate from a Trusted CA or from a local Stand-Alone Windows Certificate Authority.

Select Settings > Security > SBC Certificates > SBC Primary Certificate.

SBC Primary Certificate

12. Trusted CA Certificates

A trusted certificate authority issues a Trusted CA Certificate. These certificates are imported to the SBC Edge to establish its authenticity on the network.

Select Settings > Security > SBC Certificates > Trusted CA Certificates.

Trusted CA Certificates


Section-B: MS Teams Configuration

Configuring MS Teams

The following Microsoft Teams configurations are included in this section:

  1. Configuring Microsoft Teams
  2. Obtain IP address and FQDN
  3. Domain Name
  4. Obtain a Certificate
  5. Public Certificate
  6. Configure and Generate Certificates on the SBC
  7. Configure Office 365 Tenant Voice Routing

Configuring Microsoft Teams

Microsoft Teams Direct Routing Configuration

Consult the Microsoft documentation for detailed information on Direct Routing interface configuration guidelines, including the RFC standards and the syntax of SIP messages.

Obtain IP Address and FQDN

The following table provides the requirements for configuring the SBC to support Teams Direct Routing.

Requirement

How it is used

Public IP address of NAT device (must be Static)*

Private IP address of the SBC

Required for SBC Behind the NAT deployment.

Public IP address of SBC

Required for SBC with Public IP deployment.

Public FQDN

The Public FQDN must point to the Public IP Address.


*NAT translates a public IP address to a Private IP address.


Domain Name

For the SBC to pair with Microsoft Teams, the SBC FQDN domain name must match a name registered in both the Domains and DomainUrlMap fields of the Tenant. Follow the steps to verify that the correct domain name is configured for the Tenant:

1. On the Microsoft Teams Tenant side, execute Get-CsTenant.
2. Review the output.
3. Verify that the Domain Name configured is listed in the Domains and DomainUrlMap attributes for the Tenant. If the Domain Name is incorrect or missing, the SBC will not pair with Microsoft Teams.

You can configure users from any SIP domain registered for the tenant. For example, you can configure user user@example.com with the SBC FQDN name sbc2.examplevoice.com, as long as both names are registered for the tenant.

Domain Name

Use for SBC FQDN

FQDN names - Examples

IPv4 Address

rbbn.com

Valid names:

sbc1.rbbn.com

203.0.113.100


rbbnvoice.com

Valid names:

·       sbc2.rbbnvoice.com

·       emea.rbbnvoice.com

·       apac.rbbnvoice.com

Non-Valid name;

sbc2.emea.rbbnvoice.com

(This requires registering domain name emea.rbbnvoice.com in “Domains” first.)



Configure Domain Names - Example


Obtain a Certificate

Public Certificate


Make sure the certificate is issued by one of the supported certification authorities (CAs). Note that wildcard certificates are supported.

• Refer to Microsoft documentation for the supported CAs.
• Refer to Domain Name for certificate Common name formats.

Configure and Generate Certificates on the SBC

Microsoft Teams Direct Routing allows only TLS connections from the SBC for SIP traffic with a certificate signed by one of the trusted certification authorities.

Follow the steps to request a certificate for the SBC External interface and configure it based on the example using the GlobalSign:

  • Generate a Certificate Signing Request (CSR) and obtain the certificate from a supported Certification Authority.
  • Import the Public CA Root/Intermediate Certificate on the SBC.
  • Import the Microsoft CA Certificate on the SBC.
  • Import the SBC Certificate.

You can obtain the certificate through the Certificate Signing Request (see the following instructions). You can obtain the Trusted Root and Intermediary Signing Certificates from your certification authority.

Configure Office 365 Tenant Voice Routing

A Tenant is used within the Microsoft environment as a single independent enterprise that has subscribed to Office 365 services. Through this tenant, administrators can manage projects, users, and roles. Perform the following steps to configure the Tenant. For details on accessing the Tenant, refer to Microsoft Teams Documentation.

  1. Create Online PSTN Gateway that points to the SBC:
    1.  Enter the SBC FQDN (Example below: sbc1.rbbn.com).  Be sure to configure the FQDN for the Tenant in both the Domains and the DomainUrlMap fields.
    2.  Enter the SBC SIP Port (Example below - SipPort5061).

      New-CsOnlinePSTNGateway -Fqdn sbc1.rbbn.com -SipSignallingPort SipPort5061 -MaxConcurrentSessions <Max Concurrent Session which SBC capable handling> -Enabled $true
  2. Configure Teams usage for the user:
    1. Enter the User Identity (Example below: -user1@domain.com)
Get-CsOnlineUser -Identity user1@domain.com Set-CsUser -Identity user1@domain.com -EnterpriseVoiceEnabled $true -HostedVoiceMail $true -OnPremLineURI tel:+10001001008

Grant-CsOnlineVoiceRoutingPolicy -PolicyName "GeneralVRP" -Identity user1@domain.com

Grant-CsTeamsCallingPolicy -PolicyName AllowCalling -Identity user1@domain.com

Grant-CsTeamsUpgradePolicy -PolicyName UpgradeToTeams -Identity user1@domain.com

Supplementary Services and Features Coverage

The following checklist identifies the set of supplementary services/features covered through the configuration defined in this Interop document. 

Interoperability Compliance Test Results

Test NumberTest ScenarioSetup / Test ResultsCoverage
IOP1Vendor's eSBC response to SIP OPTIONS messages from SBCthe 

No calls are required for this test. SIP trace to be captured for approx 60 seconds and checked for correct signaling.

For each Vendors eSBC, the Vendors SBC periodically sends an OPTIONS request to the vendor's eSBC to check if its SIP stack is reachable. If a SIP response 200 OK is received from the IP-PBX, the SIP trunk is placed (or remains) in an In-Service state.

Example: OPTIONS sip:ping@<ip-pbx_IP_Addr>:5060 SIP/2.0

IOP2SBC response to SIP OPTIONS messages from Vendors eSBCNo calls are required for this test. SIP trace to be captured for approx 60 seconds (depending on the agreement) and checked for correct signaling.

Vendor's eSBC setup for Solution IP.Addr Mode
eSBC is configured to send the OPTIONS messages to the SBC periodically. The SBC responds with SIP response 200OK -
Example: "OPTIONS sip:ping@192.168.1.10:5060 SIP/2.0"

Check that the eSBC can simultaneously send SIP OPTIONS messages to both the solution SBC addresses.

IOP4Basic test call from IP-PBX to PSTN line through SBC-A (using SBC-A IPV4 ip address).The IP-PBX line initiates a call. The call is answered. The IP-PBX line terminates the call.

Vendor's eSBC setup for Solution IP.Addr Mode
The IP-PBX initiates a call; an Invite is seen from the eSBC to the SBC-A; proxy authentication challenge is returned to the eSBC; a re-invite with correct credentials is received from the  eSBC; and the call progresses as expected.
Example:
Request-Line: INVITE sip:<B-party>@<SBC-A ip.addr TBD>:5060 SIP/2.0
To: sip:<B-Party>@<SBC-A ip.addr TBD>

Check the Wireshark trace and confirm that G.711 A law codec with 10 or 20ms packetization is being used.
Verify that the INVITE contains the Session-Expires header, and its syntax is correct. Check that the Supported Header supports the 'timer'. Ensure the response in 200 OK is compatible with the INVITE. Verify that the Required Header contains the 'timer'. (See IOP9).

IOP5Basic test call from IP-PBX to PSTN line through SBC-B (using SBC-B IPV4 ip address)

The IP-PBX line initiates call, Call is answered, the IP-PBX line terminates call.

Vendor's eSBC setup for Solution IP.Addr Mode
Call from the IP-PBX. Invite seen from eSBC to SBC-B, proxy authentication challenge returned to eSBC, re-invite with correct credentials from eSBC and call progresses as expected.

Example:
Request-Line: INVITE sip:<B-party>@<SBC-B ip.addr TBD>:5060 SIP/2.0
To: sip:<B-Party>@<SBC-B ip.addr TBD>

Check the Wireshark trace and confirm that G.711 A law codec with 10 or 20ms packetization is being used.
Verify that the INVITE contains the Session-Expires header, and its syntax is correct. Check that the Supported Header supports the 'timer'. Ensure the response in 200 OK is compatible with the INVITE. Verify that the Required Header contains the 'timer'. (See IOP9).

IOP7bCalled Number format - Vendors eSBC to soft switch number normalisation - Global Dial Plan

Test eSBC capability to send the called number in  one of the following Global number formats (user part of  Request & To URIs).

0yyyyyyyyyy (where y refers to any number, calling party = national)
+44yyyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)
Configure the Vendor's SBC for Global calling plan.

The IP-PBX line initiates call to PSTN line, Call is answered.
The IP-PBX line terminates call.

Configure the Vendor's eSBC to present the called number in the user part of the Request & To URIs and sent in one of the following formats:

0yyyyyyyyyy (where y refers to any number, calling party = national)
+44yyyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)

IOP8bCalling Number format - Vendors eSBC to soft switch number normalisation - Global Dial Plan

Test eSBC capability to send calling number in one of the following Global number formats (user part of FROM & PAI URIs).

0yyyyyyyyyy (where y refers to any number, calling party = national)
+44yyyyyyyyyy (where y refers to any number, calling party = national)
00yyyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)
Configure the Vendor's SBC for Global calling plan.

The IP-PBX line initiates call to PSTN line, Call is answered.
The IP-PBX terminates call.

Configure the Vendor's eSBC to present the calling number in the user part of the From & PAI URIs to be sent in the one of the following formats:

0yyyyyyyyyy (where y refers to any number, calling party = national)
+44yyyyyyyyyy (where y refers to any number, calling party = national)
00yyyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)

IOP9bCalled Number format - soft switch to eSBC number normalisation - Global Dial Plan

Test eSBC capability of accepting the called number in one of the following Global number formats (user part of Request & To URIs).

+44yyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)
Configure the Vendor's SBC for Global calling plan.

The PSTN line initiates call to the IP-PBX line, Call is answered.
The PSTN line terminates call.

Configure the Vendor's eSBC to accept the called number in the user part of the Request & To URIs in one of the following formats:

+44yyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)

Also check to see that the INVITE contains Session-Expires header and that it is syntactically correct. Check for Supported Header and ensure the 'timer' is supported. Ensure the response in 200 OK is compatible with the INVITE and check for Required Header and if it contains 'timer'.

IOP10bCalling Number format - soft switch to eSBC number normalisation - Global Dial Plan

Test eSBC capability of accepting the calling number in one of the following Global number formats (user part of FROM & PAI URIs).  

+44yyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)
Configure the Vendor's SBC for Global calling plan.

The PSTN line initiates call to the IP-PBX line, Call is answered.
The PSTN line terminates call.

Configure the Vendor's eSBC to accept the calling number in the user part of the Request & To URIs in one of the following formats:

+44yyyyyyyyy (where y refers to any number, calling party = national)
+yyyyyyyyy (where y refers to any number, calling party = international)
yyyyyyyyyy (where y refers to any number, calling party = unknown)

IOP11Emergency Call Handling -IP-PBX Line to PSTN - UK Emergency call 999

The IP-PBX initiates a call to the Emergency services using 999. The call is answered.
Either party terminates the call.

Example:
Request-Line: INVITE sip:999@<SBC-A ip.addr TBD>:5060 SIP/2.0
To: <sip:999@<SBC-A ip.addr TBD>>
From: <sip:<A-party>@<IP-PBX IP.Addr>

IOP12Emergency Call Handling -IP-PBX Line to PSTN - UK Emergency call 112

Call made from the IP-PBX line to the Emergency services using 112. Call answered,
Either party terminates call.

Example:
Request-Line: INVITE sip:112@<SBC-A ip.addr TBD>:5060 SIP/2.0
To: <sip:112@<SBC-A ip.addr TBD>>
From: <sip:<A-party>@<IP-PBX IP.Addr>

IOP13Emergency Call Handling -IP-PBX Line to PSTN - UK Emergency call 18000 - Text Direct

Call made from the IP-PBX line using a text direct set to the Emergency services using 18000. Call answered.
Either party terminates call.

Example:
Request-Line: INVITE sip:18000@<SBC-A ip.addr TBD>:5060 SIP/2.0
To: <sip:18000@<SBC-A ip.addr TBD>>
From: <sip:<A-party>@<IP-PBX IP.Addr>

IOP14IP-PBX Line to PSTN - call answer - Originator disconnectCall made from the IP-PBX line to PSTN line, Answer Call.
The IP-PBX line terminates call.

IOP15IP-PBX Line to PSTN - call answer - Terminator disconnectCall made from the IP-PBX line to PSTN line, Answer Call.
The PSTN line terminates call

IOP16IP-PBX Line to PSTN - Busy subscriberCall made from the IP-PBX line to a busy PSTN line (without divert on busy)
Wait for the soft switch to return the busy response. Ensure that the Vendor's eSBC does not recurse. Set up the call via secondary SIP trunk.

IOP17IP-PBX Line to PSTN - No answer timeout testCall made from the IP-PBX line to a PSTN line (without divert on no answer)
Do not answer call.
Wait for soft switch to return no answer timeout response. Ensure that Vendor's eSBC does not recurse and setup call via secondary SIP trunk.

 with Caveat

IOP18IP-PBX Line to PSTN - Subscriber not reachableCall made from the IP-PBX line to an invalid number.
Wait for soft switch to return response. Ensure that Vendor's eSBC does not recurse and setup call via secondary SIP trunk.

IOP19PSTN Line to IP-PBX - call answer - Originator disconnect. Call made from a PSTN line to an IP-PBX line, Answer Call.
The Originator disconnects the call.

IOP20PSTN Line to IP-PBX - call answer - Terminator disconnectCall made from a PSTN line to an IP-PBX line, Answer Call.
The IP-PBX line terminates call.

IOP23PSTN Line to IP-PBX - subscriber not reachableCall made from a PSTN line to an invalid number/unprogrammed DDI on the IP-PBX.
Wait for the IP-PBX to return response.

IOP24Verify CLIP service on IP-PBX line (incoming call from PSTN) Call made from a PSTN line to IP-PBX line. The PSTN line is set to allow the CLI presentation.
Check that the CLI is delivered as expected.
Either party terminates call.

IOP25Verify CLIR service on IP-PBX line (incoming call from PSTN)Call made from a PSTN line to IP-PBX line. The PSTN line is set to restrict the CLI presentation.
Check that the CLI is not delivered as expected.
Either party terminates call.

IOP26Verify CLIP service on PSTN line (outgoing call from IP-PBX, From)Ensure the number used in the From header is agreed with the Virgin Media and entered into the soft switch database for screening.

Call made from an IP-PBX line to a PSTN line.
Ensure that the Vendor's eSBC is configured such that the IP-PBX line sends the From header containing the Calling Line ID (CLI) in the INVITE.

Ensure that the Vendor's eSBC allows presentation of its the CLI using the privacy-header (Privacy: none or privacy-header not present).

Ensure that the expected CLI is presented to the PSTN line.
Either party terminates call.

IOP27Verify CLIP service on PSTN line (outgoing call from IP-PBX, PAI/PPI)Ensure the number used in PAI/PPI header is agreed with the Virgin Media and entered into the soft switch database for screening.

Call made from an IP-PBX line to a PSTN line.
Ensure that the Vendor's eSBC is configured such that the IP-PBX line sends PAI/PPI header containing Calling Line ID (CLI) in the INVITE.
If the PAI header is populated, use it in preference to the From header.
Ensure that the Vendor's eSBC allows the presentation of its the CLI using the privacy-header (Privacy: none or privacy-header not present).

Ensure that the expected CLI is presented to the PSTN line.
Either party terminates call.

IOP28Verify CLIR service on PSTN line (outgoing call from IP-PBX)

Ensure the number used in From/PAI header is agreed with the Virgin Media and entered into the soft switch database for screening.

Call made from an IP-PBX line to a PSTN line.
Ensure that the Vendor's eSBC is configured such that the IP-PBX line sends the From and/or PAI header, containing either the Calling Line ID or obscured information in the INVITE.

Example:
From: "user751000" <sip:+441256751000@192.168.1.10>;tag=12345
From: "Anonymous" <sip:anonymous@anonymous.invalid>;tag=12345

Ensure that the Vendor's eSBC restricts the presentation of its the CLI using the privacy-header (Privacy: id or Privacy: user or Privacy: user;id).

Ensure that the CLI is NOT presented to the PSTN line.
Either party terminates call.

IOP29Verify Call Forward Immediate (unconditional) on a IP-PBX line (Incoming call from PSTN, call forward terminates within IP-PBX)Initiate a call from a PSTN line to an IP-PBX line, forwarding the call to a line within the same IP-PBX, Answer Call.
Either party terminates call.

Does the IP-PBX has configuration settings to send the SIP status 181 messages to the soft switch?

IOP30Verify Call Forward Immediate (unconditional) on a IP-PBX line (Incoming call from PSTN, call forward terminates PSTN)Initiate a call from a PSTN line to an IP-PBX line, forwarding the call to a line in the PSTN, Answer Call.
Either party terminates call.

IOP31Verify Call Forward Busy on IP-PBX line (Incoming call from PSTN, call forward terminates within IP-PBX)Initiate a call from a PSTN line to an IP-PBX line, with Call Forward Busy (or equivalent) to a line within the IP-PBX, Answer Call.
Either party terminates call.

IOP32Verify Call Forward No-answer on IP-PBX line (Incoming call from PSTN, call forward terminates within IP-PBX)Initiate a call from a PSTN line to an IP-PBX line with Call Forward No-answer (or equivalent) to a line within the IP-PBX, Answer Call.
Either party terminates call.

IOP33Verify Call Hold Service on IP-PBX (Incoming call from PSTN)Initiate a call from a PSTN line to an IP-PBX line with Call on Hold, Answer call.
The IP-PBX line puts the call on hold.
Leave the call on hold for 30 seconds and then retrieve the call. Ensure the speech path is re-established in both directions.
Either party terminates call.

IOP34Verify 3-party conference service on IP-PBX (Incoming call from PSTN, 3rd party within IP-PBX)Initiate a call from a PSTN line to an IP-PBX line with a 3-party conference, Answer call.
The IP-PBX line uses the 3-party conference facility to put the PSTN line on hold while dialing the 3rd party (another IP-PBX line).
Once the 3rd party has answered the call, place the 3 parties in a conference.
Ensure that all parties have a two-way speech path.
Keep the speech path open for at least 20 seconds.
Either party terminates call.

IOP35Verify 3-party conference service on IP-PBX (Incoming call from PSTN, 3rd party PSTN)Initiate a call from a PSTN line to an IP-PBX line with a 3-party conference, Answer call.
The IP-PBX line uses the 3-party conference facility to put the PSTN line on hold whilst dialling 3rd party (another PSTN line).
Once the 3rd party has answered the call, place the 3 parties in a conference.
Ensure that all parties have a two-way speech path.
Keep the speech path open for at least 20 seconds.
Either party terminates call.

IOP36Verify do-not-disturb service on IP-PBX line (Incoming call from PSTN)Initiate a call from a PSTN line to an IP-PBX line with the do-not-disturb feature active. Ensure the IP-PBX line does not ring.
The PSTN line receives an appropriate announcement or tone.

Record the SIP status received from the IP-PBX.

IOP37Verify Call park service on IP-PBX line (Incoming call from PSTN)Initiate a call from a PSTN line to IP-PBX line A with the Call Park (or equivalent) feature active. Answer the call.
Place the call in the Park condition.
After 10 seconds, retrieve the call from the IP-PBX line B, using the Call Park pick-up code.
Ensure the speech path is re-established in both directions.
Either party terminates the call.

IOP38Verify Call Waiting on an IP-PBX line, involving a PSTN lineInitiate a call from a PSTN line A to an IP-PBX line with Call Waiting active, Answer call.
Initiate a call from a PSTN line B to the same IP-PBX line, which receives an indication that a second call is waiting.
The PSTN line B receives the ringback tone.
The IP-PBX line answers the call from PSTN line B.
The PSTN line A should receive an appropriate indication that they are now on hold.
The IP-PBX line toggles the call back to the PSTN line A.
Ensure the speech path is re-established in both directions, and that PSTN line B received an indication that they are now on hold.
Either party terminates call.

IOP39Verify DTMF transmission from/to IP-PBX - InbandConfigure the IP-PBX/eSBC to send DTMF transmission in-band.

Call made from the IP-PBX line to a PSTN line, Answer call.
The PSTN line presses each of the keys on the number pad in turn. Note the far-end experience.
The IP-PBX line presses each of the keys on the number pad in turn. Note the far-end experience.

Did the received DTMF tone reflect the length of time the key was pressed?

IOP40Verify DTMF transmission from/to IP-PBX - RFC 2833 - telephone-event Configure the IP-PBX/eSBC to send DTMF transmission using RFC 2833 - telephone-event.

Call made from IP-PBX line to a PSTN line, Answer call.
The PSTN line presses each of the keys on the number pad in turn. Note the far-end experience.
The IP-PBX line presses each of the keys on the number pad in turn. Note the far-end experience.

Did the received DTMF tone reflective the length of time the key was pressed?

IOP41T.38 Fax transmission mode - PSTN to IP-PBX originationConfigure the ATA/IP-PBX/eSBC such that the Fax transmission is sent using the T.38 Version 0 Fax transmission mode.
Call made from PSTN line to an IP-PBX line, Answer call.
Fax transmission is completed, and the call is terminated by either of the end terminal devices.

Ensure the Wireshark trace shows that the T.38 Fax Transmission is used. Check that the fax is transmitted and received as expected.

IOP42T.38 Fax transmission mode - IP-PBX to PSTN originationConfigure the ATA/IP-PBX/eSBC such that the Fax transmission is sent using the T.38 Version 0 Fax transmission mode.
Call made from the IP-PBX line to a PSTN line, Answer call.
Fax transmission is completed, and call is terminated by either of the end terminal devices.

Ensure the Wireshark trace shows that the T.38 Fax Transmission is used. Check that the fax is transmitted and received as expected.

IOP43In-band G.711 Fax transmission mode - PSTN to IP-PBX originationConfigure the ATA/IP-PBX/eSBC such that Fax transmission is sent using in-band G.711 Fax transmission mode.
Call made from the PSTN line to an IP-PBX line, Answer call.
Fax transmission is completed and call is terminated by either of the end terminal devices

Ensure Wireshark trace shows that  in-band G.711 Fax Transmission is used. Check that the fax is transmitted and received as expected.

IOP44In-band G.711 Fax transmission mode - IP-PBX to PSTN originationConfigure the ATA/IP-PBX/eSBC such that Fax transmission is sent using  in-band G.711 Fax transmission mode.
Call made from the IP-PBX line to a PSTN line, Answer call.
Fax transmission is completed and call is terminated by either of the end terminal devices

Ensure Wireshark trace shows that  in-band G.711  Fax Transmission is used. Check that the fax is transmitted and received as expected.

IOP45Test of Call in progress audit function - response to in-call OPTIONS from soft switch to eSBC.Initiate a call from an IP-PBX line to a PSTN line. Answer the call.
Leave the two parties in conversation for 10 minutes.
Ensure both parties have two-way speech.
Either party terminates the call.

Check wireshark trace to ensure that in-call OPTIONS are sent by the soft switch and that the eSBC responds with status 200OK. Check to see if the eSBC sends any in-call audit SIP messages.

IOP46Test of 4 simultaneous calls, 2 inbound, 2 outbound callsConfigure the Vendor's eSBC such that successive calls route to alternate Vendor's SBCs (round robin, cyclic, and so on).
Make 4 simultaneous calls: 2 inbound and 2 outbound calls. Answer the calls and ensure two-way speech path is established for each call. 

IOP47Test of eSBC endpoint restart-recoveryRestart the Vendor's eSBC and ensure that, after recovery, inbound and outbound calls are successful.

IOP48Test of eSBC loss of Ethernet link and reconnectionRemove the Ethernet link between the Vendor's eSBC and Vendor's CE router. Leave in this condition for at least 3 minutes. Reconnect the Ethernet link and ensure that after approximately 2 minutes inbound and outbound calls are successful.

IOP49Test of Primary SBC loss ** Contact MSL engineer to carry out the following **
On the Primary Vendors SBC, carry out the ALLSTOP command to disable the Vendor's SBC.

Call made from theIP-PBX line to a PSTN Line.
Call should attempt to route to the Primary SBC. On a non-response to an INVITE, the eSBC re-routes the call to the Secondary SBC.
Wait for call answer.
Either party terminates call.

** Contact MSL engineer to carry out the following **
Restart the Primary SBC.

IOP51Test of verify call forward Internal Busy

Additional test to cover when vendors are using Microsoft Skype for Business 2015.

The PBX Subscriber 1 makes a call to another PBX Subscriber 2 so that PSTN to call PBX subscriber 1 is Busy.

The PSTN calls PBX user 1. The call should automatically go to voicemail after 10 seconds when forwarding is off.

VM is on another PBX Internal Line call should go to Voice Mail.

If voicemail PSTN to listen VM announcement if another PBX user check speech is clear in both directions.

If forwarded to voicemail PSTN terminated call after hearing VM announcement.

If forwarded to another user another either party terminate the call after checking speech is clear in both directions.

IOP52Test of Call forward internal on No Answer

Additional test to cover when vendors is using Microsoft Skype for Business 2015

PSTN call PBX user 1. PBX User 1 not to answer the call

The call should automatically go to voicemail (VM) which is in another internal PBX line if call forwarding is turned off.

Call automatically goes to voicemail after 10 seconds

PSTN terminated call after hearing VM announcement.

If forwarded is ON call is forwarded to another PBX user internal

Check speech quality, terminate the call after checking speech is clear in both directions

Not executed

IOP53Test Call from PBX to PSTN
  1. Vendors eSBC to be configured to offer T.38 in addition to G711A-law and G711-U law
  2. Call made from the PBX to the PSTN
  3. Call to be established and two dialog for 10 minutes.
  4. Check Wireshark output. You should not see T.38 being reflected in the protocol column after call having been established for 7 minutes.
  5. If T.38 is reflected in the protocol column make a note of this.


Legend

Supported

Not Supported

Caveats

The following items should be noted in relation to this Interop document. These are either limitations, untested elements, or useful information pertaining to the Interoperability.

  • IOP 17 - IP-PBX Line to PSTN - No answer timeout test. Ribbon SBC sent the call to second Virgin Media SBC, after the first Virgin Media SBC didn't answer, after that, the SBC sent "user not available" to MS Teams.

Support

For any support related queries about this guide, please contact your local Ribbon representative, or use the details below:

References

For detailed information about Ribbon products & solutions, please visit:

https://ribboncommunications.com/products

Conclusion

This Interoperability document describes a successful configuration and interop involving Ribbon SBC 2000 and MS Teams.

The SweLite platform is also supported using version 9.0.4 with MS teams.

All features and capabilities tested are detailed within this document. Any limitations, notes or observations are also recorded to provide the reader with an accurate understanding of what has been covered, and what has not.

Configuration guidance is provided to enable the reader to replicate the same base setup - there may be additional configuration changes required to suit the exact deployment environment.


© 2021 Ribbon Communications Operating Company, Inc. © 2021 ECI Telecom Ltd. All rights reserved.