NEWS
[GELÖST] - Weihnachtsbeleuchtung - zu kompliziert gedacht?
-
-
@cinimod hat man doch. Die ID boolean...
-
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
oder wie ich es anfangs meinte:
Du machst zwei Skripte,
Eins welches die Beleuchtung steuert:
und ein zweites, welches das erste aktiviert oder deaktiviert:
Dann triggern die Zeitpläne nicht das ganze Jahr unnötig rum.
Ja. Wie ich sagte. Ich bin Anfänger. Mir war gar nicht klar, das man auch die Scripte an und abschalten lassen kann. Ich glaub ich habs kapiert. Da muss der Groschen erstmal fallen...
So hab ich es jetzt:
Script 1 (ist immer aktiv)
Script 2 (ist jetzt aktiviert, da Totensonntag schon vorbei ist, wird aber sonst durch Script 1 aktiviert und Deaktiviert)
Finde ich ne super Lösung:
Folgende Frage bleibt noch:
Ich möchte nicht dass das Script bereits am Totensonntag aktiviert wird. Sondern erst am nächsten Tag. Am Totensonntag selbst darf die Weihnachtbeleuchtung nicht an gehen. Daher das Stop mit dem folgenden Timeout. Es gibt ja auch die Möglichkeit der Verzögerung. Ist das dasselbe? oder ist das eher wie Pause wobei die Systemrecourcen gebunden bleiben?
Oder macht man das ganz anders? -
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
Währe ja cool wenn man für die Feiertage auch je einen Datenpunkt hätte der am Ereignistag True währe
@ttberlin sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
@cinimod hat man doch. Die ID boolean...
und dann über die ID Heute.Name prüfen was das für ein Feiertag ist
-
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
und ein zweites, welches das erste aktiviert oder deaktiviert:
neee, das ist nicht Sinn der Sache
Da würde ich den eigenen Datenpunkt "war_Totensonntag" am Tag nach Totensonntag auf true setzen, und diesen eigenen Datenpunkt im Beleuchtungsscript mit abfragen.
Dann irgendwann an Dreikönig oder Maria Lichtmess den Datenpunkt wieder auf false setzen
-
@slang-0 ich würde ein kurzes Skript schreiben, was prüft ob gestern Totensonntag war (den Datenpunkt gibts im feiertagsadapter) und was dann eine globale Variable "Weihnachtsbeleuchtung_aktiv" auf true setzt.
Dann noch ein Endedatum prüfen also z.b.15. Januar und da dann Weihnachtsbeleuchtung_aktiv auf false setzen.
Das eigentliche Beleuchtungsskript triggerst du dann über die globale Variable, fertig. -
Genau so hab ichs gemacht..
-
@all:
Ich habs nochmal überdacht:
Das zweite Script enthält nach wie vor nur die Schaltzeiten
Warum so? Mir leuchtet es ein, dass nicht ständig getriggert werden soll, wenns gar nicht sein muss.
Hierbei wird nur am 1.1. um 2:20 Uhr einmal der Datenpunkt "Totensonntag" auf false gesetzt.
Nur vom 20.11. bis 26.11. wird geschaut ob der Datenpunkt feiertag_Name "Totensonntag" ist. Wenn ja wird der selbst erstellte Datenpunkt auf true aktualisiert.
Zuletzt wird nur in den Monaten Januar, Februar, November und Dezember geschaut ob der selbsterstellte Datenpunkt "Totensonntag" true ist.Das Timeout kann ich mir sparen, da der Datenpunkt um 15:00 Uhr gesetzt wird. Die nächste Prüfung auf den Datenpunkt erfolgt aber ohnehin erst um 0:05 Uhr am nächsten Tag, da der Trigger ja praktisch schon durch ist.
Ich hoffe das es so funktionieren wird.
Ich danke allen die geholfen haben, vor allem aber cinimod, der den entscheidenden (zumindest für mich) Denkanstoß geliefert hat.Bitte sagt mir dennoch bescheid wenn noch nen Fehler drinn ist
-
aber der triggert dann bei jedem Feiertag oder sehe ich das falsch ?
-
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
aber der triggert dann bei jedem Feiertag oder sehe ich das falsch ?
ja und?
@homoran sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
und dann über die ID Heute.Name prüfen was das für ein Feiertag ist
EDIT:
oder direkt über Feiertag_heute.Name
-
@ttberlin sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
@slang-0 keinen Zeit-Trigger....Feiertag *-name als Trigger benutzen
Was bedeutet das? Ich kann das nicht einordnen.
@amg_666 sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
@slang-0 ich würde ein kurzes Skript schreiben, was prüft ob gestern Totensonntag war (den Datenpunkt gibts im feiertagsadapter) und was dann eine globale Variable "Weihnachtsbeleuchtung_aktiv" auf true setzt.
Wie prüft man ob gestern Totensonntag war?
-
@slang-0 sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
Wie prüft man ob gestern Totensonntag war?
indem man in dem Blockly von mir den Zustand um 24h verzögert setzt
(Dann darf natürlich in den 24h nichts abstürzen)mit beliebeiger Komplexizität
-
@slang-0 sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
@all:
Ich habs nochmal überdacht:
Eigentlich bin ich kein Freund davon Skripte zu stoppen oder starten via script, schöner währe meine andere Lösung, auch wenn die Trigger die meiste zeit ins leere laufen.
Wenn du es so lassen willst sollte der mittlere Trigger täglich triggern,
oder wie die anderen Vorschläge waren, den Feiertags Adapter zu nutzen und einen der Datenpunkte als Trigger zu nutzen, das halte ich auch für sehr Sinnvoll -
@slang-0 sagte: Wie prüft man ob gestern Totensonntag war?
Indem man nicht mit Wert vergleicht, sondern mit vorheriger Wert.
-
@paul53 sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
Indem man nicht mit Wert vergleicht, sondern mit vorheriger Wert.
natürlich! aber das geht nur, wenn am nächsten Tag ein anderer Feiertag wäre, oder?
-
der Datenpunkt ist doch dann leer wenn kein Feiertag mehr ist, demnach hat er sich auch geändert
-
@homoran sagte: das geht nur, wenn am nächsten Tag ein anderer Feiertag wäre, oder?
Wird der Feiertagsname nicht gelöscht, wenn kein Feiertag ist? Bei mir ist heute der Feiertagsname leer.
-
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
demnach hat er sich auch geändert
Ach so - eigentlich schon.
leer ist ein anderer Eintrag als "Totensonntag" -
@cinimod sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
@slang-0 sagte in Weihnachtsbeleuchtung - zu kompliziert gedacht?:
Wenn du es so lassen willst sollte der mittlere Trigger täglich triggern,
Eventuell verstehe ich dich falsch... es wird doch täglich getriggert. Vom 20.11. bis 26.11.. An keinem anderen Tag des Jahres ist es möglich das Totensonntag wäre.
-