Phone numbers for LiveKit Agents — SIP trunk setup with DIDHub
LiveKit Agents is the open-source agents framework + media plane built around LiveKit's WebRTC infrastructure. DIDHub bridges PSTN traffic into LiveKit's media plane via SIP-to-LiveKit gateway, giving you phone-number access for OpenAI Realtime, Cartesia, Deepgram, ElevenLabs, and any other agent stack you build on top of LiveKit.
Why DIDHub for LiveKit Agents
- DTLS-SRTP for WebRTC media. LiveKit Agents runs on LiveKit's WebRTC media plane. DIDHub supports DTLS-SRTP encrypted media for clean WebRTC bridging.
- Sub-50ms regional ingress. LiveKit deployments are typically multi-region. DIDHub's regional SIP/RTP edges keep PSTN ingress close to your LiveKit region.
- STIR/SHAKEN A-attestation. For US/CA outbound from LiveKit Agent deployments.
- Open-source-friendly approach. LiveKit is open source; DIDHub is happy to integrate with custom agent code paths and unreleased frameworks.
BYOC setup — step by step
- Sign up at /signup and provision DIDs.
- Generate DIDHub SIP credentials.
- In your LiveKit deployment: configure the SIP-to-LiveKit gateway (LiveKit's SIP integration) with DIDHub credentials.
- Configure the dispatch rule that routes inbound DID calls to the right LiveKit room / agent.
- Wire your LiveKit Agent code (Python or Node SDK) to handle the inbound participant.
- Test inbound; verify audio quality and STT/LLM/TTS pipeline latency.
Caller-ID configuration
For outbound calls, your LiveKit Agent code or dispatch logic specifies the From-header. Use the DIDHub-allocated DID. For US: A-attestation is automatic.
For US/CA outbound: DIDHub signs every call with STIR/SHAKEN attestation A on DIDHub-allocated and DIDHub-ported numbers. This is the level that mobile carriers (T-Mobile, Verizon, AT&T) treat with baseline trust — calls signed with weaker attestation are increasingly flagged as “Spam Likely” or sent straight to voicemail. See STIR/SHAKEN explained for the full background.
For non-US destinations: present a local DID as Caller-ID for best answer rates. AI agent calling a Madrid customer should present a +34 (Spanish) Caller-ID, not a US number. DIDHub serves 136 countries with dedicated landing pages so you can match Caller-ID to destination.
Latency & regional ingress
Realtime AI voice is brittle to network latency — an extra 100ms of SIP egress can break the natural-conversation feel. DIDHub operates SIP/RTP edges in:
- NOAM: Ashburn (US-East), San Jose (US-West), Dallas
- EU: Frankfurt, Amsterdam
- APAC: Singapore, Tokyo
- MENA: Dubai
Pick the edge nearest to your LiveKit Agents inference region. Typical sub-50ms regional ingress for the closest pair. If you need a region we don't list, talk to [email protected] — we add edges in response to customer demand.
FAQ
How does LiveKit's SIP integration work with DIDHub?
LiveKit has a livekit-sip service that bridges SIP to LiveKit rooms. Configure it with DIDHub SIP credentials and dispatch rules per inbound DID.
Can I run OpenAI Realtime on LiveKit + DIDHub?
Yes — this is a popular pattern. PSTN to DIDHub to livekit-sip to LiveKit room with an Agent that bridges to OpenAI Realtime via WebSocket.
What about latency?
LiveKit's media plane is low-latency by design. DIDHub's regional ingress keeps the PSTN-to-LiveKit hop tight. Pick the DIDHub edge closest to your LiveKit region.
Is the integration self-hosted-LiveKit only or does it work with LiveKit Cloud?
Both. LiveKit Cloud has its own SIP support; self-hosted LiveKit needs the livekit-sip service deployed alongside.
Provision your first LiveKit Agents DID
Sign up at /signup, pick a country / area code, and route the DID to your LiveKit Agents BYOC SIP trunk. $1.99/mo for a US number, sub-60-second activation on most countries. No commits.
Ready to get a number?
Pick a DID in 130+ countries from $1.99/month. Activates instantly on most numbers.