Example 10 Use of SIP HMR Sets

The following example shows the configuration for SIP HMR with one SIP manipulation configuration loading another SIP manipulation configuration. The goals of this configuration are to:

  • Add a new header to an INVITE
  • Store the user portion of the Request URI
  • Remove all Route headers from the message only if the Request URI is from a specific user
    sip-manipulation
            name                           deleteRoute
            description                    delete all Route Headers
            header-rule
                    name                           deleteRoute
                    header-name                    Route
                    action                         delete
                    comparison-type                case-sensitive
                    match-value
                    msg-type                       request
                    new-value
                    methods                        INVITE
    sip-manipulation
            name                           addAndDelete
            description                    Add a New header and delete Route headers
            header-rule
                    name                           addHeader
                    header-name                    New
                    action                         add
                    comparison-type                case-sensitive
                    match-value
                    msg-type                       request
                    new-value                      "Some Value"
                    methods                        INVITE
            header-rule
                    name                           storeRURI
                    header-name                    request-uri
                    action                         store
                    comparison-type                pattern-rule
                    match-value
                    msg-type                       request
                    new-value
                    methods                        INVITE
                    element-rule
                            name                           storeUser
                            parameter-name
                            type                           uri-user
                            action                         store
                            match-val-type                 any
                            comparison-type                pattern-rule
                            match-value                    305.*
                            new-value
            header-rule
                    name                           deleteHeader
                    header-name                    request-uri
                    action                         sip-manip
                    comparison-type                Boolean
                    match-value                    $storeRURI.$storeUser
                    msg-type                       request
                    new-value                      deleteRoute
                    methods                        INVITE