Ein device - mehrere userReadings

Begonnen von uwirt, 02 April 2018, 17:03:02

Vorheriges Thema - Nächstes Thema

uwirt

Ich habe in meinem Gardena device verschiedene readings die ich mit userReadings umbenenne und die dann dieselben Werte anzeigen sollen wie die ursprünglichen readings. Der Befehl den ich dazu verwende ist:

attr Gardena_Terrasse userReadings temperature_out { ReadingsVal("Gardena_Terrasse","ambient_temperature-temperature",0);;}

Das funktioniert soweit so gut. Nun habe ich vier weitere readings im selben device die ich ebenso umbenennen möchte. Wenn ich denselben Befehl mit den Bezeichnungen für die anderen readings eingebe werden die Namen zwar hinzugefügt aber der Wert des vorhergehenden userReading wird dann jeweils nicht mehr aktualisiert.

Wie kann ich mehrere readings eines devices mittels userReadings so umbenennen dass die Werte für die userReadings jeweils zusammen mit den ursprünglichen Readings aktualisiert werden?

Danke für die Hilfe
FHEM / Ubuntu / fitlet2
HomeMatic: CCU3|HmIP-STHD|HmIP-PCBS|HmIP-PCBS2|HmIP-PCBS-BAT|HM-WDC7000|HM-WDS40|HM-LC-Sw1-FM|HM-LC-RGBW-WM|HM-ES-PMSw1-Pl|HM-ES-TX-WM
NAS: DS218+|DS209j|DS216+II|DS412+
Devices: Panasonic Webcams|Withings|Gardena Smart|Tuya|EcoWitt

Otto123

Hi,

den Begriff umbenennen finde ich etwas deplatziert.
Du solltest einfach mal Deinen Codeversuch posten, der nicht geht. So weiß keiner was Du gemacht hast und was nicht gehen soll.
Ein list Gardena_Terrasse wäre auch gut.

ZitatuserReadings
Komma getrennte Liste von benutzerdefinierten Readings. Jede Definition hat folgendes Format:
<reading>[:<trigger>] [<modifier>] { <perl code> }
Diese benutzerdefinierte Readings werden bei jeder Aktualisierung der Gerätereadings gesetzt, indem das spezifizierte perl code { <perl code> } ausgeführt wird, und dessen Wert dem Reading zugewiesen wird. Falls <trigger> spezifiziert ist, dann findet diese Ausführung nur dann statt, falls einer der aktualisierten Readings dem regexp <trigger> entspricht (matched).

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CoolTux


attr Gardena_Terrasse userReadings temperature_out:ambient_temperature-temperature.* { ReadingsVal($name,"ambient_temperature-temperature",0)}, temperature_out2:ambient_temperature-temperature.* { ReadingsVal($name,"ambient_temperature-temperature2",0)}


Ich hoffe es ist zu erkennen wie es geht. Frage mich gerade was Du gegen meine Readingsbenennung hast  ;D
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

uwirt

#3
Hier schon mal das listing:

Internals:
   DEF        81822f43-640f-47aa-8c98-f37f849e905a sensor
   DEVICEID   81822f43-640f-47aa-8c98-f37f849e905a
   Gardena_MSGCNT 112
   Gardena_TIME 2018-04-02 20:10:19
   IODev      Gardena
   LASTInputDev Gardena
   MSGCNT     112
   NAME       Gardena_Terrasse
   NR         55
   STATE      T: 11°C, H: 44%, L: 39lux
   TYPE       GardenaSmartDevice
   VERSION    0.4.1
   READINGS:
     2018-04-02 10:40:10   ambient_temperature-frost_warning no_frost
     2018-04-02 20:10:19   ambient_temperature-temperature 11
     2018-03-31 12:27:01   battery-disposable_battery_status ok
     2018-04-02 20:10:19   battery-level   100
     2018-03-31 13:12:18   brightness      0
     2018-03-31 12:27:01   device_info-category sensor
     2018-04-02 19:36:15   device_info-last_time_online 2018-04-02 19:35:52
     2018-03-31 12:27:01   device_info-manufacturer Gardena
     2018-03-31 12:27:01   device_info-product 2-DEVICE
     2018-03-31 12:27:01   device_info-serial_number 00003011
     2018-03-31 12:27:01   device_info-sgtin 3034F8EE9012674000000BC3
     2018-03-31 12:27:01   device_info-version 1.0.3-2.5.2-1.2.5-ICD1.17_1.0.18
     2018-03-31 12:27:01   firmware-firmware_command idle
     2018-03-31 12:27:01   firmware-firmware_status up_to_date
     2018-03-31 12:27:01   firmware-firmware_update_start 1
     2018-03-31 12:27:01   firmware-firmware_upload_progress 0
     2018-03-31 12:27:01   firmware-inclusion_status included
     2018-03-31 15:28:00   humidity        64
     2018-04-02 20:10:19   humidity-humidity 44
     2018-04-02 20:10:19   light-light     39
     2018-04-01 16:40:03   radio-connection_status unknown
     2018-04-02 20:10:19   radio-quality   60
     2018-04-02 13:43:17   radio-state     good
     2018-04-02 20:10:19   rssi            60
     2018-04-02 20:10:19   soil_temperature-temperature 10
     2018-04-02 20:10:19   state           T: 11°C, H: 44%, L: 39lux
     2018-04-02 12:33:20   temperature_ground 4
     2018-03-31 18:28:36   temperature_out 6
Attributes:
   IODev      Gardena
   model      sensor
   room       GardenaSmart
   userReadings rssi { ReadingsVal("Gardena_Terrasse","radio-quality",0);}


Wie man sieht wurde rssi 60 von radio-quality 60 übernommen. Die anderen readings wie zum Beispiel humidity (64) und humidity-humidity (44) stimmen nicht überein.
FHEM / Ubuntu / fitlet2
HomeMatic: CCU3|HmIP-STHD|HmIP-PCBS|HmIP-PCBS2|HmIP-PCBS-BAT|HM-WDC7000|HM-WDS40|HM-LC-Sw1-FM|HM-LC-RGBW-WM|HM-ES-PMSw1-Pl|HM-ES-TX-WM
NAS: DS218+|DS209j|DS216+II|DS412+
Devices: Panasonic Webcams|Withings|Gardena Smart|Tuya|EcoWitt

CoolTux

Hast du Dir mein Beispiel angeschaut?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Otto123

Zitat von: uwirt am 02 April 2018, 20:14:52
Wie man sieht wurde rssi 60 von radio-quality 60 übernommen. Die anderen readings wie zum Beispiel humidity (64) und humidity-humidity (44) stimmen nicht überein.
Dafür ist aber auch das userreadings zu kurz  ;D
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

uwirt

Ich habe mich an das Beispiel von CoolTux gehalten:

temperature_ground:soil_temperature-temperature.* { ReadingsVal("Gardena_Terrasse","soil_temperature-temperature",0);}, temperature_out:ambient_temperature-temperature.* { ReadingsVal("Gardena_Terrasse","ambient_temperature-temperature",0);;}, humidity:humidity-humidity.* { ReadingsVal("Gardena_Terrasse","humidity-humidity",0);;}, brightness:light-light.* { ReadingsVal("Gardena_Terrasse","light-light",0);;}, rssi:radio-quality.* { ReadingsVal("Gardena_Terrasse","radio-quality",0);;}

... und es hat funktioniert!

Besten Dank für die rasche Hilfe
FHEM / Ubuntu / fitlet2
HomeMatic: CCU3|HmIP-STHD|HmIP-PCBS|HmIP-PCBS2|HmIP-PCBS-BAT|HM-WDC7000|HM-WDS40|HM-LC-Sw1-FM|HM-LC-RGBW-WM|HM-ES-PMSw1-Pl|HM-ES-TX-WM
NAS: DS218+|DS209j|DS216+II|DS412+
Devices: Panasonic Webcams|Withings|Gardena Smart|Tuya|EcoWitt

CoolTux

Zitat von: uwirt am 02 April 2018, 21:33:40
Ich habe mich an das Beispiel von CoolTux gehalten:

temperature_ground:soil_temperature-temperature.* { ReadingsVal("Gardena_Terrasse","soil_temperature-temperature",0);}, temperature_out:ambient_temperature-temperature.* { ReadingsVal("Gardena_Terrasse","ambient_temperature-temperature",0);;}, humidity:humidity-humidity.* { ReadingsVal("Gardena_Terrasse","humidity-humidity",0);;}, brightness:light-light.* { ReadingsVal("Gardena_Terrasse","light-light",0);;}, rssi:radio-quality.* { ReadingsVal("Gardena_Terrasse","radio-quality",0);;}

... und es hat funktioniert!

Besten Dank für die rasche Hilfe

Kleiner Tip. Statt Gardena_Terrasse in ReadingsVal zu verwenden, nehme lieber $name. Solltest Du mal das Device umbenennen, bekommst keine Probleme.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

uwirt

Zitat von: CoolTux am 02 April 2018, 21:37:15
Kleiner Tip. Statt Gardena_Terrasse in ReadingsVal zu verwenden, nehme lieber $name. Solltest Du mal das Device umbenennen, bekommst keine Probleme.

Besten Dank für den Tipp!


Sent from my iPad using Tapatalk
FHEM / Ubuntu / fitlet2
HomeMatic: CCU3|HmIP-STHD|HmIP-PCBS|HmIP-PCBS2|HmIP-PCBS-BAT|HM-WDC7000|HM-WDS40|HM-LC-Sw1-FM|HM-LC-RGBW-WM|HM-ES-PMSw1-Pl|HM-ES-TX-WM
NAS: DS218+|DS209j|DS216+II|DS412+
Devices: Panasonic Webcams|Withings|Gardena Smart|Tuya|EcoWitt

rudolfkoenig

ZitatStatt Gardena_Terrasse in ReadingsVal zu verwenden, nehme lieber $name.
Noch besser: $NAME (https://forum.fhem.de/index.php/topic,53069.0.html)