用于检查设备何时停止向 IoT Central 发送消息的规则

Rule to check when device stops sending messages to IoT Central

我想创建一个规则来检查我的设备何时停止向 IoT Central 发送消息。

例如,当我停电并且我的设备停止工作时,我希望能够触发一个操作:发送电子邮件、运行 Azure 函数等。

我正在考虑创建一个命令来向我的设备发送一条消息,然后尝试读回它。然后我会为 运行 这个命令创建一个作业,但这似乎不是处理这个问题的正确方法。

这可能吗?我该怎么办?

编辑 我已经有一些遥测信息从我的设备发送到云端。如果我能够计算自上一条消息以来过去的时间,我可以创建一个规则(例如:当时间大于 X 时)触发一个操作。

您可以尝试在云中创建虚拟健康监测设备,它会定期 ping 您的物理设备。例如,云设备 x 将具有遥测 'HealthDeviceAtHomeA',如果您能够从云设备 X 到达设备 A,您将发送遥测 HealthDeviceAtHomeA = 100,否则 HealthDeviceAtHomeA = 0。然后为设备 x 创建一个规则,该规则将检查最近 5 分钟的 HealthDeviceAtHomeA 的平均值,如果小于例如 50,您将发出警报。这将确保连接性,并且您可以随着设备数量的增长定义不同的规则和逻辑。如果您有防火墙限制,那么您的家庭设备可以向虚拟健康设备报告其健康状况。

Microsoft tutorial 处理您的场景。遥测数据导出到事件中心,流分析检查设备是否停止发送遥测数据。

如果不以某种方式导出数据,您似乎无法在 IoT Central 中执行此操作。