DevStateIcon: Unterschied zwischen den Versionen
Justme (Diskussion | Beiträge) (→Einschränkungen: klammern sind nicht verboten. sie haben nur eine besondere bedeutung.) |
K (Typos etc.) |
||
Zeile 20: | Zeile 20: | ||
Da in der ersten Form der erste Teil jedes Tripels eine Regex ist, sind hier die für eine Regex geltenden Regeln zu beachten. Unter anderem sind das: | Da in der ersten Form der erste Teil jedes Tripels eine Regex ist, sind hier die für eine Regex geltenden Regeln zu beachten. Unter anderem sind das: | ||
* Leerzeichen durch . oder \s ersetzen | * Leerzeichen durch . oder \s ersetzen | ||
* alle Zeichen die in einer Regex eine besondere Bedeutung haben ( | * alle Zeichen die in einer Regex eine besondere Bedeutung haben (Klammern, Punkte, Backslash, ...) maskieren. | ||
So müsste z.B. (siehe auch {{Link2Forum|Topic=42351|LinkText=dieses Forenthema}} | So müsste z.B. (siehe auch {{Link2Forum|Topic=42351|LinkText=dieses Forenthema}}) | ||
:<code>devStateIcon on-old-for-timer 60:weather_rain_heavy@red:off off:weather_sun@yellow:on-old-for-timer 60</code> | :<code>devStateIcon on-old-for-timer 60:weather_rain_heavy@red:off off:weather_sun@yellow:on-old-for-timer 60</code> | ||
geändert werden auf | geändert werden auf |
Aktuelle Version vom 22. Oktober 2019, 14:04 Uhr
Das Attribut devStateIcon dient dazu, das anzuzeigende Icon eines Devices in Abhängigkeit vom Device-Status (STATE) in der Raumübersicht (room) festzulegen. Zudem kann man einstellen, was bei einem Klick auf das Icon geschieht.
Syntax
Das devStateIcon Attribut kann in 2 verschiedenen Formen spezifiziert werden, die in der commandref/devStateIcon sowie in deviceOverview detaillierter beschrieben werden.
Seit FHEM Version 2019-02-20 gibt es die Möglichkeit mehr als ein Icon pro Device darzustellen: Sobald STATE mehrzeilig ist wird für jede Zeile ein Icon erzeugt und alle Icons nebeneinander
dargestellt. Mehrere Zeilen für STATE lassen sich über ein entsprechend gesetztes stateFormat Attribut erreichen. Ein Zeilenumbruch zwischen diesen Icons lässt sich mit <br> erzeugen.
Ein Beispiel findet sich in diesem Forenthread zur Entstehung des Features.
Einschränkungen
In devStateIcon dürfen keine Leerzeichen vorkommen (ausser zur Trennung der unterschiedlichen Zustände).
Da in der ersten Form der erste Teil jedes Tripels eine Regex ist, sind hier die für eine Regex geltenden Regeln zu beachten. Unter anderem sind das:
- Leerzeichen durch . oder \s ersetzen
- alle Zeichen die in einer Regex eine besondere Bedeutung haben (Klammern, Punkte, Backslash, ...) maskieren.
So müsste z.B. (siehe auch dieses Forenthema)
devStateIcon on-old-for-timer 60:weather_rain_heavy@red:off off:weather_sun@yellow:on-old-for-timer 60
geändert werden auf
devStateIcon on-old-for-timer.60:weather_rain_heavy@red:off off:weather_sun@yellow:on-old-60
wobei in diesem Beispiel zusätzlich der Befehlsteil des off mit der Attributdefinition
eventMap /on-old-for-timer 60:on-old-60/
auf eine "leerzeichenlose" Version umdefiniert werden muss.
Beispiele
Links
- Ausführliche Beschreibung (mit Beispielen) zu eventMap, devStateIcon, setList und webCmd in diesem Forenthread oder in DeviceOverview anpassen
- Beispiel für FS20 Beitrag