reywechat 1.0.62__py3-none-any.whl → 1.0.64__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
reywechat/rdb.py CHANGED
@@ -19,7 +19,7 @@ from reykit.rwrap import wrap_thread
19
19
 
20
20
  from .rbase import WeChatBase
21
21
  from .rreceive import WeChatMessage
22
- from .rsend import WeChatSendTypeEnum, WeChatSendStatusEnum, WeChatSendParameter
22
+ from .rsend import WeChatSendTypeEnum, WeChatSendStatusEnum, WeChatSendParameters
23
23
  from .rwechat import WeChat
24
24
 
25
25
 
@@ -82,7 +82,7 @@ class WeChatDatabase(WeChatBase):
82
82
 
83
83
  # Check.
84
84
  if 'sqlite' in (self.database_wechat.backend, self.database_file.backend):
85
- text='not suitable for SQLite databases'
85
+ text = 'not suitable for SQLite databases'
86
86
  throw(AssertionError, text=text)
87
87
 
88
88
  # Add handler.
@@ -101,6 +101,10 @@ class WeChatDatabase(WeChatBase):
101
101
  Check and build all standard databases and tables, by `self.db_names`.
102
102
  """
103
103
 
104
+ # Check.
105
+ if self.database_wechat is None:
106
+ throw(ValueError, self.database_wechat)
107
+
104
108
  # Set parameter.
105
109
 
106
110
  ## Database.
@@ -1090,26 +1094,26 @@ class WeChatDatabase(WeChatBase):
1090
1094
 
1091
1095
 
1092
1096
  # Define.
1093
- def sender_handler_update_send_status(send_param: WeChatSendParameter) -> None:
1097
+ def sender_handler_update_send_status(send_params: WeChatSendParameters) -> None:
1094
1098
  """
1095
1099
  Update field `status` of table `message_send`.
1096
1100
 
1097
1101
  Parameters
1098
1102
  ----------
1099
- send_param : `WeChatSendParameter` instance.
1103
+ send_params : `WeChatSendParameters` instance.
1100
1104
  """
1101
1105
 
1102
1106
  # Check.
1103
- if send_param.status != WeChatSendStatusEnum.SENT:
1107
+ if send_params.status != WeChatSendStatusEnum.SENT:
1104
1108
  return
1105
1109
 
1106
1110
  # Handle parameter.
1107
- if send_param.exc_reports == []:
1111
+ if send_params.exc_reports == []:
1108
1112
  status = 2
1109
1113
  else:
1110
1114
  status = 3
1111
1115
  data = {
1112
- 'send_id': send_param.send_id,
1116
+ 'send_id': send_params.send_id,
1113
1117
  'status': status,
1114
1118
  'limit': 1
1115
1119
  }
@@ -1222,15 +1226,15 @@ class WeChatDatabase(WeChatBase):
1222
1226
  parameter['file_path'] = file_path
1223
1227
  parameter['file_name'] = file_name
1224
1228
 
1225
- send_param = WeChatSendParameter(
1229
+ send_params = WeChatSendParameters(
1226
1230
  self.wechat.sender,
1227
1231
  send_type,
1228
1232
  receive_id,
1229
1233
  send_id,
1230
1234
  **parameter
1231
1235
  )
1232
- send_param.status = WeChatSendStatusEnum.WAIT
1233
- self.wechat.sender.queue.put(send_param)
1236
+ send_params.status = WeChatSendStatusEnum.WAIT
1237
+ self.wechat.sender.queue.put(send_params)
1234
1238
 
1235
1239
  # Commit.
1236
1240
  conn.commit()
@@ -1315,21 +1319,21 @@ class WeChatDatabase(WeChatBase):
1315
1319
  return judge
1316
1320
 
1317
1321
 
1318
- def _insert_send(self, send_param: WeChatSendParameter) -> None:
1322
+ def _insert_send(self, send_params: WeChatSendParameters) -> None:
1319
1323
  """
1320
1324
  Insert into `wechat.message_send` table of database, wait send.
1321
1325
 
1322
1326
  Parameters
1323
1327
  ----------
1324
- send_param : `WeChatSendParameter` instance.
1328
+ send_params : `WeChatSendParameters` instance.
1325
1329
  """
1326
1330
 
1327
1331
  # Handle parameter.
1328
- params = send_param.params.copy()
1332
+ params = send_params.params.copy()
1329
1333
  data = {
1330
1334
  'status': 0,
1331
- 'type': send_param.send_type,
1332
- 'receive_id': send_param.receive_id,
1335
+ 'type': send_params.send_type,
1336
+ 'receive_id': send_params.receive_id,
1333
1337
  'parameter': params
1334
1338
  }
1335
1339
 
reywechat/rlog.py CHANGED
@@ -14,7 +14,7 @@ from reykit.ros import Folder, join_path
14
14
 
15
15
  from .rbase import WeChatBase
16
16
  from .rreceive import WeChatMessage
17
- from .rsend import WeChatSendParameter
17
+ from .rsend import WeChatSendParameters
18
18
  from .rwechat import WeChat
19
19
 
20
20
 
@@ -185,27 +185,27 @@ class WeChatLog(WeChatBase):
185
185
 
186
186
  def log_send(
187
187
  self,
188
- send_param: WeChatSendParameter
188
+ send_params: WeChatSendParameters
189
189
  ) -> None:
190
190
  """
191
191
  Log send message.
192
192
 
193
193
  Parameters
194
194
  ----------
195
- send_param : `WeChatSendParameter` instance.
195
+ send_params : `WeChatSendParameters` instance.
196
196
  """
197
197
 
198
198
  # Generate record.
199
- content_print = 'SEND | %-20s' % send_param.receive_id
199
+ content_print = 'SEND | %-20s' % send_params.receive_id
200
200
  content_file = 'SEND | %s' % {
201
- 'receive_id': send_param.receive_id,
202
- **send_param.params
201
+ 'receive_id': send_params.receive_id,
202
+ **send_params.params
203
203
  }
204
- if send_param.exc_reports == []:
204
+ if send_params.exc_reports == []:
205
205
  level = self.rrlog.INFO
206
206
  else:
207
207
  level = self.rrlog.ERROR
208
- exc_text = '\n'.join(send_param.exc_reports)
208
+ exc_text = '\n'.join(send_params.exc_reports)
209
209
  content_print = '%s\n%s' % (content_print, exc_text)
210
210
  content_file = '%s\n%s' % (content_file, exc_text)
211
211
 
reywechat/rreceive.py CHANGED
@@ -35,8 +35,8 @@ __all__ = (
35
35
  )
36
36
 
37
37
 
38
- MessageParameterFile = TypedDict(
39
- 'MessageParameterFile',
38
+ MessageParametersFile = TypedDict(
39
+ 'MessageParametersFile',
40
40
  {
41
41
  'path': str,
42
42
  'name': str,
@@ -44,8 +44,8 @@ MessageParameterFile = TypedDict(
44
44
  'size': int
45
45
  }
46
46
  )
47
- MessageParameter = TypedDict(
48
- 'MessageParameter',
47
+ MessageParameters = TypedDict(
48
+ 'MessageParameters',
49
49
  {
50
50
  'time': int,
51
51
  'id': int,
@@ -55,20 +55,20 @@ MessageParameter = TypedDict(
55
55
  'type': int,
56
56
  'display': str,
57
57
  'data': str,
58
- 'file': MessageParameterFile
58
+ 'file': MessageParametersFile
59
59
  }
60
60
  )
61
- MessageShareParameter = TypedDict(
62
- 'MessageShareParameter',
61
+ MessageShareParameters = TypedDict(
62
+ 'MessageShareParameters',
63
63
  {
64
64
  'name': str | None,
65
65
  'title': str | None,
66
- 'des': str | None,
66
+ 'desc': str | None,
67
67
  'url': str | None
68
68
  }
69
69
  )
70
- MessageQuoteParameter = TypedDict(
71
- 'MessageQuoteParameter',
70
+ MessageQuoteParameters = TypedDict(
71
+ 'MessageQuoteParameters',
72
72
  {
73
73
  'text': str,
74
74
  'quote_id': int,
@@ -132,7 +132,7 @@ class WeChatMessage(WeChatBase):
132
132
  self.display = display
133
133
  self.data = data
134
134
  self.window = window
135
- self.file: MessageParameterFile | None = None
135
+ self.file: MessageParametersFile | None = None
136
136
  self.trigger_rule: TriggerRule | None = None
137
137
  self.trigger_continue = self.receiver.trigger.continue_
138
138
  self.trigger_break = self.receiver.trigger.break_
@@ -164,7 +164,7 @@ class WeChatMessage(WeChatBase):
164
164
 
165
165
  ### Share.
166
166
  self._share_type: int | None = None
167
- self._share_params: MessageShareParameter | None = None
167
+ self._share_params: MessageShareParameters | None = None
168
168
  self._is_file_uploading: bool | None = None
169
169
  self._file_name_uploading: str | None = None
170
170
  self._is_file_uploaded: bool | None = None
@@ -206,7 +206,7 @@ class WeChatMessage(WeChatBase):
206
206
 
207
207
 
208
208
  @property
209
- def params(self) -> MessageParameter:
209
+ def params(self) -> MessageParameters:
210
210
  """
211
211
  Return parameters dictionary.
212
212
 
@@ -216,7 +216,7 @@ class WeChatMessage(WeChatBase):
216
216
  """
217
217
 
218
218
  # Handle parameter.
219
- params: MessageParameter = {
219
+ params: MessageParameters = {
220
220
  'time': self.time,
221
221
  'id': self.id,
222
222
  'number': self.number,
@@ -390,8 +390,8 @@ class WeChatMessage(WeChatBase):
390
390
  self._text = '[转发聊天记录]'
391
391
  else:
392
392
  self._text = f'[转发"{self.share_params['title']}"]'
393
- if self.share_params['des'] is not None:
394
- self._text += f' {self.share_params['des']}'
393
+ if self.share_params['desc'] is not None:
394
+ self._text += f' {self.share_params['desc']}'
395
395
 
396
396
  ### Mini program.
397
397
  elif self.is_mini_program:
@@ -435,8 +435,8 @@ class WeChatMessage(WeChatBase):
435
435
  self._text = f'[APP"{self.share_params['name']}"分享]'
436
436
  if self.share_params["title"] is not None:
437
437
  self._text += f' {self.share_params["title"]}'
438
- if self.share_params["des"] is not None:
439
- self._text += f' {self.share_params["des"]}'
438
+ if self.share_params["desc"] is not None:
439
+ self._text += f' {self.share_params["desc"]}'
440
440
 
441
441
  ### Other.
442
442
  else:
@@ -446,8 +446,8 @@ class WeChatMessage(WeChatBase):
446
446
  self._text = f'["{self.share_params['name']}"分享]'
447
447
  if self.share_params["title"] is not None:
448
448
  self._text += f' {self.share_params["title"]}'
449
- if self.share_params["des"] is not None:
450
- self._text += f' {self.share_params["des"]}'
449
+ if self.share_params["desc"] is not None:
450
+ self._text += f' {self.share_params["desc"]}'
451
451
 
452
452
  ## Voice call or video call.
453
453
  case 50:
@@ -583,7 +583,7 @@ class WeChatMessage(WeChatBase):
583
583
 
584
584
 
585
585
  @property
586
- def share_params(self) -> MessageShareParameter:
586
+ def share_params(self) -> MessageShareParameters:
587
587
  """
588
588
  Share message parameters.
589
589
 
@@ -607,14 +607,14 @@ class WeChatMessage(WeChatBase):
607
607
  if name is None:
608
608
  name: str | None = search('.*<nickname>([^<>]+)</nickname>', self.data)
609
609
  title: str | None = search('<title>([^<>]+)</title>', self.data)
610
- des: str | None = search('.*<des>([^<>]+)</des>', self.data)
611
- if des is None:
612
- des: str | None = search('.*<desc>([^<>]+)</desc>', self.data)
610
+ desc: str | None = search('.*<des>([^<>]+)</des>', self.data)
611
+ if desc is None:
612
+ desc: str | None = search('.*<desc>([^<>]+)</desc>', self.data)
613
613
  url: str | None = search('.*<url>([^<>]+)</url>', self.data)
