Hauptmenü

YI Kamera integrieren

Begonnen von lukasbastelpeter, 03 September 2020, 17:30:24

Vorheriges Thema - Nächstes Thema

Adolar

Mosquitto liegt auf dem selben RPi wie FHEM und hat somit die selbe IP wie FHEM. IP ist 192.168.178.42 undPort ist 1883

Hier der Raw Code:


defmod Mosquitto MQTT 127.0.0.1:1883
attr Mosquitto privacy 1
attr Mosquitto room FHEM

setstate Mosquitto opened
setstate Mosquitto 2021-01-20 20:52:28 connection active
setstate Mosquitto 2021-01-20 19:37:28 state opened


EDIT: Kann ich denn die beiden Broker nebeneinander laufen lassen - nur ein anderer Port?

TL60

Exakt das geht,habe ich auch so defmod MQTT2FHEM MQTT2_SERVER 1884 global
attr MQTT2FHEM autocreate simple
attr MQTT2FHEM room Gateways
aber wirklich aufpassen das der Port nicht doppelt  benutzt wird, sonst hängt  FHEM sich auf und bleibt stehen. Dann in der Kamera nur den Port ändern und autocreate sollte automatisch ein Device in der Art anlegen defmod MQTT2_yi_cam1 MQTT2_DEVICE yi_cam1
attr MQTT2_yi_cam1 IODev MQTT2FHEM
attr MQTT2_yi_cam1 group MqttCam
attr MQTT2_yi_cam1 readingList yi_cam1:yicam1/status:.* status\
yi_cam1:yicam1/motion_detection:.* motion_detection\
yi_cam1:yicam1/ai_human_detection:.* ai_human_detection\
yi_cam1:yicam1/motion_files:.* { json2nameValue($EVENT) }
attr MQTT2_yi_cam1 room MQTT2_DEVICE
Der Vollständigkeit halber noch mein MQTT Device (läuft auf einem anderen Rechner) defmod mqtt MQTT 192.168.178.138:1883
attr mqtt room Gateways

Vielleicht ist das ja ein Weg.
toi, toi, toi
Thomas

Adolar

Kannst du mir noch sagen, welchen Port ich nehmen kann? Wie finde ich auf dem RPi raus, ob der gewählte Port frei ist?

Edit sagt mir eben, daß du 1884 genommen hast... Ist das sicher ein freier Port?

TL60

Netstat [url http://www.nwlab.net/tutorials/netstat/offene-ports-netstat.html[/url] ? sollte gehen um Ports anzuzeigen. Ansonsten mal Google fragen. In meinem System weiß ich welche Ports frei und welche vergeben sind, bei dir musst du das selber rausfinden und ja standardmäßig ist Port 1884 frei.
Gruß Thomas

Adolar

Ja, so läufts :D, Danke.

defmod MQ2_yi_neu_4 MQTT2_DEVICE yi_neu_4
attr MQ2_yi_neu_4 IODev MQTT2FHEM
attr MQ2_yi_neu_4 readingList yi_neu_4:yi_neu_4/status:.* status\
yi_neu_4:yi_neu_4/motion_detection:.* motion_detection\
yi_neu_4:yi_neu_4/ai_human_detection:.* ai_human_detection\
yi_neu_4:yi_neu_4/motion_files:.* { json2nameValue($EVENT) }\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/status:.* status\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/ai_human_detection:.* ai_human_detection\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/motion_detection:.* motion_detection\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/motion_files:.* { json2nameValue($EVENT) }
attr MQ2_yi_neu_4 room Außen
attr MQ2_yi_neu_4 stateFormat motion_detection

setstate MQ2_yi_neu_4 motion_stop
setstate MQ2_yi_neu_4 2021-01-20 21:54:09 ai_human_detection human_stop
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 end 2021-01-20T21:55:09+0100
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 files_1 2021Y01M20D21H/55M00S60.mp4
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 files_2 2021Y01M20D21H/54M00S60.mp4
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 files_3 2021Y01M20D21H/53M00S60.mp4
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 files_4 2021Y01M20D21H/52M27S00.mp4
setstate MQ2_yi_neu_4 2021-01-20 21:55:09 motion_detection motion_stop
setstate MQ2_yi_neu_4 2021-01-20 21:56:19 start 1970-01-01T01:00:00+0100
setstate MQ2_yi_neu_4 2021-01-20 21:52:30 status online


Hast du bei StataFormat auch nur motion_detetion und keine Zeit?

Muß jetzt ins Bett, mache morgen weiter.
Darf ich dich weiter "ausquetschen"? z.B. wie ich die mp4 per Telegram verschicken kann?

Gute Nacht und vielen Dank

Adolar

TL60

Prima! Ich bin gerne  (im Rahmen meiner Möglichkeiten) behilflich.
Gruß und gute Nacht
Thomas

Adolar

Hallo und guten Abend,

ich habe inzwischen noch die zweite Cam in Betrieb genommen, die verhält sich wie die erste. Alles funktioniert soweit bis auf den Umstand, daß das IPCam Modul keine snapshots macht bzw. nur dann, wenn ich auf get image klicke. Dann kommen sie in dem angegebenen Pfad an und werden auch per Telegram verschickt. Rumhampeln vor der Cam bewirkt NIX!
Der Bewegungsmelder bin also ich  ::).

