#ifndef LUAT_MQTT_H #define LUAT_MQTT_H #include "luat_network_adapter.h" /** * @defgroup luatos_MQTT MQTT相关接口 * @{ */ #define MQTT_MSG_RELEASE 0 /**< mqtt 释放资源前回调消息 */ #define MQTT_MSG_TCP_TX_DONE 1 /**< mqtt tcp发送完成*/ #define MQTT_MSG_TIMER_PING 2 /**< mqtt ping前回调消息 */ #define MQTT_MSG_RECONNECT 3 /**< mqtt 重连前回调消息 */ #define MQTT_MSG_CLOSE 4 /**< mqtt 关闭回调消息(不会再重连) */ #define MQTT_ERROR_STATE_SOCKET -1 #define MQTT_ERROR_STATE_DISCONNECT -2 #ifndef MQTT_RECV_BUF_LEN_MAX #if defined(CHIP_EC618) || defined(CHIP_EC718)|| defined(CHIP_EC716) #define MQTT_RECV_BUF_LEN_MAX (32*1024) ///< MQTT 接收BUFF大小 #else #define MQTT_RECV_BUF_LEN_MAX 4096 ///< MQTT 接收BUFF大小 #endif #endif /** * @brief mqtt状态 */ typedef enum { MQTT_STATE_DISCONNECT , /**< mqtt 断开 */ MQTT_STATE_SCONNECT , /**< mqtt socket连接中 */ MQTT_STATE_MQTT , /**< mqtt socket已连接 mqtt连接中 */ MQTT_STATE_READY /**< mqtt mqtt已连接 */ }LUAT_MQTT_STATE_E; /** * @brief 设置MQTT客户端的配置参数 */ typedef struct{ mqtt_broker_handle_t broker;/**< mqtt broker*/ network_ctrl_t *netc; /**< mqtt netc*/ luat_ip_addr_t ip_addr; /**