#include "mqtt_client.h" #include "esp_log.h" #include "OFFLINE_STORAGE.h" void mqtt_app_start(void); int mqtt_publish_message(const char* topic, const char* data, int len, int qos, int retain); /** * @brief 启动设备状态上报任务 * * @param report_interval_ms 上报间隔(毫秒) * @return pdTRUE 成功, pdFALSE 失败 */ BaseType_t mqtt_start_device_status_task(uint32_t report_interval_ms); /** * @brief 停止设备状态上报任务 */ void mqtt_stop_device_status_task(void); /** * @brief 更新设备状态上报间隔 * * @param report_interval_ms 新的上报间隔(毫秒) */ void mqtt_update_report_interval(uint32_t report_interval_ms); /** * @brief 存储离线数据(网络离线时使用) * * @param data 数据内容 * @param length 数据长度 * @param data_type 数据类型 * @return ESP_OK 成功 * ESP_FAIL 失败 */ esp_err_t mqtt_store_offline(const char *data, size_t length, offline_data_type_t data_type); /** * @brief 启动离线数据补传任务 * * @return pdTRUE 成功, pdFALSE 失败 */ BaseType_t mqtt_start_offline_upload_task(void); /** * @brief 停止离线数据补传任务 */ void mqtt_stop_offline_upload_task(void);