-
Notifications
You must be signed in to change notification settings - Fork 104
GetDeviceList failed #33
Comments
I'm seeing this as well. |
I am seeing this as well |
Could be a deliberate API change on the server side, or a server error... Which vacuum models do you guys have? Has Sucks previously worked for you? Is the official app working? |
Deebot N79s. First time using sucks. The official app works. |
Same. N79s. First time trying sucks.
…On Sat, Apr 7, 2018, 20:01 eracknaphobia ***@***.***> wrote:
Deebot N79s
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#33 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AA_IgmVh2oMm9XmJaVf6AHnHTsDLavdTks5tmX2VgaJpZM4TI53S>
.
|
Same here, Deebot N79s. The official app works. I'm guessing they changed something on the server side? |
is it particular to the N79s? I wonder if the "s" is treated differently on the server side than the N79? |
Same error here. First time using sucks. Deebot N79. |
@ttrushin N79? Not the "S" variant? |
@tripzero It's the N79, not the "S" variant, yep |
R98 same error, never used sucks before, official app works |
N79S and yes worked prior (like a charm!). Thanks for the code here! Was using this to integrate with Openhab. |
I'm experiencing this error, possible they changed something on their end? |
Same problem. Anybody have any luck figuring out the issue? Was this confirmed as an API change? I see this potential fix: #34 Can somebody point me in the right direction to implement this? I installed Sucks using PIP. |
A pull request was submitted with a fix. I've been using that fork for now.
…On Sat, Jun 2, 2018, 08:45 joey52685 ***@***.***> wrote:
Same problem. Anybody have any luck figuring out the issue? Was this
confirmed as an API change?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#33 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AA_Igt1LbQv85J_wz_JiH5XFaP8M5ukIks5t4rMugaJpZM4TI53S>
.
|
I've applied the fix in the pr to my own fork but running into some other errors now. The commands work but need to do some additional debugging when I get a chance |
#34 works for me. |
@trhr did you figure out a workaround for the errors after each command? |
@thimslugga I didn't debug any errors after making the changes in #34 . I'm running Python3.5.3 on Debian Stretch, and the commands work as intended, so I'm satisfied. |
#34 fixed it for me as well |
As I mentioned on the pull request, it's not clear to me why some people need this. If people who have this problem could say more about their setup so we can figure out the difference, I'd appreciate it. For example, I'd love to know things like:
I use this daily and have never seen the error, so I'll also happily accept session captures or any other data people think might be helpful. |
Linux 4.14.50-v7+ For me sucks never worked without that fix. With the fix, I am getting a timeout from the XMPP, but the vacuum is cleaning. |
|
MacOS 10.13.5 |
#34 fixed it for me. I noticed that the auth information received appears to be good for a bit. Perhaps the code should be modified so it stores the new uid and token and only goes through the full login routine if it gets a 1004 error back on the user_api. Maybe I'll have a chance to implement this later after I've done some more testing. |
Linux 64bit v 4.17.11 Android app worked. New device, so I have never used sucks previously. I got the 1004 as others above. Applied #34 and it started working (didn't even have to regenerate config file). If a tcpdump or xmppeek is of any use, let me know and I'll get it setup. Thanks for a great project. |
Thanks, @DJ1975-SE, I'd love that. It's HTTPS, so I've been using mitmproxy to get the decoded exchange. It would be great to get the XMPP stuff as well just to make sure that isn't any different. |
There are mitmproxy-dumps under https://github.com/DJ1975-SE/scratchplace/ from the current 0.8.4 version as well as with the patch applied. Additionally, the config files created are also there. It's all unredacted but the credentials aren't valid any longer. Hope this helps! I'll try to capture some other things now, I believe someone looked for the find vacuum command. If the dumpfiles can be improved or if there are any other dumps I can provide drop me a line. |
This has to do with the wrong User ID, which can be seen if you use --debug with the command. Before the error, it returns a shorter userID, if you hardecode that in to init.py, the login is succesful after that |
@TonyFeestneus are you referring to I ran the command with For reference: Operating system version: Ubuntu 17.10 |
Yes. I added a line I think on line 129 which makes it work.
|
@TonyFeestneus I tried a few variations of your suggestion. On line 121 there is |
I have line 121 original:
and inserted a line at 129: I think the first one is needed to get the authcode, and setting it at 129 makes sure the correct one is used in function def devices. Otherwise hardocde your userid (in single parenthesis) in this part (2x where you see self.uid): |
For anyone who finds themselves here, this patch works to get the vacuum started but there are all kinds of errors once it's going. Example errors:
I checked some of these errors and what others had done to solve them and discovered that sucks made some changes to it's version requirements. Versions of sucks required packages installed in my Home Assistant virtual environment were: So I installed pyasn1 and started seeing a new error:
Determined, then I rolled back The vacuum displays in the Home Assistant frontend as |
Hey @jcconnell - Why are you using the |
@OverloadUT This thread and the final post there are what lead me to use the dependencies from his fork: #32. I wish I had a better reason but it was just the result of trial and error. |
Sorry for the slow progress on this. I finally had the chance to set up my environment for capturing all the packets again, and for me I'm still not seeing the behavior of switching to a shorter UID. However, the field that for some apparently has the short UID for me has the long UID, so it looks like the patch should be harmless for those who aren't in the short-UID cohort. I still don't understand what Ecovacs is up to here, but since this should be harmless, I'm going to add some tests and protocol docs to go along with #34 and merge it. |
As an aside, I'd still like to get a mitmproxy dump of the login sequence from anybody who has experienced this problem. Make sure to change your password before making the dump, of course, as I'd rather not know it. |
None of the calls seem to work, with the exception of login. I repeatedly get:
ERROR call to GetDeviceList failed with {'result': 'fail', 'error': 'auth error', 'todo': 'result', 'errno': 1004}
Ideas?
The text was updated successfully, but these errors were encountered: