Ribbon Documentation Portal will be unavailable Thursday February 2nd 2023 between 2:00 PM EST ~ 12:00 PM. More Info
Page tree
Skip to end of metadata
Go to start of metadata

In this article:

Tip

The configuration steps described in this article are examples.

Ribbon recommends referring to the SBC and PSX product documentation for detailed information on the commands, parameters, and flags used in the configuration examples of this guide.

Process the steps in the same order as described in this article.

Note

This article is OPTIONAL; skip this article if you use external PSX for routing.

For implementing CAC with ERE routing, refer to Configure Call Admission Control Profile.


This article describes configuring the SBC for basic ERE or Advanced ERE routing.

LRBT Profile

  1. Create a Local Ring Back Tone (LRBT) profile that is attached to the Teams side and the PSTN side.
  2. If DSP cards/licenses are not available, set the flag announcementBasedTones to enable. Ensure that you execute the configuration described in the section "Ring Back Tone (without DSP)" of the page Common SBC Configuration.
  3. Enable Dynamic LRBT. 
% set profiles media toneAndAnnouncementProfile LRBT_PROF
% commit

% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone flags announcementBasedTones enable
% commit

% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone signalingTonePackageState enable 
% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone precedence lower
% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone makeInbandToneAvailable enable
% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone flags useThisLrbtForEgress enable
% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone flags useThisLrbtForIngress enable
% set profiles media toneAndAnnouncementProfile LRBT_PROF localRingBackTone flags dynamicLRBT enable
% commit


Codec Entry

Create a Codec Entry with the supported codec and packet size of 20.

Note

As Teams supports comfort noise, use G711SS-DEFAULT in the Packet Service Profile.

% set profiles media codecEntry G711SS-DEFAULT dtmf relay rfc2833
% set profiles media codecEntry G711SS-DEFAULT packetSize 20
% commit
Note

To play RBT without DSP cards/licenses, use G711U instead of using the Silence Suppression codec. 


Element Routing Priority

 Create an Element Routing Priority profile by assigning the highest priority to the 'Entity Type' Trunk Group for all required Call Types.

% set profiles callRouting elementRoutingPriority TEAMS entry _private 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry nationalOperator 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry localOperator 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry nationalType 1 entityType trunkGroup
% set profiles callRouting elementRoutingPriority TEAMS entry nationalType 2 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry internationalType 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry internationalOperator 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry longDistanceOperator 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry ipVpnService 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry test 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry transit 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry otherCarrierChosen 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry carrierCutThrough 1 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry userName 1 entityType trunkGroup
% set profiles callRouting elementRoutingPriority TEAMS entry userName 2 entityType none
% set profiles callRouting elementRoutingPriority TEAMS entry mobile 1 entityType none
% commit

DM/PM Criteria

Note

Configurations in this section apply only to Advanced ERE deployments. Skip this section if you are using single-tenant deployment using basic ERE.

Create the DM/PM Criteria based on the tenant's number prefix. In the following example, the "TEAMS_TENANT_A" profile is created to match the called number "2414445".

% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A criteriaType digit
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitType calledNumber
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A parameterPresenceCheck exists
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria egressFlag value send
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria egressFlag operation ignore
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria digitMatch value startDigitPosition 0
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria digitMatch value numberOfDigits 7
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria digitMatch value matchValue 2414445
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria digitMatch operation equals
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria natureOfAddress value 950
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria natureOfAddress operation ignore
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria numberingPlanIndicator value data
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria numberingPlanIndicator operation ignore
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria numberLength value 0
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria numberLength operation ignore
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria presentationMatch value none
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria presentationMatch operation ignore
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria screeningMatch value none
% set profiles digitParameterHandling dmPmCriteria TEAMS_TENET_A digitCriteria screeningMatch operation ignore
% commit
Note

Repeat this criterion for all prefix types.

DM/PM Rule

Note

Configurations in this section apply only to Advanced ERE deployments. Skip this section if you are using single-tenant deployment using basic ERE.

Create a DM/PM rule, and attach the Criteria created under DM/PM Criteria. If the value matches, the SBC puts the tenant's FQDN in the "From" header ("A.abc.example.com", in this case).

% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 criteria TEAMS_TENET_A
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 ruleType uri
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation uriType callingUri
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation uriParameterManipulation userParameter none
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation uriParameterManipulation scheme none
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation uriParameterManipulation username none
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation uriParameterManipulation presentation none
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation startCharacterPosition 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation numberOfCharacters 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation userinfoLength noInput
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation replacement type constant
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation replacement characterString callingNumber
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation replacement startCharacterPosition 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation replacement numberOfCharacters 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation userInfoManipulation replacement value ""
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation portNumber noChange
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation startCharacterPosition 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation numberOfCharacters 64
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation replacement type constant
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation replacement characterString none
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation replacement startCharacterPosition 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation replacement numberOfCharacters 0
% set profiles digitParameterHandling dmPmRule TEAMS_TENET_A_MOD subRule 0 uriParameterManipulation hostPortManipulation replacement value A.abc.example.com
% commit
Note

Repeat this rule for all required tenants by increasing the "subRule <id>".

Packet Service Profile (PSP)

Create a Packet Service Profile (PSP) for the Teams side. The PSP is specified within the SIP Trunk Group configuration.

% set profiles media packetServiceProfile TEAMS_PSP
% set profiles media packetServiceProfile TEAMS_PSP codec codecEntry1 G711SS-DEFAULT
% set profiles media packetServiceProfile TEAMS_PSP rtcpOptions rtcp enable terminationForPassthrough enable
% set profiles media packetServiceProfile TEAMS_PSP preferredRtpPayloadTypeForDtmfRelay 101
% set profiles media packetServiceProfile TEAMS_PSP silenceInsertionDescriptor g711SidRtpPayloadType 13 heartbeat enable
% set profiles media packetServiceProfile TEAMS_PSP secureRtpRtcp flags enableSrtp enable
% set profiles media packetServiceProfile TEAMS_PSP secureRtpRtcp flags allowFallback enable
% set profiles media packetServiceProfile TEAMS_PSP secureRtpRtcp cryptoSuiteProfile DEFAULT
% commit

Media Bypass - RTCP-Mux Configuration

% set profiles media packetServiceProfile TEAMS_PSP rtcpOptions rtcp enable
% commit
% set profiles media packetServiceProfile TEAMS_PSP rtcpOptions rtcpMux enable
% commit

IP Signaling Profile

Create an IP Signaling Profile (IPSP) for the Teams side. The IPSP is specified within the SIP trunk group configuration.

% set profiles signaling ipSignalingProfile TEAMS_IPSP ipProtocolType sipOnly
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags includeReasonHeader enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags includeTransportTypeInContactHeader enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags routeUsingRecvdFqdn enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags sendPtimeInSdp enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags sendRtcpPortInSdp enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags storePChargingVector enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags publishIPInHoldSDP enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes relayFlags statusCode4xx6xx enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags minimizeRelayingOfMediaChangesFromOtherCallLegAll enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes flags relayDataPathModeChangeFromOtherCallLeg enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP commonIpAttributes optionTagInRequireHeader suppressReplaceTag enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes numberGlobalizationProfile DEFAULT_IP
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes flags disable2806Compliance enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes domainName useIpSignalingPeerDomainInRequestUri enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes domainName useSipDomainInPAIHeader enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes domainName useSipDomainNameInFromField enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes domainName useZoneLevelDomainNameInContact enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes privacy transparency disable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes privacy privacyInformation pPreferredId
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes privacy flags includePrivacy enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes privacy flags privacyRequiredByProxy disable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes privacy flags msLyncPrivacySupport enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes redirect flags forceRequeryForRedirection enable
% set profiles signaling ipSignalingProfile TEAMS_IPSP egressIpAttributes transport type1 tlsOverTcp 
% set profiles signaling ipSignalingProfile TEAMS_IPSP ingressIpAttributes flags sendSdpIn200OkIf18xReliable enable
% commit

SIP Trunk Group towards Teams

Configure the SIP Trunk Group with additional configurations like LRBT, ERP, DM/PM Rule, PSP, and IPSP created in the previous steps.

    MultiExcerpt named '_ms_teams_guide_sipTG_block_letters' was not found
The multiexcerpt named '_ms_teams_guide_sipTG_block_letters' was not found. Please check the page name and MultiExcerpt name used in the MultiExcerpt Include macro.

Note

For Single Tenant deployment using basic ERE, skip the configuration of "digitParameterHandling egressDmPmRule" in the example below.

This configuration applies only to Advanced ERE routing.


% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG mode outOfService state disabled
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy carrier 0000
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy country 1
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy localizationVariant northAmerica
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy tgIPVersionPreference both-ipv4-and-ipv6
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy preferredIdentity disable
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy digitParameterHandling numberingPlan NANP_ACCESS
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy callRouting elementRoutingPriority TEAMS
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy media packetServiceProfile TEAMS_PSP
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy media toneAndAnnouncementProfile LRBT_PROF
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy services classOfService DEFAULT_IP
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy signaling ipSignalingProfile TEAMS_IPSP
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy featureControlProfile DEFAULT_IP
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy digitParameterHandling egressDmPmRule TEAMS_TENET_A_MOD
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG policy sipDomain SIP.PSTNHUB.MICROSOFT.COM
% set addressContext default zone TEAMS_ZONE sipTrunkGroup TEAMS_TG mode inService state enabled
% commit

Routing Label for Teams

Add Routing Labels for Teams Trunk Groups. IP Peers are defined in Common SBC Configuration.

% set global callRouting routingLabel TEAMS_RL overflowNumber ""
% set global callRouting routingLabel TEAMS_RL overflowNOA none
% set global callRouting routingLabel TEAMS_RL overflowNPI none
% set global callRouting routingLabel TEAMS_RL routePrioritizationType sequence
% set global callRouting routingLabel TEAMS_RL action routes
% set global callRouting routingLabel TEAMS_RL numRoutesPerCall 10
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 routeType trunkGroup
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 trunkGroup TEAMS_TG
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 ipPeer TEAMS_PEER1
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 proportion 0
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 cost 1000000
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 inService inService
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 1 testing normal
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 routeType trunkGroup
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 trunkGroup TEAMS_TG
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 ipPeer TEAMS_PEER2
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 proportion 0
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 cost 1000000
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 inService inService
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 2 testing normal
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 routeType trunkGroup
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 trunkGroup TEAMS_TG
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 ipPeer TEAMS_PEER3
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 proportion 0
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 cost 1000000
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 inService inService
% set global callRouting routingLabel TEAMS_RL routingLabelRoute 3 testing normal
% commit

Packet Service Profile towards PSTN

Create a Packet Service Profile for PSTN, and attach it to the PSTN Trunk Group.

% set profiles media packetServiceProfile PSTN_PSP rtcpOptions rtcp disable
% set profiles media packetServiceProfile PSTN_PSP peerAbsenceAction none
% set profiles media packetServiceProfile PSTN_PSP silenceInsertionDescriptor g711SidRtpPayloadType 13
% set profiles media packetServiceProfile PSTN_PSP silenceInsertionDescriptor heartbeat enable
% set profiles media packetServiceProfile PSTN_PSP aal1PayloadSize 47
% set profiles media packetServiceProfile PSTN_PSP codec codecEntry1 G711SS-DEFAULT
% set profiles media packetServiceProfile PSTN_PSP packetToPacketControl transcode conditional
% set profiles media packetServiceProfile PSTN_PSP packetToPacketControl codecsAllowedForTranscoding thisLeg ""
% set profiles media packetServiceProfile PSTN_PSP packetToPacketControl codecsAllowedForTranscoding otherLeg ""
% set profiles media packetServiceProfile PSTN_PSP flags digitDetectSendEnabled disable
% set profiles media packetServiceProfile PSTN_PSP flags useDirectMedia disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags allowFallback disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags enableSrtp disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags resetROCOnKeyChange disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags resetEncDecROCOnDecKeyChange disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags updateCryptoKeysOnModify disable
% set profiles media packetServiceProfile PSTN_PSP secureRtpRtcp flags allowPassthru disable
% set profiles media packetServiceProfile PSTN_PSP preferredRtpPayloadTypeForDtmfRelay 101
% set profiles media packetServiceProfile PSTN_PSP honorRemotePrecedence disable
% set profiles media packetServiceProfile PSTN_PSP sendRoutePSPPrecedence disable
% commit

