CommsChampion Ecosystem MQTT v3.1.1 Client
MQTT v3.1.1 Client Library.
Classes | Macros | Typedefs | Enumerations
common.h File Reference

Common definition for MQTT-SN clients. More...

#include <stdbool.h>

Go to the source code of this file.

Classes

struct  CC_Mqtt311ConnectConfig
 Configuration structure to be passed to the cc_mqtt311_client_connect_config(). More...
 
struct  CC_Mqtt311ConnectResponse
 Response information from broker to "connect" request. More...
 
struct  CC_Mqtt311ConnectWillConfig
 Configuration structure to be passed to the cc_mqtt311_client_connect_config_will(). More...
 
struct  CC_Mqtt311MessageInfo
 Received message information. More...
 
struct  CC_Mqtt311PublishConfig
 Configuration structure to be passed to the cc_mqtt311_client_publish_config(). More...
 
struct  CC_Mqtt311SubscribeResponse
 Response information from broker to "subscribe" request. More...
 
struct  CC_Mqtt311SubscribeTopicConfig
 Topic filter configuration structure of the "subscribe" operation. More...
 
struct  CC_Mqtt311UnsubscribeTopicConfig
 Topic filter configuration structure of the "unsubscribe" operation. More...
 

Macros

#define CC_MQTT311_CLIENT_MAJOR_VERSION   1U
 Major verion of the library.
 
#define CC_MQTT311_CLIENT_MAKE_VERSION(major_, minor_, patch_)
 Macro to create numeric version as single unsigned number.
 
#define CC_MQTT311_CLIENT_MINOR_VERSION   0U
 Minor verion of the library.
 
#define CC_MQTT311_CLIENT_PATCH_VERSION   0U
 Patch level of the library.
 
#define CC_MQTT311_CLIENT_VERSION   CC_MQTT311_CLIENT_MAKE_VERSION(CC_MQTT311_CLIENT_MAJOR_VERSION, CC_MQTT311_CLIENT_MINOR_VERSION, CC_MQTT311_CLIENT_PATCH_VERSION)
 Version of the library as single numeric value.
 

Typedefs

typedef void(* CC_Mqtt311BrokerDisconnectReportCb) (void *data, CC_Mqtt311BrokerDisconnectReason reason)
 Callback used to report unsolicited disconnection of the broker. More...
 
typedef unsigned(* CC_Mqtt311CancelNextTickWaitCb) (void *data)
 Callback used to request termination of existing time measurement. More...
 
typedef struct CC_Mqtt311Client * CC_Mqtt311ClientHandle
 Handle used to access client specific data structures. More...
 
typedef void(* CC_Mqtt311ConnectCompleteCb) (void *data, CC_Mqtt311AsyncOpStatus status, const CC_Mqtt311ConnectResponse *response)
 Callback used to report completion of the "connect" operation. More...
 
typedef struct CC_Mqtt311Connect * CC_Mqtt311ConnectHandle
 Handle for "connect" operation. More...
 
typedef struct CC_Mqtt311Disconnect * CC_Mqtt311DisconnectHandle
 Handle for "disconnect" operation. More...
 
typedef void(* CC_Mqtt311ErrorLogCb) (void *data, const char *msg)
 Callback used to report discovered errors. More...
 
typedef void(* CC_Mqtt311MessageReceivedReportCb) (void *data, const CC_Mqtt311MessageInfo *info)
 Callback used to report new message received of the broker. More...
 
typedef void(* CC_Mqtt311NextTickProgramCb) (void *data, unsigned duration)
 Callback used to request time measurement. More...
 
typedef void(* CC_Mqtt311PublishCompleteCb) (void *data, CC_Mqtt311PublishHandle handle, CC_Mqtt311AsyncOpStatus status)
 Callback used to report completion of the "publish" operation. More...
 
typedef struct CC_Mqtt311Publish * CC_Mqtt311PublishHandle
 Handle for "publish" operation. More...
 
typedef void(* CC_Mqtt311SendOutputDataCb) (void *data, const unsigned char *buf, unsigned bufLen)
 Callback used to request to send data to the broker. More...
 
typedef void(* CC_Mqtt311SubscribeCompleteCb) (void *data, CC_Mqtt311SubscribeHandle handle, CC_Mqtt311AsyncOpStatus status, const CC_Mqtt311SubscribeResponse *response)
 Callback used to report completion of the "subscribe" operation. More...
 
typedef struct CC_Mqtt311Subscribe * CC_Mqtt311SubscribeHandle
 Handle for "subscribe" operation. More...
 
