[Gelöst]Notify mit Zeit

Begonnen von Sebastian84, 30 Dezember 2023, 22:15:46

Vorheriges Thema - Nächstes Thema

Sebastian84

Define Spuele_Zustand_Kontrolle notify Spule:lastseen defmod at_Check_Spuele at +01:30:00 {if(ReadingsVal("Spuele","state","n.a.") eq "lastseen){ fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 1 'bugle' "}} 
Würde das dann so gehen?

MadMax-FHEM

#16
Zitat von: Sebastian84 am 02 Januar 2024, 14:39:16Würde das dann so gehen?
(Ich denke:) nein!

Warum machst du nicht (einmal) einfach was man dir rät, sondern "musst" es (immer) mit eigenen "Phantasien" anreichern?

Was soll denn bei deiner "phantasievollen" Abfrage if(ReadingsVal("Spuele","state","n.a.") eq "lastseen) passieren?

Laut deinem list von hier: https://forum.fhem.de/index.php?topic=136432.msg1298263#msg1298263
gibt es kein Reading state:
Zitat von: https://forum.fhem.de/index.php?topic=136432.msg1298263#msg1298263READINGS:
     2023-12-30 04:00:24   IODev           deconz
     2023-12-31 05:39:12   battery         82
     2023-12-31 05:39:12   batteryPercent  82
     2023-07-01 03:20:16   batteryState    ok
     2023-12-31 05:39:12   lastseen        2023-12-31T04:39Z
     2023-12-31 05:39:12   reachable       1
     2023-07-01 03:20:16   tampered        0
     2023-12-31 05:39:12   temperature     26
     2023-12-31 05:39:12   water           0

Also wird die "Prüfung" nie wahr werden (können)...

EDIT: jetzt nehm ich ne Portion Popcorn 8)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Sebastian84

#17
  Define Spuele_Zustand_Kontrolle notify Spuele:lastseen defmod at_Check +01:30:00 { fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 0 'bike' "} 

MadMax-FHEM

#18
Was spricht gegen: einfach ausprobieren? 8)

(Zeit des at verkürzen und warten)

Der Wechsel nach Perl -> { } und dann zurück nach fhem -> fhem"Befehl" ist unnötig...
Aber egal...

notify selbst ausgedacht oder erzeugen lassen? ;)
Wobei es verm. funktionieren, also triggern, könnte...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

#19
Bzw. kann nicht gehen, also dein letzter (phantasievoller) Versuch: bei deinem defmod fehlt der Modulname: at

EDIT:
also statt
Zitatdefmod at_Check +01:30:00
Mindestens mal (wieder):
defmod at_Check at +01:30:00


In dem Versuch davor war der noch drin...

EDIT: warum also nicht einfach nur den "if-Quatsch" weg, sondern wieder "irgendwas" zusätzlich rumgeändert? :o
Mir ein Rätsel...

Wenn das notify getriggert wird, sollte das auch im Log stehen, also, dass da was nicht (mehr) stimmt ;)

EDIT: auch dein set für die Nachricht sieht doch jedesmal anders aus?! Du bist sicher, dass der so auch tut?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Sebastian84

