Aktionen sind Einstiegspunkte in Ihre App, die den Aufruf und die Auffindbarkeit definieren für Ihre App. Aktionen werden in einer JSON-Datei deklariert, die als Aktionspaket bezeichnet wird. die Sie später in Ihr Entwicklerprojekt hochladen, reiche dein Actions-Projekt zur Genehmigung ein. Ein Aktionspaket ist eine JSON-Datei, definiert die Aktionen in Ihrem Actions-Projekt.
Um Aktionen in Ihrem Aktionspaket zu definieren, erstellen Sie einen Intent, der festlegt, wie die Aktion aufgerufen wird, und den entsprechenden Auftragsausführungsendpunkt, wenn die Intent ausgelöst. Sie können die folgenden Arten von Aktionen erstellen:
- Standardaktion:Jedes Actions-Projekt muss einen Begrüßungs-Intent haben, der agiert.
als Einstiegspunkt für Nutzer
zum Starten von Unterhaltungen. Der Begrüßungs-Intent ist
ausgelöst, wenn Nutzer explizit eine Aktion durch Ausgeben des Namens aufrufen (für
z. B. „Hey Google, sprich mit ExampleAction“). Dieser Begrüßungs-Intent wird mit
den Intent-Namen
actions.intent.MAIN
. - Zusätzliche Aktionen für Deeplinks: Sie können zusätzliche Aktionen in mit den von dir selbst definierten Intents. Damit können Nutzende Zum Aufrufen bestimmter Funktionen, indem ein Aktionsname zusammen mit einem Intent genannt wird Beispiel: „Hey Google, sprich mit ExampleAction, um Schuhe zu finden.“
Weitere Informationen dazu finden Sie unter Intents und Aufrufe. funktionieren diese Aufrufmodelle.
Standardaktion definieren
Jedes Aktionspaket darf nur einen Intent haben, der den
actions.intent.MAIN
Intent. Dieser Intent wird ausgelöst, wenn Nutzer Ihren
Aktion nach Name (z. B. „Hey Google, sprich mit ExampleAction“).
Um eine Boilerplate-Aktionspaketdatei mit dem Namen action.json
zu generieren,
folgenden Schritten:
- Laden Sie die
gactions
-Befehlszeile herunter. - Erstellen Sie ein lokales Verzeichnis für die Quelldateien Ihres Action-Projekts.
Führen Sie im Terminal die folgenden Befehle aus:
$ cd PROJECT_DIRECTORY $ gactions init
Nachdem die Aktionspaketdatei erstellt wurde, ersetzen Sie den Platzhalterinhalt durch Ihren
Werte. Hier ein Beispiel für action.json
mit Änderungen für ExampleAction
:
{ "actions": [ { "description": "Default welcome intent", "name": "MAIN", "fulfillment": { "conversationName": "ExampleAction" }, "intent": { "name": "actions.intent.MAIN", "trigger": { "queryPatterns": [ "talk to ExampleAction" ] } } } ], "conversations": { "ExampleAction": { "name": "ExampleAction", "url": "https://www.example.com/ExampleAction" } }, "locale": "en" }
Zusätzliche Aktionen definieren
Du kannst zusätzliche Aktionen bereitstellen, die als Einstiegspunkte dienen. Damit können Nutzer ihre Absicht deutlicher machen, indem sie mehr Details dazu angeben können, was Sie tun möchten. Beispiel: „Hey Google, sprich mit ExampleAction, um mir ein paar Schuhe.“)
So definieren Sie zusätzliche Aktionen:
-
Geben Sie im Array
Der folgende Code zeigt beispielsweise Aktion, die definiert: <ph type="x-smartling-placeholder">actions
eine Aktion für jeden Einstiegspunkt an.- </ph>
- Intent-Name von
com.example.ExampleAction.BUY
parameters
zum Parsen aus der Nutzereingabe, wenn dieser Intent ausgelöst wird. Dies ist nützlich, wenn Sie spezifische Daten aus der Aktionsformulierung benötigen, wenn Sie Nutzer die Aktion aufrufen.queryPatterns
, die festlegen, was Nutzer sagen müssen, um den Intent auszulösen. Abfragemuster können Schema.org-Typen enthalten die Parameter zum Parsen definieren.
{ "description": "Direct access", "name": "BUY", "fulfillment": { "conversationName": "ExampleAction" }, "intent": { "name": "com.example.ExampleAction.BUY", "parameters": [ { "name": "color", "type": "org.schema.type.Color" } ], "trigger": { "queryPatterns": [ "find some $org.schema.type.Color:color sneakers", "buy some blue suede shoes", "get running shoes" ] } } }
- Intent-Name von
-
Geben Sie die Auftragsausführung für diesen Intent durch Angabe von
conversationName
an das einem Element imconversations
-Objekt entspricht.{ "conversations": { "ExampleAction": { "name": "ExampleAction", "url": "https://www.example.com/ExampleAction" } } }
Hier ein Beispiel für ein vollständiges Aktionspaket:
{ "actions": [ { "description": "Default welcome intent", "name": "MAIN", "fulfillment": { "conversationName": "ExampleAction" }, "intent": { "name": "actions.intent.MAIN", "trigger": { "queryPatterns": [ "talk to ExampleAction" ] } } }, { "description": "Direct access", "name": "BUY", "fulfillment": { "conversationName": "ExampleAction" }, "intent": { "name": "com.example.ExampleAction.BUY", "parameters": [ { "name": "color", "type": "org.schema.type.Color" } ], "trigger": { "queryPatterns": [ "find some $org.schema.type.Color:color sneakers", "buy some blue suede shoes", "get running shoes" ] } } } ], "conversations": { "ExampleAction": { "name": "ExampleAction", "url": "https://www.example.com/ExampleAction" } }, "locale": "en" }