#ifndef _OTA_H #define _OTA_H #include #include #include #include class Ota { public: Ota() = default; ~Ota() = default; void SetCheckVersionUrl(std::string check_version_url) { check_version_url_ = std::move(check_version_url); } void SetHeader(const std::string& key, const std::string& value) { headers_[key] = value; } void SetPostData(const std::string& post_data) { post_data_ = post_data; } bool CheckVersion() { return false; } bool HasNewVersion() { return false; } bool HasMqttConfig() { return false; } bool HasActivationCode() { return false; } bool HasServerTime() { return false; } void StartUpgrade(std::function callback) {} void MarkCurrentVersionValid() {} const std::string& GetFirmwareVersion() const { return firmware_version_; } const std::string& GetCurrentVersion() const { return current_version_; } const std::string& GetActivationMessage() const { return activation_message_; } const std::string& GetActivationCode() const { return activation_code_; } private: std::string check_version_url_; std::string activation_message_; std::string activation_code_; bool has_new_version_ = false; bool has_mqtt_config_ = false; bool has_server_time_ = false; bool has_activation_code_ = false; std::string current_version_; std::string firmware_version_; std::string firmware_url_; std::string post_data_; std::map headers_; }; #endif // _OTA_H