Next.JS
Découvrez comment créer une application web permettant des conversations vocales avec des agents IA ElevenLabs
Ce tutoriel vous guidera dans la création d’un client web capable d’interagir avec un agent ElevenLabs. Vous apprendrez à mettre en œuvre des conversations vocales en temps réel, permettant aux utilisateurs de parler à un agent IA capable d’écouter, de comprendre et de répondre naturellement grâce à la synthèse vocale.
Prérequis
- Un agent ElevenLabs créé en suivant ce guide
npminstallé sur votre système local.- Nous utiliserons Typescript dans ce tutoriel, mais vous pouvez utiliser Javascript si vous le préférez.
Vous cherchez un exemple complet ? Consultez notre démo Next.js sur GitHub.

Configuration
Mettre en œuvre les agents ElevenLabs
(Facultatif) Authentifier les agents avec une URL signée
Cette étape d’authentification est requise uniquement pour les agents privés. Si vous utilisez un agent public, vous pouvez ignorer cette section et utiliser directement agentId dans l’appel startSession.
Si vous utilisez un agent privé qui exige une authentification, vous devrez générer une URL signée depuis votre serveur. Cette section explique comment procéder.
Prérequis
- Un compte ElevenLabs et une clé API. Inscrivez-vous ici.
Créer des variables d’environnement
Créez un fichier .env.local à la racine de votre projet :
- Veillez à ajouter
.env.localà votre fichier.gitignoreafin d’éviter de valider accidentellement des identifiants sensibles dans votre gestionnaire de versions. - N’exposez jamais votre clé API dans le code côté client. Conservez-la toujours de manière sécurisée sur le serveur.
Créer une route API
Créez un fichier app/api/get-signed-url/route.ts :
Mettre à jour le composant Conversation
Modifiez votre fichier conversation.tsx pour récupérer et utiliser l’URL signée :
Les URL signées expirent après une courte période. Toutefois, les conversations lancées avant leur expiration se poursuivent sans interruption. En environnement de production, mettez en œuvre une gestion appropriée des erreurs et une logique de renouvellement des URL pour démarrer de nouvelles conversations.
Étapes suivantes
Vous disposez désormais d’une implémentation de base. Vous pouvez :
- Ajouter un retour visuel sur l’activité vocale
- Mettre en œuvre une logique de gestion des erreurs et de nouvelle tentative
- Ajouter l’affichage de l’historique des conversations
- Personnaliser l’interface pour l’adapter à votre marque
Pour des fonctionnalités et des options de personnalisation plus avancées, consultez le package @elevenlabs/react.
