event-min-interval ohne funktion

Begonnen von bicmac, 21 Januar 2022, 08:16:12

Vorheriges Thema - Nächstes Thema

bicmac

Hi,

ich habe bei meien Aquara Temp Sensoren ein event-min-interval intervall gesetzt damit FHEM zumindest alle 5 min ein Event ausläst auch wenn der Sensor nicht updated bzw die Werte Ändert. Nur scheinbar greift das nicht denn laut Eventmonitor wird kein Event ausgelöst. Was mache ich falsch?



Internals:
   DEF        sensor 3  IODev=zigbee_haus_gateway
   FUUID      5f157369-f33f-34fb-010e-58c909b3f1d56272
   FVERSION   31_HUEDevice.pm:0.252490/2021-11-21
   ID         S3
   INTERVAL   
   IODev      zigbee_haus_gateway
   NAME       sensor_eg_wz_temperature
   NR         81
   STATE      23.75 °C
   TYPE       HUEDevice
   lastupdated 2022-01-21 06:54:15
   lastupdated_local 2022-01-21 07:54:15
   manufacturername LUMI
   modelid    lumi.weather
   name       Multisensor -WZ
   on         1
   reachable  1
   swversion  20161129
   type       ZHATemperature
   uniqueid   00:15:8d:00:04:65:8a:07-01-0402
   Helper:
     DBLOG:
       temperature:
         DBLogging:
           TIME       1642747984.5269
           VALUE      23.75
   READINGS:
     2022-01-20 11:55:22   IODev           zigbee_haus_gateway
     2022-01-21 07:54:15   battery         55
     2022-01-21 07:54:15   batteryPercent  55
     2022-01-20 00:56:10   lastseen        2022-01-19T23:56Z
     2022-01-21 07:54:15   reachable       1
     2022-01-21 07:54:15   temperature     23.75
   helper:
     devtype    S
     reachable  0
     update_timeout 1
     configList:
     json:
       ep         1
       etag       cde306d5b02f2c9a461a5ae68a16c801
       lastseen   2022-01-21T06:54Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Multisensor -WZ
       swversion  20161129
       type       ZHATemperature
       uniqueid   00:15:8d:00:04:65:8a:07-01-0402
       config:
         battery    55
         offset     0
       state:
         lastupdated 2022-01-21T06:54:15.541
         temperature 2375
     setList:
Attributes:
   DbLogExclude .*
   DbLogInclude temperature
   IODev      zigbee_haus_gateway
   alexaName  Thermometer Wohnzimmer
   alexaRoom  Wohnzimmer
   alias      Thermometer (WZ)
   event-min-interval temperature:300
   event-on-change-reading .*
   genericDeviceType thermometer
   group      Raumklima
   model      lumi.weather
   readingsWatcher 3600,???,temperature
   room       HAUS->EG->WOHNEN,SYSTEM->DEVICES->HUE
   stateFormat temperature °C

Beta-User

Du machst nichts falsch, hast allerdings ein falsches Verständnis von dem Attribut:
Es verringert die Häufigkeit von Events, _wenn_ es welche gibt, es erzeugt aber keine (was auch - abgesehen von Plot-Begradigungen oä. - sinnlos wäre).
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

bicmac

Zitat aus dem Wiki

"Mit dem Attribut event-min-interval kann für Readings eines Gerätes festgelegt werden, dass nach einer bestimmten Zeit ein Event auch ohne Wertänderung oder Update ausgelöst wird. In der Regel ist das Attribut sinnvoll vor allem in Kombination mit dem Attribut event-on-change-reading einsetzbar."

Das steht doch aber das es genau das machen sollte. Dann wäre der Wiki Eintrag falsch. Oder verstehe ich den falsch.

Zitat von: Beta-User am 21 Januar 2022, 09:01:12
Du machst nichts falsch, hast allerdings ein falsches Verständnis von dem Attribut:
Es verringert die Häufigkeit von Events, _wenn_ es welche gibt, es erzeugt aber keine (was auch - abgesehen von Plot-Begradigungen oä. - sinnlos wäre).

OdfFhem

Wiki bedeutet übersetzt:

event-min-interval erlaubt mit einer Sekundenangabe, dass nach Verstreichen dieser Zeitspanne die nächste Aktualisierung auf jeden Fall zu einem Event führt - Wert spielt dabei keine Rolle.

Das Gerät muss aktiv werden ...

Beta-User

Zitat von: bicmac am 21 Januar 2022, 09:04:05
Zitat aus dem Wiki

"Mit dem Attribut event-min-interval kann für Readings eines Gerätes festgelegt werden, dass nach einer bestimmten Zeit ein Event auch ohne Wertänderung oder Update ausgelöst wird. In der Regel ist das Attribut sinnvoll vor allem in Kombination mit dem Attribut event-on-change-reading einsetzbar."

Das steht doch aber das es genau das machen sollte. Dann wäre der Wiki Eintrag falsch. Oder verstehe ich den falsch.

Danke für den Hinweis. Hab's geändert, es war mAn. schlicht falsch!
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

marvin78

Deshalb sollte man auch immer in die Doku schauen (zumindest bei den Kernfunktionen - Entwickler von einigen Modulen halten sich ja mittlerweile für zu schlau für die commandref). Das Wiki liegt oft falsch...


Rainerlan_2

#6
Ich bin mir bei den ganzen Infos nicht mehr sicher was jetzt die richtige Info bezüglich Funktionsweise des Attributs event-min-interval ist - bzw. wie diese zu verstehen ist. Daher möchte ich um Hilfe bitten! (Doku, fhem-Forum & Wiki wurden zuvor durchsucht)

Was ich benötige:
Auch wenn es keine Aktualisierung des (Hue)Devices gibt, möchte ich ein Event erzeugen, um ein kontinuierliches log der Readings zu bekommen.

Konkret: Ein paar Zigbee Temp/Humidity-Sensoren (ähnlich den Aqaras nur mit Display) aktualisieren ihre Readings nur bei Wertänderung (Manchmal kein update für mehrere Stunden).

Was ich versucht hatte:
attr TempHumBadDg.Temp event-min-interval .*:60

So wie ich die verfügbaren Infos verstanden habe, sollte damit das Device (wenn event-on-change-reading UND event-on-update-reading NICHT definiert sind), genau mein gewünschtes Verhalten zeigen.

Hier die komplette Device-Definition - aus lauter Verzweiflung habe ich auch schon versucht, das <Interval> des HUEdevice explizit zu setzen (Ohne Erfolg):

defmod TempHumBadDg.Temp HUEDevice sensor 167 60 IODev=deCONZ
attr TempHumBadDg.Temp DbLogInclude temperature,battery
attr TempHumBadDg.Temp IODev deCONZ
attr TempHumBadDg.Temp alias Temperatursensor
attr TempHumBadDg.Temp event-min-interval .*:60
attr TempHumBadDg.Temp group HUESensor
attr TempHumBadDg.Temp model TS0201
attr TempHumBadDg.Temp room HUEDevice
attr TempHumBadDg.Temp stateFormat temperature


Hatte gehofft mir kann jemand einen Tipp geben;)

marvin78


justme1968

wenn ein device aus welchen gründen auch immer von sich keine events erzeugt erfindet fhem keine dazu. die diversen event attribute sind auch nicht dafür da sondern um eventuell zu viel ankommende events zu reduzieren.

ansonsten: siehe https://wiki.fhem.de/wiki/Plot-Abriss_vermeiden
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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