Skip to content

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:

  1. Telephony provider sends a webhook to the platform
  2. Webhook is received via Kafka
  3. Backend identifies the agent linked to the phone number
  4. LiveKit room is created with SIP participant
  5. AI agent is dispatched to the room
  6. 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:

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:

  1. Receives audio from VoxImplant via WebSocket
  2. Streams it into a LiveKit room
  3. 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)