614
- self._share_params: MessageShareParameter = {
614
+ self._share_params: MessageShareParameters = {
615
615
  'name': name,
616
616
  'title': title,
617
- 'des': des,
617
+ 'desc': desc,
618
618
  'url': url
619
619
  }
620
620
 
@@ -784,7 +784,7 @@ class WeChatMessage(WeChatBase):
784
784
 
785
785
 
786
786
  @property
787
- def quote_params(self) -> MessageQuoteParameter:
787
+ def quote_params(self) -> MessageQuoteParameters:
788
788
  """
789
789
  Quote message parameters.
790
790
 
@@ -826,7 +826,7 @@ class WeChatMessage(WeChatBase):
826
826
  quote_user_name: str = search(pattern, self.data)
827
827
  pattern = '<content>([^<>]+)</content>'
828
828
  quote_data: str = search(pattern, self.data)
829
- self._quote_params: MessageQuoteParameter = {
829
+ self._quote_params: MessageQuoteParameters = {
830
830
  'text': text,
831
831
  'quote_id': quote_id,
832
832
  'quote_time': quote_time,
@@ -1938,7 +1938,7 @@ class WechatReceiver(WeChatBase):
1938
1938
 
1939
1939
  # Set parameter.
1940
1940
  cache_file = File(cache_path)
1941
- message_file: MessageParameterFile = {
1941
+ message_file: MessageParametersFile = {
1942
1942
  'path': cache_path,
1943
1943
  'name': cache_file.name_suffix,
1944
1944
  'md5': cache_file.md5,
reywechat/rsend.py CHANGED
@@ -27,7 +27,7 @@ from .rwechat import WeChat
27
27
 
28
28
  __all__ = (
29
29
  'WeChatSendTypeEnum',
30
- 'WeChatSendParameter',
30
+ 'WeChatSendParameters',
31
31
  'WeChatSender'
32
32
  )
33
33
 
@@ -74,7 +74,7 @@ class WeChatSendStatusEnum(WeChatBase, IntEnum):
74
74
  SENT = 2
75
75
 
76
76
 
77
- class WeChatSendParameter(WeChatBase):
77
+ class WeChatSendParameters(WeChatBase):
78
78
  """
79
79
  WeChat send parameters type.
80
80
  """
@@ -285,8 +285,8 @@ class WeChatSender(WeChatBase):
285
285
 
286
286
  # Set attribute.
287
287
  self.wechat = wechat
288
- self.queue: Queue[WeChatSendParameter] = Queue()
289
- self.handlers: list[Callable[[WeChatSendParameter], Any]] = []
288
+ self.queue: Queue[WeChatSendParameters] = Queue()
289
+ self.handlers: list[Callable[[WeChatSendParameters], Any]] = []
290
290
  self.started: bool | None = False
291
291
 
292
292
  # Start.
@@ -313,17 +313,17 @@ class WeChatSender(WeChatBase):
313
313
  case None:
314
314
  break
315
315
 
316
- send_param = self.queue.get()
317
- handle_handler_exception = lambda exc_text, *_: send_param.exc_reports.append(exc_text)
316
+ send_params = self.queue.get()
317
+ handle_handler_exception = lambda exc_text, *_: send_params.exc_reports.append(exc_text)
318
318
 
319
319
  ## Handler.
320
320
  for handler in self.handlers:
321
321
  handler = wrap_exc(handler, handler=handle_handler_exception)
322
- handler(send_param)
322
+ handler(send_params)
323
323
 
324
324
  ## Send.
325
325
  try:
326
- self.__send(send_param)
326
+ self.__send(send_params)
327
327
 
328
328
  ## Exception.
329
329
  except BaseException:
@@ -332,104 +332,104 @@ class WeChatSender(WeChatBase):
332
332
  exc_text, *_ = catch_exc()
333
333
 
334
334
  # Save.
335
- send_param.exc_reports.append(exc_text)
335
+ send_params.exc_reports.append(exc_text)
336
336
 
337
- send_param.status = WeChatSendStatusEnum.SENT
337
+ send_params.status = WeChatSendStatusEnum.SENT
338
338
 
339
339
  ## Handler.
340
340
  for handler in self.handlers:
341
341
  handler = wrap_exc(handler, handler=handle_handler_exception)
342
- handler(send_param)
342
+ handler(send_params)
343
343
 
344
344
  ## Log.
345
- self.wechat.error.log_send(send_param)
345
+ self.wechat.error.log_send(send_params)
346
346
 
347
347
 
348
348
  def __send(
349
349
  self,
350
- send_param: WeChatSendParameter
350
+ send_params: WeChatSendParameters
351
351
  ) -> None:
352
352
  """
353
353
  Send message.
354
354
 
355
355
  Parameters
356
356
  ----------
357
- send_param : `WeChatSendParameter` instance.
357
+ send_params : `WeChatSendParameters` instance.
358
358
  """
359
359
 
360
360
  # Test.
361
361
  if (
362
- send_param.params.get('is_test')
363
- and send_param.send_type in (WeChatSendTypeEnum.TEXT, WeChatSendTypeEnum.TEXT_AT)
362
+ send_params.params.get('is_test')
363
+ and send_params.send_type in (WeChatSendTypeEnum.TEXT, WeChatSendTypeEnum.TEXT_AT)
364
364
  ):
365
- text: str = send_param.params['text']
365
+ text: str = send_params.params['text']
366
366
  now_time = now('time_str')
367
367
  modify_text = text.replace(':time:', now_time, 1)
368
- send_param.params['text'] = modify_text
368
+ send_params.params['text'] = modify_text
369
369
 
370
370
  # Send.
371
- match send_param.send_type:
371
+ match send_params.send_type:
372
372
 
373
373
  ## Text.
374
374
  case WeChatSendTypeEnum.TEXT:
375
375
  self.wechat.client.send_text(
376
- send_param.receive_id,
377
- send_param.params['text']
376
+ send_params.receive_id,
377
+ send_params.params['text']
378
378
  )
379
379
 
380
380
  ## Text with '@'.
381
381
  case WeChatSendTypeEnum.TEXT_AT:
382
382
  self.wechat.client.send_text_at(
383
- send_param.receive_id,
384
- send_param.params['user_id'],
385
- send_param.params['text']
383
+ send_params.receive_id,
384
+ send_params.params['user_id'],
385
+ send_params.params['text']
386
386
  )
387
387
 
388
388
  ## File.
389
389
  case WeChatSendTypeEnum.FILE:
390
390
  self.wechat.client.send_file(
391
- send_param.receive_id,
392
- send_param.params['file_path']
391
+ send_params.receive_id,
392
+ send_params.params['file_path']
393
393
  )
394
394
 
395
395
  ## Image.
396
396
  case WeChatSendTypeEnum.IMAGE:
397
397
  self.wechat.client.send_image(
398
- send_param.receive_id,
399
- send_param.params['file_path']
398
+ send_params.receive_id,
399
+ send_params.params['file_path']
400
400
  )
401
401
 
402
402
  ## Emotion.
403
403
  case WeChatSendTypeEnum.EMOTION:
404
404
  self.wechat.client.send_emotion(
405
- send_param.receive_id,
406
- send_param.params['file_path']
405
+ send_params.receive_id,
406
+ send_params.params['file_path']
407
407
  )
408
408
 
409
409
  ## Pat.
410
410
  case WeChatSendTypeEnum.PAT:
411
411
  self.wechat.client.send_pat(
412
- send_param.receive_id,
413
- send_param.params['user_id']
412
+ send_params.receive_id,
413
+ send_params.params['user_id']
414
414
  )
415
415
 
416
416
  ## Public account.
417
417
  case WeChatSendTypeEnum.PUBLIC:
418
418
  self.wechat.client.send_public(
419
- send_param.receive_id,
420
- send_param.params['page_url'],
421
- send_param.params['title'],
422
- send_param.params['text'],
423
- send_param.params['image_url'],
424
- send_param.params['public_name'],
425
- send_param.params['public_id']
419
+ send_params.receive_id,
420
+ send_params.params['page_url'],
421
+ send_params.params['title'],
422
+ send_params.params['text'],
423
+ send_params.params['image_url'],
424
+ send_params.params['public_name'],
425
+ send_params.params['public_id']
426
426
  )
427
427
 
428
428
  ## Forward.
429
429
  case WeChatSendTypeEnum.FORWARD:
430
430
  self.wechat.client.send_forward(
431
- send_param.receive_id,
432
- send_param.params['message_id']
431
+ send_params.receive_id,
432
+ send_params.params['message_id']
433
433
  )
434
434
 
435
435
  ## Throw exception.
@@ -523,38 +523,38 @@ class WeChatSender(WeChatBase):
523
523
  """
524
524
 
525
525
  # Handle parameter.
526
- send_param = WeChatSendParameter(
526
+ send_params = WeChatSendParameters(
527
527
  self,
528
528
  send_type,
529
529
  receive_id,
530
530
  **params
531
531
  )
532
- send_param.status = WeChatSendStatusEnum.INIT
533
- handle_handler_exception = lambda exc_text, *_: send_param.exc_reports.append(exc_text)
532
+ send_params.status = WeChatSendStatusEnum.INIT
533
+ handle_handler_exception = lambda exc_text, *_: send_params.exc_reports.append(exc_text)
534
534
 
535
535
  # Handler.
536
536
  for handler in self.handlers:
537
537
  handler = wrap_exc(handler, handler=handle_handler_exception)
538
- handler(send_param)
538
+ handler(send_params)
539
539
 
540
540
  # Insert.
541
- self.wechat.database._insert_send(send_param)
541
+ self.wechat.database._insert_send(send_params)
542
542
 
543
543
 
544
544
  def add_handler(
545
545
  self,
546
- handler: Callable[[WeChatSendParameter], Any]
546
+ handler: Callable[[WeChatSendParameters], Any]
547
547
  ) -> None:
548
548
  """
549
549
  Add send handler function.
550
550
  Call at the after initialization, before inserting into the database queue.
551
551
  Call at the after get from database queue, before sending.
552
552
  Call at the after sending.
553
- Can be use `WeChatSendParameter.status` judge status.
553
+ Can be use `WeChatSendParameters.status` judge status.
554
554
 
555
555
  Parameters
556
556
  ----------
557
- handler : Handler method, input parameter is `WeChatSendParameter` instance.
557
+ handler : Handler method, input parameter is `WeChatSendParameters` instance.
558
558
  """
559
559
 
560
560
  # Add.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reywechat
3
- Version: 1.0.62
3
+ Version: 1.0.64
4
4
  Summary: WeChat method set.
5
5
  Project-URL: homepage, https://github.com/reyxbo/reywechat/
6
6
  Author-email: Rey <reyxbo@163.com>
@@ -3,14 +3,14 @@ reywechat/rall.py,sha256=5J_X-XMOyb1Vp1jyS9-oRFXGOtp2vRPX1g3tJot_Eck,371
3
3
  reywechat/rbase.py,sha256=hbxn5spvcl_C_Bw8A9teulOXT9GMlxUw145_YbXIOzc,1124
4
4
  reywechat/rcache.py,sha256=7UsHHfgFOgxuSqlTSAO6CprgUUOeBCXYus0kxmRBQxk,908
5
5
  reywechat/rclient.py,sha256=lc1CPle9h08mwP8NlJN0ybzcNJxtpV0ma6q6cz1RIxk,22518
6
- reywechat/rdb.py,sha256=PBEg_9Ig07vwqH3RNLaIWZZD7Joe6MQceiNB21hGAj0,48654
7
- reywechat/rlog.py,sha256=4EsTgrgC05JvWeKAucUaWGga638CRRJISJN6qncBCAw,5249
8
- reywechat/rreceive.py,sha256=akRLA5j17ySLEUG5HnlYy4PSboQgHay9AcLapJrJM9k,51206
9
- reywechat/rsend.py,sha256=yrJf9GzWVCDptUHHazhWSVW0nm2LCIbb0sz2EII63bY,20049
6
+ reywechat/rdb.py,sha256=qQe8WrD-nwa8FkYeDeKXrxy7slnVXGy3lJ2V2tWleCY,48790
7
+ reywechat/rlog.py,sha256=TSA-_5pwlq0sUND2cnLDqXvdmAdMAkC7tXIz3WfJ7Xw,5259
8
+ reywechat/rreceive.py,sha256=74Re0rrNXPJ2idTUP69eK0wT93pGEN1c39pzyzctHa8,51236
9
+ reywechat/rsend.py,sha256=BB42r24x37V1tb27HLhnB_2tILv-DW26F9QbhqiNes8,20101
10
10
  reywechat/rtrigger.py,sha256=WdOQwobPdGPyyE9J-qtQFPd60713T0aWqKk02PLdCRE,4966
11
11
  reywechat/rwechat.py,sha256=g0pbprMPv_qWb_lGFrPDAWsJO4vPSIgFLkw0Y28CZUo,4751
12
12
  reywechat/data/client_api.dll,sha256=H9uj-x9Ztg0jFZK0yY6NsnyH5_119dQRFfoVVMidxRs,592384
13
- reywechat-1.0.62.dist-info/METADATA,sha256=7ln3X4XFfA0qjt-kuQzH2dev6D79Qls8BWilRvdTqoM,1551
14
- reywechat-1.0.62.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
- reywechat-1.0.62.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
16
- reywechat-1.0.62.dist-info/RECORD,,
13
+ reywechat-1.0.64.dist-info/METADATA,sha256=UfZn0zrWNu4cM1sPvLunFEzMo4_w3XNhXD6-6V4oHV0,1551
14
+ reywechat-1.0.64.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
15
+ reywechat-1.0.64.dist-info/licenses/LICENSE,sha256=UYLPqp7BvPiH8yEZduJqmmyEl6hlM3lKrFIefiD4rvk,1059
16
+ reywechat-1.0.64.dist-info/RECORD,,