Next.JS
Lär dig skapa en webbapplikation som möjliggör röstsamtal med ElevenLabs AI-agenter
Den här guiden hjälper dig att skapa en webbklient som kan interagera med en ElevenLabs-agent. Du lär dig implementera röstsamtal i realtid, så att användare kan prata med en AI-agent som kan lyssna, förstå och svara naturligt med talsyntes.
Det här behöver du
- En ElevenLabs-agent som skapats enligt den här guiden
npminstallerat på ditt lokala system.- Vi använder Typescript i den här guiden, men du kan använda Javascript om du föredrar det.
Vill du ha ett komplett exempel? Se vår Next.js-demo på GitHub.

Konfiguration
Implementera ElevenLabs Agents
(Valfritt) Autentisera agenter med en signerad URL
Detta autentiseringssteg krävs bara för privata agenter. Om du använder en offentlig agent kan du
hoppa över det här avsnittet och använda agentId direkt i anropet till startSession.
Om du använder en privat agent som kräver autentisering måste du generera en signerad URL från din server. Det här avsnittet förklarar hur du konfigurerar det.
Det här behöver du
- Ett ElevenLabs-konto och en API-nyckel. Registrera dig här.
Skapa miljövariabler
Skapa en .env.local-fil i projektets rot:
- Se till att lägga till
.env.locali din.gitignore-fil för att undvika att känsliga autentiseringsuppgifter av misstag skickas till versionshanteringen. - Exponera aldrig din API-nyckel i klientkod. Håll den alltid säker på servern.
Uppdatera Conversation-komponenten
Ändra din conversation.tsx för att hämta och använda den signerade URL:en:
Signerade URL:er upphör att gälla efter en kort tid. Samtal som påbörjats före utgångstiden fortsätter dock utan avbrott. I en produktionsmiljö bör du implementera korrekt felhantering och logik för att uppdatera URL:er när nya samtal startas.
Nästa steg
Nu när du har en grundläggande implementering kan du:
- Lägga till visuell återkoppling för röstaktivitet
- Implementera felhantering och logik för nya försök
- Lägga till en visning av chatthistorik
- Anpassa gränssnittet efter ditt varumärke
För mer avancerade funktioner och anpassningsalternativ, se paketet @elevenlabs/react.
