NEWS
Selector, Objekte, und States gelöschter Wecker/Alarme
-
Hallo zusammen,
ein Verhalten des selectors ($(…)) beim Suchen von Wecker Objekten bringt mich langsam aber sicher um den Verstand
Das Phänomen wurde hier schon von BigTastyBacon (viewtopic.php?f=37&t=16095&start=240#p176009) berichtet.
Ich lösche einen Wecker in der Alexa App und sehe
alexa2.0 2018-09-26 21:08:50.764 info channel Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131 deleted (null) alexa2.0 2018-09-26 21:08:50.763 info state Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131.triggered deleted alexa2.0 2018-09-26 21:08:50.762 info state Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131.enabled deleted alexa2.0 2018-09-26 21:08:50.751 info state Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131.time deleted
Eine Abfrage:
$("state[id=Alarm.]").each(function (id, i) { console.log('id'); console.log(id); console.log('obj') console.log(JSON.stringify(getObject(id))) console.log('state') console.log(JSON.stringify(getState(id).val)) });
Liefert dann beispielsweise für *.enabled
javascript.0 2018-09-26 21:16:16.981 info script.js.AlarmCopy: true javascript.0 2018-09-26 21:16:16.981 info script.js.AlarmCopy: state javascript.0 2018-09-26 21:16:16.981 info script.js.AlarmCopy: null javascript.0 2018-09-26 21:16:16.980 warn Object "alexa2.0.Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131.enabled" does not exist javascript.0 2018-09-26 21:16:16.980 info script.js.AlarmCopy: obj javascript.0 2018-09-26 21:16:16.980 info script.js.AlarmCopy: alexa2.0.Echo-Devices.XXXXXXX.Alarm.d990f7ee-d347-3c7c-91fc-416fe363d131.enabled javascript.0 2018-09-26 21:16:16.979 info script.js.AlarmCopy: id
Ein Neustart des javascript adapters löst das Problem bis erneut ein Wecker gelöscht wurde.
Kurzum: Der selector findet gelöschte Wecker, deren Objekte existieren nicht mehr, aber die States können gelesen werden.
Meine Frage: Ist das ein Verständnisproblem (Objekt/State) bei mir, oder ist hier tatsächlich etwas nicht in Ordnung? Gibt es einen alternativen Weg um alle aktuell existieren Wecker Objekte auszulesen der das umgeht?
Beste Grüße und Vielen Dank
qoka
-
Ich denke eher das es daran liegt das der JavaScript-Adapter initial beim Start Objekte und States komplett einliesst, aber dann Objekt-Updates nicht korrekt nachzieht. Wäre ggf ein JavaScript-Adapter GitHub-Issue wert