Business Messages-Agents unterstützen direkte Integrationen mit
- Dialogflow ES:Intent-Abgleich und FAQs
- Dialogflow CX: Intent-Abgleich und Übergabe an Kundenservicemitarbeiter
So integrieren Sie einen Business Messages-Agent in andere Dialogflow-Funktionen: ES oder Dialogflow CX in der Dokumentation der einzelnen Produkte.
Wenn ein Nutzer eine Nachricht an einen Agent mit einer Dialogflow-Integration sendet,
Business Messages übergibt die Nutzernachricht an Dialogflow und sendet die
Antwort an den Agent im Feld
dialogflowResponse
-Objekt. Sie können Agents so konfigurieren,
die Antwort von Dialogflow automatisch an den Nutzer senden, ohne dass
Weitere Informationen finden Sie unter Automatische Antworten.
.
Dialogflow-Einbindung
Bevor Sie die Dialogflow-basierte Automatisierung über Business Messages nutzen können, müssen Sie die Dialogflow-Integration aktivieren.
Vorbereitung
Für den Einstieg benötigen Sie
- Business Messages Kundenservicemitarbeiter
- einen Dialogflow-Agent in der Region Global mit einer englischen Sprache (de)
Wenn Sie keinen Dialogflow-Agent haben, erstellen Sie einen.
Dialogflow ES
Bevor Sie eine Dialogflow ES-Integration aktivieren können, benötigen Sie Projekt-ID des Dialogflow-Agents. Um die Projekt-ID zu finden,
- Rufen Sie die Dialogflow-Konsole auf.
- Wählen Sie den Dialogflow-Agent aus, den Sie mit Business Messages verbinden möchten. und klicken Sie dann auf das Zahnradsymbol neben dem Agent-Namen.
- Notieren Sie sich unter Google-Projekt den Wert für die Projekt-ID.
Dialogflow CX
Bevor Sie eine Dialogflow CX-Integration aktivieren können, benötigen Sie Ihr Projekt-ID und Agent-ID des Dialogflow-Agents. Um diese IDs zu finden,
- Rufen Sie die Dialogflow CX-Konsole auf.
- Wählen Sie Ihr Dialogflow-Projekt aus.
- Klicken Sie in der Agent-Auswahl auf das Dreipunkt-Menü neben Ihrem Dialogflow-Agent.
- Klicken Sie auf Namen kopieren. Dadurch wird der vollständige Name des Agents in das Feld
folgendes Format:
projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID
- Notieren Sie sich die Werte der Projekt-ID und der Agent-ID.
Integration aktivieren
- Gehen Sie in der Business Communications Developer Console zu Integrations (Integrationen):
- Klicken Sie für Dialogflow auf Enable integration (Integration aktivieren).
- Klicken Sie auf Bestehendes Modell verbinden.
- Wählen Sie für die Dialogflow-Edition die zu aktivierende Edition aus.
- Geben Sie die Projekt-ID des Dialogflow-Agents ein.
- Geben Sie zum Aktivieren von Dialogflow CX auch die Agent-ID des Dialogflow-Agents ein.
- Wenn Sie möchten, dass Business Messages Nutzern automatisch mit Dialogflow-Antworten die Option Automatische Antwort aktivieren aus.
- Klicken Sie auf Weiter.
- Kopieren Sie die E-Mail-Adresse des Dienstkontos. Mit diesem Konto wird Ihre Business Messages verknüpft und Dialogflow-Agents.
- In der Google Cloud Console, wählen Sie Ihr Dialogflow-Projekt aus.
- Rufen Sie IAM auf. Berechtigungen
- Klicken Sie auf Hinzufügen und geben Sie unter Neue Hauptkonten die E-Mail-Adresse des Dienstkontos ein.
- Wählen Sie unter Rolle auswählen die Rolle Agent-Bearbeiter in Dialogflow-Konsole aus.
- Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie Dialogflow API-Client aus.
- Klicken Sie auf Speichern.
- Klicken Sie in der Business Communications Developer Console auf Weiter.
- Klicken Sie auf Integration starten.
Es dauert etwa zwei Minuten, eine Verbindung zwischen Business Messages und Dialogflow herzustellen.
Integration aktualisieren
- Gehen Sie in der Business Communications Developer Console zu Integrations (Integrationen):
- Klicken Sie auf das Zahnradsymbol . neben Dialogflow.
- Stellen Sie die Ein/Aus-Schaltfläche Automatische Antwort aktivieren ein, je nachdem, ob Sie das möchten oder nicht. Business Messages verwenden, um Nutzern automatisch mit Dialogflow-Antworten zu antworten.
Zwischen Dialogflow-Versionen wechseln
Ein Business Messages-Agent kann jeweils nur eine Dialogflow-Integration unterstützen. Wenn Sie von einer Dialogflow-Version zu einer anderen wechseln möchten, müssen Sie die der aktuellen Integration, bevor Sie die neue aktivieren.
Integration deaktivieren
- Gehen Sie in der Business Communications Developer Console zu Integrations (Integrationen):
- Klicken Sie auf das Zahnradsymbol . neben Dialogflow.
- Klicken Sie auf Integration deaktivieren.
- Klicken Sie auf Deaktivieren.
Es dauert etwa eine Minute, bis eine vorhandene Dialogflow-Integration deaktiviert ist.
Aktivieren Sie eine neue Dialogflow-Integration, indem Sie diese Schritte ausführen.
Intent-Zuordnung
Nachdem Sie die Dialogflow-Integration für einen Business Messages-Agent aktiviert haben, kann der Agent mithilfe der konfigurierten Intents Ihres Dialogflow-Projekts verstehen und Fragen von Nutzenden beantworten, ohne Code schreiben zu müssen. Weitere Informationen über Intents finden Sie in der Dokumentation zu Dialogflow ES. und Dialogflow CX.
Dialogflow-Intents für jede gewünschte Konversationsoption konfigurieren durch Automatisierung. Business Messages-Agents nutzen Dialogflow, um Nutzerbotschaften zu verstehen.
Beim Aufrufen der Dialogflow APIs übergibt Business Messages die
Nutzlast der Nutzernachricht
Intents und Webhook zur Auftragsausführung hinzufügen. Wenn eine Nutzernachricht übereinstimmt
mit einem Intent haben, können Sie auf diese Nutzlast im Struct
-Format im
Feld business_messages_payload
innerhalb von QueryParameters
.
Die Nutzlast enthält alle Felder aus der Nutzernachricht mit Ausnahme von DialogflowResponse
.
Bei Dialogflow CX gibt Business Messages außerdem einen Sitzungsparameter namens channel
mit dem Wert google_business_messages
an Ihre Intents weiter, den Sie in Ihrem Agent im folgenden Format referenzieren können: $session.params.channel
.
Mit diesem Parameter können Sie Ihren Dialogflow-Auftragsausführungen Bedingungen hinzufügen, um mehrere Kanäle im selben Dialogflow-Agent zu unterstützen.
Weitere Informationen zu Abfrageparametern finden Sie in den Referenzen zu Dialogflow ES und Dialogflow CX.
Vorbereitung
Beim Erstellen von NLU-Modellen in Dialogflow können Sie verschiedene Antworttypen für einen Intent. Business Messages unterstützt die Standardantwort, Dieser kann Folgendes umfassen:
- Text
- Benutzerdefinierte Nutzlast
- Übergabe an Kundenservicemitarbeiter (nur Dialogflow CX)
Eine benutzerdefinierte Nutzlast muss mit einer gültigen JSON-Nachrichtenantwort für Business Messages übereinstimmen Objekt. Wenn Sie benutzerdefinierte Nutzlastantworten für einen Intent konfigurieren, ignoriert die folgenden Felder:
name
messageId
representative
Sehen Sie sich die folgenden Beispielantworten an.
Text mit Vorschlägen
{
"text": "Hello World!",
"fallback": "Hello World!\n\nReply with \"Hello\" or \"Hi!\"",
"suggestions": [
{
"reply": {
"text": "Hello",
"postbackData": "hello-formal"
}
},
{
"reply": {
"text": "Hi!",
"postbackData": "hello-informal"
}
}
]
}
Interaktive Chat-Nachricht
{
"fallback": "Hello, world!\nSent with Business Messages\n\nReply with \"Suggestion #1\" or \"Suggestion #2\"",
"richCard": {
"standaloneCard": {
"cardContent": {
"title": "Hello, world!",
"description": "Sent with Business Messages.",
"media": {
"height": "TALL",
"contentInfo":{
"altText": "Google logo",
"fileUrl": "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png",
"forceRefresh": "false"
}
},
"suggestions": [
{
"reply": {
"text": "Suggestion #1",
"postbackData": "suggestion_1"
}
},
{
"reply": {
"text": "Suggestion #2",
"postbackData": "suggestion_2"
}
}
]
}
}
}
}
Karussell mit interaktiver Chat-Nachricht
{
"fallback": "Card #1\nThe description for card #1\n\nCard #2\nThe description for card #2\n\nReply with \"Card #1\" or \"Card #2\"",
"richCard": {
"carouselCard": {
"cardWidth": "MEDIUM",
"cardContents": [
{
"title": "Card #1",
"description": "The description for card #1",
"suggestions": [
{
"reply": {
"text": "Card #1",
"postbackData": "card_1"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/cute-dog.jpg",
"forceRefresh": false
}
}
},
{
"title": "Card #2",
"description": "The description for card #2",
"suggestions": [
{
"reply": {
"text": "Card #2",
"postbackData": "card_2"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/elephant.jpg",
"forceRefresh": false
}
}
}
]
}
}
}
Übergabe an Kundenservicemitarbeiter
{
"metadata": {}
}
FAQ-Bots
Nachdem Sie eine Dialogflow ES-Integration für einen Business Messages-Agent aktiviert haben, einen FAQ-Bot erstellen. Wenn Sie Fragen und Antworten einem unterstützten Wissensdokument erstellen, erstellen Business Messages und Dialogflow die die notwendig ist, um Fragen von Nutzenden zu verstehen und zu beantworten, Sie müssen Code schreiben.
Wenn Sie einen FAQ-Bot in Aktion sehen möchten, chatten Sie mit den FAQs zu Business Messages Bot
Vorbereitung
Bevor Sie einen FAQ-Bot erstellen, müssen Ihre Fragen und Antworten als ein Wissensdokument (max. 50 MB): eine öffentlich verfügbare HTML- oder CSV-Datei.
Im Allgemeinen
- Kann eingeschränkte Markdown-Elemente in Antworten einfügen, wie in Rich Text.
- Sie dürfen maximal 50 MB groß sein.
- Sollte nicht mehr als 2.000 Frage/Antwort-Paare umfassen.
- Doppelte Fragen mit unterschiedlichen Antworten sollten nicht unterstützt werden.
Bei HTML-Dateien:
- Dateien aus öffentlichen URLs müssen vom Google-Suchindex gecrawlt worden sein, sodass sie im Suchindex erscheinen. Sie können dies mit der Google Search Console. Beachten Sie, dass Ihre Inhalte durch die Indexierung nicht aktuell bleiben. Sie müssen explizit Ihr Dokument aktualisieren, wenn sich der Quellinhalt ändert.
- Dialogflow entfernt HTML-Tags beim Erstellen von Antworten aus dem Inhalt. Weil sollten Sie HTML-Tags vermeiden und nach Möglichkeit nur Text verwenden.
- Dateien mit nur einem Frage-Antwort-Paar werden nicht unterstützt.
Bei CSV-Dateien
- Die Dateien müssen Fragen in der ersten Spalte und Antworten in der zweiten Spalte enthalten. ohne Kopfzeile.
- In den Dateien müssen Kommas als Trennzeichen verwendet werden.
FAQ-Bot erstellen
- Gehen Sie in der Business Communications Developer Console zu Integrations (Integrationen):
- Klicken Sie unter Wissensdatenbank (FAQs) auf Wissensdatenbank erstellen.
- Geben Sie einen Namen für die Wissensdatenbank ein und klicken Sie auf Weiter.
- Wählen Sie einen Mime-Typ aus.
- Fügen Sie ein Wissensdokument hinzu.
- Wenn Sie als Mime-Typ HTML ausgewählt haben, geben Sie die öffentlich zugänglichen URL für Ihre FAQ in URL.
- Wenn Sie als Mime-Typ CSV ausgewählt haben, klicken Sie auf Hochladen und wählen Sie den CSV-Datei.
- Klicken Sie auf Hinzufügen und fertigstellen.
Wenn Sie einem FAQ-Bot weitere Dokumente hinzufügen möchten, klicken Sie auf die Schaltfläche Add Documents (Dokumente hinzufügen).
Wenn Sie diese Schritte ausführen, enthält Business Messages die
dialogflowResponse
-Objekt in Nutzernachrichten, die es an den Agent sendet. Wenn Sie die automatische Antwort aktivieren, antwortet Business Messages dem Nutzer.
durch die Frage/Antwort-Kombination mit der höchsten matchConfidence
-Punktzahl, wenn
im Vergleich zur Nachricht der Nutzenden.
Automatische Antworten
Wenn Sie während der Dialogflow-Einbindung automatische Antworten aktivieren, Messages antwortet dem Nutzer automatisch über Dialogflow. Ihr Unternehmen Der Messages-Agent antwortet mit der höchsten Übereinstimmung. Mit einem Dialogflow ES-Integration, wenn Übereinstimmungen sowohl mit einer FAQ-Antwort als auch mit einer benutzerdefinierten Intents, antwortet Business Messages mit der Übereinstimmung mit der höchsten des Konfidenzniveaus.
In Business Messages werden alle automatisch beantworteten Nachrichten mit „BOT
“ als Absender gekennzeichnet
Bevollmächtigten. Wenn Ihr Agent Live-Agents unterstützt,
Business Messages deaktiviert automatische Antworten nach dem REPRESENTATIVE_JOINED
Ereignisse
und setzt die automatischen Antworten nach REPRESENTATIVE_LEFT
Ereignissen fort. Siehe Handoff
vom Bot zum Kundenservicemitarbeiter.
Automatische Antwort mit einer FAQ-Antwort
Wenn eine FAQ-Antwort bei einer Dialogflow ES-Integration die höchste Zuverlässigkeit hat verknüpft, ordnet Business Messages die Antwort einer SMS zu. Wenn es eine ähnliche, aber abweichende Antwort verfügbar ist, wird eine weitere Antwort“ Vorschlag. Andernfalls enthält die Nachricht eine Frage und einen Vorschlag antwortet darauf, ob die Nachricht der Anfrage des Nutzers entsprochen hat.
Mit Intent-Antwort automatisch antworten
Intent-Antworten können eine oder mehrere der folgenden Antworten enthalten.
- Dialogflow ES: Text, Benutzerdefinierte Nutzlast
- Dialogflow CX: Text Benutzerdefinierte Nutzlast, Live-Übergabe an Kundenservicemitarbeiter
Wenn eine Intent-Antwort die höchste Übereinstimmung mit dem Konfidenzniveau hat, gilt Folgendes: gilt.
- Wenn die Antwort mindestens einen Textwert hat, ordnet Business Messages diesen Wert zu in eine Textnachricht.
- Wenn die Antwort mindestens eine benutzerdefinierte Nutzlast mit einer gültigen Business- Messages JSON-Objektstruktur erstellt, erstellt Business Messages eine Nachricht mithilfe der bereitgestelltes JSON-Objekt.
- Wenn die Antwort mindestens eine Übergabeantwort eines Kundenservicemitarbeiters hat, lesen Sie den Abschnitt Automatische Antwort mit einer Live-Agent-Anfrage.
Da Dialogflow mehrere Antworten innerhalb einer Intent-Übereinstimmung einbeziehen kann, Business Messages sendet jede Nachricht, benutzerdefinierte Nutzlast oder Übergabe an einen Kundenservicemitarbeiter als separate Nachricht. Wenn in einem Intent mehrere Nachrichten vorhanden sind aber einige fehlerhaft sind, sendet Business Messages nur gültige Nachrichten als automatische Antworten.
Automatisch mit einer Anfrage an einen Kundenservicemitarbeiter antworten
Dialogflow CX unterstützt die Live-Übergabe an Kundenservicemitarbeiter Antwort. Es signalisiert, dass das Gespräch an einen Menschen übergeben werden sollte und ermöglicht es Ihnen, benutzerdefinierte Metadaten für die Übergabe Verfahren. Wenn eine Intent-Antwort die höchste Übereinstimmung mit dem Konfidenzniveau hat und eine Übergabe an einen Kundenservicemitarbeiter enthält, sendet Business Messages eine Termin durch einen Kundenservicemitarbeiter angefragt mit Ihrem Webhook. Informationen zum Verarbeiten dieses Ereignisses finden Sie unter Übergabe vom Bot an den Kundenservicemitarbeiter
Automatische Antwort mit Fallback-Nachricht
Wenn Dialogflow keine Übereinstimmung mit hoher Zuverlässigkeit erzielt, sendet Business Messages eine Fallback-Antwort. Fallbacks werden in Dialogflow ES anders behandelt und Dialogflow CX
Dialogflow ES
Wenn es bei FAQ-Bots keine Übereinstimmung mit einer FAQ-Antwort gibt, sendet Business Messages Es wird eine Fallback-Meldung angezeigt, dass keine Antwort gefunden wurde.
Wenn es bei konfigurierten Intents keine Übereinstimmung mit einer Intent-Antwort gibt, Messages sendet eine Fallback-Intent-Antwort. Sie können den von Dialogflow bereitgestellten Fallback-Text verwenden oder die Methode Fallback mit zusätzlichem Text und benutzerdefinierten Nutzlasten.
Hier ist ein Beispiel für eine Fallback-Intent-Antwort, die Ihr Webhook kann Folgendes empfangen:
{
"intentResponses": [
{
"intentName": "projects/df-integration/agent/intents/12345",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "1.0",
"fulfillmentMessages": [
{
"text": "One more time?"
}
]
}
]
}
Dialogflow füllt intent_name
und intent_display_name
vorab aus.
Dialogflow CX
Dialogflow CX verarbeitet Fallback-Intent-Antworten so integrierte Ereignisse verwenden. Wenn es keine Übereinstimmung mit einer Intent-Antwort gibt, sendet Business Messages eine Fallback-Nachricht aus dem Standardereignis "Keine Übereinstimmung" in Dialogflow. Sie können Verwenden Sie den von Dialogflow bereitgestellten Fallback-Text oder konfigurieren Sie das Fallback mit zusätzlichem Text, benutzerdefinierten Nutzlasten und Optionen für die Übergabe an einen Kundenservicemitarbeiter.
Hier ist ein Beispiel für eine Fallback-Intent-Antwort, Webhook kann Folgendes empfangen:
{
"intentResponses": [
{
"intentName": "sys.no-match-default",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "0.3",
"fulfillmentMessages": [
{
"text": "I missed that, say that again?"
}
]
}
]
}
intent_name
und intent_display_name
werden in Business Messages hartcodiert.
Dialogflow-spezifische Felder
Nachdem Sie die Dialogflow-Integration aktiviert haben, sendet der Nutzer eine Nachricht an den Agent
erhält
einschließlich der
dialogflowResponse
-Objekt enthält. Ihr Webhook empfängt Nutzlasten für alle Nutzernachrichten, unabhängig von
ob Business Messages automatisch auf die Nachricht auf Ihrem
Um zu überprüfen, ob eine automatische Antwort vorliegt, schauen Sie sich den Wert der
autoResponded
und entscheiden, ob Sie dem Nutzer antworten müssen.
Dialogflow ES
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", }], "faqResponse": { "userQuestion": "USER_QUESTION", "answers": [{ "faqQuestion": "FAQ_QUESTION", "faqAnswer": "FAQ_ANSWER", "matchConfidenceLevel": "CONFIDENCE_LEVEL", "matchConfidence": "CONFIDENCE_NUMERIC", }], }, "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
Feld | Beschreibung |
---|---|
queryText
|
Der ursprüngliche dialogorientierte Abfragetext. Wenn automatische Rechtschreibung
Die Korrektur ist für das Dialogflow-Modell queryText aktiviert
enthält die korrigierte Nutzereingabe. |
intentName |
Die eindeutige Kennung des zugeordneten Intents. |
intentDisplayName |
Der Name des zugeordneten Intents. |
intentDetectionConfidence
|
Die numerische Konfidenzbewertung für die Übereinstimmung
zwischen queryText und intentName . |
text |
Eine Textantwort. |
jsonPayload
|
Eine benutzerdefinierte Nutzlastantwort.
Dieser String stimmt mit der benutzerdefinierten
der in Dialogflow definierten Nutzlast.
Wenn die Nutzlast keine gültige JSON-Datei für Business Messages hat
Objektstruktur, error beschreibt das Problem. |
error |
Die Beschreibung eines Fehlers mit einer Nachricht zur Intent-Auftragsausführung. |
userQuestion |
Die vom Nutzer gestellte Frage, wie von Dialogflow geparst. |
faqQuestion |
Eine Frage von Dialogflow, die der Frage des Nutzers zugeordnet wurde. |
faqAnswer |
Eine Antwort von Dialogflow, die der Frage des Nutzers zugeordnet wurde. |
matchConfidenceLevel
|
Das Vertrauen in die Übereinstimmung zwischen
userQuestion und faqQuestion . |
matchConfidence
|
Die numerische Konfidenzbewertung in der Übereinstimmung zwischen
userQuestion und faqQuestion . |
autoResponded
|
Ob auf Business Messages automatisch geantwortet wurde mit einer Antwort von Dialogflow. |
message |
Die Nutzlast der automatischen Antwort. |
responseSource
|
Die Quelle der automatischen Antwort. Weitere Informationen finden Sie unter
ResponseSource |
Dialogflow CX
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", "liveAgentHandoff": { "metadata": {} } }], "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
Feld | Beschreibung |
---|---|
queryText
|
Der ursprüngliche dialogorientierte Abfragetext. Wenn automatische Rechtschreibung
Die Korrektur ist für das Dialogflow-Modell queryText aktiviert
enthält die korrigierte Nutzereingabe. |
intentName |
Die eindeutige Kennung des zugeordneten Intents. |
intentDisplayName |
Der Name des zugeordneten Intents. |
intentDetectionConfidence
|
Die numerische Konfidenzbewertung für die Übereinstimmung
zwischen queryText und intentName . |
text |
Eine Textantwort. |
jsonPayload
|
Eine benutzerdefinierte Nutzlastantwort.
Dieser String stimmt mit der benutzerdefinierten
der in Dialogflow definierten Nutzlast.
Wenn die Nutzlast keine gültige JSON-Datei für Business Messages hat
Objektstruktur, error beschreibt das Problem. |
error |
Die Beschreibung eines Fehlers mit einer Nachricht zur Intent-Auftragsausführung. |
liveAgentHandoff |
Benutzerdefinierte Metadaten für die Übergabeprozedur des Live-Kundenservicemitarbeiters. |
autoResponded
|
Ob auf Business Messages automatisch geantwortet wurde mit einer Antwort von Dialogflow. |
message |
Die Nutzlast der automatischen Antwort. |
responseSource
|
Die Quelle der automatischen Antwort. Weitere Informationen finden Sie unter
ResponseSource |