NEWS
Logik von Astro-Triggern
-
Hallo zusammen,
das hier wird mein erster Beitrag im Forum nach nun knapp zwei Wochen mit ioBroker.
First of all: ich bin on fire!
Ich komme sehr gut mit dem System klar und konnte in den zwei Wochen nun schon sehr viel umsetzen. Eine Sache geht mir jedoch nicht auf: die Astro Trigger.
Hintergrund ist, dass ich in Blockly verschiedene Skripte zu Astrozeiten durchzuführen versuche.
Wir haben z.B. Papageien, die ein eigenes Zimmer bei uns haben. Hier soll zur Abenddämmerung ein kleines Nachtlicht angehen und der Luftbefeuchter gleichzeitig aus.
Ebenfalls zur Abenddämmerung sollte im Wohnzimmer die Beleuchtung angehen, aber nur bei Anwesenheit von Minimum einer Person. Also habe ich zwei verschieden Blockly Skripte gebaut.
Das Licht im Wohnzimmer blieb natürlich aus, während das bei den Papageien funktionierte.
Ich habe ein wenig rumgebastelt und komme zu der Erkenntnis, dass ein und derselbe Astro-Trigger offenbar nur einmal verwendet werden kann. Ergo: wenn ich einen Astro-Trigger zur Abenddämmerung habe und alles, was zu diesem Trigger passieren soll, in ein und dasselbe Skript packe, funktioniert es. Ist von der Übersicht aber etwas schwierig, vor allem, wenn das System weiter wächst.
Meine persönliche Logik wäre nun gewesen, dass ich ein und denselben Astro-Trigger auch in mehreren Skripten nutzen kann und ioBroker dann eben diese Skripte parallel ausführt.
Ist es nun richtig, dass man wirklich für jede Astro-Zeit alles, was zu dem Zeitpunkt passieren soll, in ein und dasselbe Skript packen muss?
-
@hunduster sagte: Ist es nun richtig, dass man wirklich für jede Astro-Zeit alles, was zu dem Zeitpunkt passieren soll, in ein und dasselbe Skript packen muss?
Nein, sondern
@hunduster sagte in Logik von Astro-Triggern:
ein und denselben Astro-Trigger auch in mehreren Skripten nutzen kann und ioBroker dann eben diese Skripte parallel ausführt.
-
@hunduster sagte in Logik von Astro-Triggern:
Das Licht im Wohnzimmer blieb natürlich aus, während das bei den Papageien funktionierte.
wieso ist das natürlich?
zeig doch mal dein Skript!
https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1
-
Hallo zusammen,
anbei einmal meine beiden Scripte.
Vogelzimmer (funktioniert):
Wohnzimmer (Licht bleibt aus):
-
@hunduster sagte in Logik von Astro-Triggern:
Wohnzimmer (Licht bleibt aus):
mal mit debug Bausteinen geprüft wo es hängt?
- Trigger?
- Logik?
- AUsführung?
-
@homoran sagte in Logik von Astro-Triggern:
mal mit debug Bausteinen geprüft wo es hängt?
- Trigger?
- Logik?
- AUsführung?
Nein, tatsächlich nicht. Wo genau muss ich die Debug-Bausteine setzen? Vor jeden einzelnen Schritt einen?
-
@hunduster sagte in Logik von Astro-Triggern:
Vor jeden einzelnen Schritt einen?
zum Beispiel. mit sinnvollem Text oder noch besser mit Ausgabe des entscheidenden Wertes
-
@homoran sagte in Logik von Astro-Triggern:
zum Beispiel. mit sinnvollem Text oder noch besser mit Ausgabe des entscheidenden Wertes
Dann würde ich es mal so probieren:
-
@hunduster sagte in Logik von Astro-Triggern:
Dann würde ich es mal so probieren:
nein!
innerhalb der falls Klammer nach den Bedingungen fehlt noch was -
@homoran sagte in Logik von Astro-Triggern:
nein!
innerhalb der falls Klammer nach den Bedingungen fehlt noch was -
@hunduster und jetzt heisst es warten!
du kannst die logstufe von info auf warn stellen, dann fällt es heute abend im log bessercauf -
@homoran super, ich danke dir! Bin gespannt!
-
@hunduster
Eine Information über die "Lichtsteuerung" erhält man nur, wenn man auf einen Rückmelde-Datenpunkt triggert, sofern vorhanden. -
@paul53 aber jetzt gibt der debug wenigstens an, dass der Steuerbefehl abgesetzt wurde
-
@homoran sagte: gibt der debug wenigstens an, dass der Steuerbefehl abgesetzt wurde
"Lichtsteuerung" liefert keine zusätzliche Information gegenüber "Bedingungen".
@Hunduster
Hoffentlich ist nicht der Debug-Modus rechts oben aktiviert? Im Debug-Modus wird "steuere" nicht ausgeführt. -
@paul53 sagte:
"Lichtsteuerung" liefert keine zusätzliche Information gegenüber "Bedingungen".
Stimmt!
da hab ich geschlafen! -
@paul53 sagte in Logik von Astro-Triggern:
@Hunduster
Hoffentlich ist nicht der Debug-Modus rechts oben aktiviert? Im Debug-Modus wird "steuere" nicht ausgeführt.Nein, der Debug Modus war nicht aktiviert aber dennoch Danke für den Hinweis.
Also: zu meiner eigenen Verwunderung hat das Ganze gestern funktioniert. Ich hatte den Astro Trigger extra etwas vorgestellt.
Im Log steht nicht viel:
2022-08-15 21:05:52.355 - warn: javascript.0 (7847) script.js.Philips_Hue.Entwürfe.Belecuthugn_bei_Dämmerung_old: Astrodämmerung 2022-08-15 21:05:52.357 - warn: javascript.0 (7847) script.js.Philips_Hue.Entwürfe.Belecuthugn_bei_Dämmerung_old: Bedingungen 2022-08-15 21:05:52.357 - warn: javascript.0 (7847) script.js.Philips_Hue.Entwürfe.Belecuthugn_bei_Dämmerung_old: Lichtsteuerung
Im Nachhinein war es aber vielleicht gar nicht so schlau, den Astro Trigger vorzustellen. Mein eigentliche Problem war ja, das ich zwei Astrotrigger zur Abenddämmerung hatte. Einen mit Versatz -30 und einen Mit Versatz -15. Letzterer blieb aus.
Ich werde meine Scripte noch einmal so einstellen, wie ich es am Ende haben will und das Ganze noch einmal testen und Euch berichten. Mit den Debug Bausteinen war auf jeden Fall ein guter Tipp; die kannte ich noch gar nicht.
-
@hunduster sagte in Logik von Astro-Triggern:
Mit den Debug Bausteinen war auf jeden Fall ein guter Tipp; die kannte ich noch gar nicht.
da jann man auch statt eines Textes einen Wert ausgeben. Oder über den Textblock erstelle Text aus... komplexere Informationen zusammenstellen
-
Hallo zusammen,
ich wollte noch einmal Rückmeldung geben, dass nun alles funktioniert.
Keine Ahnung, was an dem ursprünglichen Script bei mir falsch war. Ich hatte ein neues Script angelegt und das ursprüngliche nachgebaut. Nachdem ich das nun ein paar Tage getestete habe, scheint alles zu funktionieren.
Vielen Dank noch einmal an Euch, vor allem für den generellen Tipp mit den Debug Bausteinen. Diese werde ich nun in Zukunft des Öfteren nutzen.
-
@hunduster u @Homoran
ich finde diesen frisch Threat hier gerade, da ich auf der Suche nach der Antwort auf die Frage war, ob man beim Blockly Astrotrigger auch negative Werte angeben kann? - ok Frage beantwortetAber, ... ich hatte es auch schon mehrfach, dass ein Trigger nicht funktioniert hat, insbesondere, wenn ich ihn nachträglich nochmals editiert hatte. Bei mir hat dann auch immer nur die Verwendung eines 'neuen' Triggerbausteins geholfen. Das Script was darin ausgeführt werden sollte habe ich immer weiter verwenden können, aber der Triggerbaustein scheint dann manchmal irgendwie ein Problem zu kriegen.
Da ich auch kein JS Könner bin, hatte ich mir das auch nie im Detail angesehen.