ioBroker.javascript
ioBroker.javascript copied to clipboard
createAlias bitte einrichten.
Bitte eine "createAlias" Funktion analog "createState" einrichten. createState funktioniert im Ordner "javascript" und auch unter "0_userdata"; aber halt nicht unter "alias". Und dies wäre doch sinnvoll.
vgl. thread: https://forum.iobroker.net/topic/50673/eigene-datenstruktur-anlegen-wie-und-wo/29?_=1646036181121
Man könnte damit dann einfach DP anlegen.
mfg Dieter
Die Idee finde ich super - dadurch, dass das Anlegen eigener DP's mittlerweile ziemlich eingeschränkt wurde, ist es schwer, eine einheitliche, saubere Struktur aufzubauen. Über eine createAlias()-Funktion könnte man eigene DP aus 0_userdata zu "fremden" DP anderer Adapter mit in den alias-Baum reinverlinken und hätte dann für vis etc. eine einheitliche Baumstruktur an einem zentralen Ort.
e.g. https://forum.iobroker.net/post/769912
Habe das Script mal erweitert: siehe: https://forum.iobroker.net/topic/50673/eigene-datenstruktur-anlegen-wie-und-wo/36?_=1646036721130
Warum closed?
weil erledigt.
Ehrlich? Wusste gar nicht das der Javascript Adapter die Funktion jetzt drin hat? ;-)
DIe Idee von dem Thema aus meienr Sicht war das es eine generische Funktion i Java Script Adapter gibt sodass keiner "setObject" aktivieren muss
gibts schon was neues zu berichten Apollon? :)
Ganz viel ... und ganz verschiednenes .. abe rich dneke Du meinst ob und wann jemand das hier baut? Korrekt? Ja ne dazu nichts neues
Ok, then lets discuss it further:
Current createState signatur wäre:
function (name, initValue, forceCreation, common, native, callback)
(mit nach hinten optional werdend und der Callback rutscht vor)
Für ein createAlias wäre ich spontan bei:
function (name, aliasDef, forceCreation, common, native, callback)
Ist am Ende nicht ganz sauber weil alias ja in common enthalten ist. Würde man ggf wenn beides angegeben ist zusammengemerged werden (alias überschreibt common falls da schon alias drin ist). Name und Alias wäre pflicht.
Die andere Alternative wäre: createState geht automatisch in alias.0 (inkl. setzen wenn der State damit nicht schon beginnt) wenn in common ein alias key drin ist.
Meinungen?
createAlias(aliasName, sorceID)
und dann es wird alles aus Source kopiert. Als Kurzform. Und aufwändiger geht natürlich auch
Denke müssen an das komplete denken. An kopieren hatte ich auch gedacht (also common, nicht native) ... wäre damit bei
createAlias(name, aliasDef, forceCreation, common, native, callback)
aliasDef als String dann ists nur die ID und wir bauen alias.id draus, sonst aliasDef als Object. Wenn nur eine alias.id als String da ist ist kopieren des common einfach, sonst kopieren wir den read alias? Und wenn common angegeben ist wird das dazu gemerged?