Mehrere userReadings in einem Gerät ?

Begonnen von ChrisW, 22 September 2017, 16:20:26

Vorheriges Thema - Nächstes Thema

ChrisW

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")))}
Raspberry PI3 mit allem möglichen.

Frank_Huber

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;; }

ChrisW

Raspberry PI3 mit allem möglichen.