public void SetStatus(WeatherSituation situation, float temperature, float humidity, TimeSpan sunrise, TimeSpan sunset)
 {
     _weatherService.Update(situation);
     _outdoorTemperatureService.Update(temperature);
     _outdoorHumdityService.Update(humidity);
     _daylightService.Update(sunrise, sunset);
 }
        public void SetStatus(WeatherSituation situation, float temperature, float humidity, TimeSpan sunrise, TimeSpan sunset)
        {
            _situation   = situation;
            _temperature = temperature;
            _humidity    = humidity;

            _sunrise = sunrise;
            _sunset  = sunset;
        }
Exemple #3
0
        public void SetStatus(WeatherSituation situation, float temperature, float humidity, TimeSpan sunrise, TimeSpan sunset)
        {
            _situation.SetValue(situation);
            _temperature.SetValue(temperature);
            _humidity.SetValue(humidity);

            _sunrise = sunrise;
            _sunset  = sunset;
        }
Exemple #4
0
        public void SetValue(WeatherSituation weatherSituation)
        {
            if (weatherSituation == _value)
            {
                return;
            }

            SituationChanged?.Invoke(this, new WeatherSituationSensorValueChangedEventArgs(_value, weatherSituation));
            _value = weatherSituation;
        }
        private void ParseWeatherData(string weatherData)
        {
            var parser = new OpenWeatherMapResponseParser();

            parser.Parse(weatherData);

            _situation   = parser.Situation;
            _temperature = parser.Temperature;
            _humidity    = parser.Humidity;

            _sunrise = parser.Sunrise;
            _sunset  = parser.Sunset;
        }
Exemple #6
0
        private async void GetWeatherStatus(object sender, EventArgs e)
        {
            string MethodName  = "GetWeatherStatus";
            var    weatherTask = Awareness.GetCaptureClient(this).GetWeatherByDeviceAsync();

            try
            {
                await weatherTask;
                if (weatherTask.IsCompleted && weatherTask.Result != null)
                {
                    IWeatherStatus   weatherStatus    = weatherTask.Result.WeatherStatus;
                    WeatherSituation weatherSituation = weatherStatus.WeatherSituation;
                    Situation        situation        = weatherSituation.Situation;
                    string           logMessage       = $"City:{weatherSituation.City.Name}\n";
                    logMessage += $"Weather id is {situation.WeatherId}\n";
                    logMessage += $"CN Weather id is {situation.CnWeatherId}\n";
                    logMessage += $"Temperature is {situation.TemperatureC}℃";
                    logMessage += $",{situation.TemperatureF}℉\n";
                    logMessage += $"Wind speed is {situation.WindSpeed}km/h\n";
                    logMessage += $"Wind direction is {situation.WindDir}\n";
                    logMessage += $"Humidity is {situation.Humidity}%";
                    log.ShowLog(logMessage);
                    Log.Info(MethodName, logMessage);
                }
                else
                {
                    var    exception    = weatherTask.Exception;
                    string errorMessage = $"{AwarenessStatusCodes.GetMessage(exception.GetStatusCode())}: {exception.Message}";
                    log.ShowLog(errorMessage);
                    Log.Error(MethodName, errorMessage);
                }
            }
            catch (Exception exception)
            {
                string errorMessage = $"{AwarenessStatusCodes.GetMessage(exception.GetStatusCode())}: {exception.Message}";
                log.ShowLog(errorMessage);
                Log.Error(MethodName, errorMessage);
            }
        }
Exemple #7
0
        public void Parse(string source)
        {
            var data = JsonObject.Parse(source);

            var sys     = data.GetNamedObject("sys");
            var main    = data.GetNamedObject("main");
            var weather = data.GetNamedArray("weather");

            var sunriseValue = sys.GetNamedNumber("sunrise", 0);

            Sunrise = UnixTimeStampToDateTime(sunriseValue).TimeOfDay;

            var sunsetValue = sys.GetNamedNumber("sunset", 0);

            Sunset = UnixTimeStampToDateTime(sunsetValue).TimeOfDay;

            var situationValue = weather.First().GetObject().GetNamedValue("id");

            Situation = new OpenWeatherMapWeatherSituationParser().Parse(situationValue);

            Temperature = (float)main.GetNamedNumber("temp", 0);
            Humidity    = (float)main.GetNamedNumber("humidity", 0);
        }
Exemple #8
0
 public void SetWeather(WeatherSituation weather)
 {
     _weather = weather;
 }
 internal void Update(WeatherSituation weather)
 {
     _weather = weather;
 }