Telephony¶
SpeakNode integrates with telephony providers to enable AI agents to make and receive phone calls.
Supported Providers¶
| Provider | Inbound | Outbound | Notes |
|---|---|---|---|
| Twilio | Yes | Yes | Direct SIP trunk integration |
| VoxImplant | Yes | Yes | Via WebSocket Media Bridge (no direct SIP access) |
Inbound Calls¶
When a call comes in to a connected phone number:
- Telephony provider sends a webhook to the platform
- Webhook is received via Kafka
- Backend identifies the agent linked to the phone number
- LiveKit room is created with SIP participant
- AI agent is dispatched to the room
- Conversation begins
Phone Number Management¶
- Import existing numbers from Twilio or VoxImplant
- Link a phone number to a specific agent
- Configure per-number settings
Outbound Calls¶
Outbound calls can be initiated:
- Individually via the API
- In bulk via Outbound Campaigns
The platform creates a LiveKit room, dispatches the agent, and initiates the outbound call via the configured telephony provider.
VoxImplant Integration¶
VoxImplant does not provide direct SIP trunk access. The platform uses a WebSocket Media Bridge — a Node.js service that:
- Receives audio from VoxImplant via WebSocket
- Streams it into a LiveKit room
- Sends LiveKit audio back to VoxImplant
This allows full agent functionality with VoxImplant as the telephony backend.
SIP Trunk (LiveKit)¶
LiveKit Server includes a built-in SIP component that handles:
- SIP trunk registration
- Dispatch rules for routing calls to rooms
- Direct SIP-to-WebRTC bridging (for providers that support it)