-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[intesis] Session Handling improved #16555
Conversation
I have changed the login process so that the binding now only logs in at the beginning and logs out at the end of the lifetime. If a request fails due to a missing login or an invalid session ID, a new login attempt is made. This ensures that - Several requests can be sent in direct succession (if I switch the air conditioning from cooling to heating, I also want to change the slats at the same time) - Less traffic is generated as there is not a constant logout and login again - Ideally, the login credentials should only be visible once at startup Last change: login and logout is now running asynchronously in a scheduled task (#16476). Signed-off-by: Christoph <fd0cwp@gmx.de>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. One small comment when reviewing this again in its entirety. Otherwise LGTM.
String contentString = "{\"command\":\"logout\",\"data\":{\"sessionID\":\"" + sessionId + "\"}}"; | ||
logger.trace("logout() - session ID: {}", sessionId); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Last thing - if sessionId.isEmpty()
it will not make sense to try to log out.
I have changed the login process so that the binding now only logs in at the beginning and logs out at the end of the lifetime. If a request fails due to a missing login or an invalid session ID, a new login attempt is made. This ensures that - Several requests can be sent in direct succession (if I switch the air conditioning from cooling to heating, I also want to change the slats at the same time) - Less traffic is generated as there is not a constant logout and login again - Ideally, the login credentials should only be visible once at startup This change fixes #15502. Signed-off-by: Christoph fd0cwp@gmx.de
I don't get it with fixing PR change requests. :-( |
I have changed the login process so that the binding now only logs in at the beginning and logs out at the end of the lifetime. If a request fails due to a missing login or an invalid session ID, a new login attempt is made.
This ensures that
Last change: login and logout is now running asynchronously in a scheduled task (#16476).
This change fixes #15502.
Signed-off-by: Christoph fd0cwp@gmx.de