typedef void(* CC_Mqtt311UnsubscribeCompleteCb) (void *data, CC_Mqtt311UnsubscribeHandle handle, CC_Mqtt311AsyncOpStatus status)
 Callback used to report completion of the "unsubscribe" operation. More...
 
typedef struct CC_Mqtt311Unsubscribe * CC_Mqtt311UnsubscribeHandle
 Handle for "unsubscribe" operation. More...
 

Enumerations

enum  CC_Mqtt311AsyncOpStatus {
  CC_Mqtt311AsyncOpStatus_Complete = 0 , CC_Mqtt311AsyncOpStatus_InternalError = 1 , CC_Mqtt311AsyncOpStatus_Timeout = 2 , CC_Mqtt311AsyncOpStatus_ProtocolError = 3 ,
  CC_Mqtt311AsyncOpStatus_Aborted = 4 , CC_Mqtt311AsyncOpStatus_BrokerDisconnected = 5 , CC_Mqtt311AsyncOpStatus_OutOfMemory = 6 , CC_Mqtt311AsyncOpStatus_BadParam = 7 ,
  CC_Mqtt311AsyncOpStatus_ValuesLimit
}
 Status of the asynchronous operation. More...
 
enum  CC_Mqtt311BrokerDisconnectReason { CC_Mqtt311BrokerDisconnectReason_NoBrokerResponse = 0 , CC_Mqtt311BrokerDisconnectReason_InternalError = 1 , CC_Mqtt311BrokerDisconnectReason_ProtocolError = 2 , CC_Mqtt311BrokerDisconnectReason_ValuesLimit }
 Reason for reporting unsolicited broker disconnection. More...
 
enum  CC_Mqtt311ConnectReturnCode {
  CC_Mqtt311ConnectReturnCode_Accepted = 0 , CC_Mqtt311ConnectReturnCode_InvalidProtocolVersion = 1 , CC_Mqtt311ConnectReturnCode_IdRejected = 2 , CC_Mqtt311ConnectReturnCode_ServerUnavailable = 3 ,
  CC_Mqtt311ConnectReturnCode_BadAuth = 4 , CC_Mqtt311ConnectReturnCode_NotAuthorized = 5 , CC_Mqtt311ConnectReturnCode_ValuesLimit
}
 "Connect Return Code" as defined in MQTT v3.1.1 specification More...
 
enum  CC_Mqtt311ErrorCode {
  CC_Mqtt311ErrorCode_Success = 0 , CC_Mqtt311ErrorCode_InternalError = 1 , CC_Mqtt311ErrorCode_NotIntitialized = 2 , CC_Mqtt311ErrorCode_Busy = 3 ,
  CC_Mqtt311ErrorCode_NotConnected = 4 , CC_Mqtt311ErrorCode_AlreadyConnected = 5 , CC_Mqtt311ErrorCode_BadParam = 6 , CC_Mqtt311ErrorCode_InsufficientConfig = 7 ,
  CC_Mqtt311ErrorCode_OutOfMemory = 8 , CC_Mqtt311ErrorCode_BufferOverflow = 9 , CC_Mqtt311ErrorCode_NotSupported = 10 , CC_Mqtt311ErrorCode_RetryLater = 11 ,
  CC_Mqtt311ErrorCode_Disconnecting = 12 , CC_Mqtt311ErrorCode_NetworkDisconnected = 13 , CC_Mqtt311ErrorCode_PreparationLocked = 14 , CC_Mqtt311ErrorCode_ValuesLimit
}
 Error code returned by various API functions. More...
 
enum  CC_Mqtt311PublishOrdering { CC_Mqtt311PublishOrdering_SameQos , CC_Mqtt311PublishOrdering_Full , CC_Mqtt311PublishOrdering_ValuesLimit }
 Publish ordering configuration. More...
 
enum  CC_Mqtt311QoS { CC_Mqtt311QoS_AtMostOnceDelivery = 0 , CC_Mqtt311QoS_AtLeastOnceDelivery = 1 , CC_Mqtt311QoS_ExactlyOnceDelivery = 2 , CC_Mqtt311QoS_ValuesLimit }
 Quality of Service. More...
 
enum  CC_Mqtt311SubscribeReturnCode { CC_Mqtt311SubscribeReturnCode_SuccessQos0 = 0x00 , CC_Mqtt311SubscribeReturnCode_SuccessQos1 = 0x01 , CC_Mqtt311SubscribeReturnCode_SuccessQos2 = 0x02 , CC_Mqtt311SubscribeReturnCode_Failure = 0x80 }
 "Subscribe Return Code" as defined in MQTT v3.1.1 specification More...
 

Detailed Description

Common definition for MQTT-SN clients.