| 12345678910111213141516171819202122232425262728293031323334353637 |
- /*
- * TimerManager.h
- *
- * Created on: 12.07.2026
- * Author: FSmilari
- */
-
- #ifndef TIMERMANAGER_H_
- #define TIMERMANAGER_H_
-
- #include "ConfigManager.h"
- #include "NTPClient.h"
- #include <WiFiUdp.h>
-
- class TimerManager {
-
- public:
- TimerManager(ConfigManager &configManager);
- virtual ~TimerManager();
-
- void begin();
- void onTimerIntervalChange(String timerIntervalName, const char *timerInterval);
- void saveTimerInterval(String timerIntervalName, uint32_t start, uint32_t end);
- bool isNowInTimeInterval();
-
- private:
- ConfigManager &configManager;
- NTPClient ntpClient;
-
- uint32_t timeToSeconds(uint8_t hour, uint8_t minute, uint8_t second);
- bool parseTimeInterval(const char *str, TimeInterval &interval);
- bool isDST(int month, int day, int weekday);
- bool isInInterval(uint32_t now, const TimeInterval &interval);
- String secondsToFormatedTime(uint32_t seconds);
- };
-
- #endif /* TIMERMANAGER_H_ */
|