pyaarlo icon indicating copy to clipboard operation
pyaarlo copied to clipboard

Errors setting mode

Open vzlgdu opened this issue 3 years ago • 64 comments

Hi, after using pyaarlo for months with f2f auth factor, today I'm receiving the folloging errors; please, can you help me?

attempt 1: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232006}, 'resource': 'activeAutomations'} attempt 2: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232372}, 'resource': 'activeAutomations'} attempt 3: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232739}, 'resource': 'activeAutomations'} Failed to set mode. <RequestsCookieJar[Cookie(version=0, name='__cf_bm', value='6ec025c7b7a8c59de0fea11bd208a23bc2d0a191-1617524227-1800-Af/EyA3ESNdRQXzfDxPGXxSvGSUAX4TJUNH644tPi9ZKs0PkWys/fKjkIlf+1dSQQq4DCaN47Z4EXq68v3L31Os=', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526027, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='dcecc85ae213b6fb19e218c714e703ce71617524226', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116226, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cf_bm', value='4d1cd19308901f0db90cc970ae9dca002a509e06-1617524220-1800-AWQ7oxMzxjXQEKKLd/6f0Nt2LlhYGqowvsU5znzNVTd++hNtoklIPcsndUfrJH7dTeuP/cFdDY43fLh9U75vQ4M=', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526020, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='db7d33c088f03d9e9b64c06e5ffc9bc851617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116220, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cfruid', value='cee8df3393ac287b91410a24dfab0fcc16529442-1617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='AWSELB', value='330F99231E37B937A721F0469577534959D6D111401934891449A57D3E0F17FABAB0D0AFD66ECC9BBA31D213EAACCB4BC245845EEF9A52C14523998B674A56EADB8B2C77FDDF7E239DEC08B1A41B943F93EBC50C5B', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HTTPONLY': None}, rfc2109=False), Cookie(version=0, name='JSESSIONID', value='AAD883799E183651DBD694BC99B607D4', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False)]>

vzlgdu avatar Apr 04 '21 08:04 vzlgdu

Which version are you using?

On Sun., Apr. 4, 2021, 04:20 vzlgdu, @.***> wrote:

Hi, after using pyaarlo for months with f2f auth factor, today I'm receiving the folloging errors; please, can you help me?

attempt 1: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232006}, 'resource': 'activeAutomations'} attempt 2: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232372}, 'resource': 'activeAutomations'} attempt 3: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232739}, 'resource': 'activeAutomations'} Failed to set mode. <RequestsCookieJar[Cookie(version=0, name='__cf_bm', value='6ec025c7b7a8c59de0fea11bd208a23bc2d0a191-1617524227-1800-Af/EyA3ESNdRQXzfDxPGXxSvGSUAX4TJUNH644tPi9ZKs0PkWys/fKjkIlf+1dSQQq4DCaN47Z4EXq68v3L31Os=', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526027, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='dcecc85ae213b6fb19e218c714e703ce71617524226', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116226, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cf_bm', value='4d1cd19308901f0db90cc970ae9dca002a509e06-1617524220-1800-AWQ7oxMzxjXQEKKLd/6f0Nt2LlhYGqowvsU5znzNVTd++hNtoklIPcsndUfrJH7dTeuP/cFdDY43fLh9U75vQ4M=', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526020, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='db7d33c088f03d9e9b64c06e5ffc9bc851617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116220, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cfruid', value='cee8df3393ac287b91410a24dfab0fcc16529442-1617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='AWSELB', value='330F99231E37B937A721F0469577534959D6D111401934891449A57D3E0F17FABAB0D0AFD66ECC9BBA31D213EAACCB4BC245845EEF9A52C14523998B674A56EADB8B2C77FDDF7E239DEC08B1A41B943F93EBC50C5B', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HTTPONLY': None}, rfc2109=False), Cookie(version=0, name='JSESSIONID', value='AAD883799E183651DBD694BC99B607D4', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False)]>

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALHJU6TMVQZQRLMTJXXWDIDTHAOLZANCNFSM42LE2TGQ .

twrecked avatar Apr 04 '21 08:04 twrecked

Hi, the last: I uninstalled and reinstalled few minutes ago with: sudo pip3 install git+https://github.com/twrecked/pyaarlo

Il giorno 4 apr 2021, alle ore 10:22, Steve Herrell @.***> ha scritto:

Which version are you using?

On Sun., Apr. 4, 2021, 04:20 vzlgdu, @.***> wrote:

Hi, after using pyaarlo for months with f2f auth factor, today I'm receiving the folloging errors; please, can you help me?

attempt 1: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232006}, 'resource': 'activeAutomations'} attempt 2: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232372}, 'resource': 'activeAutomations'} attempt 3: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode2'], 'activeSchedules': [], 'timestamp': 1617524232739}, 'resource': 'activeAutomations'} Failed to set mode. <RequestsCookieJar[Cookie(version=0, name='__cf_bm', value='6ec025c7b7a8c59de0fea11bd208a23bc2d0a191-1617524227-1800-Af/EyA3ESNdRQXzfDxPGXxSvGSUAX4TJUNH644tPi9ZKs0PkWys/fKjkIlf+1dSQQq4DCaN47Z4EXq68v3L31Os=', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526027, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='dcecc85ae213b6fb19e218c714e703ce71617524226', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116226, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cf_bm', value='4d1cd19308901f0db90cc970ae9dca002a509e06-1617524220-1800-AWQ7oxMzxjXQEKKLd/6f0Nt2LlhYGqowvsU5znzNVTd++hNtoklIPcsndUfrJH7dTeuP/cFdDY43fLh9U75vQ4M=', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617526020, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='db7d33c088f03d9e9b64c06e5ffc9bc851617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620116220, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cfruid', value='cee8df3393ac287b91410a24dfab0fcc16529442-1617524220', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='AWSELB', value='330F99231E37B937A721F0469577534959D6D111401934891449A57D3E0F17FABAB0D0AFD66ECC9BBA31D213EAACCB4BC245845EEF9A52C14523998B674A56EADB8B2C77FDDF7E239DEC08B1A41B943F93EBC50C5B', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HTTPONLY': None}, rfc2109=False), Cookie(version=0, name='JSESSIONID', value='AAD883799E183651DBD694BC99B607D4', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False)]>

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALHJU6TMVQZQRLMTJXXWDIDTHAOLZANCNFSM42LE2TGQ .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-812994432, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66PM32ZO4XZNQ7YPYCLTHAOSXANCNFSM42LE2TGQ.

