Bei einem Webhook-Aufruf können Parameterwerte über mehrere Sitzungen hinweg in im selben Haushalt gespeichert werden (laut Home Graph) Deine Aktion kann diese gespeicherten Werte später in Prompts und Bedingungen verwenden. Code kann bei Bedarf auf Werte im Lagerhaushalt für einen bestimmten Haushalt zugreifen.
Der Status des privaten Speichers wird in einer app.handle()
-Anfrage übergeben und gespeichert.
im Objekt home
.
Beschränkungen
Der Speicherplatz für das Zuhause kann nicht mit Mobilgeräten verwendet werden, da diese nicht Teil eines Zuhauses sind
Grafik. Verwenden Sie im Webhook-Code die Gerätefunktion HOME_STORAGE
.
die Geschäftslogik basierend auf den Fähigkeiten
des Nutzergeräts zu verzweigen.
Du musst der Nutzung des Speicherplatzes für dein Zuhause zustimmen:
- Gehen Sie in der Actions Console zu Bereitstellen > Verzeichnisinformationen:
- Aktiviere im Abschnitt Zusätzliche Informationen das Kontrollkästchen Startseite Speicherplatz.
Daten in einem Haushalt lesen und schreiben
Wenn du den Speicher für zu Hause aktualisieren oder einen neuen Wert festlegen möchtest, weise den Wert dem params
zu
des home
-Objekts in einem Webhook-Aufruf. Im folgenden Beispiel
legt „exampleColor“ fest zu „Rot“ Speicherplatz im Zuhause:
Node.js
// Assign color to home storage app.handle('storeColor', conv => { let color = 'red'; conv.home.params.exampleColor = color; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": { "exampleColor": "red" } } } }
Wenn Sie auf Daten im privaten Speicher zugreifen möchten, weisen Sie sie einer Variablen in einem Webhook zu aufrufen. Im folgenden Beispiel wird ein Wert aus „exampleColor“ abgerufen im Zuhause Speicherplatz:
Node.js
// Retrieve color from home storage app.handle('getStoredColor', conv => { let color = conv.home.params.exampleColor; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": { "homeColor": "red" } } } }
Wenn Sie einen zuvor gespeicherten Wert löschen möchten, setzen Sie den Wert in einem Webhook-Aufruf auf null
.
Im folgenden Beispiel wird der Wert von „exampleColor“ gelöscht. Speicherplatz im Zuhause:
Node.js
// Clear color from home storage app.handle('clearStoredColor', conv => { conv.home.params.exampleColor = null; });
JSON
{ "responseJson": { "session": { "id": "1234567890123456789", "params": {} }, "prompt": { "override": false }, "home": { "params": {} } } }
In Prompts auf gespeicherte Werte verweisen
Sie können in einem Prompt auf Werte verweisen, die im privaten Speicher gespeichert sind. Als Referenz
den Wert, verwenden Sie $home.params.PARAMETER_NAME
-Syntax, wobei PARAMETER_NAME
der Name ist, der in der
Webhooks angegeben werden, wenn der Parameter festgelegt wurde.
Beispiel: Sie haben zuvor im Speicher für zu Hause einen Farbwert als
Parameter exampleColor
. Um auf diesen Wert in einer Aufforderung zuzugreifen, geben Sie an,
Wert mit $home.params.exampleColor
:
JSON
{ "candidates": [{ "first_simple": { "variants": [{ "speech": "Your favorite color is $home.params.exampleColor." }] } }] }
Auf gespeicherte Werte in Bedingungen verweisen
Sie können unter Bedingungen auch auf Werte verweisen, die bei der Aufbewahrung Ihres Zuhauses gespeichert sind. Bis
auf den Wert verweisen, verwenden Sie home.params.PARAMETER_NAME
-Syntax, wobei PARAMETER_NAME
der Name ist, der in der
Webhooks angegeben werden, wenn der Parameter festgelegt wurde.
Beispiel: Sie haben zuvor im Speicher für zu Hause einen Farbwert als
exampleColor
und Sie möchten ihn mit dem Wert „red“ abgleichen. in einem
. In der Bedingung referenzieren Sie den gespeicherten Wert mithilfe von
home.params.exampleColor
Der Bedingungsausdruck sieht dann so aus:
dies:
Bedingungssyntax
home.params.exampleColor == "red"
Ablauf von Daten zum Speicherplatz im Zuhause
Daten zum Speicherplatz im Zuhause werden 90 Tage lang gelöscht, nachdem die Aktion aufgerufen wird. Aktion auf einem beliebigen Gerät aufrufen, das mit Home Graph verknüpft ist den 90-Tage-Timer zurücksetzt. Wenn eine Home Graph-Struktur gelöscht wird, werden die entsprechenden Daten zum Speicherplatz im Zuhause gelöscht.
Bei Aktionen, die Speicherplatz im Zuhause nutzen, können Home Graph-Strukturmanager das Zuhause aufräumen Strukturen, die sie über die Seite der Aktion im Assistant-Verzeichnis verwalten:
- Wählen Sie die Aktion aus, für die Sie Ihren Nutzerspeicher ansehen oder löschen möchten.
- Scrollen Sie auf der Seite nach unten:
<ph type="x-smartling-placeholder">
- </ph>
- Wenn Sie im Speicher Ihres Zuhauses gespeicherte Daten entfernen möchten, klicken Sie auf action_name beenden sich an mich zu erinnern.
Trennt der Verwalter eines Geräts die Verbindung vom Gebäude, wird der Speicherplatz für das Zuhause sind ebenfalls dissoziiert. Daten zum Speicherplatz im Zuhause sind weiterhin mit einem Gerät verknüpft selbst wenn sich der für die Gebäudeverwaltung geändert hat, es sei denn, er löscht die Daten.
Daten zum privaten Speicherplatz im Simulator
Wenn du deine Aktion mit dem Simulator in der Actions Console testest: Daten, die im Speicher zu Hause gespeichert sind, verhalten sich etwas anders als auf einem physischen Gerät. . Der Simulator gilt als Teil seines eigenen Home Graphs, d. h., die Daten weiterhin auf anderen Geräten in Ihrem Netzwerk gespeichert werden. Außerdem: Startseite Speicherdaten bleiben nicht über mehrere Sitzungen hinweg erhalten, wenn die Option Nicht überprüft simulieren Nutzer aktiviert ist.
Beispielinteraktion
Hier sehen Sie eine Beispielinteraktion eines angemeldeten Nutzers beim ersten Aufruf von Aktion:
User query | Ok Google, sprich mit ExampleAction. |
---|---|
Antwort von Assistant | ExampleAction wird abgerufen. |
Antwort von Assistant | BeispielAction wird jedes Mal gespart, wenn du es spielst. können andere Personen in deinem Haushalt dort weitermachen, wo du aufgehört hast. |
ExampleAction-Antwort | Hallo, bestätigter Nutzer. Sie sind auf Level 0. Sage „Weiter“, „Zurücksetzen“ oder „Abbrechen“. |
User query | Weiter. |
ExampleAction-Antwort | Sie sind auf Level 1. |
User query | Verlassen. |
Wenn derselbe bestätigte Nutzer nach einiger Zeit zur Aktion zurückkehrt:
User query | Ok Google, sprich mit ExampleAction. |
---|---|
Antwort von Assistant | ExampleAction wird abgerufen. |
ExampleAction-Antwort | Hallo, bestätigter Nutzer. Sie sind auf Level 1. Sage „Weiter“, „Zurücksetzen“ oder „Abbrechen“. |
User query | Weiter. |
ExampleAction-Antwort | Du bist auf Level 2. |
User query | Verlassen. |
Am nächsten Tag interagiert ein nicht bestätigter Nutzer auf einem anderen Gerät mit der Aktion. innerhalb desselben Haushalts (wie in Home Graph angegeben).
User query | Ok Google, sprich mit ExampleAction. |
---|---|
Antwort von Assistant | ExampleAction wird abgerufen. |
Antwort von Assistant | BeispielAction wird jedes Mal gespart, wenn du es spielst. können andere Personen in deinem Haushalt dort weitermachen, wo du aufgehört hast. |
ExampleAction-Antwort | Hallo, Du bist auf Level 2. Sage „Weiter“, „Zurücksetzen“ oder „Abbrechen“. |
User query | Weiter. |
ExampleAction-Antwort | Sie sind auf Level 3. |
User query | Verlassen. |