CS1000 Adapter (CS1000Adapter)

Last Updated : Dec 11, 2016 |

The CS1000 adapter provides the following services:

  • Translation between History-Info header formats.

  • Origination routing based on the presence of x-nt-net-feature=x-nt-home in the Request-URI.

x-nt-home routing

The CS1000 adapter requires special origination based routing when the x-nt-net-feature parameter is in the Request-URI with the value of x-nt-home. During ingress adaptation, the CS1000 adapter looks for this parameter, value pair. If it is found, the call is routed on the URI in the P-Asserted-Identity header rather than the Request-URI.

History-Info header adaptation

Since the CS1000 adapter uses some different formatting for the History-Info header than other Avaya products, it is necessary to adapt the History-Info header values. Two primary areas of formatting differences requiring adaptation are index values and reason code values.

Index formatThe CS1000 adapter increments its indices by adding a value of 1. For example: 1, 2, 3, 4. Avaya products increment its indices after the decimal dot. For example: 1, 1.1, 1.2, 1.3. The CS1000 adapter on ingress converts the values from the integer format to the decimal format. The CS1000 adapter on egress converts the values from the decimal format to the integer format.

Reason Code adaptationAvaya uses two reason parameters in its History-Info header format. The second parameter is labeled Redirection and must be inserted on ingress and removed on egress by the CS1000 adapter. The Redirection phrase also contains a Cause parameter. The Redirection Cause is inserted to make the CS1000 History-Info look like the call forwarding History-Info sent from Communication Manager according to the following mapping:

SIP Cause

Redirection Reason

302

CFI

486

CFB

480

CFNR

A conversion from Avaya format to CS1000 format:

Avaya History-Info:

History-Info:<sip:orig@avaya.com>;index=1 
History-Info:"Original Destination"<sip:orig@avaya.com?Reason=SIP%3Bcause%3D302%3Btext%3D%22Moved%20Temporarily%22&Reason=Redirection%3BCause%3DCFI>;index=1.1 
History-Info:"Final Destination"<sip:final@avaya.com>;index=1.2

gets converted to:

CS 1000 History-Info:
History-Info:<sip:orig@avaya.com?Reason=SIP%3Bcause%3D302%3Btext%3B%22Moved%20Temporarily%22>;index=1, <sip:final@avaya.com>;index=2

A conversion from CS1000 format to Avaya format:

CS1000 History-Info:

History-Info: <sip:7521;phone-context=cdp.udp@testbed1.com;user=phone?reason=%20sip%3bcause%3d480%3btext%3d%20%Temporarily%20Unavailable%22>; index=1, 
<sip:5522;phone-context=cdp.udp@testbed1.com;user=phone>;index=2 

gets converted to:

Avaya History-Info:

History-Info:<sip:canonically-adjusted-7521@testbed1.com;user=phone>;index=1
History-Info:<sip:canonically-adjusted-7521@testbed1.com;user=phone? Reason=SIP%3Bcause%3D480%3Btext%3D%22Temporarily%20Unavailable%22&Reason=Redirection%3Bcause%3DNORMAL%3avaya-cm-reason%3D%22cover-no-reply%22>;index=1.1
History-Info: <sip:canonically-adjusted-5522@testbed1.com;user=phone>;index=1.2

Multiple Diversions

When CS1000 sends History-Info with multiple diversions, the top History-Info will have the original calling number, and the second History-Info will have the last redirect number (CS1000 can send only 2 diversion History-Infos). In Session Manager, the CS1000 adapter copies the original calling number History-Info to the second-to-last History-Info during ingress adaptation. For example:

CS1000 History-Info:

History-Info: <sip:1001;phone-context=cdp.udp@interop.com;user=phone?reason=sip%3bcause%3d302%3btext%3d%22Moved%20Temporarily%22>;index=1, <sip:1002;phone-context=cdp.udp@interop.com;user=phone?reason=sip%3bcause%3d480%3btext%3d%22Temporarily%20Unavailable%22>;index=2, <sip:1003;phone-context=cdp.udp@interop.com;user=phone>;index=3

gets ingress adapted to:

History-Info: <sip:canonically-adjusted-1001@interop.com>;index=1
History-Info: <sip:canonically-adjusted-1001@interop.com;user=phone?reason=SIP;cause=302;text=”Moved Temporarily”&Reason=Redirection;Cause=“CFI”>;index=1.1
History-Info:<sip:canonically-adjusted-1002@interop.com;user=phone?reason=SIP;cause=480;text=“Temporarily Unavailable”&Reason=Redirection;cause=“CFNR”>;index=1.2
History-Info: <sip:canonically-adjusted-1001@interop.com;user=phone?reason=SIP;cause=302;text=”Moved Temporarily”&Reason=Redirection;Cause=“CFI”>;index=1.3
History-Info: <sip:canonically-adjusted-1003@interop.com;user=phone>;index=1.4

If copyOCNHistInfo=false is given as an adaptation module parameter, then the CS1000 adapter behaves as it did in prior Session Manager releases and does not copy the original calling number History-Info.

On egress, the CS1000 adapter removes the copied History-Info header when a call is routed from one CS 1000 to another CS 1000.

The CS1000 adapter also performs all the conversions available in the DigitConversionAdapter.