Example #1
0
        public IEnumerable <Measurements> GetData()
        {
            var sensorList = new List <Measurements>();

            //TimeSpan span = DateTime.Now - LastMeasure;
            //Console.WriteLine($"Od ostatniego pomiaru GIOS minęło: {span.Minutes.ToString()}");
            //if (MakeMeasure)
            {
                var context     = JsonHelpers.GetSensorDataAsync <GiosJsonData>("http://api.gios.gov.pl/pjp-api/rest/data/getData/" + this.Measurements.Station.StationId.ToString());
                var historyData = context.Values;
                if (historyData == null)
                {
                    historyData = Array.Empty <Value>();
                }
                foreach (var item in historyData)
                {
                    if (item.PM10Value != null)
                    {
                        var data = new Measurements()
                        {
                            MeasurementDate = item.Date,
                            Pm10            = item.PM10Value,
                            Station         = new Station {
                                StationId = Measurements.Station.StationId, iotNet = new IotNet()
                                {
                                    Name = this.GetType().Name
                                }
                            }
                        };
                        sensorList.Add(data);
                    }
                }
                this.SetLastMeasure();
            }
            return(sensorList);
        }
Example #2
0
        public IEnumerable <Measurements> GetData()
        {
            var airlySensorList = new List <Measurements>();

            {
                var lat     = this.Measurements.Station.Latitude.GetValueOrDefault().ToString(new CultureInfo("en-US"));
                var lon     = this.Measurements.Station.Longitude.GetValueOrDefault().ToString(new CultureInfo("en-US"));
                var context = JsonHelpers.GetSensorDataAsync <AirlyJsonData>("https://airapi.airly.eu/v2/measurements/installation?installationId=" + Measurements.Station.StationId + "&apikey=" + apiKey);

                var historyData = context.History;
                if (historyData[0].Values == null)
                {
                    historyData = Array.Empty <Current>();
                }
                foreach (var item in historyData)
                {
                    foreach (var value in item.Values)
                    {
                        if (value.Name == Pollutant.Pm10)
                        {
                            Measurements.Pm10 = value.ValueValue;
                        }
                        if (value.Name == Pollutant.Pm25)
                        {
                            Measurements.Pm25 = value.ValueValue;
                        }
                        if (value.Name == Pollutant.Humidity)
                        {
                            Measurements.Humidity = value.ValueValue;
                        }
                        if (value.Name == Pollutant.Temperature)
                        {
                            Measurements.Temperature = value.ValueValue;
                        }
                        if (value.Name == Pollutant.Pressure)
                        {
                            Measurements.Pressure = value.ValueValue;
                        }
                    }
                    var data = new Measurements
                    {
                        Pm10            = Measurements.Pm10,
                        Pm25            = Measurements.Pm25,
                        Humidity        = Measurements.Humidity,
                        Temperature     = Measurements.Temperature,
                        Pressure        = Measurements.Pressure,
                        MeasurementDate = item.FromDateTime.DateTime,
                        Station         = new Station {
                            StationId = Measurements.Station.StationId, iotNet = new IotNet()
                            {
                                Name = this.GetType().Name
                            }
                        },
                    };

                    airlySensorList.Add(data);
                }
                this.SetLastMeasure();
            }
            return(airlySensorList);
        }