Autor Thema: Userreading in Verbindung mit webCmd  (Gelesen 142 mal)

Offline m8ichael

  • Full Member
  • ***
  • Beiträge: 195
Userreading in Verbindung mit webCmd
« am: 28 November 2022, 15:41:26 »
Hallo,

auch, wenn ich FHEM nun schon recht lange und auch mit komplexen Perl-Scripten nutze, bestand bishr noch kein großer Bedarf, userReadings zu nutzen. Nun aber...  ;)

Und hier taucht nun das folgende Problem auf. Ich habe einen Dummy wie folgt definiert:

define dm.dg.st.Heizwert dummy
attr dm.dg.st.Heizwert alias Temperatur Studio
attr dm.dg.st.Heizwert devStateIcon AUS:sani_heating_level_0 16:sani_heating_level_0 17:sani_heating_level_10 18:sani_heating_level_20 19:sani_heating_level_40 20:sani_heating_level_50 21:sani_heating_level_60 22:sani_heating_level_70 23:sani_heating_level_80 24:sani_heating_level_90 25:sani_heating_level_100
attr dm.dg.st.Heizwert group Heizung
attr dm.dg.st.Heizwert room Studio
attr dm.dg.st.Heizwert setList state:AUS,16,17,18,19,20,21,22,23,24,25
attr dm.dg.st.Heizwert userReadings heizLog:.* {if(Value("dm.dg.st.Heizwert") eq "AUS") {return 0} else {return (Value("dm.dg.st.Heizwert"))}}
attr dm.dg.st.Heizwert webCmd state

Ich möchte hier nun ein userReading definieren, welches mir den Listeintrag "AUS" in eine Ziffer (0) wandelt. Idee ist, dieses Reading dann später loggen zu lassen und auch grafisch anzuzeigen. Ich habe nun allerdings das Problem, dass in dem Reading immer der letzte Werte angezeigt wird, also nicht der aktuelle Wert. Hängt das ggf. mit dem webCmd zusammen, der intern nur ein setstate und damit kein Event auslöst? Ich stehe gerade etwas auf dem Schlauch...

Viele Grüße

Michael

Offline Otto123

  • Tester
  • Hero Member
  • ****
  • Beiträge: 21777
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:Userreading in Verbindung mit webCmd
« Antwort #1 am: 28 November 2022, 16:13:10 »
Hi,

Du musst ReadingsVal($name,'state','') abfragen, Du fragst das Internal STATE ab, nicht das Reading state ;)

Tipp: wegen der besonderen Eigenschaften / Behandlung von state ist es meist besser für solche Dinge nicht state sondern ein separates Reading zu verwenden.

Gruß Otto
« Letzte Änderung: 28 November 2022, 16:18:08 von Otto123 »
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Offline m8ichael

  • Full Member
  • ***
  • Beiträge: 195
Antw:Userreading in Verbindung mit webCmd
« Antwort #2 am: 28 November 2022, 16:40:51 »
Hallo Otto,

vielen Dank - jetzt passt es!

Viele Grüße

Michael