Vordefinierte Komponente für die Authentifizierung im Einzelhandel

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.

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr Google Cloud-Projekt aus.
  3. Wählen Sie den Agent aus.
  4. Wählen Sie den Tab Erstellen aus.
  5. Klicken Sie im Bereich Abläufe auf die importierte Komponente.
  6. Klicken Sie im Abschnitt Seiten auf die Startseite.
  7. Klicken Sie auf der Startseite auf die Route true.
  8. Bearbeiten Sie im Fenster „Route“ die Werte für Parametervoreinstellungen nach Bedarf.
  9. 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
E-Mail 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:

  1. Importieren Sie die vordefinierte Komponente.
  2. 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
E-Mail 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.

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr Google Cloud-Projekt aus.
  3. Wählen Sie den Agent aus.
  4. Wählen Sie den Tab Verwalten.
  5. Klicken Sie auf Webhooks.
  6. Wählen Sie den Webhook „prebuilt_components_retail_authentication:verify_user_details“ aus.
  7. 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.
  8. Prüfen und aktualisieren Sie den Anfragetext, um das richtige Anfrageformat für Ihren Webhook zu erstellen.
  9. 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.
  10. Prüfen und aktualisieren Sie die Authentifizierungseinstellungen nach Bedarf.
  11. 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.

  1. Öffnen Sie die Dialogflow CX-Konsole.
  2. Wählen Sie Ihr Google Cloud-Projekt aus.
  3. Wählen Sie den Agent aus.
  4. Wählen Sie den Tab Verwalten.
  5. Klicken Sie auf Webhooks.
  6. Wählen Sie den Webhook „prebuilt_components_retail_authentication:send_otp“ aus.
  7. 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.
  8. Prüfen und aktualisieren Sie den Anfragetext, um das richtige Anfrageformat für Ihren Webhook zu erstellen.
  9. 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.
  10. Prüfen und aktualisieren Sie die Authentifizierungseinstellungen nach Bedarf.
  11. Klicken Sie auf Speichern.

Abgeschlossen

Ihr Agent und seine Webhooks sollten jetzt eingerichtet und bereit zum Testen sein.