Class PlivoVoiceProvider

Plivo voice call provider.

Uses the Plivo REST API v1 for outbound call control and HMAC-SHA256 for inbound webhook signature verification (v3 signature scheme).

Example

const provider = new PlivoVoiceProvider({
authId: process.env.PLIVO_AUTH_ID!,
authToken: process.env.PLIVO_AUTH_TOKEN!,
});

Implements

Accessors

Constructors

Methods

  • Parse a Plivo webhook into normalized NormalizedCallEvents.

    Fields come from readPlivoRequest and plivoEventFields, as the signature check reads them: a GET callback's query, otherwise the URL-encoded or JSON body.

    Plivo uses two naming conventions for the same fields:

    • PascalCase (CallUUID, CallStatus, Digits) in URL callbacks.
    • snake_case (call_uuid, call_status) in some API responses. Both are checked for maximum compatibility.

    In carrier mode each event carries a stable id from stableCarrierEvents and the callback's RequestUUID; a DTMF event's occurrence is the signed SequenceNumber or Timestamp, else the callback URL's event_key, and a DTMF event with none throws.

    Parameters

    Returns WebhookParseResult

    Parsed result containing zero or more normalized events.

Properties

name: "plivo" = ...

Provider identifier, always 'plivo'.