Hallo,
ich nutze eine Samsung SNV-L6083R Überwachungskamera.
Ist es möglich, bei Ereignissen, die in FHEM registriert werden (bspw. von Bewegungsmeldern), über FHEM eine E-Mail zu versenden, die Snapshots der Kamera beinhalten? Das Kameramodell ist eine LAN-Kamera.
Wie kann ich denn generell mit FHEM E-Mails versenden?
Wie könnte es mit den gewünschten Bildern funktionieren?
Sollte möglich sein.
Ich nutze dies mit Telegram anstatt Email.
Zuerst sollte die Kamera eingebunden werden per IPCAM Modul.
Dann ein Notify welches bei Ereignis vom Bewegungsmelder dann die Bilder von der Kamera abruft und versendet.
Beispielhaft hier die Konfig meiner beiden Devices.
HM_Btn_01 ist ein Homematic Schalter welcher bei Öffnung das Bild an die Telegram Gruppe 333333 versendet.
Müsste an deine Verhältnisse angepasst werden.
Notify:
define NTFY_HM_Tor1_GetCamPic_open notify HM_Btn_01:\s*TOR\s*[1-2]\s*offen.* //HomeMatic Schalter geöffnet
{
fhem ("get IPCAM_ABUS_ONEPIC image");; //Kamerabild abrufen
fhem("define cam_open1 at +00:00:08 set MyFHEMHausBot sendPhoto \@-333333 ./www/snapshots/IPCAM_ABUS_ONEPIC_snapshot.jpg") //Bild nach 8 Sekunden an Telegram senden
}
IPCAM:
define IPCAM_ABUS_ONEPIC IPCAM 192.168.178.232
attr IPCAM_ABUS_ONEPIC delay 0
attr IPCAM_ABUS_ONEPIC path /jpg/image.jpg
attr IPCAM_ABUS_ONEPIC snapshots 1
attr IPCAM_ABUS_ONEPIC storage ./www/snapshots
attr IPCAM_ABUS_ONEPIC timestamp 1
Einfacher so
HM_Btn_01:\s*TOR\s*[1-2]\s*offen.* get IPCAM_ABUS_ONEPIC image;sleep 8;set MyFHEMHausBot sendPhoto \@-333333 ./www/snapshots/IPCAM_ABUS_ONEPIC_snapshot.jpg
Code für das DEF
Ich nutze eine USB Kamera für diese Zwecke. Per Script wird ein Bild erstellt, mit Zeitangabe zentral (NAS) abgelegt und kann auf Wunsch (z.B. Präsenz ist absent, aber dennoch wurde Bewegung festgestellt) verschickt werden (Mail oder Telegram).
Weiterhin wird das zuletzt erstellte Bild mittels weblink in der FHEM Oberfläche angezeigt.
Zitat von: Felix_K am 20 Dezember 2018, 12:14:12
Weiterhin wird das zuletzt erstellte Bild mittels weblink in der FHEM Oberfläche angezeigt.
Kannst du hierfür mal kurz dein Vorgehen beschreiben bzw. Beispiele posten?
So etwas habe ich auch noch auf meiner Liste stehen, bin mir nur noch nicht im Klaren wie ich die Bilder in FHEMWEB angezeigt bekomme bzw. den Link dynamisch zusammenbaue.
Gruß, Thomas
Zitat von: ThomasMagnum am 20 Dezember 2018, 12:27:28
Kannst du hierfür mal kurz dein Vorgehen beschreiben bzw. Beispiele posten?
So etwas habe ich auch noch auf meiner Liste stehen, bin mir nur noch nicht im Klaren wie ich die Bilder in FHEMWEB angezeigt bekomme bzw. den Link dynamisch zusammenbaue.
Gruß, Thomas
Dynamisch passe ich den Namen des letzten Bildes im weblink nicht an. Ich lege das letzte Bild immer als "letztes-bild.jpg" ab und der weblink referenziert darauf.
Internals:
DEF image /fhem/www/kamera/letztes-bild.jpg
LINK /fhem/www/kamera/letztes-bild.jpg
NAME Kamera_Bild
NR 287
STATE initialized
TYPE weblink
WLTYPE image
Attributes:
htmlattr width="640" height="480"
room Informationswesen
Ich werde die Hinweise einmal ausprobieren.
Wie finde ich denn das letzte Bild von der Kamera? Die Fotos haben ja immer unterschiedliche Namen, da die Snapshots alle in einem Verzeichnis liegen- ich nutze die Surveillance-Station von Synology.
Gibt es auch Tipps, wie man Mails verschicken kann?
Zitatich nutze die Surveillance-Station von Synology
Wenn das so ist kannst du doch SSCam benutzen -> Wiki: https://wiki.fhem.de/wiki/SSCAM_-_Steuerung_von_Kameras_in_Synology_Surveillance_Station
Da wirst du wahrscheinlich alles finden was du benötigst inklusive des Versandes von Schnappschüssen.
Dort steht :
Überblick über die Perl-Module welche von SSCam genutzt werden:
JSON
Data::Dumper
MIME::Base64
Time::HiRes
HttpUtils (FHEM-Modul)
Muss ich die noch einbinden? Wie?
Für Jason ist es ja beschrieben. Aber wie geht das ggf für die anderen Module?
ZitatMuss ich die noch einbinden? Wie?
Musst nur JSON einbinden. Der Rest ist/sollte bereits verfügbar installiert sein. Das sieht man aber spätestens wenn beim Define eine Meldung im Log kommt dass etwas fehlen würde. Dann kann man immer noch danach schauen.
Nutze auf jeden Fall ein aktuelles FHEM bzw. SSCam (momentan 8.1.0) !
Grüße
Heiko
Zitat von: stobor am 20 Dezember 2018, 21:33:31
Ich werde die Hinweise einmal ausprobieren.
Wie finde ich denn das letzte Bild von der Kamera? Die Fotos haben ja immer unterschiedliche Namen, da die Snapshots alle in einem Verzeichnis liegen- ich nutze die Surveillance-Station von Synology.
Gibt es auch Tipps, wie man Mails verschicken kann?
Da ich, wie oben genannt, eine USB Kamera mit eigenem Script nutze, ist in diesem Script hinterlegt, neben einer neuen Bilddatei auch das vorhandene "letztes-bild.jpg" zu überschreiben.
Alternativ kannst du auf das Erstellen einer neuen Datei im Dateisystem im entsprechenden Pfad reagieren
inotifywait -m -e create /home/pi/Desktop/Daten/Kamera |
while true; do
while read $T path action file; do
rm -f `ls -td -1 /home/pi/Desktop/Daten/Kamera** | awk 'NR>50'`
echo "The file '$file' appeared in directory '$path' via '$action'"
curl "http://localhost:8083/fhem?cmd=setreading%20Kamera_Bild%20letztes_Bild%20$file"
done
done
QUELLE (https://haus-automatisierung.com/hardware/fhem/2016/07/14/fhem-tutorial-reihe-part-11-benachrichtigung-mit-bild-bei-bewegung.html)
Mit einem Notify könntest du nun auf jede Änderung des Readings "letztes_Bild" reagieren und dir eine Mail mit dem Bild schicken lassen.
Dazu entweder ein Script aufrufen oder eine Routine in 99_myUtils einpflegen. https://wiki.fhem.de/wiki/E-Mail_senden#Raspberry_Pi
Zitat von: Felix_K am 21 Dezember 2018, 12:35:23
Alternativ kannst du auf das Erstellen einer neuen Datei im Dateisystem im entsprechenden Pfad reagieren
inotifywait -m -e create /home/pi/Desktop/Daten/Kamera |
while true; do
while read $T path action file; do
rm -f `ls -td -1 /home/pi/Desktop/Daten/Kamera** | awk 'NR>50'`
echo "The file '$file' appeared in directory '$path' via '$action'"
curl "http://localhost:8083/fhem?cmd=setreading%20Kamera_Bild%20letztes_Bild%20$file"
done
done
QUELLE (https://haus-automatisierung.com/hardware/fhem/2016/07/14/fhem-tutorial-reihe-part-11-benachrichtigung-mit-bild-bei-bewegung.html)
Dafür gibt es sogar ein FHEM-Modul
https://forum.fhem.de/index.php?topic=83538.0
Zitat von: stobor am 20 Dezember 2018, 07:46:22
Ist es möglich, bei Ereignissen, die in FHEM registriert werden (bspw. von Bewegungsmeldern), über FHEM eine E-Mail zu versenden, die Snapshots der Kamera beinhalten? Das Kameramodell ist eine LAN-Kamera.
Wenn Du diesen Artikel noch nicht kennen solltest, könnte er für Dein Vorhaben ggf. auch hilfreich sein:
https://hausautomatisierung-koch.de/2017/02/05/bild-smartphone-haustuerklingel///
Ansonsten ist SSCAM für die Besitzer einer Diskstation mit surveillance-station ein wirklich tolle Sache!
VG,
al
Zitat von: DS_Starter am 21 Dezember 2018, 09:52:06
Musst nur JSON einbinden. Der Rest ist/sollte bereits verfügbar installiert sein. Das sieht man aber spätestens wenn beim Define eine Meldung im Log kommt dass etwas fehlen würde. Dann kann man immer noch danach schauen.
Nutze auf jeden Fall ein aktuelles FHEM bzw. SSCam (momentan 8.1.0) !
Grüße
Heiko
Hallo Heiko,
das klingt ja alles einfacher als es anscheinend dann ist.
Die Synology Kameras habe ich jetzt schon mal in FHEM. Super!
Nun gehe ich durch die Doku (https://wiki.fhem.de/wiki/SSCAM_-_Steuerung_von_Kameras_in_Synology_Surveillance_Station#Credentials) "Mailversand von Bilddaten - Integrierten Email-Client nutzen" und habe das Perl Modul (sudo apt-get install libmime-lite-perl) installiert, um Mails zu versenden. Bei der Installation wurde ich nach einem Mail-Namen und SMartHost gefragt. Mail-Namen habe ich voreingestellt gelassen, aber beim SmartHost dachte ich, da muss der smtp-Server rein. Vermutlich falsch, oder? Kann ich das irgendwie ändern? Wie bzw. was muss da rein?
Ich habe es auch hinbekommen, dass FHEM eine Aktion auf der Synology Surveillance Station triggern kann (es werden 5 Schnappschüsse im Abstand von 2sec erstellt - auf der Synology). Cool!
Wie kann ich denn aber jetzt auf diese Bilder zugreifen und diese versenden?
So ganz verstehe ich nicht, wo ich die Befehle einstellen muss ("Komandozeile" in der FHEM-UI oder in der fhem.cfg). Wie z.B.
set <name> smtpcredentials <user> <password> (<name> = Objekt-Name der Soynology?)
und wie die weitere in der Doku gelisteten Attribute zu verwenden sind.
Hast Du da Beispiele?
Danke für Deine Hilfe.
ZitatNun gehe ich durch die Doku (https://wiki.fhem.de/wiki/SSCAM_-_Steuerung_von_Kameras_in_Synology_Surveillance_Station#Credentials) "Mailversand von Bilddaten - Integrierten Email-Client nutzen"
Achtung, das ist ganz neu ab Version 8.2.0 ! Du musst in dem Fall das Modul aus contrib laden und restarten, ist noch nicht eingecheckt , siehe ->
https://forum.fhem.de/index.php/topic,45671.msg879103.html#msg879103
Zitatund habe das Perl Modul (sudo apt-get install libmime-lite-perl) installiert, um Mails zu versenden. Bei der Installation wurde ich nach einem Mail-Namen und SMartHost gefragt.
Das habe ich noch nie gesehen. Bei mir kam bei der Installation keinerlei Abfragen. Du machst alle Angaben zu SMTP im SSCam Device.
Mein Protokoll habe ich dir mal hier angehängt:
heiko@fhemtest:/opt/fhem$ sudo apt-get install libmime-lite-perl
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
The following additional packages will be installed:
libemail-date-format-perl libmime-types-perl
Vorgeschlagene Pakete:
libmojolicious-perl
Die folgenden NEUEN Pakete werden installiert:
libemail-date-format-perl libmime-lite-perl libmime-types-perl
0 aktualisiert, 3 neu installiert, 0 zu entfernen und 27 nicht aktualisiert.
Es müssen noch 0 B von 141 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 433 kB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] J
Vormals nicht ausgewähltes Paket libemail-date-format-perl wird gewählt.
(Lese Datenbank ... 99789 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../libemail-date-format-perl_1.005-1_all.deb ...
Entpacken von libemail-date-format-perl (1.005-1) ...
Vormals nicht ausgewähltes Paket libmime-lite-perl wird gewählt.
Vorbereitung zum Entpacken von .../libmime-lite-perl_3.030-2_all.deb ...
Entpacken von libmime-lite-perl (3.030-2) ...
Vormals nicht ausgewähltes Paket libmime-types-perl wird gewählt.
Vorbereitung zum Entpacken von .../libmime-types-perl_2.13-1_all.deb ...
Entpacken von libmime-types-perl (2.13-1) ...
libemail-date-format-perl (1.005-1) wird eingerichtet ...
libmime-lite-perl (3.030-2) wird eingerichtet ...
libmime-types-perl (2.13-1) wird eingerichtet ...
Trigger für man-db (2.7.6.1-2) werden verarbeitet ...
heiko@fhemtest:/opt/fhem$
ZitatWie kann ich denn aber jetzt auf diese Bilder zugreifen und diese versenden?
Dafür habe ich es im Wiki beschrieben. Auch wie es mit notify etc. funktioniert falls man den internen Mail-Cleint nicht nutzen möchte.
ZitatSo ganz verstehe ich nicht, wo ich die Befehle einstellen muss ("Komandozeile" in der FHEM-UI oder in der fhem.cfg). Wie z.B.
set <name> smtpcredentials <user> <password> (<name> = Objekt-Name der Soynology?)
Du machst alles im FHEM-UI, nichts ! in der fhem.cfg.
Für weitere Beispiele machen wir am Besten im SSCam-Thread weiter: https://forum.fhem.de/index.php/topic,45671.0.html
oder in "Sonstiges".
Dort triffst du auch weiter SSCam-Anwender die helfen können/werden.
Für heute mache ich aber erstmal Schluss und wünsche einen guten Rutsch ! :)
Heiko
Hatte ich vergessen
Zitat<name> = Objekt-Name der Soynology?
Nein, "name" ist der Device-Name deines SSCam-Devices.
Und nicht vergessen ... auch und vor allem die Commandref zu SSCam lesen !
Da steht ebenfalls viel hilfreiches drin wie etwas zu machen ist. Und es gibt auch noch "get <name" versionNotes hints".
Hallo Ds_Starter
Ich stolpere in diesem Usecase über die Pflicht zur Verwendung von smtp credentials... in meinem Intranet brauche ich keine und auf meinem Relay sind auch keine konfiguriert. SSCam scheint aber nicht ohne auszukommen.
Frage
wie kann ich SSCam ohne SMTP Credentials betreiben?
Vielen Dank vorab
und vielen Dank für die sehr nützliche Software!
Ralph
Hallo Ralph,
ja du hast recht. Ich hatte bisher nicht die Möglichkeit in Betracht gezogen dass man keine Credentials für den Zugang zu einem Mailserver benötigen könnte und deshalb ist der Abruf von Credentials fest verdrahtet.
Frage ... wie verhält sich dein Mailserver wenn du einfach Dummy Credentials setzt ? also z.B.:
set ... smtpcredentials dummy dummy
Wenn das nicht Erfolg führen sollte muss ich mal schauen wie ich es optional einbauen kann.
LG,
Heiko
Hallo Heiko.
Das hat Eile, ein kleines Ersatz Relay war schnell aufgesetzt 😉
Jetzt ist Feierabend, die dummies teste ich vrstl morgen.
Dankeschön!
Ralph