Azure IoT Hub 设备消息结构和路由查询
Azure IoTHub DeviceMessage structure and route query
我使用 https://docs.microsoft.com/de-de/azure/iot-hub/quickstart-send-telemetry-python 中的 python 示例将遥测数据发送到 IoTHub。现在,我尝试通过自定义端点和路由仅将来自设备 "test-device" 的消息转发到 blob 存储中。使用查询字符串 "true" 来自所有设备的所有消息都被推送到存储。但是,我没有得到对 select 的查询,只有来自 deviceId "test-device" 的消息。我在文档中搜索但没有找到任何有用的示例...
谁能帮我查询一下?至少在 IoTHub 中对传入消息进行采样以了解 IotHub 消息的结构也很有帮助(就像在 StreamAnalytics "sample data" 中所做的那样)。
有一篇关于消息路由的非常好的博客 post here。
例如,您可以在添加到邮件中的任何属性或邮件正文中的任何字段上进行路由(如果它是 UTF-8 编码 JSON)。不确定您是否可以默认路由 deviceId,但是您可以例如在您的消息中添加一个 属性 "testmessage": true
,然后有一个路由规则来匹配它:
"testmessage" = true
您可以尝试在路由查询中使用$connectionDeviceId = "{your device id}"
。 connectionDeviceId
由 IoT 中心标记在服务绑定消息上。我认为这比silent的建议更简单。消息系统属性以“$”符号为前缀。消息路由的更多查询语言 here.
我使用 https://docs.microsoft.com/de-de/azure/iot-hub/quickstart-send-telemetry-python 中的 python 示例将遥测数据发送到 IoTHub。现在,我尝试通过自定义端点和路由仅将来自设备 "test-device" 的消息转发到 blob 存储中。使用查询字符串 "true" 来自所有设备的所有消息都被推送到存储。但是,我没有得到对 select 的查询,只有来自 deviceId "test-device" 的消息。我在文档中搜索但没有找到任何有用的示例...
谁能帮我查询一下?至少在 IoTHub 中对传入消息进行采样以了解 IotHub 消息的结构也很有帮助(就像在 StreamAnalytics "sample data" 中所做的那样)。
有一篇关于消息路由的非常好的博客 post here。
例如,您可以在添加到邮件中的任何属性或邮件正文中的任何字段上进行路由(如果它是 UTF-8 编码 JSON)。不确定您是否可以默认路由 deviceId,但是您可以例如在您的消息中添加一个 属性 "testmessage": true
,然后有一个路由规则来匹配它:
"testmessage" = true
您可以尝试在路由查询中使用$connectionDeviceId = "{your device id}"
。 connectionDeviceId
由 IoT 中心标记在服务绑定消息上。我认为这比silent的建议更简单。消息系统属性以“$”符号为前缀。消息路由的更多查询语言 here.