Modul für Netgear Arlo-Kameras

Begonnen von maluk, 02 Dezember 2018, 22:20:58

Vorheriges Thema - Nächstes Thema

m0urs

Hab mal versucht ein FHEM-Testsystem in Docker auf einem anderen Raspi aufzusetzen. Ist noch ein ganz leeres System und nur das Arlo-Cloud-Device definiert. Das geht dort auch noch. Wenn ich dann aber ein Autocreate für Arlo aufrufe restartet FHEM sofort und vorher dieser fehler:

2018.12.06 08:51:33.047 3: (Re)starting Arlo event listener.
Can't use string ("") as a HASH ref while "strict refs" in use at ./FHEM/49_Arlo.pm line 390.


Stimmt da auf meinem Testsystem noch was nicht oder ist da noch ein Fehler im Modul?

mi.ke

Hab die Version vom 5.12. aufgespielt und kurz getestet

- Die Mode Umschaltung funktioniert sehr gut (mit beiden Basisstationen)
- Nach dem Neustart werden die Readings aktuallisiert und mit aktuellem Timestamp angezeigt

Allerdings gibts auch Probleme:
- An der Base "updateReadings" --> keine Aktuallisierung der Camera Readings
- Bei Bewegung --> keine Aktuallisierung der Camera Readings
- Bei Modeumschaltung --> keine Aktuallisierung der Base Readings (wird aber zuverlässig ausgeführt)
- Bei Cloud"autocreate" --> Absturz (fhem schmiert ab, Neustart des RPi notwendig) letzte Meldung im Log:
Can't use string ("") as a HASH ref while "strict refs" in use at ./FHEM/49_Arlo.pm line 390.
- Bei jedem Neustart des RPi bei initialisieren im Log die Meldung:
PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/49_Arlo.pm line 183.

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

Zitat von: m0urs am 06 Dezember 2018, 08:55:15
Hab mal versucht ein FHEM-Testsystem in Docker auf einem anderen Raspi aufzusetzen. Ist noch ein ganz leeres System und nur das Arlo-Cloud-Device definiert. Das geht dort auch noch. Wenn ich dann aber ein Autocreate für Arlo aufrufe restartet FHEM sofort und vorher dieser fehler:

2018.12.06 08:51:33.047 3: (Re)starting Arlo event listener.
Can't use string ("") as a HASH ref while "strict refs" in use at ./FHEM/49_Arlo.pm line 390.


Stimmt da auf meinem Testsystem noch was nicht oder ist da noch ein Fehler im Modul?

Das war ein Bug. Ich habe gerade eben eine korrigierte Version hochgeladen, bitte nochmal versuchen.

maluk

Zitat von: m0urs am 04 Dezember 2018, 18:07:12
Der Befehl für Brightness scheint auch noch nicht so ganz zu funktionieren. Er wird von der Kamera ignoriert. Wenn ich, während ich den Befehl in FHEM ausführe, einen Live View in Arlo Web offen habe auf die Kamera, dann erscheint dort im Bild "Invalid message syntax.: brightness"
Der Fehler ist jetzt auch behoben.

m0urs

Zitat von: maluk am 06 Dezember 2018, 20:31:30
Das war ein Bug. Ich habe gerade eben eine korrigierte Version hochgeladen, bitte nochmal versuchen.

Danke, funktioniert jetzt!

m0urs

Zitat von: maluk am 06 Dezember 2018, 21:25:55
Der Fehler ist jetzt auch behoben.

Kann ich bestätigen. Auch das geht jetzt!

Ich lass das Modul jetzt mal über Nacht auf dem Testsystem laufen, ob es stabil bleibt.

maluk

Ich habe eine neue Version hochgeladen, die jetzt auch die Arlo Bridges für die Security Lights erkennen sollte. Außerdem habe ich das Herunterladen der Videos und Bilder optimiert, damit weniger Hauptspeicher beim Download verbraucht wird.

@m0urs: ich brauche hier deine Mitarbeit, da ich selbst keine Security Lights besitze. Versuche bitte, ob die Bridge gefunden wird und ob du arm/disarm ausführen und modes setzen kannst. Ich habe so gut es geht versucht, die Anpassungen von Jeffrey Walter zu übernehmen. Allerdings konnte ich mit der neuen API keine Modes für meine Basisstation setzen. Vielleicht klappt es ja mit deiner Bridge. Außerdem wäre es noch wichtig zu wissen, ob für die Security Lights auch Devices angelegt werden soll und was für diese angezeigt werden soll bzw. welche Aktionen darauf möglich sein sollen.

m0urs

Vielen Dank schon mal für Deine schnelle Reaktion mit den Bridges :-)

Ich habe mal getestet. Also: Meine 1. Bridge wird korrekt erkannt, die 2. Bridge allerdings noch nicht.

Das Arm und Disarm bzw. setzen der Modes funktioniert auch noch nicht. Bekomme folgende Logmeldungen:

2018.12.09 22:25:11.577 0: Server started with 14 defined entities (fhem.pl:17779/2018-11-18 perl:5.024001 os:linux user:fhem pid:30040)
2018.12.09 22:25:14.832 3: (Re)starting Arlo event listener.
2018.12.09 22:25:16.888 3: Process Arlo event subscriptions/TPWWZZ2-183-34356703_web for 4RD3837TA2965
2018.12.09 22:25:18.892 3: Process Arlo event subscriptions/TPWWZZ2-183-34356703_web for 4RD3837TA2965
2018.12.09 22:25:35.520 3: Process Arlo event cameras for 4RD3837TA2965
2018.12.09 22:26:00.510 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/49_Arlo.pm line 412.
2018.12.09 22:26:00.513 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/49_Arlo.pm line 404.
2018.12.09 22:26:00.517 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/49_Arlo.pm line 396.
2018.12.09 22:26:44.347 2: Arlo call was not successful: {"data":{"error":"AUTO-5050","message":"Failed to update Automation Definitions","reason":"Unable to upload active automation. Please try again"},"success":false}
2018.12.09 22:26:46.138 3: Process Arlo event subscriptions/TPWWZZ2-183-34356703_web for 4RD3837TA2965
2018.12.09 22:27:13.836 2: Arlo call was not successful: {"data":{"error":"AUTO-5050","message":"Failed to update Automation Definitions","reason":"Unable to upload active automation. Please try again"},"success":false}
2018.12.09 22:27:23.284 3: Could not set arlo mode Abends, because modes for basestation have to be loaded. Please try a again in a few seconds.
2018.12.09 22:28:13.142 2: Arlo call was not successful: {"data":{"error":"AUTO-5050","message":"Failed to update Automation Definitions","reason":"Unable to upload active automation. Please try again"},"success":false}
2018.12.09 22:28:16.970 3: Process Arlo event subscriptions/TPWWZZ2-183-34356703_web for 4RD3837TA2965
2018.12.09 22:28:22.792 3: Set Arlo basestation mode to mode3
2018.12.09 22:28:22.992 2: Arlo call was not successful: {"data":{"error":"AUTO-5050","message":"Failed to update Automation Definitions","reason":"Unable to upload active automation. Please try again"},"success":false}


Lass mich wissen, was genau ich wie testen soll!

maluk

Ich habe eine neue Version hochgeladen. Das Problem mit Arm / Disarm / Modes setzen sollte jetzt behoben sein. Warum die 2. Bridge nicht erkannt wird, kann ich nicht ganz nachvollziehen.

Du kannst mal folgende Befehl eingeben, um das Log Level zu erhöhen:
attr Arlo_Cloud verbose 4

Danach nochmal autocreate ausführen und im Logfile nach "Response from Arlo" suchen. Dort bitte prüfen, ob deine 2. Bridge enthalten ist.

ojb

Hallo,

habe eben das Modul eingespielt. Es findet meine Basisstation, aber leider nicht meine Kameras ....

Allerdings erkennt das Modul sie irgendwie, generiert aber keine Devices.

2018.12.10 13:30:55 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:30:55 3: Fritzbox_Smarthome: read from http://fritz.box:80 timed out
2018.12.10 13:30:57 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:31:01 2: AttrTemplates: got 10 entries
2018.12.10 13:31:10 3: Process Arlo event cameras for 4RD3877LA267A
2018.12.10 13:31:23 1: OWX_CCC::Detect: 1-Wire bus ow_cuno interface DS2482 / CUNO detected in cuno
2018.12.10 13:32:19 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:33:52 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:34:17 3: (Re)starting Arlo event listener.
2018.12.10 13:34:19 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:34:51 3: cuno: Unknown code FF, help me!
2018.12.10 13:35:48 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:36:31 3: Received Arlo logout event.
2018.12.10 13:36:33 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:36:35 3: Process Arlo event cameras for 4RD3877LA267A
2018.12.10 13:36:37 3: Process Arlo event storage for 4RD3877LA267A
2018.12.10 13:36:39 3: Process Arlo event siren for 4RD3877LA267A
2018.12.10 13:36:41 3: Process Arlo event cameras/5JX18778A054D/motionZones for 4RD3877LA267A
2018.12.10 13:36:43 3: Process Arlo event cameras/5JX1877FA2576/motionZones for 4RD3877LA267A
2018.12.10 13:36:45 3: Process Arlo event cameras/5JX1877TA25F1/motionZones for 4RD3877LA267A
2018.12.10 13:37:19 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A
2018.12.10 13:38:47 4: Notify 4RD3877LA267A, action: set subscriptions/259AY2NQ-100-41938557_web
2018.12.10 13:38:49 3: Process Arlo event subscriptions/259AY2NQ-100-41938557_web for 4RD3877LA267A


Um jede Hilfe dankbar.

Liebe Grüße
Oli
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

