是的,在大多数情况下,Amazon 和 Google 都要求硬件供应商运行支持语音助手系统可以调用的特定 API 的服务。
对于 Amazon,您必须提供一个 AWS Lambda 函数作为接口,而 Google 需要一个 HTTP API 端点。
这些规则有一些例外,例如亚马逊支持直接控制 Belkin WeMo 设备,但我相信他们正在删除此功能并迁移到进行 API 调用的同一系统。
另一个标准是 ZigBee 灯,一些内置 ZigBee 无线电的 Alexa 设备可提供直接控制。
Google 设备倾向于支持 Thread 系统(因为这是 Goolge 购买之前 NEST 使用的系统)
Google 还支持一种叫做 Local Control SDK 的东西,它允许从本地 Google Home 设备直接控制到设备,但这仍然需要云服务,因为备份命令路由和设备发现和状态仍然都是通过供应商云服务。
还值得指出的是,硬件供应商在很多时候也希望运行他们自己的系统。它允许他们收集有关客户如何使用其硬件的各种有用数据(例如,功能是否实际得到使用)并进行故障/故障分析。亚马逊或谷歌都不会让他们看到任何这些数据。
Apple 的 Homekit 系统是个例外,因为所有控制都是本地的,并且每个设备都必须通过在本地网络上实现 Apples API 来本地可发现和控制。
事情开始发生变化,因为现在有一个由亚马逊、苹果、谷歌和一堆物联网设备制造商组成的联盟,试图建立一个标准的控制协议来进行本地控制。(https://www.theverge.com/2019/12/18/21027890/apple-google-amazon-smart-home-standard-zigbee-connected-ip-project)