NEWS
API Dokumentation
-
Ok dann ist da grundlegend was kaputt:
https://github.com/ioBroker/ioBroker.js-controller/issues/333 -
@jobe451 Ich habe versucht nachzuvollziehen, was getChannelsOf tut. Bis zum Aufruf von
that.objects.getObjectView
macht das Sinn. Danach kann ich "offline" nicht testen.Aber jetzt muss ich nochmal ganz dumm fragen... Was steht denn in
error
?Und poste doch bitte mal Definitionen der Objekte die du erwartest.
-
@jobe451 Ja mal blöd gefragt, sind denn da Channels? Bin mir nicht sicher ob er nicht nur auf der einen "Ebene" sucht.
-
Weiter oben habe ich einen Screenshot, von der Struktur wie ich sie in der Objektliste sehe. Ebenfalls weiter oben hab ich eine simplifizierte script-sequenz, die zeigt, wie ich die struktur schaffe.
Im wesentlichen mache ich:
this.createDevice => this.createChannel (mit id aus device callback) => this.createState (mit id aus channel callback)Die Dinger, die ich mit this.createChannel erstelle erscheinen dann auch in der Objektliste. Also ich würd schon sagen, dass es da Channels hat...
-
Der Screenshot zeigt leider das wichtigste nicht. Kannst bitte einfach eins dieser Channel-Objekte öffnen (Edit-Bleistift) und den Inhalt des Reiters "Raw" zeigen?
-
Und was ich meinte war: Wenn deine Struktur "Instanz -> Device -> Channel" ist und Du fragst "channelsOf(Instanz)" dann kommt da nichts ... du musst wenn "getChannelsOf(Device)" fragen ... aber ja ich weiss das Du das schon durch hast ...
-
Hier ist ein Screenshot, der auch die Icons rechts zeigt. Allerdings hab ich auf den ersten zwei Stufen keinen Edit-Bleistift verfügbar um den Raw-Inhalt aufzurufen. Was könnte das bedeuten?
-
Das bedeute wie vermutet das das keine Objekte sind! Sonst gäbe es in der Spalte wo sonsst "state" steht nämlich "device "und "channel".
Also: Wie vermutet ganz am Anfang: DU hat keine existierenden Objekte vom Type device oder channel für enocean_jobe.0.enocean_jobe_0_tv und enocean_jobe.0.enocean_jobe_0_tv.enocean_jobe_0_tv_A ... und dann ist klar das "getChannelsOf" nichts findet.Man sollte als eher prüfen ob die CreateDevcie und createChannel methoden korrekt aufgerufen werden. An sich gilt auch hier das nichts mit punkten sein sollte sondern man die entsprechenden Namen (also das zwischen den punkten angibt. Das würe ggf auch erklären warum die benahmung so komisch ist weil überall enocean_jobe_0_ dabei ist
-
Ist das der komplette Objektbaum? Oder tauchen weiter unten "verlorene" Channel-Objekte ohne States auf?
-
Vielen Dank für die Unterstützung. Ich konnte das Problem lösen. Darum hatte es nicht geklappt:
Ich hatte erwartet, dass ich die id, welche aus dem callback zurück kommt, für's anlegen der weitern Objekte verwenden soll.