0

ModifyCloudToDeviceConfig 以 qos 1 发送命令。除了 ModifyCloudToDeviceConfig 之外,是否还有其他方法可以发送命令。

4

2 回答 2

1

我们刚刚Commands向 IoT Core 添加了一项新功能,该功能正是这样做的。它刚刚进行了公测,所以你现在应该可以访问它了。在控制台中,如果您深入了解单个设备,您将在顶部栏的“更新配置”旁边看到“发送命令”。在使用 gcloud SDK 的命令行上,您可以执行 agcloud components update然后gcloud beta iot devices --help查看新的命令命令,并且在发现 API 中您现在应该可以SendCommandToDevice调用来执行此操作。在这里查看文档

于 2018-10-12T14:22:35.720 回答
0

根据MQTT Bridge的文档,对于设备配置,您可以指定两个 QoS 级别:

  • QoS 等于 0:配置版本发布只发生一次。
  • QoS 等于 1:重试最新的配置更新,直到设备使用PUBACK确认它。

此外,根据MQTT 设备配置文档,使用 MQTT 的设备可以订阅接收配置更新的特殊主题:

/devices/{device-id}/config

订阅后,MQTT 桥将使用为配置主题指定的 QoS(可以是01,如前所述)以SUBACK响应。

此外,如果您想改用HTTP Bridge,您可以在 Cloud IoT Core 中定义配置,如文档中所述,稍后通过显式请求设备配置手动检索它。

因此,总而言之,在更新设备配置时(您可以使用该modifyCloudToDeviceConfig()方法,尽管也可以通过gcloud控制台或控制台完成),您无法指定 QoS 级别。此时,更新将在 Cloud IoT Core 中可用,但未在相应设备中应用。然后,在更新的第二步中,您实际检索并在设备中应用更新,您可以使用 MQTT(然后指定要在config主题中使用的 QoS 级别)或 HTTP(并在您随时手动检索新配置想)。

于 2018-04-09T15:20:35.143 回答