Mit der Rule Engine sollte es aber auch kein Problem sein, solange der ESP auch beide Schaltbewegungen per MQTT übermittelt. Du erhältst in openHAB damit ein Item, welches beim Drücken auf ON wechselt und anschließend beim Loslassen wieder auf OFF. Eine mögliche Rule wäre dann:
Code: Alles auswählen
rule "Schaltsignal weitergeben"
when
Item mqttTaster received command
then
mqttRelais.sendCommand(receivedCommand)
end
Code: Alles auswählen
// globale Variablen immer zu Beginn der Datei definieren!
var Timer tImpuls = null // Timer für Impuls
rule "Schaltimpuls senden"
when
Item mqttTaster received command ON
then
if(tImpuls === null) { // Timer wurde noch nicht gestartet
mqttRelais.sendCommand(ON)
tImpuls = createTimer(now.plusMillis(1500), [ | // Dauer im Millisekunden
mqttRelais.sendCommand(OFF)
tImpuls = null
])
}
end