NEWS
Trigger bei Neustart einlesen
-
moin,
bin hier nicht so derjenige, der die richtigen Worte findet.
Ich versuche trotzdem mal eine Frage zu formulieren...ich habe im Blockly-Script zwei Astro Trigger. Einen für Sonnenaufgang und einen für Sonnenuntergang. Diese steuern einen Datenpunkt, "sunrise" genannt.
Funktioniert eigentlich, aber wenn der ioBroker neu startet, bzw eingeschaltet wird, erkennt der Trigger nicht den aktuellen Wert.
Wie kann ich den Trigger nach dem ioB Neustart einlesen lassen bzw den "Sonnenstand" erkennen lassen?
ich Danke Euch schonmal
-
@kehri sagte in Trigger bei Neustart einlesen:
bin hier nicht so derjenige, der die richtigen Worte findet.
kein Problem!
dann hilft zeigen!https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1
-
Du hast recht, ich verstehe die Frage nicht.
Wozu sollte der AstroTrigger wissen wollen auf was der Sunrise Datenpunkt steht?Der AstroTrigger weiß doch systembedingt welcher AstroZustand gerade ist… meinst du das ? Wenn du deine Koordinaten in den Einstellungen gesetzt hast!
-
so schnell gibts hier antworten, prima
so sieht das im Script aus..
-
@kehri sagte: Wie kann ich den Trigger nach dem ioB Neustart einlesen lassen bzw den "Sonnenstand" erkennen lassen?
Du meinst, ob Tag (Zeit zwischen SA und SU) ist?
-
ja, ob gerade "Tag", oder "Nacht" ist
-
@kehri sagte: ob gerade "Tag", oder "Nacht" ist
-
Da gibt es ab Werk einen DP für:
-
@kehri sagte in Trigger bei Neustart einlesen:
wenn der ioBroker neu startet, bzw eingeschaltet wird, erkennt der Trigger nicht den aktuellen Wert.
natürlich nicht! Der Trigger ist ja dazu da bei rinem bestimmten Zeitpunkt die Abarbeitung deines Skripts zu starten.
ist dieser Zeitpunkt vorbei macht der Trigger gar nichts.Was genau soll den bei Neustart passieren?
-
Danke Thomas und Paul!!
ich werde mal testen, welche der beiden Ideen mir am besten passen.
vielen Dank!!
-
homoran, genau das ist das "Problem" in meinem Script. Der Datenpunkt "Sunnreis" steht auf dem letzten Status vorm runterfahren. Beim Neustart wird Tag / Nacht nicht erkannt.
-
@kehri sagte in Trigger bei Neustart einlesen:
homoran, genau das ist das "Problem" in meinem Script. Der Datenpunkt "Sunnreis" steht auf dem letzten Status vorm runterfahren. Beim Neustart wird Tag / Nacht nicht erkannt.
dann musst du oberhalb des Triggers noch etwas Logik einbauen.
Die wird dann bei Skriptstart ausgeführt -
@kehri sagte in Trigger bei Neustart einlesen:
ja, ob gerade "Tag", oder "Nacht" ist
Nur mal so vom CleanCode-Gedanken her:
Jede Wette, dass man (auch Du) nach verhältnismäßig kurzer Zeit nicht mehr weiß, was denn in einem DP "sunnreis" drinsteht.
Und wenn man dann auf den Gedanken kommt, den sinnvoll zu benennen, landet man schnell bei den von @Thomas-Braun genannten Variablen, die das System netterweise bereits bereitstellt. Damit wäre dieses Script schon mal überflüssig -
@thomas-braun sagte in Trigger bei Neustart einlesen:
Da gibt es ab Werk einen DP für
Ich habe eine ioBroker-Instanz, da gibt es zwar den Ordner 'variables', aber darin befinden sich keine Datenpunkte. Wann bzw. durch was werden die denn gesetzt?
EDIT: Wer richtig lesen kann . . . Ich habs gefunden. Da war noch ein Ordner im root des Objektbaums. (wo der wohl hergekommen ist?) -
Das sehe ich auch so.
Im JS Verzeichnis ist doch der Datenpunkt "javascript.0.variables.isDayTime" schon eindeutig definiert.Im Zweifel mach dir doch ein Alias datenpunkt wenn du nicht direkt diesen nehmen willst, der ist dann eben so aktuell, auch ohne Skript.
Oder binde deinen datenpunkt mit dem vom JS schon vorhandenen, wobei das genauso überflüssig ist:
-
Hallo nochmal,
ich hätte nicht gedacht, das hier so viele Gedanken und Ideen zustande kommen.
Vielen Dank dafür!!-
die Aussage mit dem Systemeigenen DP unter Variablen ist super. Muss man nur wissen. Allerdings ist die Auswahl mit "goldene Stunde" nicht dabei. danke an Thomas
-
der DP "Sunnreis" ist mit Absicht so benannt, damit ich den im Script von System DP unterscheiden kann.
-
ich hab es jetzt so gelöst...
hab noch ne 10 Sekunden Verzögerung gemacht, damit nicht alles zur gleichen Zeit abläuft.
Ihr hab mir sehr geholfen.
Vielen Dank! -
-
@kehri sagte: Allerdings ist die Auswahl mit "goldene Stunde" nicht dabei.
Abenddämmerung ist nach Sonnenuntergang (-6°).
-
-
Vielen Dank nochmal!
Es ist mal wieder zu sehen, dass es mehrere Wege gibt.Also das Thema ist fürs erste gelöst. Danke an alle!!
-
@kehri sagte in Trigger bei Neustart einlesen:
Also das Thema ist fürs erste gelöst. Danke an alle!!
Dann bearbeite bitte Deinen Eingangspost und setze ein "[gelöst] - " vor den Titel.