@@ -4,6 +4,8 @@ import kotlinx.coroutines.Dispatchers
4
4
import kotlinx.coroutines.GlobalScope
5
5
import kotlinx.coroutines.launch
6
6
import kotlinx.coroutines.withContext
7
+ import net.lz1998.mirai.alias.BFrame
8
+ import net.lz1998.mirai.alias.BFrameType
7
9
import net.lz1998.mirai.ext.friendRequestLru
8
10
import net.lz1998.mirai.ext.groupRequestLru
9
11
import net.lz1998.mirai.ext.messageSourceLru
@@ -20,7 +22,6 @@ import net.mamoe.mirai.message.MessageEvent
20
22
import okhttp3.*
21
23
import okio.ByteString
22
24
import okio.ByteString.Companion.toByteString
23
- import onebot.OnebotFrame
24
25
import java.util.concurrent.TimeUnit
25
26
26
27
class 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
45
46
46
47
override fun onMessage (webSocket : WebSocket , bytes : ByteString ) {
47
48
GlobalScope .launch {
48
- val req = withContext(Dispatchers .IO ) { OnebotFrame . Frame .parseFrom(bytes.toByteArray()) }
49
+ val req = withContext(Dispatchers .IO ) { BFrame .parseFrom(bytes.toByteArray()) }
49
50
val resp = onRemoteApi(req)
50
51
val ok = wsClient.send(resp.toByteArray().toByteString())
51
52
if (! ok) {
@@ -119,30 +120,30 @@ class WebsocketBotClient(override var botId: Long, override var password: String
119
120
bot.login()
120
121
}
121
122
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()
124
125
respBuilder.echo = req.echo
125
126
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)
146
147
}
147
148
return respBuilder.build()
148
149
}
0 commit comments