#ifndef UPLOADMANAGER_H #define UPLOADMANAGER_H #include #include #include #include "APIClient.h" #include "RTClib.h" #include "Measure.h" class UploadManager { public: UploadManager(APIClient& client, RTC_DS3231& rtc, DataCapture& capture); // Call this to upload a specific file immediately void uploadFile(const String& filePath); // Call this in the background when WiFi is connected void processPendingUploads(); private: APIClient& apiClient; RTC_DS3231& rtc_; DataCapture& capture_; bool isAlreadyUploaded(const String& filePath); void appendLog(const String& filePath, const String& status); String getCurrentTimestamp(); }; #endif