【问题标题】:Azure IoT Hub MQTT device and device twin changesAzure IoT Hub MQTT 设备和设备孪生更改
【发布时间】:2019-11-20 13:34:00
【问题描述】:

我有一个设备,它是 Azure IoT 中心的 mqtt 客户端,并希望通知设备有关该设备的设备孪生中的更改/更新。

我已经从设备成功连接并更新了 device-twin 中的 reported 值,但是当我更改某些在 Azure shell (https://shell.azure.com/) 的 device-twindesired 属性,使用如下命令:

az iot hub device-twin update -n <myIotHubBame> -d <myDeviceId> --set properties.desired='{"foo":"bar"}'

在我尝试订阅 $iothub/twin/res/#devices/<myDeviceId>/messages/devicebound/# 的设备上,但在从 Azure shell 发出 az 命令后没有收到任何消息。

我还尝试使用 Data Source = Twin Change EventsEndpoint = event 设置 message route,但在设备。

有人对如何在设备孪生中的属性发生更改时向设备发出通知有任何建议吗?

【问题讨论】:

    标签: azure mqtt azure-iot-hub


    【解决方案1】:

    MQTT设备需要订阅以下主题

    $iothub/twin/PATCH/properties/desired/#
    

    用于接收设备孪生所需属性更改的通知。

    【讨论】:

    • 感谢您的回复。我试图在设备上订阅这个主题,但没有成功。我是否需要在 IoT Hub 中设置一些 消息路由 或者我是否应该能够使用前面提到的 Azure shell 命令直接测试它:az iot hub device-twin update -n <myIotHubBame> -d <myDeviceId> --set properties.desired='{"foo":"bar"}'
    • 一旦您的设备已连接、订阅该主题并且设备具有接收器处理程序,您的设备就可以接收有关所需属性的更改通知。您可以轻松使用 azure 门户进行测试。
    • 再次感谢您的回复,我再次尝试了这个主题,奇怪的是它现在起作用了。显然我之前搞砸了
    猜你喜欢
    • 1970-01-01
    • 2019-03-15
    • 1970-01-01
    • 2022-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多