MeterLogger
|
#include <esp8266.h>
#include <lwip/ip.h>
#include <lwip/udp.h>
#include <lwip/tcp_impl.h>
#include <netif/etharp.h>
#include <lwip/netif.h>
#include <lwip/lwip_napt.h>
#include <lwip/dns.h>
#include <lwip/app/dhcpserver.h>
#include <lwip/opt.h>
#include <espconn.h>
#include "mqtt_msg.h"
#include "debug.h"
#include "user_config.h"
#include "mqtt.h"
#include "mqtt_utils.h"
#include "queue.h"
Go to the source code of this file.
Macros | |
#define | MQTT_TASK_PRIO USER_TASK_PRIO_1 |
#define | MQTT_TASK_QUEUE_SIZE 100 |
#define | MQTT_SEND_TIMOUT 5 |
#define | QUEUE_BUFFER_SIZE 2048 |
Functions | |
LOCAL void ICACHE_FLASH_ATTR | mqtt_dns_found (const char *name, ip_addr_t *ipaddr, void *arg) |
LOCAL void ICACHE_FLASH_ATTR | deliver_publish (MQTT_Client *client, uint8_t *message, int length) |
void ICACHE_FLASH_ATTR | mqtt_send_keepalive (MQTT_Client *client) |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_delete (MQTT_Client *mqttClient) |
Delete tcp client and free all memory. More... | |
void ICACHE_FLASH_ATTR | mqtt_client_delete (MQTT_Client *mqttClient) |
Delete MQTT client and free all memory. More... | |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_recv (void *arg, char *pdata, unsigned short len) |
Client received callback function. More... | |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_sent_cb (void *arg) |
Client send over callback function. More... | |
void ICACHE_FLASH_ATTR | mqtt_timer (void *arg) |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_discon_cb (void *arg) |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_connect_cb (void *arg) |
Tcp client connect success callback function. More... | |
void ICACHE_FLASH_ATTR | mqtt_tcpclient_recon_cb (void *arg, sint8 errType) |
Tcp client connect repeat callback function. More... | |
BOOL ICACHE_FLASH_ATTR | MQTT_Publish (MQTT_Client *client, const char *topic, const char *data, int data_length, int qos, int retain) |
MQTT publish function. More... | |
BOOL ICACHE_FLASH_ATTR | MQTT_Subscribe (MQTT_Client *client, char *topic, uint8_t qos) |
MQTT subscibe function. More... | |
BOOL ICACHE_FLASH_ATTR | MQTT_UnSubscribe (MQTT_Client *client, char *topic) |
MQTT un-subscibe function. More... | |
BOOL ICACHE_FLASH_ATTR | MQTT_Ping (MQTT_Client *client) |
MQTT ping function. More... | |
void ICACHE_FLASH_ATTR | MQTT_Task (os_event_t *e) |
void ICACHE_FLASH_ATTR | MQTT_InitConnection (MQTT_Client *mqttClient, uint8_t *host, uint32_t port, uint8_t security) |
MQTT initialization connection function. More... | |
BOOL ICACHE_FLASH_ATTR | MQTT_InitClient (MQTT_Client *mqttClient, uint8_t *client_id, uint8_t *client_user, uint8_t *client_pass, uint32_t keepAliveTime, uint8_t cleanSession) |
MQTT initialization mqtt client function. More... | |
void ICACHE_FLASH_ATTR | MQTT_InitLWT (MQTT_Client *mqttClient, uint8_t *will_topic, uint8_t *will_msg, uint8_t will_qos, uint8_t will_retain) |
void ICACHE_FLASH_ATTR | MQTT_Connect (MQTT_Client *mqttClient) |
Begin connect to MQTT broker. More... | |
void ICACHE_FLASH_ATTR | MQTT_Disconnect (MQTT_Client *mqttClient) |
void ICACHE_FLASH_ATTR | MQTT_DeleteClient (MQTT_Client *mqttClient) |
void ICACHE_FLASH_ATTR | MQTT_OnConnected (MQTT_Client *mqttClient, MqttCallback connectedCb) |
void ICACHE_FLASH_ATTR | MQTT_OnDisconnected (MQTT_Client *mqttClient, MqttCallback disconnectedCb) |
void ICACHE_FLASH_ATTR | MQTT_OnData (MQTT_Client *mqttClient, MqttDataCallback dataCb) |
void ICACHE_FLASH_ATTR | MQTT_OnPublished (MQTT_Client *mqttClient, MqttCallback publishedCb) |
void ICACHE_FLASH_ATTR | MQTT_OnTimeout (MQTT_Client *mqttClient, MqttCallback timeoutCb) |
Variables | |
unsigned char * | default_certificate |
unsigned int | default_certificate_len = 0 |
unsigned char * | default_private_key |
unsigned int | default_private_key_len = 0 |
os_event_t | mqtt_procTaskQueue [MQTT_TASK_QUEUE_SIZE] |
#define MQTT_SEND_TIMOUT 5 |
Definition at line 58 of file mqtt.c.
Referenced by mqtt_send_keepalive(), MQTT_Task(), and mqtt_tcpclient_connect_cb().
#define MQTT_TASK_PRIO USER_TASK_PRIO_1 |
Definition at line 56 of file mqtt.c.
Referenced by MQTT_DeleteClient(), MQTT_Disconnect(), mqtt_dns_found(), MQTT_InitClient(), MQTT_Ping(), MQTT_Publish(), mqtt_send_keepalive(), MQTT_Subscribe(), mqtt_tcpclient_connect_cb(), mqtt_tcpclient_discon_cb(), mqtt_tcpclient_recon_cb(), mqtt_tcpclient_recv(), mqtt_tcpclient_sent_cb(), mqtt_timer(), and MQTT_UnSubscribe().
#define MQTT_TASK_QUEUE_SIZE 100 |
Definition at line 57 of file mqtt.c.
Referenced by MQTT_InitClient().
#define QUEUE_BUFFER_SIZE 2048 |
Definition at line 61 of file mqtt.c.
Referenced by MQTT_InitClient().
LOCAL void ICACHE_FLASH_ATTR deliver_publish | ( | MQTT_Client * | client, |
uint8_t * | message, | ||
int | length | ||
) |
Definition at line 119 of file mqtt.c.
References mqtt_event_data_t::data, mqtt_event_data_t::data_length, MQTT_Client::dataCb, ICACHE_FLASH_ATTR, mqtt_get_publish_data(), mqtt_get_publish_topic(), mqtt_event_data_t::topic, and mqtt_event_data_t::topic_length.
Referenced by mqtt_tcpclient_recv().
void ICACHE_FLASH_ATTR mqtt_client_delete | ( | MQTT_Client * | mqttClient | ) |
Delete MQTT client and free all memory.
mqttClient | The mqtt client |
None |
Definition at line 203 of file mqtt.c.
References QUEUE::buf, mqtt_connection::buffer, mqtt_connect_info::client_id, MQTT_Client::connect_info, MQTT_Client::connectedCb, MQTT_Client::connState, mqtt_message::data, MQTT_Client::dataCb, MQTT_Client::disconnectedCb, MQTT_Client::host, ICACHE_FLASH_ATTR, mqtt_state_t::in_buffer, INFO, mqtt_state_t::mqtt_connection, MQTT_Client::mqtt_state, mqtt_tcpclient_delete(), MQTT_Client::msgQueue, NULL, os_free, mqtt_state_t::out_buffer, mqtt_state_t::outbound_message, mqtt_connect_info::password, MQTT_Client::pCon, MQTT_Client::publishedCb, MQTT_Client::timeoutCb, MQTT_Client::user_data, mqtt_connect_info::username, WIFI_INIT, mqtt_connect_info::will_message, and mqtt_connect_info::will_topic.
Referenced by MQTT_Task().
void ICACHE_FLASH_ATTR MQTT_Connect | ( | MQTT_Client * | mqttClient | ) |
Begin connect to MQTT broker.
client | MQTT_Client reference |
None |
Definition at line 892 of file mqtt.c.
References MQTT_Client::connState, espconn_connect(), espconn_gethostbyname(), ESPCONN_KEEPALIVE, ESPCONN_KEEPCNT, ESPCONN_KEEPIDLE, ESPCONN_KEEPINTVL, ESPCONN_NONE, espconn_port(), espconn_regist_connectcb(), espconn_regist_reconcb(), espconn_secure_connect(), espconn_set_keepalive(), espconn_set_opt(), ESPCONN_TCP, MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, MQTT_Client::ip, MQTT_Client::keepAliveTick, _esp_tcp::local_port, mqtt_dns_found(), mqtt_tcpclient_connect_cb(), mqtt_tcpclient_delete(), mqtt_tcpclient_recon_cb(), mqtt_timer(), MQTT_Client::mqttTimer, os_timer_arm, os_timer_disarm, os_timer_func_t, os_timer_setfn, os_zalloc, MQTT_Client::pCon, MQTT_Client::port, espconn::proto, MQTT_Client::reconnectTick, _esp_tcp::remote_ip, _esp_tcp::remote_port, espconn::reverse, MQTT_Client::security, espconn::state, espconn::tcp, TCP_CONNECTING, espconn::type, and UTILS_StrToIP().
Referenced by MQTT_Task().
void ICACHE_FLASH_ATTR MQTT_DeleteClient | ( | MQTT_Client * | mqttClient | ) |
Definition at line 964 of file mqtt.c.
References MQTT_Client::connState, ICACHE_FLASH_ATTR, MQTT_DELETED, MQTT_TASK_PRIO, NULL, os_param_t, os_timer_disarm, and system_os_post().
void ICACHE_FLASH_ATTR MQTT_Disconnect | ( | MQTT_Client * | mqttClient | ) |
Definition at line 956 of file mqtt.c.
References MQTT_Client::connState, ICACHE_FLASH_ATTR, MQTT_TASK_PRIO, os_param_t, os_timer_disarm, system_os_post(), and TCP_DISCONNECTING.
LOCAL void ICACHE_FLASH_ATTR mqtt_dns_found | ( | const char * | name, |
ip_addr_t * | ipaddr, | ||
void * | arg | ||
) |
Definition at line 76 of file mqtt.c.
References MQTT_Client::connState, espconn_connect(), espconn_secure_connect(), ICACHE_FLASH_ATTR, INFO, MQTT_Client::ip, LOCAL, MQTT_TASK_PRIO, NULL, os_memcpy, os_param_t, MQTT_Client::pCon, espconn::proto, _esp_tcp::remote_ip, espconn::reverse, MQTT_Client::security, system_os_post(), espconn::tcp, TCP_CONNECTING, and TCP_RECONNECT_REQ.
Referenced by MQTT_Connect().
BOOL ICACHE_FLASH_ATTR MQTT_InitClient | ( | MQTT_Client * | mqttClient, |
uint8_t * | client_id, | ||
uint8_t * | client_user, | ||
uint8_t * | client_pass, | ||
uint32_t | keepAliveTime, | ||
uint8_t | cleanSession | ||
) |
MQTT initialization mqtt client function.
client | MQTT_Client reference |
clientid | MQTT client id |
client_user:MQTT | client user |
client_pass:MQTT | client password |
client_pass:MQTT | keep alive timer, in second |
None |
Definition at line 801 of file mqtt.c.
References mqtt_connect_info::clean_session, mqtt_connect_info::client_id, mqtt_state_t::connect_info, MQTT_Client::connect_info, ICACHE_FLASH_ATTR, mqtt_state_t::in_buffer, mqtt_state_t::in_buffer_length, INFO, mqtt_connect_info::keepalive, MQTT_BUF_SIZE, mqtt_state_t::mqtt_connection, mqtt_msg_init(), mqtt_procTaskQueue, MQTT_Client::mqtt_state, MQTT_Task(), MQTT_TASK_PRIO, MQTT_TASK_QUEUE_SIZE, MQTT_Client::msgQueue, os_memset, os_param_t, os_strcpy, os_strlen, os_zalloc, mqtt_state_t::out_buffer, mqtt_state_t::out_buffer_length, mqtt_connect_info::password, QUEUE_BUFFER_SIZE, QUEUE_Init(), system_os_post(), system_os_task(), and mqtt_connect_info::username.
void ICACHE_FLASH_ATTR MQTT_InitConnection | ( | MQTT_Client * | mqttClient, |
uint8_t * | host, | ||
uint32_t | port, | ||
uint8_t | security | ||
) |
MQTT initialization connection function.
client | MQTT_Client reference |
host | Domain or IP string |
port | Port to connect |
security | 1 for ssl, 0 for none |
None |
Definition at line 777 of file mqtt.c.
References BOOL, MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, os_memset, os_strcpy, os_strlen, os_zalloc, MQTT_Client::port, and MQTT_Client::security.
void ICACHE_FLASH_ATTR MQTT_InitLWT | ( | MQTT_Client * | mqttClient, |
uint8_t * | will_topic, | ||
uint8_t * | will_msg, | ||
uint8_t | will_qos, | ||
uint8_t | will_retain | ||
) |
Definition at line 869 of file mqtt.c.
References MQTT_Client::connect_info, ICACHE_FLASH_ATTR, os_strcpy, os_strlen, os_zalloc, mqtt_connect_info::will_message, mqtt_connect_info::will_qos, mqtt_connect_info::will_retain, and mqtt_connect_info::will_topic.
void ICACHE_FLASH_ATTR MQTT_OnConnected | ( | MQTT_Client * | mqttClient, |
MqttCallback | connectedCb | ||
) |
void ICACHE_FLASH_ATTR MQTT_OnData | ( | MQTT_Client * | mqttClient, |
MqttDataCallback | dataCb | ||
) |
void ICACHE_FLASH_ATTR MQTT_OnDisconnected | ( | MQTT_Client * | mqttClient, |
MqttCallback | disconnectedCb | ||
) |
Definition at line 987 of file mqtt.c.
References MQTT_Client::disconnectedCb, and ICACHE_FLASH_ATTR.
void ICACHE_FLASH_ATTR MQTT_OnPublished | ( | MQTT_Client * | mqttClient, |
MqttCallback | publishedCb | ||
) |
void ICACHE_FLASH_ATTR MQTT_OnTimeout | ( | MQTT_Client * | mqttClient, |
MqttCallback | timeoutCb | ||
) |
BOOL ICACHE_FLASH_ATTR MQTT_Ping | ( | MQTT_Client * | client | ) |
MQTT ping function.
client | MQTT_Client reference |
TRUE | if success queue |
Definition at line 675 of file mqtt.c.
References mqtt_message::data, FALSE, RINGBUF::fill_cnt, ICACHE_FLASH_ATTR, INFO, mqtt_message::length, MQTT_BUF_SIZE, mqtt_state_t::mqtt_connection, mqtt_msg_pingreq(), MQTT_Client::mqtt_state, MQTT_TASK_PRIO, MQTT_Client::msgQueue, os_param_t, mqtt_state_t::outbound_message, QUEUE_Gets(), QUEUE_Puts(), QUEUE::rb, RINGBUF::size, system_os_post(), and TRUE.
BOOL ICACHE_FLASH_ATTR MQTT_Publish | ( | MQTT_Client * | client, |
const char * | topic, | ||
const char * | data, | ||
int | data_length, | ||
int | qos, | ||
int | retain | ||
) |
MQTT publish function.
client | MQTT_Client reference |
topic | string topic will publish to |
data | buffer data send point to |
data_length | length of data |
qos | qos |
retain | retain |
TRUE | if success queue |
Definition at line 591 of file mqtt.c.
References BOOL, mqtt_message::data, FALSE, RINGBUF::fill_cnt, ICACHE_FLASH_ATTR, INFO, mqtt_message::length, MQTT_BUF_SIZE, mqtt_state_t::mqtt_connection, mqtt_msg_publish(), MQTT_Client::mqtt_state, MQTT_TASK_PRIO, MQTT_Client::msgQueue, os_param_t, mqtt_state_t::outbound_message, mqtt_state_t::pending_msg_id, QUEUE_Gets(), QUEUE_Puts(), QUEUE::rb, RINGBUF::size, system_os_post(), and TRUE.
Referenced by en61107_received_task(), en61107_request_send(), kmp_received_task(), and kmp_request_send().
void ICACHE_FLASH_ATTR mqtt_send_keepalive | ( | MQTT_Client * | client | ) |
Definition at line 134 of file mqtt.c.
References MQTT_Client::connState, mqtt_message::data, ESPCONN_OK, espconn_secure_send(), espconn_send(), ESPCONN_WRITE, MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, MQTT_Client::keepAliveTick, mqtt_message::length, mqtt_state_t::mqtt_connection, MQTT_DATA, mqtt_get_id(), mqtt_get_type(), mqtt_msg_pingreq(), MQTT_MSG_TYPE_PINGREQ, MQTT_SEND_TIMOUT, MQTT_Client::mqtt_state, MQTT_TASK_PRIO, NULL, os_param_t, mqtt_state_t::outbound_message, MQTT_Client::pCon, mqtt_state_t::pending_msg_id, mqtt_state_t::pending_msg_type, MQTT_Client::port, MQTT_Client::security, MQTT_Client::sendTimeout, espconn::state, system_os_post(), and TCP_RECONNECT_DISCONNECTING.
Referenced by MQTT_Task().
BOOL ICACHE_FLASH_ATTR MQTT_Subscribe | ( | MQTT_Client * | client, |
char * | topic, | ||
uint8_t | qos | ||
) |
MQTT subscibe function.
client | MQTT_Client reference |
topic | string topic will subscribe |
qos | qos |
TRUE | if success queue |
Definition at line 623 of file mqtt.c.
References BOOL, mqtt_message::data, FALSE, ICACHE_FLASH_ATTR, INFO, mqtt_message::length, MQTT_BUF_SIZE, mqtt_state_t::mqtt_connection, mqtt_msg_subscribe(), MQTT_Client::mqtt_state, MQTT_TASK_PRIO, MQTT_Client::msgQueue, os_param_t, mqtt_state_t::outbound_message, mqtt_state_t::pending_msg_id, QUEUE_Gets(), QUEUE_Puts(), system_os_post(), and TRUE.
void ICACHE_FLASH_ATTR MQTT_Task | ( | os_event_t * | e | ) |
Definition at line 697 of file mqtt.c.
References MQTT_Client::connState, espconn_disconnect(), espconn_secure_disconnect(), espconn_secure_send(), espconn_send(), MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, MQTT_BUF_SIZE, mqtt_client_delete(), MQTT_Connect(), MQTT_DATA, MQTT_DELETED, MQTT_DELETING, mqtt_get_id(), mqtt_get_type(), MQTT_KEEPALIVE_SEND, mqtt_send_keepalive(), MQTT_SEND_TIMOUT, MQTT_Client::mqtt_state, mqtt_tcpclient_delete(), MQTT_Client::msgQueue, NULL, mqtt_state_t::outbound_message, MQTT_Client::pCon, mqtt_state_t::pending_msg_id, mqtt_state_t::pending_msg_type, MQTT_Client::port, QUEUE_Gets(), QUEUE_IsEmpty(), MQTT_Client::security, MQTT_Client::sendTimeout, TCP_CONNECTING, TCP_DISCONNECTED, TCP_DISCONNECTING, TCP_RECONNECT, TCP_RECONNECT_DISCONNECTING, and TCP_RECONNECT_REQ.
Referenced by MQTT_InitClient().
void ICACHE_FLASH_ATTR mqtt_tcpclient_connect_cb | ( | void * | arg | ) |
Tcp client connect success callback function.
arg | contain the ip link information |
None |
Definition at line 527 of file mqtt.c.
References mqtt_state_t::connect_info, MQTT_Client::connState, mqtt_message::data, espconn_regist_disconcb(), espconn_regist_recvcb(), espconn_regist_sentcb(), espconn_secure_send(), espconn_send(), MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, mqtt_message::length, MQTT_CONNECT_SENDING, mqtt_state_t::mqtt_connection, mqtt_get_id(), mqtt_get_type(), mqtt_msg_connect(), mqtt_msg_init(), MQTT_SEND_TIMOUT, MQTT_Client::mqtt_state, MQTT_TASK_PRIO, mqtt_tcpclient_discon_cb(), mqtt_tcpclient_recv(), mqtt_tcpclient_sent_cb(), NULL, os_param_t, mqtt_state_t::out_buffer, mqtt_state_t::out_buffer_length, mqtt_state_t::outbound_message, MQTT_Client::pCon, mqtt_state_t::pending_msg_id, mqtt_state_t::pending_msg_type, MQTT_Client::port, espconn::reverse, MQTT_Client::security, MQTT_Client::sendTimeout, and system_os_post().
Referenced by MQTT_Connect().
void ICACHE_FLASH_ATTR mqtt_tcpclient_delete | ( | MQTT_Client * | mqttClient | ) |
Delete tcp client and free all memory.
mqttClient | The mqtt client which contain TCP client |
None |
Definition at line 179 of file mqtt.c.
References espconn_abort(), espconn_delete(), ICACHE_FLASH_ATTR, INFO, NULL, os_free, MQTT_Client::pCon, espconn::proto, and espconn::tcp.
Referenced by mqtt_client_delete(), MQTT_Connect(), and MQTT_Task().
void ICACHE_FLASH_ATTR mqtt_tcpclient_discon_cb | ( | void * | arg | ) |
Definition at line 498 of file mqtt.c.
References MQTT_Client::connState, MQTT_Client::disconnectedCb, ICACHE_FLASH_ATTR, INFO, MQTT_DELETED, MQTT_DELETING, MQTT_TASK_PRIO, os_param_t, espconn::reverse, system_os_post(), TCP_DISCONNECTED, TCP_DISCONNECTING, and TCP_RECONNECT_REQ.
Referenced by mqtt_tcpclient_connect_cb().
void ICACHE_FLASH_ATTR mqtt_tcpclient_recon_cb | ( | void * | arg, |
sint8 | errType | ||
) |
Tcp client connect repeat callback function.
arg | contain the ip link information |
None |
Definition at line 567 of file mqtt.c.
References BOOL, MQTT_Client::connState, MQTT_Client::host, ICACHE_FLASH_ATTR, INFO, MQTT_TASK_PRIO, os_param_t, MQTT_Client::port, espconn::reverse, system_os_post(), and TCP_RECONNECT_REQ.
Referenced by MQTT_Connect().
void ICACHE_FLASH_ATTR mqtt_tcpclient_recv | ( | void * | arg, |
char * | pdata, | ||
unsigned short | len | ||
) |
Client received callback function.
arg | contain the ip link information |
pdata | received data |
len | the lenght of received data |
None |
Definition at line 296 of file mqtt.c.
References MQTT_Client::connectedCb, CONNECTION_ACCEPTED, CONNECTION_REFUSE_BAD_USERNAME, CONNECTION_REFUSE_NOT_AUTHORIZED, CONNECTION_REFUSE_PROTOCOL, CONNECTION_REFUSE_SERVER_UNAVAILABLE, MQTT_Client::connState, mqtt_message::data, deliver_publish(), espconn_disconnect(), espconn_secure_disconnect(), MQTT_Client::host, ICACHE_FLASH_ATTR, mqtt_state_t::in_buffer, mqtt_state_t::in_buffer_length, INFO, MQTT_Client::keepAliveTick, mqtt_message::length, mqtt_state_t::message_length, mqtt_state_t::message_length_read, MQTT_CONNECT_SENDING, mqtt_state_t::mqtt_connection, MQTT_DATA, mqtt_get_connect_return_code(), mqtt_get_id(), mqtt_get_qos(), mqtt_get_total_length(), mqtt_get_type(), MQTT_KEEPALIVE_SEND, mqtt_msg_pingresp(), mqtt_msg_puback(), mqtt_msg_pubcomp(), mqtt_msg_pubrec(), mqtt_msg_pubrel(), MQTT_MSG_TYPE_CONNACK, MQTT_MSG_TYPE_CONNECT, MQTT_MSG_TYPE_PINGREQ, MQTT_MSG_TYPE_PINGRESP, MQTT_MSG_TYPE_PUBACK, MQTT_MSG_TYPE_PUBCOMP, MQTT_MSG_TYPE_PUBLISH, MQTT_MSG_TYPE_PUBREC, MQTT_MSG_TYPE_PUBREL, MQTT_MSG_TYPE_SUBACK, MQTT_MSG_TYPE_SUBSCRIBE, MQTT_MSG_TYPE_UNSUBACK, MQTT_MSG_TYPE_UNSUBSCRIBE, MQTT_Client::mqtt_state, MQTT_TASK_PRIO, MQTT_Client::msgQueue, os_memcpy, os_param_t, mqtt_state_t::outbound_message, MQTT_Client::pCon, mqtt_state_t::pending_msg_id, mqtt_state_t::pending_msg_type, MQTT_Client::port, QUEUE_Puts(), espconn::reverse, MQTT_Client::security, and system_os_post().
Referenced by mqtt_tcpclient_connect_cb().
void ICACHE_FLASH_ATTR mqtt_tcpclient_sent_cb | ( | void * | arg | ) |
Client send over callback function.
arg | contain the ip link information |
None |
Definition at line 456 of file mqtt.c.
References MQTT_Client::connState, INFO, MQTT_Client::keepAliveTick, MQTT_DATA, MQTT_KEEPALIVE_SEND, MQTT_MSG_TYPE_PUBLISH, MQTT_Client::mqtt_state, MQTT_TASK_PRIO, os_param_t, mqtt_state_t::pending_msg_type, MQTT_Client::publishedCb, espconn::reverse, MQTT_Client::sendTimeout, and system_os_post().
Referenced by mqtt_tcpclient_connect_cb().
void ICACHE_FLASH_ATTR mqtt_timer | ( | void * | arg | ) |
Definition at line 472 of file mqtt.c.
References mqtt_state_t::connect_info, MQTT_Client::connState, ICACHE_FLASH_ATTR, mqtt_connect_info::keepalive, MQTT_Client::keepAliveTick, MQTT_DATA, MQTT_KEEPALIVE_SEND, MQTT_RECONNECT_TIMEOUT, MQTT_Client::mqtt_state, MQTT_TASK_PRIO, os_param_t, MQTT_Client::reconnectTick, MQTT_Client::sendTimeout, system_os_post(), TCP_RECONNECT, and TCP_RECONNECT_REQ.
Referenced by MQTT_Connect().
BOOL ICACHE_FLASH_ATTR MQTT_UnSubscribe | ( | MQTT_Client * | client, |
char * | topic | ||
) |
MQTT un-subscibe function.
client | MQTT_Client reference |
topic | String topic will un-subscribe |
TRUE | if success queue |
Definition at line 650 of file mqtt.c.
References BOOL, mqtt_message::data, FALSE, ICACHE_FLASH_ATTR, INFO, mqtt_message::length, MQTT_BUF_SIZE, mqtt_state_t::mqtt_connection, mqtt_msg_unsubscribe(), MQTT_Client::mqtt_state, MQTT_TASK_PRIO, MQTT_Client::msgQueue, os_param_t, mqtt_state_t::outbound_message, mqtt_state_t::pending_msg_id, QUEUE_Gets(), QUEUE_Puts(), system_os_post(), and TRUE.
os_event_t mqtt_procTaskQueue[MQTT_TASK_QUEUE_SIZE] |
Definition at line 69 of file mqtt.c.
Referenced by MQTT_InitClient().