|
|
@@ -4,6 +4,7 @@
|
|
|
wechat channel
|
|
|
"""
|
|
|
|
|
|
+import os
|
|
|
import itchat
|
|
|
import json
|
|
|
from itchat.content import *
|
|
|
@@ -50,9 +51,20 @@ class WechatChannel(Channel):
|
|
|
pass
|
|
|
|
|
|
def startup(self):
|
|
|
- # login by scan QRCode
|
|
|
- itchat.auto_login(enableCmdQR=2, hotReload=conf().get('hot_reload', False))
|
|
|
|
|
|
+ itchat.instance.receivingRetryCount = 600 # 修改断线超时时间
|
|
|
+ # login by scan QRCode
|
|
|
+ hotReload = conf().get('hot_reload', False)
|
|
|
+ try:
|
|
|
+ itchat.auto_login(enableCmdQR=2, hotReload=hotReload)
|
|
|
+ except Exception as e:
|
|
|
+ if hotReload:
|
|
|
+ logger.error("Hot reload failed, try to login without hot reload")
|
|
|
+ itchat.logout()
|
|
|
+ os.remove("itchat.pkl")
|
|
|
+ itchat.auto_login(enableCmdQR=2, hotReload=hotReload)
|
|
|
+ else:
|
|
|
+ raise e
|
|
|
# start message listener
|
|
|
itchat.run()
|
|
|
|