【问题标题】:Google action MediaResponse not working on some devicesGoogle 操作 MediaResponse 在某些设备上不起作用
【发布时间】:2020-05-22 20:43:18
【问题描述】:

我们目前正在玩新推出的https://developers.google.com/actions/reference/rest/Shared.Types/AppResponse#mediaresponse

根据文档,我们将在媒体播放完毕后收到final Response。这在模拟器中效果很好,但在移动设备和扬声器上它会间歇性地工作

我们只会收到 2 或 3 次此回调,有时在任何一种设备上都不会收到。由于它工作了几次,我们确信它只是谷歌引擎,但要确保我们自己没有做错任何事情。

我使用自己的后端并拥有我们的引擎(Action SDK)。播放完成时我期待此响应,但我只是间歇性地收到此响应:

{
  "user": {
    "userId": "user-id",
    "accessToken": "access-token",
    "locale": "en-US",
    "lastSeen": "2018-03-18T17:44:51Z"
  },
  "conversation": {
    "conversationId": "1521395430917",
    "type": "ACTIVE",
    "conversationToken": "42"
  },
  "inputs": [{
    "intent": "actions.intent.MEDIA_STATUS",
    "rawInputs": [{}],
    "arguments": [{
      "name": "MEDIA_STATUS",
      "extension": {
        "@type": "type.googleapis.com/google.actions.v2.MediaStatus",
        "status": "FINISHED"
      }
    }]
  }],
  "surface": {
    "capabilities": [
      {"name": "actions.capability.SCREEN_OUTPUT"},
      {"name": "actions.capability.AUDIO_OUTPUT"},
      {"name": "actions.capability.WEB_BROWSER"}, 
      {"name": "actions.capability.MEDIA_RESPONSE_AUDIO"}
    ]
  },
  "isInSandbox": true,
  "availableSurfaces": [
    {"capabilities": [
      {"name": "actions.capability.SCREEN_OUTPUT"}, {"name": "actions.capability.AUDIO_OUTPUT"}
    ]}
  ]
}

【问题讨论】:

  • 我有点困惑 - 你的 webhook 应该永远不会得到最终响应。您应该得到一个名为 MEDIA_STATUS 的输入参数 (developers.google.com/actions/reference/rest/Shared.Types/…)。您是在 finalResponse 部分还是 inputPrompt 部分发送媒体响应? (或者您正在使用 Dialogflow?)
  • 我使用自己的后端并拥有我们的引擎。我期待在播放完成时间歇性收到这个最终响应:
  • 我使用自己的后端并拥有我们的引擎(Action SDK)。我期待播放完成时间歇性收到的最终响应:{“user”:{“userId”:“user-id”,“accessToken”:“access-token”,“locale”:“en-US”, “lastSeen”:“2018-03-18T17:44:51Z”},“conversation”:{“conversationId”:“1521395430917”,“type”:“ACTIVE”,“conversationToken”:“42”},“inputs” : [{"intent": "actions.intent.MEDIA_STATUS","rawInputs": [{}],"arguments": [{"name": "MEDIA_STATUS","extension": {"@type": "type .googleapis.com/google.actions.v2.MediaStatus","status": "FINISHED"}}]}],
  • 请更新问题,而不是尝试在 cmets 中提供更多信息。这种方式真的很难读。

标签: media actions-on-google


【解决方案1】:

这似乎是 Google 的一个错误。您应该填写support form 并指定

  • 您的项目 ID
  • 这是一个错误报告
  • 这与 Action SDK 相关
  • 您没有收到预期的 MEDIA_STATUS 事件
  • 从用户端听到的确切声音(用户听到什么?音频结束,然后是什么?)

【讨论】:

  • 我向 Google 提出了这个问题,支持团队友好地提出了一个开发错误。我只是刚刚意识到 Google Home 在不发送 MEDIA_STATUS 时的行为是它与我的应用程序保持连接,并且下次当用户与 Google Home 交互时,它会通过查询文本直接发送到我的应用程序。这可能对谷歌造成损害,因为有人可以编写窥探应用程序。此外,我的操作是实时的,因此我可以看到很多不适合我的操作的用户活动
  • 我在 5 个月前提出了这个问题,还发送了一个视频来解释我的问题。前两个月,Google 操作开发人员找不到问题。然后我发送了一个视频,他们接受了这个问题,但他们唯一做的就是让我的行动脱离商店,从那时起我一直在等待修复。一定很难修复。这是视频drive.google.com/file/d/14tRz5wBwvbbM6TS8IYwU7xfkKNhWIV0F/…
猜你喜欢
  • 1970-01-01
  • 2015-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多