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
Integrations / Telnyx
Telnyx media to DvaarikBridge a customer-owned Telnyx Call Control line through its bidirectional media-streaming websocket.
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.
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.
/v2/voice/sessions with a project key, then connect only to the returned one-use stream URL.Official references · 13 September 2026
Protocol references are official starting points, not proof that an account is enabled. Confirm the current carrier contract and account capabilities before implementation.
Bidirectional streaming modes, supported codecs, and the media JSON envelope.
The telnyx-signature-ed25519 / telnyx-timestamp headers and the timestamp|body message that is signed.
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.