Hallo zusammen,
mir fehlt gerade der programmatische Ansatz, wie ich für eine Idee eienn zwei-(oder gar drei-)dimensionalen Hash als Reading oder Attribut ablegen kann.
Ich brauche einen Parametersatz. Dieser Parametersatz ist sei Laufzeit statisch; theoretisch vom Benutzer änderbar, nicht aber von FHEM. Dabei brauche ich für einige Devices ein mindestens 2-dimensionalen Hash.
In einer prozeduralen Desktop-Anwendung würde ich vielleicht eine INI-Datei anlegen, die ich beim Start auslese, in einer OOP-Anwendung würde ich eventuell den Klassen eine Eigenschaft als zweidimensionales Array verpassen. Aber in FHEM + perl...?
setreading dummy Parameter %hash? Oder baue ich eine Tabelle in einer Datenbank auf, welche ich bei Bedarf spezifisch abfragen kann?
Dem Anschein nach muss ich JSON-encodierte Hashes in die Readings (oder ein eigenes user-Attribut) ablegen. Korrekt?
Da der Parametersatz insgesamt recht groß sein wird, müsste ich eine sub schreiben, welche die Parameter EINMALIG in die Devices wegschreibt. Schön ist das nicht, pflegbar auch nicht und für den Ausnahmefall des Benutzereingriffs schon gar nicht geeignet.
Ich suche also nach Ansätzen für zwei Teilprobleme:
1. Erzeugen und Speichern eines mehr-dimensionalen Hashes an Devices
2. Pflege des Inhalts dieser Hashes
Hat da mal einer einen Tipp für mich?
Danke!