Hallo,
ich habe folgendes Problem mit "rule" in OpenHab. Ich will email bei der Änderung vom Status der Fensterkontakte versenden. Es ist funktioniert. Wenn ich aber nicht pro Fenster Regel schreibe, sondern für die ganze Gruppe, dann wird Email (bzw. log-Ausgabe) immer doppelt ausgeführt. Ich habe keine Idee was es hier nicht stimmt. So sehen die Regeln aus:
Fensterkontakte haben 3 Zustände: Open, Closed und Ajar.
Hier ist die Regel für die Fenster (gehört zu gFenster- Gruppe)
In der Log-Datei sehe ich pro Aktion nur eine Zustandsänderung.
Hat jemand Idee, wo ich das Problem suchen soll?
Danke im Voraus.
Boris
ich habe folgendes Problem mit "rule" in OpenHab. Ich will email bei der Änderung vom Status der Fensterkontakte versenden. Es ist funktioniert. Wenn ich aber nicht pro Fenster Regel schreibe, sondern für die ganze Gruppe, dann wird Email (bzw. log-Ausgabe) immer doppelt ausgeführt. Ich habe keine Idee was es hier nicht stimmt. So sehen die Regeln aus:
Code:
rule "fenster_email"
when
Item gFenster received update
then
var msg = "Fensterstatus:\n"
for(contact : gFenster.allMembers) {
var String mappedState = transform("MAP","fenster.map", contact.state.toString)
msg = msg + contact.name + ": " + mappedState + "\n"
}
logInfo("fenster_email", "---------------")
sendMail("myemail@mymail.de", "Fenster-Status", msg)
end
Hier ist die Regel für die Fenster (gehört zu gFenster- Gruppe)
Code:
rule "fenster_buero"
when
Item Contact_UG_Buero_Z changed or
Item Contact_UG_Buero_A changed or
Item Contact_UG_Buero_K changed
then
if (Contact_UG_Buero_Z.state == OPEN) {
Fenster_UG_Buero.postUpdate("CLOSED")
} else if (Contact_UG_Buero_A.state == OPEN){
Fenster_UG_Buero.postUpdate("OPEN")
} else {
Fenster_UG_Buero.postUpdate("AJAR")
}
end
Hat jemand Idee, wo ich das Problem suchen soll?
Danke im Voraus.
Boris


Kommentar