Hauptmenü

YI Kamera integrieren

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

Vorheriges Thema - Nächstes Thema

romakrau

Hallo Deco,
steht alles in Antwort #9.
Gruß
Roman

Adolar

Zitat von: rob am 07 September 2020, 22:57:12

Weiterer Zwischenstand:
- einbinden in Fhem geht z.B. via IPCAM-Modul 1A
- Motion Detection via MQTT ebenfalls 1A


Hallo rob,

ich habe versucht das nachzubasteln..., leider nicht mit dem selben Ergebnis wie bei dir.

Die Kameras haben beide die gehackte Firmware. RTSP und MQTT sind eingeschaltet und laufen auch beide. Ich bekomme das Bild mit dem VLC und die MQTT kann ich mit MQTTfx sehen.
Leider ist mir die Einbindung in FHEM nicht gelungen. Die MQTT Signale kommen nicht in FHEM an. Ich benutze als Broker ebenso Mosquitto. Hat irgendwer eine Ahnung, woran das liegen kann?
Ich habe es genau so wie in deinem Beitrag versucht - natürlich mit meinen Kameranamen.

Gruß

rob

Hallo.

Du schreibst
Zitat von: Adolar am 19 Januar 2021, 09:43:25
Ich habe es genau so wie in deinem Beitrag versucht...
Meine Defines sind wahrscheinlich zum 1:1 nachbasteln nicht so dolle. Eher für den groben Eindruck. Lass Dich bitte nicht von meinem Kauderwelsch verleiten :) In den anderen Posts sind die Configurationen deutlich besser.
Mosquitto nutze ich tatsächlich nicht. Sollte aber auch damit laufen.

Verstehe ich richtig, weder IPCAM noch MQTT wollen laufen? Ich fürchte, da ist detektivische Suche vonnöten.

Wie schauen denn die Defines für Deine Devices IPCAM und Mosquitto aus (magst die Lists davon hier einfügen)?
Was sagt denn das Log?
Was hast Du alles in der Cam konkret eingestellt?
Die Einstellungen der Cam müssen zu den Defines in Fhem passen - nur sicherheitshalber: IP und Port passen?
Hast ggf. ein Passwort auf der Cam eingestellt für HTTP/ RTSP?
Sind Fhem-Server und Kamera im selben Netz mit z.B. fixer IP?
Dürfen sich beide Geräte im Netz gegenseitig sehen (von Fhem aus mal anpingen)?
Wifi-Netz und Lan sind nicht voneinander isoliert (z.B. Gast-Wifi)?
Welche Hack-Version hast Du am Laufen? Ich hab die v0.2.0 noch drauf.

Vielleicht ist es einfacher sich erst einmal auf IPCAM zu konzentrieren und Schritt für Schritt weiter mit MQTT.

Viele Grüße
rob

Adolar

Hallo rob, erstmal Danke für deine Antwort.
Zitat von: rob am 19 Januar 2021, 21:02:39
Verstehe ich richtig, weder IPCAM noch MQTT wollen laufen? Ich fürchte, da ist detektivische Suche vonnöten.

Ja, das sieht so aus.
Allerdings hatte ich gestern noch den HTTPMOD nachgebaut und der gibt mir korrekte Rückmeldungen :).

Das nutzt mir jedoch nicht viel, weil ich eigentlich mit den MQTT Meldungen weiter arbeiten will. Wie schon oben erwähnt, kann ich mit MQTTfx die Meldungen der Kamera sehen. Leider erscheinen sie nicht in FHEM, was ich nicht verstehe.
Zitat von: rob am 19 Januar 2021, 21:02:39
Wie schauen denn die Defines für Deine Devices IPCAM und Mosquitto aus (magst die Lists davon hier einfügen)?
Was sagt denn das Log?
Was hast Du alles in der Cam konkret eingestellt?
Die Einstellungen der Cam müssen zu den Defines in Fhem passen - nur sicherheitshalber: IP und Port passen?
Hast ggf. ein Passwort auf der Cam eingestellt für HTTP/ RTSP?
Sind Fhem-Server und Kamera im selben Netz mit z.B. fixer IP?
Dürfen sich beide Geräte im Netz gegenseitig sehen (von Fhem aus mal anpingen)?
Wifi-Netz und Lan sind nicht voneinander isoliert (z.B. Gast-Wifi)?
Welche Hack-Version hast Du am Laufen? Ich hab die v0.2.0 noch drauf.



Hier die Konfigurationen:

