智能家居设备与Google Home和Alexa的集成

时间:2019-01-31 10:56:09

标签: mqtt alexa google-smart-home smarthomeskill

我试图整合与谷歌产品和Alexa的智能家居设备,但我面对以下问题。

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

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

2 个答案:

答案 0 :(得分:1)

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

我已经为Node-RED节点的Alexa和Google Home做到了。

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

答案 1 :(得分:0)

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

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

  1. 从设备或端点(而不是请求)的角度考虑。当您只想将HTTP“转换”为MQTT时,就会引发很多问题,就像您已经解决的一样。您可能想要实现一种逻辑,该逻辑允许MQTT主题控制/查询您的实际设备,而不是响应HTTP请求的设备。这使事情变得更加简单。
  2. 缓存是必不可少的。允许网桥具有设备状态的本地副本。具有正确实现的缓存后,您将无需任何响应。只需使用缓存的数据即可。