Class PlivoMediaStreamParser

Plivo media parser with an explicit documented carrier profile and a retained legacy profile. Carrier mode requires PCMU 8 kHz mono and preserves carrier timestamps and chunk counters. Legacy mode exists for existing callers and fixtures; it is not a live-carrier conformance claim.

Implements

Constructors

Methods

  • Parse a raw WebSocket frame from a Plivo audio stream.

    The carrier profile (parseCarrierMedia) reads start with the nested start.callId, start.streamId and start.mediaFormat, which must declare PCMU at 8 kHz (one channel when the count is omitted); media with its base64 media.payload, inbound track only; dtmf, playedStream (reported as a mark) and stop. An unsupported start format, an error event or an oversized frame throws.

    The legacy profile keeps the released snake-case mapping: stream_id to streamSid and call_uuid to callSid, with start, media and stop alone.

    Parameters

    • data: string | Buffer<ArrayBufferLike>

      Raw WebSocket frame payload (JSON string or Buffer from Plivo).

    Returns null | MediaStreamIncoming

    Normalised MediaStreamIncoming event, or null for unknown event types or malformed messages.

Properties

protocol: "legacy" | "carrier"

Selected once; omission preserves the released snake-case parser.