Skip to end of metadata
Go to start of metadata

 

 

Overview

  • This article describes the configuration and settings necessary for removing Calling Extension/Called Extension in a Transformation Table for ext=xxxx input value.
  • This document assumes that PSTN - SBC - Microsoft Lync 20XX setting is completed in following topology. 

Topology

Figure : Topology

 

Use Case

In some cases, Lync users may be created with a Line URI with tel:+XXXXXXXXXXX;ext=XXXX format as shown below:

Figure : Lync User Case

 

In such situations, when a call is received from the Lync Mediation Server, the INVITE message contains ;ext=xxxx in the Request URI. However, in a LYNC >> SBC >> Tenor call setup, TENOR expects the REQUEST URI without ext=xxxx, therefore SBC Edge (SBC) will have to remove from the TO HEADER by using a Transformation Table.

To do so, please follow the steps below:

Scenario

  • Lync sends an INVITE to the SBC:

INVITE sip:+15102039002;ext=9002@testux203.vxtestlab.com;user=phone SIP/2.0
FROM: "ux227-203-user2"<sip:+15102031002;ext=1002@FES1-W14.vxtestlab.com;user=phone>;epid=B2F0A127C7;tag=372e9ca59

TO: <sip:+15102039002;ext=9002@testux203.vxtestlab.com;user=phone>


CSEQ: 197589 INVITE
CALL-ID: e60f1373-93a3-44e8-985f-b1f0c03ebb69

  • SIP Registered Tenor endpoint expects the INVITE from the SBC:

INVITE sip:9002@134.56.227.217:5085;user=phone SIP/2.0
From: "ux227-203-user2" <sip:+15102031002@134.56.227.203:5060;user=phone>;tag=8638e3cb-5f

TO:<sip:9002@134.56.227.217;user=phone>


CSEQ: 197589 INVITE
Call-ID: call-BD0D1C00-0000-0010-0C13-C@134.56.227.203

However, if ext=xxxx is not removed from the TO HEADER, the SBC sends out an INVITE to the Tenor with:

INVITE sip:9002;ext=9002@134.56.227.217:5085;user=phone SIP/2.0


From: "ux227-203-user2" <sip:+15102031002;ext=1002@134.56.227.203:5060;user=phone>;tag=8638e3cb-12b

To: <sip:9002;ext=9002@134.56.227.217;user=phone>


CSEQ: 1 INVITE
Call-ID: call-F96B1300-0000-0010-0C13-8@134.56.227.203

... and the call fails with:

SIP/2.0 503 Service Unavailable


Call-ID: call-F96B1300-0000-0010-0C13-8@134.56.227.203
Content-Length: 0
CSeq: 1 INVITE
From: "ux227-203-user2"<sip:+15102031002;ext=1002@134.56.227.203:5060;user=phone>;tag=8638e3cb-12b
To: <sip:9002;ext=9002@134.56.227.217;user=phone>;tag=8638e3d9-18
User-Agent: Quintum/1.0.0 SN/0030E1209173 SW/P108-09-14-Lync
Via: SIP/2.0/TCP 134.56.227.203:5060;branch=z9hG4bK-SBC-8638-e3cb-00d0

Resolving the Issue

To resolve the issue:

Remove the Extension Number in the relevant Transformation Table (in this example we are showing how to remove Calling as well as Called Extension Numbers) as shown below:

Figure : Resolve Issue

Subsequently if the above call is placed again, the transformation table will modify the TO header and remove ext=xxxx which then allow call to be successful as shown below:

Inbound INVITE

INVITE sip:+15102039002;ext=9002@testux203.vxtestlab.com;user=phone SIP/2.0


FROM: "ux227-203-user2"<sip:+15102031002;ext=1002@FES1-W14.vxtestlab.com;user=phone>;epid=B2F0A127C7;tag=6648b75d48

TO: <sip:+15102039002;ext=9002@testux203.vxtestlab.com;user=phone>


CSEQ: 197673 INVITE
CALL-ID: 6a8e8f94-b0c7-4bfe-83b9-e03e638ef1fd

SBC Removes the ext=xxxx, using the Transformation Table and Routes the Call

com.net.ux.route DEBUG (translation.cpp:1171) - Performing MANDATORY transformation using entry  (19.1(1)).
com.net.ux.route DEBUG (translation.cpp:583) - Successful regex match of "tfCalledNumber" field for ".*9(\d{3})$" (updated ".*9(\d{3})$") with input of "+15102039002"
com.net.ux.route DEBUG (translation.cpp:627) - Regex replacement output of "tfCalledNumber" field is "9002"
com.net.ux.route DEBUG (translation.cpp:1171) - Performing OPTIONAL transformation using entry  (19.2(2)).
com.net.ux.route DEBUG (translation.cpp:583) - Successful regex match of "tfCalledExt" field for "(.*)" (updated "(.*)") with input of "9002"
com.net.ux.route DEBUG (translation.cpp:1171) - Performing OPTIONAL transformation using entry  (19.3(3)).
com.net.ux.route DEBUG (translation.cpp:583) - Successful regex match of "tfCallingExt" field for "(.*)" (updated "(.*)") with input of "1002"
com.net.ux.route INFO (callrouter.cpp:2059) - Successful route request with entry  (1.5(10))

Outbound INVITE

INVITE sip:9002@134.56.227.217:5085;user=phone SIP/2.0


From: "ux227-203-user2" <sip:+15102031002@134.56.227.203:5060;user=phone>;tag=8638e3cb-5f

TO: <sip:9002@134.56.227.217;user=phone>


CSEQ: 1 INVITE
Call-ID: call-BD0D1C00-0000-0010-0C13-C@134.56.227.203

200 OK RESPONSE from Tenor

SIP/2.0 200 OK


Call-ID: call-BD0D1C00-0000-0010-0C13-C@134.56.227.203
Contact: <sip:9002@134.56.227.217:5085;user=phone>
Content-Length: 253
Content-Type: application/sdp
CSeq: 1 INVITE
From: "ux227-203-user2"<sip:+15102031002@134.56.227.203:5060;user=phone>;tag=8638e3cb-5f
To: <sip:9002@134.56.227.217;user=phone>;tag=8638e3d9-26