public void NewReading(object sender, Reading args)
        {
            if (args.SensorType == "temperature")
            {
                UpdateMeasuredData(args, MeasuredTemperatures);
                return;
            }

            if (args.SensorType == "humidity")
            {
                UpdateMeasuredData(args, MeasuredHumidities);
            }
        }
 private void UpdateMeasuredData(Reading args, ObservableCollection<Reading> measuredCollection )
 {
     var reading =
         measuredCollection.Select(x => x).FirstOrDefault(x => x.PublicName == args.PublicName);
     if (reading != null)
     {
         reading.Value = args.Value;
         Debug.WriteLine($"Updated {args.PublicName} to {args.Value}");
     }
     else
     {
         measuredCollection.Add(args);
     }
 }
 protected virtual void OnNewReading(Reading args)
 {
     NewReading?.Invoke(this, args);
 }