对话之间未保存用户存储,但识别出同一用户
User storage not saved between conversation but same user is recognized
在我的 Actions on Google 项目中,我使用 conv.user.storage 在对话之间保存了一些数据(如 uuivd userId)。使用我自己的测试帐户,这工作正常。在另一个测试帐户上,user.storage 被清除并且数据丢失。这些帐户有以下差异:
- A Google 主页已连接到用户存储有效的帐户,语音匹配已设置,个人结果已启用。
- 否 Google 主页连接到用户存储不起作用的帐户,未设置语音匹配,个人结果不是一个选项,因为除了 iPhone 之外没有其他设备连接的。此帐户仅在智能手机 (iPhone) 上使用。
我知道用户存储将在以下时间被清除:
- 设置了语音匹配,没有匹配。
- 用户禁用了个人数据。
但这两个帐户都不是这种情况。我知道用户被识别为同一帐户,因为 lastSeen 并且对话之间的 userId 保持不变,如 Conv 对象中所示:
对话结束时:
"user": {
"raw": {
"userStorage": "{\"data\":{\"userId\":\"f581e751-ad81-4a6b-9519-00a57d5e30d4\"}}",
"lastSeen": "2019-03-13T11:58:39Z",
"locale": "nl-NL",
"userId": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw"
},
"storage": {
"userId": "f581e751-ad81-4a6b-9519-00a57d5e30d4"
},
"_id": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw",
"locale": "nl-NL",
"permissions": [],
"last": {
"seen": "2019-03-13T11:58:39.000Z"
},
"name": {},
"entitlements": [],
"access": {},
"profile": {}
},
在新对话开始时:
"user": {
"raw": {
"lastSeen": "2019-03-13T11:59:33Z",
"locale": "nl-NL",
"userId": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw"
},
"storage": {},
"_id": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw",
"locale": "nl-NL",
"permissions": [],
"last": {
"seen": "2019-03-13T11:59:33.000Z"
},
"name": {},
"entitlements": [],
"access": {},
"profile": {}
},
有谁知道 user.storage 可能被清除的任何其他原因,而不是上述原因,或者不使用帐户链接的其他方式?
我想我明白了。在 https://myaccount.google.com/u/3/activitycontrols?utm_source=google-account&utm_medium=web 中,我忘记切换 Chrome-历史和 activity 选项。
在我的 Actions on Google 项目中,我使用 conv.user.storage 在对话之间保存了一些数据(如 uuivd userId)。使用我自己的测试帐户,这工作正常。在另一个测试帐户上,user.storage 被清除并且数据丢失。这些帐户有以下差异:
- A Google 主页已连接到用户存储有效的帐户,语音匹配已设置,个人结果已启用。
- 否 Google 主页连接到用户存储不起作用的帐户,未设置语音匹配,个人结果不是一个选项,因为除了 iPhone 之外没有其他设备连接的。此帐户仅在智能手机 (iPhone) 上使用。
我知道用户存储将在以下时间被清除:
- 设置了语音匹配,没有匹配。
- 用户禁用了个人数据。
但这两个帐户都不是这种情况。我知道用户被识别为同一帐户,因为 lastSeen 并且对话之间的 userId 保持不变,如 Conv 对象中所示:
对话结束时:
"user": {
"raw": {
"userStorage": "{\"data\":{\"userId\":\"f581e751-ad81-4a6b-9519-00a57d5e30d4\"}}",
"lastSeen": "2019-03-13T11:58:39Z",
"locale": "nl-NL",
"userId": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw"
},
"storage": {
"userId": "f581e751-ad81-4a6b-9519-00a57d5e30d4"
},
"_id": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw",
"locale": "nl-NL",
"permissions": [],
"last": {
"seen": "2019-03-13T11:58:39.000Z"
},
"name": {},
"entitlements": [],
"access": {},
"profile": {}
},
在新对话开始时:
"user": {
"raw": {
"lastSeen": "2019-03-13T11:59:33Z",
"locale": "nl-NL",
"userId": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw"
},
"storage": {},
"_id": "ABwppHEOonglGmWakeizd_Stx_OpUhSNzx2K4JWETc73FW-KctZLM2vc4B7V6Fxk9OfL3RQ3n5jIgw",
"locale": "nl-NL",
"permissions": [],
"last": {
"seen": "2019-03-13T11:59:33.000Z"
},
"name": {},
"entitlements": [],
"access": {},
"profile": {}
},
有谁知道 user.storage 可能被清除的任何其他原因,而不是上述原因,或者不使用帐户链接的其他方式?
我想我明白了。在 https://myaccount.google.com/u/3/activitycontrols?utm_source=google-account&utm_medium=web 中,我忘记切换 Chrome-历史和 activity 选项。