@@ -4,6 +4,8 @@ import kotlinx.coroutines.Dispatchers
44import kotlinx.coroutines.GlobalScope
55import kotlinx.coroutines.launch
66import kotlinx.coroutines.withContext
7+ import net.lz1998.mirai.alias.BFrame
8+ import net.lz1998.mirai.alias.BFrameType
79import net.lz1998.mirai.ext.friendRequestLru
810import net.lz1998.mirai.ext.groupRequestLru
911import net.lz1998.mirai.ext.messageSourceLru
@@ -20,7 +22,6 @@ import net.mamoe.mirai.message.MessageEvent
2022import okhttp3.*
2123import okio.ByteString
2224import okio.ByteString.Companion.toByteString
23- import onebot.OnebotFrame
2425import java.util.concurrent.TimeUnit
2526
2627class WebsocketBotClient (override var botId : Long , override var password : String , wsUrl : String ) : RemoteBot {
@@ -45,7 +46,7 @@ class WebsocketBotClient(override var botId: Long, override var password: String
4546
4647 override fun onMessage (webSocket : WebSocket , bytes : ByteString ) {
4748 GlobalScope .launch {
48- val req = withContext(Dispatchers .IO ) { OnebotFrame . Frame .parseFrom(bytes.toByteArray()) }
49+ val req = withContext(Dispatchers .IO ) { BFrame .parseFrom(bytes.toByteArray()) }
4950 val resp = onRemoteApi(req)
5051 val ok = wsClient.send(resp.toByteArray().toByteString())
5152 if (! ok) {
@@ -119,30 +120,30 @@ class WebsocketBotClient(override var botId: Long, override var password: String
119120 bot.login()
120121 }
121122
122- override suspend fun onRemoteApi (req : OnebotFrame . Frame ): OnebotFrame . Frame {
123- val respBuilder = OnebotFrame . Frame .newBuilder()
123+ override suspend fun onRemoteApi (req : BFrame ): BFrame {
124+ val respBuilder = BFrame .newBuilder()
124125 respBuilder.echo = req.echo
125126 respBuilder.botId = botId
126- when (req.messageType ) {
127- OnebotFrame . Frame . MessageType .SendPrivateMsgReq -> respBuilder.sendPrivateMsgResp = handleSendPrivateMsg(bot, req.sendPrivateMsgReq)
128- OnebotFrame . Frame . MessageType .SendGroupMsgReq -> respBuilder.sendGroupMsgResp = handleSendGroupMsg(bot, req.sendGroupMsgReq)
129- OnebotFrame . Frame . MessageType .SendMsgReq -> respBuilder.sendMsgResp = handleSendMsgReq(bot, req.sendMsgReq)
130- OnebotFrame . Frame . MessageType .DeleteMsgReq -> respBuilder.deleteMsgResp = handleDeleteMsg(bot, req.deleteMsgReq)
131- OnebotFrame . Frame . MessageType .SetGroupKickReq -> respBuilder.setGroupKickResp = handleSetGroupKick(bot, req.setGroupKickReq)
132- OnebotFrame . Frame . MessageType .SetGroupBanReq -> respBuilder.setGroupBanResp = handleSetGroupBan(bot, req.setGroupBanReq)
133- OnebotFrame . Frame . MessageType .SetGroupWholeBanReq -> respBuilder.setGroupWholeBanResp = handleSetGroupWholeBan(bot, req.setGroupWholeBanReq)
134- OnebotFrame . Frame . MessageType .SetGroupCardReq -> respBuilder.setGroupCardResp = handleSetGroupCard(bot, req.setGroupCardReq)
135- OnebotFrame . Frame . MessageType .SetGroupNameReq -> respBuilder.setGroupNameResp = handleSetGroupName(bot, req.setGroupNameReq)
136- OnebotFrame . Frame . MessageType .SetGroupLeaveReq -> respBuilder.setGroupLeaveResp = handleSetGroupLeave(bot, req.setGroupLeaveReq)
137- 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)
140- OnebotFrame . Frame . MessageType .GetLoginInfoReq -> respBuilder.getLoginInfoResp = handleGetLoginInfo(bot, req.getLoginInfoReq)
141- OnebotFrame . Frame . MessageType .GetFriendListReq -> respBuilder.getFriendListResp = handleGetFriendList(bot, req.getFriendListReq)
142- OnebotFrame . Frame . MessageType .GetGroupInfoReq -> respBuilder.getGroupInfoResp = handleGetGroupInfo(bot, req.getGroupInfoReq)
143- OnebotFrame . Frame . MessageType .GetGroupListReq -> respBuilder.getGroupListResp = handleGetGroupList(bot, req.getGroupListReq)
144- OnebotFrame . Frame . MessageType .GetGroupMemberInfoReq -> respBuilder.getGroupMemberInfoResp = handleGetGroupMemberInfo(bot, req.getGroupMemberInfoReq)
145- OnebotFrame . Frame . MessageType .GetGroupMemberListReq -> respBuilder.getGroupMemberListResp = handleGetGroupMemberList(bot, req.getGroupMemberListReq)
127+ when (req.frameType ) {
128+ BFrameType .SendPrivateMsgReq -> respBuilder.sendPrivateMsgResp = handleSendPrivateMsg(bot, req.sendPrivateMsgReq)
129+ BFrameType .SendGroupMsgReq -> respBuilder.sendGroupMsgResp = handleSendGroupMsg(bot, req.sendGroupMsgReq)
130+ BFrameType .SendMsgReq -> respBuilder.sendMsgResp = handleSendMsgReq(bot, req.sendMsgReq)
131+ BFrameType .DeleteMsgReq -> respBuilder.deleteMsgResp = handleDeleteMsg(bot, req.deleteMsgReq)
132+ BFrameType .SetGroupKickReq -> respBuilder.setGroupKickResp = handleSetGroupKick(bot, req.setGroupKickReq)
133+ BFrameType .SetGroupBanReq -> respBuilder.setGroupBanResp = handleSetGroupBan(bot, req.setGroupBanReq)
134+ BFrameType .SetGroupWholeBanReq -> respBuilder.setGroupWholeBanResp = handleSetGroupWholeBan(bot, req.setGroupWholeBanReq)
135+ BFrameType .SetGroupCardReq -> respBuilder.setGroupCardResp = handleSetGroupCard(bot, req.setGroupCardReq)
136+ BFrameType .SetGroupNameReq -> respBuilder.setGroupNameResp = handleSetGroupName(bot, req.setGroupNameReq)
137+ BFrameType .SetGroupLeaveReq -> respBuilder.setGroupLeaveResp = handleSetGroupLeave(bot, req.setGroupLeaveReq)
138+ BFrameType .SetGroupSpecialTitleReq -> respBuilder.setGroupSpecialTitleResp = handleSetGroupSpecialTitle(bot, req.setGroupSpecialTitleReq)
139+ BFrameType .SetFriendAddRequestReq -> respBuilder.setFriendAddRequestResp = handleSetFriendAddRequest(bot, req.setFriendAddRequestReq)
140+ BFrameType .SetGroupAddRequestReq -> respBuilder.setGroupAddRequestResp = handleSetGroupAddRequest(bot, req.setGroupAddRequestReq)
141+ BFrameType .GetLoginInfoReq -> respBuilder.getLoginInfoResp = handleGetLoginInfo(bot, req.getLoginInfoReq)
142+ BFrameType .GetFriendListReq -> respBuilder.getFriendListResp = handleGetFriendList(bot, req.getFriendListReq)
143+ BFrameType .GetGroupInfoReq -> respBuilder.getGroupInfoResp = handleGetGroupInfo(bot, req.getGroupInfoReq)
144+ BFrameType .GetGroupListReq -> respBuilder.getGroupListResp = handleGetGroupList(bot, req.getGroupListReq)
145+ BFrameType .GetGroupMemberInfoReq -> respBuilder.getGroupMemberInfoResp = handleGetGroupMemberInfo(bot, req.getGroupMemberInfoReq)
146+ BFrameType .GetGroupMemberListReq -> respBuilder.getGroupMemberListResp = handleGetGroupMemberList(bot, req.getGroupMemberListReq)
146147 }
147148 return respBuilder.build()
148149 }
0 commit comments