vzlgdu avatar Apr 04 '21 08:04 vzlgdu

What type of cameras/base stations are you using? And I guess this has worked for a while?

And what mode are you trying to set?

edit: can you turn on verbose debug so I can see what packets are going out/coming in? Add verbose_debug=True to your pyaarlo.PyArlo call.

twrecked avatar Apr 04 '21 13:04 twrecked

I’m started to use pyaarlo many months ago and with your helps I’ve implemented double authentication using email and not sms. Until some days ago I was able to use any kind of mode (standard and user). The problems started from 3th April...

Following my hw: Base station: VMB4500r2 1 Arlo pro 4 Arlo 1st model.

Thanks

Il giorno 4 apr 2021, alle ore 15:25, Steve Herrell @.***> ha scritto:

What type of cameras/base stations are you using? And I guess this has worked for a while?

And what mode are you trying to set?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813032598, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66IDJVBSQJHKZZUJ3QLTHBSCZANCNFSM42LE2TGQ.

vzlgdu avatar Apr 04 '21 13:04 vzlgdu

Mode is still working for me so I need the debug.

Can you paste your pyaarlo.PyArlo call too - minus the sensitive data obviously.

twrecked avatar Apr 04 '21 14:04 twrecked

Following my code:

#!/usr/bin/python3

-- coding: utf-8 --

import pyaarlo # Netgear Arlo

arlo = @.', password='zzzz', tfa_type='email', tfa_source='imap', synchronous_mode=True, save_state=False, tfa_host='imap.gmail.com', @.', tfa_password='yyyy')

base = arlo.base_stations[0] # scelta stazione base

base.mode = 'Armed'

Il giorno 4 apr 2021, alle ore 16:15, Steve Herrell @.***> ha scritto:

Mode is still working for me so I need the debug.

Can you paste your pyaarlo.PyArlo call too - minus the sensitive data obviously.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813040624, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66MFJVMV2MDF7VPJVALTHBX6RANCNFSM42LE2TGQ.

vzlgdu avatar Apr 04 '21 14:04 vzlgdu

Hi, with some tests, i Noted that sometimes the error change with this:

request-error=CloudflareChallengeError request-error=CloudflareChallengeError request-error=CloudflareChallengeError authentication failed AttributeError: 'PyArlo' object has no attribute '_bases'

and continuing to test sometimes it works, but all is random...

Always with the same script i sent you.

vzlgdu avatar Apr 05 '21 07:04 vzlgdu

Can you run this code, changing the usernames/passwords as necessary, it will output some debug:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import sys
import logging
import pyaarlo

# set these from the environment to log in
USERNAME = "your-ha-username"
PASSWORD = "your-ha-password"
TUSERNAME = "your-imap-username"
TPASSWORD = "your-imap-password"

# set up logging, change INFO to DEBUG for a *lot* more information
logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_LOGGER = logging.getLogger('pyaarlo')

arlo = pyaarlo.PyArlo(username=USERNAME,
                        password=PASSWORD,
                        tfa_type='email',
                        tfa_source='imap',
                        tfa_username=TUSERNAME,
                        tfa_host='imap.gmail.com',
                        tfa_password=TPASSWORD,
                        synchronous_mode=True,
                        save_state=False,
                        verbose_debug=True)
if not arlo.is_connected:
    print("failed to login({})".format(arlo._last_error))
    sys.exit(-1)

base = arlo.base_stations[0]

base.mode = 'Armed'

After you have ran it and it's working you can encrypt the debug with. You can also save the debug to a file and edit and bits you don't want to send.

./test.py | pyaarlo encrypt

twrecked avatar Apr 05 '21 13:04 twrecked

Following the result. My consideration: if I run the same script not with

base.mode = 'Armed' But with: print (base.mode)

Everything works….

Following the log:

