NEWS
Objekte /Adapter Namen ändern
-
@Homoran
?
Ich habe den Namen selber angepasst. Nur das geht leider nicht bei anderen Adaptern -
@Elektroman siehe EDIT
-
@Homoran sagte in Objekte /Adapter Namen ändern:
@Elektroman
Das probiere ich aus - das wäre ja dann genau die Lösung.
Woher soll denn der Programmierer wissen, dass du .2 im Schlafzimmer hastEDIT - Ach ja, das geht ja nicht.
Ich wusste nicht, dass es bei Enigma Usern möglich ist das zu editieren.Ich dachte dein "geht" bezog sich darauf dass es doch geht, dass ein Programmierer da etwas reinschreibt - und die anderen nicht
Ich kann mir das nur so vorstellen. Die Umgebung ist doch bestimmt für alle Adapter Programmierer gleiche. Vielleicht hat der von Enigma was anders gemacht
it's not a bug it's a feature
-
@Elektroman sagte in Objekte /Adapter Namen ändern:
Ich habe den Namen selber angepasst.
und der erscheint dann auch in der ID-Selector Box?
Dann wäre das wirklich einen Feature Request wert
-
@Elektroman sagte:
Vielleicht hat der von Enigma was anders gemacht
Ja, er hat in der Datei io-package.json unter "instanceObjects" einen solchen Eintrag, den die meisten Adapter nicht haben (hier aus Admin-Adapter:)
{ "_id": "", "type": "meta", "common": { "name": "user files and images for background image", "type": "meta.user" }, "native": {} },
-
-
@Elektroman
Da hast du es ja auch eingetragen:Adapter.Instanz.Gerät.Datenpunkt
=
Enigma2.0.command.channel_upUnd dein Eintrag steht in deine Screenshot bei der Instanz enigma2.0
Aber das wäre ja auch kein Beinbruch.
Mit einem Klick:
klappt man ja alles im ersten Level auf -
Ok danke, hilft das mir weiter?
-
@Elektroman sagte:
hilft das mir weiter?
Erstelle ein Issue auf Github, dass Du solch ein Meta-Objekt haben möchtest.
Das Problem ist, dass geänderte Namen beim nächsten Update wahrscheinlich überschrieben werden. -
@Elektroman sagte:
hilft das mir weiter?
Du kannst Meta-Objekte mittels Javascript erzeugen und dabei gleich den passenden Namen vergeben.
// Instanz-Ordner, der kein Objekt ist, zu einem Meta-Objekt machen const Instanz = 'mclighting.0'; const Name = 'ESP Wohnzimmer'; // ab hier nichts ändern ! var obj = { type: "meta", common: { name: Name, type: "meta.user" }, native: {} }; if(!existsObject(Instanz)) setObject(Instanz, obj);
setObject muss in der Konfiguration der Javascript-Instanz freigegeben sein.
-
Hallo @paul53
Überleben die das nächste Adapter-Update?@Elektroman
Das ändert aber nichts, dass die Instanzen in der ID-Selector Box immer erst in der zweiten Hierarchieebene sind.
Die erste Ebene (Adapter) zu benennen ergibt keinen Sinn, da es nur einen gibt.
-
@Homoran sagte:
Überleben die das nächste Adapter-Update?
Das weiß ich nicht. Ich habe mal bei node-red den Namen geändert und danach eine andere Version installiert: Der geänderte Name wurde überschrieben.
EDIT: Habe ioBroker.mclighting installiert, 2 Instanzen erzeugt und anschließend 2 Meta-Objekte per Script erzeugt. Nach Downgrade auf Version 0.0.11 und anschließendem Upgrade auf Version 0.0.12 blieben die Meta-Objekte erhalten.
-
Hallo Paul,
Erst einmal vielen Dank für den Lösungsansatz! Kann ich das Script einfach in einem neuen Blockly Script einfügen und einmal ausführen ?
-
@Elektroman sagte:
neuen Blockly Script einfügen und einmal ausführen ?
Ja, neues Javascript (nicht Blockly).
-
Super, vielen Dank!!!!!!!
Hat funktioniert !!!! -
Hab ich richtig verstanden, dass die Adapterinstanznummern nicht durch Namen ersetzt werden können?
-
@maxpd ja!