Example 14 Back Reference Syntax

In this sample of back-reference syntax use, the goal is to change the To user. The SIP manipulation would be configured like the following:

sip-manipulation
        name                           changeToUser
        description			      change user in the To header
        header-rule
                name                           ChangeHeader
                header-name                    To
                action                         manipulate
                comparison-type                case-sensitive
                match-value
                msg-type                       request
                new-value
                methods                        INVITE
                element-rule
                        name                           replaceValue
                        parameter-name
                        type                           header-value
                        action                         replace
                        match-val-type                 any
                        comparison-type                pattern-rule
                        match-value                    (.+)(service)(.+)
                        new-value                      $1+Bob+$3

The result of manipulating the original SIP INVITE (shown above) with the configured SIP manipulation is:

INVITE sip:service@192.168.1.61:5060 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.60:5060;branch=z9hG4bK-1-0
From: sipp <sip:sipp@192.168.1.60:5060>;tag=1
To: sut <sip:Bob@192.168.1.61:5060>
Call-ID: 1-15554@192.168.1.60
CSeq: 1 INVITE
Contact: <sip:sipp@192.168.1.60:5060;user=phone>
Max-Forwards: 70
Content-Type: multipart/mixed;boundary=boundary
Content-Length:  466
…
…
…