なにをしたか
Actions on Googleで、データベースを使うことなく会話・セッション間でも値の受け渡しができるようにしました。contextsだと、セッション間で値がリセットされていしまいます。。
なにを使ったか
https://developers.google.com/assistant/conversational/webhook/reference/rest/Shared.Types/AppResponse#FIELDS.user_storage
こちらのActions on Googleが提供してくれているUserStorageAPIというアクションごとのデータ保存領域を使うことで、会話をまたいでデータを保存しておけます。
どんな風に使うか
ver.2のコードで、conv.user.storageという風にかくだけでOK。便利!
node.js
app.intent("...", conv => {
// ユーザーストレージのpageに書き込み
conv.user.storage.page = 1;
// ユーザーストレージのpageから読み取り
const page = conv.user.storage.page;
});
リセットしたいとき
node.js
conv.user.storage = {};
こちらをかくだけでstorageの中身がリセットできます。