📢 Günstigste Gesprächstarife – garantiert!

📢 Keine Limits. Keine Einschränkungen! Die günstigsten Gesprächstarife – garantiert!

Hilfezentrum

Connect LiveKit to Bitcall (Outbound SIP Trunk)

AI Voice Agents

Connect LiveKit to Bitcall (Outbound SIP Trunk)

Use Bitcall as the outbound SIP trunk for a LiveKit voice agent. Create a SIP outbound trunk (address, numbers, auth), then dial out with createsipparticipant.

June 4, 2026

4 Min. Lesezeit

Teilen:
Connect LiveKit to Bitcall (Outbound SIP Trunk)

Before you begin

💡 Heads-up: Bitcall is outbound-only today — a clean fit for LiveKit agents that place calls. Works with self-hosted LiveKit or LiveKit Cloud. Inbound numbers (DIDs) are coming soon.


"LiveKit runs your real-time agent. Bitcall is the outbound trunk it dials through." 🤖📞

🧰 What You'll Need

  • A LiveKit project (self-hosted or LiveKit Cloud) with the lk CLI installed, or dashboard access
  • A Bitcall SIP account (username + password) — see Set Up Your First SIP Account
  • An outbound Caller ID (CLI) you're allowed to present, in E.164
  • A little Bitcall balance (prepaid)

🔑 Step 1: Get Your Bitcall SIP Details

Setting Value
SIP address (trunk domain) gateway.bitcall.io
Port 5060
Auth SIP username + password

➕ Step 2: Create a SIP Outbound Trunk

LiveKit dials out through a SIP outbound trunk that holds your provider endpoint and credentials. Create outbound-trunk.json:

{
  "trunk": {
    "name": "Bitcall Outbound Trunk",
    "address": "gateway.bitcall.io",
    "numbers": ["YOUR_OUTBOUND_CALLER_ID"],
    "auth_username": "YOUR_BITCALL_SIP_USERNAME",
    "auth_password": "YOUR_BITCALL_SIP_PASSWORD"
  }
}

Then create it with the CLI:

lk sip outbound create outbound-trunk.json

📋 Copy the returned Trunk ID — you'll need it to place calls.

  • address is your Bitcall SIP host (gateway.bitcall.io).
  • numbers is the outbound Caller ID you present (not a Bitcall DID — Bitcall is outbound-only).
  • On LiveKit Cloud, you can do the same from Telephony → SIP trunks → Create new trunk → JSON editor → Outbound.
  • Optional: set destination_country to originate from a region close to where you're calling.

🎭 Step 3: Set Your Caller ID (CLI)

Caller-ID behavior depends on the destination country and operator rules: Change or Manage Your Caller ID.


🚀 Step 4: Place an Outbound Call

Dial a number into a room using the trunk (CLI shown; the same exists in the SDKs via create_sip_participant):

lk sip participant create \
  --room "my-room" \
  --trunk "YOUR_TRUNK_ID" \
  --call "NUMBER_YOU_ARE_CALLING" \
  --identity "outbound-caller"

For an AI agent, dispatch your LiveKit Agent into the room, then create the SIP participant to dial the user — see LiveKit's "outbound calls" agent guide. 📞🎉


🛠️ Troubleshooting Table

Problem Likely cause & fix
CreateSIPParticipant fails immediately The trunk's auth was rejected by Bitcall — re-check auth_username / auth_password and address.
Connected but no audio / one-way Media-path / NAT issue. Verify your LiveKit SIP service networking and firewall. See AI voice calls dropping after 30 seconds.
Call drops after ~30–60 seconds RTP inactivity during the agent's thinking gaps → RTP keepalives + raise the timeout. See AI voice calls dropping after 30 seconds.
Caller ID wrong / missing CLI rules vary by destination. See Change or Manage Your Caller ID.
Can't dial a country Ensure the number is +E.164, your balance is funded, and the route is enabled.

🧠 TL;DR Recap

✅ Create a SIP outbound trunk: address = gateway.bitcall.io, numbers = [your CLI], plus your SIP username/password ✅ lk sip outbound create (or LiveKit Cloud JSON editor) → copy the Trunk ID ✅ Dial with lk sip participant create / create_sip_participant, agent dispatched into the room ☕


Related: SIP trunking for AI voice agents (full explainer) · AI voice calls dropping after 30 seconds · Set Up Your First SIP Account


Vorheriger Beitrag

Connect ElevenLabs to Bitcall (Outbound SIP Trunk)

Nächster Beitrag

Kein nächster Beitrag

Auf dieser Seite
​

Before you begin

🧰 What You'll Need

🔑 Step 1: Get Your Bitcall SIP Details

➕ Step 2: Create a SIP Outbound Trunk

🎭 Step 3: Set Your Caller ID (CLI)

🚀 Step 4: Place an Outbound Call

🛠️ Troubleshooting Table

🧠 TL;DR Recap

Brauchst du weitere Hilfe?

Du findest nicht, wonach du suchst? Unser Support-Team hilft gerne.

Kontaktiere uns