IP Signaling Profile (IPSP) towards PSTN

Create an IP Signaling Profile for the Teams side. The IPSP is specified within the SIP Trunk Group configuration.

% set profiles signaling ipSignalingProfile PSTN_IPSP ipProtocolType sipOnly
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags includeReasonHeader enable
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags includeTransportTypeInContactHeader enable
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags minimizeRelayingOfMediaChangesFromOtherCallLegAll enable
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags relayDataPathModeChangeFromOtherCallLeg enable
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags sendPtimeInSdp enable
% set profiles signaling ipSignalingProfile PSTN_IPSP commonIpAttributes flags lockDownPreferredCodec enable
% set profiles signaling ipSignalingProfile PSTN_IPSP egressIpAttributes flags disable2806Compliance enable
% commit

SIP Trunk Group towards PSTN

Configure the SIP Trunk Group with additional configurations like LRBT, ERP, DM/PM Rule, PSP, and IPSP created in the previous steps.

    MultiExcerpt named '_ms_teams_guide_sipTG_block_letters' was not found
The multiexcerpt named '_ms_teams_guide_sipTG_block_letters' was not found. Please check the page name and MultiExcerpt name used in the MultiExcerpt Include macro.

% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG mode outOfService state disabled
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy carrier 0000
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy country 1
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy localizationVariant northAmerica
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy tgIPVersionPreference both-ipv4-and-ipv6
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy digitParameterHandling numberingPlan NANP_ACCESS
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy callRouting elementRoutingPriority TEAMS
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy media packetServiceProfile PSTN_PSP
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy media toneAndAnnouncementProfile LRBT_PROF
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy services classOfService DEFAULT_IP
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy signaling ipSignalingProfile PSTN_IPSP
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG policy featureControlProfile DEFAULT_IP
% set addressContext default zone PSTN_ZONE sipTrunkGroup PSTN_TG mode inService state enabled
% commit

IP Peer towards PSTN

Create an IP Peer towards PSTN.

% set addressContext default zone PSTN_ZONE ipPeer PSTN_IPP ipAddress x.x.x.x ipPort yyyy
% commit

Routing Label towards PSTN

Create a Routing Label with a single Routing Label Route to bind the PSTN Trunk Group with the PSTN IP Peer.

% set global callRouting routingLabel PSTN_RL routingLabelRoute 1 trunkGroup PSTN_TG ipPeer PSTN_IPP inService inService
% commit

Call Routing  

Note

When call transfer is initiated by MS Teams (as per the Teams recommendation), the SBC sends the INVITE back to the same Teams entity from which it received the REFER.

MS Teams, in-turn, initiates a new call towards the referred entity.

For this purpose, Standard Route 3 and Username routing entities are configured.

Standard Route 1

Use this entry to allow the SBC to route all calls coming from MS Teams towards PSTN endpoints (irrespective of digits or FQDN).

% set global callRouting route trunkGroup TEAMS_TG <sbcname> standard Sonus_NULL 1 all all ALL none Sonus_NULL routingLabel PSTN_RL
% commit

Standard Route 2

Use this entry to allow the SBC to route all calls coming from PSTN endpoints towards different MS Teams tenant Trunk Groups, based on the called digits.

% set global callRouting route none Sonus_NULL Sonus_NULL standard 2414445 1 all all ALL none Sonus_NULL routingLabel TEAMS_RL
% commit

Standard Route 3

Use this entry to allow the SBC to route all calls towards the MS Teams after receiving REFER from theMS Teams, for a call transfer towards PSTN.

% set global callRouting route trunkGroup TEAMS_TG <sbcname> standard Sonus_NULL Sonus_NULL all all ALL none SIP.PSTNHUB.MICROSOFT.COM routingLabel TEAMS_RL
% commit

Username Routing

Use this entry to allow the SBC to route all calls towards the Teams after receiving REFER from the Teams for a call transfer towards TEAMS.

% set global callRouting route trunkGroup TEAMS_TG <sbcname> username Sonus_NULL Sonus_NULL all all ALL none SIP.PSTNHUB.MICROSOFT.COM routingLabel TEAMS_RL
% commit



  • No labels