|
struct | M2MB_MQTT_OPEN_PARAMS |
| MQTT client Open parameters. More...
|
|
struct | M2MB_MQTT_CONN_PARAMS |
| MQTT connect parameters. More...
|
|
#define | M2MB_MQTT_MAX_SUBSCRIBE_TOPICS 32 |
|
enum | M2MB_MQTT_SUBSCRIBE_REASON_E {
M2MB_MQTT_SUBSCRIPTION_DENIED = 0,
M2MB_MQTT_SUBSCRIPTION_GRANTED,
M2MB_MQTT_SUBSCRIPTION_MSG
} |
| MQTT client subscribe reason. More...
|
|
enum | M2MB_MQTT_CONNECT_STATUS {
M2MB_MQTT_CONNECT_STATUS_UNKNOWN = -1,
M2MB_MQTT_CONNECT_STATUS_ACCEPTED = 0,
M2MB_MQTT_CONNECT_STATUS_REFUSED_PROTOCOL_VERSION = 1,
M2MB_MQTT_CONNECT_STATUS_REFUSED_IDENTIFIER = 2,
M2MB_MQTT_CONNECT_STATUS_REFUSED_SERVER = 3,
M2MB_MQTT_CONNECT_STATUS_REFUSED_USERNAME_PASS = 4,
M2MB_MQTT_CONNECT_STATUS_REFUSED_NOT_AUTHORIZED_ = 5,
M2MB_MQTT_CONNECT_STATUS_DISCONNECTED = 256,
M2MB_MQTT_CONNECT_STATUS_TIMEOUT = 257
} |
|
typedef VOID * | M2MB_MQTT_CTXT_HANDLE |
| MQTT context handle.
This is obtained from m2mb_mqtt_open API and then used in subsequent MQTT APIs. More...
|
|
typedef enum M2MB_MQTT_SUBSCRIBE_REASON_E | M2MB_MQTT_SUBSCRIBE_REASON_E |
| MQTT client subscribe reason. More...
|
|
typedef enum M2MB_MQTT_CONNECT_STATUS | M2MB_MQTT_CONNECT_STATUS_E |
|
typedef VOID(* | M2MB_MQTT_CONNECT_CB_T) (M2MB_MQTT_CTXT_HANDLE handle, INT32 status) |
| User registered callback for MQTT connection status, registered during m2mb_mqtt_connect call. More...
|
|
typedef VOID(* | M2MB_MQTT_MSG_HNDLR_CB_T) (M2MB_MQTT_CTXT_HANDLE handle, void *arg, INT32 reason, const UINT8 *topic, UINT16 topic_Length, const UINT8 *msg, UINT32 msg_Length, UINT32 QOS) |
| User registered callback for incoming messages for subscribed topics. More...
|
|
typedef struct M2MB_MQTT_OPEN_PARAMS | M2MB_MQTT_OPEN_PARAMS_T |
| MQTT client Open parameters. More...
|
|
typedef struct M2MB_MQTT_CONN_PARAMS | M2MB_MQTT_CONN_PARAMS_T |
| MQTT connect parameters. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_init (VOID) |
| initializes MQTT module. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_deinit (VOID) |
| deinitializes MQTT module. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_open (M2MB_MQTT_CTXT_HANDLE *handle, M2MB_MQTT_OPEN_PARAMS_T *p_open_params) |
| Creates MQTT instance for the MQTT client. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_close (M2MB_MQTT_CTXT_HANDLE mqtt_handle) |
| closes MQTT instance. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_connect (M2MB_MQTT_CTXT_HANDLE mqtt_handle, M2MB_MQTT_CONN_PARAMS_T *p_conn_params) |
| performs MQTT connection to the server. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_disconnect (M2MB_MQTT_CTXT_HANDLE mqtt_handle) |
| Disconnect from the server(broker). More...
|
|
M2MB_STATUS_T | m2mb_mqtt_publish (M2MB_MQTT_CTXT_HANDLE mqtt_handle, INT32 qos, INT32 retain, UINT16 message_id, const UINT8 *topic, const UINT8 *data, INT32 data_len) |
| Publishes a message on a given topic. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_subscribe (M2MB_MQTT_CTXT_HANDLE mqtt_handle, UINT16 msg_id, const UINT8 *topic, INT32 qos, M2MB_MQTT_MSG_HNDLR_CB_T cbk, VOID *cbk_arg) |
| m2mb_mqtt_subscribe is called to Subscribe. More...
|
|
M2MB_STATUS_T | m2mb_mqtt_unsubscribe (M2MB_MQTT_CTXT_HANDLE mqtt_handle, UINT16 msg_id, const UINT8 *topic) |
| unsubscribe to a perticular topic. More...
|
|
MQTT (Message Queuing Telemetry Transport) Client service.
epl/inc/nwk/m2mb_mqtt.h
The MQTT (Message Queuing Telemetry Transport) Client service provides a collection of APIs that allow the application to implement client functionalities, such as CONNECT, SUBSCRIBE, UNSUBSCRIBE, PUBLISH, DISCONNECT, and so on.
MQTT support only client.
sequence of APIs to call:
- First to allocate resources for MQTT module by calling m2mb_mqtt_init.
To connect to a server, use the following API sequence:
create MQTT client instance by calling m2mb_mqtt_open.
- connect to server by calling m2mb_mqtt_connect. To subscribe/unsubscribe to a Topic:
- subscribe to a topic by calling m2mb_mqtt_subscribe.
- unsubscribe to a topic by calling m2mb_mqtt_unsubscribe.
To publish a message:
- publish a message by calling m2mb_mqtt_publish.
To disconnect to a server:
- disconnect to server by calling m2mb_mqtt_disconnect.
- free the MQTT client instance(created with m2mb_mqtt_open) by calling m2mb_mqtt_close.
- Note
- Dependencies: "#include <m2mb_types.h>"
"#include <m2mb_status.h>"
- Author
- prasadreddy peravali
- Date
- 16/03/2018
Definition in file m2mb_mqtt.h.