maluk

Hallo ojb,

ich habe gerade nochmal eine neue Version mit erweitertem Logging hochgeladen. Bitte installiere diese Version und schaue dann im Logfile, welche Devices er beim autocreate findet.  Jedes gefundene Device vom Typ basestation, arlobridge oder camera sollte danach im Raum Arlo angelegt worden sein.

m0urs

#26
Zitat von: maluk am 10 Dezember 2018, 10:41:43
Ich habe eine neue Version hochgeladen. Das Problem mit Arm / Disarm / Modes setzen sollte jetzt behoben sein. Warum die 2. Bridge nicht erkannt wird, kann ich nicht ganz nachvollziehen.

Du kannst mal folgende Befehl eingeben, um das Log Level zu erhöhen:
attr Arlo_Cloud verbose 4

Danach nochmal autocreate ausführen und im Logfile nach "Response from Arlo" suchen. Dort bitte prüfen, ob deine 2. Bridge enthalten ist.

Also erst mal die gute Nachricht: Arm/Disarm und Mode für die Bridge funktionieren jetzt! Super!

Allerdings wird weder die zweite Bridge noch wird das zweite Licht meiner ersten Bridge gefunden. Ausserdem wird kein device für das eine gefundene Light erzeugt. Das ist aber so gewollt derzeit, oder?

Das ist der Output mit verbose=4.

2018.12.10 15:44:15.575 5: URL: https://arlo.netgear.com/hmsweb/users/devices
2018.12.10 15:44:15.802 3: Found device siren with name Home.
2018.12.10 15:44:15.803 3: Found device camera with name Garten_2.
2018.12.10 15:44:15.805 3: Found device camera with name Terrasse.
2018.12.10 15:44:15.805 3: Found device camera with name Garten_1.
2018.12.10 15:44:15.807 3: Found device lights with name Licht_Terrasse.
2018.12.10 15:44:15.808 3: Found device arlobridge with name Bridge_AZMichael.
2018.12.10 15:44:15.809 3: Found device basestation with name Home.



maluk

Deine zweite Bridge wird über die API von Arlo nicht mitgeliefert. Siehst du sie, wenn du dich über https://arlo.netgear.com einloggst? Falls ja: könntest du mal den Netzwerk-Verkehr mitprotokollieren? Es müsste einen Eintrag GET https://arlo.netgear.com/hmsweb/users/devices?t=1544459511973 (T ist wohl der Timestamp) geben. Wenn du diesen anklickst, müsstest du in der Antwort prüfen, ob dort alle Geräte inkl. der zweiten Bridge geliefert werden. Ich rufe beim Autocreate genau diese URL auf und lege für jedes Gerät (außer Siren und Light), das hier geliefert wird, ein FHEM-Device an.

Zu Thema Light: ich kann dafür natürlich ein FHEM-Device anlegen, aber du müsstest mir hier ein paar Tipps geben, welche Readings davon interessant wären und welche Aktionen man darauf ausführen können soll.

m0urs

Zitat von: maluk am 10 Dezember 2018, 17:37:15
Deine zweite Bridge wird über die API von Arlo nicht mitgeliefert. Siehst du sie, wenn du dich über https://arlo.netgear.com einloggst? Falls ja: könntest du mal den Netzwerk-Verkehr mitprotokollieren? Es müsste einen Eintrag GET https://arlo.netgear.com/hmsweb/users/devices?t=1544459511973 (T ist wohl der Timestamp) geben. Wenn du diesen anklickst, müsstest du in der Antwort prüfen, ob dort alle Geräte inkl. der zweiten Bridge geliefert werden. Ich rufe beim Autocreate genau diese URL auf und lege für jedes Gerät (außer Siren und Light), das hier geliefert wird, ein FHEM-Device an.

Ja, bei diesem Aufruf sind beide Bridges und alle Lights enthalten.

ZitatZu Thema Light: ich kann dafür natürlich ein FHEM-Device anlegen, aber du müsstest mir hier ein paar Tipps geben, welche Readings davon interessant wären und welche Aktionen man darauf ausführen können soll.

Also, wenn es nicht zu viel Arbeit wird, wäre das schön. Ist aber erst mal nicht Prio 1!

Readings:

Status (an / aus)
Batteriestand

Aktionen:

Einschalten
Ausschalten

Ist aber wie gesagt nicht Prio 1. Das Schalten der Modi für die Bridges wäre mir erst mal wichtiger.

Vielleicht macht es Sinn irgendwie als Debug-Output mal den kompletten Traffic des Moduls mitzuloggen?

choetzu

hallo,

ich habe immer noch ein grundlegendes Problem. Die Abhandlung von activityState scheint nicht zu funktionieren. Ich habe dein Modul gestern neu angelegt. Leider kommen die activityState nur bei einem Device an... Siehe Bild.

Woran könnte das liegen?

Lg c

Raspi3, EnOcean, Zwave, Homematic