SIP User's Manual 804 Document #: LTRT-83310
Mediant 600 & Mediant 1000
Below are header manipulation examples:
Example 1 Rule:
Test the Request-URI transport type. If 1 (TCP), then modify the URL portion
of the From header:
MessageManipulations 1 = 1, Invite.request,
header.REQUEST-URI.url.user == '101', header.REMOTE-
PARTY-ID.url, 2, 'sip:3200@110.18.5.41;tusunami=0', 0;
Result:
Remote-Party-ID:
<sip:3200@110.18.5.41;tusunami=0>;party=calling;npi=0;
Example 2 Rule:
If the method type is 5 (INVITE), then modify the Remote-Party-Id header:
MessageManipulations 2 = 1, Invite.request,
header.REQUEST-URI.methodtype == '5', header.REMOTE-
PARTY-ID.url, 2, 'sip:3200@110.18.5.41;tusunami=0', 0;
Result:
Remote-Party-ID:
<sip:3200@110.18.5.41;tusunami=0>;party=calling;npi=0;
Example 3 Rule:
For all request URI's whose method types are 488, modify the message type
to a 486:
MessageManipulations 1 = 1, , header.request-
uri.methodtype=='488', header.request-uri.methodtype,
Result:
SIP/2.0 486 Busy Here
C.2.24 Require
An example of the header is shown below:
Require: 100rel
The header properties are shown in the table below:
Header Level Action Add Delete Modify List Entries
Operations Supported Yes Yes Yes N/A
Keyword Sub Types Attributes
Capabilities SIPCapabilities Struct Read/Write
Below are header manipulation examples:
Example 1 Rule:
Add a Require header to all messages:
MessageManipulations 1 = 1, , ,header.require, 0,
'early-session,em,replaces', 0;
Result:
Require: em,replaces,early-session
Example 2 Rule:
If a Require header exists, then delete it:
MessageManipulations 2 = 1, Invite, header.require
exists ,header.require, 1, '', 0;
Result:
The Require header is deleted.
Example 3 Rule:
Set the early media options tag in the header:
MessageManipulations 0 = 0, invite, ,
header.require.earlymedia, 0, 1 , 0;