2021-04-05 16:33:18,347 - pyaarlo - DEBUG - Cfg started 2021-04-05 16:33:18,350 - pyaarlo - DEBUG - starting 2021-04-05 16:33:18,351 - pyaarlo - DEBUG - looking for user_agent arlo 2021-04-05 16:33:18,424 - pyaarlo - DEBUG - login attempt #1 2021-04-05 16:33:18,425 - pyaarlo - DEBUG - request-url=https://ocapi-app.arlo.com/api/auth 2021-04-05 16:33:18,427 - pyaarlo - DEBUG - request-params= {'EnvSource': 'prod', 'email': 'XXXXXXXX', 'language': 'en', 'password': 'YYYYYYYY'} 2021-04-05 16:33:18,431 - pyaarlo - DEBUG - request-headers= {'Accept': 'application/json, text/plain, /', 'Auth-Version': '2', 'Referer': 'https://my.arlo.com', 'Source': 'arloCamWeb', 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) ' 'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 ' 'NETGEAR/v1 (iOS Vuezone)'} 2021-04-05 16:33:18,458 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): ocapi-app.arlo.com:443 2021-04-05 16:33:19,032 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 200 None 2021-04-05 16:33:19,048 - pyaarlo - DEBUG - request-end=200 2021-04-05 16:33:19,049 - pyaarlo - DEBUG - request-body= {'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:19,050 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:20,053 - pyaarlo - DEBUG - login attempt #2 2021-04-05 16:33:20,054 - pyaarlo - DEBUG - request-url=https://ocapi-app.arlo.com/api/auth 2021-04-05 16:33:20,055 - pyaarlo - DEBUG - request-params= {'EnvSource': 'prod', 'email': 'XXXXXXXX', 'language': 'en', 'password': 'YYYYYYYY'} 2021-04-05 16:33:20,057 - pyaarlo - DEBUG - request-headers= {'Accept': 'application/json, text/plain, /', 'Auth-Version': '2', 'Referer': 'https://my.arlo.com', 'Source': 'arloCamWeb', 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) ' 'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 ' 'NETGEAR/v1 (iOS Vuezone)'} 2021-04-05 16:33:20,235 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 200 None 2021-04-05 16:33:20,240 - pyaarlo - DEBUG - request-end=200 2021-04-05 16:33:20,242 - pyaarlo - DEBUG - request-body= {'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:20,242 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:21,244 - pyaarlo - DEBUG - login attempt #3 2021-04-05 16:33:21,245 - pyaarlo - DEBUG - request-url=https://ocapi-app.arlo.com/api/auth 2021-04-05 16:33:21,247 - pyaarlo - DEBUG - request-params= {'EnvSource': 'prod', 'email': 'XXXXXXXX', 'language': 'en', 'password': 'YYYYYYYY'} 2021-04-05 16:33:21,248 - pyaarlo - DEBUG - request-headers= {'Accept': 'application/json, text/plain, /', 'Auth-Version': '2', 'Referer': 'https://my.arlo.com', 'Source': 'arloCamWeb', 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) ' 'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 ' 'NETGEAR/v1 (iOS Vuezone)'} 2021-04-05 16:33:21,540 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 200 None 2021-04-05 16:33:21,543 - pyaarlo - DEBUG - request-end=200 2021-04-05 16:33:21,544 - pyaarlo - DEBUG - request-body= {'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:21,545 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:22,546 - pyaarlo - ERROR - authentication failed 2021-04-05 16:33:22,547 - pyaarlo - DEBUG - failed to log in 2021-04-05 16:33:22,549 - pyaarlo - DEBUG - not starting downloader failed to login(authentication failed)

Il giorno 5 apr 2021, alle ore 15:48, Steve Herrell @.***> ha scritto:

#!/usr/bin/env python3

-- coding: utf-8 --

import sys import logging import pyaarlo

set these from the environment to log in

USERNAME = "your-ha-username" PASSWORD = "your-ha-password" TUSERNAME = "your-imap-username" TPASSWORD = "your-imap-password"

set up logging, change INFO to DEBUG for a lot more information

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') _LOGGER = logging.getLogger('pyaarlo')

arlo = pyaarlo.PyArlo(username=USERNAME, password=PASSWORD, tfa_type='email', tfa_source='imap', tfa_username=TUSERNAME, tfa_host='imap.gmail.com http://imap.gmail.com/', tfa_password=TPASSWORD, synchronous_mode=True, save_state=False, verbose_debug=True) if not arlo.is_connected: print("failed to login({})".format(arlo._last_error)) sys.exit(-1)

base = arlo.base_stations[0]

base.mode = 'Armed'

vzlgdu avatar Apr 05 '21 14:04 vzlgdu

This is your problem:

2021-04-05 16:33:19,048 - pyaarlo - DEBUG - request-end=200
2021-04-05 16:33:19,049 - pyaarlo - DEBUG - request-body=
{'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}}
2021-04-05 16:33:19,050 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}}

The account is locked. Can you login from the webpage and try?

twrecked avatar Apr 05 '21 14:04 twrecked

Accessing from webpage with this account, I receive an sms with a code and I’m able to access (like the standard account) and everthing works… So the account doesn’t seems locked...

Il giorno 5 apr 2021, alle ore 16:51, Steve Herrell @.***> ha scritto:

This is your problem:

