@tukey42 sagte in React Admin Interface:
Ich möchte die Konfiguration als Devices/States im Objektbaum speichern
um hier im thread auch noch zum thema was beizutragen.
der iobroker speichert die instanz-konfiguration eines adapters immer in den objektdaten
system.adapter.<Adaptername>.<Instanznummer>
als json unter folgendem pfad "native"
du kannst bereits bestehende adapter prüfen, indem du den expertenmodus einschaltest. dann erscheint im objektbaum noch der zweig system.*
dort suchst du gemäß dem obigen pfad einen adapter heraus und schaust in den einstellungen des datenpunkt im reiter object data
leider führt iobroker beim beschreiben von native immer einen automatischen adapter neustart durch, welchen du nicht verhindern kannst
ansonsten kannst du deine daten natürlich auch in einem datenpunkt speichern (ob als state oder object bleibt dir überlassen), der deiner adapter instanz zuordenbar ist
<adaptername>.<adapternummer>.config
das object sieht der benutzer erst einmal nicht direkt, den datenpunkt schon und er könnte ihn auch löschen.
als weitere option kannst du auch eine physische datei unter /opt/iobroker/iobroker-data anlegen.
das musste ich für den adapter tvprogram machen, da die datenmenge zu groß war um sie über einen datenpunkt an das widget zu transportieren
aber das würde ich nur im ausnahmefall nehmen um konfigurationsdaten zu speichern.
der Standardweg für react Konfiguration ist wie in der doku beschrieben
du erhältst und setzt die Daten über die beiden events. danach speichert iobroker für dich die daten in dem oben benannten datenpunkt und startet dann den adapter neu.
onPrepareLoad(settings) {
settings.pass = this.decode(settings.pass);
}
onPrepareSave(settings) {
settings.pass = this.encode(settings.pass);
}
onPrepareSave wird erst aufgerufen, wenn der nutzer auch speichern drückt.