1. Übersicht
Actions on Google ist eine Entwicklerplattform, mit der Sie Software erstellen können, um die Funktionen von Google Assistant, dem virtuellen persönlichen Assistenten von Google, auf mehr als einer Milliarde Geräten wie intelligenten Lautsprechern, Smartphones, Autos, Fernsehern und Kopfhörern zu erweitern. Nutzer interagieren mit Assistant, um Dinge zu erledigen, z. B. Lebensmittel zu kaufen oder eine Fahrt zu buchen. Eine vollständige Liste der möglichen Maßnahmen finden Sie im Aktionsverzeichnis. Als Entwickler können Sie mit Actions on Google ganz einfach ansprechende und effektive Unterhaltungen zwischen Nutzern und Ihrem Drittanbieterdienst erstellen und verwalten.
Dies ist ein erweitertes Codelab-Modul für Leser, die bereits Erfahrung mit dem Erstellen von Aktionen für Google Assistant haben. Wenn Sie noch keine Entwicklungserfahrung mit Actions on Google haben, empfehlen wir Ihnen dringend, sich mithilfe unserer Codelabs ( Stufe 1, Level 2 und Level 3) mit der Plattform vertraut zu machen. In diesen Modulen für Fortgeschrittene wirst du durch eine Reihe von Funktionen geführt, mit denen du die Funktionen deiner Aktion erweitern und dein Publikum vergrößern kannst.
Eine wichtige Möglichkeit, den Erfolg einer Aktion zu messen, ist die Nutzerinteraktion oder wie effektiv die Aktion darin ist, Nutzer nach der ersten Interaktion wieder zu Ihnen zu bewegen. Um das zu vereinfachen, kannst du mehrere Funktionen in deiner Aktion implementieren, über die Nutzer zurück zu deiner Unterhaltung gelangen.
Im Codelab werden Funktionen zur Nutzerinteraktion und Best Practices für Actions on Google behandelt.
Aufgaben
Sie können bereits vorhandene Funktionen optimieren, indem Sie sie für Folgendes aktivieren:
- Sende Nutzern ein tägliches Update, über das sie mit deiner Aktion sprechen können
- Sende Nutzern Push-Benachrichtigungen, die einen Link zurück zu deiner Aktion enthalten
- Erstelle einen Link, über den Nutzer über einen mobilen Webbrowser zu deiner Aktion gelangen
Lerninhalte
- Was ist ein Nutzer-Engagement und warum ist es wichtig für den Erfolg einer Aktion?
- Aktionen ändern, um mehr Nutzerinteraktionen zu erzielen
- Welche Funktionen für das Nutzer-Engagement bei verschiedenen Arten von Aktionen verwendet werden
- Mit der Actions API Benachrichtigungen über Assistant senden
Voraussetzungen
Sie benötigen die folgenden Tools:
- Eine IDE oder einen Texteditor Ihrer Wahl, z. B. WebStorm, Atom oder Sublime
- Ein Terminal zum Ausführen von Shell-Befehlen, auf denen Node.js, npm und Git installiert sind
- Ein Webbrowser wie Google Chrome
- Eine lokale Entwicklungsumgebung mit der Firebase-Befehlszeile
- Ein Mobilgerät (Android oder iOS) mit Assistant. Du musst bei Assistant mit demselben Google-Konto angemeldet sein, mit dem du dieses Projekt erstellst.
Außerdem sollten Sie unbedingt mit JavaScript (ES6) vertraut sein, um den Webhook-Code zu verstehen, dies sind jedoch nicht zwingend erforderlich.
2. Projekt einrichten
In diesem Abschnitt erfahren Sie, wie Sie einer bereits erstellten Aktion Funktionen für Nutzerinteraktionen hinzufügen.
Beispiel verstehen
Das Beispiel für dieses Codelab ist eine einfache Aktion für ein fiktives Fitnessstudio namens „Action Gym“. Die Aktion liefert Informationen über das Fitnessstudio, einschließlich einer Liste der Kurse, die jeden Tag wechseln. Eine solche informative Aktion eignet sich gut für alle Funktionen zur Nutzerinteraktion, da die wechselnde Kursliste jeden Tag andere nützliche Informationen enthält.
Das folgende Diagramm zeigt den Konversationsfluss des Action Gym-Beispiels:
Sie nehmen kleinere Änderungen am Dialogfeld vor, um besser zu den von Ihnen hinzugefügten Interaktionsfunktionen zu passen. Am allgemeinen Aufbau des Gesprächs wird sich jedoch nicht viel ändern.
Basisdateien herunterladen
Führen Sie den folgenden Befehl aus, um das GitHub-Repository für das Codelab zu klonen:
git clone https://github.com/actions-on-google/user-engagement-codelab-nodejs
Projekt und Agent einrichten
So richten Sie das Actions-Projekt und den Dialogflow-Agent ein:
- Öffnen Sie die Actions Console.
- Klicken Sie auf Neues Projekt.
- Geben Sie einen Projektnamen ein, z. B.
engagement-codelab
. - Klicke auf Projekt erstellen.
- Anstatt eine Kategorie auszuwählen, scrollen Sie nach unten zum Abschnitt Weitere Optionen und klicken Sie auf die Karte Konversationen.
- Klicken Sie auf Build your Action (Aktion erstellen), um die Optionen zu maximieren, und wählen Sie Add Action(s) (Aktion(en) hinzufügen) aus.
- Klicken Sie auf Add Your First Action (Erste Aktion hinzufügen).
- Wählen Sie im Dialogfeld Create Action (Aktion erstellen) die Option Custom Intent (Benutzerdefinierter Intent) aus und klicken Sie dann auf Build (Erstellen), um die Dialogflow-Konsole zu starten.
- Klicken Sie in der Dialogflow-Konsole auf der Seite zur Agent-Erstellung auf Erstellen.
- Klicken Sie im linken Navigationsbereich auf das Zahnradsymbol .
- Klicken Sie auf Export and Import (Exportieren und importieren) und dann auf Restore From Zip (Aus ZIP-Datei wiederherstellen).
- Laden Sie die Datei
agent.zip
aus dem Verzeichnis/user-engagement-codelab-nodejs/start/
hoch, das Sie zuvor heruntergeladen haben. - Geben Sie
RESTORE
ein und klicken Sie auf Wiederherstellen. - Klicken Sie auf Fertig.
Auftragsausführung bereitstellen
Ihr Actions-Projekt und der Dialogflow-Agent sind nun bereit. Stellen Sie nun Ihre lokale index.js
-Datei über die Firebase Functions CLI bereit.
Führen Sie im Verzeichnis /user-engagement-codelab-nodejs/start/functions/
des Basisdateiklons die folgenden Befehle aus:
firebase use <PROJECT_ID>
npm install
firebase deploy
Nach einigen Minuten sollte die Meldung Deploy abgeschlossen! angezeigt werden. Das bedeutet, dass Sie den Webhook erfolgreich in Firebase bereitgestellt haben.
Bereitstellungs-URL abrufen
Sie müssen Dialogflow die URL zur Cloud Functions-Funktion zur Verfügung stellen. So rufen Sie diese URL ab:
- Öffnen Sie die Firebase Console.
- Wählen Sie Ihr Actions-Projekt aus der Liste der Optionen aus.
- Wählen Sie Develop > Funktionen. Wenn Ihnen die Aufforderung „Datenfreigabeeinstellungen auswählen“ angezeigt wird, können Sie diese Option ignorieren, indem Sie auf Diesen Schritt später ausführen klicken.
- Auf dem Tab Dashboard sollten Sie einen Eintrag für „Auftragsausführung“ sehen. durch eine URL unter Trigger. Speichern Sie diese URL. müssen Sie sie im nächsten Abschnitt in Dialogflow kopieren.
Webhook-URL in Dialogflow festlegen
Jetzt müssen Sie den Dialogflow-Agent aktualisieren, um den Webhook für die Auftragsausführung zu verwenden. Gehen Sie dazu folgendermaßen vor:
- Öffnen Sie die Dialogflow-Konsole. Sie können die Firebase Console bei Bedarf schließen.
- Klicken Sie im linken Navigationsbereich auf Fulfillment (Auftragsausführung).
- Aktivieren Sie Webhook.
- Fügen Sie die aus dem Firebase-Dashboard kopierte URL ein, falls sie nicht bereits angezeigt wird.
- Klicken Sie auf Speichern.
Prüfen, ob das Projekt korrekt eingerichtet ist
Nutzer sollten deine Aktion aufrufen können, um Informationen zu Action Gym zu erhalten. Dazu gehören eine hartcodierte Textantwort mit Öffnungszeiten und eine Textantwort, in der der Kursplan für jeden Wochentag aufgelistet ist.
So testest du deine Aktion im Actions-Simulator:
- Klicken Sie in der linken Navigationsleiste der Dialogflow-Konsole auf Integrations > Google Assistant
- Achten Sie darauf, dass Automatische Vorschau der Änderungen aktiviert ist, und klicken Sie auf Testen, um Ihr Actions-Projekt zu aktualisieren.
- Der Actions-Simulator lädt Ihr Actions-Projekt. Geben Sie zum Testen der Aktion
Talk to my test app
in das Feld Eingabe ein und drücken Sie die Eingabetaste. - Du solltest eine Willkommensnachricht in Action Gym erhalten. Folgen Sie den Aufforderungen, um die Unterhaltung fortzusetzen, und achten Sie darauf, dass Ihre Auftragsausführung für jede Eingabe eine Antwort hat.
3. Abos für tägliche Updates hinzufügen
Eine gängige Methode zur Interaktion mit Nutzern besteht darin, ihnen Informationen dann anzubieten, wenn sie am nützlichsten sind. Dazu wird Nutzern die Möglichkeit geboten, tägliche Updates für einen Intent zu abonnieren. Dadurch erhalten sie eine Assistant-Benachrichtigung, die einen direkten Link zur Ausführung dieses Intents enthält.
In diesem Schritt erfahren Sie mehr über Abos mit täglichen Updates und können sie dem Intent Kursliste Ihrer Aktion hinzufügen. Wenn du diese Anweisungen befolgt hast, sieht die Unterhaltung mit deiner Aktion so aus:
Wie werden die Nutzer davon angesprochen?
Smartphone-Nutzer sind wahrscheinlich mit Push-Benachrichtigungen vertraut, die appspezifische Informationen und Updates enthalten. Abos für tägliche Updates sind eine einfache Möglichkeit, auf Mobilgeräte außerhalb von Assistant auf Nutzer zuzugreifen, solange die Absicht, für die Sie Updates senden, dem Nutzer täglich einen Mehrwert bietet.
Tägliche Updates können ein nützliches Tool für die Interaktion sein, sollten aber nicht unbedingt in jede Aktion integriert werden. Berücksichtige diese Tipps, wenn du entscheidest, ob du einer Aktion Abos mit täglichen Updates hinzufügen solltest:
- Stellen Sie sicher, dass die täglichen Aktualisierungen dazu führen, dass die Nutzer jeden Tag andere und nützliche Informationen sehen. Wenn durch Tippen auf ein tägliches Update jedes Mal dieselbe Aufforderung erscheint, wird der Nutzer das Abo wahrscheinlich nach ein paar Tagen beenden.
- Achten Sie darauf, dass das Dialogfeld für Nutzer Sinn ergibt, wenn sie direkt zum Intent Ihres täglichen Updates wechseln. Die Nutzenden beginnen nicht unbedingt am Anfang der Unterhaltung, daher sollte auch nicht erwartet werden, dass sie viel Kontext haben.
- Zeige deinen Nutzern die Vorteile deiner Aktion, bevor du sie aufforderst, tägliche Updates zu abonnieren. Ihre Nutzer sollten denken: „Ich möchte diese Inhalte jeden Tag haben.“ wenn Nutzer ein Abo abschließen können.
- Überfordern Sie den Nutzer nicht mit wiederholten Vorschlägen zum Abonnieren. Biete dem Nutzer ein Abonnement mit täglichen Updates an, nachdem du ihm gezeigt hast, was er abonnieren würde, und achte darauf, dass er nicht an anderer Stelle darüber diskutiert wird.
- Halten Sie die Unterhaltung kurz, nachdem der Update-Intent ausgelöst wurde. Die meisten täglichen Updates sollten nur aus einer einzigen Antwort bestehen und dann ohne Nutzereingabe geschlossen werden.
Tägliche Benachrichtigungen aktivieren
Tägliche Update-Abos können dem Begrüßungs-Intent hinzugefügt werden, der den Nutzer an den Anfang Ihrer Unterhaltung bringt, oder einen spezifischeren Intent, um ihn an einer beliebigen Stelle in der Unterhaltung zu verlinken. Für dieses Codelab ist der Intent Class List (Kursliste) am sinnvollsten, da sich der Dialog jeden Tag ändert und Nutzer daran erinnert werden können, welche Kurse verfügbar sind.
So aktivieren Sie tägliche Aktualisierungen für den Intent Kursliste:
- Klicken Sie in der Actions Console auf den Tab Develop und wählen Sie in der linken Navigationsleiste Actions aus.
- Klicken Sie in der Liste Aktionen auf Kursliste.
- Aktivieren Sie im Bereich Nutzer-Engagement die Option Möchten Sie Nutzern tägliche Updates anbieten?.
- Lege einen aussagekräftigen Content-Titel fest, der das tägliche Update beschreibt. Der Kontext lautet: „Um wie viel Uhr soll ich dir deinen täglichen <Inhalt des Inhalts> senden?“. Achte also darauf, dass dein Titel sowohl beschreibend ist als auch laut ausgesprochen richtig klingt. In diesem Beispiel solltest du Contenttitel auf
list of upcoming Action Gym classes
setzen. - Klicken Sie oben auf der Seite auf Speichern.
Dialogflow einrichten
Führen Sie in der Dialogflow-Konsole die folgenden Schritte aus, um Intents für den Abofluss mit täglichen Updates zu erstellen:
Nutzer zum Abonnieren auffordern
- Richten Sie einen neuen Intent ein, mit dem der Nutzer um das Abonnieren täglicher Updates gebeten wird. Klicken Sie in der Dialogflow-Konsole im linken Navigationsbereich neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Geben Sie diesem neuen Intent den Namen
Setup Updates
. - Fügen Sie im Abschnitt Trainingsformulierungen die folgenden Nutzerausdrücke hinzu:
Send daily reminders
Reminder
Remind me
Updates
Upcoming classes
- Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Entscheidungen des Nutzers verarbeiten
- Richten Sie einen neuen Intent ein, um die Antwort des Nutzers auf die Aufforderung des Nutzers zu täglichen Updates zu verarbeiten. Klicken Sie in der linken Navigationsleiste neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Geben Sie diesem neuen Intent den Namen
Confirm Updates
. - Fügen Sie im Abschnitt Ereignisse
actions_intent_REGISTER_UPDATE
hinzu. Dieses Dialogflow-Ereignis wird ausgelöst, wenn der Nutzer das tägliche Update für Abos beendet, unabhängig davon, ob er ein Abo abgeschlossen hat oder nicht. - Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Auftragsausführung implementieren
Mit den folgenden Schritten implementieren Sie die Auftragsausführung in Ihrem Webhook:
Abhängigkeiten laden
Aktualisieren Sie in der Datei index.js
die Funktion require()
, um das Paket RegisterUpdate
aus dem Paket actions-on-google
hinzuzufügen. Ihre Importe sehen dann so aus:
index.js
const {
dialogflow,
Suggestions,
RegisterUpdate,
} = require('actions-on-google');
Chips mit Vorschlägen aktualisieren
Fügen Sie in der Datei index.js
der Liste mit den Titeln für Vorschlags-Chips einen DAILY
-Eintrag hinzu. Ihre Suggestion
-Definition sieht dann so aus:
index.js
// Suggestion chip titles
const Suggestion = {
HOURS: 'Ask about hours',
CLASSES: 'Learn about classes',
DAILY: 'Send daily reminders',
};
Auftragsausführung für neue Intents hinzufügen
Wenn der Nutzer sagt, dass er ein Abo abschließen möchte, starte den täglichen Abovorgang für Updates, indem du den RegisterUpdate
-Helper mit dem Ziel-Intent (Kursliste) und dem Typ (DAILY
) des Updates aufrufst. Nachdem das Abo abgeschlossen ist, löst Assistant das actions_intent_REGISTER_UPDATE
-Ereignis mit einem status
-Argument aus. Dieses gibt an, ob das Abo erfolgreich war oder nicht. Biete dem Nutzer Folgeaufforderungen, die sich je nach Abostatus ändern.
Fügen Sie in der Datei index.js
den folgenden Code hinzu:
index.js
// Start opt-in flow for daily updates
app.intent('Setup Updates', (conv) => {
conv.ask(new RegisterUpdate({
intent: 'Class List',
frequency: 'DAILY',
}));
});
// Confirm outcome of opt-in for daily updates
app.intent('Confirm Updates', (conv, params, registered) => {
if (registered && registered.status === 'OK') {
conv.ask(`Gotcha, I'll send you an update everyday with the ` +
'list of classes. Can I help you with anything else?');
} else {
conv.ask(` I won't send you daily reminders. Can I help you with anything else?`);
}
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.HOURS, Suggestion.CLASSES]));
}
});
Nutzern alternative Aufforderungen anbieten
In Ihrer Antwort auf die Kursliste wird am Ende das Abo mit täglichen Updates angezeigt. Dies ist jedoch ein Problem. Da dieselbe Antwort ausgelöst wird, wenn der Nutzer auf die Benachrichtigung über tägliche Updates tippt, wird er weiterhin aufgefordert, tägliche Updates zu abonnieren, obwohl er nur eine davon gesendet hat. Wie kannst du verhindern, dass Nutzer denken, dass sie ein neues Abo abschließen müssen?
Glücklicherweise enthalten die Argumente Ihres conv
-Objekts Informationen darüber, wo der Nutzer die Unterhaltung begonnen hat. Sie können prüfen, ob die conv
-Argumente einen UPDATES
-Abschnitt enthalten, der angibt, dass der Nutzer die Unterhaltung von einer täglichen Updatebenachrichtigung aus gestartet hat, und die Antwort entsprechend ändern. Sie können diesen Unterhaltungszweig auch verwenden, um das Dialogfeld sofort zu schließen, nachdem Sie die Liste der Klassen angegeben haben. Dies entspricht unserer Best Practice, das tägliche Update kurz zu halten.
Ersetzen Sie in der Datei index.js
den folgenden Code:
index.js
// Class list intent handler
app.intent('Class List', (conv, {day}) => {
if (!day) {
day = DAYS[new Date().getDay()];
}
const classes =
[...new Set(schedule.days[day].map((d) => `${d.name} at ${d.startTime}`))]
.join(', ');
const classesMessage =
`On ${day} we offer the following classes: ${classes}. ` +
`Can I help you with anything else?`;
conv.ask(classesMessage);
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.HOURS]));
}
});
durch:
index.js
// Class list intent handler
app.intent('Class List', (conv, {day}) => {
if (!day) {
day = DAYS[new Date().getDay()];
}
const classes =
[...new Set(schedule.days[day].map((d) => `${d.name} at ${d.startTime}`))]
.join(', ');
let classesMessage = `On ${day} we offer the following classes: ${classes}. `;
// If the user started the conversation from the context of a daily update,
// the conv's arguments will contain an 'UPDATES' section.
let engagement = conv.arguments.get('UPDATES');
// Check the conv arguments to tailor the conversation based on the context.
if (engagement) {
classesMessage += `Hope to see you soon at Action Gym!`;
conv.close(classesMessage);
} else {
classesMessage += `Would you like me to send you daily reminders of upcoming classes, or can I help you with anything else?`;
conv.ask(classesMessage);
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.DAILY, Suggestion.HOURS]));
};
};
});
Tägliche Updates testen
Führen Sie im Terminal den folgenden Befehl aus, um den aktualisierten Webhook-Code in Firebase bereitzustellen:
firebase deploy
So testen Sie die benutzerdefinierte Aufforderung im Actions-Simulator:
- Gehen Sie in der Actions Console zu Test.
- Geben Sie
Talk to my test app
in das Feld Eingabe ein und drücken Sie die Eingabetaste. - Geben Sie
Learn about classes
ein und drücken Sie die Eingabetaste. Die Antwort deiner Aktion sollte nun anbieten, tägliche Erinnerungen zu senden. - Geben Sie
Send daily reminders
ein und drücken Sie die Eingabetaste. - Geben Sie eine Uhrzeit ein, für die Sie das Update sehen möchten, und drücken Sie die Eingabetaste. Versuchen Sie, zu Testzwecken drei bis fünf Minuten nach der aktuellen Uhrzeit zu antworten.
Auf Ihrem Mobilgerät sollten Sie ungefähr zu dem Zeitpunkt, den Sie für Updates angegeben haben, eine Benachrichtigung von Assistant erhalten. Es kann einige Minuten dauern, bis diese Benachrichtigung angezeigt wird. Tippen Sie auf die Benachrichtigung. Daraufhin sollte ein Deeplink direkt mit dem Intent Kursliste in Assistant verknüpft sein. So erhalten Sie eine Liste der bevorstehenden Kurse:
4. Push-Benachrichtigungen hinzufügen
Als weitere Möglichkeit, Nutzer außerhalb deiner Aktion zu erreichen, kannst du die Actions API aufrufen, um Push-Benachrichtigungen an Nutzer zu senden. Anders als tägliche Updates werden diese Benachrichtigungen nicht automatisch von Assistant geplant. Sie können sie also jederzeit senden.
In diesem Schritt erfahren Sie, wie Sie Push-Benachrichtigungen in Ihrer Aktion implementieren. Dazu fügen Sie den neuen Intent Kurs abgebrochen hinzu und senden Benachrichtigungen an Nutzer, die sie über die Absage eines Kurses informieren. Außerdem richten Sie die folgenden drei Komponenten ein, die zum Senden von Benachrichtigungen erforderlich sind:
- Actions API-Konto: Um Benachrichtigungen an den Nutzer zu senden, senden Sie eine
POST
-Anfrage an eine API. Daher müssen Sie ein Dienstkonto und Anmeldedaten für die Kommunikation mit dieser API einrichten. - Berechtigungsassistent: Sie benötigen die Berechtigung des Nutzers, um auf die Nutzer-ID zuzugreifen, die zum Senden von Push-Benachrichtigungen erforderlich ist. In diesem Beispiel verwenden Sie eine Clientbibliotheksfunktion, um den Berechtigungsassistenten aufzurufen und diese ID anzufordern.
- Speicher: Wenn Sie Push-Benachrichtigungen an einen Nutzer außerhalb einer Unterhaltung senden möchten, müssen Sie die Nutzer-IDs an einem Ort speichern, an dem sie jederzeit abgerufen werden können. In diesem Beispiel richten Sie eine Firestore-Datenbank ein, um Informationen für jeden Nutzer zu speichern.
Wenn du dieser Anleitung gefolgt bist, fügst du der Unterhaltung deiner Aktion das folgende Dialogfeld hinzu:
Wie werden die Nutzer davon angesprochen?
Smartphone-Nutzer sind wahrscheinlich mit Push-Benachrichtigungen vertraut, die appspezifische Informationen und Updates enthalten. Push-Benachrichtigungen sind eine flexible Möglichkeit, um über Mobilgeräte außerhalb von Assistant auf Nutzer zuzugreifen, vorausgesetzt, sie erhalten einen guten Grund, sie zu aktivieren. Bei täglichen Updates wissen Nutzer bereits, dass sie täglich benachrichtigt werden. Bei Push-Benachrichtigungen wissen die Nutzer jedoch nicht, ob sie sich dafür entschieden haben, unregelmäßige Benachrichtigungen zu erhalten, oder ob sie mit mehreren Benachrichtigungen pro Tag gestört werden.
Push-Benachrichtigungen können ein nützliches Tool zur Interaktion sein, sollten aber nicht unbedingt in jede Aktion integriert werden. Berücksichtige diese Tipps, wenn du entscheidest, ob du einer Aktion Push-Benachrichtigungen hinzufügen möchtest:
- Plane einige Beispielzeitpläne für deine Push-Benachrichtigungen. Wenn Sie nur eine Push-Benachrichtigung pro Tag senden möchten, sollten Sie stattdessen tägliche Updates verwenden.
- Stellen Sie sicher, dass Ihre Push-Benachrichtigungen jedes Mal nützliche Informationen liefern, wenn sie empfangen werden. Deine Benachrichtigungen können auch einen Deeplink zu einem der Intents deiner Aktion enthalten. Achte also darauf, dass der Intent nützlich und relevant ist.
- Bitten Sie Nutzer ausdrücklich, Push-Benachrichtigungen zu abonnieren. Er sollte verstehen, was mit den einzelnen Push-Benachrichtigungen zu tun hat, und eine Vorstellung davon haben, wie oft die Benachrichtigungen gesendet werden.
Actions API aktivieren
- Öffnen Sie die Google Cloud Console und wählen Sie im Drop-down-Menü den Namen Ihres Actions-Projekts aus.
- Gehen Sie im Navigationsmenü (☰) zu APIs & Dienste > Mediathek.
- Suchen Sie nach der Actions API und klicken Sie auf Aktivieren.
Dienstkonto erstellen
Da die Actions API eine Authentifizierung erfordert, müssen Sie ein Dienstkonto erstellen, um Anfragen senden zu können. So erstellen und installieren Sie einen Dienstkontoschlüssel für die Actions API:
- Gehen Sie in der Google Cloud Console im Navigationsmenü (☰) zu APIs & Dienste > Anmeldedaten
- Klicken Sie auf Anmeldedaten erstellen > Dienstkontoschlüssel
- Wählen Sie im Drop-down-Menü Dienstkonto die Option Neues Dienstkonto aus.
- Geben Sie die folgenden Informationen ein:
- Name des Dienstkontos:
service-account
- Rolle: Projekt > Inhaber
- Dienstkonto-ID :
service-account
(immer gefolgt von @<Projekt-ID>.iam.gserviceaccount.com) - Schlüsseltyp: JSON
- Klicken Sie auf Erstellen.
- Verschieben Sie die heruntergeladene JSON-Datei in das Verzeichnis /user-engagement-codelab/start/functions/ Ihres Projekts.
- Benennen Sie die JSON-Datei in
service-account.json
um.
Firestore aktivieren
Wenn Sie Benachrichtigungen außerhalb der Unterhaltung senden möchten, müssen Sie die Nutzer-IDs speichern, auf die in Ihrem Benachrichtigungscode verwiesen werden kann. In diesem Beispiel verwenden wir eine Firestore-Datenbank, um die Nutzer-IDs abonnierter Nutzer zu speichern.
Führen Sie die folgenden Schritte aus, um eine Firestore-Datenbank für Ihre Aktion zu erstellen:
- Wählen Sie in der Firebase Console den Namen Ihres Actions-Projekts aus.
- Wählen Sie im linken Navigationsbereich Entwickeln > Datenbank und klicken Sie auf Datenbank erstellen.
- Wählen Sie Im Testmodus starten aus.
- Klicken Sie auf Aktivieren.
Dialogflow einrichten
Führen Sie in der Dialogflow-Konsole die folgenden Schritte aus, um den Opt-in-Ablauf für Push-Benachrichtigungen zu erstellen:
Nutzer zum Abonnieren auffordern
- Richten Sie einen neuen Intent ein, um die Aufforderung des Nutzers zum Abonnieren von Push-Benachrichtigungen für abgebrochene Kurse zu verarbeiten. Klicken Sie in der Dialogflow-Konsole im linken Navigationsbereich neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Nennen Sie diesen neuen Intent
Setup Push Notifications
. - Fügen Sie im Abschnitt Trainingsformulierungen die folgenden Nutzerausdrücke hinzu:
Subscribe to notifications
Send notification
Notify me
Send class notifications
Cancelled notifications
- Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Entscheidungen des Nutzers verarbeiten
- Richten Sie einen neuen Intent ein, um die Antwort des Nutzers auf die Aboaufforderung für Push-Benachrichtigungen zu verarbeiten. Klicken Sie in der linken Navigationsleiste neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Geben Sie diesem neuen Intent den Namen
Confirm Push Notifications
. - Fügen Sie im Abschnitt Ereignisse
actions_intent_PERMISSION
hinzu. Dieses Dialogflow-Ereignis wird ausgelöst, wenn der Nutzer das Abo für Push-Benachrichtigungen abschließt. Dabei spielt es keine Rolle, ob er ein Abo abgeschlossen hat oder nicht. - Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Umgang mit Push-Benachrichtigungen
Du kannst deine Push-Benachrichtigungen mit einem bestimmten Intent verknüpfen. So werden Nutzer, die auf die Push-Benachrichtigung tippen, in deiner Aktion direkt mit diesem Intent verknüpft. Fügen Sie in diesem Beispiel einen neuen Intent für Push-Benachrichtigungen hinzu, der Details zu abgebrochenen Kursen enthält.
So fügen Sie einen Intent hinzu, der ausgelöst werden soll, wenn der Nutzer auf eine Push-Benachrichtigung tippt:
- Klicken Sie in der Dialogflow-Konsole im linken Navigationsbereich neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Nennen Sie diesen neuen Intent
Class Canceled
. - Fügen Sie im Abschnitt Trainingsformulierungen
Cancelations
als Nutzerausdruck hinzu. - Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Testbenachrichtigungen während der Unterhaltung senden
In der Produktion sollten Sie neben Ihrem Aktionsausführungscode ein Script haben, das Push-Benachrichtigungen sendet. Erstelle für dieses Beispiel einen Intent, mit dem du eine Push-Benachrichtigung senden kannst, während du mit deiner Aktion sprichst. Dieser Intent dient nur zur Fehlerbehebung. In der Praxis sollten Push-Benachrichtigungen nicht von der Ausführung verarbeitet oder auf andere Weise im Rahmen der Unterhaltung Ihrer Aktion ausgelöst werden.
So erstellen Sie einen Intent zum Testen von Push-Benachrichtigungen:
- Richten Sie zu Test- und Fehlerbehebungszwecken einen neuen Intent ein, mit dem Sie Push-Benachrichtigungen an Nutzer mit Abo senden können. Klicken Sie in der Dialogflow-Konsole im linken Navigationsbereich neben Intents auf die Schaltfläche +, um einen neuen Intent zu erstellen.
- Geben Sie diesem neuen Intent den Namen
Test Notification
. - Fügen Sie im Abschnitt Trainingsformulierungen
Test notification
als Nutzerausdruck hinzu. - Aktivieren Sie im Abschnitt Fulfillment (Auftragsausführung) die Option Enable webhook call for this intent (Webhook-Aufruf für diesen Intent aktivieren).
- Klicken Sie oben auf der Seite auf Speichern.
Push-Benachrichtigungen aktivieren
So aktivieren Sie Push-Benachrichtigungen für den Intent Class Canceled (Klasse abgebrochen):
- Klicken Sie in der Dialogflow-Konsole in der Navigationsleiste auf Integrations (Integrationen).
- Klicken Sie auf der Karte Google Assistant auf Integration Settings (Integrationseinstellungen).
- Fügen Sie Klasse abgebrochen als Intent Impliziter Aufruf hinzu. Dieser Schritt ist erforderlich, damit Dialogflow erkennt, dass Nutzer Ihre Unterhaltung mit dem Intent Class abgebrochen beginnen können, indem sie auf eine Push-Benachrichtigung tippen.
- Klicken Sie auf Schließen.
- Klicken Sie in der Actions Console auf den Tab Develop und wählen Sie in der linken Navigationsleiste Actions aus.
- Klicken Sie in der Liste Aktionen auf Kurs abgesagt.
- Aktivieren Sie im Bereich Nutzer-Engagement die Option Möchten Sie Push-Benachrichtigungen senden?.
- Legen Sie einen aussagekräftigen Inhaltstitel fest, der die Push-Benachrichtigung beschreibt. Der Kontext lautet: „Ist es in Ordnung, wenn ich Push-Benachrichtigungen für <Titel des Inhalts> sende?“. Achte also darauf, dass dein Titel sowohl beschreibend ist als auch laut ausgesprochen korrekt klingt. In diesem Beispiel solltest du Contenttitel auf
class cancelations
setzen. - Klicken Sie oben auf der Seite auf Speichern.
Auftragsausführung implementieren
Mit den folgenden Schritten implementieren Sie die Auftragsausführung in Ihrem Webhook:
Abhängigkeiten laden
Aktualisieren Sie in der Datei index.js
die Funktion require()
, um das Paket UpdatePermission
aus dem Paket actions-on-google
hinzuzufügen. Ihre Importe sehen dann so aus:
index.js
const {
dialogflow,
Suggestions,
RegisterUpdate,
UpdatePermission,
} = require('actions-on-google');
Chips mit Vorschlägen aktualisieren
Fügen Sie in der Datei index.js
der Liste mit den Titeln für Vorschlags-Chips einen NOTIFICATIONS
-Eintrag hinzu. Ihre Suggestion
-Definition sieht dann so aus:
index.js
// Suggestion chip titles
const Suggestion = {
HOURS: 'Ask about hours',
CLASSES: 'Learn about classes',
DAILY: 'Send daily reminders',
NOTIFICATIONS: 'Get notifications',
};
Neue Importe einrichten
Fügen Sie das Paket firebase-admin
und Konstanten für die in der Datenbank gespeicherten Felder hinzu, um eine Verbindung zu Ihrer Firestore-Datenbank herzustellen. Importieren Sie außerdem die Pakete google-auth-library
und request
für die Authentifizierung und Anfragen an die Actions API.
Fügen Sie den Importen in der Datei index.js
den folgenden Code hinzu:
index.js
// Firebase admin import
const admin = require('firebase-admin');
// Initialize Firestore
admin.initializeApp();
const db = admin.firestore();
// Firestore constants
const FirestoreNames = {
INTENT: 'intent',
USER_ID: 'userId',
USERS: 'users',
};
// Actions API authentication imports
const {auth} = require('google-auth-library');
const request = require('request');
Einrichtung von Absagebenachrichtigungen für Kurse anbieten
Ersetzen Sie in der Datei index.js
den folgenden Code:
index.js
// Class list intent handler
app.intent('Class List', (conv, {day}) => {
if (!day) {
day = DAYS[new Date().getDay()];
}
const classes =
[...new Set(schedule.days[day].map((d) => `${d.name} at ${d.startTime}`))]
.join(', ');
let classesMessage = `On ${day} we offer the following classes: ${classes}. `;
// If the user started the conversation from the context of a daily update,
// the conv's arguments will contain an 'UPDATES' section.
let engagement = conv.arguments.get('UPDATES');
// Check the conv arguments to tailor the conversation based on the context.
if (engagement) {
classesMessage += `Hope to see you soon at Action Gym!`;
conv.close(classesMessage);
} else {
classesMessage += `Would you like me to send you daily reminders of upcoming classes, or can I help you with anything else?`;
conv.ask(classesMessage);
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.DAILY, Suggestion.HOURS]));
};
};
});
durch:
index.js
// Class list intent handler
app.intent('Class List', (conv, {day}) => {
if (!day) {
day = DAYS[new Date().getDay()];
}
const classes =
[...new Set(schedule.days[day].map((d) => `${d.name} at ${d.startTime}`))]
.join(', ');
let classesMessage = `On ${day} we offer the following classes: ${classes}. `;
// If the user started the conversation from the context of a daily update,
// the conv's arguments will contain an 'UPDATES' section.
let engagement = conv.arguments.get('UPDATES');
// Check the conv arguments to tailor the conversation based on the context.
if (engagement) {
classesMessage += `Hope to see you soon at Action Gym!`;
conv.close(classesMessage);
} else {
classesMessage += `Would you like to receive daily reminders of upcoming classes, subscribe to notifications about cancelations, or can I help you with anything else?`;
conv.ask(classesMessage);
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.DAILY, Suggestion.NOTIFICATIONS,
Suggestion.HOURS]));
};
};
});
Auftragsausführung für neue Intents hinzufügen
Wenn der Nutzer sagt, dass er Push-Benachrichtigungen abonnieren möchte, rufe den Helper UpdatePermission
auf, um eine Berechtigung vom Nutzer anzufordern. Ist dies erfolgreich, wird den Argumenten des conv
-Objekts das Argument PERMISSION
hinzugefügt. Sie können es prüfen, um die Unterhaltung zu ändern.
Sobald Sie die Berechtigung des Nutzers haben, nehmen Sie die User-ID aus den Argumenten des conv
-Objekts und speichern Sie sie in Ihrer Datenbank. Sie senden diese Nutzer-ID später an die Actions API. Über diese API bestimmt Assistant, wer die Benachrichtigung erhält.
Fügen Sie abschließend für den Intent Class Canceled
die Auftragsausführung hinzu, die durch Tippen auf die Push-Benachrichtigung ausgelöst wird. In diesem Beispiel ist Ihre Antwort ein Platzhalterstring. In einer produktionsreifen Version dieser Aktion würde Ihr Benachrichtigungsskript jedoch dynamischere Informationen darüber liefern, welche Klasse abgebrochen wurde.
Fügen Sie in der Datei index.js
den folgenden Code hinzu:
index.js
// Call the User Information helper for permission to send push notifications
app.intent('Setup Push Notifications', (conv) => {
conv.ask('Update permission for setting up push notifications');
conv.ask(new UpdatePermission({intent: 'Class Canceled'}));
});
// Handle opt-in or rejection of push notifications
app.intent('Confirm Push Notifications', (conv) => {
if (conv.arguments.get('PERMISSION')) {
let userId = conv.arguments.get('UPDATES_USER_ID');
if (!userId) {
userId = conv.request.conversation.conversationId;
}
// Add the current conversation ID and the notification's
// target intent to the Firestore database.
return db.collection(FirestoreNames.USERS)
.add({
[FirestoreNames.INTENT]: 'Class Canceled',
[FirestoreNames.USER_ID]: userId,
})
.then(() => {
conv.ask(`Great, I'll notify you whenever there's a class cancelation. ` +
'Can I help you with anything else?');
});
} else {
conv.ask(`Okay, I won't send you notifications about class cancelations. ` +
'Can I help you with anything else?');
}
if (conv.screen) {
conv.ask(new Suggestions([Suggestion.CLASSES, Suggestion.HOURS]));
}
});
// Intent triggered by tapping the push notification
app.intent('Class Canceled', (conv) => {
conv.ask('Classname at classtime has been canceled.');
});
Testbenachrichtigungen hinzufügen
Wenn Sie eine Push-Benachrichtigung an einen Nutzer senden möchten, senden Sie eine POST
-Anfrage mit der Nutzer-ID, dem Titel der Benachrichtigung und dem Ziel-Intent an die Actions API. In diesem Beispiel wird durch das Auslösen des Intents Test Notification (Testbenachrichtigung) Ihre Firestore-Datenbank durchlaufen und Push-Benachrichtigungen an jeden Nutzer gesendet, der Benachrichtigungen abonniert hat.
Denken Sie daran, dass Sie in diesem Beispiel den Code, der die Push-Benachrichtigung sendet, in Ihre Webhook-Auftragsausführung einbinden und diesen Code durch Aufrufen eines Test-Intents in Ihrer Unterhaltung auslösen. Der Code für Push-Benachrichtigungen in Aktionen, die veröffentlicht werden sollen, sollte in einem von der Auftragsausführung getrennten Script vorhanden sein.
Fügen Sie in der Datei index.js
den folgenden Code hinzu:
index.js
// Debug intent to trigger a test push notification
app.intent('Test Notification', (conv) => {
// Use the Actions API to send a Google Assistant push notification.
let client = auth.fromJSON(require('./service-account.json'));
client.scopes = ['https://www.googleapis.com/auth/actions.fulfillment.conversation'];
let notification = {
userNotification: {
title: 'Test Notification from Action Gym',
},
target: {},
};
client.authorize((err, tokens) => {
if (err) {
throw new Error(`Auth error: ${err}`);
}
// Iterate through Firestore and send push notifications to every user
// who's currently opted in to canceled class notifications.
db.collection(FirestoreNames.USERS)
.where(FirestoreNames.INTENT, '==', 'Class Canceled')
.get()
.then((querySnapshot) => {
querySnapshot.forEach((user) => {
notification.target = {
userId: user.get(FirestoreNames.USER_ID),
intent: user.get(FirestoreNames.INTENT),
};
request.post('https://actions.googleapis.com/v2/conversations:send', {
'auth': {
'bearer': tokens.access_token,
},
'json': true,
'body': {'customPushMessage': notification, 'isInSandbox': true},
}, (err, httpResponse, body) => {
if (err) {
throw new Error(`API request error: ${err}`);
}
console.log(`${httpResponse.statusCode}: ` +
`${httpResponse.statusMessage}`);
console.log(JSON.stringify(body));
});
});
})
.catch((error) => {
throw new Error(`Firestore query error: ${error}`);
});
});
conv.ask('A notification has been sent to all subscribed users.');
});
Push-Benachrichtigungen testen
Führen Sie im Terminal den folgenden Befehl aus, um den aktualisierten Webhook-Code in Firebase bereitzustellen:
firebase deploy
So testen Sie Benachrichtigungen im Actions-Simulator:
- Rufen Sie in der Actions Console den Tab Test auf.
- Geben Sie
Talk to my test app
in das Feld Eingabe ein und drücken Sie die Eingabetaste. - Geben Sie
Learn about classes
ein und drücken Sie die Eingabetaste. - Geben Sie
Get notifications
ein und drücken Sie die Eingabetaste. - Wenn Sie Ihrer Aktion noch nicht die Berechtigung erteilt haben, Ihnen Push-Benachrichtigungen zu senden, geben Sie
yes
ein und drücken Sie die Eingabetaste. - Geben Sie
yes
ein und drücken Sie die Eingabetaste. Für dein Google-Konto sollten jetzt Push-Benachrichtigungen zu dieser Aktion abonniert sein.
- Geben Sie
no
ein und drücken Sie zum Beenden die Eingabetaste. - Geben Sie
Talk to my test app
ein und drücken Sie die Eingabetaste, um eine neue Unterhaltung zu starten. - Geben Sie
Test notification
ein und drücken Sie die Eingabetaste.
Innerhalb weniger Minuten solltest du eine Testbenachrichtigung von Action Gym erhalten. Push-Benachrichtigung von Assistant auf Ihrem Mobilgerät. Wenn du auf diese Benachrichtigung tippst, wirst du über einen Deeplink zum Intent Klasse abgebrochen für deine Aktion weitergeleitet.
5. Assistant-Link erstellen
Bisher haben wir über Interaktionsfunktionen gesprochen, die du implementieren kannst, damit Nutzer zu deiner Aktion zurückkehren. Diese sind jedoch vorausgesetzt, dass Nutzer deine Aktion entdecken und verwenden.
Sie können einen Assistant-Link erstellen, über den Nutzer von Mobilgeräten direkt mit Ihrer Aktion in Assistant verknüpft werden. Da es sich bei einem Assistant-Link um einen Standard-Hyperlink handelt, können Sie ihn einer Website oder anderen Webmarketing-Materialien wie Blogs oder Beiträgen in sozialen Medien hinzufügen.
In diesem Schritt erfährst du, was ein Assistant-Link ist, wie du einen für den Begrüßungs-Intent deiner Aktion erstellen kannst und wie du ihn zum Testen einer einfachen Website hinzufügst.
Wie werden die Nutzer davon angesprochen?
Es kann schwierig sein, Nutzer zum ersten Mal auf deine Aktion aufmerksam zu machen, insbesondere wenn sie deine Aktion explizit über Assistant aufrufen müssen. Ein Assistant-Link löst dieses Problem, da Nutzer einen direkten Link zu deiner Aktion erhalten. Wenn ein Nutzer einem Assistant-Link auf einem Gerät mit integriertem Assistant folgt, wird er direkt zu deiner Aktion weitergeleitet. Wenn ein Nutzer deinen Link auf einem Nicht-Mobilgerät oder einem anderen Gerät öffnet, das Assistant nicht unterstützt, wird er dennoch zum Eintrag im Aktionsverzeichnis weitergeleitet, sofern er bereits veröffentlicht wurde. So kann er diesen Nutzern weiterhin deine Aktion präsentieren.
Assistant-Links können ein nützliches Tool für die Interaktion sein. Wenn du über deine Website oder in den sozialen Medien Werbung für deine Aktion machen möchtest, solltest du einen erstellen. Beachten Sie die folgenden Tipps, bevor Sie einen Assistant-Link erstellen und weitergeben:
- Assistant-Links funktionieren erst, wenn deine Aktion veröffentlicht wurde. Solange sich Ihr Projekt im Entwurfsstatus befindet, funktioniert der Link nur auf Ihren eigenen Geräten. Alle anderen Personen werden auf eine 404-Seite im Aktionsverzeichnis weitergeleitet.
- Du kannst Nutzern erlauben, einen Assistant-Link vor der Veröffentlichung zu testen, indem du deine Aktion in einer Alpha- oder Betaumgebung veröffentlichst. Hinweis: Nur Nutzer, die an deiner Alpha- oder Betaversion teilnehmen, können deinen Assistant-Link testen.
- Sorgen Sie dafür, dass der Ziel-Intent für Ihren Assistant-Link bei neuen Nutzern einen guten ersten Eindruck macht. Dein Begrüßungs-Intent ist das Standardziel für einen Assistant-Link, da er deine Aktion bereits gut einleiten sollte
Assistant-Links aktivieren
So erstellen Sie einen Assistant-Link für den Begrüßungs-Intent:
- Klicken Sie in der Actions Console auf den Tab Develop und wählen Sie in der linken Navigationsleiste Actions aus.
- Klicken Sie in der Liste Aktionen auf actions.intent.MAIN.
- Aktiviere im Abschnitt Links die Option Möchten Sie eine URL für diese Aktion aktivieren.
- Lege einen aussagekräftigen Linktitel fest, der deine Aktion beschreibt. Verwende in deinem Titel ein einfaches Verb-Nomen-Paar, das beschreibt, was der Nutzer mit deiner Aktion erreichen kann. In diesem Beispiel setzen Sie den Linktitel auf
learn about Action Gym
. - Kopieren Sie das HTML-Snippet unten auf dieser Seite und speichern Sie es zur späteren Verwendung.
- Klicken Sie oben auf der Seite auf Speichern.
Testwebsite bereitstellen
Wenn Sie die Assistant-Verknüpfung testen möchten, können Sie mithilfe von Firebase-Tools neben der Ausführung eine Testwebsite bereitstellen. Wir haben für dieses Beispiel bereits eine einfache Testwebsite erstellt. Sie müssen nur Ihren Assistant-Link hinzufügen.
Rufe das Verzeichnis /user-engagement-codelab-nodejs/start/public/
deiner Auftragsausführung auf und öffne die Datei index.html
in einem Texteditor.
Fügen Sie in der Datei index.html
das HTML-Snippet des Assistant-Links in das <body>-Element ein. Die Datei sollte wie das folgende Snippet aussehen:
index.html
<body>
<p>
<a href="https://assistant.google.com/services/invoke/uid/000000efb5f2fd97">🅖 Ask my test app to learn about Action Gym
</a>
</p>
</body>
Assistant-Link testen
Führen Sie im Terminal den folgenden Befehl aus, um die Testwebsite in Firebase bereitzustellen:
firebase deploy
Notieren Sie sich die Hosting-URL in der Ausgabe, nachdem der Bereitstellungsbefehl ausgeführt wurde.
Rufe diese URL im Webbrowser deines Mobilgeräts auf. Der Assistant-Link sollte auf deiner Testwebsite angezeigt werden. Wenn du auf deinem Mobilgerät auf diesen Link klickst, solltest du zum Begrüßungs-Intent deiner Aktion in Assistant gelangen.
Sie können auch versuchen, in einem Desktop-Browser die Hosting-URL aufzurufen. Dadurch sollte im Assistant-Verzeichnis eine 404-Seite angezeigt werden, da Ihre Aktion nicht veröffentlicht wurde.
6. Nächste Schritte
Glückwunsch!
Du hast gelernt, wie wichtig Nutzerinteraktionen bei der Entwicklung einer Aktion sind, welche Funktionen für Nutzerinteraktionen auf der Plattform verfügbar sind und wie du die einzelnen Funktionen einer Aktion hinzufügst.
Zusätzliche Lernressourcen
In den folgenden Ressourcen erfahren Sie mehr über das Nutzer-Engagement für Ihre Aktion:
- Nutzer-Engagement und Assistant-Links-Dokumente: Die offizielle Dokumentation zu Actions on Google zu den in diesem Codelab beschriebenen Funktionen und zur Nutzerinteraktion im Allgemeinen.
- Analyse der Nutzerbindung: Dokumentation zur Analysefunktion in der Actions Console, in der die Nutzerbindung für Ihre veröffentlichte Aktion angezeigt wird.
- Richtlinien für die Gestaltung von Dialogen: Best Practices und Richtlinien für die Entwicklung von Funktionen für Nutzerinteraktionen.
- Actions on Google GitHub-Repository: Beispielcode und Bibliotheken
- r/GoogleAssistantDev: Die offizielle Reddit-Community für Entwickler, die mit Assistant arbeiten.
Folge uns auf Twitter unter @ActionsOnGoogle, um dich über unsere neuesten Ankündigungen zu informieren, und twittere unter #AoGDevs, um deine Arbeit mit anderen zu teilen.
Feedback-Umfrage
Bevor Sie die Seite verlassen, füllen Sie bitte dieses Formular aus und teilen Sie uns Ihre Meinung mit.