azure-iot-hub - Azure IoT 中心所需和报告的属性
问题描述
在 Azure Hub 设备孪生中,我们有 Desired Properties 和 Reported Properties。我想这就像一个设定点和实际值。
因此,当我想更改一个值时,我更新了 Desired 属性,然后等待相应的 Reported 属性更新为实际值,这对吗?
更新 Desired Property 时,不触摸相应的 Reported Property 是否正常?我的意思是将其设置为 null 或其他值以表明我们还没有实际报告的值...如果设备属性确实已更新但来自设备的报告消息未能到达,我们将有一个旧的报告值。我认为它不应该更新,并且这些属性可能有时间戳,以查看报告的值是否尚未更新。
解决方案
在更改所需属性时更改设备的报告属性不是正常做法。如果设备没有报告该属性,则它在报告的属性中根本不可用。所以要回答你的两个问题,这里有一个场景:
- 您的设备正在运行,玩得很开心。它没有收到任何想要的属性,也没有报告它自己的属性。
- 您转到门户并添加所需的属性,值为bar的属性foo,您无需更改任何其他内容。
- 设备接收对此属性的请求,实施更改并向 IoT 中心报告foo现在是bar。
- 查看门户中的设备孪生,您会注意到一个报告的属性,报告的属性的元数据也指示一个
$lastUpdated
带有时间戳的值。
报告的属性就是这样,报告。设备可以报告不在所需属性中的属性,或者在不接收新的所需属性的情况下更新报告的属性。
推荐阅读
- json - 映射中的空值以列出颠簸变换
- scala - 打包 fat jar 时出现 No Class Def Found Error:scala/Product$class
- r - 当我使用矩阵变量拟合和预测模型时,predic.lm 给出错误数量的预测值
- vue.js - 为什么我无法在 Vue 组件的“已安装”组件上读取 Vuex 存储?
- kubernetes - 按名称查找 pod 时未知主机,通过 pod 重启解决
- excel - 如何以角度绘制excel样式的数据条?
- oracle - 链接到文件服务器 ApEx
- angular - 转到页面选项功能缺少 PrimeNG 分页器
- php - 我想将数据插入到 codigIgnitor 中具有相同 id 的两个表中
- javascript - getElementById 检查是否包含维度