Replaces Header Support
The Oracle® Enterprise Session Border Controller (E-SBC) supports the Replaces: header in SIP messages according to RFC 3891. The header, included within SIP INVITE messages, provides a mechanism to replace an existing early or established dialog with a different dialog. The different dialog can be used for services such as call parking, attended call transfer and various conferencing features.
The Replaces: header specifies the dialog to replace by containing the corresponding dialog identifier. The identifier includes the from tag, to tag, and call id. The orientation of endpoint-created tags, as from-tag and to-tag, matches each of the two dialogs for a standard call. For example, the Replaces: header from an endpoint that specifies assuming the dialog between the E-SBC and Bob-1 appears as follows:
Replaces:5555;from-tag=20;to-tag=10
The E-SBC validates the dialog identifier by matching an existing dialog, tries to install the new endpoint, and tries to remove the old endpoint by gracefully ending that dialog with a BYE. The replaces INVITE must come from an endpoint in the same realm as the endpoint it is replacing. If the UA sending the Replaces header is in a different realm as the original call leg (or indicates such architecture from a malformed Replaces: header), the E-SBC replies to the Replaces: endpoint with a 481 Missing Dialog. Refer to the following diagram for the standard scenario.
![The OCSBC supporting the REPLACES header The OCSBC supporting the REPLACES header](img/GUID-84CBBA9D-3DBE-4C90-A505-7C848CD2A89A-default.png)
Note that when the endpoints are in the same realm, you must enable the mm-in-realm parameter in realm-config or the E-SBC cannot generate the SDP for the 200 OK. Without the SDP, the call is unsuccessful.