Um Aktionen in Dialogflow zu definieren, erstellen Sie in Ihrem Dialogflow-Agent Intents und weisen sie Ihrer Aktion als Einstiegspunkte zu. Sie können die folgenden Arten von Aktionen erstellen:
- Standardaktion: Jeder Dialogflow-Agent darf nur eine einzige Aktion haben, die aufgerufen wird, wenn Nutzer nach dem Namen Ihrer Aktion fragen. Beispiel: "Ok Google. Mit "Fakten über Google" sprechen" oder "Ok Google. Ich möchte mit „Facts über Google“ sprechen.“
- Zusätzliche Intents für Deeplinks zu deiner Unterhaltung: Diese Aktionen werden ausgelöst, wenn Nutzer deine Aktion mit ihrem Namen aufrufen und eine Aufrufformulierung angeben (z. B. „Fakts über Google mit Fakten sprechen“.
Weitere Informationen zur Funktionsweise dieser Aufrufmodelle finden Sie unter Intents und Aufrufe.
Standardaktion festlegen
Jeder Dialogflow-Agent muss genau einen Intent haben, der das Ereignis GOOGLE_ASSISTANT_WELCOME verarbeitet. Dieser Intent wird ausgelöst, wenn Nutzer deine Aktion über ihren Namen aufrufen (z. B. "Ok Google, sprich mit Fakten über Google").
Sie können das Ereignis GOOGLE_ASSISTANT_WELCOME so definieren:
Im Intent-Editor der Dialogflow-Konsole:
- Klicken Sie im Navigationsmenü auf Intents.
- Wählen Sie den Intent aus, den Sie als Begrüßungsereignis festlegen möchten.
- Geben Sie im Abschnitt Events (Ereignisse) des Intents
GOOGLE_ASSISTANT_WELCOME
ein. Klicken Sie auf Speichern.
Abbildung 1. Screenshot des Abschnitts „Events“ (Ereignisse) eines Dialogflow-Intents
Über das modale Fenster mit der Google Assistant-Integration:
- Klicken Sie im Navigationsmenü auf Integrations (Integrationen) und dann auf Google Assistant.
- Klicken Sie auf X, um das aktuelle Element im Feld Expliziter Aufruf zu entfernen.
Wählen Sie im Feld Welcome Intent (Begrüßungs-Intent) den Intent aus, den Sie als Begrüßungsereignis festlegen möchten.
Abbildung 2. Screenshot des modalen Fensters für die Google Assistant-Integration in der Dialogflow-Konsole
Im Abschnitt Events (Ereignisse) des Intents sollten Sie sehen, dass für den Intent jetzt das Ereignis GOOGLE_ASSISTANT_WELCOME festgelegt ist (siehe Abbildung 1).
Auftragsausführung aktivieren
Standardmäßig gibt ein Dialogflow-Intent eine statische Antwort zurück, die im Abschnitt Response (Antwort) des Intents angegeben wird. Diese Einstellung reicht unter Umständen für einfache Aktionen aus, die beim Aufrufen nur mit derselben Nachricht antworten müssen. Wenn der Intent jedoch eine dynamische Antwort zurückgeben soll, müssen Sie eine Auftragsausführung bereitstellen, die komplexe Logik verarbeiten und in Echtzeit eine Antwort für den Intent erstellen kann.
So aktivieren Sie die Auftragsausführung für einen Intent:
- Scrollen Sie im Intent-Editor eines Intents nach unten.
Klicken Sie auf Fulfillment (Auftragsausführung) und wählen Sie Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren) aus.
Abbildung 3. Screenshot des Abschnitts „Auftragsausführung“ eines Dialogflow-Intents
Informationen zum Umgang mit diesem Intent, wenn er ausgelöst wird, finden Sie unter Build-Auftragsausführung.
Zusätzliche Aktionen definieren
Sie können zusätzliche Aktionen angeben, die als Einstiegspunkte in Ihre Unterhaltung dienen. Bei dieser Konfiguration können Nutzer genauer angeben, was sie tun möchten, z. B. „Mit Fakten über Google sprechen, um Informationen zum Verlauf zu finden“.
So definieren Sie in Dialogflow zusätzliche Aktionen:
- Erstellen Sie einen Intent für eine bestimmte Aktion, die Sie erstellen möchten.
Geben Sie im Abschnitt Trainingsformulierungen des Intents die Muster an, die diese Aktion auslösen. Wenn die Aktion beispielsweise durch die Formulierung „Mit Fakten über Google sprechen, um Informationen zur Geschichte finden“ aufgerufen werden soll, geben Sie die folgenden Trainingsformulierungen an:
- „Finde mir Informationen zur Geschichte“
- „Informationen zur Geschichte nachschlagen“
- „Ich möchte etwas über die Geschichte des Unternehmens erfahren.“
- „Lies mir ein paar Fakten zu den Hauptsitzen vor.“
- „Erzähl mir ein paar Fakten über den Hauptsitz“
Wir empfehlen mindestens 10 Trainingsformulierungen pro Intent.
Scrollen Sie zum Aktivieren der Auftragsausführung für den Intent zum Ende des Bildschirms, klicken Sie auf Fulfillment (Auftragsausführung) und wählen Sie Enable webhook call for this intent aus. Weitere Informationen zur Auftragsausführung finden Sie unter Build-Auftragsausführung.
Klicken Sie auf Speichern.
Klicken Sie im Navigationsmenü auf Integrations (Integrationen) und dann auf Google Assistant. (Das modale Fenster von Google Assistant wird angezeigt.)
Fügen Sie im Abschnitt Impliziter Aufruf den Intent hinzu.
Abbildung 4. Screenshot des Bereichs „Impliziter Aufruf“ im modalen Fenster für die Google Assistant-Integration
Beim Definieren von Aktionen gelten die folgenden Einschränkungen und Richtlinien:
- Die reservierten Wörter dürfen nicht in Aufrufsätzen verwendet werden.
- Ihre Aufrufformulierungen dürfen beispielsweise nicht mit "sprechen mit" oder "Ich möchte mit Ihnen sprechen" beginnen.
- Geben Sie keine Trainingsformulierungen an, die nur eine
@sys.any
-Entität enthalten.- Seien Sie viel spezifischer, z. B.
find recipes for @sys.any
.
- Seien Sie viel spezifischer, z. B.
Eine nicht erkannte Aktion verarbeiten
Wenn Nutzer versuchen, eine Aktion aufzurufen, die Ihre Aktionen nicht erkennen, kann Dialogflow einen Intent zur Verarbeitung dieser Fälle auslösen.
Um dieses Verhalten zu aktivieren, erstellen Sie einen neuen Intent mit dem Eingabekontext google_assistant_welcome
und geben Sie die entsprechenden Antworten für Nutzer an:
- Klicken Sie im Navigationsmenü auf Intents.
- Klicken Sie auf Create Intent (Intent erstellen) und geben Sie dem Intent einen Namen.
- Geben Sie im Abschnitt Contexts (Kontexte)
google_assistant_welcome
als Eingabekontext an und drücken Sie die Eingabetaste. Nach der Eingabe des Eingabekontexts wirdgoogle_assistant_welcome
als Ausgabekontext angezeigt. Klicken Sie auf x, um diesen Ausgabekontext zu entfernen.
Fügen Sie in den Trainingsformulierungen
banana
(oder ein anderes Substantiv) als Nutzerausdruck hinzu.Doppelklicken Sie auf Banane und wählen Sie
@sys.any
aus. (Wir verwenden die Entität@sys.any
, um Dialogflow anzuweisen, den Ausdruck für jede Grammatik zu verallgemeinern, nicht nur für Banane.)Geben Sie im Abschnitt Response (Antwort) mit
$any
eine Antwort an. Verwenden Sie beispielsweise die folgende Antwort:I'm sorry, I don't know how to help with $any.
Klicken Sie auf Speichern.