Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

new server doesn't work #20

Open
tbilan opened this issue Feb 12, 2021 · 5 comments
Open

new server doesn't work #20

tbilan opened this issue Feb 12, 2021 · 5 comments

Comments

@tbilan
Copy link

tbilan commented Feb 12, 2021

Growatt created a new server because the old one was getting overloaded (at least that's what they told me). The new server is server-us.growatt.com. The old server is server.growatt.com. I can pull data from accounts on the old server but I'm unable to pull data from the new server with an account that is on the new server. I changed the URL to server-us.growatt.com in the init.py but that didn't seem to work.

@Sjord
Copy link
Owner

Sjord commented Feb 15, 2021

Thanks for reporting this. Can you still use the mobile app? How would the app know to connect to the other server?

@Sjord Sjord mentioned this issue Feb 15, 2021
@tbilan
Copy link
Author

tbilan commented Feb 15, 2021

I can still use ShinePhone and it only asks for a login. It does not ask for what server I'm on so they must have some kind of login database that points it at the right dataset.

@openincident
Copy link

I was able to get this to work by changing the URL to http://server-us.growatt.com, instead of https://

This means this "US" server is passing traffic to and from alicloud without any encryption, which has it's own red flags.

@abij
Copy link

abij commented May 12, 2021

Also having trouble with login using the package.
Website server.Growatt.com does work, so does the Mobile App.

I managed to debug the login using the browser:

# Note: new location = 'login' 
# Note: no hashed password!
# Note: account instead of username

response = self.session.post(
            self.get_url("login"),
            data={"account": username, "password": password},
        )

Lets see if I can make the rest of the code work...

@Sjord
Copy link
Owner

Sjord commented Aug 29, 2021

It seems that the app determines the server from the username, using the following request:

https://server-api.growatt.com/newLoginAPI.do?op=getServerUrlByName&userName=username

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants