Aufbewahrung zu Hause

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:

  1. Gehen Sie in der Actions Console zu Bereitstellen > Verzeichnisinformationen:
  2. 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 im 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 im 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:

  1. Wählen Sie die Aktion aus, für die Sie Ihren Nutzerspeicher ansehen oder löschen möchten.
  2. 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.