AUTHORITY 192.168.178.165:8080
DEF 192.168.178.165:8080
FUUID 5ffde625-f33f-38e0-d794-310ebf94dfab8f47
NAME yi_neu_4
NR 308
SEQ 0
STATE Defined
TYPE IPCAM
Readings
snapshots 0 2021-01-17 13:33:43
timestamp_1 0 2021-01-17 13:19:22

Attributes

delay 2
disable 0
event-on-update-reading snapshots
path cgi-bin/snapshot.sh?res=high&watermark=yes
pathCmd pathCmd cgi-bin/camera_settings.sh
room Außen
snapshots 5
storage /opt/fhem/log/Bilder/IPCamera/yi_neu_4/Shot
timestamp 0
userReadings
timestamp_1 {ReadingsTimestamp("yi_neu_4","snapshot1",0)}, \
timestamp_2 {ReadingsTimestamp("yi_neu_4","snapshot2",0)}, \
timestamp_3 {ReadingsTimestamp("yi_neu_4","snapshot3",0)}, \
timestamp_4 {ReadingsTimestamp("yi_neu_4","snapshot4",0)}, \
timestamp_5 {ReadingsTimestamp("yi_neu_4","snapshot5",0)}

verbose 0


Log IPCam:

2021-01-07_22:03:51 yi_neu_4 transmission-state: subscribe sent
2021-01-07_22:03:51 yi_neu_4 timestamp_01:
2021-01-07_22:03:53 yi_neu_4 transmission-state: subscription acknowledged
2021-01-07_22:03:53 yi_neu_4 timestamp_01:
2021-01-10_16:28:41 yi_neu_4 transmission-state: subscribe sent
2021-01-10_16:28:41 yi_neu_4 timestamp_01:
2021-01-10_16:28:41 yi_neu_4 transmission-state: subscription acknowledged
2021-01-10_16:28:41 yi_neu_4 timestamp_01:
2021-01-12_18:40:06 yi_neu_4 transmission-state: subscribe sent
2021-01-12_18:40:06 yi_neu_4 timestamp_01:
2021-01-12_18:40:06 yi_neu_4 transmission-state: subscription acknowledged
2021-01-12_18:40:06 yi_neu_4 timestamp_01:
2021-01-12_19:04:50 yi_neu_4 transmission-state: unsubscribe sent
2021-01-12_19:04:50 yi_neu_4 timestamp_01:
2021-01-12_19:04:50 yi_neu_4 transmission-state: unsubscription acknowledged
2021-01-12_19:04:50 yi_neu_4 timestamp_01: 2021-01-07_22:03:51 yi_neu_4 transmission-state: subscribe sent
2021-01-07_22:03:51 yi_neu_4 timestamp_01:
2021-01-07_22:03:53 yi_neu_4 transmission-state: subscription acknowledged
2021-01-07_22:03:53 yi_neu_4 timestamp_01:
2021-01-10_16:28:41 yi_neu_4 transmission-state: subscribe sent
2021-01-10_16:28:41 yi_neu_4 timestamp_01:
2021-01-10_16:28:41 yi_neu_4 transmission-state: subscription acknowledged
2021-01-10_16:28:41 yi_neu_4 timestamp_01:
2021-01-12_18:40:06 yi_neu_4 transmission-state: subscribe sent
2021-01-12_18:40:06 yi_neu_4 timestamp_01:
2021-01-12_18:40:06 yi_neu_4 transmission-state: subscription acknowledged
2021-01-12_18:40:06 yi_neu_4 timestamp_01:
2021-01-12_19:04:50 yi_neu_4 transmission-state: unsubscribe sent
2021-01-12_19:04:50 yi_neu_4 timestamp_01:
2021-01-12_19:04:50 yi_neu_4 transmission-state: unsubscription acknowledged
2021-01-12_19:04:50 yi_neu_4 timestamp_01:




DeviceOverview
MQTT_yi_neu_4 stateFormat Motion: motion_detection
\ um:
Internals
DEF yi_neu_4
FUUID 5ffde946-f33f-38e0-d5a1-0c952edd7c7ff238
IODev Mosquitto
NAME MQTT_yi_neu_4
NOTIFYDEV yi_neu_4
NR 309
STATE stateFormat Motion: motion_detection <br/>\
um:

TYPE MQTT_DEVICE

Readings
timestamp_01 2021-01-17 13:33:31
transmission-state subscription acknowledged 2021-01-17 13:33:31

