Ce billet de blog est co-écrit avec Nick Vargas et Anna Schreiber d'Accenture.
La planification des rendez-vous avec les clients est souvent un processus manuel et laborieux. Vous pouvez utiliser les avancées de la technologie en libre-service pour automatiser la prise de rendez-vous.
Dans cet article de blog, nous vous montrons comment créer une solution de prise de rendez-vous en libre-service construite avec Amazon Lex ainsi que Connexion Amazon. Cette solution permet aux utilisateurs de créer des rendez-vous via Meta Messenger et de recevoir des confirmations de rendez-vous via un message mobile SMS. Il fournit également un tableau de bord Web afin que vous puissiez appeler les utilisateurs avec un bouton en un seul clic à l'heure prévue.
Amazon Lex s'intègre à Meta Messenger et peut être utilisé pour activer les conversations de chat. Lex est un service d'intelligence artificielle (IA) entièrement géré avec compréhension du langage naturel (NLU) pour concevoir, créer, tester et déployer des interfaces conversationnelles dans les applications.
Vue d'ensemble de la solution
Le diagramme d'architecture ci-dessous montre un aperçu de haut niveau de l'interaction entre les différents composants et services AWS. La solution se compose de ces composants principaux : l'interaction avec le client à l'aide de Meta Messenger, la prise de rendez-vous via SMS activée par Lex et un numéroteur sortant client de Connect. Ce numéroteur sortant facilite la création d'un appel sortant vers le client à partir d'une interface utilisateur simple.
Cet article utilise l'exemple de conversation de bot suivant :
Utilisateur: Je souhaite prendre rendez-vous.
Agent: Quel rendez-vous puis-je vous obtenir ? Vous pouvez dire Facturation, Général ou Offres.
Utilisateur: Facturation
Agent: Quel est votre prénom?
Utilisateur: Samir
Agent: Quel est votre numéro de téléphone avec l'indicatif du pays ?
Utilisateur: +10001234567
Agent: Quand dois-je programmer votre rendez-vous de facturation ?
Utilisateur: La semaine prochaine mardi
Agent: À quelle heure dois-je programmer le rendez-vous de facturation ?
Utilisateur: 9h00
Agent: Sameer, 09h00 est disponible, dois-je prendre rendez-vous ?
Utilisateur: Oui
Agent: Merci Sameer, votre rendez-vous est confirmé pour 09h00, et nous avons envoyé les détails à votre numéro de téléphone.
Pour le composant planificateur et notification client, un AWS Lambda handler est utilisé pour traiter la demande de planification. Les informations de rendez-vous sont ensuite enregistrées dans un Amazon DynamoDB base de données. Lorsque les informations sont enregistrées avec succès, une notification est envoyée au client confirmant les détails du rendez-vous par SMS en utilisant Amazon Pinpoint.
Une application React.js est créée pour afficher les rendez-vous clients enregistrés à partir de la base de données dans un format d'affichage de calendrier. Cela permet aux employés d'identifier facilement les clients qui doivent être appelés. Un bouton d'appel de l'entrée de calendrier est cliqué pour lancer l'appel. Cela placera immédiatement une demande d'appel sortant pour connecter le client à l'employé à l'aide d'Amazon Connect.
Pré-requis
Pour ce projet, vous devez avoir les prérequis suivants :
- Téléchargé les fichiers de code à partir du GitHub référentiel.
Le référentiel contient :- Les fichiers de l'application React, situés sous le UI
- Les flux de contact Amazon Connect, situés sous backend/connect/contact_flows Il existe quatre flux de contacts pour cette démo avec des noms de fichiers
AgentWhisper
,CustomerWaiting
,InboundCall
ainsi queOutboundCall
. - Un fichier zip pour un Amazon Lex Bot, situé dans back-end/lex répertoire avec le nom de fichier AppointmentSchedulerBot.zip.
- npm installé sur votre ordinateur local. Se référer à comment installer node.js et npm sur votre machine,
Le déploiement de cette solution est automatisé dans la mesure du possible à l'aide de CloudFormation, cependant, certaines configurations et étapes du déploiement sont manuelles.
Déployez la solution
Pour configurer l'infrastructure requise pour l'application de démonstration du planificateur de rendez-vous dans votre compte AWS, procédez comme suit :
- Connectez-vous à la Console de gestion AWS.
- Selectionnez Lancer la pile:
- Sur le Créer une pile page, sous Spécifiez le modèle, choisissez Télécharger un fichier modèle.
- Choisissez le
AppointmentsSchedulerCFTemplate
fichier que vous avez téléchargé depuis GitHub. - Selectionnez Suivant.
- Pour Nom de la pile, entrez un nom unique pour la pile, tel que
AppointmentSchedulerDemo
.
- Selectionnez Suivant, puis choisissez Suivant sur le Configurer les options de pile .
- Sur le Avis page, sélectionnez Je reconnais qu'AWS CloudFormation peut créer des ressources IAM et choisissez Création.
La pile génère les ressources suivantes :
-
- La table DynamoDB
AppointmentSchedulerTable
- L'application Amazon Pinpoint
AppointmentSchedulerPinpointApp
- Deux Gestion des identités et des accès AWS (IAM) politiques :
AppointmentSchedulerPinpointPolicy
AppointmentSchedulerDynamoApiPolicy
- Deux rôles IAM :
AppointmentsLambdaRole
OutboundContactLambdaRole
- Deux fonctions Lambda :
AppointmentScheduler
AppointmentSchedulerOutboundContact
- La Passerelle d'API Amazon rendez-vous
- Amazon CloudFront distribution
- La Service de stockage simple Amazon (Amazon S3) compartiment
appointment-scheduler-website
- La table DynamoDB
Configurer l'application Amazon Pinpoint
Pour configurer l'application Amazon Pinpoint, procédez comme suit :
- Allez à Localiser la console.
- Accédez à la Rendez-vousSchedulerPinpointApp déployé ci-dessus.
- Dans le menu de gauche sous Paramètres cliquez SMS et voix.
- Sous Paramètres de nombre, cliquez sur Demander un numéro de téléphone.
- Sélectionnez votre pays d'origine, choisissez Sans fraisEt cliquez Suivant, puis Demande.
Le bot Amazon Lex pour ce post a une intention, MakeAppointment
, qui pose à l'utilisateur la série de questions de l'exemple précédent pour obtenir le type de rendez-vous, la date, l'heure, le nom et le numéro de téléphone du client.
AppointmentTypeValue
est le seul type d'emplacement personnalisé pour ce bot et prend l'une des trois valeurs suivantes : Facturation, Général ou Offres. Les créneaux Nom, Téléphone, Date et Heure utilisent chacun le type de créneau intégré fourni par Amazon Lex.
Déployer le bot Amazon Lex
Pour déployer le bot, importez d'abord le bot Amazon Lex (AppointmentSchedulerLex.zip
) dans votre compte.
- Connectez-vous à la Console Amazon Lex V2.
- Si c'est la première fois que vous utilisez Amazon Lex, la page d'accueil s'affiche, choisissez Créer un bot.
- Lorsque la page Créer votre bot s'affiche, faites défiler vers le bas de la page et sélectionnez Annuler. Si ce n'est pas la première fois que vous utilisez Amazon Lex, ignorez cette étape.
- Selectionnez Actions, puis L’.
- Entrer Planificateur de rendez-vousBot pour le nom du bot, puis choisissez l'archive .zip à importer.
- Sous autorisations IAM, choisissez Créez un rôle avec des autorisations Amazon Lex de base.
- Sous COPPA, choisissez Non.
- Cliquez L’.
- Ouvrez le bot en cliquant sur le nom du bot.
- Sous Déploiement dans le menu de gauche, cliquez sur Alias, sélectionnez TestBotAlias et cliquez sur Anglais (États-Unis) sous Langues. Choisissez le
AppointmentScheduler
Fonction Lambda et cliquez sur Épargnez.
- Sous Versions du bot dans le menu de gauche, sélectionnez Intentions et en bas à droite de la page, cliquez sur Développer.
- [Facultatif] Une fois la compilation terminée, cliquez sur Teste pour tester le bot à l'aide de la fenêtre qui apparaît à droite (cliquez sur l'icône du microphone pour parler à votre bot ou tapez dans la zone de texte).
Configurer une instance Amazon Connect
Pour configurer votre instance Amazon Connect et vos flux de contact, procédez comme suit :
- Configurez une instance Amazon Connect.
- Allez à Console Amazon Connect.
- Si c'est la première fois que vous accédez à la console Amazon Connect, vous verrez la page d'accueil, choisissez Débuter.
- Si ce n'est pas la première fois que vous utilisez Amazon Connect, cliquez sur Ajouter une instance.
- Pour Gestion d'identité, sélectionnez Utilisateurs du magasin dans Amazon Connect.
- Pour URL d'accès, saisissez un nom unique pour votre instance, par exemple,
AppointmentSchedulerDemo
, Puis choisissez Suivant. - Sur le Ajouter un administrateur page, ajoutez un nouveau compte administrateur pour Amazon Connect. Utilisez ce compte pour vous connecter ultérieurement à votre instance à l'aide de l'URL d'accès unique. Cliquez sur Prochaine étape.
- Sur les deux pages suivantes - Options de téléphonie et stockage de données – acceptez les paramètres par défaut et choisissez Prochaine étape.
- Sur le Réviser et créer page, choisissez Créer une instance.
- Ajoutez les bots Amazon Lex à votre instance Amazon Connect nouvellement créée.
- Sélectionnez l'alias d'instance de l'instance que vous venez de créer.
- Selectionnez Flux de contact.
- Sous Amazon Lex, utilisez le menu déroulant pour sélectionner le
AppointmentSchedulerBot
et l'alias par défaut.
- Selectionnez + Ajouter le robot Amazon Lex. Si le nom de votre bot n'apparaît pas dans la liste, rechargez la page.
- Connectez-vous à l'instance et revendiquez un numéro de téléphone
- Cliquez sur l'URL de connexion de votre instance Connect.
- Entrez les informations d'identification de l'administrateur que vous avez saisies lors de la création de l'instance. Cela ouvrira la console Connect.
- Dans le tableau de bord, sous Explorez vos canaux de communication Sélectionner Afficher les numéros de téléphone sur la droite.
- Cliquez Réclamer un numéro.
- Choisissez un Pays et laissez le type par défaut de SDA (numérotation directe à l'arrivée), choisissez un numéro de téléphone dans la liste déroulante, puis cliquez sur Suivant.
- Cliquez Épargnez.
- Ajoutez le
OutboundQueue
- Dans le menu de navigation de gauche, choisissez Queues dans le menu Routage.
- Cliquez Ajouter une nouvelle file d'attente.
- Nommez la file d'attente
OutboundQueue
, utilisez la liste déroulante pour définir les heures d'ouverture sur les heures de base et utilisez la liste déroulante pour le numéro d'identification de l'appelant sortant pour sélectionner le numéro de téléphone que vous avez réclamé plus tôt.
- Cliquez Ajouter une nouvelle file d'attente.
- Dans le menu de navigation de gauche, choisissez Profils de routage du Utilisateurs menu.
- Cliquez Profil de routage de base. En dessous de Files d'attente de profils de routage, ajoutez OutboundQueue et cliquez sur Épargnez.
- Ajoutez le numéro de téléphone à
BasicQueue
- Dans le menu de navigation de gauche, choisissez Queues dans le menu Routage.
- Cliquez sur
BasicQueue
. - Dans le champ Numéro d'identification de l'appelant sortant, ajoutez le numéro de téléphone que vous avez demandé précédemment.
- Cliquez Épargnez en haut à droite.
- Importer le
InboundCall
flux de contacts- Dans le menu de navigation de gauche, choisissez Flux de contacts dans le menu Routage.
- Selectionnez Créer un flux de contacts.
- Dans la partie droite de la page, cliquez sur le flèche vers le bas et cliquez sur Flux d'importation (bêta).
- Trouvez le Appel entrant fichier et choisissez L’.
- Cliquez Publier.
- Ensuite, associez ce flux au numéro de téléphone.
- Importer le
AgentWhisper
,CustomerWaiting
etOutboundCall
flux de contacts- Dans le menu de navigation de gauche, choisissez Contactez-Nous Flux sous Routage.
- Cliquez Créer un flux Agent Whisper.
- Sur le côté droit de la page, cliquez sur la flèche vers le bas et cliquez sur Flux d'importation (bêta).
- Trouvez le fichier AgentWhisper et choisissez L’.
- Cliquez Publier.
- Revenez au Flux de contacts liste et cliquez sur la flèche vers le bas à côté de Créer un flux de contacts.
- Cliquez sur Créer Flux de file d'attente des clients.
- Sur le côté droit de la page, cliquez sur la flèche vers le bas et cliquez sur Importer le flux (bêta).
- Trouvez le
CustomerWaiting
fichier et choisissez Importer. - Cliquez sur Publier.
- Revenez à la liste des flux de contacts et cliquez sur la flèche vers le bas à côté de Créer un flux de contacts.
- Choisissez Créer un flux de contacts.
- Sur le côté droit de la page, cliquez sur la flèche vers le bas et cliquez sur Importer le flux (bêta).
- Trouvez le
OutboundCall
fichier du référentiel GitHub que vous avez téléchargé précédemment et choisissez Importer. - Cliquez sur Publier.
Modifier les fonctions Lambda :
- Allez à Console Lambda.
- Cliquez sur le
AppointmentScheduler
la fonction. - Cliquez sur configuration ainsi que Variables d'environnement dans le menu de gauche.
- Cliquez Modifier. Remplacez la valeur par votre Pinpoint ID du projet ainsi que Numéro sans fraisCliquez sur Épargnez.
- Retour à la Console Lambda et cliquez sur le
AppointmentSchedulerOutboundContact
la fonction. - Répétez les étapes 3 et 4, en remplaçant les valeurs de
CONTACT_FLOW
,INSTANCE_ID
ainsi queQUEUE_ID
avec les bonnes valeurs. Cliquez sur Épargnez une fois fait.- Pour trouver l'ID du flux de contacts, accédez au
OutboundCall
Contactez Flow dans la console Amazon Connect et cliquez sur la flèche à côté de Afficher des informations supplémentaires sur le flux. L'ID de flux de contacts est la dernière valeur après flux de contact/.
- Pour trouver l'ID d'instance, accédez à la console Amazon Connect et cliquez sur l'alias de votre instance. L'ID d'instance est la dernière valeur de l'ARN de l'instance après exemple/.
- Pour trouver l'ID de la file d'attente, accédez au
OutboundQueue
dans la console Amazon Connect et cliquez sur la flèche à côté de Afficher des informations supplémentaires sur la file d'attente. L'ID de flux de contacts est la dernière valeur après file d'attente/.
- Pour trouver l'ID du flux de contacts, accédez au
Les robots Lex et l'instance Amazon Connect sont maintenant prêts à fonctionner. Ensuite, nous allons déployer l'interface utilisateur.
Modifier la route de la passerelle API :
- Allez à Console API Gateway
- Cliquez sur l'instance nommée Rendez-vous
- Sous la section ressources, cliquez sur la méthode POST appartenant à la ressource /outcall.
- Cliquez Demande d'intégration.
- Cliquez ensuite sur l'icône de modification située à droite du champ Fonction Lambda. Cliquez ensuite sur l'icône de coche qui est apparue à droite du champ de texte.
- Cliquez sur OK pour ajouter une autorisation à la fonction Lambda.
Déployez l'interface utilisateur :
- Configurer l'interface utilisateur avant le déploiement
- Dans votre éditeur de code préféré, ouvrez le ui dossier à partir des fichiers de code téléchargés.
- remplacer et avec votre API ID (accessible sous la colonne ID du Console de passerelle API) et la région de vos ressources déployées dans les lignes suivantes : 103, 168, 310, 397, 438, 453.
- remplacer avec le nom de votre instance Amazon Connect aux lignes 172 et 402.
- [Facultatif] ajoutez un logo d'application dans le fichier index.js, ligne 331 :
Dans le fichier index.html, ligne 5 :
- Dans un terminal, accédez au ui dossier du projet téléchargé.
- Courir installation npm. Cela prendra quelques minutes.
- Courir build npm run-script. Cela va générer une dossier de construction dans l' ui répertoire.
- Ajoutez les fichiers de code au bucket S3 :
- Allez à Console S3.
- Recherchez le bucket déployé avec la CloudFormation Stack, rendez-vous-site-web-.
- Faites glisser et déposez le contenu du construire dossier dans le répertoire ui créé à la dernière étape dans le bucket.
- Cliquez Téléchargement.
Vous devriez maintenant pouvoir accéder à l'application à partir de la distribution CloudFront.
- Ajoutez la distribution CloudFront en tant qu'origine approuvée.
-
- Accédez à la console Amazon Connect.
- Sélectionnez l'alias d'instance de l'instance à laquelle ajouter le bot.
- Choisissez Origines approuvées.
- Cliquez sur + Ajouter une origine et saisissez l'URL de votre distribution CloudFront.
- Cliquez sur Ajouter.
-
- Accédez maintenant à votre URL de distribution CloudFront plus index.html. (par exemple,
https:// <DistributionDomainName>.cloudfront.net/index.html
)
Nettoyer
Une fois cette solution terminée, assurez-vous de nettoyer votre environnement AWS afin de ne pas encourir de frais indésirables.
- Allez à Console S3, videz votre bucket créé par le template CloudFormation (appointment-scheduler-website).
- Allez à Console CloudFormation, supprimez votre pile. Assurez-vous que toutes les ressources associées à cette pile ont été supprimées avec succès.
- Allez à Console Amazon Connect, supprimez votre instance.
- Allez à Console Amazon Lex, supprimez le bot que vous avez créé.
Conclusion
Pour ce blog, Accenture et AWS ont collaboré pour développer une solution d'apprentissage automatique qui met en évidence l'utilisation des services AWS pour créer un planificateur de rendez-vous automatisé. Cette solution montre à quel point il est facile de créer une solution de planification de rendez-vous dans AWS. La capacité d'Amazon Lex à prendre en charge des services de messagerie tiers tels que Meta Messenger étend la portée potentielle de la solution sur plusieurs canaux. La notification client par SMS est mise en œuvre avec un minimum d'effort à l'aide d'Amazon Pinpoint. Avec Amazon Connect, un numéroteur sortant est intégré de manière transparente à l'application Web d'affichage du calendrier, permettant aux employés de se connecter immédiatement aux clients avec un simple bouton d'appel en un clic.
Vous pouvez accélérer l'innovation avec Accenture AWS Business Group (AABG). Vous pouvez apprendre des ressources, de l'expertise technique et des connaissances de l'industrie de deux innovateurs de premier plan, vous aidant à accélérer le rythme de l'innovation pour fournir des produits et services perturbateurs. L'AABG aide les clients à concevoir et à innover des solutions cloud pour les clients grâce au développement rapide de prototypes. Contactez notre équipe à accentureaws@amazon.com pour apprendre et accélérer l'utilisation de l'apprentissage automatique dans vos produits et services.
À propos des auteurs
Samir Goël est un architecte de solutions senior aux Pays-Bas, qui stimule le succès des clients en construisant des prototypes sur des initiatives de pointe. Avant de rejoindre AWS, Sameer a obtenu une maîtrise à Boston, avec une concentration en science des données. Il aime construire et expérimenter des projets AI/ML sur Raspberry Pi.
Nicolas Vargas est manager et architecte technologique chez Accenture. Il dirige la livraison du projet pour une équipe de prototypage rapide au sein d'Accenture AWS Business Group (AABG). Il aime ses promenades matinales avec son chien Bingo, voyager, aller à la plage et faire de la randonnée.
Anna Schreiber fait partie d'une équipe de prototypage au sein du AWS Business Group (AABG) d'Accenture. En tant que développeur AWS senior, elle a travaillé sur plusieurs preuves de concepts de haut niveau qui aident à donner vie à la vision du client. Lorsqu'elle ne travaille pas, elle aime cuisiner, bricoler et jouer avec son corgi Gimli.
- Coinsmart. Le meilleur échange Bitcoin et Crypto d'Europe.
- Platoblockchain. Intelligence métaverse Web3. Connaissance amplifiée. ACCÈS LIBRE.
- CryptoHawk. Radar Altcoins. Essai gratuit.
- Source : https://aws.amazon.com/blogs/machine-learning/build-an-appointment-scheduler-interface-integrated-with-meta-using-amazon-lex-and-amazon-connect/
- "
- 100
- 9
- a
- capacité
- accélérer
- Accenture
- accès
- accessible
- Compte
- à travers
- Supplémentaire
- avances
- devant
- AI
- Tous
- permet
- Amazon
- api
- appli
- Application
- applications
- rendez-vous
- architecture
- Archive
- artificiel
- intelligence artificielle
- Intelligence artificielle (AI)
- Associé(e)
- associé
- automatiser
- Automatisation
- disponibles
- AWS
- before
- ci-dessous
- bêta
- jusqu'à XNUMX fois
- facturation
- BLOG
- frontière
- boston
- Bot
- les robots
- Box
- apporter
- construire
- Développement
- intégré
- la performance des entreprises
- Calendrier
- Appelez-nous
- demandeur
- Voies
- des charges
- Selectionnez
- réclamer
- le cloud
- code
- Colonne
- complet
- composant
- composants électriques
- concentration
- NOUS CONTACTER
- Console
- contact
- contient
- contenu
- Conversation
- conversations
- Pays
- engendrent
- créée
- création
- Lettres de créance
- Customiser
- des clients
- Succès des clients
- Clients
- En investissant dans une technologie de pointe, les restaurants peuvent non seulement rester compétitifs dans un marché en constante évolution, mais aussi améliorer significativement l'expérience de leurs clients.
- tableau de bord
- données
- science des données
- Base de données
- page de livraison.
- déployer
- déployé
- déploiement
- Conception
- détails
- développer
- Développeur
- Développement
- différent
- Commande
- perturbateur
- distribution
- down
- Goutte
- chacun
- éditeur
- effort
- employés
- permettre
- permettant
- Entrer
- entré
- Environment
- exemple
- nous a permis de concevoir
- Prénom
- première fois
- flux
- Abonnement
- le format
- de
- fonction
- fonctions
- porte
- Général
- générer
- GitHub
- aller
- Réservation de groupe
- aider
- aider
- aide
- Faits saillants
- Comment
- How To
- Cependant
- HTTPS
- ICON
- identifier
- Active
- immédiatement
- mis en œuvre
- indice
- industrie
- d'information
- Infrastructure
- les initiatives
- Innovation
- innovateurs
- installer
- instance
- des services
- Intelligence
- intention
- l'interaction
- Interfaces
- IT
- spécialisées
- langue
- lancer
- conduisant
- Conduit
- APPRENTISSAGE
- apprentissage
- Laisser
- Gamme
- lignes
- Liste
- locales
- logo
- click
- machine learning
- faire
- FAIT DU
- gestion
- manager
- Manuel
- maîtrise
- messagerie
- Messager
- Meta
- pourrait
- Breeze Mobile
- plusieurs
- noms
- Nature
- NAVIGUER
- Navigation
- Netherlands
- next
- déclaration
- nombre
- Offres Speciales
- ouvert
- opération
- Options
- partie
- jouer
- politiques
- possible
- défaillances
- primaire
- processus
- Produits
- Profil
- Projet
- projets
- preuve
- prototypes
- prototypage
- fournir
- à condition de
- fournit
- publier
- nous joindre
- Réagir
- recevoir
- région
- dépôt
- nécessaire
- conditions
- ressource
- Ressources
- Rôle
- Itinéraire
- Sciences
- de façon transparente
- Série
- service
- Services
- set
- plusieurs
- montré
- étapes
- SMS
- So
- solide
- sur mesure
- Solutions
- quelques
- parler
- empiler
- storage
- succès
- Avec succès
- Support
- équipe
- Technique
- Technologie
- terminal
- tester
- La
- Pays-Bas
- des tiers.
- trois
- Avec
- fiable
- top
- Voyages
- ui
- sous
- compréhension
- unique
- us
- utilisé
- utilisateurs
- utiliser
- Plus-value
- Voir
- vision
- web
- Basé sur le Web
- semaine
- bienvenu
- Quoi
- Qu’est ce qu'
- Chuchotement
- WHO
- dans les
- travaillé
- de travail
- pourra
- Votre