Integrations / Telnyx

Bring TelnyxTelnyx media to Dvaarik

Bridge a customer-owned Telnyx Call Control line through its bidirectional media-streaming websocket.

adapterlicensed logo

Wire format

JSON text frames with a bare event/media.payload base64 field — Telnyx rejects any extra key (streamId, contentType, sampleRate) as a malformed frame

Sample rate

8 kHz; codec (PCMU or PCMA) is read off the carrier's own start frame, not assumed

Flush queued playback

{"event":"clear"}

When the caller interrupts, stop generation and flush the carrier's queued audio. Doing only the first half still talks over the caller.

Your responsibility

You own the Telnyx account, Call Control Application, webhook signing key, routing, and Telnyx charges.

Telnyx does not fetch a document — it POSTs a signed webhook event to your server and waits for a REST command. Verify the Ed25519 signature over `timestamp|body` (never the URL), then answer with a command naming your stream URL. Start that stream only on `call.answered`, not on dial, so a ringing call never opens your socket.

Implement and secure the media gateway you control. From your trusted server, create /v2/voice/sessions with a project key, then connect only to the returned one-use stream URL.

Official references · 13 September 2026

Verify the current stream contract

Protocol references are official starting points, not proof that an account is enabled. Confirm the current carrier contract and account capabilities before implementation.

Machine handoff available

Create /v2/voice/sessions from a trusted server with X-Api-Key. The response returns a short-lived, one-use stream URL; never put the project key in browser code or adapt an earlier account-wide request.