public static string ToText(this SensorHistoryPeriod period) { switch (period) { case SensorHistoryPeriod.Day: return("День"); case SensorHistoryPeriod.Week: return("Неделя"); case SensorHistoryPeriod.Month: return("Месяц"); default: throw new ArgumentOutOfRangeException(nameof(period), period, null); } }
public async Task <IList <SensorHistoryData> > UpdateSensorHistoryAsync(int idSensor, SensorHistoryPeriod period, int offset) { var request = new SensorLogRequest { Cmd = "sensorLog", Id = idSensor, Period = period.ToString().ToLower(), Offset = offset, Uuid = Uuid, ApiKey = ApiKey }; var response = await Send <SensorLogResponse>(request); var result = new List <SensorHistoryData>(); if (response?.Data == null) { return(result); } foreach (var responseData in response.Data) { result.Add(new SensorHistoryData(ModelExtensions.UnixTimeStampToDateTime(responseData.Time, true), responseData.Value)); } return(result); }
public async Task <IList <SensorHistoryData> > UpdateSensorHistoryAsync(int idSensor, SensorHistoryPeriod period, int offset) { //var response = JsonConvert.DeserializeObject<SensorLogResponse>(SensorHistoryResonse); //foreach (var responseData in response.Data) //{ // sensor.Data.Add(new SensorHistoryData(ModelExtensions.UnixTimeStampToDateTime(responseData.Time, true), responseData.Value)); //} var result = new List <SensorHistoryData>(); var random = new Random(); for (var i = 0 + 24 * offset; i < (24 + 24 * offset); i++) { result.Add(new SensorHistoryData(DateTime.Now - TimeSpan.FromHours(i), (random.NextDouble() - 0.5) * 50)); } await Task.Delay(500); return(result); }