2021-04-05 16:33:19,048 - pyaarlo - DEBUG - request-end=200 2021-04-05 16:33:19,049 - pyaarlo - DEBUG - request-body= {'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:19,050 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} The account is locked. Can you login from the webpage and try?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813435126, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66I5TOKWYV5XBWS7BCTTHHFAZANCNFSM42LE2TGQ.

vzlgdu avatar Apr 05 '21 14:04 vzlgdu

And as I already wrote, executing the script without setting a mode but only reading the current mode, everything works.

Il giorno 5 apr 2021, alle ore 16:51, Steve Herrell @.***> ha scritto:

This is your problem:

2021-04-05 16:33:19,048 - pyaarlo - DEBUG - request-end=200 2021-04-05 16:33:19,049 - pyaarlo - DEBUG - request-body= {'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} 2021-04-05 16:33:19,050 - pyaarlo - WARNING - error in new response={'meta': {'code': 403, 'error': 9017, 'message': 'Account locked'}} The account is locked. Can you login from the webpage and try?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813435126, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66I5TOKWYV5XBWS7BCTTHHFAZANCNFSM42LE2TGQ.

vzlgdu avatar Apr 05 '21 14:04 vzlgdu

The mode working is because that value is cached and not being connected to Arlo doesn't affect it.

You're not able to login and you're being rejected before you can even request a 2FA method. Does it work now after you tried to login to the webpage?

Can you set up and virtual env and try in that?

twrecked avatar Apr 05 '21 15:04 twrecked

Also after the login to the web page, the script doesn’t work.

I’m not able to set up and virtuale env.

I would understand why this happened…

I will try to create a new user.

Il giorno 5 apr 2021, alle ore 17:28, Steve Herrell @.***> ha scritto:

The mode working is because that value is cached and not being connected to Arlo doesn't affect it.

You're not able to login and you're being rejected before you can even request a 2FA method. Does it work now after you tried to login to the webpage?

Can you set up and virtual env and try in that?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813454053, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66OQMOC22N7H5D2TIFLTHHJJJANCNFSM42LE2TGQ.

vzlgdu avatar Apr 05 '21 16:04 vzlgdu

Hi, done the following:

  • created a new account in arlo
  • invited this new account
  • created app password in gmail

the results and errors are the same...

vzlgdu avatar Apr 05 '21 17:04 vzlgdu

Hi, new update: I've installed pyaarlo and the script on a new fresh raspbian installation and the result is the same.

vzlgdu avatar Apr 05 '21 19:04 vzlgdu

This is the first time I've seen this issue and I have no idea what's going on. I think it might be happening because Arlo just enabled some anti-bot features from Cloudflare but why it's causing this, I really don't know.

I added cloudscraper to the code and it is meant to get around the bot check so I'll push an update where we get some debug from that.

What's weird is you created a new account and it's doing the same. Are the error messages the same?

twrecked avatar Apr 05 '21 23:04 twrecked

Yes, are the same...

Il giorno 6 apr 2021, alle ore 01:25, Steve Herrell @.***> ha scritto:

This is the first time I've seen this issue and I have no idea what's going on. I think it might be happening because Arlo just enabled some anti-bot features from Cloudflare but why it's causing this, I really don't know.

I added cloudscraper to the code and it is meant to get around the bot check so I'll push an update where we get some debug from that.

What's weird is you created a new account and it's doing the same. Are the error messages the same?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-813706445, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66MVSMSDTFE34YDTQE3THJBGJANCNFSM42LE2TGQ.

vzlgdu avatar Apr 06 '21 05:04 vzlgdu

Hi,

since three days my script does not work any longer, too. I dont't use 2FA, the authentication fails. I us the old cams and bases station (VMS3330) and one Arlo Pro.

here the debug logs:

2021-04-06 09:00:17,247 - pyaarlo - DEBUG - Cfg started 2021-04-06 09:00:17,248 - pyaarlo - DEBUG - starting 2021-04-06 09:00:17,249 - pyaarlo - DEBUG - custom connections 20:10 2021-04-06 09:00:17,250 - pyaarlo - DEBUG - login attempt #1 2021-04-06 09:00:17,250 - pyaarlo - DEBUG - request-url=https://ocapi-app.arlo.com/api/auth 2021-04-06 09:00:17,251 - pyaarlo - DEBUG - request-params= {'EnvSource': 'prod', 'email': 'XXX', 'language': 'en', 'password': 'XXX'} 2021-04-06 09:00:17,252 - pyaarlo - DEBUG - request-headers= {'Accept': 'application/json, text/plain, /', 'Auth-Version': '2', 'Referer': 'https://my.arlo.com', 'Source': 'arloCamWeb', 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) ' 'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 ' 'NETGEAR/v1 (iOS Vuezone)'} 2021-04-06 09:00:17,260 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): ocapi-app.arlo.com:443 2021-04-06 09:00:17,402 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 403 None 2021-04-06 09:00:17,409 - pyaarlo - DEBUG - request-end=403 2021-04-06 09:00:17,410 - pyaarlo - ERROR - authentication failed 2021-04-06 09:00:17,410 - pyaarlo - DEBUG - failed to log in failed to login(authentication failed)

Pete118 avatar Apr 06 '21 07:04 Pete118

@Pete118 Did you update to the most current master? I had the same error message because of the new Cloudflare captcha checks. The newest version did fix my issue.

m0urs avatar Apr 06 '21 08:04 m0urs

I've just upgraded with: sudo pip3 install --upgrade git+https://github.com/twrecked/pyaarlo but the result is the same.

vzlgdu avatar Apr 06 '21 08:04 vzlgdu

@Pete118 Did you update to the most current master? I hade the same error message because of the new Cloudflare captcha checks. The newest version did fix my issue.

Thanks, that solved my problem

Pete118 avatar Apr 06 '21 09:04 Pete118

@Pete118 How should I update? is correct the following? sudo pip3 install --upgrade git+https://github.com/twrecked/pyaarlo

vzlgdu avatar Apr 06 '21 09:04 vzlgdu

@Pete118 How should I update? is correct the following? sudo pip3 install --upgrade git+https://github.com/twrecked/pyaarlo

Yes. But if I run my script for the first time, I get your errors, too. If I run it immediately a second time it runs without any problems. This issue only appears in scripts where I change the mode.

Pete118 avatar Apr 06 '21 10:04 Pete118

Ok, but the problem was not solved….

Il giorno 6 apr 2021, alle ore 12:10, Pete118 @.***> ha scritto:

@Pete118 https://github.com/Pete118 How should I update? is correct the following? sudo pip3 install --upgrade git+https://github.com/twrecked/pyaarlo https://github.com/twrecked/pyaarlo Yes. But if I run my script for the first time, I get your errors, too. If I run it immediately a second time it runs without any problems. This issue only appears in scripts where I change the mode.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-814000976, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66OEPSIX36WBZ5FLSRLTHLMYJANCNFSM42LE2TGQ.

vzlgdu avatar Apr 06 '21 10:04 vzlgdu

Morning.

So, the 403 error indicates you are having Cloudflare issues. Look at the end of this line. The latest code should fix that.

2021-04-06 09:00:17,402 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 403 None

@vzlgdu

Another issue could be you added it user and the system level but only upgraded at the system level. But you installed it on a new system so I don't think that is the issue. Just in case, you can try this:

pip3 uninstall pyaarlo
sudo pip3 uninstall pyaarlo
sudo pip3 install git+https://github.com/twrecked/pyaarlo

If you are ok with it you could share your username and password with me. I don't need to access you account I just need to try to start the login so I don't need the 2FA configuration. Run the following command, obviously changing USERNAME and PASSWORD.

echo USERNAME PASSWORD | pyaarlo encrypt

And paste the output here, it will look like:

-----BEGIN PYAARLO DUMP-----
gAN9cQAoWAEAAABrcQFCAAEAAFFWOIvYVuDl6mI5iv6S45whj8j00qSc4rWcsKm2JnYLQvqAjZew
9zFPrtjjWrHc9cALMSfPidWXztoAYzgZq/iY+5pV4an3zqcj+pMIysP16bPFZCAzLo5PM2lC2a14
1Vz+n8wd+WM5fi5u0xg/qutIdE9UE0c6wGLH0R5qerYqZ2hx65OfWavKM/pFP0bg5iTm+yFa3smN
bi1SB955qLwrZ+hEi83O56bV9tOhooOCvLPiPieu6AUcCvKmFv5cqWg9xKs++6gw8eB0bnp4YpCV
/3Hn9q8dRGE+OerTIZ2xV7NbsE7KzLsTuAYh0zK4eDPnkBQJ4xAG7XxWvEnTLi1xAlgBAAAAbnED
QxAHFAh1qLqT85rNU5e+7iLJcQRYAQAAAG9xBUMgB7QFqKGlgIVYWw+echbuCGVZCQ32LvVOHyzb
NpCSFMNxBlgBAAAAdHEHQxDbUO1ZPkIFwrrrtkmpMY/TcQh1Lg==
-----END PYAARLO DUMP-----

twrecked avatar Apr 06 '21 10:04 twrecked

Hi, I’ve uninstalled an reinstalled:

1st execution:

attempt 1: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode1'], 'activeSchedules': [], 'timestamp': 1617709977920}, 'resource': 'activeAutomations'} attempt 2: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode1'], 'activeSchedules': [], 'timestamp': 1617709978270}, 'resource': 'activeAutomations'} attempt 3: error in response when setting mode= {'5TM19875A0505': {'activeModes': ['mode1'], 'activeSchedules': [], 'timestamp': 1617709978638}, 'resource': 'activeAutomations'} Failed to set mode. <RequestsCookieJar[Cookie(version=0, name='__cf_bm', value='69eaefe42b46649c86907a3b1805e5e2754d02a2-1617709973-1800-AaOLznKWZ6+VfTK3446dk6AOn4XYToeqA3OZAzi94LGBSteEXvpjQhP3U+Asq2wK/IFLU+g3o98n9ZSSo6QQOnI=', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617711773, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='d1690ac2ce6a480f4380cc73afb58c05a1617709973', port=None, port_specified=False, domain='.my.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620301973, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cf_bm', value='abcf91577dc9a52ef5b563c03e7294b4278b8879-1617709966-1800-Ac7xXBEuekBcpjbHcWIf2ex6MTNatWOBRExce0Hlr+mv7jt55mZyqMYL1u3NBtigCF4ucKQpCMXpy+L1VCdmwBs=', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=1617711766, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='__cfduid', value='d385515e2f53e2448cd6b50e18ed84d031617709965', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=False, expires=1620301965, discard=False, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'Lax'}, rfc2109=False), Cookie(version=0, name='__cfruid', value='74e2e55387e12ec0ff290ab8043ce42288f72092-1617709966', port=None, port_specified=False, domain='.ocapi-app.arlo.com', domain_specified=True, domain_initial_dot=True, path='/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None, 'SameSite': 'None'}, rfc2109=False), Cookie(version=0, name='AWSELB', value='330F99231E37B937A721F0469577534959D6D1114003A686573845A8846E5EBFC08C33C84F654368230628B5BEBE9013065FDB4A8A6F24825EE37B87A44607FCD1A31539C8D1247C53716DB1F21C15E8E14F2E5B63', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HTTPONLY': None}, rfc2109=False), Cookie(version=0, name='JSESSIONID', value='F625EADECA00180AE7988B55C6DEF471', port=None, port_specified=False, domain='my.arlo.com', domain_specified=False, domain_initial_dot=False, path='/hmsweb/', path_specified=True, secure=True, expires=None, discard=True, comment=None, comment_url=None, rest={'HttpOnly': None}, rfc2109=False)]>

