<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<blockquote type="cite"
cite="mid:CAMonFrRJe329YKfoGE2P0XP=fqEf=Rkoz25F1YvSjuGkLRMgvA@mail.gmail.com">
<pre wrap="" class="moz-quote-pre">
Cercando in rete sembra solo un warning, sei sicuro sia un errore?
Dove leggi questo errore?
Come invochi il programma?
Puoi incollare un po' di contesto in più dell'output?
Comunque una sessione (o connector o quello che sia) aperto lo risolvi
dandogli una .close() oppure usando un context manager dove lo istanzi
e poi se ne occupa lui.
</pre>
</blockquote>
<p>Ciao, grazie della risposta,</p>
<p>mi sembra che il problema sia come se la connessione fosse già
occupata e quindi non permetta di collegarsi nuovamente al
dispositivo.</p>
<p>Riesco a ricreare l'errore anche con un semplice script come
quello che allego:</p>
<div
style="color: #cccccc;background-color: #1f1f1f;font-family: 'Droid Sans Mono', 'monospace', monospace;font-weight: normal;font-size: 14px;line-height: 19px;white-space: pre;"><div><span
style="color: #c586c0;">import</span><span style="color: #cccccc;"> </span><span
style="color: #4ec9b0;">ewelink</span></div><div><span
style="color: #c586c0;">from</span><span style="color: #cccccc;"> </span><span
style="color: #4ec9b0;">ewelink</span><span style="color: #cccccc;"> </span><span
style="color: #c586c0;">import</span><span style="color: #cccccc;"> </span><span
style="color: #4ec9b0;">Client</span><span style="color: #cccccc;">, </span><span
style="color: #4ec9b0;">DeviceOffline</span></div>
<div><span style="color: #dcdcaa;">@</span><span style="color: #4ec9b0;">ewelink</span><span
style="color: #dcdcaa;">.</span><span style="color: #dcdcaa;">login</span><span
style="color: #cccccc;">(</span><span style="color: #ce9178;">"MYPASSWORD"</span><span
style="color: #cccccc;">, </span><span style="color: #ce9178;">"MYEMAIL"</span><span
style="color: #cccccc;">) # <----- qui avviene l'errore</span></div><div><span
style="color: #569cd6;">async</span><span style="color: #cccccc;"> </span><span
style="color: #569cd6;">def</span><span style="color: #cccccc;"> </span><span
style="color: #dcdcaa;">main</span><span style="color: #cccccc;">(</span><span
style="color: #9cdcfe;">client</span><span style="color: #cccccc;">: </span><span
style="color: #4ec9b0;">Client</span><span style="color: #cccccc;">):</span></div><div><span
style="color: #cccccc;"> </span><span style="color: #dcdcaa;">print</span><span
style="color: #cccccc;">(</span><span style="color: #9cdcfe;">client</span><span
style="color: #cccccc;">.</span><span style="color: #9cdcfe;">user</span><span
style="color: #cccccc;">.</span><span style="color: #9cdcfe;">info</span><span
style="color: #cccccc;">)</span></div>
<div><span style="color: #cccccc;"> </span><span
style="color: #9cdcfe;">device</span><span style="color: #cccccc;"> </span><span
style="color: #d4d4d4;">=</span><span style="color: #cccccc;"> </span><span
style="color: #9cdcfe;">client</span><span style="color: #cccccc;">.</span><span
style="color: #dcdcaa;">get_device</span><span
style="color: #cccccc;">(</span><span style="color: #ce9178;">"1000a1c228"</span><span
style="color: #cccccc;">) </span><span style="color: #6a9955;">#single channel device</span></div><div><span
style="color: #cccccc;"> </span></div><div><span
style="color: #cccccc;"> </span><span style="color: #dcdcaa;">print</span><span
style="color: #cccccc;">(</span><span style="color: #9cdcfe;">device</span><span
style="color: #cccccc;">.</span><span style="color: #9cdcfe;">params</span><span
style="color: #cccccc;">) </span></div></div>
<p></p>
<p><br>
</p>
<p>Ecco anche il testo completo dell'output (nascondo solo email e
password)<br>
</p>
<p><i>{'error': 403, 'msg': '<a class="moz-txt-link-freetext" href="Sign:oauthClient">Sign:oauthClient</a> enable invalid'}<br>
Traceback (most recent call last):<br>
File "/home/matteo/Scrivania/smart_polinar/test.py", line 4,
in <module><br>
@ewelink.login("password", "email")<br>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^<br>
File "/home/matteo/Scrivania/smart_polinar/ewelink/client.py",
line 92, in login<br>
asyncio.get_event_loop().run_until_complete(client.login())<br>
File "/usr/lib/python3.12/asyncio/base_events.py", line 687,
in run_until_complete<br>
return future.result()<br>
^^^^^^^^^^^^^^^<br>
File "/home/matteo/Scrivania/smart_polinar/ewelink/client.py",
line 53, in login<br>
self.user = ClientUser(data = await self.http.login(),
http=self.http)<br>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^<br>
File
"/home/matteo/Scrivania/smart_polinar/ewelink/models/user.py",
line 32, in __init__<br>
self.email: str | None = data.get('email', None)<br>
^^^^^^^^<br>
AttributeError: 'NoneType' object has no attribute 'get'<br>
Unclosed client session<br>
client_session: <aiohttp.client.ClientSession object at
0x7f2da3ffec00><br>
Unclosed connector<br>
connections: ['[(<aiohttp.client_proto.ResponseHandler object
at 0x7f2da2d42510>, 61417.66621223)]']<br>
connector: <aiohttp.connector.TCPConnector object at
0x7f2da2d3a930></i><br>
</p>
<p><br>
</p>
<p>Siccome tutto avviene dentro la libreria e non sono molto esperto
di connessioni remote, sto facendo molta fatica a capire che
succede. Di solito uso python per tutt'altro.</p>
<p>Anche solo la sintassi mi sembra diversa da quella a cui sono
abituato.<br>
</p>
<p>Può essere che lato server si sia bloccato qualcosa? <br>
</p>
<p>Il dispositivo continua ad andare sia con l'app proprietaria che
tramite google home.</p>
<p>Ho provato anche a togliere fisicamente l'alimentazione al router
e al dispositivo ma senza ottenere risultati.</p>
<p>Cos'altro posso tentare?<br>
</p>
<p>Grazie </p>
<p>Ciao</p>
<p>Matteo <br>
</p>
<p><br>
</p>
<p><br>
</p>
</body>
</html>