FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ruggy am 21 Februar 2024, 17:49:56

Titel: Foto beim Klingeln nur ein Mal (mit IPCAM und DOIF)
Beitrag von: Ruggy am 21 Februar 2024, 17:49:56
Hallo,
habe es mit IPCAM und einen DOIF so eingerichtet, dass ich auf Telegram ein Bild geschickt bekomme, wenn jemand an der Haustüre klingelt.

Das IPCAM ist so eingestellt, dass es drei Bilder im Abstand von 3 Sekunden macht. Das erste Bild wird nach einer Sekunde an Telegram geschicht, das zweite nach 12 Sekunden (Falls man auf dem ersten Bild nicht erkennen kann, wer vor der Türe steht).

Das Problem ist jetzt, dass ich sehr viele Bilder geschickt bekomme, wenn jemand mehrmals die Klingel betätigt.

Wie könnte ich dies pausieren lassen, dass z.B. das DOIF nur alle z.B. 60 Sekunden reagiert.
Mit dem Attribute "Wait" würde es nicht funktionieren, da es beim erneuten klingeln trotzdem wieder aktiv wird (falls ich das richtig verstanden habe).

Hier das list vom DoIF

Internals:
   DEF        ([HUESensor58:"closed"]) (get Eingang_Kamera image; set teleBot send Jemand hat in N unten geklingelt; sleep 2; set teleBot sendPhoto /opt/fhem/www/webcam/Eingang_Kamera/Eingang_Kamera_snapshot_1.jpg; sleep 12; set teleBot sendPhoto /opt/fhem/www/webcam/Eingang_Kamera/Eingang_Kamera_snapshot_2.jpg)
   FUUID      60cf1807-f33f-f59f-4b08-7d25f47b28612dfa
   MODEL      FHEM
   NAME       KLINGELSENSOR_FOTO_UNTEN_dofi
   NOTIFYDEV  global,HUESensor58
   NR         147
   NTFY_ORDER 50-KLINGELSENSOR_FOTO_UNTEN_dofi
   STATE      cmd_2
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   eventCount 7
   Helper:
     DBLOG:
       state:
         DbLog:
           TIME       1708532767.98229
           VALUE      cmd_2
   READINGS:
     2024-02-21 17:26:07   Device          HUESensor58
     2024-02-21 17:26:07   cmd             2
     2024-02-21 17:26:07   cmd_event       HUESensor58
     2024-02-21 17:26:07   cmd_nr          2
     2024-02-21 17:26:07   e_HUESensor58_events open
     2024-02-21 15:08:17   mode            enabled
     2024-02-21 17:26:07   state           cmd_2
   Regex:
     accu:
     bar:
     barAvg:
     collect:
     cond:
       HUESensor58:
         0:
           &STATE     ^HUESensor58$
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::EventDoIf('HUESensor58',$hash,'closed',1)
   do:
     0:
       0          get Eingang_Kamera image; set teleBot send Jemand hat in N unten geklingelt; sleep 2; set teleBot sendPhoto /opt/fhem/www/webcam/Eingang_Kamera/Eingang_Kamera_snapshot_1.jpg; sleep 12; set teleBot sendPhoto /opt/fhem/www/webcam/Eingang_Kamera/Eingang_Kamera_snapshot_2.jpg
     1:
   helper:
     NOTIFYDEV  global,HUESensor58
     event      open
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   HUESensor58
     timerevent open
     triggerDev HUESensor58
     DOIF_eventa:
       cmd_nr: 2
       cmd: 2
       cmd_event: HUESensor58
       cmd_2
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: HUESensor58
       state: cmd_2
     bm:
       DOIF_Get:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        21.02. 17:32:48
         max        4.1961669921875e-05
         tot        4.1961669921875e-05
         mAr:
           HASH(0x3f307f8)
           KLINGELSENSOR_FOTO_UNTEN_dofi
           ?
       DOIF_Notify:
         cnt        8
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        21.02. 17:26:07
         max        0.0278429985046387
         tot        0.0810933113098145
         mAr:
           HASH(0x3f307f8)
           HASH(0x3ed1d98)
       DOIF_Set:
         cnt        4
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        21.02. 17:32:48
         max        0.000216007232666016
         tot        0.000744104385375977
         mAr:
           HASH(0x3f307f8)
           KLINGELSENSOR_FOTO_UNTEN_dofi
           ?
     timerevents:
       open
     timereventsState:
       state: open
     triggerEvents:
       open
     triggerEventsState:
       state: open
   internals:
   readings:
   trigger:
     all         HUESensor58
   uiState:
   uiTable:
Attributes:
   room       Alarm

Vielen Dank
Viele Grüße
Ruggy
Titel: Aw: Foto beim Klingeln nur ein Mal (mit IPCAM und DOIF)
Beitrag von: MadMax-FHEM am 21 Februar 2024, 19:53:16
Statt DOIF ein notify und da dann disabledAfterTrigger setzen...

Gruß, Joachim
Titel: Aw: Foto beim Klingeln nur ein Mal (mit IPCAM und DOIF)
Beitrag von: Damian am 22 Februar 2024, 09:12:43
siehe https://fhem.de/commandref_DE.html#DOIF_cmdpause
Titel: Aw: Foto beim Klingeln nur ein Mal (mit IPCAM und DOIF)
Beitrag von: Ruggy am 23 Februar 2024, 09:02:12
Vielen Dank für die Antworten.

Werde es erst mal mit DOIF und cmdpause versuchen.
Falls es nicht klappt mit dem notify

Gruß
Ruggy