Hallo,
mein Wettersensor KS300 liefert folgendes Reading:
avg_day T: -3.7 H: 94 W: 0.0 R: 0.0
Ich brauche den 4. Wert für:
define di_temp_2 DOIF ##
attr di_temp_2 uiTable {package ui_Table}
card([KS300:avg_day:col3d],"Regen","weather_rain_gauge",0,10,180,270,"mm",undef,"1,,fill:silver","130,1,1,0,1")
mit 'KS300:avg_day' wird der erste Wert genommen. Deshalb dachte ich es müsste 'KS300:avg_day.R' sein - leider falsch.
Wie muss es richtig sein?
Ingo
Du solltest die Frage besser im DOIF Forum stellen. Die Jungs wissen da schneller und "besser" Bescheid.
Einfach unten links auf verschieben gehen.
Zitat von: ingo46 am 07 Februar 2023, 11:32:01
Hallo,
mein Wettersensor KS300 liefert folgendes Reading:
avg_day T: -3.7 H: 94 W: 0.0 R: 0.0
Ich brauche den 4. Wert für:
define di_temp_2 DOIF ##
attr di_temp_2 uiTable {package ui_Table}
card([KS300:avg_day:col3d],"Regen","weather_rain_gauge",0,10,180,270,"mm",undef,"1,,fill:silver","130,1,1,0,1")
mit 'KS300:avg_day' wird der erste Wert genommen. Deshalb dachte ich es müsste 'KS300:avg_day.R' sein - leider falsch.
Wie muss es richtig sein?
Ingo
Wie kommst du auf diese Syntax?
Da wirst du wohl mit einem user_Reading und etwas Regex hantieren müssen, bevor du den Wert an card weiter gibst.
Edit: Gibt es denn bei KS300 nicht ein Reading für die Regenmenge?
so sieht das komplette Reading aus:
ODev MapleCUL_0_868
avg_day T: -3.1 H: 93 W: 0.0 R: 0.0
avg_month T: 5.4 H: 45 W: 42.7 R: 43.3
checksum 8
cum_day 2023-02-07 04:49:39 T: -80556.1 H: 2420469 W: 0 R: 203.2
cum_month 6 T: 32.7 H: 272 W: 256.2 R: 43.3
humidity 93
israining no
rain 203.2
rain_raw 797
rain_raw_adj 797
state T: 0.1 H: 93 W: 0.0 R: 203.2 IR: no Wi: 0
temperature 0.1
tsecs 1675767553.79421
type_raw 7
unknown3 1
wind 0.0
windIndex 0
In 'rain' steht die gesamte Regenmenge - ich möchte aber nur die Regenmenge des Tages. Das wäre der 4. Wert von avg_day. Gibt es da eine Möglichkeit ihn aus dem Reading zu bekommen?
Ingo
Du kannst in dem Modul, wo du deine card einsetzt ein DOIF_Reading auf avg_day mit Ausgabeformatierung definieren, siehe: https://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen
Hallo Damian,
ich habe ...#DOIF_Filtern_nach_Zahlen... gelesen - verstehe aber nicht, was zu tun ist - wo muss das 'DOIF_Reading auf avg_day' eingebaut werden und wie sieht aus?
Ingo
Zitat von: ingo46 am 07 Februar 2023, 18:52:42
Hallo Damian,
ich habe ...#DOIF_Filtern_nach_Zahlen... gelesen - verstehe aber nicht, was zu tun ist - wo muss das 'DOIF_Reading auf avg_day' eingebaut werden und wie sieht aus?
Ingo
Ich habe es jetzt direkt als Output-Parameter definiert, siehe: https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#Anzeige_eines_Werteverlaufs_und_des_aktuellen_Wertes_mit_Hilfe_der_SVG-Funktion_card
defmod di_temp_2 DOIF ##
attr di_temp_2 room Test
attr di_temp_2 uiTable {package ui_Table}\
\
card([KS300:avg_day:col3d:$_ =~ /R: (\d*.\d*)/;;$1],"Regen","weather_rain_gauge",0,10,180,270,"mm",undef,"1,,fill:silver","130,1,1,0,1")
Wenn es ein Tagesdurchschnitt ist, der am Tagesende zurückgesetzt wird, dann würde ich dir die neue bar-Darstellung empfehlen: https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#Darstellung_kumulierter_Daten_als_S.C3.A4ulen
defmod di_temp_2 DOIF ##
attr di_temp_2 room Test
attr di_temp_2 uiTable {package ui_Table}\
\
card([KS300:avg_day:bar1month:$_ =~ /R: (\d*.\d*)/;;$1],"Regen","weather_rain_gauge",0,10,180,270,"mm",undef,"1,,fill:silver","130,1,1,0,1,halfring")
Hallo Damian,
danke - jetzt habe ich es verstanden!
Mein Fehler war, dass mir die Reihenfolge nicht bewusst war: Ich hatte 'card([KS300:avg_day:$_ =~ /R: (\d*.\d*)/;;$1]:col3d....' Im nachhinein ist nir dass jetzt klar.
Mit der neuen bar-Darstellung werde ich mich in den nächsten Tagen beschäftigen.
Ingo