Inbound SIP calls from Exotel not reaching agent — 503 response

Hi team,

I’m trying to set up inbound SIP calls from Exotel (Indian telephony provider) to my LiveKit Cloud project, but calls never reach my agent. Exotel reports a 503 response from LiveKit’s SIP gateway.

What I’ve verified works

  • Agent dispatch works perfectly — when I create a room via API with agents: [{agentName: 'inbound-sip-agent'}], the agent joins in ~2 seconds and handles the call correctly
  • Agent is registered and online (node sip-agent.mjs dev)
  • TCP connectivity to my SIP FQDN on port 5060 succeeds

My configuration

Inbound Trunk: ST_QuQrYwZ7CqFY

  • Numbers: ["+911140183356"]
  • AllowedAddresses: [] (open — no IP restriction)
  • AllowedNumbers: [] (open)

Dispatch Rule: SDR_nczwfs7Se7B3

  • TrunkIds: ["ST_QuQrYwZ7CqFY"]
  • Rule: {type: "individual", roomPrefix: "call_"}
  • RoomConfig agents: [{agentName: "inbound-sip-agent"}]

SIP FQDN: 4k13u0ki411.sip.livekit.cloud

Agent: Named inbound-sip-agent, using @livekit/agents v1.0.41

What Exotel sends

Exotel dials: sip:<trunk-sid>@<exotel-gateway> which forwards a SIP INVITE to my LiveKit SIP FQDN. The INVITE has:

  • To: sip:+911140183356@4k13u0ki411.sip.livekit.cloud
  • From: sip:0XXXXXXXXXX@exotel-gateway

What I’ve tried

  1. Trunk-specific dispatch rule — no call received
  2. Catch-all dispatch rule (no trunkIds) — no call received
  3. Adding multiple number formats to trunk (with/without +, country code variations)
  4. Verified via diagnose-sip.js script — all config matches
  5. Raw SIP OPTIONS to 4k13u0ki411.sip.livekit.cloud:5060 via TCP — no response

Key observation

Room-based agent dispatch works flawlessly. The issue is specifically at the SIP gateway level — inbound SIP INVITEs from Exotel are not being processed into room creation + agent dispatch.

LiveKit support suggested this may be a trunk configuration issue, but I’ve exhausted all configuration options I can think of. Could this be:

  • An IP allowlist issue on LiveKit’s side for Exotel’s SIP gateway IPs?
  • A codec/protocol mismatch?
  • Something specific to how Exotel formats SIP INVITEs?

Any help would be greatly appreciated. Happy to share SIP INVITE traces if needed.

Maybe take a look at your inbound trunk configuration for ST_QuQrYwZ7CqFY, I see 5 total ‘numbers’ there, I suggest you remove the last 4 and just retain ‘+911140183356‘. I suspect the inbound trunk isn’t being matched

Thanks @darryncampbell It worked

1 Like