Errors but status changed as requested

2th execution with a new state:

request-error=CloudflareCaptchaProvider request-error=CloudflareCaptchaProvider request-error=CloudflareCaptchaProvider authentication failed AttributeError: 'PyArlo' object has no attribute '_bases'

Status has not changed.

Il giorno 6 apr 2021, alle ore 12:55, Steve Herrell @.***> ha scritto:

sudo pip3 install git+https://github.com/twrecked/pyaarlo git+https://github.com/twrecked/pyaarlo

vzlgdu avatar Apr 06 '21 11:04 vzlgdu

I'll take a look. It looks like Arlo changed something on their back end.

twrecked avatar Apr 06 '21 12:04 twrecked

I pushed a possible fix. Can you update and try again?

twrecked avatar Apr 06 '21 13:04 twrecked

Good news: I removed and reinstalled Pyaarlo. Now sometimes I receive only the following:

request-error=CloudflareCaptchaProvider request-error=CloudflareCaptchaProvider request-error=CloudflareCaptchaProvider authentication failedAttributeError: 'PyArlo' object has no attribute ‘_bases'

Whit this error the mode doesn’t change but running it again it works.

I lunched the script more or less 10 times and received the errors 3 times.

Il giorno 6 apr 2021, alle ore 15:25, Steve Herrell @.***> ha scritto:

