private async void Timer_Tick(object sender, object e) { // Take measurement var temp = temperatureProvider.GetTemperature(); Debug.WriteLine($"Time: {DateTime.Now}, Temperature: {temp} \u00B0C"); // Update UI TemperatureText.Text = $"Temperature: {temp} \u00B0C"; // Create a datapoint var telemetryDataPoint = new { id = "<DEVICE_ID>", temperature = temp, date = DateTime.Now }; // Format data to a JSON message var json = JsonConvert.SerializeObject(telemetryDataPoint); var message = new Message(Encoding.ASCII.GetBytes(json)); // Send message to the IoT Hub await deviceClient.SendEventAsync(message); }
private void Timer_Tick(object sender, object e) { // Take measurement var temp = temperatureProvider.GetTemperature(); Debug.WriteLine($"Time: {DateTime.Now}, Temperature: {temp} \u00B0C"); // Update UI TemperatureText.Text = $"Temperature: {temp} \u00B0C"; }
public void Update() { IEnumerable <City> cities = store.GetCities(); foreach (City aCity in cities) { // Format and if within valid range, save double temperature = logic.FormatTemperature(provider.GetTemperature(aCity.Name, aCity.Country)); if (logic.IsTemperatureValid(temperature)) { store.UpdateCityTemperature(aCity, temperature); } } }
public int GetTemperature(City city) { var key = city.ToString(); int temperature = 0; if (cache.Contains(key)) { temperature = (int)cache.Get(key); } else { temperature = temperatureProvider.GetTemperature(city); cache.Add(key, temperature, DateTimeOffset.UtcNow.AddSeconds(5)); } return(temperature); }
public void WriteTemperature(City city) { writer.WriteLine("{0,-10}: {1}°C", city, temperatureProvider.GetTemperature(city)); }