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

Add timeout to login process #532

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

excelle08
Copy link

The original implementation of Itchat will block forever with query for QRCode from time to time when the user does not scan QRCode after launches of login process. However this does not meet our needs of our project, which spawns many WeChat robots with ItChat on the backend server.

If there are users who don't scan the code to proceed the login process, the login process, which runs asynchronously in our server as a separate thread, will hang and write QRCode data to the session all the time, causing serious resource waste and making the server unable to respond eventually.

Thus, I propose that the login process of Itchat have a timeout option. By default the login() and auto_login() still waits for users until they scan the code, but when the timeout option is specified the login process will break by force after dedicated seconds, releasing the occupied threading resources, as well as preventing ongoing query for QRCode even though the users have already given up logging in.

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

Successfully merging this pull request may close these issues.

3 participants