Noob - Wie fhem.cfg am einfachsten Strukturieren?

Begonnen von Alaska, 03 Februar 2014, 19:51:40

Vorheriges Thema - Nächstes Thema

Alaska

Hallo zusammen,

ich habe mir im Wiki unter dem Absatz "Wie fange ich an?" mal alles durchgelesen und hab da eine Frage zum strukturieren bzw. erweitern der fhem.cfg

Ich kann ja alles in die fhem.cfg schreiben wie z.B. define SatReceiver1 ENIGMA2 192.168.10.38, usw. usf. auch alle "set" usw. Einträge, alles untereinander in die cfg. Dadurch wird die fhem.cfg nach ein paar Einträgen schon sehr überladen und schwer zu fixen, wenn man sich mal wo vertippt hat oder sonstige Probleme auftauchen.
Wenn ich die Howtos und Anleitungen richtig verstanden habe, kann ich für jeden Raum, Stockwerk oder auch jedes Gerät, Sensor, Aktor usw. eine eigene .cfg anlegen und mittels include /Pfad/zur/.cfg in der fhem.cfg einbinden, oder?
Gibt es ein Limit für include Einträge?
Muss ich für die ausgelagerten .cfg's etwas spezielles beachten?
Wie habt ihr das Problem einer überfrachteten fhem.cfg gelöst?
Erstellt ihr für jedes Gerät eine .cfg, oder für jeden Raum? Welche Struktur hat sich bei euch bewährt?

Danke und einen schönen Abend wünsche ich euch!

Klaus

betateilchen

Eine einzige fhem.cfg um deren Inhalt und Struktur ich mich in keinster Weise kümmere, da ich diese niemals von Hand bearbeite. Von daher ist es mir schnurzpiepegal, wie es in der Datei aussieht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Anfaenger sollten fhem.cfg aus mehreren Gruenden nicht editieren, selbst erfahrene Benutzer machen das nicht (s.o).

Wer trotzdem editiert, sollte damit rechnen, dass ein save (was auch von autocreate ausgeloest wird!) die Struktur modifiziert, d.h.: Zeilen umsortiert, Befehle ausser define/attr entfernt, usw.

Nach Editieren erfolgt ueblicherweise ein rereadcfg, sonst kriegt FHEM die Aenderungen nicht mit. rereadcfg hat aber Seiteneffekte, wie z.Bsp. verpasste Nachrichten.

Falls man notify/at im Detailfenster editiert, dann kann man \ und ;; sparen, im fhem.cfg nicht. Wenn man Attribute per dropdown auswaehlt, dann kann man sich nicht vertippen. Usw.

Alaska

Danke,

ich denke wohl etwas zu kompliziert was die Verwendung von Fhem angeht....naja, ich nutze halt seit Jahren als Hauptsystem Archlinux, da bin ich es gewohnt zu editieren und configs an meine Bedürfnisse anzupassen.....

Puschel74

Hallo,

FHEM passt hier die fhem.cfg an seine Wünsche an.
Lass sie so und kümmer dich nicht drum wie sie aussieht.
FHEM findet alles und weiß wo was abgespeichert ist.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Alaska

Zitat von: Puschel74 am 04 Februar 2014, 05:55:02
Hallo,

FHEM passt hier die fhem.cfg an seine Wünsche an.
Lass sie so und kümmer dich nicht drum wie sie aussieht.
FHEM findet alles und weiß wo was abgespeichert ist.

Grüße

ja, werd ich so machen.....auch wenn ich ein von Haus aus neugieriger Mensch bin und gern weis wie es "unter der Haube" aussieht

Danke!

Klaus

rudolfkoenig

Du kannst dich nicht gleichzeitig als Noob und erfahrenen Archlinux Benutzer bezeichnen. Du kannst gerne die fhem.cfg aendern, musst halt dann mit manchen Ueberraschungen leben. Anders formuliert: FHEM fuehrt gerne ein save durch, und das entspricht einem Dump der internen Datenstrukturen. Da kann gerne was von deinen Kommentaren/Ordnung/etc verlorengehen.

Alaska

Zitat von: rudolfkoenig am 04 Februar 2014, 16:44:50
Du kannst dich nicht gleichzeitig als Noob und erfahrenen Archlinux Benutzer bezeichnen. Du kannst gerne die fhem.cfg aendern, musst halt dann mit manchen Ueberraschungen leben. Anders formuliert: FHEM fuehrt gerne ein save durch, und das entspricht einem Dump der internen Datenstrukturen. Da kann gerne was von deinen Kommentaren/Ordnung/etc verlorengehen.

Mit Noob meinte ich FHEM! Linux nutze ich seit 1998, seit drei Jahren nur noch Arch....
Aber FHEM ist ja doch etwas anders und für mich Neuland. Ich werd mich auf jeden Fall erst mal an die sichere Bedienung von FHEM halten, das andere ergibt sich erfahrungsgemäss von selber ;-)

Mein Problem ist, dass ich ausser der CAD/CAM Produktionssoftware in meiner Arbeit und einem Browser kaum mit Maus und GUI arbeite.....privat mache ich fast alles in der Konsole....ich bin mittlerweile ziemlich "mausentwöhnt", aber nichtsdestotrotz sehr lernbereit! Es ist einfach so, wenn ich was lese von einer Befehlszeile, dann habe ich eine Konsole oder einen Editor vor meinem geistigen Auge, und nicht nur eine einzige Zeile in die ich einen Befehl eintippe, der dann irgendwo (fhem.cfg) abgespeichert wird, ohne dass ich sofort sehe wo er nun steht.

Aber wie gesagt, ich bin lernfähig und bereit mich in die GUI einzuarbeiten.......schliesslich soll FHEM bei mir zuverlässig und stabil laufen, und nicht durch mein eigenes eingreifen instabil und unsicher.

Danke für eure Geduld!

Klaus

rudolfkoenig

Du kannst ja gerne die "telnet" Schnittstelle verwenden :), history gibt es durch socat.
Z.Bsp. wenn du SSL aktiviert hast, mit
   socat openssl:fhemhost:fhemport,verify=0 readline
Fuer die Doku ist aber HTML/Browser notwendig.

tinyfhem

Ich bin es ebenso gewohnt, derartige configs mit dem vi zu erstellen und ich pflege darin Struktur und Einrueckungen. Beispiel wie es aussieht, wenns fhem selbst gemacht hat:

define switch1 EnOcean FEFF2D58
attr switch1 room EnOcean
attr switch1 subType switch

Ich mochte es nicht wenn alles kreuz und quer steht und habe folgendes gemacht:

define switch1 EnOcean FEFF2D58
attr   switch1 room EnOcean
attr   switch1 subType switch

Schnell habe ich gemerkt, dass derartige Struktur bei Benutzung von fhem nicht von langer Dauer ist sondern das fhem die cfg file selbst nach Belieben ueberschreibt und die Struktur defakto eliminiert.

Zur Zeit (bin auch noch Anfaenger) bin ich auf dem Trip, zu verhindern, dass fhem jemals in die cfg schreibt aber ich habe die Befuerchtung, dass das nicht lange gutgehen wird.

Schade, dass das so ist, aber es ist eben so wie es ist.
FHEM auf Raspberry Pi, EnOcean Pi, HomeMatic LAN Konfigurations Adapter, CUL 868 V3, CUL 433 V3

betateilchen

Zitat von: tinyfhem am 04 Februar 2014, 17:52:10Zur Zeit (bin auch noch Anfaenger) bin ich auf dem Trip, zu verhindern, dass fhem jemals in die cfg schreibt aber ich habe die Befuerchtung, dass das nicht lange gutgehen wird.

Wird es auch nicht, weil es fhem-Module gibt, die ein save auslösen. Und das ist auch gut so, und das kannst Du nicht verhindern, und auch das ist gut so.

Ich wäre eigentlich sehr dafür, die gesamte fhem-Konfiguration in eine Datenbank zu verlegen, dann hören die Anfängerspielereien in der fhem.cfg, deren Resultate hier im Forum inzwischen einen hohen Prozentsatz an Fragen verursachen, quasi automatisch auf.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Puschel74

Hallo,

ZitatIch wäre eigentlich sehr dafür, die gesamte fhem-Konfiguration in eine Datenbank zu verlegen, dann hören die Anfängerspielereien in der fhem.cfg, deren Resultate hier im Forum inzwischen einen hohen Prozentsatz an Fragen verursachen, quasi automatisch auf.
Da häng ich mich dazu - auch dafür.

Ich weiß aber nicht was das an Aufwand für die Programmierer darstellt und ob das so ohne weiteres machbar ist (ich denke mal eher nicht).

Zitatund ich pflege darin Struktur und Einrueckungen.
Wozu?
Wenn du die Detailansicht öffnest dann sieht alles schön und sauber und stukturiert aus.
Egal ob ein Device oder ein notify/at.

Wie das in der fhem.cfg steht (ich weiß ich wiederhole mich) ist mir egal.
Da muss FHEM damit klar kommen und das schafft es auch.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

svenson08

ZitatIch wäre eigentlich sehr dafür, die gesamte fhem-Konfiguration in eine Datenbank zu verlegen, dann hören die Anfängerspielereien in der fhem.cfg, deren Resultate hier im Forum inzwischen einen hohen Prozentsatz an Fragen verursachen, quasi automatisch auf.

Das unterschreibe ich auch. Ich selbst bin zwar ein Freund von config Dateien, wenn es darum geht mal schnell was abzuändern. Bei FHEM fände ich eine Datenbank aber angebrachter, und es gäbe bestimmt auch den ein oder anderen Vorteil. Evtl Nachteile und den Aufwand kann ich bei weitem nicht abschätzen.

Die Frage wäre ob sich FHEM dahingehend Entwickelt und ob das Thema an anderer Stelle diskutiert werden sollte.

Mitch

#13
Hab das gerade mit großem Interesse hier gelesen.
Ich mache von Anfang an alles nur über die fhem.cfg, ab und zu attr über die Weboberfläche.

Ich frage mich gerade, wie es gehen soll, Device anzulegen und zu verändern, wenn man nicht direkt die fhem.cfg ändern sollte?

NACHTRAG: hatte gerade eben genau den Fall, dass ich die CFG editieren "musste", weil ich ein Device in einen zusätzlichen Raum anzeigen will, dies aber nicht über das WEBinterface geht.

attr AlleWeg room Zentrale,Anwesend,Anwohner

Oder stehe ich da total auf dem Schlauch?
FHEM im Proxmox Container

ph1959de

Zitat von: Mitch am 05 Februar 2014, 13:34:08
Hab das gerade mit großem Interesse hier gelesen.
Ich mache von Anfang an alles nur über die fhem.cfg, ab und zu attr über die Weboberfläche.

Ich frage mich gerade, wie es gehen soll, Device anzulegen und zu verändern, wenn man nicht direkt die fhem.cfg ändern sollte?
Indem Du einfach das entsprechende "define ... " in das Befehlsfenster schreibst. Danach kannst Du dann über das angelegte Objekt die weiteren Details und Attribute eintragen.

Gruß, Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"