Modul für Netgear Arlo-Kameras (Python-Version)

Begonnen von maluk, 07 Mai 2018, 20:40:06

Vorheriges Thema - Nächstes Thema

choetzu

Raspi3, EnOcean, Zwave, Homematic

mi.ke

Zitat von: maluk am 30 November 2018, 19:12:23
Wenn ich soweit bin, brauche ich ein paar Beta-Tester :)


Bin dabei
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

m0urs

Ich teste gerne mit. Bin mit Jeffrey auch schon ein wenig weiter gekommen bzgl. des Supports der Arlo Bridge mit Arlo Security Lights. Wäre toll, wenn das Modul das dann auch unterstützen würde ;-)

eddy242


maluk

#214
Ich werde heute Abend mal eine erste Version der Neuimplementierung hochladen. Die hat allerdings noch keine Langzeit-Tests hinter sich, daher kann es noch zu Problemen kommen und sie sollte zunächst nur verwendet werden, wenn Ihr damit leben könnt, dass das Modul auch mal ausfällt. Wichtig: beide Varianten parallel sollten nicht verwendet werden. Arlo prüft bei jedem Login, ob die User-ID bereits angemeldet ist und stoppt für die angemeldete Sessions die Benachrichtigungen. Dies war bisher auch schon der Fall, wenn man den Arlo-Server laufen hatte und parallel die App gestartet hat. Auch hier gab es Wechselwirkungen.

Für die technisch Interessierten hier mal eine Beschreibung der Schnittstelle: Arlo stellt eine REST API bereit, allerdings kommen die meisten Rückantworten vom Server asynchorn per Server-Sent Events (SSE). Da SSE von Perl nicht unterstützt wird und in FHEM auch keine Implementierung dafür vorhanden ist, habe ich längere Zeit davor zurückgeschreckt, das Modul komplett auf Perl umzustellen. Diese SSE-Schnittstelle war auch der Teil, der im Python-Server immer wieder für Probleme gesorgt hat, da bei Verbindungsabbrüchen zu Problemen geführt hat, weil ich über Jeffrey Walter's Python-Modul kein sauberes Fehler-Handling hinbekommen habe. Jetzt habe ich die SSE-Schnittstelle selbst implementiert und kann dadurch hoffentlich auch das Fehler-Handling verbessern. Genau dieses Fehler-Handling ist aber momentan noch sehr rudimentär und das werden wir hier über das Forum zusammen verbessern müssen.

Trotzdem bin ich Jeffrey sehr dankbar für die Python-Implementierung. Das war echte Pionierarbeit und ohne sein Modul hätte ich meine Neuimplementierung auch nicht hinbekommen.

mi.ke

vielleicht sollte man einen neuen Thread aufmachen für das neue Modul.
Sonst gibt es bestimmt Durcheinander, oder?
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

maluk

Das hatte ich sowieso vor  :). Hier der Link zum neuen Thread: https://forum.fhem.de/index.php/topic,94025.0.html

Für alle Umsteiger: bitte alle bisherigen Devices löschen und das Account-Device neu anlegen (es hat nur noch 2 Parameter, die restlichen wurden nur wegen dem Python Server benötigt). Mit dem Autocreate werden jetzt alle Basisstationen und Kameras automatisch angelegt.

Falls es Probleme mit Verbindungsabbrüchen gibt, kann über folgenden Befehl eine erneute Anmeldung erzwungen werden: set Arlo_Cloud reconnect
Probleme bitte im Forum melden. Ich habe das Modul heute sofort veröffentlicht, ohne eine längeren Test damit zu machen. Es funktioniert zwar grundsätzlich, aber spannend wird es ja erst im Zusammenhang mit DSL-Zwangstrennungen und auslaufenden Sessions auf der Arlo-Seite. Das Session-Problem wird mit Sicherheit kommen, aber ich wollte Euch einfach schnell an der neuen Entwicklung teilhaben lassen, da viele von Euch ja auch mit der Python-Variante einige Probleme hatten.

maluk

Zitat von: m0urs am 30 November 2018, 22:34:10
Ich teste gerne mit. Bin mit Jeffrey auch schon ein wenig weiter gekommen bzgl. des Supports der Arlo Bridge mit Arlo Security Lights. Wäre toll, wenn das Modul das dann auch unterstützen würde ;-)

Sobald Ihr die Security Lights am Laufen habt, bitte kurz melden. Ich kann mir dann anschauen, was Jeffrey gemacht hat und diese Anpassungen übernehmen.

choetzu

Kurze Frage: Kann ich die neue 49_Arlo.pm auf einem Test Server laufen lassen und parallel die "alte" Variante mit Python Server? Oder wird es da Verbindungsprogleme geben?

Raspi3, EnOcean, Zwave, Homematic

maluk

Ich habe im neuen Modul momentan den logout-Event so implementiert, dass er sich sofort neu verbindet. Die Art der Verbindung ist jedoch so, dass es nicht unbedingt den anderen User wieder abmeldet. Es könnte also funktioneren, es könnte aber auch Probleme machen. Probiere es einfach aus ...

m0urs

Zitat von: maluk am 02 Dezember 2018, 22:31:31
Sobald Ihr die Security Lights am Laufen habt, bitte kurz melden. Ich kann mir dann anschauen, was Jeffrey gemacht hat und diese Anpassungen übernehmen.

Ich glaube wir sind soweit. Der Support für die Security Lights sollte nun vorhanden sein. Siehe unseren Thread hier: https://github.com/jeffreydwalter/arlo/issues/97

maluk

Die neue Version des Moduls, die ich komplett in Perl entwickelt habe, läuft jetzt stabil. Daher wird die Python-Version nicht mehr weiterentwickelt.

Bitte die Perl-Version nutzen: https://forum.fhem.de/index.php/topic,94025.0.html