sMQTTBroker
sMQTTClient.h
1#ifndef SMQTTCLIENT_FILE
2#define SMQTTCLIENT_FILE
3
4#include "sMQTTMessage.h"
5
6class sMQTTBroker;
7
8#define sMQTTUserNameFlag 0x80
9#define sMQTTPasswordFlag 0x40
10#define sMQTTWillRetainFlag 0x20
11#define sMQTTWillQoSFlag 0x18
12#define sMQTTWillFlag 0x4
13
14#define sMQTTConnReturnAccepted 0x0
15#define sMQTTConnReturnUnacceptableProtocolVersion 0x1
16#define sMQTTConnReturnIdentifierRejected 0x2
17#define sMQTTConnReturnServerUnavailable 0x3
18#define sMQTTConnReturnBadUsernameOrPassword 0x4
19
22{
23public:
24 sMQTTClient(sMQTTBroker *parent, TCPClient &client);
26
27 void update();
28
30 bool isConnected();
31 void write(const char* buf, size_t length);
32
34 const std::string &getClientId() {
35 return clientId;
36 };
37private:
38 void processMessage();
39 void updateLiveStatus();
40
41 char mqtt_flags;
42 bool mqtt_connected;
43 std::string clientId;
44 unsigned short keepAlive;
45 unsigned long aliveMillis;
46
47 sMQTTBroker *_parent;
48 TCPClient _client;
49 sMQTTMessage message;
50};
51
52typedef std::vector<sMQTTClient*> sMQTTClientList;
53#endif
Definition: sMQTTBroker.h:13
Main Client class.
Definition: sMQTTClient.h:22
bool isConnected()
check connection
Definition: sMQTTClient.cpp:38
const std::string & getClientId()
get client id
Definition: sMQTTClient.h:34
Definition: sMQTTMessage.h:40