Hallo,
ich möchte gerne ein Device bei valueFormat von meiner ReadingsGroup ausschliessen, da es keinen numerischen Wert (Temperatur) liefert, sondern Text und ich damit jedesmal eine Perl Warning im Log erzeuge:
{temperature=>"%.1f°C",humidity=>"%.1f %%"}
Damit wird zwar alles (fast) richtig angezeigt, aber es kommt eben zur besagten Warning:
PERL WARNING: Argument "19.4 C (measured)" isn't numeric in sprintf at ./FHEM/33_readingsGroup.pm line 1034, <GEN25> line 60998.
Ändere ich jetzt die Definition folgendermassen ab
{if($DEVICE ne "FBDECT_Bewaesserung"){temperature=>"%.1f°C",humidity=>"%.1f %%"}}
wird zwar das device ausgenommen, aber ich bekomme keine korrekte Formatierung mehr hin, es wird einfach über all ein % Zeichen angefügt, die °C gibts gar nicht mehr.
Verständisproblem?
das sollte z.b. so gehen:{ 'FBDECT_Bewaesserung.temperature' => '%s', temperature=>"%.1f°C", humidity=>"%.1f %%"}
gruss
andre
Zitat von: justme1968 am 07 Mai 2015, 18:20:40
das sollte z.b. so gehen:{ 'FBDECT_Bewaesserung.temperature' => '%s', temperature=>"%.1f°C", humidity=>"%.1f %%"}
gruss
andre
Danke! Bekomme ich das (Measured) im String jetzt auch noch durch °C ersetzt?
statt '%s' nimmst du '{...}' und da wo die ... sind kannst du perl code verwenden um alles was du nicht willst abzuschneiden. dazu gibt es im readingsGroup thread beispiele.
gruß
andre