krahabb / meross_lan

Home Assistant integration for Meross devices
MIT License
452 stars 47 forks source link

Meross Cloud profile api login error #372

Closed krahabb closed 9 months ago

krahabb commented 10 months ago

When requesting the merross key, the following error message appears after entering the user name and password : 404, message='Not Found', url=URL('https://iot.meross.com/v1/Auth/Login')

_Originally posted by @helebrant in https://github.com/krahabb/meross_lan/issues/365#issuecomment-1879590581_

Cloud-Kid commented 10 months ago

+1 Seems like they changes something on the cloud side ?

verabeniel commented 10 months ago

I have the same error. I have received an email that says the following:

Dear user,

We have recently noticed that login attempts to your account have been unsuccessful. We regret to inform you that we have discontinued services for specific versions of our application and have provided a new, more secure and improved version. To restore normal functionality, please read the following update information and guide.

  1. Reason for discontinuation:

Due to technical improvements and security requirements, we have discontinued previous versions of our application. This step has been taken to ensure that our users can enjoy a better experience and greater data security.

  1. Versions that are discontinued:
  1. Scope of impact:

Discontinuing these app versions will prevent you from being able to log in and use our services. Certain features and modules may not function properly or be accessible.

  1. Actions required:

1) If you are using one of the affected versions, please update to the latest version of the app immediately. You can download the latest version from your app store (such as App Store or Google Play). 2) If you are already using the latest version of the app, no further action is required. 3) If you are using third-party platforms not authorized by Meross to manage our devices, we cannot guarantee their compatibility with our new cloud interfaces or the security of your devices and data. Please return to our official services, as set out in our terms of service, to ensure proper operation.

  1. Technical support:

If you encounter any problems during the update process or have any questions about the new version, please contact our technical support team. You can contact us at support@meross.com.

We understand that this may cause some inconvenience, but it is done in order to offer a better service and protect your data. Thank you for your understanding and cooperation.

We wish you a pleasant experience!

[Meross Cloud Team]

JaKubinaa commented 10 months ago

@krahabb Still can't log in.

Authentication error

int([x]) -> integerint(x, base=10) -> integerConvert a number or string to an integer, or return 0 if no argumentsare given. If x is a number, return x.int(). For floating pointnumbers, this truncates towards zero.If x is not a number or if base is given, then x must be a string,bytes, or bytearray instance representing an integer literal in thegiven base. The literal can be preceded by '+' or '-' and be surroundedby whitespace. The base defaults to 10. Valid bases are 0 and 2-36.Base 0 means to interpret the base from the string as an integer literal.>>> int('0b100', base=0)4

krahabb commented 10 months ago

Hello @JaKubinaa, I cannot really figure out where this error comes from. the 'Authentication error' is effectively only reported when trying to login to the Meross cloud but the details about it (all the stuff about converting to an integer number) are really unexpected to me in that phase :(

which version are you on? I've checked the latest published v4.5.3 (Cloudy.5.3) and can't see a reason for that error

sven-debug commented 10 months ago

I am having the same issue. Would an additional log of use? How can I forward that to you?

craig-matadeen commented 10 months ago

@krahabb Still can't log in.

Authentication error

int([x]) -> integerint(x, base=10) -> integerConvert a number or string to an integer, or return 0 if no argumentsare given. If x is a number, return x.int(). For floating pointnumbers, this truncates towards zero.If x is not a number or if base is given, then x must be a string,bytes, or bytearray instance representing an integer literal in thegiven base. The literal can be preceded by '+' or '-' and be surroundedby whitespace. The base defaults to 10. Valid bases are 0 and 2-36.Base 0 means to interpret the base from the string as an integer literal.>>> int('0b100', base=0)4

@JaKubinaa Hey mate, I had a similar issue that was due to the wrong password being used to sign in. Maybe it's a similar case for you.

JaKubinaa commented 10 months ago

Error comes from two-factor authentication, when I disabled it then I could log in.

@sven-debug @krahabb

krahabb commented 10 months ago

Thank you for sharing, I now remember incurring in some issues while developing the new signin interface and an error likely similar was due to the server responding with an error at the http level (the verbose message you get is probably related to the json decoding of the server response which is not json in that case)

I'll setup a 2-factor and test the flow for that case too since it looks like someone uses it ;)

krahabb commented 10 months ago

The MFA support code is now published in pre-release. The 'cryptic' error to be honest was due to a bug in error processing which was collecting that garbage instead of the correct error message. Now the authorization flow will proceed as before with email/password and in case the account is configured for MFA the flow will then ask for the corresponding authenticator code and finalize the login

elkaboing commented 9 months ago

I just tried setting-up a new MSG100 garage door opener and am receiving this same 404 error. I don’t have any special characters in my password and 2FA is not enabled. I get this error when I visit https://iot.meross.com/v1/Auth/Login in a web browser too.

**Disregard - just realized I was running a really old version since HACs was failing to start for awhile. All is working

jgeorg02 commented 6 months ago

Hello,

I've been trying to search for a solution for some time now but I haven't. I'm using the code from this repository to login, and it was working last time I checked. But now, it gives me back "404 page not found". Have in mind that I can login to my mobile app with the same credentials just fine, but I cannot using this code (I need it so I can retrieve automatically through rest APIs the metrics from my smart-plug).

Can someone help me understand what has happened? PS. I have two-factor authentication disabled. Thank you in advance!

krahabb commented 6 months ago

The Meross cloud api changed a bit some time ago (maybe 1 year or so...) and the repository you pasted looks like still using the old endpoint(s) You can find hints for the cloudapi endpoints and updated api calls here

Beside the new server address(es) there's a new api for signing in "/v1/Auth/signIn" which superseded the previous "/v1/Auth/Login"