Guten Tag,
ich bastel mir grade eine übersicht über die Luftfeuchtigkeit in verschiedenen Räumen, und stehe an einer Stelle fest.
Wie im Angehängten Screenshot zu sehen ist habe ich der Readingsgroup ein Icos hinzugefügt. Das Icon soll abhängig von dem Wert der Feuchtigkeit die Farbe und das Icon wechseln.
Mein Code:
define Umwelt_Humidity_Gesamt readingsGroup ESPEasy_fhem5_TH:<%weather_humidity>,<Schlafzimmer>,humidity,<%fts_window_1w@lightgreen> ESPEasy_FHEM7_TH:<%weather_humidity>,<Wohnzimmer>,humidity,<%fts_window_1w@lightgreen>
Mein Code wie es sein soll:
define Umwelt_Humidity_Gesamt readingsGroup ESPEasy_fhem5_TH:<%weather_humidity>,<Schlafzimmer>,humidity,{if(VALUE("humidity") > 65)} {'<%fts_window_1w@red>'} elsif{(VALUE("humidity") > 60)} {'<%fts_window_1w@orange>'} else{'<%fts_window_1w@lightgreen>'}} ESPEasy_FHEM7_TH:<%weather_humidity>,<Wohnzimmer>,humidity,{if(VALUE("humidity") > 65)} {'<%fts_window_1w@red>'} elsif{(VALUE("humidity") > 60)} {'<%fts_window_1w@orange>'} else{'<%fts_window_1w@lightgreen>'}}
Die If Abfrage soll quasi dann für das dynamische Icon da sein. Jedesmal wenn ich das in die Config schreibe und neu lade, stürzt der Server nach wenigen sekunden ab.
Hat jemand eine Idee?
Gruß Marcel
Hallo Marcel,
versuch's mal mit den Attributen "valueIcon" oder "valueStyle".
Bei mir verwende ich in einer größeren Übersicht Folgendes:
attr altHK valueIcon {'battery.ok' => 'measure_battery_100@lightgreen', 'battery.low' => 'measure_battery_25@red', 'Activity.alive' => 'it_wifi@lightgreen', 'Activity.dead' => 'it_wifi@red', 'Activity.unknown' => 'unknown@yellow', 'controlMode.auto' => 'sani_heating_automatic@lightgreen', 'controlMode.boost' => 'sani_heating_boost@red', 'controlMode.manual' => 'sani_heating_manual@yellow', 'humidity' => 'humidity@6FD9FB', 'R-btnLock.on' => 'secur_locked@0CFB0C', 'R-btnLock.off' => 'secur_open@F7301D', 'actuator.0' => 'sani_heating_level_0@002AE0', 'actuator.10' => 'sani_heating_level_10@F8D53D', 'actuator.20' => 'sani_heating_level_20@FF9341', 'actuator.30' => 'sani_heating_level_30@F17F3F','actuator.40' => 'sani_heating_level_40@E46C3C', 'actuator.50' => 'sani_heating_level_50@DE3B3A','actuator.60' => 'sani_heating_level_60@A30D2D', 'actuator.70' => 'sani_heating_level_70@B40A23','actuator.80' => 'sani_heating_level_80@C40619', 'actuator.90' => 'sani_heating_level_90@D4030F','actuator.100' => 'sani_heating_level_100@E50005', 'controlMode.set_boost' => 'hourglass', 'controlMode.set_auto' => 'hourglass', 'controlMode.set_manual' => 'hourglass', 'R-btnLock.set_on' => 'hourglass', 'R-btnLock.set_off' => 'hourglass', 'state.closed' => 'fts_window_1w', 'state.open' => 'fts_window_1w_open@F7301D'}
attr altHK valueStyle { if ($READING eq "measured-temp") { my $t=$VALUE;;my $d=ReadingsVal($DEVICE,"desired-temp",0);; if($t-$d>=1) {'style="color:rgb(251,63,11);;"'} elsif($t-$d<=-1) {'style="color:rgb(79,58,251);;"' } else {'style="color:rgb(12,251,12);;"'}} }
Grüße,
Nik
Hey,
danke für deine Antwort.
Damit kann ich ja leider nur den Wert selbst in ein Icon umwandeln. Ich möchte aber zusätzlich zum Wert ein Icon hinzufügen welches sich abhängig vom Wert ändert.
nimm vakuePrefix oder valueSuffix für den wert und valueIcon für das icon
Hallo Marcel,
wenn Du genau hinschaust, wirst Du sehen, dass sich nicht nur die Farbe, sondern auch das Icon ändert:
...
'actuator.0' => 'sani_heating_level_0@002AE0',
'actuator.10' => 'sani_heating_level_10@F8D53D',
'actuator.20' => 'sani_heating_level_20@FF9341',
'actuator.30' => 'sani_heating_level_30@F17F3F',
...
'actuator.90' => 'sani_heating_level_90@D4030F',
'actuator.100' => 'sani_heating_level_100@E50005',
...
Grüße,
Nik