I pushed a possible fix. Can you update and try again?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-814117385, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66LF7VU6ZWNJ55UZEEDTHMDURANCNFSM42LE2TGQ.

vzlgdu avatar Apr 06 '21 14:04 vzlgdu

Dear all,

i am receiving the same errors, it seems that the round-robin DNS behind ocapi-app.arlo.com is balancing between two hosts that act differently. For now i am also not able to establish a stable connection to arlo again (in 50% of tries the logon works). Netgear is working hardly on making Arlo unuseable again...

ocapi-app.arlo.com points to:

Name: ocapi-app.arlo.com.cdn.cloudflare.net Address: 104.18.30.98 && Name: ocapi-app.arlo.com.cdn.cloudflare.net Address: 104.18.31.98

for me. best regards!

huberda avatar Apr 06 '21 21:04 huberda

Interesting. I'm seeing different results on my home machine and work machine. One flips between the two and the other always returns 30.98 first.

And Google DNS flips between the two but much more slowly.

dig ocapi-app.arlo.com @8.8.8.8

Not sure how to deal with this in Python - I found some code to reload the libc resolver but not sure how well that would work.

Maybe an /etc/hosts override?

104.18.30.98 ocapi-app.arlo.com

twrecked avatar Apr 07 '21 03:04 twrecked

Just checked again on my machine, even when using a static /etc/host entry to 104.18.30.98 i receive the CloudflareCaptchaProvider error sometimes. Seems to be related to the cloudflare technique, not to the DNS/balancing.

request-error=CloudflareCaptchaProvider
request-error=CloudflareCaptchaProvider
request-error=CloudflareCaptchaProvider
authentication failed

huberda avatar Apr 07 '21 07:04 huberda

Does upgrading cloudscraper help?

pip3 install cloudscraper -U

or

sudo pip3 install cloudscraper -U

twrecked avatar Apr 07 '21 12:04 twrecked

Upgraded from 1.2.56 to 1.2.58

Sometime error happen….

Il giorno 7 apr 2021, alle ore 14:19, Steve Herrell @.***> ha scritto:

sudo pip3 install cloudscraper -U

vzlgdu avatar Apr 07 '21 12:04 vzlgdu

I'm continuing having errors in changing mode, so for me in this moment pyaarlo is not reliable... I hope that asap it will be possible permit again to use it as in the past. Thanks for the support.

vzlgdu avatar Apr 09 '21 06:04 vzlgdu

@vzlgdu It's working perfectly here for me so I need your help with the debug. Can you send me a packet trace when it works and one when it doesn't? ie, turn on verbose_debug and save what happens.

twrecked avatar Apr 09 '21 11:04 twrecked

Thanks, I'll take a look. You should change the password on that account now.

edit: I deleted it after downloading.

twrecked avatar Apr 09 '21 11:04 twrecked

Let's take pyaarlo out of this. Can you try this a few times:

#!/usr/bin/env python3

import logging
import requests
import cloudscraper

url = "https://ocapi-app.arlo.com/api/auth"

params = {
    'EnvSource': 'prod',
    'email': '[email protected]',
    'language': 'en',
    'password': 'rubbish'
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Auth-Version': '2',
    'Referer': 'https://my.arlo.com',
    'Source': 'arloCamWeb',
    'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) '
                  'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 '
                  'NETGEAR/v1 (iOS Vuezone)'
}

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_LOGGER = logging.getLogger('test')

