Attribut: Unterschied zwischen den Versionen
K (Hinweis auf Änderbarkeit via FHEMWEB ergänzt) |
(Abgrenzung zu Readings eingefügt) |
||
Zeile 31: | Zeile 31: | ||
[[ReadingsGroup]] stellt eine Möglichkeit dar, neben [[Readings]] auch Attribute strukturiert darzustellen. | [[ReadingsGroup]] stellt eine Möglichkeit dar, neben [[Readings]] auch Attribute strukturiert darzustellen. | ||
Mit Hilfe dieses [[Modul|Moduls]] können auch den End-Anwendern auf einfache Weise vielfältige Einstellmöglichkeiten zur Verfügung gestellt werden. | Mit Hilfe dieses [[Modul|Moduls]] können auch den End-Anwendern auf einfache Weise vielfältige Einstellmöglichkeiten zur Verfügung gestellt werden. | ||
== Abgrenzung zu Readings == | |||
Als Readings werden demgegenüber Daten bezeichnet, die von einem Gerät gelesen und in FHEM in einer (üblicherweise) lesbaren Form zur Verfügung gestellt werden. Typischerweise werden sich im laufenden Betrieb ändernde Zustände oder Meßwerte in Readings zwischengespeichert und jede Aktualisierung ist in der Regel mit einem [[Event]] verbunden. Readings werden nicht in der [[Konfiguration]] gespeichert, sondern in einer eigenen Datei, der sog. statefile. | |||
Auch hier kann der Nutzer über die Kommandozeile<ref>Durch Anpassung der Attribute "setList" und "readingList" können Änderungen auch über FHEMWEB-Elemente ermöglicht werden</ref> direkt Einfluß auf den aktuellen Wert nehmen und Events erzeugen. Es sollte dabei jedoch sichergestellt werden, dass es nicht zu unbeabsichtigten Überschneidungen mit Änderungen der Readingsinhalte kommt, die vom entsprechenden Modulcode geschrieben werden. | |||
Der Vorteil der Nutzung von Readings liegt darin, dass die Änderung der Daten nicht zu Änderungen an der [[Konfiguration]] führen, diese aber dennoch bei einem ordnungsgemäßen Neustart von FHEM direkt wieder verfügbar sind. | |||
== Weitere Infos für Modulentwickler == | == Weitere Infos für Modulentwickler == | ||
* Attribute in der [[DevelopmentModuleIntro#Attribute|DevelopmentModuleIntro]] | * Attribute in der [[DevelopmentModuleIntro#Attribute|DevelopmentModuleIntro]] | ||
* Readings in der [[DevelopmentModuleIntro#Readings|DevelopmentModuleIntro]] | |||
* Leitlinie: "Attribute gehören den Usern!" | * Leitlinie: "Attribute gehören den Usern!" | ||
== Hinweise und Links == | == Hinweise und Links == | ||
Die Commandref zum Befehl {{Link2CmdRef|Lang=de|Anker=attr|Label=attr}} enthält einige Beispiele zur Verwendung von Attributen. | Die Commandref zum Befehl {{Link2CmdRef|Lang=de|Anker=attr|Label=attr}} enthält einige Beispiele zur Verwendung von Attributen. | ||
<references /> | <references /> | ||
[[Kategorie:FHEM]] | [[Kategorie:FHEM]] | ||
[[Kategorie:FHEM-Verwendung]] | [[Kategorie:FHEM-Verwendung]] | ||
[[Kategorie:Glossary]] | [[Kategorie:Glossary]] |
Version vom 18. September 2018, 10:16 Uhr
Attribute sind ein wichtiges Mittel, um das Verhalten von FHEM insgesamt (global) oder von einzelnen Geräten bzw. Geräteklassen zu beeinflussen.
Allgemeines
Damit der Nutzer das Verhalten einer einzelnen Gerätedefinition zur Laufzeit individuell anpassen kann, gibt es in FHEM für jede Definition sogenannte Attribute.
Attribute werden zusammen mit dem define
-Befehl des jeweiligen Devices beim Speichern der aktuellen Konfiguration von FHEM in die Konfigurationsdatei geschrieben. Beim Neustart werden die entsprechenden Befehle ausgeführt um alle Definition inkl. Attribute wieder anzulegen.
Alle Geräte haben Attribute. Diese werden mittels des Befehls attr
gesetzt, angezeigt mit dem Befehl displayattr
, und mit dem Kommando deleteattr
entfernt. In FHEMWEB gibt es daneben die Möglichkeit, Attribute über die Weboberfläche einzustellen.
Globale Attribute
Globale Attribute können von allen Geräten genutzt werden. Welche vorhanden sind, kann mit list global
ermittelt werden
Lokale Attribute
Als lokale Attribute werden Attribute bezeichnet, die nur auf individuelle Geräteklassen oder einzelne Geräte zutreffen. Welche dies sind, wird jeweils durch den Code des Moduls festgelegt, dementsprechend sind Hinweise zur Funktion dieser Attribute in der jeweiligen Beschreibung zum Modul in der commandref zu entnehmen.
userattr
Neben den von FHEM und den jeweils verwendeten Modulen bereitgestellten Attributen besteht die Möglichkeit, eigene Attribute zu definieren.
Global
Dies kann zentral erfolgen, indem attr global userattr <attributelist>
verwendet wird. <attributelist> ist eine durch Leerzeichen getrennte Liste, die die Namen der zusätzlichen Attribute enthält.
Damit stehen die betreffenden Attribute dann system-weit zur Verfügung.
Manche Geräte (wie FHEMWEB) definieren automatisch neue globale Attribute beim ersten Anlegen eines Gerätes dieses Typs.
Einzelne Geräte
Mit attr <devicename> userattr <attributelist>
können auch ein oder mehrere neue lokale Attribute für bestimmte individuelle Geräte eingeführt werden.
ReadingsGroup
ReadingsGroup stellt eine Möglichkeit dar, neben Readings auch Attribute strukturiert darzustellen. Mit Hilfe dieses Moduls können auch den End-Anwendern auf einfache Weise vielfältige Einstellmöglichkeiten zur Verfügung gestellt werden.
Abgrenzung zu Readings
Als Readings werden demgegenüber Daten bezeichnet, die von einem Gerät gelesen und in FHEM in einer (üblicherweise) lesbaren Form zur Verfügung gestellt werden. Typischerweise werden sich im laufenden Betrieb ändernde Zustände oder Meßwerte in Readings zwischengespeichert und jede Aktualisierung ist in der Regel mit einem Event verbunden. Readings werden nicht in der Konfiguration gespeichert, sondern in einer eigenen Datei, der sog. statefile. Auch hier kann der Nutzer über die Kommandozeile[1] direkt Einfluß auf den aktuellen Wert nehmen und Events erzeugen. Es sollte dabei jedoch sichergestellt werden, dass es nicht zu unbeabsichtigten Überschneidungen mit Änderungen der Readingsinhalte kommt, die vom entsprechenden Modulcode geschrieben werden.
Der Vorteil der Nutzung von Readings liegt darin, dass die Änderung der Daten nicht zu Änderungen an der Konfiguration führen, diese aber dennoch bei einem ordnungsgemäßen Neustart von FHEM direkt wieder verfügbar sind.
Weitere Infos für Modulentwickler
- Attribute in der DevelopmentModuleIntro
- Readings in der DevelopmentModuleIntro
- Leitlinie: "Attribute gehören den Usern!"
Hinweise und Links
Die Commandref zum Befehl attr enthält einige Beispiele zur Verwendung von Attributen.
- ↑ Durch Anpassung der Attribute "setList" und "readingList" können Änderungen auch über FHEMWEB-Elemente ermöglicht werden