1010from jade .jade_tools import *
1111from queue import Queue
1212class MonitorLDKThread (Thread ):
13- def __init__ (self ,pyldk ,JadeLog ,ldkqueue ,time = 60 * 60 ,max_session_size = 1 ,feature_id = None ):
13+ def __init__ (self ,pyldk ,JadeLog ,ldkqueue ,time = 60 * 60 ,max_session_size = 1 ,feature_id_list = None ):
1414 self .pyldk = pyldk
1515 self .JadeLog = JadeLog
1616 self .ldkqueue = ldkqueue
1717 self .time = time
18- self .feature_id = feature_id
18+ self .feature_id_list = feature_id_list
1919 self .max_session_size = max_session_size
2020 self .handlequeue = Queue (maxsize = max_session_size )
2121 super (MonitorLDKThread , self ).__init__ ()
@@ -25,11 +25,13 @@ def logout(self):
2525 handle = self .handlequeue .get ()
2626 self .pyldk .adapter .logout (handle )
2727 def run (self ):
28- haspStruct ,feature_id ,login_status = self .pyldk .login (self .feature_id )
29- if haspStruct .status == 0 :
30- self .handlequeue .put (haspStruct .handle )
28+ for feature_id in self .feature_id_list :
29+ haspStruct ,feature_id ,login_status = self .pyldk .login (feature_id )
30+ if haspStruct .status == 0 :
31+ self .handlequeue .put (haspStruct .handle )
32+ break
3133 while haspStruct .status == 0 and login_status :
32- haspStruct , feature_id ,login_status = self .pyldk .login (self . feature_id )
34+ haspStruct , feature_id ,login_status = self .pyldk .login (feature_id )
3335 if haspStruct .status == 0 and login_status :
3436 if self .handlequeue .qsize () == self .max_session_size :
3537 self .logout ()
0 commit comments