Die vordefinierte Komponente für die Einzelhandelsauthentifizierung erfasst Informationen vom Nutzer, um ihn auf der erforderlichen Authentifizierungsebene zu authentifizieren. Diese Komponente deckt Authentifizierungsanforderungen ab, die im Einzelhandel üblich, aber nicht ausschließlich dort zu finden sind. Diese Komponente verwendet die vordefinierte Komponente Erfassung von Telefonnummern, um Nutzerdetails zu erfassen und zu validieren.
Authentifizierungsebenen
Für verschiedene vordefinierte Komponenten sind mehrere Authentifizierungsebenen erforderlich. Für höhere Ebenen sind mehr Nutzerinformationen erforderlich, um den Nutzer zu authentifizieren. Mit der Authentifizierungskomponente für den Einzelhandel können sich Nutzer auf Stufe 0 (ANI-Übereinstimmung) oder Stufe 1 (Basic) authentifizieren, wie in der Tabelle „Authentifizierungsstufe“ beschrieben.
| Authentifizierungsebene | Voraussetzungen |
|---|---|
| Stufe 0: ANI-Übereinstimmung | Der Nutzer wird authentifiziert, indem er von einer Telefonnummer anruft oder eine Telefonnummer angibt, die einem registrierten Konto entspricht. Ein Nutzer kann mit der vordefinierten Komponente „Begrüßung“ auf Stufe 0 authentifiziert werden. |
| Stufe 1: Basic | Der Nutzer wird authentifiziert, indem er einen Einmalpasswort-Code (OTP) bestätigt, der an seine E‑Mail-Adresse oder Telefonnummer gesendet wurde. |
Unterstützte Nutzertypen
Die Einzelhandelsauthentifizierungskomponente bietet Unterstützung für Nutzer mit einer registrierten Telefonnummer und E‑Mail-Adresse.
Beschränkungen
Zusätzlich zu den allgemeinen Einschränkungen für vordefinierte Komponenten gelten für diese vordefinierte Komponente die folgenden Einschränkungen:
- OTPs werden nur an eine Mobilnummer oder E‑Mail-Adresse gesendet, die zuvor für den Nutzer registriert wurde. Die Komponente verwendet kein OTP, um Kunden zu authentifizieren, die von einer alternativen Telefonnummer anrufen, die nicht in ihrem Konto registriert ist. Wenn ein Nutzer von einer alternativen Telefonnummer aus anruft, werden Sicherheitsfragen verwendet, um den Anrufer zu authentifizieren.
- Diese Komponente verschlüsselt keine Daten.
Beispieldialoge verfassen
Die folgenden Beispieldialoge zeigen gängige Szenarien, die von dieser vordefinierten Komponente verarbeitet werden. Die Beispieldialoge zeigen das Verhalten, wenn die Komponente über die Telefonie aufgerufen wird. Dadurch werden der Standard-Willkommens-Intent und die erste Agent-Antwort zu Beginn der Unterhaltung ausgelöst.
Authentifizierung auf Stufe 0 erfolgreich: ANI-Übereinstimmung
Der Nutzer ruft von einer Telefonnummer an, die für ein bestehendes Konto registriert ist, bestätigt sein Konto und wird erfolgreich auf Stufe 0 authentifiziert.
| Nutzereingabe | Antwort des KI-Agenten |
|---|---|
| Hallo, die von Ihnen gewählte Nummer ist mit dem Konto von John verknüpft. Haben Sie Fragen zur Bestellung einer anderen Person? Bitte antworten Sie mit „Ja“, wenn das der Fall ist, andernfalls mit „Nein“. | |
| Nein | |
| Vielen Dank, John. Ihre Identität wurde bestätigt. |
Authentifizierung auf Stufe 1 erfolgreich: OTP
Der Nutzer ruft von einer unbekannten Telefonnummer an. Die Komponente erfasst die registrierte Telefonnummer des Nutzers, sendet ein Einmalpasswort an den vom Nutzer ausgewählten Kanal und fordert den Nutzer auf, es zu bestätigen. Der Nutzer kann ein gültiges OTP angeben und wird erfolgreich auf Stufe 1 authentifiziert.
| Nutzereingabe | Antwort des KI-Agenten |
|---|---|
| Wir konnten diese Telefonnummer nicht in unseren Systemen finden. Bitte geben Sie die registrierte Telefonnummer an. | |
| Der Kundenservicemitarbeiter erfasst die Telefonnummer mithilfe der vordefinierten Komponente Telefonnummernerfassung. | |
| Vielen Dank, wir haben die Telefonnummer erfasst. Aus Sicherheitsgründen müssen wir Ihre Identität bestätigen. Dazu senden wir Ihnen einen Code. Möchten Sie den Code lieber per Telefon oder per E‑Mail erhalten? |
|
| Telefon | |
| Möchten Sie das OTP auf Ihrem Smartphone erhalten? Bitte antworte mit „Ja“ oder „Nein“. | |
| Ja | |
| Wir haben einen Code an Ihre registrierte Telefonnummer mit der Endung 0000 gesendet. Dies kann einige Sekunden dauern. Können Sie den Code bitte bestätigen? | |
| 123457 | |
| Vielen Dank, John. Ihre Identität wurde bestätigt. |
Namenskonventionen
Für diese vordefinierte Komponente gelten die folgenden Namenskonventionen:
| Funktion | Format | Beispiel |
|---|---|---|
| Flow | [Component Name] | Authentifizierung für den Einzelhandel |
| Komponentenspezifischer Intent | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_retail_authentication_incorrect_phone_number |
| Entitätstyp | 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 |
Eingabeparameter
Eingabeparameter sind Parameter, mit denen bestimmte Verhaltensweisen der Komponente konfiguriert werden. Die Parameter werden von einer oder mehreren Bedingungen im Ablauf verwendet, um zu bestimmen, wie sich die Komponente verhalten soll. Ablaufbezogene Parameter müssen wie unten beschrieben auf der Startseite der Komponente festgelegt werden. Parameter auf Sitzungsebene können entweder von einem aufrufenden Ablauf oder auf der Startseite dieser Komponente festgelegt werden.
Diese vordefinierte Komponente akzeptiert die folgenden Eingabeparameter:
| Parametername | Beschreibung | Eingabeformat |
|---|---|---|
| $session.params.auth_level_req | Definiert die Authentifizierungsebene, auf der der Endnutzer authentifiziert wird. Gültige Werte sind 0 und 1. |
integer |
| $session.params.auth_level | (Optional) Gibt die aktuelle Authentifizierungsstufe des Endnutzers an. | integer |
| $session.params.phone_number | (Optional) Telefonnummer des Endnutzers. Wenn dieser Parameter nicht angegeben ist, erfasst die Komponente die Telefonnummer des Endnutzers. | String |
| $flow.max_retry_phone_number | Gibt die Anzahl der zulässigen Wiederholungsversuche beim Erfassen der Telefonnummer des Nutzers an. Der Standardwert ist 3. |
integer |
| $flow.max_retry_otp | Gibt die Anzahl der zulässigen Wiederholungsversuche beim Erfassen des Einmalpassworts (OTP) an. Der Standardwert ist 3. |
integer |
| $flow.max_retry_otp_not_received | Gibt die Anzahl der zulässigen Wiederholungsversuche an, wenn das Einmalpasswort (OTP) nicht empfangen wird. Der Standardwert ist 1. |
integer |
| $flow.max_retry_otp_confirm_channel | Gibt die Anzahl der zulässigen Wiederholungsversuche beim Abrufen des Kanals zum Empfangen des Einmalpassworts (OTP) an. Der Standardwert ist 3. |
integer |
Maximieren Sie diesen Abschnitt, um die Anleitung zum Konfigurieren der Eingabeparameter für diese Komponente einzublenden.
- Öffnen Sie die Dialogflow CX-Konsole.
- Wählen Sie Ihr Google Cloud-Projekt aus.
- Wählen Sie den Agent aus.
- Wählen Sie den Tab Erstellen aus.
- Klicken Sie im Bereich Abläufe auf die importierte Komponente.
- Klicken Sie im Abschnitt Seiten auf die Startseite.
- Klicken Sie auf der Startseite auf die Route true.
- Bearbeiten Sie im Fenster „Route“ die Werte für Parametervoreinstellungen nach Bedarf.
- Klicken Sie auf Speichern.
Ausgabeparameter
Ausgabeparameter sind Sitzungsparameter, die nach dem Verlassen der Komponente aktiv bleiben. Diese Parameter enthalten wichtige Informationen, die von der Komponente erfasst werden. Diese vordefinierte Komponente liefert Werte für die folgenden Ausgabeparameter:
| Parametername | Beschreibung | Ausgabeformat |
|---|---|---|
| auth_level | Gibt die aktuelle Authentifizierungsebene des Endnutzers an. | integer |
| all_recent_order_id | In diesem Parameter werden die Bestell-IDs aufgeführt, die dem authentifizierten Nutzer zugeordnet sind, sortiert nach dem Datum der Bestellung in absteigender Reihenfolge. Das erste Element des Arrays stellt die letzte Bestellung dar. Wenn ein Nutzer keine Bestellungen hat, ist der Wert dieses Parameters null. |
Liste (String) |
| phone_number | Die lokale Telefonnummer des Nutzers ohne Ländercode, die zur Identifizierung des Nutzers verwendet wird. | String |
| Die für das Konto registrierte E‑Mail-Adresse. | String | |
| user_first_name | Vorname des Nutzers, der zur Begrüßung und Bestätigung der Inhaberschaft des Kontos verwendet wird. | String |
| transfer_reason | Dieser Parameter gibt den Grund für das Beenden des Ablaufs an, wenn er nicht erfolgreich war. Der zurückgegebene Wert ist einer der folgenden:agent: Der Endnutzer hat zu einem bestimmten Zeitpunkt während der Unterhaltung einen menschlichen Kundenservicemitarbeiter angefordert.denial_of_information: Der Endnutzer hat sich geweigert, die von der Komponente angeforderten Informationen weiterzugeben.max_no_input: Die Unterhaltung hat die maximale Anzahl von Wiederholungsversuchen für Ereignisse ohne Eingabe erreicht. Weitere Informationen finden Sie unter Integrierte Ereignisse ohne Eingabe.max_no_match: Die maximale Anzahl von Wiederholungsversuchen für Ereignisse ohne Übereinstimmung wurde erreicht. Weitere Informationen finden Sie unter Integrierte Ereignisse für „Keine Übereinstimmung“.webhook_error: Ein Webhook-Fehler ist aufgetreten. Weitere Informationen finden Sie unter Integriertes Ereignis „webhook.error“. webhook_not_found: Eine Webhook-URL war nicht erreichbar. Siehe Integriertes Ereignis „webhook.error.not-found“. |
String |
Grundlegende Einrichtung
So richten Sie diese vordefinierte Komponente ein:
- Importieren Sie die vordefinierte Komponente.
- Konfigurieren Sie die bereitgestellten flexiblen Webhooks mit einer Konfiguration, die Ihre externen Dienste beschreibt. Weitere Informationen finden Sie unten im Abschnitt „Webhook-Einrichtung“.
Webhook-Einrichtung
Wenn Sie diese Komponente verwenden möchten, müssen Sie die enthaltenen flexiblen Webhooks so konfigurieren, dass die erforderlichen Informationen von Ihren externen Diensten abgerufen werden.
Nutzerdetails bestätigen
Der Webhook prebuilt_components_retail_authentication:verify_user_details wird von der Komponente verwendet, um Nutzerkontodetails anhand der angegebenen Telefonnummer abzurufen.
API-Anfrageparameter
Die folgenden Parameter werden von der Komponente als Eingaben für die API-Anfrage bereitgestellt.
| Parametername | Beschreibung | Eingabeformat |
|---|---|---|
| $session.params.phone_number | Die lokale Telefonnummer des Nutzers ohne Ländercode, die zur Identifizierung des Nutzers verwendet wird. | String |
API-Antwortparameter
Die folgenden Parameter werden aus der API-Antwort abgerufen, um von der Komponente verwendet zu werden.
| Parametername | Beschreibung | Ausgabeformat |
|---|---|---|
| Die für das Konto registrierte E‑Mail-Adresse. | String | |
| all_recent_order_id | Liste der Bestell-IDs, die mit dem authentifizierten Nutzer verknüpft sind, sortiert nach dem Datum der Bestellung in absteigender Reihenfolge. Das erste Element des Arrays stellt die letzte Bestellung dar. Wenn ein Nutzer keine Bestellungen hat, ist der Wert dieses Parameters null. |
Liste (String) |
| user_first_name | Vorname des Nutzers, der zur Begrüßung und Bestätigung der Inhaberschaft des Kontos verwendet wird. | String |
Maximieren Sie den Bereich, um eine Anleitung zum Konfigurieren des Webhooks „Nutzerdetails bestätigen“ für diese Komponente zu erhalten.
- Öffnen Sie die Dialogflow CX-Konsole.
- Wählen Sie Ihr Google Cloud-Projekt aus.
- Wählen Sie den Agent aus.
- Wählen Sie den Tab Verwalten.
- Klicken Sie auf Webhooks.
- Wählen Sie den Webhook „prebuilt_components_retail_authentication:verify_user_details“ aus.
- Ersetzen Sie die URL im Dialogflow CX-Feld Webhook-URL durch den Endpunkt für den Dienst, den Sie einbinden möchten. Wählen Sie im Drop-down-Menü die richtige Methode aus.
- Prüfen und aktualisieren Sie den Anfragetext, um das richtige Anfrageformat für Ihren Webhook zu erstellen.
- Prüfen und aktualisieren Sie die Antwortkonfiguration, um bestimmte Felder aus der Antwort Ihres Webhooks zu extrahieren. Ändern Sie die Parameternamen nicht, da die Komponente sie benötigt, um auf die zurückgegebenen Feldwerte zuzugreifen.
- Prüfen und aktualisieren Sie die Authentifizierungseinstellungen nach Bedarf.
- Klicken Sie auf Speichern.
OTP senden
Der Webhook prebuilt_components_retail_authentication:send_otp wird von der Komponente verwendet, um ein Einmalpasswort (OTP) an einen registrierten Kanal zu senden, der vom Endnutzer ausgewählt wurde.
API-Anfrageparameter
Die folgenden Parameter werden von der Komponente als Eingaben für die API-Anfrage bereitgestellt.
| Parametername | Beschreibung | Eingabeformat |
|---|---|---|
| $session.params.phone_number | Die lokale Telefonnummer des Nutzers ohne Ländercode, die zur Identifizierung des Nutzers verwendet wird. | String |
| $flow.channel | Der Kanal, über den der Nutzer das OTP erhalten möchte. Gültige Werte werden durch die benutzerdefinierte Entität prebuilt_components_channel_email_phone definiert. Standardmäßig werden email und phone unterstützt. |
String |
API-Antwortparameter
Die folgenden Parameter werden aus der API-Antwort abgerufen, um von der Komponente verwendet zu werden.
| Parametername | Beschreibung | Ausgabeformat |
|---|---|---|
| generated_otp | Der Wert des OTP, das generiert und über den ausgewählten Kanal an den Nutzer gesendet wurde. | String |
Maximieren Sie den Abschnitt, um die Anleitung zum Konfigurieren des Webhooks „OTP senden“ für diese Komponente einzublenden.
- Öffnen Sie die Dialogflow CX-Konsole.
- Wählen Sie Ihr Google Cloud-Projekt aus.
- Wählen Sie den Agent aus.
- Wählen Sie den Tab Verwalten.
- Klicken Sie auf Webhooks.
- Wählen Sie den Webhook „prebuilt_components_retail_authentication:send_otp“ aus.
- Ersetzen Sie die URL im Dialogflow CX-Feld Webhook-URL durch den Endpunkt für den Dienst, den Sie einbinden möchten. Wählen Sie im Drop-down-Menü die richtige Methode aus.
- Prüfen und aktualisieren Sie den Anfragetext, um das richtige Anfrageformat für Ihren Webhook zu erstellen.
- Prüfen und aktualisieren Sie die Antwortkonfiguration, um bestimmte Felder aus der Antwort Ihres Webhooks zu extrahieren. Ändern Sie die Parameternamen nicht, da die Komponente sie benötigt, um auf die zurückgegebenen Feldwerte zuzugreifen.
- Prüfen und aktualisieren Sie die Authentifizierungseinstellungen nach Bedarf.
- Klicken Sie auf Speichern.
Abgeschlossen
Ihr Agent und seine Webhooks sollten jetzt eingerichtet und bereit zum Testen sein.