使用 Google Assistant 打开和关闭灯
此示例演示如何使用语音在 ThingSpeak™ 上设置通道值。IFTTT 直接与 Google® Assistant 连接以理解您的语音,然后写入 ThingSpeak通道。
灯指示器小组件在 ThingSpeak通道视图中提供通道值的图形显示。您还可以将真实的灯光连接到通道。详情请参见Connect Light to Channel。
设置软件
1) 创建一个 ThingSpeak 帐户和至少一个通道,如 Collect Data in a New Channel 所示。从通道视图中的“API 密钥”选项卡记录写入 API 密钥。
2) 将 Lamp Indicator 添加到您的通道。此示例使用灯指示器小组件件集,因此如果字段 1 值大于 0,灯就会亮起。
3) 创建一个 IFTTT 帐户(如果您还没有帐户)。登录到您的帐户。
4) 在您的移动设备上安装 Google Assistant App 。
创建 IFTTT 小程序来打开灯
IFTTT 小程序需要触发器和操作。对于此示例,触发器是来自 Google Assistant 的命令,操作是 Webhooks。Webhook 向 ThingSpeak REST API 发送命令以更改通道值。
登录您的 IFTTT 帐户。从顶部菜单中选择“我的小程序”,然后选择“”“新小程序”。
设置触发器
1) 点击“+this”设置触发器。
3) 在搜索栏中输入 Google Assistant
并选择 Google Assistant 作为您的触发服务。
4) 选择Say a simple phrase
。
5) 输入短语来触发灯。由于助手还能够进行网络搜索,因此请避免使用 Turn light on
等简单模式。此示例使用短语 Light my fire
打开灯。
设置动作
现在选择“Webhooks”作为您的操作。
1) 选择“+that”继续。
2) 在搜索框中输入 Webhooks
并选择“Webhooks”卡。
3) 填写 Webhooks 操作字段。输入 URL 以将字段值更改为 1。URL 具有以下形式。
https://api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXX&field1=1
使用 GET
作为“方法”,使用 application/x-www-form-urlencoded
作为“内容类型”。
创建 IFTTT 小程序来关闭灯
重复前面的步骤设置另一个小程序来关闭灯。使用不同的短语来表明您想要将灯状态更改为关闭。本示例使用命令 Kill the lamp
,该命令很容易与 on 命令区分开。使用 Webhooks 和 REST 调用将字段值设置为 0 以表示关闭状态。
https://api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXX&field1=0
测试您的灯控制
1) 打开手机或设备上的 Google Assistant 应用。
2) 说出触发短语。
3) 观察灯的变化和通道值。
将灯连接到通道
您可以使用具有 ThingSpeak 访问权限的设备控制灯光,例如带有 Wi-Fi 扩展板的 Arduino 或 ESP8266。许多设备 examples 展示了如何将设备连接到 ThingSpeak。Prototyping with Sonar Proximity Sensor 描述了 Arduino 设备的设置。对于 LED,您可以将灯直接连接到设备上的输出引脚。对于其他灯,您可能需要集成继电器或其他类型的开关。然后使用MQTT Subscribe或Read Data
读取设备当前的通道值,并根据通道值设置灯光状态。