-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathqmqtt.h
42 lines (35 loc) · 1.15 KB
/
qmqtt.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#ifndef QMQTT_H
#define QMQTT_H
#include <QSslConfiguration>
#include "abstractmqtt.h"
#include "qmqtt/qmqtt_client.h"
class QMqtt : public AbstractMqtt
{
Q_OBJECT
public:
explicit QMqtt(QObject *parent = nullptr);
~QMqtt();
void setBroker(const QString &broker);
void setSslConfiguration(const QSslConfiguration &ssl);
void setCleanSession(const bool clean);
void setClientId(const QString &id);
void setKeepAlive(const quint16 second);
void setUsername(const QString &username);
void setPassword(const QString &password);
void setWillTopic(const QString &topic);
void setWillQos(const quint8 qos);
void setWillRetain(const bool retain);
void setWillMessage(const QByteArray &msg);
void connectToHost();
void disconnectFromHost();
void publish(const QString &topic, const quint8 qos, const QByteArray &payload, const bool retain);
void subscribe(const QString &topic, const quint8 qos);
void unsubscribe(const QString &topic);
MqttStatus status();
public slots:
private:
QMQTT::Client *m_client;
QSslConfiguration *m_sslConfig;
bool m_sslEnable;
};
#endif // QMQTT_H