Attributes
IODev Mosquitto
autoSubscribeReadings 1
event-on-change-reading motion_detection
room Außen
subscribeReading_motion_detection yi_neu_4/motion_detection
userReadings timestamp_01 {ReadingsTimestamp("MQTT_yi_neu_4","motion_detection","")}


Cam:

System
Hostname Yi-neu-4
Firmware Version 0.1.3
Base Version 9.0.19.02_202007141512
Model Suffix y21ga
Serial Number BFUSY44KUK3TN8200810
Local Time Wed Jan 20 10:39:49 CET 2021
Uptime 15h 23m 9s
Load Average 1.32 1.48 1.35
Free/Total Memory 36704/60912 KB
Free SD Space 73%
Network
Address 192.168.178.165
Netmask 255.255.255.0
Gateway 192.168.178.1
MAC 44:01:BB:54:21:34
WiFi ESSID XXXXXXXXX
WiFi Strength 75 %


IP und Port sollten passen, da ich die Meldungen ja mit MQTTfx sehen kann. Der Broker ist Mosquitto und läuft auf dem selben RPi wie Fhem. IP ist 192.168.178.42 und Port ist 1883. Topic Prefix ist yi-neu-4. Username/Passwort für die Cam habe ich nicht vergeben, da nur im Heimnetz erreichbar. Fhem und Cam sind im selben Netz.

Wie kann ich die Cam von Fhem aus anpingen?
Wie komme ich an die snapshots der Cam - kann es sein, daß sie garkeine macht? Ich finde nicht, wo ich das einstellen kann. Ich finde nur die Videos.

Zitat von: rob am 19 Januar 2021, 21:02:39
Vielleicht ist es einfacher sich erst einmal auf IPCAM zu konzentrieren und Schritt für Schritt weiter mit MQTT.

MQTT würde mir erstmal ausreichen - oder bekommt man auch ein Livebild ins FHEM? Obwohl das mit den Bildern ins Telegram auch sehr nützlich wäre  ::)

Zitat von: rob am 19 Januar 2021, 21:02:39
Viele Grüße
rob

Grüße zurück,
Adolar

rob

Hi.
Zitat von: Adolar am 20 Januar 2021, 10:58:43
Wie kann ich die Cam von Fhem aus anpingen?
z.B. per SSH auf dem FHEM-Server einloggen und "ping 192.168.178.165" ausführen. Naja, wird wohl verfügbar sein.

Danke für die Infos. Ist nicht einfach den Aufbau nachzuvollziehen ohne selbst direkt darauf schauen zu können und so richtig hab ichs wohl noch nicht begriffen  :o

OK, zu Mosquitto kann ich leider nicht viel beitragen. Der Wiki-Eintrag https://wiki.fhem.de/wiki/MQTT#Beispiel:_mosquitto oder Blog http://blog.wenzlaff.de/?p=6487 lesen sich so, als wenn ein paar Schritte mehr nötig sind z.B. Perl-Module für MQTT installieren.

Ich habe mal einen FHEM-Docker Container gestartet zum Testen + einen Mosquitto Conatiner. Im FHEM habe ich den Mosquitto so angelegt

define mosquitto MQTT2_CLIENT mosquitto:1883 (ja statt IP habe ich net-alias für docker)
attr mosquitto autocreate simple

Dann habe ich testweise eine Nachricht losgeschickt:

mosquitto_pub -h 192.168.175.6 -t "testme/eintest:hupe" -m "1234" -i "myDevice"

daraufhin wird ein MQTT2_DEVICE angelegt + Log:

Internals:
   CFGFN     
   CID        mosquitto
   DEF        mosquitto
   DEVICETOPIC MQTT2_mosquitto
   FUUID      60082ced-f33f-3406-062d-a5f91ebbae374bc4
   IODev      mosquitto
   NAME       MQTT2_mosquitto
   NR         46
   STATE      ???
   TYPE       MQTT2_DEVICE
   READINGS:
     2021-01-20 14:15:25   eintest_hupe    1234
Attributes:
   IODev      mosquitto
   readingList mosquitto:testme/eintest_hupe:.* eintest_hupe
   room       MQTT2_DEVICE


Main-Log sagt zu allem:

2021.01.20 14:14:23.433 3: Opening mosquitto device mosquitto:1883
2021.01.20 14:14:23.437 3: mosquitto device opened
2021.01.20 14:15:25.163 2: autocreate: define MQTT2_mosquitto MQTT2_DEVICE mosquitto mosquitto
2021.01.20 14:15:25.163 2: autocreate: define FileLog_MQTT2_mosquitto FileLog ./log/MQTT2_mosquitto-%Y.log MQTT2_mosquitto