#20
Define Spuele_Zustand_Kontrolle1 notify Spuele:.lastseen defmod at_Check at +00:03:00 { fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 1 'bike' "}   
Funkioniert leider nicht. Hab auf 3 Minuten gestellt.
CFGFN     
   DEF        Spule:lastseen defmod at_Check at +00:01:00 { fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 1 'bike' "}
   FUUID      65942640-f33f-cdd4-cbad-63c017c3f5f48f3d
   NAME       Spuele_Zustand_Kontrolle1
   NR         15427
   NTFY_ORDER 50-Spuele_Zustand_Kontrolle1
   REGEXP     Spuele:.lastseen
   STATE      active
   TYPE       notify
   eventCount 4
   READINGS:
     2024-01-02 16:11:10   state           active
Attributes:


Otto123

mit dem Suchmuster Spuele:.lastseen wird das nix  :o ich würde den Eventmonitor zur Hilfe nehmen ;)
Da könnte dann sowas rauskommen: Spuele:lastseen:.*
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

MadMax-FHEM

#22
Eben, wie ja bereits (mehrstfach, nicht nur hier) geraten/gefragt, ob selbst erstellt oder erstellen lassen mit Eventmonitor?

Dann: es muss nat. auch erst mal ein Event lastseen kommen, davor wird das at ja nicht durch das notify angelegt!

EDIT: und das notify wurde noch nicht getriggert, steht ja immer noch auf active (und wartet)...

Dein define passt nicht zum list!

define mit Spuele:.lastseen

list ist dann nur: Spuele:lastseen (zumindest laut DEF, weiter unten dann wieder mit Punkt davor / was nun?)

Wenn du weiterhin einfach lustig was probierst, was dir grad durch den Kopf schwirrt und auch die Infos inkonsistent sind, wird das nix...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Otto123

#23
aber am Anfang ging es ja um watchdog, der Eventmonitor erzeugt mir so etwas, das funktioniert auch :) :
define HUESensor21_watchdog_1 watchdog HUESensor21:reachable:.1 00:05 SAME {Log 1, "Sensor $NAME failed"}
#   CFGFN     
#   CMD        {Log 1, "Sensor $NAME failed"}
#   DEF        HUESensor21:reachable:.1 00:05 SAME {Log 1, "Sensor $NAME failed"}
#   FUUID      65943704-f33f-18bf-1140-22b23d1e37764876
#   NAME       HUESensor21_watchdog_1
#   NOTIFYDEV  HUESensor21,HUESensor21_watchdog_1
#   NR         124
#   NTFY_ORDER 50-HUESensor21_watchdog_1
#   RE1        HUESensor21:reachable:.1
#   RE2        HUESensor21:reachable:.1
#   STATE      triggered
#   TO         300
#   TYPE       watchdog
#   READINGS:
#     2024-01-02 17:25:46   Activated       activated
#     2024-01-02 17:30:46   Triggered       triggered
#     2024-01-02 17:25:46   triggeredByDev  HUESensor21
#     2024-01-02 17:25:46   triggeredByEvent reachable: 1
#
setstate HUESensor21_watchdog_1 triggered
setstate HUESensor21_watchdog_1 2024-01-02 17:25:46 Activated activated
setstate HUESensor21_watchdog_1 2024-01-02 17:30:46 Triggered triggered
setstate HUESensor21_watchdog_1 2024-01-02 17:25:46 triggeredByDev HUESensor21
setstate HUESensor21_watchdog_1 2024-01-02 17:25:46 triggeredByEvent reachable: 1

Hab nur die Zeit zum Test verringert und mal einen Log Eintrag geschrieben.
2024.01.02 17:30:46.815 3: Watchdog HUESensor21_watchdog_1 triggered
2024.01.02 17:30:46.817 1: Sensor HUESensor21 failed
Für den automatischen Dauerbetrieb (ohne manuelles rücksetzen) braucht es dann noch ein
attr HUESensor21_watchdog_1 autoRestart 1
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

MadMax-FHEM

Hmm, ja, SAME ;)

Dann lag ich hier wohl leider (zumindest halb) daneben https://forum.fhem.de/index.php?topic=136432.msg1298505#msg1298505 8)

Gruß,Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Sebastian84

Im Eventmonitor kamn bei mir kein reachable.

Im Eventmonitor habe ich jetzt erstellt

Save config ?
anyViews
 0_System
1_UG
2_EG
3_1.OG
4_2.OG
Wecker.Aus 5_Klingel
 6_Heizung
 7_Muelltonne
 8_Zuhause
 
 
       9_Batterie
 FBDECT
 Garten
HUEDevice
ge_wht_steckdose Keller
 Plots
 Unsorted
icoEverything Everything
Commandref
Remote doc
Edit files
Select style
Event monitor

