Modul für Netgear Arlo-Kameras

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

Vorheriges Thema - Nächstes Thema

GSK19

Das scheint auch so bei Jeffrey Walters Python-Modul für Arlo so zu sein, siehe https://github.com/jeffreydwalter/arlo/issues/204
Eine Lösung gibt's da auch noch nicht...

ojb

Hallo Leute,

bei mir geht es wieder. Juhhuuuu ...

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, ...

mi.ke

Zitat von: ojb am 06 Juli 2023, 17:55:13bei mir geht es wieder. Juhhuuuu ...




Kannst du uns erhellen?

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

ojb

Zu früh gereut. Gestern ging es bei mir kurz, alle Batteriewerte wurden aktualisiert und kurze Zeit später war es auch schon wieder vorbei ...
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, ...

m0urs

Ich weiss nicht wie das Modul hier aufgebaut ist, da ich ein eigenes Python-Modul nutze, aber ich habe hier mal geschrieben, was bei mir das Cloudflare-Problem gelöst hat:

https://github.com/jeffreydwalter/arlo/issues/204#issuecomment-1625199875

Vielleicht kann jemand damit was anfangen und das auf das FHEM-Modul übertragen.

ojb

Ich hab das mal schnell in 49_Arlo.py eingebaut. Bei mir funktioniert es aber trotzdem nicht ...

...
        self._session = cloudscraper.create_scraper(ecdhCurve='secp384r1')
        self._baseUrl = "https://ocapi-app.arlo.com/api/"

        self._headers  = {
            'Access-Control-Request-Headers': 'content-type,source,x-user-device-id,x-user-device-name,x-user-device-type',
            'Access-Control-Request-Method': 'POST',
            "Referer": "https://my.arlo.com",
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.58',
        }
        self._session.options(self._baseUrl + "auth", headers=self._headers)

        self._headers = {
            "DNT": "1",
            "schemaVersion": "1",
            "Auth-Version": "2",
            "Content-Type": "application/json; charset=UTF-8",
            "Origin": "https://my.arlo.com",
            "Referer": "https://my.arlo.com/",
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.58',
            "Source": "arloCamWeb"
        }
        self._token = None

...
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, ...

m0urs

Schalte mal die Login-Versuche über Nacht aus und warte mal ab bis morgen. Manchmal sperrt Cloudflare die IP für einige Zeit, wenn sie meinen, dass da was nicht ganz in Ordnung war.

Den neuesten Cloudscraper hast Du installiert?

Ach ja, und da gab es noch zwei Header, die gesetzt werden mussten:

            "Cache-Control": "no-cache",
            "Pragma": "no-cache",

Hier mal alle die, die wir in dem anderen Modul verwenden:

    def _auth_headers(self):
        return {
            "Accept": "application/json, text/plain, */*",
            "Accept-Encoding": "gzip, deflate, br",
            "Accept-Language": "en-GB,en;q=0.9,en-US;q=0.8",
            "Cache-Control": "no-cache",
            "Origin": ORIGIN_HOST,
            "Pragma": "no-cache",
            "Referer": REFERER_HOST,
            "Source": "arloCamWeb",
            "User-Agent": self._user_agent,
            "X-User-Device-Automation-name": "QlJPV1NFUg==",
            "X-User-Device-Id": self._user_device_id,
            "X-User-Device-Type": "BROWSER",
        }

    def _headers(self):
        return {
            "Accept": "application/json",
            "Accept-Encoding": "gzip, deflate, br",
            "Accept-Language": "en-GB,en;q=0.9,en-US;q=0.8",
            "Auth-Version": "2",
            "Authorization": self._token,
            "Cache-Control": "no-cache",
            "Content-Type": "application/json; charset=utf-8;",
            "Origin": ORIGIN_HOST,
            "Pragma": "no-cache",
            "Referer": REFERER_HOST,
            "SchemaVersion": "1",
            "User-Agent": self._user_agent,
        }

mi.ke

Zitat von: m0urs am 07 Juli 2023, 12:33:14Ich weiss nicht wie das Modul hier aufgebaut ist, da ich ein eigenes Python-Modul nutze, aber ich habe hier mal geschrieben, was bei mir das Cloudflare-Problem gelöst hat:

https://github.com/jeffreydwalter/arlo/issues/204#issuecomment-1625199875

Vielleicht kann jemand damit was anfangen und das auf das FHEM-Modul übertragen.
Klasse, vielen Dank, das hat geholfen.

ich hab den User-Agent im arlo.pm und arlo.py geändert auf
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36";
und die beiden no-cache Einträge hinzugefügt und das Modul deaktiviert.

12 Std später enable ....
... läuft


Danke @m0urs
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

mrb

Mike kannst du die benötigten Dateien hier einstellen? Ich Pfusche ungern unwissend in Dateien rum. (wissend was man macht ist was anderes da Pfusche ich schon mal 😂)

mi.ke

Zitat von: mrb am 09 Juli 2023, 18:01:55Mike kannst du die benötigten Dateien hier einstellen? Ich Pfusche ungern unwissend in Dateien rum. (wissend was man macht ist was anderes da Pfusche ich schon mal 😂)
Ohne Gewähr...denn

sauber wäre es, einen Patch zu erstellen.
Ich weiss aber leider nicht wie das geht.

-die Arlo.py gehört ins ./contrib/
-die Arlo.pm ins ./FHEM/

cheers
mi.ke


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

ojb

Mike, Danke Dir, es geht bei mir wieder ...
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, ...

mrb

Zitat von: mi.ke am 10 Juli 2023, 15:41:49
Zitat von: mrb am 09 Juli 2023, 18:01:55Mike kannst du die benötigten Dateien hier einstellen? Ich Pfusche ungern unwissend in Dateien rum. (wissend was man macht ist was anderes da Pfusche ich schon mal 😂)
Ohne Gewähr...denn

sauber wäre es, einen Patch zu erstellen.
Ich weiss aber leider nicht wie das geht.

-die Arlo.py gehört ins ./contrib/
-die Arlo.pm ins ./FHEM/

cheers
mi.ke




Werde ich nach dem aufstehen probieren. Danke dir schon mal

ojb

Ok, bei mir ging es bis 11.07. 18:30 ... seit dem wieder "login timeout" ... :-(
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, ...

m0urs

Wie oft meldet sich dieses Modul denn so an? Vielleicht läuft das in ein Rate Limit? Eigentlich sollten, wenn man die Session-Daten speichert, Cloudflare nicht mehr involviert sein für 14 Tage. In unserem anderen Modul funktioniert das bislang nach den Änderungen problemlos (jetzt seit einer Woche oder so).

mi.ke

Zitat von: ojb am 12 Juli 2023, 06:48:20Ok, bei mir ging es bis 11.07. 18:30 ... seit dem wieder "login timeout" ... :-(

Nach den Änderungen läuft es bei mir problemlos seit dem 9.07.2023

Vielleicht hift ein "list" vom ACCOUT DEVICE  beim einschätzen Deiner Probleme mit dem Login?!?
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