Local Media Playback Operation

You configure the Oracle® Enterprise Session Border Controller (ESBC) to generate media locally by specifying the triggers and media files you need. The ESBC monitors signaling traffic for playback triggers. For the most part, operation of the local media playback feature is the same regardless of the RTP generation method. Differences are explained herein.

The ESBC allows for playback configurations on a session agent, realm and sip interface. It plays back media to a caller using the configuration 'closest' to that endpoint. The term 'closest' refers to the hierarchy by which the ESBC selects the playback configuration to use for a given call. The hierarchy the ESBC uses is session-agent, followed by realm, followed by sip-interface. To complete the notion of 'closest', consider the element's proximity to the end station initiating the call, to which the ESBC sends the RTP.

For example, if the initiating end station is a session agent that includes a playback configuration, then the ESBC would use that configuration. But if the endpoint is not a session agent or is a session agent without a playback configuration, the ESBC would check that endstation's realm, then the sip-interface configurations to identify which, if any, playback trigger and media it would use.

Key operational detail on the RTP stream generated by the ESBC playback function includes:

  • The ESBC supports local media playback as RTP or SRTP streams over IPv4 and IPv6, using UDP transport and SIP.
  • The ESBC supports local media playback over VLANs.
  • The generated RTP stream complies with all relevant RTP standards, including incrementing RTP timestamp and Sequence Number, and specifying a unique SSRC.
  • If applicable, the playback RTP stream appropriately maintains the Payload Type, SSRC, RTP timestamp and Sequence Numbers of the original media stream.
  • The ESBC marks the first packet of the playback with the RTP marker bit.
  • If the ESBC receives a SIP request, such as an UPDATE or REINVITE, that includes a new SDP offer and the p-acme-playback header, it waits to play the RBT until it receives a corresponding successful answer. This resolves the issue wherein it is unclear which codec to use to play RBT (originator, terminator, or both) because the answer is incomplete and the request may still be rejected.
  • For all triggers except the playback-on header trigger, the ESBC does not create a playback stream if:
    • The initial INVITE or the SIP reply contains the proprietary SIP header "P-Acme-RBT: no".
    • The 18x response includes the "P-Early-Media:sendonly" or "P-Early-Media:sendrecv" parameter(s).

      Note:

      The ESBC does play RBT if the 18x response has P-Early-Media set to "recvonly" or "inactive".
  • If playback is operating on a hairpin stream, and the scenario fires multiple playback triggers, the ESBC plays the stream based on the configuration 'closest' to the destination.
  • Once playback is in progress, the ESBC mutes the session in the playback direction so that only the playback media can be heard.

The ESBC stops local media playback when:

  • It receives the final SIP answer from the callee, or
  • If you are using the 180-force or 180-no-sdp configuration, the callee has received a SIP UPDATE with SDP and has relayed it to the caller.

External signaling and other ESBC configuration that impacts local media playback deployments include:

  • The ESBC disables local media playback when configured to release media.
  • If both 2833 generation and playback are configured on a flow, the ESBC gives precedence to the playback feature, disabling 2833 generation.
  • If you are using the 180-no-sdp configuration, the ESBC has not received SDP from the callee, and the processed response does not contain SDP, the ESBC adds SDP:
    • The ESBC chooses the codec based on the offer received, and after application of the ingress and egress codec policy.
    • If the ESBC has not received an offer at that time from caller (delayed offer scenario), the ESBC disables local media playback.
  • When several early dialogs are received from the called party side, the ESBC starts and stops local media playback based on the “active” early dialog. The active dialog is the last dialog for which the ESBC received a provisional response.