public void AddOrUpdateData(SensorData newData) { AddOrUpdateData(newData.dataType.Value, newData.state); }
public void AddOrUpdateData(SensorDataType dataType, string state) { List<SensorData> dataList = GetAllData(); if (dataList == null) dataList = new List<SensorData>(); SensorData data = dataList.FirstOrDefault(x => x.dataType == dataType); if (data == null) { data = new SensorData(dataType, state); dataList.Add(data); } else data.state = state; sensorDataJson = JsonConvert.SerializeObject(dataList); }
public void SendSensorState(int nodeId, int sensorId, SensorData data) { Sensor sensor = GetNode(nodeId).GetSensor(sensorId); sensor.AddOrUpdateData(data); Message message = new Message(); message.ack = false; message.messageType = MessageType.C_SET; message.nodeId = nodeId; message.payload = data.state; message.sensorId = sensorId; message.subType = (int)data.dataType; message.isValid = true; SendMessage(message); if (OnSensorUpdatedEvent != null) OnSensorUpdatedEvent(sensor); }