ioBroker.javascript icon indicating copy to clipboard operation
ioBroker.javascript copied to clipboard

createAlias bitte einrichten.

Open bahnuhr opened this issue 3 years ago • 12 comments

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

bahnuhr avatar Feb 28 '22 08:02 bahnuhr

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.

IoTAntimon avatar Feb 28 '22 08:02 IoTAntimon

e.g. https://forum.iobroker.net/post/769912

Apollon77 avatar Feb 28 '22 12:02 Apollon77

Habe das Script mal erweitert: siehe: https://forum.iobroker.net/topic/50673/eigene-datenstruktur-anlegen-wie-und-wo/36?_=1646036721130

bahnuhr avatar Feb 28 '22 19:02 bahnuhr

Warum closed?

Apollon77 avatar Mar 01 '22 10:03 Apollon77

weil erledigt.

bahnuhr avatar Mar 01 '22 11:03 bahnuhr

Ehrlich? Wusste gar nicht das der Javascript Adapter die Funktion jetzt drin hat? ;-)

Apollon77 avatar Mar 01 '22 11:03 Apollon77

DIe Idee von dem Thema aus meienr Sicht war das es eine generische Funktion i Java Script Adapter gibt sodass keiner "setObject" aktivieren muss

Apollon77 avatar Mar 01 '22 11:03 Apollon77

gibts schon was neues zu berichten Apollon? :)

SteveWi-291 avatar May 20 '22 10:05 SteveWi-291

Ganz viel ... und ganz verschiednenes .. abe rich dneke Du meinst ob und wann jemand das hier baut? Korrekt? Ja ne dazu nichts neues

Apollon77 avatar May 20 '22 11:05 Apollon77

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?

Apollon77 avatar May 29 '22 20:05 Apollon77

createAlias(aliasName, sorceID) und dann es wird alles aus Source kopiert. Als Kurzform. Und aufwändiger geht natürlich auch

GermanBluefox avatar May 30 '22 08:05 GermanBluefox

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?

Apollon77 avatar May 30 '22 08:05 Apollon77