Outbound SIP trunk returns 408 / "0 intermediate responses" on every call — is outbound enabled on our account?

Hi, running into an issue with an agent designed to both accept and make outbound calls

The agent calls sip.create_sip_participantto dial an on-call priest after collecting case info from an inbound caller. Every single attempt fails with this error after a ~32-second wait:

```TwirpError(code=canceled, message=twirp error unknown: transaction failed to complete (0 intermediate responses), status=408)```

“0 intermediate responses” reads to me as the carrier never returning even a 100 Trying to our INVITE. The participant is:

added to the destination room momentarily (LiveKit edge
accepts the INVITE), but the actual call never connects to any phone — we’ve verified by calling our own number and never seeing the phone ring.

Current trunk config (lk sip outbound list):
Name: ESCPMS
Address: outbound.livekit.cloud
Numbers: +1484990****
Authentication: ESCPMS / ****
Encryption: DISABLE

The Address and Authentication values are placeholders left over from the original Agent Builder → code export. I set

Our inbound number is provisioned through LiveKit Phone Numbers and inbound works correctly (it routes calls to our agent). I notice the docs

“LiveKit Phone Numbers currently only supports inbound calling. Support for outbound calls is coming soon.”

Three specific questions:

  1. Is outbound through LiveKit Phone Numbers actually enabled on our account today? If not, when can we expect it, and is there an alternative path (e.g. bring our own trunk) that’s available now?
  2. If outbound is enabled, what should the trunk’s Address and auth_username / auth_password actually be? The docs don’t show example values for managed-LiveKit outbound trunks, and the lk sip outbound createcommand’s --help doesn’t suggest defaults.
  3. Does encryption need to be enabled (TLS rather than DISABLE)? Many SIP termination services require TLS.

Happy to provide additional log excerpts, the agent code, or anything else you need. Thanks.

Can you give me an example of a call ID that failed from your dashboard? It starts with SCL_

Looking in an account that seemed to match yours and I see an outbound trunk with the SIP URI “outbound.livekit.cloud”. That is not a valid SIP URI. For outbound calls you will need a SIP provider that supports outbound calls. Currently LikeKit numbers only allows inbound calls.

Does that mean i need to assign a number to make outbound calls at all? or does that mean i can make out bound calls via the sip config without assigning a number?

@vyrus001, Outbound on LK doesn’t require an LK Phone Number at all. They’re two separate things: LK Phone Numbers is an inbound-only managed offering, and an outbound trunk points at a third-party SIP provider you bring (Twilio, Telnyx, Plivo, etc.) [ SIP outbound trunk | LiveKit Documentation ].

The four fields on the outbound trunk map to your provider:

  • Address: provider’s SBC hostname (e.g. <trunk>.pstn.twilio.com for Twilio, sip.telnyx.com for Telnyx) [same page]. The outbound.livekit.cloud placeholder @CWilson flagged is why it never gets even a 100 Trying.

  • Authentication: the username/password your provider issues for the trunk.

  • Numbers: caller-ID source numbers (the ones you own at that provider), not destination numbers. Per-call override is via sip_number.

  • Encryption: depends on the provider. Many prefer TLS, configure per their docs.

The Path forward you can go with is, pick a provider, buy a number there, create their outbound trunk allowing LK Cloud’s signaling IPs, then create the LK outbound trunk pointed at their hostname with their credentials.