Hat wer eine Idee?


defmod yi_neu_4 IPCAM 192.168.178.165:8080
attr yi_neu_4 cmd01 switch_on=yes
attr yi_neu_4 cmd02 switch_on=no
attr yi_neu_4 cmd03 save_video_on_motion=yes
attr yi_neu_4 cmd04 save_video_on_motion=no
attr yi_neu_4 cmd05 sensitivity=low
attr yi_neu_4 cmd06 sensitivity=medium
attr yi_neu_4 cmd07 sensitivity=high
attr yi_neu_4 cmd09 led=no
attr yi_neu_4 cmdPos08 led=yes
attr yi_neu_4 delay 2
attr yi_neu_4 disable 0
attr yi_neu_4 event-on-update-reading snapshots
attr yi_neu_4 icon it_camera
attr yi_neu_4 path cgi-bin/snapshot.sh?res=high&watermark=yes
attr yi_neu_4 pathCmd pathCmd cgi-bin/camera_settings.sh
attr yi_neu_4 room Außen
attr yi_neu_4 snapshots 2
attr yi_neu_4 storage /opt/fhem/log/Bilder/IPCamera/yi_neu_4/Shot
attr yi_neu_4 timestamp 0
attr yi_neu_4 userReadings timestamp_1 {ReadingsTimestamp("yi_neu_4","snapshot1",0)}, \\
timestamp_2 {ReadingsTimestamp("yi_neu_4","snapshot2",0)},
attr yi_neu_4 verbose 0

setstate yi_neu_4 last: 2021-01-20 23:38:51
setstate yi_neu_4 2021-01-20 23:38:53 last yi_neu_4_snapshot.jpg
setstate yi_neu_4 2021-01-20 23:38:49 snapshot1 yi_neu_4_snapshot_1.jpg
setstate yi_neu_4 2021-01-20 23:38:51 snapshot2 yi_neu_4_snapshot_2.jpg
setstate yi_neu_4 2021-01-20 23:38:53 snapshots 2
setstate yi_neu_4 2021-01-20 23:38:53 timestamp_1 2021-01-20 23:38:49

hydrotec

Hallo Adolar,

ich vermute da liegt ein Missverständnis vor.
Wie du richtig erkannt hast, kann man mit dem Modul "49_IPCAM.pm" snapshots von der angelegten Kamera holen.
Und es ist auch richtig das dies nur über den get Befehl geht.
Was intern mit dem Modul nicht geht, ist auf motion der Kamera zu reagieren.
Soll heißen, du solltest ein weiteres Device anlegen, welches auf motion triggert.
Am einfachsten über ein MQTT oder MQTT2 Device.
Dann kannst du mit notify oder doif den get Befehl von IPCAM anstoßen.

