Intégration Vonage

Intégrez ElevenAgents aux appels vocaux Vonage à l’aide d’un connecteur WebSocket.

Vue d’ensemble

Connectez ElevenLabs Agents aux appels Voice API ou Video API de Vonage à l’aide d’une application de connecteur WebSocket. Cette intégration permet la diffusion audio bidirectionnelle en temps réel pour des cas d’usage tels que les appels PSTN, les trunks SIP et les clients WebRTC.

Fonctionnement

Le connecteur Node.js fait le lien entre Vonage et ElevenLabs :

  1. Vonage établit une connexion WebSocket avec le connecteur pour un appel actif.
  2. Le connecteur établit une connexion WebSocket avec le point de terminaison ElevenLabs Agents.
  3. L’audio est relayé : Vonage (L16) -> Connecteur -> ElevenLabs (base64), et inversement.
  4. Le connecteur gère les événements de conversation (user_transcript, agent_response, interruption).

Configuration

1

1. Obtenez vos identifiants ElevenLabs

  • Clé API : les clés API se trouvent dans l’onglet API Keys de la page Developers, accessible depuis la barre latérale.
  • ID de l’agent : recherchez l’agent dans le Dashboard ElevenAgents. Après avoir sélectionné l’agent, cliquez sur le bouton des paramètres et sélectionnez « Copy Agent ID ».
2

2. Configurez le connecteur

Clonez le dépôt et configurez le fichier d’environnement.

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

Ajoutez vos identifiants à .env :

.env
ELEVENLABS_API_KEY = YOUR_API_KEY;
ELEVENLABS_AGENT_ID = YOUR_AGENT_ID;

Installez les dépendances : npm install.

3

3. Exposez le connecteur (développement local)

Utilisez ngrok, ou un service similaire, pour créer une URL publique pour le connecteur (port 6000 par défaut).

ngrok http 6000

Notez l’URL publique Forwarding (par exemple, xxxxxxxx.ngrok-free.app). N’incluez pas https:// lors de la configuration de Vonage.

4

4. Exécutez le connecteur

Démarrez l’application :

node elevenlabs-agent-ws-connector.cjs
5

5. Configurez l’application vocale Vonage

Votre application Vonage doit se connecter au point de terminaison WebSocket du connecteur (wss://YOUR_CONNECTOR_HOSTNAME/socket). Il s’agit de l’URL ngrok de l’étape 3.

  • Utiliser l’application exemple : configurez l’application exemple Vonage avec PROCESSOR_SERVER défini sur le nom d’hôte de votre connecteur.
  • Mettre à jour une application existante : modifiez votre Nexmo Call Control Object afin d’inclure une action connect ciblant l’URI WebSocket du connecteur (wss://...) avec content-type: audio/l16;rate=16000. Transmettez les paramètres de requête nécessaires, tels que peer_uuid et webhook_url.
6

6. Testez

Effectuez un appel entrant ou sortant via votre application Vonage pour interagir avec l’agent ElevenLabs.

Déploiement dans le cloud

Pour la production, déployez le connecteur chez un fournisseur d’hébergement stable (par exemple, Vonage Cloud Runtime) disposant d’un nom d’hôte public.