|
|
|
@ -137,10 +137,21 @@ void connect_mqtt() {
|
|
|
|
|
Serial.println("ok");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void check_mqtt() {
|
|
|
|
|
void check_mqtt(bool reset = false) {
|
|
|
|
|
if(mqtt.connected() == 0) {
|
|
|
|
|
Serial.print("MQTT reconnect: ");
|
|
|
|
|
connect_mqtt();
|
|
|
|
|
if(reset) {
|
|
|
|
|
Serial.print("MQTT reconnect: ");
|
|
|
|
|
connect_mqtt();
|
|
|
|
|
delay(2000);
|
|
|
|
|
if(mqtt.connected() == 0) {
|
|
|
|
|
Serial.println("failed! rebooting.\n\n");
|
|
|
|
|
ESP.restart();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
Serial.print("MQTT reconnect: ");
|
|
|
|
|
connect_mqtt();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
Serial.println("MQTT: connection ok");
|
|
|
|
@ -159,7 +170,8 @@ bool send_mqtt(String id, String sensor, float value) {
|
|
|
|
|
// char* payload = new char[length]();
|
|
|
|
|
// serializeJson(data, payload, length);
|
|
|
|
|
|
|
|
|
|
check_mqtt();
|
|
|
|
|
check_mqtt(false);
|
|
|
|
|
check_mqtt(true);
|
|
|
|
|
bool result = mqtt.publish("sensors/data", payload.c_str());
|
|
|
|
|
// delete[] payload;
|
|
|
|
|
|
|
|
|
|