如何从 Google Home 向没有应用程序名称的自定义智能设备发送直接命令?

How to send direct command from Google Home to custom smart device without app name?

我尝试构建我的自定义 IoT 设备,该设备将通过 Google 家庭设备进行控制,并为残障人士服务。

设备本身是 Tiva C Launchpad,我从头开始编程,这意味着我可以完全控制它。

在我看来,用户会说类似这样的话:“好的 Google,按播放按钮”,结果,Google 家庭设备将直接发送 press_play_button 到 IoT 设备,最好通过本地网络。

我找到了 Google Action SDK 以及 Local SDK 扩展,但如果我理解正确,我必须先进入应用程序模式(“确定 Google,在说出我想要的动作之前播放 {app_name}"),这很不方便。

有什么方法可以达到我的要求吗? 如果没有,我可能会放弃本地网络控制,而使用某种webhook向我的智能设备发送HTTP请求,这样的话我想MQTT是否更合适。

谢谢。

Local SDK 是 Smart Home API 的扩展。如果您的设备与智能家居 API 支持的设备类型和特征匹配,那么您可以使用它来控制您的设备。

它支持 media players,所以像 play/stop 这样的事情应该是可能的。

我已经使用 MQTT 构建了通用智能家居控件来访问设备,但您必须为 Google 系统提供一个 HTTP 端点以进行交互。这需要考虑一下,因为您必须将 MQTT 异步方法映射到 HTTP 的同步性质。