mirror of
https://github.com/Lemonochrme/clover.git
synced 2025-06-08 16:50:50 +02:00
45 lines
No EOL
1.4 KiB
C++
45 lines
No EOL
1.4 KiB
C++
#include "DataHandler.hpp"
|
|
|
|
DataHandler::DataHandler() {}
|
|
|
|
DataHandler::~DataHandler() {}
|
|
|
|
void DataHandler::updateSoilMoistureData(float humidity) { soilMoisture = humidity; }
|
|
void DataHandler::updateAirTemperatureData(float temperature) { airTemperature = temperature; }
|
|
void DataHandler::updateAirHumidityData(float humidity) { airHumidity = humidity; }
|
|
void DataHandler::updateLightData(float light) { this->light = light; }
|
|
|
|
String DataHandler::getJsonData() {
|
|
return buildJson();
|
|
}
|
|
|
|
String DataHandler::buildJson() {
|
|
StaticJsonDocument<200> document; // Taille = 200
|
|
|
|
String MoistureSensorStatus;
|
|
if (soilMoisture > 10) {
|
|
MoistureSensorStatus = "active";
|
|
} else {
|
|
MoistureSensorStatus = "inactive";
|
|
}
|
|
|
|
String soilMoistureLevel;
|
|
if (soilMoisture < 550) {
|
|
soilMoistureLevel = "dry";
|
|
} else if (soilMoisture >= 550 && soilMoisture <= 680) {
|
|
soilMoistureLevel = "moist";
|
|
} else {
|
|
soilMoistureLevel = "wet";
|
|
}
|
|
|
|
document["device"]["device_id"] = "clv_0001";
|
|
document["device"]["moisture_sensor_status"] = MoistureSensorStatus;
|
|
document["plant_management"]["soil_moisture"] = soilMoistureLevel;
|
|
document["raw_sensor_data"]["airTemperature"] = airTemperature;
|
|
document["raw_sensor_data"]["airHumidity"] = airHumidity;
|
|
document["raw_sensor_data"]["light"] = light;
|
|
|
|
String jsonFormattedData;
|
|
serializeJson(document, jsonFormattedData);
|
|
return jsonFormattedData;
|
|
} |