Dann habe ich spassenshalber die Cam auf den Docker-Mosquitto umgestellt und die Messages kommen an:

Internals:
   CFGFN     
   CID        mosquitto
   DEF        mosquitto
   DEVICETOPIC MQTT2_mosquitto
   FUUID      60082ced-f33f-3406-062d-a5f91ebbae374bc4
   IODev      mosquitto
   LASTInputDev mosquitto
   MSGCNT     8
   NAME       MQTT2_mosquitto
   NR         46
   STATE      ???
   TYPE       MQTT2_DEVICE
   mosquitto_MSGCNT 8
   mosquitto_TIME 2021-01-20 14:41:05
   READINGS:
     2021-01-20 14:15:25   eintest_hupe    1234
     2021-01-20 14:41:05   end             2021-01-20T14:39:55+0100
     2021-01-20 14:41:05   files_1         2021Y01M20D14H/39M00S60.mp4
     2021-01-20 14:41:05   files_2         2021Y01M20D14H/38M00S60.mp4
     2021-01-20 14:41:05   files_3         2021Y01M20D14H/37M00S60.mp4
     2021-01-20 14:40:40   motion_detection motion_start
     2021-01-20 14:41:05   start           2021-01-20T14:38:55+0100
     2021-01-20 14:35:42   status          online
Attributes:
   IODev      mosquitto
   readingList mosquitto:testme/eintest_hupe:.* eintest_hupe
mosquitto:yicam1/status:.* status
mosquitto:yicam1/motion_detection:.* motion_detection
mosquitto:yicam1/motion_files:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE

Kannst Du versuchen diese Schritte nachzuvollziehen?

Zitat von: Adolar am 01 Januar 1970, 01:26:51
Wie komme ich an die snapshots der Cam - kann es sein, daß sie garkeine macht?
...oder bekommt man auch ein Livebild ins FHEM?
Die Snapshots würde das IPCAM-Device für Dich abspeichern. Die Kamera speichert auf der SD-Karte nur die Videos - soweit ich weiß. Heißt ja nix.
Livebild vielleicht mit Web-Bastelei möglich - hab da aber nix ausprobiert. Der Stream-Link wird immer mit VLC geöffnet.

VG
rob

Adolar

Hi rob
Zitat von: rob am 20 Januar 2021, 15:21:49

OK, zu Mosquitto kann ich leider nicht viel beitragen.

Nee, MQTT läuft. Habe mehrere Tasmotas am laufen und zigbee2mqtt, läuft alles super. Am Broker wird es nicht liegen, auch wenn ich nicht den mqtt2client sondern Mosquitto als Broker benutze. Oder macht der mqtt2client irgendetwas anders? Ich würde ungern einen zweiten Broker installieren.
Zudem ich wie gesagt die Readings mit MQTTfx unter Windows (an meinem PC) empfange. Leider kommen sie in FHEM nicht an.
Zitat von: rob am 20 Januar 2021, 15:21:49
Die Snapshots würde das IPCAM-Device für Dich abspeichern.
Achso, das IPCAM Modul initiiert die snapshots....
Dann verstehe ich es nicht. :-[  :(
Gruß,
Adolar

rob

Hi.

Tja, sorry, dann kann ich leider nicht sagen, wo es klemmen könnte :(
Vielleicht kennt sich wer besser aus als ich und kann unterstützen.

Viele Grüße
rob

Adolar


TL60

Hallo, vielleicht können wir uns dem Thema MQTT etwas annähern. Du hast geschrieben:Nee, MQTT läuft. Habe mehrere Tasmotas am laufen und zigbee2mqtt, läuft alles super.Was hast du den in den Tasmota Definitionen als IODev drinstehen? Evtl. kannst du bitte auch einen kurzen Ausschnitt aus den RAW-Definitions des Devices zeigen, also in etwa so:defmod MQTT2_DVES_1A74D5 MQTT2_DEVICE DVES_1A74D5
attr MQTT2_DVES_1A74D5 IODev MQTT2FHEM
attr MQTT2_DVES_1A74D5 devStateIcon Online:10px-kreis-gruen Offline:10px-kreis-rot
attr MQTT2_DVES_1A74D5 event-on-change-reading .*
attr MQTT2_DVES_1A74D5 group IR-Geraet
attr MQTT2_DVES_1A74D5 icon IR
attr MQTT2_DVES_1A74D5 model tasmota_ir
Mein IODev hier wäre also MQTT2FHEM. Grundsätlich ist es so: die Kamera sendet an den Broker (Mosquitto) und FHEM holt sich mit Hilfe des IODev die Informationen vom Broker. (die MQTT Freaks werden mich jetzt steinigen, weil das wirklich sehr laienhaft ausgedrückt ist). Insofern ist der Gedanke mit MQTT2Client nicht abwegig.
Gruß Thomas

Adolar

Hallo Thomas,

hier z.B. ein Sonoff POW mit Tasmota geflasht:

defmod POW_03 TASMOTA_DEVICE POW-03 /FHEM/Keller/%topic%/%prefix%
attr POW_03 IODev Mosquitto
attr POW_03 alias POW_03-Media_Wohnzimmer
attr POW_03 autoSubscribeReadings 1
attr POW_03 event-aggregator sensor-energy-power:240:none:mean:500,sensor-energy-apparentpower:320:none:mean:500,sensor-energy-current:320:none:mean:500,sensor-energy-factor:320:none:mean:500,sensor-energy-reactivepower:320:none:mean:500,sensor-energy-voltage:320:none:mean:500
attr POW_03 group Tasmota
attr POW_03 icon measure_power_meter
attr POW_03 room 1.1_Wohnzimmer,4.5_Devices
attr POW_03 stateFormat sensor-energy-power W Heute: sensor-energy-today KWh Total: sensor-energy-total KWh State: result-power


IODev ist immer Mosquitto - der Broker

Gruß,
Adolar

TL60

#40
Ok, jetzt brauche ich ein List vom tasmota_device. Und noch eine Frage nach welcher Anleitung bist du vorgegangen um die Tasmota devices in FHEM zu integrieren. Evtl. einen Link.
Gruß Thomas
Edit: FHEMSchon mal neu gestartet.

Adolar

Ich hatte mich an den Videos und Blogbeiträgen von haus-automatisierung.com langgehangelt. Ist schon ne Weile her.

Restart Läuft

Was meinst du mit "List"?

TL60

Einfach in die Eingabe rechts von dem + Zeichen list tasmota_device und wenn du schon dabei bist auch ein list Mosquitto beides bitte einzeln in Code-Tags, die Raute # oberhalb der Tastatur.
Es ist so das die Implementierung von Mosquitto zu der Zeit noch ziemlich a Anfang war, mittlerweile hat sich FHEM da ziemlich stark entwickelt, es gibt einen eigenen Server (Broker) MQTT2Server und die beiden Module MQTT2Client, für die Verbindung zu einem externen Broker und MQTT2Device für einzelne Geräte. Mit dem Einsatz dieser Module läuft ziemlich viel automatisch ab und es gibt für fast alleGerätearten sogenannte attrTemplate files, die das Anlegen neuer Geräte fast  zum KInderspiel machen. Ich denke, hier hast du ein Problem das die Topics aus der Kamera nicht in das Schema der Geräteanlage passen.

Adolar

#43
list tasmota_device geht nicht, da es Gerätetypen sind.
list Typ=TASMOTA_DEVICE ergibt die Liste der Geräte:

H801_01
H801_02
H801_03
H801_04
H801_05
POW_01
POW_03
POW_04
POW_05
S20_01
S20_02
S20_03
Shelly_01
Shelly_02
TH10_01
WK_KuehlPOW02


list Mosquitto ergibt eine weiße Seite mit Sanduhr - geht irgendwie nicht.

Du meinst ich soll den Broker wechseln? Ich glaube, dann passe ich. Da werde ich warten, bis ich FHEM neu aufsetze, was ich über kurz oder lang (eher lang wegen mangelnder Zeit) eh vorhabe.

Ich bin jetzt mit "wildem rumprobieren" soweit gekommen, daß ich bei der IPCam snapshots bekomme, wenn ich sie mit set auslöse. Bekomme sie dann auch via Telegram.
Jedoch kann ich wie ein Wilder vor der Cam rumspringen und bekomme KEINE snapshots. Ich verstehe es nicht....


TL60

Perspektivisch solltest du sicher umsteigen, siehe auch aktuell hierhttps://forum.fhem.de/index.php/topic,93724.msg1123826.html#msg1123826 und den Post darüber.Aktuell bin ich auch etwas ratlos, zumal ich nicht weiß wie dein IO Device Mosquitto definiert ist (IP-Adresse und Port) Evtl kann man auch erstmal den MQTT-Server parallel zum Mosquitto einrichten und darauf die Cam einrichten und dann nach und nach alle Geräte umziehen.
Gruß Thomas