IoT 中心提供三个选项,允许设备应用向后端应用公开功能:
需要立即确认结果的通信的直接方法。 直接方法通常用于以交互方式控制设备,例如打开风扇。
设备孪生的所需属性,适用于旨在将设备置于某个所需状态的长期运行命令。 例如,将遥测发送间隔设置为 30 分钟。
云到设备的消息 ,用于向设备应用发送单向通知。
若要了解 Azure IoT 即插即用 如何使用这些选项来控制 IoT 即插即用设备,请参阅 IoT 即插即用服务开发人员指南。
注释
本文所述的功能只能用于 IoT 中心的标准层。 有关 IoT 中心基本层和标准/免费层的详细信息,请参阅选择适用于解决方案的 IoT 中心层和大小。
下面是各种云到设备通信选项的详细比较。
类别 | 直接方法 | 设备孪生的所需属性 | 云到设备的消息 |
---|---|---|---|
情景 | 需要立即确认的命令,例如打开风扇。 | 旨在将设备置于某个所需状态的长时间运行命令。 例如,将遥测发送间隔设置为 30 分钟。 | 提供给设备应用的单向通知。 |
数据流 | 双向。 设备应用可以立即响应方法。 解决方案后端根据上下文接收请求结果。 | 单向。 设备应用接收更改了属性的通知。 | 单向。 设备应用接收消息 |
持续性 | 不联系已断开连接的设备。 解决方案后端会通知设备未连接。 | 设备孪生会保留属性值。 设备会在下次重新连接时读取属性值。 可使用 IoT 中心查询语言检索属性值。 | IoT 中心最多可以保留消息 48 小时。 |
目标 | 使用 deviceId 与单个设备通信,或使用作业与多个设备通信。 | 使用deviceId的单台设备,或使用jobs的多台设备。 | 使用 deviceId 与单个设备通信。 |
尺寸 | 请求的最大直接方法有效负载大小为 128 KB,响应的相应负载大小为 128 KB。 | 所需属性大小最大为 32 KB。 | 最多 64 KB 消息。 |
频率 | 高。 有关详细信息,请参阅 IoT 中心配额和限制。 | 中等。 有关详细信息,请参阅 IoT 中心配额和限制。 | 低。 有关详细信息,请参阅 IoT 中心配额和限制。 |
协议 | 使用 MQTT 或 AMQP 时可用。 | 使用 MQTT 或 AMQP 时可用。 | 在所有协议上可用。 使用 HTTPS 时,设备必须轮询。 |
在以下教程中了解如何使用直接方法、所需属性和云到设备的消息: