Example 12 Response Status Processing
Given that the object of this example is to drop the 183 Session Progress response when it does not have SDP, your SIP manipulation configuration needs to:
- Search for the 183 Session Progress response
- Determine if the identified 183 Session Progress responses contain SDP; the Oracle® Enterprise Session Border Controller searches the 183 Session Progress responses where the content length is zero
- If the 183 Session Progress response does not contain SDP, change its status code to 699
- Drop all 699 responses
sip-manipulation
name manip
description
header-rule
name IsContentLength0
header-name Content-Length
action store
comparison-type pattern-rule
match-value 0
msg-type reply
new-value
methods
header-rule
name is183
header-name @status-line
action store
comparison-type pattern-rule
match-value
msg-type reply
new-value
methods
element-rule
name is183Code
parameter-name
type status-code
action store
match-val-type any
comparison-type pattern-rule
match-value 183
new-value
header-rule
name change183
header-name @status-line
action manipulate
comparison-type case-sensitive
match-value
msg-type reply
new-value
methods
element-rule
name make699
parameter-name
type status-code
action replace
match-val-type any
comparison-type pattern-rule
match-value $IsContentLength0 & $is183.$is183Code
new-value 699
sip-interface
options dropResponse=699
The following four configuration examples are based on the this sample SIP INVITE:
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:service@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 --boundary Content-Type: application/sdp v=0 o=user1 53655765 2353687637 IN IP4 192.168.1.60 s=- c=IN IP4 192.168.1.60 t=0 0 m=audio 12345 RTP/AVP 18 a=rtpmap:8 G729/8000/1 a=fmtp:18 annexb=no a=sendrecv a=ptime:20 a=maxptime:200 --boundary Content-Type: application/sdp v=0 o=user1 53655765 2353687637 IN IP4 192.168.1.60 s=- c=IN IP4 192.168.1.60 t=0 0 m=video 12345 RTP/AVP 34 a=rtpmap:34 H263a/90000 a=ptime:30 --boundary--


