Seite 3 von 3
Re: Automatischer Dimmer (sunrise)
Verfasst: 17. Jan 2022 11:19
von peter-pan
...könnte es evtl. sein, dass es doch an der Klammerung liegt ? Und das Snippet so aussehen sollte:
Code: Alles auswählen
...
tSunset = createTimer(now.plusSeconds(1), [|
var nBright = WohnzimmerSLo_Helligkeit.state as Number
if(nBright < 60) {
WohnzimmerSLo_Helligkeit.sendCommand(nBright + 2)
WohnzimmerSLu_Helligkeit.sendCommand(nBright + 2)
tSunset.reschedule(now.plusSeconds(1))
}
])
.....
also die zweite Klammer(zu) aus:
erst nach der "eckigen Klammer"(zu).
Natürlich wie immer, ohne Gew(e)ähr.

Re: Automatischer Dimmer (sunrise)
Verfasst: 17. Jan 2022 12:03
von int5749
peter-pan hat geschrieben: ↑17. Jan 2022 11:19
...könnte es evtl. sein, dass es doch an der Klammerung liegt ? Und das Snippet so aussehen sollte:
Code: Alles auswählen
...
tSunset = createTimer(now.plusSeconds(1), [|
var nBright = WohnzimmerSLo_Helligkeit.state as Number
if(nBright < 60) {
WohnzimmerSLo_Helligkeit.sendCommand(nBright + 2)
WohnzimmerSLu_Helligkeit.sendCommand(nBright + 2)
tSunset.reschedule(now.plusSeconds(1))
}
])
.....
also die zweite Klammer(zu) aus:
erst nach der "eckigen Klammer"(zu).
Natürlich wie immer, ohne Gew(e)ähr.
Oh, Man(n) ich Vollhonk
Wo habe ich denn da den Code geprüft und warum die Klammer versetzt. Nur bei re-schedule wird direkt geschlossen
openHAB Doku zu Timer
Sorry!
Re: Automatischer Dimmer (sunrise)
Verfasst: 17. Jan 2022 15:03
von udo1toni
Nur für das grundsätzliche Verständnis:
es gibt zwei unterschiedliche Schreibweisen für die Timer Definition. Erstens:
Code: Alles auswählen
myTimer = createTimer(Zeitpunkt) [
// auszuführender Code
]
Zweitens:
Code: Alles auswählen
myTimer = createTimer(Zeitpunkt, [
// auszuführender Code
])
Der Unterschied ist tatsächlich nur die Schreibweise, im ersten Beispiel ist der Code als Lambda einfach hinter die Timer Definition gepappt, im zweiten Beispiel ist das Lambda Bestandteil der Definition. Ich bevorzuge diese Schreibweise, da damit klar wird, dass das Lambda (der Teil zwischen [ und ]) ein Parameter von createTimer() ist.
Natürlich kann man createTimer() auch aufrufen, ohne ein Ergebnis in einer Variablen zu speichern, aber man verschenkt damit Potential.
Re: Automatischer Dimmer (sunrise)
Verfasst: 17. Jan 2022 16:34
von atk69
Vielen Dank peter-pan, es funktioniert wieder
Auch Dir udo1toni für die Erklärung der Schreibweisen.
Komisch, ich habe das nochmal mit meinem Backup verglichen: ist identisch. Hätte also bereits laufen sollen
Nunja, es läuft wieder. Das ist das wichtigste.
Ich habe die letzten 2 Tage OH so sehr mit zigbee und dem Ikea Gateway belastet, kann sein, dass es einfach etwas gesponnen hat.
Habe zur Sicherheit OH rebootet (cache, temp, log gelöscht)
Alles OK.
Gruss
atk69
Re: Automatischer Dimmer (sunrise)
Verfasst: 17. Jan 2022 18:22
von int5749
Re: Automatischer Dimmer (sunrise)
Verfasst: 18. Jan 2022 00:17
von peter-pan
Gott sei Dank, das wir @udo1toni haben.
Ich werde das mit den Timern nie genau lernen

. Wenn ich einen brauch, schau ich mir ein "altes Muster" an und benutze das als Basis (und die Basis ist von Udo

). Ich mache allerdings auch sehr wenig mit Timern.
Aber es war auch gut mal wieder in die Doku zu schauen, dank dem Link von @int5749.
int5749 hat geschrieben: ↑17. Jan 2022 18:22
es funktioniert wieder
... und wenn's dann funktioniert, dann freuen wir uns alle.