Hallo zusammen,
ich hänge mich nun an diesen Beitrag dran da ich denke, das er der passenste in Bezug auf mein Problemschen ist... Habe nach Rules im Forum gesucht... oO zuviele Einträge
Dank Udo habe ich unter openHAB2.x meine Rules erstellt und erfolgreich über 2,5 Jahre erweitert und neu erstellt. Jetzt, mit dem Umzug auf openHAB 3.2 dachte ich, das bekomme ich schon hin, habe meine Rules unter openHAB2.x doch auch nach Anlaufhilfe alleine erstellt...
Habe mir die Rule Doku zur Brust genommen und ganz ehrlich, bin anscheinend zu doof dafür. Rules triggern mal, mal nicht, wenn ich mehrere Rules in ein File schreibe, lädt er gefühlt die Rule nicht mehr richtig obwohl im openhab.log korrekt eingelesen wurde, angeblich. Habe daraufhin die Rules mit der Rule engine erstellt, funktionieren auch soweit, aber ich erhoffte mir dann den Code raus nehmen zu können und ihn ab dem Moment mit der richtigen Synthax weiter verwenden zu können, ebenfalls pustekuchen
Aus diesem Grund habe ich nun beschlossen aufzuhören und mir Hilfestellung geben zu lassen. Ich hoffe das Udo oder auch wer anderes, mich bei der Umstellung meiner alten und funktionierenden openHAB2.5 Rules auf die neue openHAB3.2 Synthax, unterstützen kann.
Ich poste mal einen Teil meiner Rollläden rule die vorher einwandfrei funktioniert hat, jetzt aber überhaupt nicht mehr funktioniert.
Code: Alles auswählen
// Dies ist der Rollladen im Chill Modus hoch fahren Teil der Rule. Hoch fahren um Uhrzeit X per CRON.
rule "Rollladen im Chill Modus hoch fahren "
when
Time cron "0 30 8 ? * MON-SUN" // Täglich MON-SO um 08:30 Uhr
then
logInfo("Rollladen im Chill Modus hoch fahren","Rollladen im Chill Modus hoch fahren getriggert per CRON")
if(UrlaubsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus hoch fahren","Urlaubs Schalter ist ON, Rule Rollladen im Chill Modus hoch fahren wird abgebrochen!")
return;
}
if(AbwesenheitsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus hoch fahren","Abwesenheits Schalter ist ON, Rule Rollladen im Chill Modus hoch fahren wird abgebrochen!")
return;
}
if(AlltagsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus hoch fahren","Alltags Schalter ist ON, Rule Rollladen im Chill Modus hoch fahren wird abgebrochen!")
return;
}
if(ChillSchalter.state == OFF) {
logInfo("Rollladen im Chill Modus hoch fahren","Chill Schalter ist OFF, Rule Rollladen im Chill Modus hoch fahren wird abgebrochen!")
return;
}
if(ChillSchalter.state == ON){
gRollaeden_Chill_Hoch.sendCommand(UP)
logInfo("Rollladen im Chill Modus hoch fahren","Rollladen wurden im Chill Modus hoch gefahren")
}
end
// Dies ist der "Rollladen im Chill Modus runter fahren" Teil der Rule. Runter fahren um Uhrzeit X per CRON
rule "Rollladen im Chill Modus runter fahren "
when
Time cron "0 30 21 ? JAN,FEB,MAR,OCT,NOV,DEC * *" or // Um 21:30:0 Uhr jeden Tag in den Monaten Januar, Februar, März, Oktober, November, Dezember,
Time cron "0 00 22 ? APR,MAY,JUN,JUL,AUG,SEP * *" // Um 22:00:0 Uhr jeden Tag in den Monaten April, Mai, Juni, Juli, August, September
then
logInfo("Rollladen im Chill Modus runter fahren","Rollläden im Chill Modus runter fahren getriggert per CRON")
if(UrlaubsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus runter fahren","Urlaubs Schalter ist ON, Rule Rollladen im Chill Modus runter fahren wird abgebrochen!")
return;
}
if(AbwesenheitsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus runter fahren","Abwesenheits Schalter ist ON, Rule Rollladen im Chill Modus runter fahren wird abgebrochen!")
return;
}
if(AlltagsSchalter.state == ON) {
logInfo("Rollladen im Chill Modus runter fahren","Alltags Schalter ist ON, Rule Rollladen im Chill Modus runter fahren wird abgebrochen!")
return;
}
if(ChillSchalter.state == OFF) {
logInfo("Rollladen im Chill Modus runter fahren","Chill Schalter ist OFF, Rule Rollladen im Chill Modus runter fahren wird abgebrochen!")
return;
}
if(ChillSchalter.state == ON) {
gRollaeden_Chill_Runter.sendCommand(DOWN)
logInfo("Rollladen im Chill Modus runter fahren","Rollläden wurden im Chill Modus runter gefahren")
}
end
Ich möchte euch schon einmal im Voraus danken, wollte es alleine schaffen, habe es aber irgendwie nicht hinbekommen außer mit der Rule engine, die mir jedoch irgendwie nicht so zusagt (mag Code lieber als alter SPS Inbetriebnehmer...)
Gracias zusammen!
Saludos
Eloy