Internals:
   CFGFN     
   DEF        Spuele:lastseen:.2024-01-02T18:22Z defmod at_Check at +00:03:00 { fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 1 'bike' "}
   FUUID      65945697-f33f-cdd4-9044-5534e78cb5ee7a33
   NAME       Spuele_notify_1
   NOTIFYDEV  Spuele
   NR         24046
   NTFY_ORDER 50-Spuele_notify_1
   REGEXP     Spuele:lastseen:.2024-01-02T18:22Z
   STATE      active
   TYPE       notify
   eventCount 2
   READINGS:
     2024-01-02 19:33:41   state           active
Attributes:

 

Aber auch wenn ich den Zeitstempel für ein * ersetze tiggert er nicht.

MadMax-FHEM

#26
reachable kommt ja verm. nicht "auf Wunsch" sondern wenn der Sensor nicht erreichbar ist?
Oder nicht regelmässig...

Das weißt nur du...

Wenn du dir dafür ein notify erzeugen lassen willst, musst du halt mit laufendem Eventmonitor warten (man kann ja Filter setzen damit nicht so viel auftaucht) oder den Event provozieren (z.B. Batterie raus)...

Mit Zeitstempel kann nat. nicht gehen: gilt ja nur 1x und ist schon vorbei...

Nur Stern oder Punkt und Stern?

Also: * oder  . *

Das ist Regex und nicht "wildcard"!

Warum postest du ein (komisches) list, änderst was und davon dann kein list?

Warum probierst du (immer) nur (planlos) rum statt mal mitzudenken oder auch mal zu lesen/lernen?

Beim Anlegen per Eventmonitor kann man auch Devices anlegen lassen, die NICHT GENAU NUR AUF DIESEN EVENT lauschen, sondern "breiter" reagieren...

Und bevor das at eine Nachricht schicken kann muss das notify erst mal ausgelöst haben, also mindestens 1x weil erst dann das at da ist!

Den Vorschlag von Otto mal probiert?

Wenn du weiterhin einfach (planlos) "irgendwas" ausprobierst, dann wird das nix...

Mir vergeht (langsam) die Lust...

(weil fast jede Anfrage von dir so abläuft)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Otto123

Zitat von: Sebastian84 am 02 Januar 2024, 19:36:48Im Eventmonitor kamn bei mir kein reachable.
kein Wunder:
Zitat2023-12-31 05:39:12   lastseen        2023-12-31T04:39Z
     2023-12-31 05:39:12   reachable       1
...
Attributes:
   event-on-change-reading .*
Mit dem attr kommen keine Events bei reachable, weil sich der Wert nicht ändert. Das beantwortet auch Deine Eingangsfrage, warum geht das eine und das andere nicht. :)
Zitat von: Sebastian84 am 02 Januar 2024, 19:36:48Aber auch wenn ich den Zeitstempel für ein * ersetze tiggert er nicht.
lass doch erstmal deinen komplizierten Ausführungsteil weg und ersetze das wie in meinem Beispiel mit einem Log Eintrag.


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

MadMax-FHEM

Bist du sicher, dass es alle paar Stunden den Event gibt?

Du hast laut deinem list bei Spuele event-on-change-reading .* gesetzt...

Wenn das Modul keine "Sonderbehandlung" bzgl. Events macht, dann kommt für ein Reading nur ein Event, wenn sich der Wert ändert.

Daher: Eventmonitor (mit Filter) mal eine zeitlang (mind. so lange wie du denkst der Event sollte/müsste kommen) laufen lassen.

Wenn nichts im Eventmonitor kommt, dann gibt es auch keinen Event und dann kannst du auch mit notify/watchdog/... nicht drauf reagieren...
(oder der Filter beim Eventmonitor war falsch ;) )

Die Zeitstempel deines list Spuele sind vom 31.12. scheint also seitdem kein Event mehr gekommen zu sein?!
Wie kommst du dann auf: "alle 2h"?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Sebastian84

Über Eventmonitor

Hat es bei mir so geklammt.
Danke an die Info mit.×
  Spuele:lastseen:.* defmod at_Check at +00:03:00 { fhem "set pushmsg msg 'Spuele' 'Wassersensor nicht mehr ereichbar' 'sebastian,galaxya50,galaxytaba8' 1 'bike' "}