NEWS
Skripte beginnen doppelt zu laufen
-
Hallo,
die JavaScript Instanz habe ich auf Debug gestellt und warte nun bis etwas angezeigt wird.
Anbei mal ein Beispiel-Skript bei dem die Debugeinträge doppelt erscheinen im Abstand von 2,1 Sekunden.
Da bei diesem Skript die Lamellen der Jalousie nur ganz kurz verstellt werden (weniger als 2 Sekunden), merke ich, dass diese doppelt angesteuert werden (einmal in gewünschte Position, dann wieder auf und wieder in gewünschte Position). Starte ich die JavaScript Instanz ein paar Stunden bevor das Skript getriggert wird neu, wird die Jalousie normal angesteuert.Bei anderen Skripten, welche nur Lampen einschalten, habe ich ebenso die Logeinträge doppelt. Von der doppelten Ansteuerung merkt man natürlich nichts.
Ich werde noch weitere Beispiele posten, sobald es wieder los geht mit doppelten Einträgen.
Mir ist aufgefallen, dass das ein oder andere Skript manchmal auch garnicht mehr auf Trigger reagiert (z.B. Außenbeleuchtung soll bei Sonnenaufgang ausschalten). Das geht seit 3 Tagen nicht mehr. Musste das Skript erst neu erstellen um es wieder zum Funktionieren zu bewegen.
-
Mach doch mal mehrere Debug Bausteine rein.
Z.B. Einen direkt nach dem Trigger usw. um zu sehen ob es eventuell am Trigger liegt oder ob die Steuere Blöcke einzeln mehrfach ausgeführt werden.
-
Bis jetzt habe ich keine doppelten Log-Einträge.
Was hat "logging false" und "logging true" zu bedeuten? -
ich habe das gleiche Problem, manchmal erscheint alles 2x, oft auch 3x. Es wird dann nicht nur der LOG so oft angezeigt, auch die Programme arbeiten dementsprechend. Also ich erhalten auch 3 Mails etc. Einen Zeitraum konnte ich noch nicht feststellen. Ein Restart des Adapters brachte meist nicht den erwünschten Erfolg, nur iobroker komplett rebooten. Die Adapter habe ich auch alle auf latest, bis auf hue.
-
Habe das selbe Problem, es gibt mittlerweile auch mehrer Foren bzw. Plattformen z.B. Facebook etc. wo das Thema behandelt wird.
Leider gibt es wohl aktuell noch keine Lösung.
In Verbindung mit Telegram oder Alexa macht das echt kein Spaß.
Ich kann nur hoffen, das bald mal jemand eine Lösung für das Problem hat. -
Moin, gibt es hierzu inzwischen eine Lösung? Meine Blockly-Skripte laufen auch häufig doppelt. Es handelt sich um recht einfache "repeat while true" Schleifen ohne sonstige Trigger.
-
@derdom sagte in Skripte beginnen doppelt zu laufen:
Moin, gibt es hierzu inzwischen eine Lösung? Meine Blockly-Skripte laufen auch häufig doppelt. Es handelt sich um recht einfache "repeat while true" Schleifen ohne sonstige Trigger.
Es gibt keine Lösung weil es kein Problem gibt.
Ich habe das noch nie gehört. Scripte starten nicht doppelt; es sei denn es ist gewollt.
(weil z.B. trigger doppelt auslöst mit ack false und ack true; das kann man aber prüfen).
Und gelesen habe ich das auch noch nie.Wie @wendy2702 schon geschrieben hat, die entsprechenden Scripte posten und genau beschreiben was man gemacht hat.
-
[gelöscht]
-
Mit dieser Bildschirmcopy kann man nichts anfangen.
Viel zu klein, nicht zu lesen.Ich werde nun nichts mehr schreiben.
Stell die Daten vernünftig ein.
So, dass man damit arbeiten kann.-> Blockly so, dass man es lesen kann.
und den Code in code-tags. -
@derdom sagte in Skripte beginnen doppelt zu laufen:
um recht einfache "repeat while true" Schleifen
so etwas sollte nur derjenige nutzen, der weiß was er da tut!
Schleifen führen in den meisten Fällen zu Überlastung des Systems, weil diese im Millisekundentakt abgefeuert werden -
Erst stellt er was ein.
Dann sagt man er soll es richtig einstellen.
und dann löscht er alles.Was soll das ?
Äußerst negativ und von mir auch so bewertet. -
Das Problem ist scheinbar noch nicht behoben.
In unregelmäßigen Abständen feuern die Trigger mit fester Zeitvorgabe nach genau 60 s ein zweites mal.
Das ist sehr unangenehm, weil ich am Tagesende Daten wie Energie, Lauf- und Ladedaten meines E-Autos usw. aufbereite. Da werden z. B. auch Tagesdaten zurückgesetzt, die dann in der Mail fehlen.
Ich kann mir keinen Reim darauf machen, weil das immer wieder vorkommt. Alle paar Wochen oder auch öfter.
Mit
"if ((new Date().getMinutes()) < 58) {"
kann man das zwar unterbinden, wobei die "58" eine Minute über der Startzeit des Skripts zu 23.57 Uhr ist und im Fehlerfall eine Debug Meldung im Protokoll steht.Aber das ist ja nicht Sinn des Triggers.
Wer hat dazu eine Idee, woran das liegen könnte?