NEWS
Init vom iobroker erkennen
-
Hallo,
ich verwende text2command in Verbindung mit dem telegramm Adapter und mein iobroker läuft als Docker Container.
Nun habe ich das Problem, dass jedes Mal wenn ich den Container stoppe und erneut starte, dass iobroker die dem text2command zugeordneten Blockly's beim Start des Containers einmal komplett ausführt (die Blocklys verwenden ja keinen TriggerBlock, sondern werden über text2command getriggert).
Also dachte ich mir, dass ich einen Datenpunkt iobroker_in_init erzeuge der mit true initialisiert wird, den z.B. nach 2min auf false setze. In den Blocklys für text2command prüfe ich dann ob iobroker_in_init == true und wenn ja führe ich im Blockly nichts weiteres aus, da der Trigger ja vom Init des iobrokers kommt. Das klappt fein beim ersten Boot, aber einmal iobroker_in_init == true bleibt das auch über den Stop und Neustart des Containers erhalten und im nachfolgenden Boot werden die Blocklys wieder im init des iobrokers komplett ausgeführt. Das ist ja sogar korrekt da iobroker die Werte beim sauberen Herunterfahren speichert.
Mir geht es also darum den Initialisierungsprozess des iobrokers zu erkennen und darauf in meinen Blocklys abzufragen.
Hat da jemand eine Idee wie ich das machen kann?
-
@peterimnetz Löse es umgekehrt: mach kein Script ohne Trigger.
Du kannst ja eigene Datenpunkte erstellen, auf die du triggerst und die du von Telegram aus setzt. Scripts ständig ein- und auszuschalten kann zu komischen Nebenwirkungen führen, dafür ist ioBroker nicht ausgelegt.
-
@unclesam Gute Idee! Das werde ich die Tage ausprobieren. Dank Dir für den Tipp!!!
-
@UncleSam Klappt