Ein integrierter Intent ist eine eindeutige Kennung, die Sie angeben können, um dem Google Assistant, dass deine Aktion einer bestimmten Nutzerkategorie zugeordnet werden kann -Anfragen. Hier sind einige Beispiele für Nutzeranfragen, der Assistant integrierte Intents zuordnet:
- „Spiel spielen“ integrierter Intent: "Ok Google. Spiel ein Gedächtnisspiel.“
- „Horoskop abrufen“ integrierter Intent: "Ok Google. Horoskop abrufen“
Während der Aktionserkennung kann Assistant Folgendes verwenden: zu deiner Aktion, einschließlich der von dir angegebenen integrierten Intents. um Nutzern deine Aktion zu empfehlen. Um den Umfang des Gesprächs zu minimieren, versucht Assistant außerdem, Parameter aus den Nutzerabfragen zu scannen. und sie an deine Aktion weitergeben.
Die vollständige Liste der von Assistant unterstützten integrierten Intents findest du: einschließlich der Parameter und beispielhaften Nutzerabfragen, Referenz zu integrierten Intents
Integrierte Intents einbinden
Je nachdem, wie Sie Ihre Aktion erstellen, integrierte Intents integrieren.
Dialogflow
Wenn Sie Ihre Aktion mit Dialogflow erstellen, können Sie einen integrierten Intent anhängen. Dialogflow-Konsole.
So hängen Sie einen integrierten Intent mit Dialogflow an:
- Öffnen Sie die Dialogflow-Konsole, wählen Sie Ihren Agent aus und gehen Sie dann zur Bildschirm Intents.
Erstellen oder wählen Sie den Intent aus, den Ihr Agent auslöst, wenn er einen integrierten Intent. Öffnen Sie den Abschnitt Ereignisse und klicken Sie auf Hinzufügen. Ereignis.
Geben Sie im Feld Events (Ereignisse) den Namen eines integrierten Intent-Ereignisses für Ihr Agent (z. B.
actions_intent_PLAY_GAME
).Klicken Sie auf Speichern.
Actions SDK
Wenn du zum Erstellen deiner Aktion das Actions SDK verwendest, musst du die Zuordnung zwischen integrierten Intents und den Aktionen in Ihrem Aktionspaket.
So hängen Sie einen integrierten Intent mit dem Actions SDK an:
- Geben Sie den integrierten Intent im Feld „Name“ in der Definition für Action (Aktion) an.
- Lade dein Aktionspaket mit dem
gactions
-Tool in dein Actions-Projekt hoch: Übersicht über das Actions SDK beschrieben.
Das folgende Snippet zeigt beispielsweise, wie Sie das CHECK_AIR_QUALITY
integrierten Intent:
{
"actions":[
{
"description":"Default Welcome Intent",
"name":"MAIN",
"fulfillment":{
"conversationName":"conversation_1"
},
"intent":{
"name":"actions.intent.MAIN"
}
},
{
"description":"Check Air Quality",
"name":"CHECK_AIR_QUALITY",
"fulfillment":{
"conversationName":"conversation_1"
},
"intent":{
"name":"actions.intent.CHECK_AIR_QUALITY"
}
}
],
"conversations":{
"conversation_1":{
"name":"conversation_1",
"url":"https://example.com/fulfillment",
"fulfillmentApiVersion":2
}
}
}
Integrierte Intent-Parameter verarbeiten
Wenn Ihre Aktion über einen integrierten Intent aufgerufen wird, kann die Auftragsausführung zusätzliche Parameter erhalten. Das Intent-Schema definiert die Namen der Parameter und ihre Typen als primitive Typen oder schema.org Entitäten. Informationen zum Schema der integrierten Intents von Konversationsaktionen finden Sie in der Referenz zu integrierten Intents
Parameter für integrierte Intents sind optional. Assistant füllt die -Parameter mit Werten, wenn diese aus dem Aufruf von den integrierten Intent.
Zum Beispiel das Schema des integrierten actions.intent.CHECK_AIR_QUALITY
Intent definiert vier optionale Parameter:
Parametername | Typ |
---|---|
attributes |
Ein Stringwert. |
location |
Ein schema.org/Place -Objekt. |
temporalCoverage |
Ein schema.org/Duration -Objekt. |
timeIndicator |
Eine EnumeratedDuration (Google-spezifische Erweiterung). |
Das folgende Code-Snippet zeigt ein Beispiel für den Unterhaltungs-Webhook (JSON) wenn ein Nutzer deine Aktion aufruft, indem er sagt: „Wie ist die Luftqualität in in San Francisco?“:
"inputs":[
{
"intent":"actions.intent.CHECK_AIR_QUALITY",
"rawInputs":[
{
"inputType":"VOICE",
"query":"what is the air quality in san francisco tomorrow"
}
],
"arguments":[
{
"name":"location",
"structuredValue":{
"geo":{
"longitude":-122.41941550000001,
"latitude":37.7749295
},
"@context":"https://schema.org",
"@type":"Place",
"name":"san francisco"
}
},
{
"name":"temporalCoverage",
"rawText":"2018-04-25",
"textValue":"2018-04-25"
}
]
}
]
In diesem Beispiel haben die Parameter die folgenden Werte:
- Der Parameter
location
enthält den Parameterschema.org/Place
. für „San Francisco“. - Der Parameter
temporalCoverage
enthält den Parameterschema.org/Duration
. Wert für das morgige Datum relativ zur Zeit des Aufrufs. - Für die Parameter
attributes
undtimeIndicator
sind keine Werte vorhanden da die Aufrufphrase des Nutzers solche Informationen nicht enthielt.
Wenn Sie die Actions on Google-Clientbibliothek für Node.js verwenden, können Sie den Wert der Parameter wie im folgenden Snippet gezeigt abrufen:
app.intent('actions.intent.CHECK_AIR_QUALITY', (conv) => {
const attributes = conv.arguments.get('attributes');
const location = conv.arguments.get('location');
const temporal_coverage = conv.arguments.get('temporalCoverage');
Const time_indicator = conv.arguments.get('timeIndicator')
// Your Action logic. If you need to use any of the parameter values,
// you should check first that it is defined. Arguments.get returns
// undefined if it can't find a value for a parameter.
});
Integrationen mit integrierten Intents testen
So testest du deine Integration:
- Öffnen Sie den Actions-Simulator mit aktivierter Testaktion oder öffnen Sie Google Assistant auf Ihrem Gerät.
- Sprechen oder geben Sie eine Abfrage ein, die mit diesem integrierten Intent verknüpft ist. Beispiel: „Ich möchte ein Spiel spielen.“
- Suche im angezeigten Dialogfeld zur App-Auswahl nach deiner Aktion.
- Wählen Sie Ihre App aus, um einen Intent an Ihre App zu senden.
Best Practices für die Verwendung integrierter Intents
Bei der Verwendung von integrierten Intents sollten Sie die folgenden Best Practices befolgen:
- Integrierte Intents bestimmten Aktionen zuordnen: Wenn ein bestimmter integrierter Intent
Ihre Aktion auslöst, leiten Sie den Nutzer zum
bestimmten Intent weiter und
Funktionalität in Ihrer Aktion so einfach
wie möglich gestalten. Für
Wenn deine Aktion den integrierten Intent
PLAY_GAME
unterstützt und diesen Intent erhält, sollten Sie den Nutzer sofort zur Spielfunktion deiner Aktion. Fragen Sie den Nutzer nicht noch einmal, ob er ein Spiel spielen möchte. - Integrierte Intent-Parameter verarbeiten: Achten Sie darauf, den integrierten Intent zu verwenden. Parameterwerte, die Assistant an die Auftragsausführung sendet. Vermeiden Sie es, den Nutzer noch einmal zur Eingabe dieser Werte aufzufordern.