mamoe / mirai

高效率 QQ 机器人支持库
https://mirai.mamoe.net
GNU Affero General Public License v3.0
14.5k stars 2.55k forks source link

在初始化时只能获取到前1000个群 #578

Open ZelKnow opened 4 years ago

ZelKnow commented 4 years ago

机器人加入群聊数超过1000时,只能接收前1000个群聊的消息,后面加入的群聊消息无法获取。

控制台输出节选:

 10:50:11 [INFO] [NETWORK] Recv: FriendList.GetTroopMemberList.Response
 10:50:11 [INFO] [NETWORK] Send: friendlist.GetTroopMemberListReq
 10:50:11 [INFO] [NETWORK] Recv: FriendList.GetTroopMemberList.Response
 10:50:11 [INFO] [NETWORK] Recv: FriendList.GetTroopMemberList.Response
 10:50:11 [INFO] [NETWORK] 群组列表与群成员加载完成, 共 1000个
 10:50:11 [INFO] [NETWORK] Syncing friend message history...
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbGetMsg
 10:50:11 [INFO] [NETWORK] Awaiting ConfigPushSvc.PushReq
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbDeleteMsg
 10:50:11 [INFO] [NETWORK] unknown PbGetMsg type 519, data=00 8D 00 00 00 00 78 F0 0F 06 58 23 25 A9 F4 E5 ED 8A 6A A1 F1 C5 DD A4 E6 45 F5 6C 4B 7A 8A 1C 52 09 D3 01 27 22 8C 51 07 36 59 47 C0 75 C1 5F 69 79 FB 2A 24 A5 C8 EA 3E B4 2C BF 83 19 46 EB 89 D8 B2 70 53 32 53 B2 2C B6 E6 AD 07 7F F3 20 E2 03 E3 1D 3B F1 AC B3 72 AD 6C 44 4F CA A7 48 31 8F 3E 02 56 0C A7 70 05 F2 56 00 00 00 00 8A 20 BC 63 00 00 00 0A 00 01 04 D4 9A F4 1C 00 00 5F 55 9F AE 00 0C 00 00 00 00 01 00 01 05 00 00 00 00
 10:50:11 [INFO] [BOT 2028998406] Event: MemberJoinEvent.Active(member=1486787560)
 10:50:11 [INFO] [BOT 2028998406] Event: MessageSvcPbGetMsg.Response(syncFlagFromServer=CONTINUE, messages=<Iterable>))
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbGetMsg
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbDeleteMsg
 10:50:11 [INFO] [BOT 2028998406] Event: MessageSvcPbGetMsg.Response(syncFlagFromServer=CONTINUE, messages=<Iterable>))
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbGetMsg
 10:50:11 [INFO] [NETWORK] Send: MessageSvc.PbDeleteMsg
 10:50:11 [INFO] [BOT 2028998406] Event: MessageSvcPbGetMsg.Response(syncFlagFromServer=CONTINUE, messages=<Iterable>))
.......

运行数秒后,会反复出现下列输出:

 10:50:37 [INFO] [NETWORK] Send: friendlist.GetTroopMemberListReq
 10:50:37 [INFO] [NETWORK] Recv: FriendList.GetTroopMemberList.Response

复现

加入1000+个群聊,新建群聊的群聊消息就会无法获取

版本

使用miraiOK mirai: 1.2.2 console: 1.3.0 cqhttp-mirai: 0.2.3-embedded

Him188 commented 4 years ago
  1. 新建群聊的群聊消息无法获取
  2. 在运行过程中没有新建群, 但超过第1001个或者更多超过1000个的群的消息都无法获取
  3. 在正常运行一段时间后, 突然反复出现 Send: friendlist.GetTroopMemberListReq Recv: FriendList.GetTroopMemberList.Response

请确认你的问题是上述第几个

ZelKnow commented 4 years ago
  1. 新建群聊的群聊消息无法获取
  2. 在运行过程中没有新建群, 但超过第1001个或者更多超过1000个的群的消息都无法获取
  3. 在正常运行一段时间后, 突然反复出现 Send: friendlist.GetTroopMemberListReq Recv: FriendList.GetTroopMemberList.Response

请确认你的问题是上述第几个

第二个。