NEWS
Organisieren mit Alias, wie macht ihr das
-
@da_Woody LinkedDevices ist nicht dasselbe wie Alias, obwohl beide das gleiche Ziel haben.
Hier ein Video für die (händische) Erstellung von Alias -
@Gargano said in Organisieren mit Alias, wie macht ihr das:
LinkedDevices ist nicht dasselbe wie Alias, obwohl beide das gleiche Ziel haben.
auf die erklärung wäre ich gespannt.
-
@da_Woody LinkedDevice ist ein eigener Adapter vom Scrounger, Alias ist im Administrator Bereich zu finden unter Geräte.
Bei beiden ist ja der Hintergrund bei einem Wechsel von einem Device nicht alle Objekte im VIS und Scripte zu ändern.Ansonsten im Forum:
Alias best practice -
@Gargano eben, beide erledigen den selben job. ob die objekte jetzt unter alias.0, oder linkeddevices.0 stehn ist doch schnurzegal.
-
@da_Woody Vermutlich ist das so. Aber das ist eigentlich auch ein Grundproblem bei Open-Source, es gibt mehrere Varianten. Schließlich habe ich auch schon gelesen, dass einige ihre Datenpunkte in javascript.0 oder 0_userdata.0 anlegen.
Ich werde jetzt wohl folgendes Konzept anwenden:
Alle Datenpunkte, die ich ihm Rahmen eines Scriptes zusätzlich benötige, lege ich in 0_userdata.0 an. Datenpunkte von Geräten, die ich im Rahmen von Scripten benötige, lege ich als Alias an. Diesen Verwende ich in den Scripten und im Falle eines Gerätetauschs passe ich nur den Alias im Datenpunkt an und gut isses.Jetzt muss ich mir nur noch ein gutes Sicherungskonzept überlegen.
Das einfachste wäre die komplette Spiegelung der SD-Card. Da will ich allerdings kurzfristig auf eine SSD umsteigen.
Backitup im ioBroker ist auch eine Möglichkeit, deckt allerdings vermutlich nicht alles ab
ZigBee mit Conbee II und Phoscon von hat seine Daten und Konfiguration z.B. hier liegen: (/home/pi/.local/share/dresden-elektronik/deCONZ)
Und auch VIs muss vermutlich in einer extra Session gesichert werden.Habt ihr da entsprechende Sicherungsansätze fü eure manuellen Erweiterungen??
-
@RalfTh sagte:
Alle Datenpunkte, die ich ihm Rahmen eines Scriptes zusätzlich benötige, lege ich in 0_userdata.0 an. Datenpunkte von Geräten, die ich im Rahmen von Scripten benötige, lege ich als Alias an.
Genau das ist das beabsichtigte Konzept von "0_userdata.0" und "alias.0".
-
Also ich nutze linkedDevices - wer hätte es gedacht
Bei mir sind alle HW Geräte immer nach Funktion -> Stockwerk -> Raum geordnet.
Datenpunkte die ich zusätzlich für Geräte benötige - die z.B. durch Skripte Berechnungen etc. (siehe Screenshot Bsp.Energie
) erstellt werden auch in der linkedDevices Instanz erzeugt. Das ganze sieht dann z.B. so aus:Da ich mit VS Code meine Skripte erstelle kann ich so direkt die IntelliSense Funktion für alle DPs verwenden und muss die IDs nicht kompliziert über Objekt-Baum suchen.
Unter
0_userdata.0
leg ich alle nicht HW relevanten Datenpunkte an, wie z.B. Verbrauchszaehler Skript, Adapter spezifisch und Datenpunkte die ich für die VIS brauche. Hier auch die gleiche SubStruktur wie oben Funktion -> Stockwerk -> Raum:Skripte werden ebenfalls nach der Struktur angelegt - Funktion -> Stockwerk -> Raum. Meistens sind die bei mir aber nur unter Funktion, weil die Skripte sich auf alle Geräte unterhalb beziehen, siehe Beispiel Licht:
Für mich die perfekte Struktur, v.a. weil man in den Skripten meistens nur die Instanz ersetzen muss um auf Datenpunkt eines Raumes mit anderer Funktion zuzugreifen.
-
@Scrounger said in Organisieren mit Alias, wie macht ihr das:
Bei mir sind alle HW Geräte immer nach Funktion -> Stockwerk -> Raum geordnet.
Datenpunkte die ich zusätzlich für Geräte benötige - die z.B. durch Skripte Berechnungen etc. (siehe Screenshot Bsp.Energie
) erstellt werden auch in der linkedDevices Instanz erzeugt. Das ganze sieht dann z.B. so aus:Kannst du bitte mal einen Screenshot von einem offen Raum einstellen. Mich würde interessieren ob du zb. alle Lampen und deren states (switch/level...) noch weiter gruppierst oder alles dann in einen Raum wirfst.
-
Ja hab ich.
Bsp Lichter in einem Raum - hab nur DPs verlinkt die ich auch wirklich brauche:
Bsp Sensoren - Fenster:
-
@RalfTh Ich hab eine SSD als kleines USB-Device, sieht aus wie ein Knopf.
Als Backup mach ich bei größeren Änderungen ein Full-Backup von der SSD. Zusätzlich BackitUp auf Google und die Scripte und die VIS speichere ich nochmal manuell. In Vis unter 'Projekt export' und in den Scripten 'Exportieren Sie alle Scripte'.Das ist vielleicht Hosenträger und Gürtel, aber ich hatte schonmal das Vergnügen , die VIS neu aufzusetzen.
-
@Gargano Das kann ich verstehen, ich habe gerade das Vergnügen. Ich hatte einen Vollcrash mit meiner SD-Card. Ich möchte jetzt, auch wegen der Sicherheit auf eine SSD wechseln. Was ist denn das für eine interessante SSD die du hast? Kannst mal Hersteller nennen?
-
@RalfTh Sundisk Ultra Fit USB 3.1 . Gibt es bis 512 GB
-
@Gargano sagte in Organisieren mit Alias, wie macht ihr das:
Sundisk Ultra Fit USB 3.1
Das ist aber kein SSD-Laufwerk, sondern USB-Stick?! Hast du den vorher mit einem Programm getestet? Ich habe da einige unschöne Bewertungen gelesen bezüglich Kapazität und Schreib-/Lesegeschwindigkeit.
-
-
@paul53 said in Organisieren mit Alias, wie macht ihr das:
Genau das ist das beabsichtigte Konzept von "0_userdata.0" und "alias.0".
das konzept habe ich ja verstanden, im endeffekt ists aber egal wie die instanz heisst.
@Scrounger hätte statt linkeddevice.0 genauso gut alias.0 verwenden können, hätte das was geändert? ich denk mal nicht.
interessant find ich den ansatz Funktion -> Stockwerk -> Raum. der vorteil erschliesst sich mir noch nicht so ganz. finde da Stockwerk -> Raum -> Gerät -> benötigte Datenpunkte im falle eines hardware tausches übersichtlicher. ein verzeichniss, IDs ändern fertig. oder übersehe ich da irgendwas? -
@da_Woody sagte in Organisieren mit Alias, wie macht ihr das:
@paul53 said in Organisieren mit Alias, wie macht ihr das:
Genau das ist das beabsichtigte Konzept von "0_userdata.0" und "alias.0".
das konzept habe ich ja verstanden, im endeffekt ists aber egal wie die instanz heisst.
@Scrounger hätte statt linkeddevice.0 genauso gut alias.0 verwenden können, hätte das was geändert? ich denk mal nicht.
interessant find ich den ansatz Funktion -> Stockwerk -> Raum. der vorteil erschliesst sich mir noch nicht so ganz. finde da Stockwerk -> Raum -> Gerät -> benötigte Datenpunkte im falle eines hardware tausches übersichtlicher. ein verzeichniss, IDs ändern fertig. oder übersehe ich da irgendwas?Für die Namensgebung, schau dir doch mal mein Schema an (unter "Bezeichnungen"):
SR-HZZ(X) ^^ ^^ ^ || || + optionaler Index (A-Z), wenn am gleichen Ort mehrere Sachen sind || |+--- durchnummerierte Zahl, wenn auf der gleichen Höhe mehrere Orte existieren || +---- Höhe: in den meisten Fällen B=Bodennähe, W=Wand, D=Decke, F=Fenster |+------ Raum +------- Stockwerk
Damit kann ich nicht nur Aliasse in ioBroker lösen sondern auch jegliche Beschriftung in Verteilerkästen. Ist zwar weniger sprechend, aber sehr effizient.
Für die Aliasse würde ich dann aber
alias.0.sr.hzzx
verwenden.
Geräte, die nicht in diese Kategorisierung passen, kämen dann unteralias.0.sr.<gerätename>
-
@RalfTh
Ich möchte den Thread nicht sprengen, aber was ist der Unterschied zwischen den Adaptern Linked Devices und Devices ?
Welcher Adapter wird wann empfohlen? -
@Scrounger sagte:
Unter 0_userdata.0 leg ich alle nicht HW relevanten Datenpunkte an, wie z.B. Verbrauchszaehler Skript, Adapter spezifisch und Datenpunkte die ich für die VIS brauche. Hier auch die gleiche SubStruktur wie oben ...
Skripte werden ebenfalls nach der Struktur angelegtSo halte ich es auch von Anfang an, nur mit dem Unterschied, dass ich getIdByName() und eindeutige, strukturierte Namen verwenden musste, denn damals gab es noch keine Alias-Funktion / keinen LinkedDevices-Adapter.
Da häufig benötigt, könnte man so die Pfadbildung und spezifische setState()-Funktionen in ein globales Script packen:
const idsVirtu = name.replace('script.js.', '0_userdata.0.'); const idsAdapt = name.replace('script.js.', 'alias.0.'); function setVirtuState(id, val) { setState(idsVirtu + id, val, true); } function setAdaptState(id, val) { setState(idsAdapt + id, val, false); }
@da_Woody sagte in Organisieren mit Alias, wie macht ihr das:
Stockwerk -> Raum -> Gerät -> benötigte Datenpunkte im falle eines hardware tausches übersichtlicher.
Das ist Ansichtssache, wobei eine 2-Zimmer-Wohnung sicherlich anders behandelt werden muss als ein Hotel.
-
@da_Woody sagte in Organisieren mit Alias, wie macht ihr das:
@Scrounger hätte statt linkeddevice.0 genauso gut alias.0 verwenden können, hätte das was geändert? ich denk mal nicht.
Zum dem Zeitpunkt gab es noch keine alias. Linkeddevices verwendet auch keine alias, sondern hat eine eigene Methode implementiert. Von daher nein.
interessant find ich den ansatz Funktion -> Stockwerk -> Raum. der vorteil erschliesst sich mir noch nicht so ganz. finde da Stockwerk -> Raum -> Gerät -> benötigte Datenpunkte im falle eines hardware tausches übersichtlicher. ein verzeichniss, IDs ändern fertig. oder übersehe ich da irgendwas?
Ich hatte das früher auch anders rum, bin dann aber aus einem Grund auf die andere Struktur gewechselt. Ist aber so lange her, das ich es einfach nicht mehr weiß
-
@UncleSam Puh, das ist ja sehr komplex. Ich habe mir mal dein Post zum Hausumbau angesehen.
Bei mir gestaltet sich das eher sehr übersichtlich. Eine übersichtliche Anzahl an WLAN-Steckdosen, einige Thermometer, einige Schalter, einige Kontakte.-
Ich erfasse meinen Gas- und Stromverbrauch und berechne meine Kosten etc
-
Ich überwache größtenteils den Stromverbrauch mit meinen WLA-Steckdosen und erfasse die Verbräuche. Das ist sehr erhellend.
-
Für den Wintergarten habe ich einen Frostschutz mit den Komponenten Steckdose, Thermometer und Türkontakt realisiert.
Das war es auch schon so ziemlich.
-