【问题标题】:Devices created with smart-home-java sample always offline使用 smart-home-java 示例创建的设备始终离线
【发布时间】:2020-08-22 02:26:18
【问题描述】:

我使用https://github.com/actions-on-google/smart-home-java 示例项目创建了几个设备。我还成功关联了我的帐户,并在我的 Google Home 应用中看到了这些设备。我还可以单击 Lamp 设备旁边的“开”或“关”按钮,我可以看到 Firestore 中的值发生变化。

但是,当我点击设备时,顶部显示“无响应”,屏幕中间显示“离线”。我在“smart-home-java”服务器日志中看不到任何错误。

有没有其他人经历过类似的事情?我应该如何调试这个?

【问题讨论】:

  • 在 Firestore 中,是否有一个名为 online 的状态?
  • 如果您的项目的意图请求有任何错误,它们将出现在项目error logs 中。要检查的一个预感是确保您的服务帐户密钥设置正确。未能报告状态可能会导致 QUERY 意图失败。
  • 有一个状态online,它被设置为truesmart-home-java 的日志没有任何错误。来自 Google 助理的请求使用200 状态码处理。但是在 Google Assistant Action Project 日志资源中,我在执行日志中看到以下内容:{action: {actionType: "STATE_QUERY"}, device: {deviceType: "SWITCH"}, status: {isSuccess: false, statusType: "DEVICE_OFFLINE"}。所以由于某种原因它认为查询请求不成功。

标签: google-smart-home


【解决方案1】:

正如 cmets 中简要提到的,这可能是因为您的项目未能成功调用 Report State。最可能的原因是您的 Home Graph API 凭据丢失或不正确。

current sample code 中,此方法调用中的错误将导致处理程序从QUERY 返回deviceOffline。您也可以注释掉或删除此行来调试问题。

【讨论】:

猜你喜欢
  • 2017-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-14
  • 2014-09-20
  • 2020-04-30
相关资源
最近更新 更多