@@ -4,13 +4,17 @@ import kotlinx.coroutines.Dispatchers
44import kotlinx.coroutines.GlobalScope
55import kotlinx.coroutines.launch
66import kotlinx.coroutines.withContext
7+ import net.lz1998.mirai.ext.friendRequestLru
8+ import net.lz1998.mirai.ext.groupRequestLru
79import net.lz1998.mirai.ext.messageSourceLru
810import net.lz1998.mirai.service.MyLoginSolver
911import net.lz1998.mirai.utils.*
1012import net.lz1998.mirai.utils.toFrame
1113import net.mamoe.mirai.Bot
1214import net.mamoe.mirai.alsoLogin
1315import net.mamoe.mirai.event.events.BotEvent
16+ import net.mamoe.mirai.event.events.MemberJoinRequestEvent
17+ import net.mamoe.mirai.event.events.NewFriendRequestEvent
1418import net.mamoe.mirai.event.subscribeAlways
1519import net.mamoe.mirai.message.MessageEvent
1620import okhttp3.*
@@ -103,6 +107,12 @@ class WebsocketBotClient(override var botId: Long, override var password: String
103107 val messageSource = this .source // 撤回消息用
104108 bot.messageSourceLru.put(messageSource.id, messageSource)
105109 }
110+ bot.subscribeAlways<MemberJoinRequestEvent > {
111+ bot.groupRequestLru.put(it.eventId, it)
112+ }
113+ bot.subscribeAlways<NewFriendRequestEvent > {
114+ bot.friendRequestLru.put(it.eventId, it)
115+ }
106116 }
107117
108118 override suspend fun login () {
@@ -125,6 +135,8 @@ class WebsocketBotClient(override var botId: Long, override var password: String
125135 OnebotFrame .Frame .MessageType .SetGroupNameReq -> respBuilder.setGroupNameResp = handleSetGroupName(bot, req.setGroupNameReq)
126136 OnebotFrame .Frame .MessageType .SetGroupLeaveReq -> respBuilder.setGroupLeaveResp = handleSetGroupLeave(bot, req.setGroupLeaveReq)
127137 OnebotFrame .Frame .MessageType .SetGroupSpecialTitleReq -> respBuilder.setGroupSpecialTitleResp = handleSetGroupSpecialTitle(bot, req.setGroupSpecialTitleReq)
138+ OnebotFrame .Frame .MessageType .SetFriendAddRequestReq -> respBuilder.setFriendAddRequestResp = handleSetFriendAddRequest(bot, req.setFriendAddRequestReq)
139+ OnebotFrame .Frame .MessageType .SetGroupAddRequestReq -> respBuilder.setGroupAddRequestResp = handleSetGroupAddRequest(bot, req.setGroupAddRequestReq)
128140 OnebotFrame .Frame .MessageType .GetLoginInfoReq -> respBuilder.getLoginInfoResp = handleGetLoginInfo(bot, req.getLoginInfoReq)
129141 OnebotFrame .Frame .MessageType .GetFriendListReq -> respBuilder.getFriendListResp = handleGetFriendList(bot, req.getFriendListReq)
130142 OnebotFrame .Frame .MessageType .GetGroupInfoReq -> respBuilder.getGroupInfoResp = handleGetGroupInfo(bot, req.getGroupInfoReq)
0 commit comments