Changed QOS for switches
This commit is contained in:
@@ -91,6 +91,7 @@ void setup() {
|
||||
mqttClient.onDisconnect(onMqttDisconnect);
|
||||
mqttClient.onMessage(onMqttMessage);
|
||||
mqttClient.setServer(mqtt_server, 1883);
|
||||
mqttClient.setClientId("Sw_MidRoom");
|
||||
|
||||
connectToWifi();
|
||||
|
||||
@@ -116,7 +117,7 @@ bool switchLight(uint8_t nLamp, int state, bool pub)
|
||||
EEPROM.commit();
|
||||
String topic = "/home/midroom/lamp";
|
||||
char n = nLamp == R_LED1 ? '1' : '2';
|
||||
if (pub) mqttClient.publish(String(topic + n).c_str(), 0, false, state ? "1" : "0");
|
||||
if (pub) mqttClient.publish(String(topic + n).c_str(), 1, false, state ? "1" : "0");
|
||||
return state;
|
||||
}
|
||||
|
||||
@@ -138,10 +139,10 @@ void onWifiDisconnect(const WiFiEventStationModeDisconnected& event) {
|
||||
}
|
||||
|
||||
void onMqttConnect(bool sessionPresent) {
|
||||
mqttClient.publish("/home/midroom/lamp1", 0, false, digitalRead(R_LED1) == 1 ? "1" : "0");
|
||||
mqttClient.publish("/home/midroom/lamp2", 0, false, digitalRead(R_LED2) == 1 ? "1" : "0");
|
||||
mqttClient.subscribe("/home/midroom/lamp1", 0);
|
||||
mqttClient.subscribe("/home/midroom/lamp2", 0);
|
||||
mqttClient.subscribe("/home/midroom/lamp1", 1);
|
||||
mqttClient.subscribe("/home/midroom/lamp2", 1);
|
||||
mqttClient.publish("/home/midroom/lamp1", 1, false, digitalRead(R_LED1) == 1 ? "1" : "0");
|
||||
mqttClient.publish("/home/midroom/lamp2", 1, false, digitalRead(R_LED2) == 1 ? "1" : "0");
|
||||
digitalWrite(B_LED, LOW);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user