File tree Expand file tree Collapse file tree 4 files changed +22
-8
lines changed
Expand file tree Collapse file tree 4 files changed +22
-8
lines changed Original file line number Diff line number Diff line change @@ -132,8 +132,9 @@ def update_local_chatrooms(core, l):
132132 else :
133133 oldMemberList .append (member )
134134 else :
135- oldChatroom = templates .wrap_user_dict (chatroom )
136- core .chatroomList .append (oldChatroom )
135+ core .chatroomList .append (chatroom )
136+ oldChatroom = utils .search_dict_list (
137+ core .chatroomList , 'UserName' , chatroom ['UserName' ])
137138 # delete useless members
138139 if len (chatroom ['MemberList' ]) != len (oldChatroom ['MemberList' ]) and \
139140 chatroom ['MemberList' ]:
Original file line number Diff line number Diff line change @@ -246,8 +246,8 @@ def produce_group_chat(core, msg):
246246 msg ['ActualNickName' ] = ''
247247 msg ['IsAt' ] = False
248248 else :
249- msg ['ActualNickName' ] = member [ 'DisplayName' ] or member ['NickName' ]
250- atFlag = '@' + chatroom ['Self' ].get ('DisplayName' , core .storageClass .nickName )
249+ msg ['ActualNickName' ] = member . get ( 'DisplayName' , '' ) or member ['NickName' ]
250+ atFlag = '@' + ( chatroom ['Self' ].get ('DisplayName' , '' ) or core .storageClass .nickName )
251251 msg ['IsAt' ] = (
252252 (atFlag + (u'\u2005 ' if u'\u2005 ' in msg ['Content' ] else ' ' ))
253253 in msg ['Content' ] or msg ['Content' ].endswith (atFlag ))
Original file line number Diff line number Diff line change 11import os , platform
22
3- VERSION = '1.3.3 '
3+ VERSION = '1.3.4 '
44BASE_URL = 'https://login.weixin.qq.com'
55OS = platform .system () #Windows, Linux, Darwin
66DIR = os .getcwd ()
Original file line number Diff line number Diff line change 1+ import logging
2+
13try :
24 import Queue as queue
35except ImportError :
46 import queue
57
8+ logger = logging .getLogger ('itchat' )
9+
610class Queue (queue .Queue ):
711 def put (self , message ):
8- if 'IsAt' in message :
9- message ['isAt' ] = message ['IsAt' ]
1012 queue .Queue .put (self , Message (message ))
1113
1214class Message (dict ):
@@ -17,7 +19,18 @@ def download(self, fileName):
1719 return b''
1820 def __getattr__ (self , value ):
1921 value = value [0 ].upper () + value [1 :]
20- return self .get (value , '' )
22+ return self [value ]
23+ def __getitem__ (self , value ):
24+ if value in ('isAdmin' , 'isAt' ):
25+ v = value [0 ].upper () + value [1 :] # ''[1:] == ''
26+ logger .debug ('%s is expired in 1.3.0, use %s instead.' % (value , v ))
27+ value = v
28+ return super (Message , self ).__getitem__ (value )
29+ def get (self , v , d = None ):
30+ try :
31+ return self [v ]
32+ except KeyError :
33+ return d
2134 def __str__ (self ):
2235 return '{%s}' % ', ' .join (
2336 ['%s: %s' % (repr (k ),repr (v )) for k ,v in self .items ()])
You can’t perform that action at this time.
0 commit comments