Gegenereerde audio versturen via Twilio
Handleiding · Hierbij wordt ervan uitgegaan dat je de ElevenAPI quickstart hebt voltooid en een Twilio-account hebt.
In deze handleiding leer je hoe je met Twilio en ElevenLabs een door AI gegenereerd bericht via een telefoongesprek verstuurt. Hiermee kun je hoogwaardige spraakberichten rechtstreeks naar je bellers sturen.
Accounts maken bij Twilio en ngrok
We gebruiken Twilio en ngrok voor deze handleiding, dus maak daar accounts aan.
De server maken met Express
Je project initialiseren
Maak een nieuwe map voor je project
Afhankelijkheden installeren
Dev-afhankelijkheden installeren
Je bestanden maken
De code begrijpen
Het binnenkomende gesprek afhandelen
Wanneer je je nummer belt, doet Twilio een POST-request naar je endpoint op /call/incoming.
Vervolgens gebruiken we twiml.connect om Twilio te vertellen dat we het gesprek via onze websocket willen afhandelen door de URL in te stellen op ons endpoint /call/connection.
De tekst-naar-spraak maken
Hier luisteren we naar berichten die Twilio naar ons websocket-endpoint stuurt. Wanneer we een start-berichtgebeurtenis ontvangen, genereren we audio met de ElevenLabs TypeScript SDK.
Het bericht versturen
Wanneer we de audio van ElevenLabs ontvangen, zetten we deze om naar een array buffer en sturen we de audio via de websocket naar Twilio.
Ngrok naar je applicatie laten verwijzen
Twilio vereist een openbaar toegankelijke URL. We gebruiken ngrok om de lokale poort van onze applicatie door te sturen en als openbare URL beschikbaar te maken.
Voer de volgende opdracht uit in je terminal:
Kopieer het ngrok-domein (zonder https://) om in je omgevingsvariabelen te gebruiken.
Je omgevingsvariabelen bijwerken
Werk het .env-bestand bij met je ngrok-domein en ElevenLabs API-sleutel.
De applicatie starten
Voer de volgende opdracht uit om de app te starten:
Twilio instellen
Volg de handleidingen van Twilio om een nieuw nummer te maken. Nadat je je nummer hebt gemaakt, ga je naar het tabblad “Configure” in Phone Numbers -> Manage -> Active numbers
Voer in het gedeelte “A call comes in” de volledige URL naar je applicatie in (zorg dat je het pad /call/incoming toevoegt):
Bijv. https://***ngrok.app/call/incoming
Bellen
Bel je nummer. Je hoort een bericht met de ElevenLabs-stem.
Tips voor deployment naar productie
Wanneer je de applicatie in productie uitvoert, moet je de omgevingsvariabele SERVER_DOMAIN instellen op die van je server. Werk ook de URL in Twilio bij zodat deze naar je productieserver verwijst.
Conclusie
Je hebt nu een basiskennis van het integreren van Twilio met ElevenLabs-stemmen. Als je nog vragen hebt of suggesties om deze blogpost te verbeteren, klik dan gerust hieronder op de knop “Suggest edits” of “Raise issue”.