🌐
English
MQTT API#
Oasis supports MQTT for IoT communication and is developed in compliance with standard specifications.
Header File#
OasisIot.h
MqttClientEventDelegate Interface#
class MqttClientEventDelegate : public std::enable_shared_from_this<MqttClientEventDelegate>
{
public:
MqttClientEventDelegate();
virtual ~MqttClientEventDelegate();
virtual void onConnected(const MqttClientRef &client, const char *client_identifier, mqtt_reason_t reason_code);
virtual void onSubscribed(const MqttClientRef &client, uint32_t mid, const std::list<std::string> &topic_filters, const std::list<mqtt_reason_t> &reason_codes, mqtt_reason_t reason_code);
virtual void onUnsubscribed(const MqttClientRef &client, uint32_t mid, const std::list<std::string> &topic_filters, const std::list<mqtt_reason_t> &reason_codes, mqtt_reason_t reason_code);
virtual void onPublished(const MqttClientRef &client, uint32_t mid, mqtt_reason_t reason_code);
virtual void onDisconnected(const MqttClientRef &client, mqtt_reason_t reason_code);
virtual void onMessage(const MqttClientRef &client, const std::string &topic_name, const char *data, int32_t length);
virtual void onClosed(const MqttClientRef &client);
};
void
onConnected
(
const MqttClientRef &
client
,
const char *
client_identifier
,
mqtt_reason_t
reason_code
)
OasisIot.h
Parameters
client
client_identifier
reason_code
void
onSubscribed
(
const MqttClientRef &
client
,
uint32_t
mid
,
const std::list<std::string> &
topic_filters
,
const std::list<mqtt_reason_t> &
reason_codes
,
mqtt_reason_t
reason_code
)
OasisIot.h
Parameters
client
mid
topic_filters
reason_codes
reason_code
void
onUnsubscribed
(
const MqttClientRef &
client
,
uint32_t
mid
,
const std::list<std::string> &
topic_filters
,
const std::list<mqtt_reason_t> &
reason_codes
,
mqtt_reason_t
reason_code
)
OasisIot.h
Parameters
client
mid
topic_filters
reason_codes
reason_code
void
onPublished
(
const MqttClientRef &
client
,
uint32_t
mid
,
mqtt_reason_t
reason_code
)
OasisIot.h
Parameters
client
mid
reason_code
void
onDisconnected
(
const MqttClientRef &
client
,
mqtt_reason_t
reason_code
)
OasisIot.h
Parameters
client
reason_code
void
onMessage
(
const MqttClientRef &
client
,
const std::string &
topic_name
,
const char *
data
,
int32_t
length
)
OasisIot.h
Parameters
client
topic_name
data
length
Functions#
MqttBrokerRef
mqttCreateBroker
(
key_value_map_t &
parameters
)
OasisIot.h
Parameters
parameters
Return Value
int32_t
mqttDestroyBroker
(
MqttBrokerRef &
broker
)
OasisIot.h
Parameters
broker
Return Value
- 0: Success
- -1: Failure
int32_t
mqttBorkerStart
(
const MqttBrokerRef &
broker
)
OasisIot.h
Parameters
broker
Return Value
- 0: Success
- -1: Failure
int32_t
mqttBorkerStop
(
const MqttBrokerRef &
broker
)
OasisIot.h
Parameters
broker
Return Value
- 0: Success
- -1: Failure
MqttClientRef
mqttCreateClient
(
key_value_map_t &
parameters
,
const std::shared_ptr<MqttClientEventDelegate> &
delegate
)
OasisIot.h
Parameters
parameters
delegate
Return Value
int32_t
mqttClientSetWill
(
const MqttClientRef &
client
,
const char *
topic_title
,
const char *
content_data
,
int32_t
content_length
,
int32_t
qos
,
bool
retain
,
const MqttPropertiesRef &
properties
)
OasisIot.h
Parameters
client
topic_title
content_data
content_length
qos
retain
properties
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientClearWill
(
const MqttClientRef &
client
)
OasisIot.h
Parameters
client
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientSetUserName
(
const MqttClientRef &
client
,
const char *
username
)
OasisIot.h
Parameters
client
username
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientSetPassword
(
const MqttClientRef &
client
,
const char *
password
)
OasisIot.h
Parameters
client
password
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientSetPassword
(
const MqttClientRef &
client
,
const std::vector<char> &
password
)
OasisIot.h
Parameters
client
password
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientConnect
(
const MqttClientRef &
client
,
const char *
host
,
int32_t
port
,
int32_t
keepalive
,
bool
is_secure
,
bool
use_websocket
,
int32_t
timeout
,
const MqttPropertiesRef &
properties
)
OasisIot.h
Parameters
client
host
port
keepalive
is_secure
use_websocket
timeout
properties
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientReconnect
(
const MqttClientRef &
client
)
OasisIot.h
Parameters
client
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientPublish
(
const MqttClientRef &
client
,
const char *
topic_title
,
const char *
content_data
,
int32_t
content_length
,
int32_t
qos
,
bool
retain
,
const MqttPropertiesRef &
properties
,
uint32_t *
mid_ptr
)
OasisIot.h
Parameters
client
topic_title
content_data
content_length
qos
retain
properties
mid_ptr
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientSubscribe
(
const MqttClientRef &
client
,
const std::list<std::string> &
topic_filters
,
int32_t
qos
,
mqtt_subscribe_option_t
options
,
const MqttPropertiesRef &
properties
,
uint32_t *
mid_ptr
)
OasisIot.h
Parameters
client
topic_filters
qos
options
properties
mid_ptr
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientUnsubscribe
(
const MqttClientRef &
client
,
const std::list<std::string> &
topic_filters
,
const MqttPropertiesRef &
properties
,
uint32_t *
mid_ptr
)
OasisIot.h
Parameters
client
topic_filters
properties
mid_ptr
Return Value
- 0: Success
- -1: Failure
int32_t
mqttClientDisconnect
(
const MqttClientRef &
client
,
int32_t
reason_code
,
const MqttPropertiesRef &
properties
)
OasisIot.h
Parameters
client
reason_code
properties
Return Value
- 0: Success
- -1: Failure
int32_t
mqttDestroyClient
(
MqttClientRef &
client
)
OasisIot.h
Parameters
client
Return Value
- 0: Success
- -1: Failure