FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: ChrisW am 22 September 2017, 16:20:26

Titel: Mehrere userReadings in einem Gerät ?
Beitrag von: ChrisW am 22 September 2017, 16:20:26
Hallo,
ich möchte gerne folgende userreadings einem Gerät hinzufügen. Eins alleine klappt aber wenn es mehr als ein userreading ist geht es nicht.
Habe schon Versucht jedes einzeln per :
attr temp_wohnzimmer userReadings schimmelfreiMinTemp { sprintf("%.1f",schimmelfreiMinTemp(ReadingsVal("temp_wohnzimmer","temperature",15),ReadingsVal("temp_wohnzimmer","humidity",100),100)) }
attr temp_wohnzimmer userReadings schimmelfreiMaxHumRoom { sprintf("%.1f",schimmelfreiMaxHum(ReadingsVal("temp_wohnzimmer","temperature",15))) }
attr temp_wohnzimmer userReadings lueftenMoeglich {(ReadingsVal("temp_wohnzimmer","humidity","N/A") >(shiftRelHumidity(ReadingsVal("MeinWetter","temperature","30"),ReadingsVal("MeinWetter","humidity","100"), ReadingsVal("temp_wohnzimmer","temperature","N/A") )+3))?"ja":"nein" }
attr temp_wohnzimmer userReadings aussenHumidityEqInnen {sprintf("%.1f",shiftRelHumidity(ReadingsVal("MeinWetter","temperature","30"),ReadingsVal("MeinWetter","humidity","100"), ReadingsVal("temp_wohnzimmer","temperature","N/A")))}


Oder folgendes direkt im Gerät mit :
schimmelfreiMinTemp { sprintf("%.1f",schimmelfreiMinTemp(ReadingsVal("temp_wohnzimmer","temperature",15),ReadingsVal("temp_wohnzimmer","humidity",100),100)) }
schimmelfreiMaxHumRoom { sprintf("%.1f",schimmelfreiMaxHum(ReadingsVal("temp_wohnzimmer","temperature",15))) }
lueftenMoeglich {(ReadingsVal("temp_wohnzimmer","humidity","N/A") >(shiftRelHumidity(ReadingsVal("MeinWetter","temperature","30"),ReadingsVal("MeinWetter","humidity","100"), ReadingsVal("temp_wohnzimmer","temperature","N/A") )+3))?"ja":"nein" }
aussenHumidityEqInnen {sprintf("%.1f",shiftRelHumidity(ReadingsVal("MeinWetter","temperature","30"),ReadingsVal("MeinWetter","humidity","100"), ReadingsVal("temp_wohnzimmer","temperature","N/A")))}
Titel: Antw:Mehrere userReadings in einem Gerät ?
Beitrag von: Frank_Huber am 22 September 2017, 16:25:43
Du musst die alle in ein Attribut packen! das heisst ja auch userReadins nicht userReading.

https://fhem.de/commandref.html#readingFnAttributes sagt:
ZitatuserReadings
A comma-separated list of definitions of user-defined readings. Each definition has the form:
<reading>[:<trigger>] [<modifier>] { <perl code> }
After a single or bulk readings update, the user-defined readings are set by evaluating the perl code { <perl code> } for all definitions and setting the value of the respective user-defined reading <reading> to the result. If <trigger> is given, then all processing for this specific user reading is only done if one of the just updated "reading: value" combinations matches <trigger>, which is treated as a regexp.
Examples:
attr myEnergyMeter userReadings energy { ReadingsVal("myEnergyMeter","counters.A",0)/1250.0;; }
attr myMultiMeter userReadings energy1:counters.A.* { ReadingsVal("myMultiMeter","counters.A",0)/1250.0;; }, energy2:counters.B.* { ReadingsVal("myMultiMeter","counters.B",0)/1250.0;; }
Titel: Antw:Mehrere userReadings in einem Gerät ?
Beitrag von: ChrisW am 22 September 2017, 16:31:38
Danke hab ich wohl irgendwie überlesen :)