Schau dir die Beiträge in Post 8-9 nochmal in Ruhe an.

Gruß Karsten

Adolar

Hi Karsten,

Zitat von: hydrotec am 21 Januar 2021, 21:01:43
.....
Was intern mit dem Modul nicht geht, ist auf motion der Kamera zu reagieren.
Soll heißen, du solltest ein weiteres Device anlegen, welches auf motion triggert.
....

Schau dir die Beiträge in Post 8-9 nochmal in Ruhe an.

Gruß Karsten

Da habe ich wohl etwas falsch verstanden...
Ein weiteres Gerät, ja, das sollte nun gehen, da ja MQTT funktioniert.

Post 9 übersteigt meine Fähigkeiten um einiges, leider.

Danke und Gruß,
Adolar

TL60

Hallo, doif ist nun auch nicht unbedingt mein Spezialgebiet. Es gibt aber Hilfestellung zum automatisierten Anlegen von doif und auch notify. Notify ist vielleicht im Anfang einfacher. Den Event Monitor von FHEM kennst du, dort hast du auch die Möglichkeit aus einem einlaufenden Event halbautomatisch ein Notify bzw.doif anzulegen. Vielleicht schaust du dir das Mal an. Links unten im Menü der letzte Punkt, am besten in einem neuen Fenster öffnen.
Gruß Thomas

hydrotec

Hallo Adolar,

kannst du mal bitte die RAW-definition vom MQTT-device deiner yi_neu_4 posten.

Gruß Karsten

Adolar

So läuft. Ich bekomme zwei snapshots auf's Händie wenn eine Person erkannt wird. Wird morgen ausgibig getestet.

Nochmal Danke @all

Zitat von: hydrotec am 21 Januar 2021, 22:53:05
Hallo Adolar,

kannst du mal bitte die RAW-definition vom MQTT-device deiner yi_neu_4 posten.

Gruß Karsten

Aber gerne doch:

defmod MQ2_yi_neu_4 MQTT2_DEVICE yi_neu_4
attr MQ2_yi_neu_4 IODev MQTT2FHEM
attr MQ2_yi_neu_4 readingList yi_neu_4:yi_neu_4/status:.* status\
yi_neu_4:yi_neu_4/motion_detection:.* motion_detection\
yi_neu_4:yi_neu_4/ai_human_detection:.* ai_human_detection\
yi_neu_4:yi_neu_4/motion_files:.* { json2nameValue($EVENT) }\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/status:.* status\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/ai_human_detection:.* ai_human_detection\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/motion_detection:.* motion_detection\
yi_neu_4:FHEM/Au\xc3\x9fen/yi-neu-4/motion_files:.* { json2nameValue($EVENT) }
attr MQ2_yi_neu_4 room Außen
attr MQ2_yi_neu_4 stateFormat motion_detection

hydrotec

#57
Okay, du verwendest MQTT2, da kann ich dir weniger helfen.
Ich verwende Mosquitto mit dem Modul "00_MQTT.pm"
Doch TL60 hat dir ja schon den Tipp mit Eventmonitor gegeben,
und so wie es aussieht funktioniert es ja.

Bin gerade noch in einem Testlauf wie man Aufnahmen über ffmpeg auf ein definiertes Verzeichnis bekommt,
und bei mehreren Kameras auch die zugehörige Aufnahme stopt.
Prinzipiell funktioniert es, doch eher alpha als beta ;-)

Gruß Karsten

Adolar

Ich hatte es mit Mosquitto nicht hinbekommen. MQTT2 sieht sehr vielversprechend aus und läuft bei mir jetzt parallel.

Wozu ffmpeg?

Gruß,
Adolar

hydrotec

Zitat von: Adolar am 21 Januar 2021, 23:41:10
Wozu ffmpeg?

Um den rtsp-stream der Kamera in ein video-file zu wandeln.