SDP Examples

Below are manipulation examples using the SDP body:

Examples using SDP Body Fields

Message Type

Condition

Action Subject

Action Type

Action Value

Description

invite.request

 

header.custom-rtp-address

Add

param.message.sdp.ip

Copies the port and IP address in the SDP body to a customized SIP header (e.g., Custom-RTP-Address/Port) in the outgoing INVITE message.

invite.request

 

header.custom-rtp-port

Add

param.message.sdp.
port

reinvite.
request

param.message.sdp.ip == '0.0.0.0'

param.message.sdp.rtpmode

Modify

'sendonly'

Changes the RTP mode to sendonly if the SDP "c=" field's address is 0.0.0.0.

 

 

param.message.sdp.ip

Modify

param.message.sdp.originaddress

Changes the SDP "c=" field to the same address as the "o=" field.

invite

param.message.sdp.rtpmode=='sendrecv'

var.call.src.0

Modify

'1'

Uses the RTP mode as a condition.

invite.
response.200

var.call.dst.0=='1'

param.message.sdp.rtpmode

Modify

'sendonly'

invite

param.message.sdp.ip=='10.33.37.78'

header.diversion

Add

<sip:12345@p4.isp.com>;reason=no-answer

Adds a Diversion header ("Diversion: <sip:12345@p4.isp.com>;reason=no-answer") to incoming INVITE messages if the SDP contains the IP address 10.33.37.78 or the prefix of this IP address (10.33). The IP address is contained in the "c=" field of the SDP (e.g., "c=IN IP4 10.33.37.75").

invite

param.message.sdp.ip prefix '10.33'

header.diversion

Add

<sip:12345@p4.isp.com>;reason=no-answer

invite.request

body.sdp exists

Header.SDP-Origin-UserName

Add

param.message.sdp.originusername

Adds a customized header “SDP-Origin-UserName”, where the username is obtained from the “o=” field in the SDP body, if the INVITE message contains an SDP body.

invite.request

body.sdp exists

param.message.sdp.originusername

Modify

'myname'

Changes the username in the “o=” field in the SDP body to "myname", if the INVITE message contains an SDP body: