Dialogflow CX Google Chat-App erstellen, die natürliche Sprache versteht und antwortet

Auf dieser Seite wird erläutert, wie Sie eine Google Chat-App erstellen, die mithilfe von Dialogflow sowohl natürliche Sprache verstehen als auch darauf reagieren kann. In dieser Anleitung wird Dialogflow CX verwendet, das direkt in Google Chat eingebunden ist. Sie können auch Dialogflow ES verwenden, um eine Google Chat-App mit Dialogflow ES zu erstellen. Folgen Sie dazu dem Leitfaden Dialogflow ES Google Chat.

Stellen Sie sich beispielsweise eine Chat-App vor, mit der Nutzer Autos mieten können. Ein Nutzer könnte beispielsweise schreiben: „Ich möchte ein Auto mieten“. Die Chat-App könnte mit einer Frage wie „Wo möchten Sie das Fahrzeug abholen?“ antworten, wodurch eine natürliche Unterhaltung mit dem Nutzer beginnt, bei der die Chat-App die menschliche Sprache versteht und darauf mit menschlicher Sprache antwortet, während die Autovermietung gebucht wird.

Dies ist nur ein Beispiel. Dialogflow-Chat-Apps eignen sich für alle Arten von Interaktionen. Wenn natürliche menschliche Sprache erforderlich ist, ist eine Dialogflow-Chat-App erforderlich. Die vordefinierten Agents erleichtern den Einstieg und zeigen, was Dialogflow kann, z. B.:

  • Flüge buchen
  • Arzttermine vereinbaren
  • Lebensmittel bestellen
  • Beantworten Sie Fragen zu einem Einzelhandelsproduktkatalog, z. B. ob Artikel in anderen Farben verfügbar sind.
  • Auswahlseite für vordefinierte Dialogflow-Agenten
    Abbildung 1. Auswahl eines vordefinierten Agents für eine Dialogflow-Chat-App
  • Testen des Agents in Dialogflow CX
    Abbildung 2: Testen Sie den Bot in Dialogflow CX, um sicherzustellen, dass die Logik und Konfiguration des Bots wie vorgesehen funktionieren. Das Diagramm zeigt eine Reihe von themenbezogenen Seiten, die sich auf bestimmte Schritte im Gespräch beziehen, z. B. die Festlegung eines Abhol- und Rückgabeorts für einen Mietwagen. Außerdem wird die Logik konfiguriert, die sie verbindet. Die Unterhaltung wird in einem Simulator getestet.
  • Dialogflow Chat App konfigurieren
    Abbildung 3: Chat-App auf der Konfigurationsseite der Chat API in der Google Cloud Console konfigurieren, um Antworten mit dem Dialogflow CX-Agent zu verarbeiten
  • Dialogflow CX Chat-App testen
    Abbildung 4: Unterhaltung über die Buchung eines Mietwagens mit der Dialogflow Chat App in Google Chat.

Zielsetzungen

  • die Umgebung einrichten
  • Dialogflow CX-Agent erstellen und bereitstellen
  • Eine Chat-App mit dem Dialogflow CX-Agenten erstellen und bereitstellen
  • Testen Sie die Chat App.

Vorbereitung

Architektur

Das folgende Diagramm zeigt die Architektur einer Chat-App, die mit Dialogflow erstellt wurde:

Architektur einer Chat-App, die mit Dialogflow implementiert wurde.

Im vorherigen Diagramm wird der Informationsfluss für einen Nutzer dargestellt, der mit einer Dialogflow-Chat-App interagiert:

  1. Ein Nutzer sendet eine Nachricht in Google Chat an eine Chat-App, entweder in einer Direktnachricht oder in einem Gruppenbereich.
  2. Ein Dialogflow-virtueller Agent in Google Cloud empfängt und verarbeitet die Nachricht, um eine Antwort zu generieren.
  3. Optional kann der Dialogflow-Kundenservicemitarbeiter über einen Dialogflow-Webhook mit externen Diensten von Drittanbietern wie einem Projektverwaltungssystem oder einem Ticketsystem interagieren.
  4. Der Dialogflow-Agent sendet in Google Chat eine Antwort an den Chat-App-Dienst zurück.
  5. Die Antwort wird an den Chatbereich gesendet.

Umgebung einrichten

Bevor Sie Google APIs verwenden können, müssen Sie sie in einem Google Cloud-Projekt aktivieren. Sie können eine oder mehrere APIs in einem einzelnen Google Cloud-Projekt aktivieren.
  1. Aktivieren Sie in der Google Cloud Console die Google Chat API und die Dialogflow API.

    APIs aktivieren

  2. Prüfen Sie, ob Sie die APIs im richtigen Cloud-Projekt aktivieren, und klicken Sie dann auf Weiter.

  3. Prüfen Sie, ob Sie die richtigen APIs aktivieren, und klicken Sie dann auf Aktivieren.

Dialogflow CX-Agent erstellen

Ein Dialogflow CX-Agent ist ein virtueller Agent, der nebenläufige Unterhaltungen mit Ihren Endnutzern abwickelt. Mithilfe von Natural Language Understanding (NLU) versteht der Agent die Nuancen der menschlichen Sprache. Im Laufe der Unterhaltung übersetzt Dialogflow Nutzereingaben in Textform in strukturierte Daten, die Ihre Anwendungen und Dienste verstehen können. Sie entwerfen und erstellen einen Dialogflow-Agent, der die für Ihr System erforderlichen verschiedenen Typen von Unterhaltungen verarbeitet.

Ein Dialogflow-Agent ähnelt einem menschlichen Callcenter-Agent. Beide werden für die Bearbeitung erwarteter Szenarien trainiert. Dabei sind keine übermäßig genauen Vorgaben nötig.

So erstellen Sie den Dialogflow CX-Agenten:

  1. Öffnen Sie in der Dialogflow CX-Konsole die Dialogflow CX-Konsole. Klicken Sie auf das Dreistrich-Menü > Dialogflow CX.

    Dialogflow CX Console aufrufen

  2. Wählen Sie ein Google Cloud-Projekt aus. Möglicherweise müssen Sie auf Alle klicken und dann nach Ihrem Projekt suchen.

  3. Sie haben jetzt die Möglichkeit, einen vordefinierten Agenten auszuwählen oder einen eigenen zu erstellen. Wenn Sie die Anpassung von Bots lieber später im Detail kennenlernen möchten, wählen Sie einen der vordefinierten Bots aus. Diese sind auch hilfreich, um zu erfahren, was Bots tun können.

    So wählen Sie einen vordefinierten Agent aus:

    1. Klicken Sie auf Use vorkonfigurierte Agents (Vordefinierte Agents verwenden).
    2. Wählen Sie einen vordefinierten Agenten aus. Wählen Sie für diesen Leitfaden Reisen: Autovermietung aus.

      Bots werden als Anfänger, Fortgeschrittene oder Fortgeschrittene Nutzer eingestuft, je nachdem, wie viele Funktionen sie verwenden und wie ausgefeilt ihre Konversationslogik ist. Die Auswahl eines mittleren oder erweiterten Kundenservicemitarbeiters kann agentspezifische Anpassungen und Einstellungen erfordern, einschließlich der Aktivierung von Funktionen und APIs in der Google Cloud Console.

    3. Klicken Sie auf Als Kundenservicemitarbeiter importieren.

    So erstellen Sie einen eigenen Agenten:

    1. Klicken Sie auf Agent erstellen.
    2. Wählen Sie Automatisch generieren aus, um einen Datenspeicher-Agent zu erstellen, oder Eigenen erstellen, um andere Arten von Agents zu erstellen.

    Eine ausführliche Anleitung zum Erstellen von Agents finden Sie unter Dialogflow CX-Agent erstellen.

  4. Konfigurieren Sie die grundlegenden Agent-Einstellungen:

    1. Geben Sie unter Anzeigename einen Anzeigenamen ein.
    2. Wählen Sie den bevorzugten Standort aus. Wenn Sie die erweiterten Standorteinstellungen ändern möchten, klicken Sie auf Bearbeiten.
    3. Wählen Sie Ihre bevorzugte Zeitzone aus.
    4. Wählen Sie die Standardsprache für Ihren Agent aus. Sie können die Standardsprache für einen Agent nicht mehr ändern, nachdem er erstellt wurde.
  5. Klicken Sie auf Erstellen. In Dialogflow CX wird der Agent erstellt und dann der Standardstartablauf des Agents angezeigt.

  6. Passen Sie den Agent bei Bedarf an. Eine ausführliche Anleitung zur Anpassung von Kundenservicemitarbeitern finden Sie unter Dialogflow CX-Kundenservicemitarbeiter erstellen.

  7. Testen Sie den Agent als Best Practice:

    1. Klicken Sie auf Agent testen.
    2. Wählen Sie Agent in Umgebung testen aus.
    3. Wählen Sie unter „Umgebung“ die Option Entwurf aus.
    4. Wählen Sie unter „Ablauf“ die Option Standardstartablauf aus.
    5. Wählen Sie unter „Seite“ die Option Startseite aus.
    6. Geben Sie in die Eingabeleiste Mit Kundenservicemitarbeiter chatten die Tastenkombination Hello + Eingabetaste ein. Der Kundenservicemitarbeiter stellt sich vor.
    7. Schließen Sie den Test mit der Beispielunterhaltung ab.
  8. Der Dialogflow CX-Agent wird erstellt. Kehren Sie zur Dialogflow CX Console zurück. Klicken Sie auf das Dreistrich-Menü > Dialogflow CX.

    Dialogflow CX Console aufrufen

  9. Klicken Sie unter Kundenservicemitarbeiter auf  > Name kopieren. Speichern Sie diesen Namen, da Sie ihn bei der Konfiguration der Chat-App verwenden.

Chat-App erstellen und mit dem Dialogflow-Agent verbinden

Nachdem Sie einen Dialogflow CX-Agent erstellt haben, wandeln Sie ihn mit den folgenden Schritten in eine Chat-App um:

  1. Rufen Sie in der Google Cloud Console die Google Chat API auf. Suchen Sie nach „Google Chat API“, klicken Sie auf Google Chat API und dann auf Verwalten.

    Chat API aufrufen

  2. Klicken Sie auf Konfiguration und richten Sie die Chat-App ein:

    1. Geben Sie unter App-Name Dialogflow App ein.
    2. Geben Sie unter Avatar-URL https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png ein.
    3. Geben Sie unter Beschreibung Responds to real human conversation ein.
    4. Wählen Sie unter Funktionen die Option 1:1-Nachrichten empfangen und Gruppenbereichen und Gruppenunterhaltungen beitreten aus.
    5. Wählen Sie unter Verbindungseinstellungen die Option Dialogflow aus.
    6. Wählen Sie unter Dialogflow-Einstellungen die Option Dialogflow CX aus.
    7. Fügen Sie unter Agent oder Name der Umgebungsressource den Namen des Dialogflow CX-Agents ein, den Sie am Ende des Artikels Dialogflow CX-Agent erstellen kopiert haben.
    8. Machen Sie diese Chat-App für bestimmte Personen und Gruppen in Ihrer Domain verfügbar und geben Sie Ihre E-Mail-Adresse ein.
    9. Wählen Sie unter Protokolle die Option Fehler in Logging protokollieren aus.
  3. Klicken Sie auf Speichern.

Die Chat-App ist bereit, Nachrichten in Google Chat zu empfangen und darauf zu antworten.

Chat-App testen

Testen Sie die Dialogflow CX-Chat-App, indem Sie ihr in Google Chat eine Nachricht senden.

  1. Öffnen Sie Google Chat mit dem Google Workspace-Konto, das Sie angegeben haben, als Sie sich als vertrauenswürdiger Tester hinzugefügt haben.

    Zu Google Chat

  2. Klicken Sie auf  Neuer Chat.
  3. Geben Sie im Feld Eine oder mehrere Personen hinzufügen den Namen Ihrer Chat-App ein.
  4. Wählen Sie in den Ergebnissen die Chat-App aus. Eine Direktnachricht wird geöffnet.

  5. Geben Sie in der neuen Direktnachricht an die App Hello ein und drücken Sie enter.

    Die Dialogflow Chat-Anwendung antwortet, indem sie sich vorstellt.

  6. Schließen Sie den Test mit dem Beispiel-Testgespräch ab.

Beispiel für eine Testunterhaltung

Wenn Sie die Dialogflow CX-Chat-App in der Dialogflow CX-Konsole oder in Google Chat testen möchten, führen Sie die folgende Unterhaltung aus. Anhand der Erklärung können Sie nachvollziehen, wie der Dialogflow CX-Agent die natürliche Sprache des Nutzers interpretiert und in jedem Schritt der Unterhaltung eine eigene Antwort in natürlicher Sprache generiert. Diese Beispielunterhaltung basiert auf dem vordefinierten Kundenservicemitarbeiter Reise: Autovermietung.

Dialog Erklärung
Endnutzer: Hallo
Kundenservicemitarbeiter: Hallo! Ich bin der virtuelle Kundenservicemitarbeiter der Autovermietung. Ich kann Ihnen dabei helfen, eine neue Autovermietung zu reservieren. Wie kann ich Ihnen helfen?
  1. Die Route Standard-Begrüßungs-Intent im Standardstartablauf wird aufgerufen.
  2. Die Auftragsausführung für diesen Status-Handler ("Hallo! Ich bin…“ wird der Antwortwarteschlange hinzugefügt.
  3. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ich möchte ein Auto mieten.
Kundenservicemitarbeiter: Wo möchten Sie das Fahrzeug abholen?
  1. Die Intent-Route car_rental.reservation_create auf der Startseite wird abgeglichen.
  2. Die Sitzung wird zur Seite Abholort weitergeleitet.
  3. Das Formular auf der Seite Abholort ist nicht vollständig. Der Kundenservicemitarbeiter verwendet daher den Parameter pickup_location, um den Nutzer um eine Eingabe aufzufordern („Wo möchten Sie das Produkt abholen?“). Diese wird der Antwortwarteschlange hinzugefügt.
  4. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Las Vegas
Agent: Ok, die Abholung findet in Las Vegas statt.
Kundenservicemitarbeiter: Unterscheidet sich der Abgabeort vom Abholort?
  1. Der Parameter pickup_location wird mit der Endnutzereingabe ausgefüllt, die der Agent in der vorherigen Unterhaltungsrunde angefordert hat.
  2. Die Intent-Route car_rental.return_different_location im Standardstartablauf wird zugeordnet.
  3. Die Formularausführungsroute auf der Seite Abholort wird ausgewertet und aufgerufen. Sie enthält eine Auftragsausführung („Ok, Ihre Abholung…“), die der Antwortwarteschlange hinzugefügt wird, wobei Parameterverweise in tatsächliche vom Endnutzer bereitgestellte Werte aufgelöst werden.
  4. Die Sitzung wird zur Seite Standort bestätigen weitergeleitet.
  5. Auf der Seite Confirm Location (Standort bestätigen) wird ein Eintrag ausgeführt („Ist Ihr Abgabeort anders...“)? Diese wird der Antwortwarteschlange hinzugefügt.
  6. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ja. Ich werde das Auto in Los Angeles abgeben.
Kundenservicemitarbeiter: Okay, die Abgabe erfolgt in Los Angeles.
Kundenservicemitarbeiter: An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abholen?
  1. Die Intent-Route car_rental.return_different_location im Standardstartablauf wird zugeordnet.
  2. Die Sitzung wird zur Seite Abholort weitergeleitet.
  3. Der Parameter drop_off_location wird mit der Endnutzereingabe ausgefüllt, die der Kundenservicemitarbeiter in der vorherigen Unterhaltungsrunde angefordert hat.
  4. Die Route für das Ausfüllen des Formulars auf der Seite Abgabeort wird ausgewertet und aufgerufen. Sie hat eine Auftragsausführung („OK, dein Abgabe...“), die der Antwortwarteschlange hinzugefügt wird.
  5. Die Sitzung wird zur Seite Dauer des Verleihzeitraums weitergeleitet.
  6. Die Seite Leihdauer enthält unvollständige Formularwerte. Daher wird der Nutzer aufgefordert, den Parameter pickup_date_time anzugeben ("Welches Datum und welche Uhrzeit möchten Sie abholen?"). Diese wird der Antwortwarteschlange hinzugefügt.
  7. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer: Ich möchte das Auto am 5. März um 12:00 Uhr abholen.
Kundenservicemitarbeiter: An welchem Datum und zu welcher Uhrzeit möchten Sie das Fahrzeug abgeben?
  1. Der Parameter pickup_date_time wird mit der Endnutzereingabe ausgefüllt, die der Kundenservicemitarbeiter in der vorherigen Unterhaltungsrunde angefordert hat.
  2. Auf der Seite Rental Duration (Mietdauer) fehlt ein weiterer Formularwert. Daher wird der Nutzer zum Parameter drop_off_date_time (Abgabedatum und -uhrzeit) aufgefordert („What date and time would you like to drop off…?“). Diese wird der Antwortwarteschlange hinzugefügt.
  3. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer: 15. März, 12:00 Uhr
Agent: Zur Bestätigung:

Sie werden das Fahrzeug in Las Vegas am 05.03.2024 um 12:00:00 Uhr abholen und in Los Angeles am 15.03.2024 um 12:00:00 Uhr abgeben.

Stimmt das?
  1. Der Parameter drop_off_date_time wird mit der Endnutzereingabe ausgefüllt, die der Kundenservicemitarbeiter in der vorherigen Unterhaltungsrunde angefordert hat.
  2. Die Sitzung wird zur Seite Verleihdauer bestätigen weitergeleitet.
  3. Die Seite Miezzeitraum bestätigen enthält eine Auftragsausführung für den Datensatz ("Zur Bestätigung..."), das der Antwortwarteschlange hinzugefügt wird.
  4. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Ja, vielen Dank.
Agent: Sehr gut. Wählen wir nun ein Fahrzeug aus.
Kundenservicemitarbeiter: Möchten Sie ein Fahrzeug der Economy- oder der Luxusklasse?
  1. Die Intent-Route small_talk.confirmation.yes auf der Seite Confirm Rental Duration (Mietdauer bestätigen) wird abgeglichen.
  2. Der Kundenservicemitarbeiter bestätigt die Auswahl des Nutzers mit einer Nachricht: "Super! Jetzt wählen wir…“), das der Antwortwarteschlange hinzugefügt wird.
  3. Die Sitzung wird zur Seite Fahrzeugunterscheidung weitergeleitet.
  4. Das Formular auf der Seite Vehicle Disambiguation (Fahrzeugauswahl) ist nicht vollständig. Daher verwendet der Agent den Parameter vehicle_type, um den Nutzer zu fragen, ob er eine Economy- oder eine Luxusklasse wäre. Diese wird der Antwortwarteschlange hinzugefügt.
  5. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Die Wirtschaft.
Kundenservicemitarbeiter: Möchten Sie das Cymbal-Auto oder den Cymbal-Lkw?
  1. Die Intent-Route $session.params.vehicle_type="economy_vehicle" wird zugeordnet.
  2. Die Sitzung wird zur Seite Economy-Optionen weitergeleitet.
  3. Die Seite Economy-Optionen enthält eine Eingabeauftragsausführung ("Möchten Sie die..."), Diese wird der Antwortwarteschlange hinzugefügt.
  4. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
Endnutzer:Cymbal Truck
Agent: Der Cymbal Truck kostet 50,33 $pro Tag. Es bietet Platz für 4 Personen und ist mit einem AM/FM-Radio ausgestattet. Möchten Sie mit der Zahlung fortfahren?
Endnutzer:Ja, bitte.
  1. Die Intent-Route $session.params.vehicle_type="Cymbal Truck" wird abgeglichen und der Parameter vehicle_model wird ausgefüllt.
  2. Die Sitzung wird zur Seite Cymbal Truck bestätigen weitergeleitet.
  3. Die Seite Cymbal Truck bestätigen enthält eine Auftragsausführung für den Datensatz ("Der Cymbal Truck kostet 50,33 $pro Tag..."), das der Antwortwarteschlange hinzugefügt wird.
  4. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
  5. Die Antwort des Nutzers stimmt mit der Route small_talk.confirmation.yes überein.
Kundenservicemitarbeiter:Welchen Kartentyp verwenden Sie?
Endnutzer: Altostrat
Agent: Geben Sie die Kartennummer ein.
Endnutzer: 1234 1234 1234 1234
Kundenservicemitarbeiter: Wie lautet der Name auf der Karte?
Endnutzer: Charlie
Agent: Wie lautet die Adresse für die Rechnungsadresse?
Endnutzer: 1800 Amphibious Blvd. Mountain View, CA
Kundenservicemitarbeiter: Wie lautet die Postleitzahl der Rechnungsadresse?
Endnutzer: 94045
Agent: Sie werden das Cymbal Car in Las Vegas am 05.03.2024 um 12:00:00 Uhr abholen und am 15.03.2024 um 12:00:00 Uhr abgeben. Die Gesamtkosten für diese Fahrt betragen 175,38 $.
Kundenservicemitarbeiter: Vielen Dank, dass Sie bei uns gemietet haben. Ich wünsche Ihnen noch einen schönen Tag.
  1. Die Sitzung wird zur Seite Zahlung weitergeleitet.
  2. Das Formular Zahlung ist nicht vollständig ausgefüllt. Der Kundenservicemitarbeiter bittet den Nutzer daher, die Parameter card_type, card_number, billing_name, billing_street_address und billing_zip_code anzugeben („Welchen Kartentyp…“). Diese werden der Antwortwarteschlange nacheinander hinzugefügt und gesendet, sobald der Nutzer antwortet. Die einzelnen Parameterwerte werden durch die Antworten des Nutzers festgelegt.
  3. Die Sitzung wird zur Seite Miete bestätigen weitergeleitet.
  4. Die Seite Miete – Bestätigung enthält eine Eingabeauftragsausführung ("Ok, die Abholung erfolgt..."), Diese wird der Antwortwarteschlange hinzugefügt.
  5. Der Agent sendet die Antwortwarteschlange an den Endnutzer.
  6. Die Sitzung wird zur Seite Sitzung beenden weitergeleitet.

Kartennachrichten über Dialogflow senden

Dialogflow kann mit Text oder Kartennachrichten antworten. Wenn du mit einer Kartennachricht antworten möchtest, gib sie als benutzerdefinierte Nutzlast in fulfillment an.

Im folgenden JSON-Code wird gezeigt, wie eine Kartennachricht als benutzerdefinierte Nutzlast im Rahmen der Auftragsausführung gesendet wird:

json

{
  'cardsV2': [{
    'cardId': 'createCardMessage',
    'card': {
      'header': {
        'title': 'A card message!',
        'subtitle': 'Sent from Dialogflow',
        'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
        'imageType': 'CIRCLE'
      },
      'sections': [
        {
          'widgets': [
            {
              'buttonList': {
                'buttons': [
                  {
                    'text': 'Read the docs!',
                    'onClick': {
                      'openLink': {
                        'url': 'https://developers.google.com/workspace/chat'
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  }]
}

Einschränkungen und Hinweise

  • Chat-Interaktionsereignisse werden nur eingeschränkt unterstützt. Beachten Sie außerdem Folgendes:
    • Die folgenden Interaktionsereignistypen werden unterstützt:
      • MESSAGE
      • ADDED_TO_SPACE
      • CARD_CLICKED
    • Bei MESSAGE- oder ADDED_TO_SPACE-Ereignissen entspricht die an den Dialogflow-Agent gesendete Abfrageeingabe dem Wert des Felds argumentText in der Chatnachricht. Wenn die Nachricht einen Schrägstrichenbefehl enthält, wird stattdessen der Wert des Felds text verwendet.
    • Bei CARD_CLICKED-Ereignissen wird die an den Dialogflow-Agenten gesendete Abfrageeingabe als CARD_CLICKED.functionName formatiert. Dabei entspricht functionName dem Wert des Felds function des Action-Objekts, das mit dem interaktiven Kartenelement (z. B. einer Schaltfläche) verknüpft ist.
    • Die vollständige JSON-Nutzlast jedes Chatinteraktionsereignisses wird als benutzerdefinierte Nutzlast im Abfrageparameter an Dialogflow gesendet. Sie können mit einem Dialogflow-Webhook darauf zugreifen, indem Sie den Wert des Felds WebhookRequest.payload abfragen.
  • Hinweise zum Beantworten von Slash-Befehlen und zum Empfangen von Daten von Karten oder Dialogen:
    • Wenn Dialogflow Chat-Apps eine Nachricht mit einem Bindestrich-Befehl erhalten, enthält die Abfrageeingabe nur den Wert des Felds text. Das Feld text beginnt mit dem Namen des Slash-Befehls (z. B. /command). Damit können Sie den Intent eines Dialogflow-Agents so konfigurieren, dass er einen Slash-Befehl erkennt.
    • Wenn der Dialogflow-Agent die JSON-Nutzlast des Chat-Interaktionsereignisses verarbeiten muss, kann er dazu einen Dialogflow-Webhook verwenden, um die benutzerdefinierte Nutzlast im Abfrageparameter zu prüfen.
    • Wenn Sie einen Dialog vom Dialogflow-Agenten anzeigen lassen möchten, antworten Sie mit einer einzelnen benutzerdefinierten JSON-Nutzlast, die eine Nachricht mit einer DIALOG-Aktionantwort enthält.
    • Um Daten zu verarbeiten, die über Karten eingegeben wurden, kann der Dialogflow-Agent Intents erkennen, die mit dem Text CARD_CLICKED beginnen, und mit einer einzelnen benutzerdefinierten JSON-Nutzlast mit der entsprechenden Aktion antworten.
  • Linkvorschauen werden nicht unterstützt.
  • Wenn der Dialogflow-Agent nur mit einer Nachricht antwortet, wird diese synchron an Google Chat gesendet. Wenn der Dialogflow-Agent mit mehreren Nachrichten antwortet, werden alle Nachrichten asynchron an Chat gesendet. Dazu wird die Methode create für die Ressource spaces.messages in der Chat API einmal pro Nachricht aufgerufen.
  • Wenn Sie die Dialogflow CX-Integration mit Google Chat verwenden, müssen der Dialogflow-Agent und die Chat-App im selben Google Cloud-Projekt eingerichtet werden. Wenn Sie Dialogflow und Google Chat in verschiedenen Cloud-Projekten einrichten müssen, können Sie einen Zwischenserver einrichten, um die Verbindung zu erleichtern. Weitere Informationen finden Sie in diesem Beispiel zur Chatintegration für Dialogflow CX auf GitHub.

Fehlerbehebung

Wenn eine Google Chat-App oder -Karte einen Fehler zurückgibt, wird in der Chat-Oberfläche die Meldung „Ein Fehler ist aufgetreten“ angezeigt. oder „Ihre Anfrage konnte nicht verarbeitet werden“ Manchmal wird in der Chat-Benutzeroberfläche keine Fehlermeldung angezeigt, aber die Chat-App oder -Karte führt zu einem unerwarteten Ergebnis. Beispielsweise wird eine Kartennachricht möglicherweise nicht angezeigt.

Auch wenn in der Chat-Benutzeroberfläche keine Fehlermeldung angezeigt wird, sind beschreibende Fehlermeldungen und Protokolldaten verfügbar, die Ihnen bei der Fehlerbehebung helfen, wenn die Fehlerprotokollierung für Chat-Apps aktiviert ist. Informationen zum Ansehen, Entfernen und Beheben von Fehlern finden Sie unter Google Chat-Fehler beheben.

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, empfehlen wir Ihnen, das Cloud-Projekt zu löschen.

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten. Klicken Sie auf das Dreistrich-Menü  > IAM & Verwaltung > Ressourcen verwalten.

    Ressourcenmanager aufrufen

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen .
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.
  • Dialogflow CX verwendet eine Zustandsmaschine für das Design des Dialogflow-Agents, der Ihnen eine klare und explizite Kontrolle über eine Unterhaltung bietet, eine bessere Endnutzererfahrung und einen besseren Entwicklungsworkflow bietet. Wenn Sie eine Dialogflow-Chat-App erstellen, empfehlen wir die Verwendung von Dialogflow CX.
  • Dialogflow ES ist eine weitere Möglichkeit, Dialogflow mit einer Chat-App zu verwenden.