The SDP Monitor system feature keeps track of all Session Description Protocol (SDP) offers and answers on a leg.
It works like this:
-
When an SDP offer is received, the feature updates the leg’s
latestReceivedSDP
,previousReceivedSDP
andlatestReceivedSDPSequenceNumber
and waits for the corresponding answer. -
When the corresponding SDP answer is sent, the feature updates the leg’s
latestSentSDP
,previousSentSDP
andlatestSentSDPSequenceNumber
. -
If the offer/answer exchange is successful the current
committedSDP
becomes thepreviousCommittedSDP
and the leg’scommittedSDP
is set to the latest sent SDP on the leg. ThecommittedSDPSequenceNumber
is set to the latest SDP sequence number. -
If the offer/answer exchange is unsuccessful, the previous
committedSDP
andcommittedSDPSequenceNumber
value(s) (if any) are restored. At which point the feature waits for a new SDP offer and the offer/answer exchange continues.
The feature also maintains an SDP field specifying the exchange initiator. The field is used by the Diameter Service Info Feature feature to set the Media-Initiator-Flag
AVP in charging requests. Other features can access the SDP information using the Sentinel SIP Leg API.
Details
Feature script name |
SDPMonitor |
---|---|
Applicable contexts |
SIP service |
Prerequisite features |
None |
Feature execution points |
|
Pre- and Post- Execution Points
The SDP Monitor feature must run as a pre-system feature on the execution points given above, so that it sees all incoming SIP messages. It must also run as a post-system feature on all execution points, to ensure that messages sent by other features can be inspected before transmission. A feature parameter must be specified when invoking the feature in execution scripts. This will be either |
Leg SDP fields
These fields on the leg interface are available to other Sentinel SIP features.
Field | What it specifies |
---|---|
LatestReceivedSDP |
The latest SDP received on the leg. |
LatestSentSDP |
The latest SDP sent on the leg. |
CommittedSDP |
The SDP that was committed after the last successful offer/answer exchange. |
LatestSentSDPSequenceNumber |
The SDP origin sequence number in the last SDP sent on the leg. |
LatestReceivedSDPSequenceNumber |
The SDP origin sequence number in the last SDP received on the leg. |
CommittedSDPSequenceNumber |
The SDP origin sequence number in this leg’s committed SDP. |
PreviousReceivedSDP |
The previous SDP received on the leg. |
PreviousSentSDP |
The previous SDP sent on the leg. |
PreviousSentSDPSequenceNumber |
The previous origin sequence number in the previous SDP sent on the leg. |
PreviousReceivedSDPSequenceNumber |
The previous origin sequence number in the previous SDP received on the leg. |
PreviousCommittedSDP |
The SDP that was committed by the previous offer/answer exchange. |
Feature responses
Response | Reason |
---|---|
featureHasFinished |
Feature has finished. |
featureCannotStart |
Feature parameter error and was unable to start. |
Statistics
Statistic | What it counts |
---|---|
SDPRollback |
The number of times an offer/answer exchange failed and the latest SDP was rolled back. Caused by rejection or failure to send. |
SDPOfferReceived |
The number of SDP offers that have been received by the feature. |
SDPOfferSent |
The number of SDP offers that have been sent by the feature. |
SDPAnswerReceived |
The number of SDP answers that have been received by the feature. |
SDPRejectionReceived |
The number of sent SDP offers rejected by receiving final error responses. |
SDPAnswerSent |
The number of SDP answers the feature has sent. |
SDPRejectionSent |
The number of received SDP offers rejected by sending final error responses. |
SDPCommitted |
The number of times a successful offer/answer exchange has resulted in a committed SDP. |