Thanks — I’m responding to your issue where calls from Asia connect but US-originated calls to your Twilio SIP Elastic Trunk end before pickup.
This is very likely a Twilio origination/geographic restriction issue. Twilio SIP Trunks can block or allow inbound calls by country; if US numbers aren’t allowed in your trunk’s Origination settings, Twilio will drop those calls.
Please try the following:
1. In the Twilio Console go to Programmable Voice → SIP Trunks → your trunk → Origination.
2. Confirm your LiveKit SIP URI is listed under Origination URLs.
3. Open Country & Area Code Filtering and check the inbound policy:
◦ If it’s set to “Allow only specific countries/area codes,” add United States.
◦ If it’s set to “Deny specific countries/area codes,” ensure United States is NOT on the deny list.
1. Save changes and wait a few minutes for propagation.
If the trunk settings look correct, gather these diagnostics and share them so I can help further:
• A Twilio call SID or the time of a failed US call (so I can point you what to look for in logs)
• The SIP response code you see in Twilio call logs for the failed call (e.g., 403, 603, timeout)
• Whether your origination uses TLS/SRTP and whether your LiveKit SIP endpoint requires IP allowlisting
Additional quick checks:
• Test from another US number to rule out carrier-specific issues.
• Inspect Twilio’s Call Logs (Monitor → Logs → Calls) for error codes and timing.
• Verify LiveKit’s SIP endpoint responds promptly (Twilio expects early SIP responses like 100/180; long delays can cause timeouts).
If you share a failed call time or a call SID plus the SIP response code from the logs, I’ll help interpret the trace and recommend the next config steps.
Sources:
How Vicidial Handles Bridging, Transfers, and SIP Calls