Le composant prédéfini d'authentification pour le commerce collecte des informations auprès de l'utilisateur pour l'authentifier au niveau d'authentification requis. Ce composant couvre les exigences d'authentification qui sont courantes, mais pas exclusives, au secteur du commerce. Ce composant utilise le composant prédéfini Collecte du numéro de téléphone pour collecter et valider les informations utilisateur.
Niveaux d'authentification
Différents composants prédéfinis nécessitent plusieurs niveaux d'authentification, les niveaux supérieurs nécessitant plus d'informations utilisateur pour authentifier l'utilisateur. Le composant d'authentification pour le commerce détail permet aux utilisateurs de s'authentifier au niveau 0 (correspondance de l'ANI) ou au niveau 1 (de base), comme décrit dans le tableau "Niveau d'authentification".
Niveau d'authentification | Conditions requises |
---|---|
Niveau 0: Correspondance de l'ANI | L'utilisateur est authentifié en appelant à partir d'un numéro de téléphone correspondant à un compte enregistré ou en fournissant ce numéro. Un utilisateur peut être authentifié au niveau 0 à l'aide du composant prédéfini "Salutations". |
Niveau 1: Basique | L'utilisateur est authentifié en validant un code à usage unique (OTP) envoyé à son adresse e-mail ou à son numéro de téléphone. |
Types d'utilisateurs compatibles
Le composant d'authentification pour les marchands prend en charge les utilisateurs disposant d'un numéro de téléphone et d'une adresse e-mail enregistrés.
Limites
En plus des limites courantes des composants prédéfinis, ce composant prédéfini présente les limitations suivantes:
- Les OTP ne sont envoyés qu'à un numéro de mobile ou une adresse e-mail précédemment enregistrés pour l'utilisateur. Le composant n'utilise pas d'OTP pour authentifier les clients qui appellent depuis un autre numéro de téléphone qui n'est pas enregistré dans leur compte. Lorsqu'un utilisateur appelle à partir d'un autre numéro de téléphone, des questions de sécurité sont utilisées pour l'authentifier.
- Ce composant ne chiffre aucune donnée.
Exemples de boîtes de dialogue
Les exemples de boîtes de dialogue suivants illustrent les scénarios courants gérés par ce composant prédéfini. Les exemples de boîtes de dialogue illustrent le comportement lorsque le composant est appelé à l'aide de la téléphonie, ce qui déclenche l'intent d'accueil par défaut et la première réponse de l'agent au début de la conversation.
Authentification de niveau 0 réussie: correspondance de l'ANI
L'utilisateur appelle depuis un numéro de téléphone enregistré dans un compte existant, confirme son compte et est authentifié au niveau 0.
Entrée utilisateur | Réponse de l'agent |
---|---|
Bonjour, le numéro que vous avez composé est associé au compte de John. Votre question concerne-t-elle la commande d'une autre personne ? Veuillez répondre "oui" si c'est le cas, ou "non". | |
Non | |
Merci, John. Vous avez été identifié. |
Authentification de niveau 1 réussie: OTP
L'utilisateur appelle depuis un numéro de téléphone inconnu. Le composant collecte le numéro de téléphone enregistré de l'utilisateur, puis envoie un code OTP au canal de son choix et lui demande de le confirmer. L'utilisateur peut fournir un code OTP valide et est authentifié au niveau 1.
Entrée utilisateur | Réponse de l'agent |
---|---|
Nous n'avons pas trouvé ce numéro de téléphone associé à notre compte. Veuillez nous indiquer le numéro de téléphone enregistré. | |
L'agent collecte le numéro de téléphone à l'aide du composant prédéfini Collecte du numéro de téléphone. | |
Parfait. Nous avons terminé de collecter le numéro de téléphone. Pour des raisons de sécurité, nous devons valider votre identité. Nous allons donc vous envoyer un code. Préférez-vous recevoir le code par téléphone ou par e-mail ? |
|
téléphone | |
Juste pour confirmer, souhaitez-vous recevoir l\'OTP sur votre téléphone ? Veuillez répondre par oui ou par non. | |
oui | |
Nous avons envoyé un code à votre numéro de téléphone enregistré se terminant par 0000. Cette opération peut prendre quelques secondes. Pouvez-vous confirmer le code ? | |
123457 | |
Merci, John. Vous avez bien été identifié. |
Conventions d'attribution de noms
Ce composant prédéfini utilise les conventions d'attribution de noms suivantes:
Caractéristique | Format | Exemple |
---|---|---|
Flux | [Component Name] | Authentification pour le commerce |
Intent spécifique au composant | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_retail_authentication_incorrect_phone_number |
Type d'entité | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_channel_email_phone |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_retail_authentication:verify_user_details |
Paramètres d'entrée
Les paramètres d'entrée sont des paramètres utilisés pour configurer certains comportements du composant. Les paramètres seront utilisés par une ou plusieurs conditions du flux pour déterminer le comportement du composant. Les paramètres de portée de flux doivent être définis sur la page de démarrage du composant, comme décrit ci-dessous. Les paramètres de portée de session peuvent être définis par un flux d'appel ou sur la page de démarrage de ce composant.
Ce composant prédéfini accepte les paramètres d'entrée suivants:
Nom du paramètre | Description | Format d'entrée |
---|---|---|
$session.params.auth_level_req | Définit le niveau d'authentification auquel l'utilisateur final sera authentifié. Les valeurs valides sont 0 ou 1 . |
entier |
$session.params.auth_level | (Facultatif) Indique le niveau d'authentification actuel de l'utilisateur final. | entier |
$session.params.phone_number | (Facultatif) Numéro de téléphone de l'utilisateur final. Si ce paramètre n'est pas fourni, le composant collecte le numéro de téléphone auprès de l'utilisateur final. | chaîne |
$flow.max_retry_phone_number | Indique le nombre de tentatives autorisées lors de la collecte du numéro de téléphone de l'utilisateur. La valeur par défaut est 3 . |
entier |
$flow.max_retry_otp | Indique le nombre de tentatives autorisées lors de la collecte du mot de passe à usage unique (OTP). La valeur par défaut est 3 . |
entier |
$flow.max_retry_otp_not_received | Indique le nombre de nouvelles tentatives autorisées lorsque le mot de passe à usage unique (OTP) n'est pas reçu. La valeur par défaut est 1 . |
entier |
$flow.max_retry_otp_confirm_channel | Spécifie le nombre de tentatives autorisées lors de la collecte du canal pour recevoir le mot de passe à usage unique (OTP). La valeur par défaut est 3 . |
entier |
Pour configurer les paramètres d'entrée de ce composant, développez cette section pour obtenir des instructions.
- Ouvrez la console Dialogflow CX.
- Choisissez votre projet Google Cloud.
- Sélectionnez votre agent.
- Sélectionnez l'onglet Compilation.
- Cliquez sur le composant importé dans la section Flux.
- Cliquez sur la page de démarrage dans la section Pages.
- Cliquez sur la route true (vraie) sur la page de démarrage.
- Dans la fenêtre "Itinéraire", modifiez les valeurs des préréglages de paramètres si nécessaire.
- Cliquez sur Enregistrer.
Paramètres de sortie
Les paramètres de sortie sont des paramètres de session qui restent actifs après la sortie du composant. Ces paramètres contiennent des informations importantes collectées par le composant. Ce composant prédéfini fournit des valeurs pour les paramètres de sortie suivants:
Nom du paramètre | Description | Format de sortie |
---|---|---|
auth_level | Indique le niveau d'authentification actuel de l'utilisateur final. | entier |
all_recent_order_id | Ce paramètre liste les ID de commande associés à l'utilisateur authentifié, triés par date de passation de la commande, dans l'ordre décroissant. Le premier élément du tableau représente la commande la plus récente. Si un utilisateur n'a pas de commande, la valeur de ce paramètre est null . |
Liste (chaîne) |
phone_number | Numéro de téléphone local de l'utilisateur, sans code pays, utilisé pour l'identifier. | chaîne |
Adresse e-mail associée au compte. | chaîne | |
user_first_name | Prénom de l'utilisateur, utilisé pour le saluer et confirmer qu'il est le propriétaire du compte. | chaîne |
transfer_reason | Ce paramètre indique la raison pour laquelle le flux s'est arrêté, s'il n'a pas abouti. La valeur renvoyée est l'une des suivantes:agent : l'utilisateur final a demandé un agent humain à un moment donné de la conversation.denial_of_information : l'utilisateur final a refusé de partager les informations demandées par le composant.max_no_input : la conversation a atteint le nombre maximal de tentatives pour les événements sans entrée. Consultez la section Événements intégrés sans entrée.max_no_match : la conversation a atteint le nombre maximal de tentatives pour les événements de non-correspondance. Consultez la section Événements intégrés de non-correspondance.webhook_error : une erreur de webhook s'est produite. Voir Événement intégré webhook.error. webhook_not_found : une URL de webhook était inaccessible. Voir Événement intégré webhook.error.not-found. |
chaîne |
Configuration de base
Pour configurer ce composant prédéfini:
- Importez le composant prédéfini.
- Configurez les webhooks flexibles fournis avec une configuration décrivant vos services externes. Pour en savoir plus, consultez la section "Configuration des webhooks" ci-dessous.
Configuration du webhook
Pour utiliser ce composant, vous devez configurer les webhooks flexibles inclus afin de récupérer les informations nécessaires à partir de vos services externes.
Valider les informations utilisateur
Le webhook prebuilt_components_retail_authentication:verify_user_details
est utilisé par le composant pour récupérer les informations du compte utilisateur en fonction du numéro de téléphone fourni.
Paramètres de requête de l'API
Les paramètres suivants sont fournis par le composant en tant qu'entrées de la requête API.
Nom du paramètre | Description | Format d'entrée |
---|---|---|
$session.params.phone_number | Numéro de téléphone local de l'utilisateur, sans code pays, utilisé pour l'identifier. | chaîne |
Paramètres de réponse de l'API
Les paramètres suivants sont extraits de la réponse de l'API pour être utilisés par le composant.
Nom du paramètre | Description | Format de sortie |
---|---|---|
Adresse e-mail associée au compte. | chaîne | |
all_recent_order_id | Liste des ID de commande associés à l'utilisateur authentifié, triés par date de passation de la commande dans l'ordre décroissant. Le premier élément du tableau représente la commande la plus récente. Si un utilisateur n'a pas de commande, la valeur de ce paramètre est null . |
Liste (chaîne) |
user_first_name | Prénom de l'utilisateur, utilisé pour le saluer et confirmer qu'il est le propriétaire du compte. | chaîne |
Pour configurer le webhook "Valider les informations utilisateur" pour ce composant, développez la section pour obtenir des instructions.
- Ouvrez la console Dialogflow CX.
- Choisissez votre projet Google Cloud.
- Sélectionnez votre agent.
- Sélectionnez l'onglet Gérer.
- Cliquez sur Webhooks.
- Sélectionnez le webhook prebuilt_components_retail_authentication:verify_user_details.
- Remplacez l'URL dans le champ URL du webhook des agents conversationnels (Dialogflow CX) par le point de terminaison du service avec lequel vous souhaitez vous intégrer. Sélectionnez la méthode appropriée dans le menu déroulant.
- Examinez et modifiez le corps de la requête pour obtenir le format de requête approprié pour votre webhook.
- Examinez et mettez à jour la configuration de la réponse pour extraire des champs spécifiques de la réponse de votre webhook. Ne modifiez pas les noms des paramètres, car ils sont requis par le composant pour accéder aux valeurs des champs renvoyées.
- Examinez et modifiez les paramètres Authentification si nécessaire.
- Cliquez sur Enregistrer.
Envoyer l'OTP
Le webhook prebuilt_components_retail_authentication:send_otp
est utilisé par le composant pour envoyer un mot de passe à usage unique (OTP) à un canal enregistré sélectionné par l'utilisateur final.
Paramètres de requête de l'API
Les paramètres suivants sont fournis par le composant en tant qu'entrées de la requête API.
Nom du paramètre | Description | Format d'entrée |
---|---|---|
$session.params.phone_number | Numéro de téléphone local de l'utilisateur, sans code pays, utilisé pour l'identifier. | chaîne |
$flow.channel | Canal sélectionné par l'utilisateur pour recevoir le code à usage unique. Les valeurs valides sont définies par l'entité personnalisée prebuilt_components_channel_email_phone . Par défaut, email et phone sont compatibles. |
chaîne |
Paramètres de réponse de l'API
Les paramètres suivants sont extraits de la réponse de l'API pour être utilisés par le composant.
Nom du paramètre | Description | Format de sortie |
---|---|---|
generated_otp | Valeur de l'OTP généré et envoyé à l'utilisateur via le canal sélectionné. | chaîne |
Pour configurer le webhook d'envoi d'OTP pour ce composant, développez cette section pour obtenir des instructions.
- Ouvrez la console Dialogflow CX.
- Choisissez votre projet Google Cloud.
- Sélectionnez votre agent.
- Sélectionnez l'onglet Gérer.
- Cliquez sur Webhooks.
- Sélectionnez le webhook prebuilt_components_retail_authentication:send_otp.
- Remplacez l'URL dans le champ URL du webhook des agents conversationnels (Dialogflow CX) par le point de terminaison du service avec lequel vous souhaitez vous intégrer. Sélectionnez la méthode appropriée dans le menu déroulant.
- Examinez et modifiez le corps de la requête pour obtenir le format de requête approprié pour votre webhook.
- Examinez et mettez à jour la configuration de la réponse pour extraire des champs spécifiques de la réponse de votre webhook. Ne modifiez pas les noms des paramètres, car ils sont requis par le composant pour accéder aux valeurs des champs renvoyées.
- Examinez et modifiez les paramètres Authentification si nécessaire.
- Cliquez sur Enregistrer.
Terminé
Votre agent et ses webhooks devraient maintenant être configurés et prêts à être testés.