mirror of
				https://github.com/espressif/esp-mqtt.git
				synced 2025-11-04 00:52:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
 | 
						|
 *
 | 
						|
 * SPDX-License-Identifier: Apache-2.0
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _MQTT5_CLIENT_PRIV_H_
 | 
						|
#define _MQTT5_CLIENT_PRIV_H_
 | 
						|
 | 
						|
#include "mqtt5_client.h"
 | 
						|
#include "mqtt_client_priv.h"
 | 
						|
#include "mqtt5_msg.h"
 | 
						|
 | 
						|
#ifdef __cplusplus
 | 
						|
extern "C" {
 | 
						|
#endif
 | 
						|
 | 
						|
typedef struct mqtt5_topic_alias {
 | 
						|
    char *topic;
 | 
						|
    uint16_t topic_len;
 | 
						|
    uint16_t topic_alias;
 | 
						|
    STAILQ_ENTRY(mqtt5_topic_alias) next;
 | 
						|
} mqtt5_topic_alias_t;
 | 
						|
STAILQ_HEAD(mqtt5_topic_alias_list_t, mqtt5_topic_alias);
 | 
						|
typedef struct mqtt5_topic_alias_list_t *mqtt5_topic_alias_handle_t;
 | 
						|
typedef struct mqtt5_topic_alias *mqtt5_topic_alias_item_t;
 | 
						|
 | 
						|
typedef struct {
 | 
						|
    esp_mqtt5_connection_property_storage_t connect_property_info;
 | 
						|
    esp_mqtt5_connection_will_property_storage_t will_property_info;
 | 
						|
    esp_mqtt5_connection_server_resp_property_t server_resp_property_info;
 | 
						|
    esp_mqtt5_disconnect_property_config_t disconnect_property_info;
 | 
						|
    const esp_mqtt5_publish_property_config_t *publish_property_info;
 | 
						|
    const esp_mqtt5_subscribe_property_config_t *subscribe_property_info;
 | 
						|
    const esp_mqtt5_unsubscribe_property_config_t *unsubscribe_property_info;
 | 
						|
    mqtt5_topic_alias_handle_t peer_topic_alias;
 | 
						|
} mqtt5_config_storage_t;
 | 
						|
 | 
						|
void esp_mqtt5_increment_packet_counter(esp_mqtt5_client_handle_t client);
 | 
						|
void esp_mqtt5_decrement_packet_counter(esp_mqtt5_client_handle_t client);
 | 
						|
void esp_mqtt5_parse_pubcomp(esp_mqtt5_client_handle_t client);
 | 
						|
void esp_mqtt5_parse_puback(esp_mqtt5_client_handle_t client);
 | 
						|
void esp_mqtt5_parse_unsuback(esp_mqtt5_client_handle_t client);
 | 
						|
void esp_mqtt5_parse_suback(esp_mqtt5_client_handle_t client);
 | 
						|
esp_err_t esp_mqtt5_parse_connack(esp_mqtt5_client_handle_t client, int *connect_rsp_code);
 | 
						|
void esp_mqtt5_client_destory(esp_mqtt5_client_handle_t client);
 | 
						|
esp_err_t esp_mqtt5_client_publish_check(esp_mqtt5_client_handle_t client, int qos, int retain);
 | 
						|
esp_err_t esp_mqtt5_client_subscribe_check(esp_mqtt5_client_handle_t client, int qos);
 | 
						|
esp_err_t esp_mqtt5_create_default_config(esp_mqtt5_client_handle_t client);
 | 
						|
esp_err_t esp_mqtt5_get_publish_data(esp_mqtt5_client_handle_t client, uint8_t *msg_buf, size_t msg_read_len, char **msg_topic, size_t *msg_topic_len, char **msg_data, size_t *msg_data_len);
 | 
						|
#ifdef __cplusplus
 | 
						|
}
 | 
						|
#endif //__cplusplus
 | 
						|
 | 
						|
#endif |