#include <Arduino.h>
#include "StateManagement.h"
#include "SensorDriver.h"
#include "OperationManagement.h"
#include "CommunicationManager.h"
#include "HandlersManagement.h"
#include "ThresholdManagement.h"
#include "RequestManager.h"
SensorDriver sensorDriver;
StateManagement stateManager;
RequestManager requestManager(&stateManager);
CommunicationManager communicationManager(&stateManager);
HandlersManagement handlersManagement(&stateManager, &communicationManager);
ThresholdManagement thresholdManagement(&stateManager);
OperationManagement operationManagement(
&sensorDriver, &communicationManager,
&stateManager, &handlersManagement,
&requestManager, &thresholdManagement
);
void setup() {
Serial.begin(115200);
delay(1000);
if (communicationManager.connectWiFi()) {
sensorDriver.collectData(); // Recolección de datos simulados iniciales del sensor
ThresholdState initialThresholds = {35.0, 60.0, 240.0}; // Establecer thresholds iniciales
if (thresholdManagement.updateThresholds(initialThresholds)) {
Serial.println("Initial thresholds set correctly.");
} else {
Serial.println("Error setting initial thresholds.");
}
} else {
Serial.println("Error connecting to WiFi.");
}
}
void loop() { operationManagement.run(); }