scraper = cloudscraper.create_scraper()  # returns a CloudScraper instance
response = scraper.post(url,json=params,headers=headers)
print(response.text)

twrecked avatar Apr 09 '21 12:04 twrecked

Changing userid/password:

2021-04-09 15:58:22,481 - urllib3.connectionpool - DEBUG - Starting new HTTPS connection (1): ocapi-app.arlo.com:443 2021-04-09 15:58:22,612 - urllib3.connectionpool - DEBUG - https://ocapi-app.arlo.com:443 "POST /api/auth HTTP/1.1" 403 None cloudscraper.exceptions.CloudflareChallengeError: Detected a Cloudflare version 2 Captcha challenge, This feature is not available in the opensource (free) version.

Il giorno 9 apr 2021, alle ore 14:51, Steve Herrell @.***> ha scritto:

import logging import requests import cloudscraper

url = "https://ocapi-app.arlo.com/api/auth https://ocapi-app.arlo.com/api/auth"

params = { 'EnvSource': 'prod', 'email': @.*** @.***>', 'language': 'en', 'password': 'rubbish' }

headers = { 'Accept': 'application/json, text/plain, /', 'Auth-Version': '2', 'Referer': 'https://my.arlo.com https://my.arlo.com/', 'Source': 'arloCamWeb', 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) ' 'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 ' 'NETGEAR/v1 (iOS Vuezone)' }

logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') _LOGGER = logging.getLogger('test')

scraper = cloudscraper.create_scraper() # returns a CloudScraper instance response = scraper.post(url,json=params,headers=headers) print(response.text)

vzlgdu avatar Apr 09 '21 13:04 vzlgdu

I was about to say it doesn't matter.

You are seeing a cloudflare issue. I'm not sure how to deal with that but I'll look online.

twrecked avatar Apr 09 '21 14:04 twrecked

ok. Thanks.

vzlgdu avatar Apr 09 '21 14:04 vzlgdu

What does running this dig ocapi-app.arlo.com give you?

twrecked avatar Apr 09 '21 14:04 twrecked

Can you try this script, it doesn't use cloudscraper but I can see what's coming back and why it's different to mine.

#!/usr/bin/env python3

import logging
import requests
import cloudscraper

url = "https://ocapi-app.arlo.com/api/auth"

params = {
    'EnvSource': 'prod',
    'email': '[email protected]',
    'language': 'en',
    'password': 'rubbish'
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Auth-Version': '2',
    'Referer': 'https://my.arlo.com',
    'Source': 'arloCamWeb',
    'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) '
                  'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 '
                  'NETGEAR/v1 (iOS Vuezone)'
}

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_LOGGER = logging.getLogger('test')

scraper = requests.Session()
response = scraper.post(url,json=params,headers=headers)
print(response.text)

twrecked avatar Apr 09 '21 14:04 twrecked

; <<>> DiG 9.11.5-P4-5.1+deb10u3-Raspbian <<>> ocapi-app.arlo.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5123 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ocapi-app.arlo.com. IN A

;; ANSWER SECTION: ocapi-app.arlo.com. 262 IN CNAME ocapi-app.arlo.com.cdn.cloudflare.net. ocapi-app.arlo.com.cdn.cloudflare.net. 262 IN A 104.18.30.98 ocapi-app.arlo.com.cdn.cloudflare.net. 262 IN A 104.18.31.98

;; Query time: 21 msec ;; SERVER: 10.0.0.1#53(10.0.0.1) ;; WHEN: ven apr 09 16:25:59 CEST 2021 ;; MSG SIZE rcvd: 130

Il giorno 9 apr 2021, alle ore 16:15, Steve Herrell @.***> ha scritto:

dig ocapi-app.arlo.com http://ocapi-app.arlo.com/

vzlgdu avatar Apr 09 '21 14:04 vzlgdu

About running 2th script script2.txt

vzlgdu avatar Apr 09 '21 14:04 vzlgdu

What kind of machine are you running these on?

twrecked avatar Apr 09 '21 14:04 twrecked

RPI3

But I’ve always used this… Nothing new was introduced...

Il giorno 9 apr 2021, alle ore 16:49, Steve Herrell @.***> ha scritto:

What kind of machine are you running these on?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-816737396, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66OR2AHFOURWWSJMPHDTH4HV5ANCNFSM42LE2TGQ.

vzlgdu avatar Apr 09 '21 14:04 vzlgdu

What's even weirder is your and my responses from cloudflare look similar - ie, I think yours should have worked as well.

One last one for now. Can you try this and make sure it fails with a cloudflare error then post the output.

#!/usr/bin/env python3

import logging
import requests
import cloudscraper

url = "https://ocapi-app.arlo.com/api/auth"

params = {
    'EnvSource': 'prod',
    'email': '[email protected]',
    'language': 'en',
    'password': 'rubbish'
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Auth-Version': '2',
    'Referer': 'https://my.arlo.com',
    'Source': 'arloCamWeb',
    'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) '
                  'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 '
                  'NETGEAR/v1 (iOS Vuezone)'
}

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_LOGGER = logging.getLogger('test')

scraper = requests.Session()
response = scraper.post(url,json=params,headers=headers)
print(response.status_code)
print(response.headers)
print(response.text)
scraper = cloudscraper.create_scraper()  # returns a CloudScraper instance
response = scraper.post(url,json=params,headers=headers)
print(response.text)

twrecked avatar Apr 09 '21 14:04 twrecked

script 3.txt

vzlgdu avatar Apr 09 '21 14:04 vzlgdu

in script3.txt I used the tfa password; in this new script I used app password... script 3b.txt

vzlgdu avatar Apr 09 '21 15:04 vzlgdu

Sorry for all the scripts; I'm figuring this out as I go along. This one prints debug from cloudscraper.

#!/usr/bin/env python3

import logging
import requests
import cloudscraper

url = "https://ocapi-app.arlo.com/api/auth"

params = {
    'EnvSource': 'prod',
    'email': '[email protected]',
    'language': 'en',
    'password': 'rubbish'
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Auth-Version': '2',
    'Referer': 'https://my.arlo.com',
    'Source': 'arloCamWeb',
    'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) '
                  'AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 '
                  'NETGEAR/v1 (iOS Vuezone)'
}

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
_LOGGER = logging.getLogger('test')

scraper = cloudscraper.create_scraper(debug=True)  # returns a CloudScraper instance
response = scraper.post(url,json=params,headers=headers)
print(response.text)

twrecked avatar Apr 09 '21 15:04 twrecked

No problem :-) script4.txt

