NEWS
[solved] "IDs vom Selektor" mit "Alias" - Warnungen
-
Hallo Zusammen,
ich baue gerade meine Heimautomation neu auf und verlagere mehr Funktionen aus der Homematic auf den IOBroker. Meine aktuelle Aufgabe ist es, dass ich die klassische Funktion schreiben möchte, die alle Lichter im Haus ausschaltet. Jetzt versuche ich für alle Geräte, die ich irgendwo steuern möchte einen Alias anzulegen und dann dachte mir, dass ich für Licht keine Rolle erstellen muss, sondern direkt anhand der ID darüber iterieren kann um alle abzuschalten.
Meine Alias mit dem Alias-Manager alle nach dem geleichen Muster angelegt:
... dann versuche ich über alle ID mit dem Muster alias.0.Licht.*.STATE zu iterieren und im Bedarfsfall auszuschalten:
Wenn ich es ausführe dann scheint es auch zu funktionieren, aber das Log wird mir mit Warnungen zugespammt:
javascript.0 2021-05-30 19:28:06.429 warn (1535) getState "alias.0.Licht.DG_Liv_Licht_LED.STATE" not found (3) javascript.0 2021-05-30 19:28:06.429 warn (1535) at processImmediate (internal/timers.js:461:21) javascript.0 2021-05-30 19:28:06.429 warn (1535) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5555:41) javascript.0 2021-05-30 19:28:06.428 warn (1535) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:502:29) javascript.0 2021-05-30 19:28:06.428 warn (1535) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1075:38) javascript.0 2021-05-30 19:28:06.428 warn (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) javascript.0 2021-05-30 19:28:06.426 warn (1535) getState "alias.0.Licht.DG_Julian_Licht_LED.STATE" not found (3) javascript.0 2021-05-30 19:28:06.426 warn (1535) at processImmediate (internal/timers.js:461:21) javascript.0 2021-05-30 19:28:06.426 warn (1535) at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5555:41) javascript.0 2021-05-30 19:28:06.425 warn (1535) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:502:29) javascript.0 2021-05-30 19:28:06.425 warn (1535) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1075:38) javascript.0 2021-05-30 19:28:06.424 warn (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) javascript.0 2021-05-30 19:28:06.423 warn (1535) getState "alias.0.Licht.DG_Flur_Licht.STATE" not found (3)
Und auch im Scriptfenster kommen Meldungen wie:
20:04:18.285 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.288 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.290 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.292 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.295 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.297 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.300 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.302 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.305 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.307 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.312 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.314 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:11:9) 20:04:18.320 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:19:9) 20:04:18.322 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:19:9) 20:04:18.324 warn javascript.0 (1535) at Object.<anonymous> (script.js.Licht.Beleuchtung:19:9)
Wo liegt mein Fehler?
Danke Euch,
Oliver -
Ursache war, dass Aliase offenbar erstmal solange (im Hintergrund) "null" sind, bis das erste Mal eine Statusänderung am Alias oder am Originalobjekt erfolgt. Lösung war, dass ich alle Lichter erst einmal im iobroker eingeschalten habe.
-
@schlammschlumpf sagte: Ursache war, dass Aliase offenbar erstmal solange (im Hintergrund) "null" sind, bis das erste Mal eine Statusänderung am Alias oder am Originalobjekt erfolgt.
Vielleicht hätte ein Neustart der Javascript-Instanz genügt?