Overview
ElevenLabs Agents in VoxEngine
Benefits
The native ElevenLabs module connects Voximplant calls to ElevenLabs Agents for real-time, speech-to-speech conversations. The connector streams audio between Voximplant and ElevenLabs while keeping call control in VoxEngine.
Capability and feature highlights:
- Connect inbound and outbound calls to a single ElevenLabs agent ID.
- Bi-directional audio streaming with low latency and built-in media conversion.
- Barge-in support using interruption events and media buffer control.
- Real-time events for transcripts, responses, tool calls, and diagnostics.
- Client-side tool execution with
ClientToolCallandclientToolResult.
Architecture
ElevenLabs Agents is a stateful WebSocket service. VoxEngine opens a session and streams audio while receiving audio, transcripts, and events on the same connection.
Prerequisites
- ElevenLabs API key
- ElevenLabs Agent ID configured in the ElevenLabs console
Development notes
- Native VoxEngine module: load with
require(Modules.ElevenLabs)and create anElevenLabs.AgentsClientviaElevenLabs.createAgentsClient({ xiApiKey, agentId }). - Agent configuration: prompts, voices, and tools are configured in the ElevenLabs Agent console. Use
agentIdto select the agent to run. - Barge-in: listen for
ElevenLabs.AgentsEvents.Interruptionand callagentsClient.clearMediaBuffer()to stop current TTS audio. - Context and user text: optionally call
conversationInitiationClientData,contextualUpdate, oruserMessageto inject metadata or text. - Function calling: handle
ElevenLabs.AgentsEvents.ClientToolCalland respond withclientToolResult.
See the ElevenLabs module API reference for full details on methods, events, and types.
Examples
Links
Voximplant
- ElevenLabs Agents docs: https://voximplant.com/docs/voice-ai/elevenlabs
- ElevenLabs module API reference: https://voximplant.com/docs/references/voxengine/elevenlabs
- Voice AI product overview: https://voximplant.ai/
ElevenLabs
- ElevenLabs documentation: https://elevenlabs.io/docs