-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSendingData.cs
48 lines (40 loc) · 1.66 KB
/
SendingData.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
using Azure.Messaging.EventHubs.Consumer;
using Microsoft.Azure.Devices;
using Microsoft.Azure.Devices.Client;
using Microsoft.Azure.Devices.Common.Exceptions;
using System;
using System.Text;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
namespace DeviceConnection
{
public static class NewBaseType
{
// /// <your-hub-connection-string> = chave de conexão do IoTHub
// private const string iotHubConnectionString = "<your-hub-connection-string>";
/// <your-device-connection-string> = chave de conexão do Device
private const string deviceConnectionString = "<your-device-connection-string>";
public static async Task SendDeviceToCloudMessageAsync(CancellationToken cancelToken)
{
var deviceClient = DeviceClient.CreateFromConnectionString(deviceConnectionString);
var deviceData;// variável que recebe valores do device ---
while (!cancelToken.IsCancellationRequested)
{
var telemetryDataPoint = new
{
Telemetry = deviceData
};
var messageString = JsonSerializer.Serialize(telemetryDataPoint);
var message = new Microsoft.Azure.Devices.Client.Message(Encoding.UTF8.GetBytes(messageString))
{
ContentType = "application/json",
ContentEncoding = "utf-8"
};
await deviceClient.SendEventAsync(message);
Console.WriteLine($"{DateTime.Now} > Sending message: {messageString}");
await Task.Delay(5000);
}
}
}
}