Stefan
Stefan

Reputation: 585

Azure function with IoT Hub trigger get send device

I created an function with IoT Hub trigger

log.Info($"C# IoT Hub trigger function processed a message: {Encoding.UTF8.GetString(message.GetBytes())}");

The function log only the message. But how I can get the device, which send the message?

Regards Stefan

Upvotes: 2

Views: 195

Answers (1)

Roman Kiss
Roman Kiss

Reputation: 8235

Have a look at the following example:

using System;

public static void Run(string myIoTHubMessage, IDictionary<string, object> properties, IDictionary<string, object> systemproperties, TraceWriter log)
{
    log.Info($"C# IoT Hub trigger function processed a message: \n\t{myIoTHubMessage}");

    log.Info($"DeviceId = {systemproperties["iothub-connection-device-id"]}");

    log.Info($"\nSystemProperties:\n\t{string.Join("\n\t", systemproperties.Select(i => $"{i.Key}={i.Value}"))}");

    log.Info($"\nProperties:\n\t{string.Join("\n\t", properties.Select(i => $"{i.Key}={i.Value}"))}");
}

Upvotes: 2

Related Questions