NEWS
Hilfe bei den ersten Versuchen einen Adapter zu erweitern !?
-
Hallo zusammen,
ich Wechsel gerade von FHEM zum ioBroker und dabei fehlen mir ein paar Sachen.
Jetzt versuche ich mich gerade darin einen bestehenden Adapter zu verändern bzw. zu erweitern.
Ich habe nicht wirklich Ahnung vom programmieren, aber in anderen Fällen habe ich es mit learning by doing und logischem Denken und dem Versuch Dinge nachzuvollziehen hinbekommen. Daher teste ich mal ...Jetzt stehe ich jedoch direkt vor dem ersten Problem:
Ich habe dem Adapter ein neues Object hinzugefügt und hierfür ein entsprechendes setState.
Im Log sehe ich das setState funktioniert und der Wert abgeholt wird, jedoch wird kein Object angelegt.Erhalte folgenden Fehler: has no existing object, this might lead to an error in future versions
Neustarten der Instanz und aktualisieren bringt nix. Wenn ich die Instanz neu installiere klappt es.
Was kann ich machen damit es direkt funktioniert ? Nach jeder Änderung neu installieren kann ja nicht sein.
Ich hoffe ihr wisst was ich meine ??
Grüße & Danke vorab
Totti -
@tottitoad du musst vorher ein create state machen und den Datenpunkt erzeugen den du mit set state verändern willst.
-
Danach hatte ich schon geschaut ...
Aber so wie es aussieht ist dies im Adapter "integriert"
Es gibt mehrere "create" - state, object, channel und device ... Diese schein ja auch zu funktionieren, da nach der Installation alles angelegt wird.
Wie kann ich eine createState oder auch die anderen "anstossen", das diese auch nach einem Neustart gemacht werden.
Hiermit la das createState aus dem Adapter:
function createStates(device, channel, states, callback) { var keys = Object.keys(states); if (!keys.length) return callback(); var state = keys.shift(); adapter.createState(device, channel, state, states[state].common, function () { //create next state delete states[state]; createStates(device, channel, states, callback); }); }
Grüße & Danke
Totti