[Gelöst] motioneyeos Bewegungserkennung an FHEM melden

Begonnen von Edi77, 29 Juli 2020, 17:46:48

Vorheriges Thema - Nächstes Thema

Edi77

Hallo,

Ich hab hier Motioneyeos am laufen, die Bewegungserkennung funktioniert, auch ein Notifications an EMail Postfach.

Habe mir dann die Sache mit WebHook angeschaut, ein neues angelegt unter Port 8088 und mit einem http Link kann ich nun ein Dummy Device schalten  ;D
So weit so gut dachte ich mir, jetzt habe ich das in motioneyeos bei WebHook mit Get eingetragen aber es tut sich garnichts.
Noch nicht mal ein Fehler im Log  :-\
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

amenomade

Bisschen mehr Infos bitte.

Hängen Motioneyeos und Fhem im gleichen Netz? Firewall dazwischen?

"http Link": welcher?
WebHook angelegt: "list" von FHEMWEB und allowed Instanz

Möglicherweise kriegst Du mehr in der Log mit verbose 5 auf der FHEMWEB Instanz .
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Edi77

#2
Hallo,

Konnte das Problem lösen.

Die Definition im FHEM sieht so aus

define WEBhook FHEMWEB 8088 global
attr WEBhook csrfToken none
attr WEBhook webname webhook
define allowed_WEBhook allowed
attr allowed_WEBhook allowedCommands set,get
attr allowed_WEBhook basicAuth blablabla......
attr allowed_WEBhook validFor WEBhook


Ein Script in Motioneyeos in /data/etc eins für on eins für off und nicht vergessen chmod die Rechte auf die Datei setzen


#!/bin/bash
curl 'http://USER:PASSWORD@IP:8088/webhook?cmd=set%20Str_puls%20on'


Und dann in Motioneyeos Run A Command und Run An End Command die Scripte hinterlegen.

Theoretisch könnte man sowas auch verwenden um irgendwelche LEDs an der Spül/Waschmaschine zu beobachten  ;) oder andere Dinge
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

steffen83

ich habe dies zumindest bei einer FOSCAM über die Emailfunktion gelöst.
Du trägst in der Kamera/dem System anstatt E-Mailserver etc. die FHEM Zugangsdaten ein.

Dann gehst du in FHEM und erstellst ein Notify. Dieses reagiert dann auf eine akzeptierte Verbindung der Kamera und du kannst damit Dinge dann auslösen
Internals:
   DEF        .*Connection.*accepted.*192.168.0.21.* {

   fhem ("setreading foscam_steffen Bewegungsalarm on");

}
   FUUID      5ede06eb-f33f-3317-002c-c60bfb133a15a4e7
   NAME       alarm_tk3
   NR         142
   NTFY_ORDER 50-alarm_tk3
   REGEXP     .*Connection.*accepted.*192.168.0.21.*
   STATE      active
   TYPE       notify
   READINGS:
     2020-07-27 10:12:24   state           active
Attributes:
   readLog    1
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

Edi77

Hallo,

Wie hast du das gemacht auf eine akzeptierte Verbindung zu reagieren?
Master FHEM 6 als VM auf ESX Ubuntu 20.04 LTS mit MAXCube/MAX!/FS20|TabletUI|Flightradar|Tasmota|TTN Lora|CCU3 HomematicIP|RPi mit GammaScout|MQTT EasyESP 8266|LuftdatenInfo|deCONZ HUEDev|probemon|Siemens Logo|P4D|3D PRINTER RAISE3D

steffen83

Steht doch genau in dem Beitrag von mir mit einem notify
Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

curt

Hallo @Edi77
herzlichen Dank - das funktioniert nun bei mir. Leider mit einer Einschränkung, siehe unten.

Zitat von: Edi77 am 30 Juli 2020, 00:45:04
Die Definition im FHEM sieht so aus

Das habe ich exakt so umgesetzt (allowed allerdings unter allowed allowed).

Für spätere Leser: Zudem muss man auch ein Dummy-Device (in diesem Beispiel "define Str_puls dummy") definieren.

Zitat von: Edi77 am 30 Juli 2020, 00:45:04
Ein Script in Motioneyeos in /data/etc eins für on eins für off und nicht vergessen chmod die Rechte auf die Datei setzen

Da wird es tricky: Owner ist root. Zugriffsrechte sind rwxr-x-rx, da funktioniert es nicht. Es funktioniert bei rwxrwxrwx - was für Owner root nun nicht der schickste Plan ist. Eigentlich müsste man den Owner beider Scripte auf den setzen unter dem das aufrufende Programm läuft. Daher: Kannst Du auf die Schnelle sagen, unter welchem Account MotionEye läuft?

Zitat von: Edi77 am 30 Juli 2020, 00:45:04
Und dann in Motioneyeos Run A Command und Run An End Command die Scripte hinterlegen.

Das scheint mir noch hakliger, da die Option mehrfach im Admin-Menü auftaucht. Korrekterweise gehört das in den auszuklappenden menüpunkt "Motion Notifications": Dort schaltet man Run A Command sowie Run A End Command ein und trägt /data/etc/on.sh bzw. /data/etc/off.sh ein - die beiden Scriptnamen.

Kannst Du auf die Schnelle sagen, unter welchem Account MotionEye läuft?
RPI 4 - Jeelink HomeMatic Z-Wave