IoTHub 事件订阅消息路由和过滤

时间:2021-07-13 00:09:53

标签: azure azure-iot-hub azure-eventgrid

是否可以使用消息路由将 IoTHub 消息路由到事件订阅/是否可以根据 IoThub 设备孪生内容为 IoThub 事件订阅中的 IotHub 设备遥测添加过滤器?

我在 IotHub->Events(由过滤器分隔)(捕获设备遥测事件)中创建了 2 个事件订阅(EventSubscriptionA 和 EventSubscriptionB)。现在,我想根据 IoTHub 设备孪生中的内容为从设备发送到 IotHub 的每个遥测数据路由消息。即,如果设备的 IotHub 设备孪生包含“a”,则当设备发送遥测时,此遥测将路由到 eventsubscriptionA(具有内置的 webhook)。

1 个答案:

答案 0 :(得分:1)

是的,这是完全可能的。您可以使用 Message Enrichment 来实现此目标。通过消息丰富,您可以在消息中包含部分设备孪生: Message Enrichtment

之后,您可以编辑事件订阅的过滤器以在该字段上进行过滤。这是您的示例,您要在其中过滤“a”。 Event Subscription filter

现在,只有当设备孪生具有名为 sudo apt-get -y install unixodbc-dev 且值为 twinProperty 的所需属性时,此事件订阅才会触发消息。如果更合适,您还可以在 Device Twin 标签上使用消息丰富。