0

Using NSS for STI-AS/STI-VS with ACME SBC

NSS can be configured to work with an ACME SBC as a SIP Redirect Server or via a REST Interface.  Depending on the software version of your ACME SBC you could do it via REST or may need to do it using SIP.  This article covers the SIP interface. The REST implementation is descrbied in this article.

The following SMC script is used inside NSS to interface with ACME as a SIP redirect server. This SMC is applied on the egress direction towards the ACME SBC.

 

In this particular case the ACME expects the Identity header embedded in the 302 Contact header.

{
    "ProfileID": 100,
    "ProfileName": "Modify Contact and embed IDheader",
    "Rules": [{
        "MsgType": "RESPONSE",
        "RspCodeList": "302",
        "StoredVariables": [{
            "VariableName": "{$IDheader}",
            "Header": "Identity:",
            "HeaderAttr": "HEADER_SECTION_ONLY",
            "RegEx1": "[^ ]+"
        }],
        "Conditions": [{
            "Header": "Identity:",
            "HeaderAttr": "HEADER_SECTION_ONLY",
            "RegEx1": "[a-z0-9A-Z]+",
            "Operator": "NEQ",
            "RightOperand": ""
        }],
        "Action": "REPLACE_MSG",
        "ReplaceDefs": [{
                "ReplaceType": "FINDSUB_LINES",
                "Header": "Contact:",
                "HeaderAttr": "HEADER_SECTION_ONLY",
                "Macro": "GETURI_HOST",
                "Output": "HOST?Identity={$IDheader}"
            },
            {
                "ReplaceType": "DELETE_LINES",
                "Header": "Identity:",
                "HeaderAttr": "HEADER_SECTION_ONLY"
            }
        ]
    }]
}

HOST can be an internal host that defines the downstream carrier(s).

Reply

null