private static async void SendDeviceToCloudMessagesAsync() { var weatherDataprovider = await SimulatedWeatherSensorProvider.Create(); for (int i = 0; i < 288; i++) { double currentHumidity = weatherDataprovider.GetHumidity(); double currentTemperature = weatherDataprovider.GetTemperature(); double currentWindSpeed = weatherDataprovider.GetWindSpeed(); var telemetryDataPoint = new { time = DateTime.Now.ToString(), deviceId = deviceId, currentHumidity = currentHumidity, currentTemperature = currentTemperature, currentWindSpeed = currentWindSpeed }; var messageString = JsonConvert.SerializeObject(telemetryDataPoint); var message = new Microsoft.Azure.Devices.Client.Message(Encoding.ASCII.GetBytes(messageString)); await deviceClient.SendEventAsync(message); Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, messageString); await Task.Delay(500); } }
public static async void SendDeviceToCloudMessagesAsync(string deviceId, object data) { //double avgWindSpeed = 10; // m/s //Random rand = new Random(); while (true) { //double currentWindSpeed = avgWindSpeed + rand.NextDouble() * 4 - 2; var telemetryDataPoint = new { deviceId = deviceId, //windSpeed = currentWindSpeed value = data }; var messageString = JsonConvert.SerializeObject(telemetryDataPoint); var message = new Microsoft.Azure.Devices.Client.Message(Encoding.ASCII.GetBytes(messageString)); await deviceClient.SendEventAsync(message); //Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, messageString); //Thread.Sleep(1000); } }