Integração com a Vonage

Integre o ElevenAgents às chamadas de voz da Vonage usando um conector WebSocket.

Visão geral

Conecte o ElevenLabs Agents a chamadas da API de Voz ou da API de Vídeo da Vonage usando um aplicativo conector WebSocket. Isso permite streaming de áudio bidirecional em tempo real para casos de uso como chamadas PSTN, troncos SIP e clientes WebRTC.

Como funciona

O conector Node.js conecta a Vonage à ElevenLabs:

  1. A Vonage inicia uma conexão WebSocket com o conector para uma chamada ativa.
  2. O conector estabelece uma conexão WebSocket com o endpoint do ElevenLabs Agents.
  3. O áudio é retransmitido: Vonage (L16) -> Connector -> ElevenLabs (base64) e vice-versa.
  4. O conector gerencia eventos de conversa (user_transcript, agent_response, interruption).

Configuração

1

1. Obtenha suas credenciais da ElevenLabs

2

2. Configure o conector

Clone o repositório e configure o arquivo de ambiente.

git clone https://github.com/nexmo-se/elevenlabs-agent-ws-connector.git
cd elevenlabs-agent-ws-connector
cp .env.example .env

Adicione suas credenciais ao .env:

.env
ELEVENLABS_API_KEY = YOUR_API_KEY;
ELEVENLABS_AGENT_ID = YOUR_AGENT_ID;

Instale as dependências: npm install.

3

3. Exponha o conector (desenvolvimento local)

Use o ngrok ou um serviço semelhante para criar uma URL pública para o conector (porta padrão 6000).

ngrok http 6000

Anote a URL pública de Forwarding (por exemplo, xxxxxxxx.ngrok-free.app). Não inclua https:// ao configurar a Vonage.

4

4. Execute o conector

Inicie o aplicativo:

node elevenlabs-agent-ws-connector.cjs
5

5. Configure o aplicativo de voz da Vonage

Seu aplicativo da Vonage precisa se conectar ao endpoint WebSocket do conector (wss://YOUR_CONNECTOR_HOSTNAME/socket). Essa é a URL do ngrok da etapa 3.

  • Use o aplicativo de exemplo: Configure o aplicativo de exemplo da Vonage com PROCESSOR_SERVER definido como o nome de host do seu conector.
  • Atualize um aplicativo existente: Modifique seu Nexmo Call Control Object para incluir uma ação connect direcionada ao URI WebSocket do conector (wss://...) com content-type: audio/l16;rate=16000. Transmita os parâmetros de consulta necessários, como peer_uuid e webhook_url.
6

6. Teste

Faça uma chamada recebida ou efetuada pelo seu aplicativo da Vonage para interagir com o agente da ElevenLabs.

Implantação na nuvem

Para produção, implante o conector em um provedor de hospedagem estável (por exemplo, Vonage Cloud Runtime) com um nome de host público.