valueFormat (ReadingsGroup) Problem

Begonnen von Nemo0815, 07 Mai 2015, 17:47:09

Vorheriges Thema - Nächstes Thema

Nemo0815

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&deg;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?

justme1968

das sollte z.b. so gehen:{ 'FBDECT_Bewaesserung.temperature' => '%s', temperature=>"%.1f&deg;C", humidity=>"%.1f %%"}

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Nemo0815

Zitat von: justme1968 am 07 Mai 2015, 18:20:40
das sollte z.b. so gehen:{ 'FBDECT_Bewaesserung.temperature' => '%s', temperature=>"%.1f&deg;C", humidity=>"%.1f %%"}

gruss
  andre

Danke! Bekomme ich das (Measured) im String jetzt auch noch durch °C ersetzt?

justme1968

#3
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
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968