Elizon Docs
Telephony

Providers

Connect a real carrier to a phone configuration in Studio.

A phone configuration ("SIP trunk") connects one carrier account to Elizon. This is a Studio UI action (Studio → Phone Configurations → New), not part of the public API — see Introduction for why. This page covers what each supported provider actually needs, including the gotchas that aren't obvious from the carrier's own dashboard.

Twilio

  • Inbound: a SIP Domain, backed by an IP Access Control List and Credential List Elizon manages for you.
  • Outbound: an Elastic SIP Trunk with credential-based auth.
  • Enter your Account SID and Auth Token in the Credentials step; Elizon provisions the rest.

Telnyx

  • Inbound and outbound both use an FQDN connection, never a Credential Connection. Credential Connections are registration-based (they route to wherever a device last sent a SIP REGISTER), and LiveKit's SIP trunk never registers — so a Credential Connection can never actually deliver a call either direction.
  • Outbound also requires a Telnyx Outbound Voice Profile (a billing/routing object Telnyx requires on any connection that dials out) — Elizon creates and attaches one automatically per trunk.
  • Outbound requires a user_name that's unique across your entire Telnyx account — not just unique among your Elizon trunks. A generic value like test will likely collide with something else on the account and fail with "has already been taken".
  • Telnyx's own account tier can independently block calls regardless of your Elizon configuration: a zero balance blocks inbound termination, and destination-country whitelisting (new accounts are often restricted to calling only a couple of countries) blocks outbound calls to anywhere else — both require action in Telnyx's own dashboard/billing, not an Elizon setting.

Infobip

  • Uses Infobip's Voice API (Configuration + Notification Profile + Subscription), separate from Infobip's "Call Routing" product.
  • Call history for Infobip-routed calls is sourced from LiveKit's own call events, not Infobip's webhooks — Infobip's Call Routing delivery mechanism has no CDR/webhook mechanism of its own to hook into.

Custom (bring your own carrier)

Choose Custom when your carrier isn't one of the above. Elizon has no managed integration for it — you get a SIP destination to configure in your own carrier's dashboard, and the connection is entirely your carrier's responsibility to get right. The most common failure mode here isn't an Elizon misconfiguration — it's the carrier's own connection method:

Registration-based carriers don't work

Many carriers' "SIP login/password" is registration-based: your PBX is expected to send a REGISTER request and hold an active session, and inbound/outbound calls are then routed to wherever you last registered from. LiveKit's SIP trunk does not support REGISTER — it only sends/receives stateless, digest-authenticated SIP. If your carrier's setup instructions mention REGISTER anywhere (check their Asterisk/FreePBX sample config — a type=registration block is the tell), that connection method cannot work with Elizon, regardless of how the credentials are configured.

What does work for Custom, in order of preference:

  1. A stateless SIP trunk with digest auth (username/password) — no registration involved, the carrier just authenticates each request. This is what Twilio and Telnyx both use under the hood.
  2. IP-based authorization (the carrier trusts a fixed source IP instead of credentials) — only works if the IP sending calls to the carrier is actually fixed. On LiveKit Cloud, that's not guaranteed for most regions; on self-hosted LiveKit, it's your own server's IP, which is fixed by definition. See Introduction.

If your carrier only offers option 2 and you're still on LiveKit Cloud, hold off — it's a real infrastructure gap, not something to work around in configuration.