Hauptmenü

[Gelöst] Icon und Text

Begonnen von dk3572, 21 November 2019, 17:58:13

Vorheriges Thema - Nächstes Thema

dk3572

Hallo,

ich möchte in einem Device ein Icon (Fenster auf/zu) und einen Text (temperatur_real) anzeigen.
Leider bekomme ich es nicht hin.

Das hilft mir nicht weiter:
https://forum.fhem.de/index.php/topic,97586.0.html

Internals:
   DEF        sensor 4 1 IODev=deCONZ
   FUUID      5d177d50-f33f-cd72-1dfd-f2982c28fdc08130
   FVERSION   31_HUEDevice.pm:0.205260/2019-11-17
   ID         S4
   INTERVAL   1
   IODev      deCONZ
   NAME       Fenster_Buero
   NR         313
   STATE      open\
closed\
<br>\
15&deg;C
   TYPE       HUEDevice
   lastupdated 2019-11-21 16:12:06
   lastupdated_local 2019-11-21 17:12:06
   manufacturername LUMI
   modelid    lumi.sensor_magnet.aq2
   name       Fenster_Buero
   on         1
   reachable  1
   swversion  20161128
   type       ZHAOpenClose
   uniqueid   00:15:8d:00:03:09:c1:2f-01-0006
   READINGS:
     2019-11-21 17:12:06   battery         81
     2019-11-21 17:12:06   reachable       1
     2019-11-21 17:12:06   state           closed
     2019-11-21 17:12:06   temperatur_real 15
     2019-11-21 17:12:06   temperature     19
   helper:
     devtype    S
     reachable  0
     update_timeout 1
     configList:
     setList:
Attributes:
   HomeContactType window
   HomeModeAlarmActive armaway
   HomeOpenMaxTrigger 3
   HomeOpenTimeDividers 2 1 2 3
   HomeOpenTimes 30
   IODev      deCONZ
   alexaName  Bürofenster
   alexaRoom  Büro
   alias      Bürofenster
   devStateIcon open:fts_window_1w_open@#e56524 closed:fts_window_1w
   genericDeviceType contact
   group      Fenster-/Türkontakte
   homebridgeMapping clear ContactSensorState:state,values=closed:CONTACT_DETECTED;open:CONTACT_NOT_DETECTED
   icon       fts_window_1w
   room       HUEDevice
   stateFormat open\
closed\
<br>\
temperatur_real&deg;C
   userReadings temperatur_real:temperature.* {ReadingsVal("Fenster_Buero","temperature",0)-4}
   userattr   HomeModeAlarmActive HomeReadings HomeValues HomeContactType:doorinside,dooroutside,doormain,window HomeOpenMaxTrigger HomeOpenDontTriggerModes HomeOpenDontTriggerModesResidents HomeOpenTimeDividers HomeOpenTimes


Vielleicht kann mir jemand auf die Sprünge helfen.

Vielen Dank und Gruß
Dieter

Beta-User

ersetze mal die ersten beiden Angabenopen\
closed\
durch "state\", also erste Zeile
attr <device>stateFormat state\
...

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

jkriegl

Meinst Du so etwas? Klappt mit devStateIcon (in 'seit' ist der readingsText)
{my $icon = FW_makeImage('fts_door@green'); $icon = FW_makeImage('fts_door_open@red')  if(ReadingsVal($name, "state", "off") eq "open"); return "<div>" . $icon . " ".  (ReadingsVal($name,"seit","")) .'</div>' ; }
Rpi 3, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly

dk3572

Zitat von: Beta-User am 21 November 2019, 18:01:57
ersetze mal die ersten beiden Angabenopen\
closed\
durch "state\", also erste Zeile
attr <device>stateFormat state\
...


Danke für die Hilfe.
Jetzt stimmt nur das devStateicon nicht mehr.
An Stelle des Icon steht jetzt open und closed.

jkriegl

#4
So etwas funktioniert bei mir mit der Batterie auch
Attributes:
   devStateIcon devStateIcon ok:measure_battery_100@green low:measure_battery_0@red
   model      HM-TC-IT-WM-W-EU
   room       2.0 Sensor -> Temp
   stateFormat [$name:obs] [$name:measured-temp] °C [$name:humidity] % [HM_Thermometer:batteryLevel]
[HM_Thermometer:battery]
Rpi 3, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly

dk3572

Zitat von: jkriegl am 21 November 2019, 19:17:59
So etwas funktioniert bei mir mit der Batterie auch
Attributes:
   devStateIcon devStateIcon ok:measure_battery_100@green low:measure_battery_0@red
   model      HM-TC-IT-WM-W-EU
   room       2.0 Sensor -> Temp
   stateFormat [$name:obs] [$name:measured-temp] °C [$name:humidity] % [HM_Thermometer:batteryLevel]
[HM_Thermometer:battery]


Auch dir Danke für die Hilfe.
Wie zuvor wird das devStateIcon nicht mehr angezeigt, nur noch der Text open / closed.

Attributes:
   devStateIcon open:fts_window_1w_open@#e56524 closed:fts_window_1w
   stateFormat [$name:state] [$name:temperatur_real] °C
   userReadings temperatur_real:temperature.* {ReadingsVal("Fenster_Gaestezimmer","temperature",0)-4}

jkriegl

Bei mir steht da nocheinmal devStateIcon und im stateFormat ist [HM_Thermometer:battery] in einer neuen Zeile.
So funktioniert es, kann mich aber nicht mehr erinnern warum.
Rpi 3, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly

Beta-User

Weil die regex für die Multi-Icon-Variante zeilenweise arbeitet und den mit stateFormat erzeigten STATE analysiert (uU. ist ein Leerzeichen am Ende jeder Zeile sinnvoll). Deswegen war da auch der Zeilenumbruch mit hinter state gestanden, der ist wohl bei der Übernahme in das Device des TE entfallen, was aber nicht klar wird, wenn man kein vollständiges list (oder RAW) liefert...

Weitere Beispiele sind in https://wiki.fhem.de/wiki/DeviceOverview_anpassen#devStateIcon zu finden.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

dk3572

Kaum macht man´s richtig, funktioniert es  ;)

Vielen Dank für die Hilfe und schönes Wochenende.

Gruß Dieter

jkriegl

#9
Bei mir klappt es auch, aber das icon wird nicht wie gewünscht rot, s. Anhang
attr TFK_Bad devStateIcon 1.close:fts_door@green 1.open:fts_door_open@red\ 2.ok:measure_battery_100@green 2.low:measure_battery_0@red
attr TFK_Bad event-on-change-reading state
attr TFK_Bad stateFormat seit\
1:state\
2:battery


edit: mit der Leerstelle klappt das auch.
Rpi 3, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly