Guide d'Integration Twilio

Integrer un agent IA conversationnel avec Twilio vous permet de creer des interactions vocales fluides et humaines. Ce guide vous accompagnera dans le processus de configuration de votre environnement, de configuration de votre agent et d'implementation de l'integration en utilisant JavaScript.
Prerequis
Avant de commencer, assurez-vous d'avoir:
- Un compte ElevenLabs
- Un agent conversationnel ElevenLabs configure
- Un compte Twilio avec un numero de telephone actif
- Node.js 16+ installe
- ngrok pour le developpement local
Configuration de l'Agent
Pour integrer avec Twilio, votre agent doit etre configure pour utiliser le format audio correct supporte par Twilio.
-
Configurer la Sortie TTS
- Naviguez vers les parametres de votre agent.
- Allez dans la Section Voice.
- Selectionnez "μ-law 8000 Hz" dans le menu deroulant.
-
Definir le Format d'Entree
- Naviguez vers les parametres de votre agent.
- Allez dans la Section Advanced.
- Selectionnez "μ-law 8000 Hz" pour le format d'entree.
Implementation
Initialiser le Projet
D'abord, configurez un nouveau projet Node.js:
mkdir conversational-ai-twilio
cd conversational-ai-twilio
npm init -y
npm pkg set type="module"Installer les Dependances
Ensuite, installez les dependances requises pour le projet:
npm install fastify @fastify/websocket twilio dotenvConfigurer les Variables d'Environnement
Creez un fichier .env:
ELEVENLABS_AGENT_ID=your_agent_id
TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token
TWILIO_PHONE_NUMBER=your_phone_numberCreer le Serveur
// server.js
import Fastify from 'fastify';
import fastifyWebsocket from '@fastify/websocket';
import twilio from 'twilio';
import dotenv from 'dotenv';
dotenv.config();
const fastify = Fastify({ logger: true });
await fastify.register(fastifyWebsocket);
// Gestionnaire TwiML pour les appels entrants
fastify.all('/incoming-call', async (request, reply) => {
const twimlResponse = `<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Connect>
<Stream url="wss://${request.headers.host}/media-stream" />
</Connect>
</Response>`;
reply.type('text/xml').send(twimlResponse);
});
// Gestionnaire WebSocket pour le stream media
fastify.register(async (fastify) => {
fastify.get('/media-stream', { websocket: true }, (connection, req) => {
console.log('Client connecte');
connection.socket.on('message', (message) => {
const data = JSON.parse(message);
if (data.event === 'media') {
// Traiter les donnees audio entrantes
const audioData = data.media.payload;
// Envoyer a ElevenLabs pour traitement
}
});
connection.socket.on('close', () => {
console.log('Client deconnecte');
});
});
});
// Demarrer le serveur
const start = async () => {
try {
await fastify.listen({ port: 3000 });
console.log('Serveur en cours d execution sur http://localhost:3000');
} catch (err) {
fastify.log.error(err);
process.exit(1);
}
};
start();Executer le Developpement Local
- Demarrez le serveur:
node server.js- Dans un nouveau terminal, demarrez ngrok:
ngrok http 3000- Configurez votre numero Twilio pour pointer vers l'URL ngrok.
Tester l'Integration
Appelez votre numero Twilio et testez la conversation avec l'agent IA.
Conclusion
Vous avez reussi a integrer un agent IA conversationnel avec Twilio. Vous pouvez maintenant avoir des conversations vocales naturelles par telephone avec votre agent IA.
Reference: Documentation Twilio | Documentation ElevenLabs
Discutez de votre projet avec nous
Nous sommes ici pour vous aider avec vos besoins en développement Web. Planifiez un appel pour discuter de votre projet et comment nous pouvons vous aider.
Trouvons les meilleures solutions pour vos besoins.
Articles connexes

Construire une Application d'IA Conversationnelle avec Next.js
Apprenez a construire une application web qui permet des conversations vocales en temps reel avec des agents IA en utilisant Next.js et ElevenLabs.

Comment générer des effets sonores avec l'API ElevenLabs en JavaScript
Apprenez à utiliser l'API ElevenLabs pour générer des effets sonores à partir de descriptions textuelles en JavaScript.

AI SDK 4.0 : Nouvelles Fonctionnalites et Cas d'Utilisation
Decouvrez les nouvelles fonctionnalites et cas d'utilisation d'AI SDK 4.0, incluant le support PDF, l'utilisation de l'ordinateur et plus encore.