[GELÖST] bei Event, Berechnung im userReading

Begonnen von Schlafsack, 04 August 2022, 18:50:29

Vorheriges Thema - Nächstes Thema

Schlafsack

Ich möchte gern bei meinem Gardena Mähroboter, dass die Betriebsstunden für die Laufzeit der Messer mitgeschrieben wird am liebsten im userReading im Rasenmaeher selbst. Folgendes habe ich schon probiert: es wird aber immer nur 5 in das Reading geschrieben. Bitte gibt mir einen Tip, was ich falsch mache. Besten Dank


Internals:
   DEF        9db1a508-2b24-4ce0-8b6c-a5251a3df43f mower
   DEVICEID   9db1a508-2b24-4ce0-8b6c-a5251a3df43f
   FUUID      6256dbb9-f33f-b348-65e4-e88c10768d0b25a3
   FVERSION   74_GardenaSmartDevice.pm:v2.5.2-s26186/2022-07-01
   GardenaRouter_MSGCNT 891
   GardenaRouter_TIME 2022-08-04 18:26:23
   IODev      GardenaRouter
   LASTInputDev GardenaRouter
   MSGCNT     891
   NAME       Rasenmaeher
   NR         189
   STATE      geparkt nach Zeitplan
   TYPE       GardenaSmartDevice
   VERSION    v2.5.2
   eventCount 134
   OLDREADINGS:
   READINGS:
     2022-08-01 15:59:46   IODev           GardenaRouter
     2022-08-04 18:30:17   Messer          5
     2022-08-04 17:46:18   battery-charging 0
     2022-08-04 17:46:18   battery-level   100
     2022-04-13 16:18:43   device_info-category Mäher
     2022-07-13 21:34:22   device_info-connection_status online
     2022-08-04 18:11:21   device_info-last_time_online 2022-08-04 18:08:41
     2022-04-13 16:18:43   device_info-manufacturer Gardena
     2022-04-13 16:18:43   device_info-product 3-DEVICE
     2022-04-25 21:34:53   device_info-version 3.0.0-4.0.0-1.5.3-2.2.0
     2022-04-25 21:34:53   firmware-firmware_available_version
     2022-04-13 16:18:43   firmware-firmware_command nichts zu tun
     2022-04-25 21:34:53   firmware-firmware_status auf dem neusten Stand
     2022-04-22 19:07:37   firmware-firmware_upload_progress 0
     2022-04-13 16:18:43   firmware-inclusion_status inbegriffen
     2022-05-05 10:00:07   lastRequestState request_error
     2022-07-15 14:28:04   mower-error     kein Fehler
     2022-07-20 18:58:15   mower-last_error_code kein Fehler
     2022-04-13 16:18:43   mower-manual_operation 0
     2022-08-04 17:01:11   mower-source_for_next_start Wochentimer erreicht
     2022-08-04 17:06:12   mower-status    geparkt nach Zeitplan
     2022-08-04 17:06:12   mower_stats-cutting_time 1521
     2022-08-04 17:06:12   mower_stats-running_time 1589
     2022-04-13 16:18:43   mower_type-base_software_up_to_date 1
     2022-04-13 16:18:43   mower_type-device_type 18
     2022-04-13 16:18:43   mower_type-device_variant 4
     2022-04-26 21:01:37   mower_type-mainboard_version 35.13
     2022-04-28 16:41:07   mower_type-mmi_version 35.9
     2022-04-13 16:18:43   startpoint-1-enabled 0
     2022-04-13 16:18:43   startpoint-2-enabled 0
     2022-04-13 16:18:43   startpoint-3-enabled 0
     2022-08-04 18:26:23   state           geparkt nach Zeitplan
     2022-04-13 16:18:43   winter_mode     awake

Attributes:
   IODev      GardenaRouter
   event-on-change-reading battery-level,mower-error,mower-status,mower_stats-cutting_time
   event-on-update-reading battery-level,mower-error,mower-status,mower_stats-cutting_time
   group      Gardena
   icon       scene_robo_lawnmower
   model      mower
   readingValueLanguage de
   room       Verknüpfungen
   stateFormat mower-status
   userReadings Messer]



Internals:
   CFGFN     
  DEF        Rasenmaeher:.*mower_stats-cutting_time.* {
  my $Messer=Value("Rasenmaeher Messer")+ 5;
  fhem("setreading Rasenmaeher Messer $Messer");;}
   FUUID      62ebf2b2-f33f-b348-b4d2-5ad756e4b29b6a45
   NAME       NEU
   NOTIFYDEV  Rasenmaeher
   NR         8053
   NTFY_ORDER 50-NEU
   REGEXP     Rasenmaeher:.*mower_stats-cutting_time.*
   STATE      active
   TRIGGERTIME 1659630837.86253
   TYPE       notify
   eventCount 9
   READINGS:
     2022-08-04 18:33:58   state           active
     2022-08-04 18:33:57   triggeredByDev  Rasenmaeher
     2022-08-04 18:33:57   triggeredByEvent mower_stats-cutting_time: 1520
Attributes:
   room       Testraum

sash.sc

Du hat ein userreading

Messer]

Und nicht

Messer

Gruß Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Beta-User

...da ist noch mehr verbogen (angefangen damit, dass die event-on-Attribute in dieser Fassung m.E. keinen großen Sinn ergeben)...

Vermutlich brauchst du das notify nicht und suchst nach sowas:
attr Rasenmaeher userReadings Messer:mower_stats-cutting_time:.* {ReadingsVal($name,'Messer',0)+5}
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Schlafsack

Hallo Sascha,
das mit dem Messer] war ein copy & paste Fehler von mir. In meinem Gerät steht nur Messer

Hallo Beta-User,
du bist der Beste, genau das war die Lösung.

attr Rasenmaeher userReadings Messer:mower_stats-cutting_time:.* {ReadingsVal($name,'Messer',0)+1}


Vielen Dank

Beta-User

 :) Gerne!

OT-Anmerkung:
- die beiden event-Attribute sind jeweils Positiv-Listen. mAn. sollte zweckmäßigerweise (abgesehen von regex-"Beifängen") jedes Reading nur jeweils in einer der Listen auftauchen;
- Als "empfohlene Einstiegslektüre" zu den "Problemchen", über die du hier gestolpert bist, würde ich mal folgendes in den Raum werfen:
-- https://wiki.fhem.de/wiki/Event_monitor (v.a. auch zur Erstellung von notify uä.)
-- https://fhem.de/commandref_modular_DE.html#perl (Verwendung der Perl-Auslesefunktionen)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors