Azure IoTHub DeviceMessage结构和路由查询

时间:2018-07-03 11:31:32

标签: python azure azure-storage-blobs azure-iot-hub

我使用了https://docs.microsoft.com/de-de/azure/iot-hub/quickstart-send-telemetry-python中的python示例将遥测数据发送到IoTHub。现在,我尝试仅通过自定义终结点和路由将消息从设备“ test-device”转发到Blob存储中。使用查询字符串“ true”,来自所有设备的所有消息均被推送到存储中。但是,我没有获得查询以仅从deviceId“ test-device”中选择消息。我在文档中搜索,但没有找到任何有用的示例...

有人可以帮助我查询吗?至少对IoTHub中的传入消息进行采样以了解IotHub消息的结构也很有帮助(就像在StreamAnalytics“采样数据”中所做的一样)。

2 个答案:

答案 0 :(得分:0)

关于邮件路由here,有一篇很好的博客文章。

例如,您可以在添加到消息中的任何属性上或消息正文内的任何字段(如果它是UTF-8编码的JSON)上进行路由。不知道默认情况下是否可以在deviceId上进行路由,但是可以例如在邮件中添加属性"testmessage": true,然后使用路由规则来匹配该属性: "testmessage" = true

答案 1 :(得分:0)

您可以尝试在路线查询中使用false。物联网中心在服务绑定消息上标记了$connectionDeviceId = "{your device id}"。我认为这比沉默的建议更简单。消息系统属性以“ $”符号为前缀。用于消息路由here的更多查询语言。