Attribut: Unterschied zwischen den Versionen
Trelle (Diskussion | Beiträge) K (Verweise ergänzt) |
|||
Zeile 21: | Zeile 21: | ||
Dies kann zentral erfolgen, indem <code>attr global userattr <attributelist></code> verwendet wird. <attributelist> ist eine durch Leerzeichen getrennte Liste, die die Namen der zusätzlichen Attribute enthält. | Dies kann zentral erfolgen, indem <code>attr global userattr <attributelist></code> 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. Beim Erstellen oder Löschen von eigenen Attributen ist darauf zu achten, dass der Name des Attributs nicht durch anderweitig verwendet wurde. | Damit stehen die betreffenden Attribute dann system-weit zur Verfügung. | ||
{{Hinweis|Beim Erstellen oder Löschen von eigenen Attributen ist darauf zu achten, dass der Name des Attributs nicht durch anderweitig verwendet wurde. Andernfalls kann es zu schwerwiegenden Fehlfunktionen in FHEM kommen.}} | |||
Manche [[Gerät|Geräte]] (wie [[FHEMWEB]]) definieren automatisch neue globale Attribute beim ersten Anlegen eines [[Gerät|Gerätes]] dieses Typs. | Manche [[Gerät|Geräte]] (wie [[FHEMWEB]]) definieren automatisch neue globale Attribute beim ersten Anlegen eines [[Gerät|Gerätes]] dieses Typs. | ||
=== Einzelne Geräte === | === Einzelne Geräte === | ||
Mit <code>attr <devicename> userattr <attributelist></code> können auch ein oder mehrere neue lokale Attribute für bestimmte individuelle [[Gerät|Geräte]] eingeführt werden. | Mit <code>attr <devicename> userattr <attributelist></code> können auch ein oder mehrere neue lokale Attribute für bestimmte individuelle [[Gerät|Geräte]] eingeführt werden. | ||
== ReadingsGroup == | == ReadingsGroup == |
Version vom 17. September 2018, 14:24 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.
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.
Weitere Infos für Modulentwickler
- Attribute 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.