【问题标题】:Smart home device integration with Google home and Alexa智能家居设备与 Google home 和 Alexa 的集成
【发布时间】:2019-01-31 10:56:08
【问题描述】:

我正在尝试将智能家居设备与 Google home 和 Alexa 集成,但我面临以下问题。

  1. Google Home/Alexa 与我们的设备云服务器之间的通信是 HTTP。
  2. 智能家居设备与我们的设备云服务器之间的通信是 MQTT。

如何跟踪同步请求-响应?有没有更好的方法来实现这个系统?

【问题讨论】:

    标签: mqtt alexa google-smart-home smarthomeskill


    【解决方案1】:

    完全可能与 HTTP 到 MQTT 并再次返回有关。

    我已经为我的 Node-RED 节点为 Alexa 和 Google Home 完成了它。

    您只需要跟踪正在进行的请求并在请求/响应 MQTT 消息中包含一个唯一 ID,同时还需要运行一个计时器来处理来自设备的无响应。

    【讨论】:

    • 好的。你能指出一些我可以参考代码的链接吗?
    • 这种技术在生产环境中可靠吗?
    • 当你必须水平缩放时它会变得有点复杂,但它可以工作
    【解决方案2】:

    gBridge 项目(https://github.com/kservices/gBridge;https://about.gbridge.io)基本上实现了普通的 Google Assistant/Alexa 到 MQTT 的桥接。

    关于您的问题,有两点有助于实施这些解决方案:

    1. 考虑设备或端点,而不是请求。当您只想将 HTTP“翻译”为 MQTT 时,您会引发很多问题,就像您已经发现的那样。您可能希望实现一个逻辑,允许 MQTT 主题控制/查询您的实际设备 - 而不是响应 HTTP 请求的设备。这让事情变得简单多了。
    2. 缓存是必不可少的。允许您的网桥拥有设备状态的本地副本。当拥有正确实现的缓存时,您将不需要任何响应。只需使用缓存的数据即可。

    【讨论】:

      猜你喜欢
      • 2020-12-27
      • 1970-01-01
      • 2016-11-22
      • 2019-06-18
      • 1970-01-01
      • 2018-08-17
      • 1970-01-01
      • 2017-07-23
      • 2020-07-21
      相关资源
      最近更新 更多