通过消息类型

时间:2017-02-06 16:28:20

标签: azure azure-functions

我创建了一个Azure函数来侦听Azure IoT Hub实例。当我向IoT Hub发布消息时,我设置了如下属性:

        Message iotMessage = new Message([myMessage]);
        iotMessage.Properties.Add("Type", [MessageType]);

在Azure功能端,我希望Azure功能仅接收/处理具有Type属性且Type属性等于“MessageType1”的消息。

我无法在Azure功能中看到这样做的方法。有人可以建议这是否可行?

1 个答案:

答案 0 :(得分:3)

编辑:这似乎是您正在寻找的内容:

https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-csharp-csharp-process-d2c#add-a-queue-to-your-iot-hub-and-route-messages-to-it

您的条件是Type = MessageType1,您将从输出队列中触发函数。

您为Azure功能使用什么类型的输入绑定?

AFAIK,目前无法一步到位。但是,您有几个选择:

  • 将IoT Hub连接到ServiceBus主题/订阅,允许您根据属性进行一些过滤。触发按MessageType1
  • 过滤的订阅
  • 具有专用于过滤IoT Hub消息的功能。当它与MessageType1消息匹配时,将该消息放入队列中。此队列触发另一个仅处理匹配消息的函数