
Partager:
Ingénieur en solutions clients chez Vonage. Fort d'une expérience en gestion de produits, en exploitation de réseaux et de systèmes, en assistance à la clientèle, en assurance qualité et en gestion d'équipe de développement de logiciels, Tony travaille dans l'industrie des télécommunications, d'abord en France, puis aux États-Unis. Il aide les grandes et petites entreprises internationales à développer des solutions utilisant des services programmables de voix, de messagerie, de vidéo et d'authentification multifactorielle.
Connecter des appels vocaux à un bot Amazon Voice
Temps de lecture : 6 minutes
Les plateformes d'IA actuelles offrent des capacités avancées avec des bots vocaux et textuels, des moteurs de transcription et des moteurs d'analyse des sentiments.
Ces capacités permettent aux développeurs de créer des bots qui remplissent une multitude de fonctions, notamment en aidant les appelants à passer des commandes, à faire des réservations, à obtenir de l'aide en cas de problème, et bien d'autres choses encore.
Dans ce tutoriel, nous vous guiderons dans la configuration d'un bot Amazon Lex de base, la mise en place d'une connexion de référence Lex et d'un exemple d'application Vonage Voice API, qui vous permettra d'appeler un numéro de téléphone et d'interagir avec le bot Lex via la voix.
Dans la première section, nous allons mettre en place un exemple de robot Amazon Lex.
Ensuite, nous établirons une connexion de référence Lex. Cette connexion de référence Lex permet un flux audio bidirectionnel de la voix de l'appelant et des réponses du robot Lex via des WebSockets. Elle relaie également les transcriptions et les scores de sentiment de Lex bot vers l'application Voice API.
Ensuite, nous mettrons en place un exemple d'application utilisant Voice API de Vonage de Vonage pour gérer un appel entrant, établir la liaison WebSocket, recevoir les transcriptions de l'appelant et du robot, ainsi que les résultats de l'analyse des sentiments des phrases de l'appelant.
Le diagramme ci-dessous donne un aperçu de cet exemple d'architecture d'intégration.
A diagram that outlines how Amazon Lex and the Vonage Voice API work together to create a voice bot
Conditions préalables
Pour effectuer les actions décrites dans les étapes suivantes, vous aurez besoin d'un compte Amazon Web Services. Si vous n'en avez pas, vous pouvez en créer un avant de commencer.
Vonage API Account
To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.
This tutorial also uses a virtual phone number. To purchase one, go to Numbers > Buy Numbers and search for one that meets your needs.
Configurer un exemple d'Amazon Lex Bot
Connectez-vous à votre console de gestion AWS ou créer un Account AWS si vous n'en avez pas encore.
Recherchez et allez sur Amazon Lex service, cliquez sur Créer pour lancer le processus d'installation du bot.
The Amazon Lex service dashboard
Dans le cadre de la procédure d'installation, vous aurez la possibilité de créer votre propre ou de Essayer un échantillon. Vous aurez besoin d'un exemple de robot pour cet exemple, alors cliquez sur Planifier un rendez-vous.
The Amazon Lex Bot Creation Dashboard
Ensuite, vous pouvez configurer le robot.
Vous pouvez conserver le nom de robot prédéfini ou en saisir un autre.
Notez le nom du bot (par exemple ScheduleAppointment), vous en aurez besoin plus tard.
The Lex bot setup screen from Amazon Web Services
Sélectionner la langue souhaitée
Sélectionner Oui pour l'analyse des sentiments
Pour cet exemple spécifique de robot, vous pouvez sélectionner Non pour COPPA
Une fois les réglages terminés, cliquez sur Créer.
Final steps in the bot setup process
Une fois le processus de création du bot terminé, vous verrez apparaître un écran similaire à celui illustré ci-dessous.
The bot has been created successfully
Ensuite, pour utiliser votre bot, vous devez le publier en cliquant sur Publier. Il vous sera alors demandé de choisir un alias pour le bot. Les alias sont utiles pour nommer les différentes versions de votre robot, comme celle que vous utilisez pour le développement ou celle que vous utilisez pour la production.
Notez le nom de l'alias que vous avez saisi (par exemple, staging). Vous en aurez besoin plus tard.
Adding an alias name to your Amazon Lex Bot
Cliquer Publier une fois de plus, vous finaliserez la configuration de votre échantillon de robot.
Notification that the bot has been published
Configuration de la connexion de référence Lex
Cloner la lex-reference-connection depuis GitHub et suivez les instructions décrites dans le readme.
Sélectionnez l'un des types de déploiement expliqués dans la section Code de connexion de référence de Lex Running.
notez l'argument
LEX_REFERENCE_CONNECTION(par exemple xxxx.ngrok.io, ou myserver.mycompany.com:40000), car vous en aurez besoin plus tard.
Mise en place de l'exemple d'application Voice API de Lex
Cloner l'application lex-sample-voice-application sur GitHub et suivez les instructions décrites dans ce dépôt.
Sélectionnez l'un des types de déploiement, comme expliqué dans la section Exécution de l'exemple d'application Voice API de Lex.
Notez le numéro de téléphone lié à votre application Voice API comme expliqué dans la section Configurer les informations d'identification et le numéro de téléphone de votre application Voice API de Vonage car il sera nécessaire à l'étape suivante.
Interagir par la Voice avec le Lex Bot
Appelez le numéro de téléphone lié à votre application Voice API pour interagir avec le robot Lex.
Vous verrez sur la console d'application de la connexion de référence Lex et sur la console d'application de l'API Voice de l'échantillon Lex les transcriptions et les résultats de l'analyse des sentiments.
Améliorer le Lex Bot
Lorsque vous appelez le robot Lex à l'aide du numéro de téléphone associé, vous avez peut-être remarqué que le robot n'émet pas de message d'accueil, de sorte que l'appelant connecté ne sait pas quand commencer à parler.
En outre, le robot ne diffuse pas de message de confirmation après que vous avez confirmé verbalement que vous souhaitiez un rendez-vous.
Améliorons notre exemple de robot Lex en abordant ces deux questions.
Demander à Lex Bot de jouer un message d'accueil
Dans votre console AWS, allez sur Amazon Lex, puis sur votre bot Lex. Cliquez sur l'icône [+] à côté de Intents.
The Lex Dashboard
Cliquez ensuite sur Créer une intention.
Creating an intent for a Lex bot
Vous serez invité à donner un nom à votre nouvelle intention. Une fois que vous en avez choisi un, vous pouvez cliquer sur Ajouter pour passer à l'étape suivante.
Entering a name for the intent
Sous Exemples d'énoncés:
Entrez exactement Good morningqui est actuellement codé dans l'exemple d'application Voice API de Lex en tant que TTS joué par Lex bot lorsque la WebSocket est établie.
Cliquez sur l'icône [+] pour ajouter le nouvel énoncé.
Adding new utterances to a Lex bot
Ensuite, sous Réponse cliquez sur Ajouter un message.
Adding a new message to the bot responder
Saisissez un ou plusieurs messages d'accueil. Le contenu et le nombre de messages sont entièrement libres. Par exemple, Bonjour, comment puis-je vous aider ?ou Bonjour, quelle est la raison de votre appel ?
N'oubliez pas de cliquer sur l'icône [+] pour chaque message saisi.
Adding a message response to a Lex bot
Après avoir ajouté tous les messages souhaités, cliquez sur Enregistrer l'intention.
Listing message responses
Ensuite, vous devrez reconstruire le robot en cliquant sur Construire. Une fois la construction terminée, allez-y et Publier votre bot une fois de plus, comme vous l'avez fait précédemment.
Il vous sera à nouveau demandé d'entrer un alias. Vous pouvez utiliser le même alias que celui que vous avez utilisé précédemment pour le bot d'exemple.
Entering 'staging' as the alias for the Lex bot
Test de la mise à jour de Lex Bot
Appelez le numéro de téléphone que vous avez lié à l'application lors des étapes précédentes, et vous entendrez "Please wait". Ce TTS de la plateforme API de Vonage est joué dès que la plateforme répond à votre appel.
Une fois la liaison WebSocket établie, la plateforme API de Vonage diffuse le message TTS "Good morning" au robot Lex (en tant qu'appelant, vous n'entendrez pas ce message).
Le Lex Bot joue l'un des messages de réponse (de l'intention d'accueil). Vous l'entendez au téléphone, confirmant la connexion avec le robot Lex.
Vous pouvez alors demander un rendez-vous (avec cet exemple Lex bot).
Diffuser un message de confirmation de rendez-vous
Dans votre console AWS, allez sur Amazon Lex, puis sur votre bot Lex. Cliquez surModifier.
Editing the Lex bot
Sous Réponsecliquez sur Ajouter un message.
Adding a new message to the Lex bot
Saisissez un ou plusieurs messages de réponse, par exemple :
Votre rendez-vous pour {Type de rendez-vous} le {Date} à {Heure} a été confirmé. Au revoir !
Les mots à l'intérieur des accolades curly braces correspondent à des slots liés à cette intention.
Cliquez ensuite sur l'icône [+] pour ajouter votre nouvelle réponse.
Adding a new message to the Lex bot
Pour finaliser votre nouveau message, cliquez sur Enregistrer l'intention.
Enfin, pour valider ces modifications, cliquez sur Construire pour reconstruire le robot avec les nouvelles modifications. Ensuite, vous devrez, une fois de plus, publier une nouvelle version. Vous pouvez conserver le même alias que lors des étapes précédentes.
A successfully published bot
Test de la version actualisée de Lex Bot
Pour tester ces nouveaux changements, appelez le numéro de téléphone lié à votre Account et interagissez avec le Lex bot pour fixer un rendez-vous. Cette fois, vous entendrez le message de confirmation que vous venez d'établir vous être lu par le robot Lex.
Partager:
Ingénieur en solutions clients chez Vonage. Fort d'une expérience en gestion de produits, en exploitation de réseaux et de systèmes, en assistance à la clientèle, en assurance qualité et en gestion d'équipe de développement de logiciels, Tony travaille dans l'industrie des télécommunications, d'abord en France, puis aux États-Unis. Il aide les grandes et petites entreprises internationales à développer des solutions utilisant des services programmables de voix, de messagerie, de vidéo et d'authentification multifactorielle.
