Merge pull request #7231 from ascillato/patch-2

PubSubClient: Allow clean disconnection as optional.
This commit is contained in:
Theo Arends 2019-12-28 22:02:58 +01:00 committed by GitHub
commit 836946763e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -610,11 +610,13 @@ boolean PubSubClient::unsubscribe(const char* topic) {
return false;
}
void PubSubClient::disconnect() {
void PubSubClient::disconnect(bool disconnect_package) {
buffer[0] = MQTTDISCONNECT;
buffer[1] = 0;
if (_client != nullptr) {
_client->write(buffer,2);
if (disconnect_package) {
_client->write(buffer,2);
}
_client->flush();
_client->stop();
}

View File

@ -141,7 +141,7 @@ public:
boolean connect(const char* id, const char* willTopic, uint8_t willQos, boolean willRetain, const char* willMessage);
boolean connect(const char* id, const char* user, const char* pass, const char* willTopic, uint8_t willQos, boolean willRetain, const char* willMessage);
boolean connect(const char* id, const char* user, const char* pass, const char* willTopic, uint8_t willQos, boolean willRetain, const char* willMessage, boolean cleanSession);
void disconnect();
void disconnect(bool disconnect_package = false);
boolean publish(const char* topic, const char* payload);
boolean publish(const char* topic, const char* payload, boolean retained);
boolean publish(const char* topic, const uint8_t * payload, unsigned int plength);