NEWS
Vielzahl von Aliasen schnell erstellen
-
Hallo zusammen,
ich arbeite fast von Beginn an ausschließlich mit Aliasen, was sich absolut bewehrt hat. Ich ziehe in den nächsten Wochen in unseren Neubau und dort habe ich etwa 400 Steckdosen/Wand- und Deckenauslässe etc. die ich ungerne einzeln von Hand verknüpfen möchte.
Gibt es eine Möglichkeit ordnerweise Aliase zu erstellen? Also z.B. alle Datenpunkte von KNX.0.Ordner_1 zu Alias.0.KNX.Ordner_1?
Den Alias Manager Adapter habe ich ausprobiert, aber entweder verstehe ich die Funktionsweise nicht oder er ist für diese Funktion nicht vorgesehen...
-
@markus84 Um's kurz zu machen: Nein. Der Alias-Manager Adapter ist schon eine enorme Erleichterung, aber nicht für Deinen Einsatzzweck.
-
@markus84 es gibt ein script, welches aliase anlegt - da müßte man halt eine schleife machen und in dieser schleife werden dann die aliase erzeugt
-
@liv-in-sky said in Vielzahl von Aliasen schnell erstellen:
@markus84 es gibt ein script, welches aliase anlegt - da müßte man halt eine schleife machen und in dieser schleife werden dann die aliase erzeugt
Ich nutze immer dieses Skript hier: https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen
Leider übersteigt es meine Kenntnisse hier eine Schleife einzubauen.
Wenn sich der ursprüngliche Datenpunkt ändern sollte, also z.B. von true/false auf eine Zahl, ändert sich dann eigentlich ein angelegter Alias automatisch mit (natürlich nur wenn man keine Konvertierung eingebaut hat beim Anlegen des Alias)?
-
hier das script - MUSS ABER NOCH FÜR DICH ANGEGLICHEN WERDEN
es wird zum test nur ein ordenr mit allen unter-dp als alias angelegt - bei mir im sonoff adapter
ab zeile 264 ist wichtig
-
@markus84 sagte in Vielzahl von Aliasen schnell erstellen:
Wenn sich der ursprüngliche Datenpunkt ändern sollte, also z.B. von true/false auf eine Zahl, ändert sich dann eigentlich ein angelegter Alias automatisch mit (natürlich nur wenn man keine Konvertierung eingebaut hat beim Anlegen des Alias)?
habe ich noch nicht getestet, da man true false in boolean-dp schreibt und eine zahl in number-dp - sollte do nicht unbedingt verwendet werden
-
$('sonoff.1.FontaHomeDose1.*').each(function(id, i) { let nameAlias=id.replace("sonoff.1.",""); nameAlias=nameAlias.replace(".","-"); //log(id.replace("sonoff.1.","Sonoff-")) createAlias(id,id.replace("sonoff.1.","Sonoff-Decices.Sonoff-"),undefined, undefined, typeof getState(id).val, undefined, undefined,nameAlias, undefined, 'per Script erstellt', undefined, undefined, undefined, undefined) });
das ist die schleife
teste erst mal mit einem device - nach test kannst du dann in der ersten zeile die schleife ändern
-
@liv-in-sky Erst einmal besten Dank! Hast du zufällig irgendwo eine Erklärung dazu?
Ich vermute in Zeile 264 muss ich den ursprünglichen Ordner auswählen?
In Zeile 265 wird ein Zeichen ersetzt, richtig? Wofür brauche ich das?
Zeile 266 verstehe ich leider überhaupt nicht...
Und Zeile 267 legt den neuen Ordnernamen unter alias.0. fest? -
- 264 - ist die schleife - in meinem beispiel scanne ich nur ein device - fontahomeedose - mit allen unterordner und dp
- 265 - ja - da werden zeichen ersetzt, da ich keine punkte gebrauchen kann
- 266 - ist ein log - aber deaktiviert - daher nicht ausgeführt - brauchte ich zum testen (heißt debug in blockly)
- 267 -ja
-
@markus84 poste die schleife hier im thread, bevor du testest - dann schauen wir uns das nochmal an
-
das script sollte nur einmal aktiviert werden - dann legt es alles an - anschliessend deaktiviere das script, sonnst werden die aliase immer bei jeden neustart angelegt - macht zwar nix kaputt - aber erzeugt fehlermeldungen, da sis ja schon exisitieren
das ist ein "sonderscript", da es nur einmal laufen muss - bei standard script's ist das anders - die sind immer aktiviert
du kanst auch jederzeit deine aliase löschen und nochmal machen, wenn dir was nicht gefällt - natürlich bevor du sie in scripte oder vis einbindest
-
@markus84 sagte: Gibt es eine Möglichkeit ordnerweise Aliase zu erstellen?
Das wäre Ressourcenverschwendung. Aliase sollten nur zu den Datenpunkten erstellt werden, die in einer Visualisierung oder in einer Logik (Skript) verwendet werden. Das geht nicht automatisch.
-
da stimme ich zu - man könnte aber bestimmte datenpunkte bestimmen - also eine liste machen, mit dp, von denen man das haben will - das spart einiges
-
@liv-in-sky Danke, ich probiere es später aus und melde mich nochmal. Echt top, dass du so viel geholfen hast!
@paul53 said in Vielzahl von Aliasen schnell erstellen:
@markus84 sagte: Gibt es eine Möglichkeit ordnerweise Aliase zu erstellen?
Das wäre Ressourcenverschwendung. Aliase sollten nur zu den Datenpunkten erstellt werden, die in einer Visualisierung oder in einer Logik (Skript) verwendet werden. Das geht nicht automatisch.
Naja, ich habe schon vor die Datenpunkte alle in Skripten und/oder in der Vis zu nutzen. Und wenn es nur in einer alles aus Logik ist...
-
@markus84 Das ist doch mal wieder die tolle ioBroker Community: Es gibt keine Lösung "out of the box", wie ich oben schon geschrieben habe, und trotzdem hast Du ruck-zuck Hilfe mit einem genau auf Deinen Fall zugeschnittenen Script!
Ohne Leute wie @liv-in-sky und @paul53 wäre das nicht möglich, danke!
-
@liv-in-sky Ich bin leider erst jetzt zum Testen gekommen. Es funktioniert perfekt! Vielen Dank nochmal!
-
@liv-in-sky diese liste müsstest du aber für jedes gerät ändern! alleine wenn ich mir z.b. fronius, oder grünbeck anschaue, sind da jede menge DP drinnen, die eigentlich gar nicht benützt werden, da es auf die anlage ankommt.
ergo ist das mehr als recourcenverschwendung. auch bei jedem anderen gerät gibts DPs wo mir keiner sagen kann, daß er sie eventuell mal in einem script verwenden wird. und wenn, dann kann man diesen alias einfach schnell erstellen.
ich weis, es ist verdammt viel arbeit, die aber durch den alias-manager schon mehr als easy geworden ist. ich hab voriges jahr noch für ca 60 devices alles benötigte die alias mit @paul53 's script mühevoll angelegt.
IMHO geht der vorteil von alias durch so eine aktion mehr als verloren, weil auch die übersichtlichkeit wieder verloren geht.
von raum und ebenen, sontigen zuordnungen ganz zu schweigen...
just my 2 €... -
ich hatte ja erwähnt, mit einer liste zu arbeiten - ich würde mir ein array einbauen , welche die dp beinhaltet, die ich brauche und würde dadurch die masse einschränken - meist braucht man eh nicht mehr wie 3- 5 .
@Markus84 wollte aber alle haben
EDIT: natürlich müßte diese liste für verschiedene adapter, verschiedene inhalte haben
-
@liv-in-sky yes, i know. war nicht gegen deine idea, aber schwer bei dem thema dem richtigen zu antworten. hats halt dich erwischt...
hrnz, du elender editierer du!
genau das meinte ich ja! da verbrauchst du mehr zeit für die listen/arrays erstellen, als es vorteile bringt.
allein bei tasmota. ist das ding ein switch, hängen sensoren dran, u.s.w.
shellys, jedes teil bringt andere DPs mit. -
das kommt auf die anzahl der devices an -
ein liste mit 5 inhalten ist in 15 sek gemacht - bei 400 devices lohnt sich das
bei 400 geräten ist es auch schwierig noch mit räumen und stockwerken bei der aliaserstellung zu arbeiten - da macht das schon sinn, so einn script zu nutzen