vzlgdu avatar Apr 09 '21 15:04 vzlgdu

Is there any change you can try the script from somewhere outside your network?

I'm not seeing the challenge come back for me.

twrecked avatar Apr 09 '21 15:04 twrecked

No, I don’t have others network to access to internet...

Guido Vizioli

Il giorno 9 apr 2021, alle ore 17:54, Steve Herrell @.***> ha scritto:

 Is there any change you can try the script from somewhere outside your network?

I'm not seeing the challenge come back for me.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

vzlgdu avatar Apr 09 '21 15:04 vzlgdu

I just tried running the script with your username/password and it worked for me. Somethings to try at your end:

  • login manually using a browser and see if that gets it working
  • try restarting your router to see if you get a new IP address and that helps

I'll keep looking here.

twrecked avatar Apr 09 '21 17:04 twrecked

The manual login by browser with user/psw used in the script, works. Router restarted and checked that a new ip was acquired; running the script more times the results is always the same: sometimes works other doesn’t work.

Il giorno 9 apr 2021, alle ore 19:08, Steve Herrell @.***> ha scritto:

I just tried running the script with your username/password and it worked for me. Somethings to try at your end:

login manually using a browser and see if that gets it working try restarting your router to see if you get a new IP address and that helps I'll keep looking here.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/twrecked/pyaarlo/issues/61#issuecomment-816825631, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHUN66MHTPER7UADJVZM2XLTH4YADANCNFSM42LE2TGQ.

vzlgdu avatar Apr 09 '21 17:04 vzlgdu

What I have seen with my script is, that if I experiment with my script and e.g. do not correctly login (for whatever reason) several times I get blocked by Cloudflare for some time. Usually I wait for some hours and then my IP gets unblocked again. However, I can verify this by trying to login via browser which then does not work either. So just keep in mind that your IP is somehow blocked currently. Maybe your IP is just blocked by one of the Cloudflare servers at the moment.

m0urs avatar Apr 09 '21 17:04 m0urs

Ok, but I don’t understand why executing the script more times in sequence, sometimes works and other doesn’t work...

Guido Vizioli

Il giorno 9 apr 2021, alle ore 19:20, Michael Urspringer @.***> ha scritto:

 What I have seen with my script is, that if I experiment with my script and e.g. do not correctly login (for whatever reason) several times I get blocked by Cloudflare for some time. Usually I wait for some hours and then my IP gets unblocked again. However, I can verify this by trying to login via browser which then does not work either. So just keep in mind that your IP is somehow blocked currently.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

vzlgdu avatar Apr 09 '21 17:04 vzlgdu

As I said, no one knows how many servers Cloudflare has behind the two IPs. Maybe there is just one which a wrong config (or your IP blocked) and as soon as this server handles your request it fails. All other requests are handled by other Cloudflare servers and that time it is working. However, that is just a possibility as no knows the config at Cloudflare.

m0urs avatar Apr 09 '21 17:04 m0urs

Ok. Thanks for your help.

Guido Vizioli

Il giorno 9 apr 2021, alle ore 19:32, Michael Urspringer @.***> ha scritto:

 As I said, no one knows how many servers Cloudflare has behind the two IPs. Maybe there is just one which a wrong config (or your IP blocked) and as soon as this server handles your request it fails. All other requests are handled by other Cloudflare servers and that time it is working. However, that is just a possibility as no knows the config at Cloudflare.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

vzlgdu avatar Apr 09 '21 17:04 vzlgdu

@twrecked: I just reconnected my router and received a new IP by my ISP - after that the scripts worked fine about 9-10 times. After some tests (without any failed logons) i am again receiving CloudflareChallengeError-errors. The service is still flapping (working / error).

@m0urs @twrecked: can you confirm, that your scripts are working fine even running > 10 requests?

Best regards!

huberda avatar Apr 10 '21 19:04 huberda

Seems to work for me. However, I do not re-login every time. My script logs in at 3 in the morning and does not re-Login if not needed (because Arlo disconnected me)

m0urs avatar Apr 10 '21 19:04 m0urs

I can do 10 times.

But like @m0urs I generally don't login more than once every couple of days - my main use is via Home Assistant.

twrecked avatar Apr 11 '21 11:04 twrecked