Ankündigung

Einklappen
Keine Ankündigung bisher.

Item-Baumstruktur

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Item-Baumstruktur

    Hallo zusammen,

    bin gerade dabei meine Items zu definieren.

    Zwecks der Übersichtlichkeit möchte ich gerne pro Raum eine eigene .conf-Datei anlegen.
    Die allgemeine Struktur war wie folgt geplant:
    Code:
    [Außenanlage]
      [[Hofeinfahrt]]
        [[[Licht]]]
           [[[[LichtA]]]]
    [Haus]
      [[EG]]
        [[[DU-WC]]]
          [[[[Licht]]]]
           ...
          [[[[Rolladen]]]]
           ....
          [[[[Steckdosen]]]]
      [[OG]]
        ....
    Insgesamt habe ich drei Items, welche sich in höchster Ebene [Ebene] befinden.
    Alles weitere sollte in der Struktur abwärts [[...]] -> [[[[[[....]]]]]] definiert werden.

    Wenn ich es jetzt richtig gemerkt habe, ist es allerdings so, dass pro [Höchstebene] immer eine conf-Datei definiert werden muss.

    Meine geplante Struktur (pro Raum eine Datei) wäre somit nicht machbar.

    Gibt es ggf. Möglichkeiten eine weitere Datei (z. B . eg-diele.conf) in die Datei eg.conf zu inkludieren?

    Wie handhabt ihr eure Item-Struktur?
    Alles in eine große Datei?

    Über ein paar Tipps wäre ich euch dankbar.

    Grüße,
    Julian

    #2
    Inkludieren geht nicht. Siehe mal hier, das Thema hatten wir schon häufiger.

    Kommentar


      #3
      Den Thread hab ich über die Suchfunktion leider nicht gefunden, wobei ich da jetzt nicht so viel Infos rauslesen kann.
      Hab eben noch folgenden Thread gefunden:
      https://knx-user-forum.de/forum/supp...eien-autoblind

      Hier wird beschrieben, dass eine neue Conf-Datei wieder mit der ersten Ebene beginnen muss.

      Daraufhin hab ich testweise eine Datei garage.conf angelegt
      Code:
      [Garage]
         name = Garage
         remark = Garage inkl. Anstellteil
      Eine Zweite Datei garage-anstellteil.conf (Das Anstellteile wäre hier mein "Raum") angelegt:
      Code:
      [Garage]
         [[Anstellteil]]
         name = Anstellteil
      Das hat dann soweit funktioniert, dass Garage.Anstellteil erfolgreich in den Baum aufgenommen wurde.
      Bei Garage wurden die Attribute der garage.conf verwendet.

      Wenn ich die Attribute für Garage doppelt anlegen, wird nur die Infos aus garage.conf verwendet und garage-anstellteil.conf ignoriert.
      Wenn ich "name" in garage.conf anlege und "remark" in garage-anstellteil.conf anlege, wird das ganze gemerged.

      Bei doppelten Attributen scheint es allerdings eine Regel zu geben, welche nur einen Wert in SH.py übernimmt.

      Gibt es hierzu Erfahrungen, was genau in so einen Fall passiert bzw. Priorität hat?

      Für meinen Fall werde ich dann die vorangehenden Ebenen bei den einzelnen conf-Dateien nochmals ohne Attribute aufnehmen.
      Die Attribute selbst pflege ich in den übergeordneten conf-Datei (hier: garage.conf).

      Vielen Dank bmx für den Denkanstoss

      Kommentar


        #4
        Hi,

        die "Regel" die Du meinst, ist recht einfach: Alle .conf-Dateien werden beim Init eingelesen, das Ganze wird in EINE Item-Struktur überführt. Es wird immer gemerged, der letzte Eintrag gewinnt. Die Dateien werden in der Reihenfolge gelesen, die das Dateisystem vorgibt, bei mir auf dem RasPi ist das alphabetisch.
        Ich habe einfach eine 1-Struktur.conf angelegt, in der ich die obersten beiden Item-Ebenen (bei mir Stockwerk und Raum) festlege. Der Dateiname ist so gewählt, dass er vor allen anderen gelesen wird.

        Funktioniert so seit mehreren Jahren.

        Gruß, Waldemar

        Kommentar

        Lädt...
        X