Bibliotecas do IoT do Azure para .NET

Visão geral

Hub IoT do Azure é um serviço totalmente gerenciado que permite comunicações bidirecionais confiáveis e seguras entre milhões de dispositivos e um back-end de solução.

Dispositivos e fontes de dados em uma solução do IoT podem variar de um simples sensor conectado à rede a um dispositivo de computação eficiente e autônomo. Os dispositivos podem ter capacidade de processamento, memória, largura de banda de comunicação e suporte ao protocolo de comunicação limitados. Os SDKs de dispositivo do IoT permitem implementar aplicativos clientes em uma ampla variedade de dispositivos e aplicativos de back-end.

O SDK de dispositivos para .NET facilita a criação de dispositivos que executam o .NET e se conectam ao Hub IoT do Azure.

O SDK de serviço para .NET facilita a criação de aplicativos de back-end com o .NET que gerenciam e permitem controlar dispositivos na nuvem.

Saiba mais sobre o IoT do Azure.

Biblioteca do cliente

Use o cliente de dispositivos IoT .NET para se conectar e enviar mensagens para o Hub IoT.

Instale o pacote NuGet diretamente do console do Gerenciador de Pacotes do Visual Studio ou com a CLI do .NET Core.

Gerenciador de Pacotes do Visual Studio

Install-Package Microsoft.Azure.Devices.Client
dotnet add package Microsoft.Azure.Devices.Client

Exemplos de código

Este exemplo conecta-se ao Hub IoT e envia uma mensagem por segundo.

string deviceKey = "<deviceKey>";
string deviceId = "<deviceId>";
string iotHubHostName = "<IoTHubHostname>";
var deviceAuthentication = new DeviceAuthenticationWithRegistrySymmetricKey(deviceId, deviceKey);

DeviceClient deviceClient = DeviceClient.Create(iotHubHostName, deviceAuthentication, TransportType.Mqtt);

while (true)
{
    double currentTemperature = 20 + Rand.NextDouble() * 15;
    double currentHumidity = 60 + Rand.NextDouble() * 20;

    var telemetryDataPoint = new
    {
        messageId = _messageId++,
        deviceId = deviceId,
        temperature = currentTemperature,
        humidity = currentHumidity
    };
    string messageString = JsonConvert.SerializeObject(telemetryDataPoint);
    Message message = new Message(Encoding.ASCII.GetBytes(messageString));
    message.Properties.Add("temperatureAlert", (currentTemperature > 30) ? "true" : "false");

    await deviceClient.SendEventAsync(message);
    Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, messageString);

    await Task.Delay(1000);
}

Exemplos

Veja a lista completa de exemplos do IoT do Azure.

Consulte o guia do desenvolvedor do Hub IoT do Azure para obter instruções.