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,previousReceivedSDPandlatestReceivedSDPSequenceNumberand waits for the corresponding answer. -
When the corresponding SDP answer is sent, the feature updates the leg’s
latestSentSDP,previousSentSDPandlatestSentSDPSequenceNumber. -
If the offer/answer exchange is successful the current
committedSDPbecomes thepreviousCommittedSDPand the leg’scommittedSDPis set to the latest sent SDP on the leg. ThecommittedSDPSequenceNumberis set to the latest SDP sequence number. -
If the offer/answer exchange is unsuccessful, the previous
committedSDPandcommittedSDPSequenceNumbervalue(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 |
SAS Support |
No |
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. |
