更新msgid消息协议

This commit is contained in:
殷勇 2023-08-18 17:50:47 +08:00
parent 5a183f3a90
commit 2d9ff4c1a1
8 changed files with 687 additions and 258 deletions

View File

@ -38,12 +38,14 @@ type MsgHandler interface {
CMPing(*f5.MsgHdr, *CMPing) CMPing(*f5.MsgHdr, *CMPing)
CMLogin(*f5.MsgHdr, *CMLogin) CMLogin(*f5.MsgHdr, *CMLogin)
CMReconnect(*f5.MsgHdr, *CMReconnect) CMReconnect(*f5.MsgHdr, *CMReconnect)
CMSearchFriend(*f5.MsgHdr, *CMSearchFriend) CMSearchUser(*f5.MsgHdr, *CMSearchUser)
CMSearchUserByAccountId(*f5.MsgHdr, *CMSearchUserByAccountId)
CMAddFriendRequest(*f5.MsgHdr, *CMAddFriendRequest) CMAddFriendRequest(*f5.MsgHdr, *CMAddFriendRequest)
CMAcceptFriendRequest(*f5.MsgHdr, *CMAcceptFriendRequest) CMAcceptFriendRequest(*f5.MsgHdr, *CMAcceptFriendRequest)
CMRejectFriendRequest(*f5.MsgHdr, *CMRejectFriendRequest) CMRejectFriendRequest(*f5.MsgHdr, *CMRejectFriendRequest)
CMListPendingFriendRequest(*f5.MsgHdr, *CMListPendingFriendRequest) CMListPendingFriendRequest(*f5.MsgHdr, *CMListPendingFriendRequest)
CMListFriend(*f5.MsgHdr, *CMListFriend) CMListFriend(*f5.MsgHdr, *CMListFriend)
CMDeleteFriendShip(*f5.MsgHdr, *CMDeleteFriendShip)
} }
func (this *MsgHandlerImpl) CMPing(hdr *f5.MsgHdr, msg *CMPing) { func (this *MsgHandlerImpl) CMPing(hdr *f5.MsgHdr, msg *CMPing) {
@ -55,7 +57,10 @@ func (this *MsgHandlerImpl) CMLogin(hdr *f5.MsgHdr, msg *CMLogin) {
func (this *MsgHandlerImpl) CMReconnect(hdr *f5.MsgHdr, msg *CMReconnect) { func (this *MsgHandlerImpl) CMReconnect(hdr *f5.MsgHdr, msg *CMReconnect) {
} }
func (this *MsgHandlerImpl) CMSearchFriend(hdr *f5.MsgHdr, msg *CMSearchFriend) { func (this *MsgHandlerImpl) CMSearchUser(hdr *f5.MsgHdr, msg *CMSearchUser) {
}
func (this *MsgHandlerImpl) CMSearchUserByAccountId(hdr *f5.MsgHdr, msg *CMSearchUserByAccountId) {
} }
func (this *MsgHandlerImpl) CMAddFriendRequest(hdr *f5.MsgHdr, msg *CMAddFriendRequest) { func (this *MsgHandlerImpl) CMAddFriendRequest(hdr *f5.MsgHdr, msg *CMAddFriendRequest) {
@ -73,6 +78,9 @@ func (this *MsgHandlerImpl) CMListPendingFriendRequest(hdr *f5.MsgHdr, msg *CMLi
func (this *MsgHandlerImpl) CMListFriend(hdr *f5.MsgHdr, msg *CMListFriend) { func (this *MsgHandlerImpl) CMListFriend(hdr *f5.MsgHdr, msg *CMListFriend) {
} }
func (this *MsgHandlerImpl) CMDeleteFriendShip(hdr *f5.MsgHdr, msg *CMDeleteFriendShip) {
}
func (this *CMPing) GetNetMsgId() uint16 { func (this *CMPing) GetNetMsgId() uint16 {
return uint16(CMMessageIdE__CMPing) return uint16(CMMessageIdE__CMPing)
} }
@ -101,12 +109,20 @@ func (this *SMReconnect) GetNetMsgId() uint16 {
return uint16(SMMessageIdE__SMReconnect) return uint16(SMMessageIdE__SMReconnect)
} }
func (this *CMSearchFriend) GetNetMsgId() uint16 { func (this *CMSearchUser) GetNetMsgId() uint16 {
return uint16(CMMessageIdE__CMSearchFriend) return uint16(CMMessageIdE__CMSearchUser)
} }
func (this *SMSearchFriend) GetNetMsgId() uint16 { func (this *SMSearchUser) GetNetMsgId() uint16 {
return uint16(SMMessageIdE__SMSearchFriend) return uint16(SMMessageIdE__SMSearchUser)
}
func (this *CMSearchUserByAccountId) GetNetMsgId() uint16 {
return uint16(CMMessageIdE__CMSearchUserByAccountId)
}
func (this *SMSearchUserByAccountId) GetNetMsgId() uint16 {
return uint16(SMMessageIdE__SMSearchUserByAccountId)
} }
func (this *CMAddFriendRequest) GetNetMsgId() uint16 { func (this *CMAddFriendRequest) GetNetMsgId() uint16 {
@ -149,6 +165,14 @@ func (this *SMListFriend) GetNetMsgId() uint16 {
return uint16(SMMessageIdE__SMListFriend) return uint16(SMMessageIdE__SMListFriend)
} }
func (this *CMDeleteFriendShip) GetNetMsgId() uint16 {
return uint16(CMMessageIdE__CMDeleteFriendShip)
}
func (this *SMDeleteFriendShip) GetNetMsgId() uint16 {
return uint16(SMMessageIdE__SMDeleteFriendShip)
}
func init() { func init() {
handlers[int(CMMessageIdE__CMPing)] = &CsNetMsgHandler{ handlers[int(CMMessageIdE__CMPing)] = &CsNetMsgHandler{
@ -187,15 +211,27 @@ func init() {
}, },
} }
handlers[int(CMMessageIdE__CMSearchFriend)] = &CsNetMsgHandler{ handlers[int(CMMessageIdE__CMSearchUser)] = &CsNetMsgHandler{
MsgId: int(CMMessageIdE__CMSearchFriend), MsgId: int(CMMessageIdE__CMSearchUser),
ParseCb: func (data []byte) interface{} { ParseCb: func (data []byte) interface{} {
msg := &CMSearchFriend{} msg := &CMSearchUser{}
proto.Unmarshal(data, msg) proto.Unmarshal(data, msg)
return msg return msg
}, },
Cb: func (hdr *f5.MsgHdr, handler MsgHandler) { Cb: func (hdr *f5.MsgHdr, handler MsgHandler) {
handler.CMSearchFriend(hdr, hdr.Msg.(*CMSearchFriend)) handler.CMSearchUser(hdr, hdr.Msg.(*CMSearchUser))
},
}
handlers[int(CMMessageIdE__CMSearchUserByAccountId)] = &CsNetMsgHandler{
MsgId: int(CMMessageIdE__CMSearchUserByAccountId),
ParseCb: func (data []byte) interface{} {
msg := &CMSearchUserByAccountId{}
proto.Unmarshal(data, msg)
return msg
},
Cb: func (hdr *f5.MsgHdr, handler MsgHandler) {
handler.CMSearchUserByAccountId(hdr, hdr.Msg.(*CMSearchUserByAccountId))
}, },
} }
@ -259,4 +295,16 @@ func init() {
}, },
} }
handlers[int(CMMessageIdE__CMDeleteFriendShip)] = &CsNetMsgHandler{
MsgId: int(CMMessageIdE__CMDeleteFriendShip),
ParseCb: func (data []byte) interface{} {
msg := &CMDeleteFriendShip{}
proto.Unmarshal(data, msg)
return msg
},
Cb: func (hdr *f5.MsgHdr, handler MsgHandler) {
handler.CMDeleteFriendShip(hdr, hdr.Msg.(*CMDeleteFriendShip))
},
}
} }

View File

@ -27,12 +27,14 @@ const (
CMMessageIdE__CMPing CMMessageIdE = 101 CMMessageIdE__CMPing CMMessageIdE = 101
CMMessageIdE__CMLogin CMMessageIdE = 103 CMMessageIdE__CMLogin CMMessageIdE = 103
CMMessageIdE__CMReconnect CMMessageIdE = 104 CMMessageIdE__CMReconnect CMMessageIdE = 104
CMMessageIdE__CMSearchFriend CMMessageIdE = 105 CMMessageIdE__CMSearchUserByAccountId CMMessageIdE = 105
CMMessageIdE__CMAddFriendRequest CMMessageIdE = 106 CMMessageIdE__CMSearchUser CMMessageIdE = 106
CMMessageIdE__CMAcceptFriendRequest CMMessageIdE = 107 CMMessageIdE__CMAddFriendRequest CMMessageIdE = 107
CMMessageIdE__CMRejectFriendRequest CMMessageIdE = 108 CMMessageIdE__CMAcceptFriendRequest CMMessageIdE = 108
CMMessageIdE__CMListPendingFriendRequest CMMessageIdE = 109 CMMessageIdE__CMRejectFriendRequest CMMessageIdE = 109
CMMessageIdE__CMListFriend CMMessageIdE = 110 CMMessageIdE__CMListPendingFriendRequest CMMessageIdE = 110
CMMessageIdE__CMListFriend CMMessageIdE = 111
CMMessageIdE__CMDeleteFriendShip CMMessageIdE = 112
) )
// Enum value maps for CMMessageIdE. // Enum value maps for CMMessageIdE.
@ -41,23 +43,27 @@ var (
101: "_CMPing", 101: "_CMPing",
103: "_CMLogin", 103: "_CMLogin",
104: "_CMReconnect", 104: "_CMReconnect",
105: "_CMSearchFriend", 105: "_CMSearchUserByAccountId",
106: "_CMAddFriendRequest", 106: "_CMSearchUser",
107: "_CMAcceptFriendRequest", 107: "_CMAddFriendRequest",
108: "_CMRejectFriendRequest", 108: "_CMAcceptFriendRequest",
109: "_CMListPendingFriendRequest", 109: "_CMRejectFriendRequest",
110: "_CMListFriend", 110: "_CMListPendingFriendRequest",
111: "_CMListFriend",
112: "_CMDeleteFriendShip",
} }
CMMessageIdE_value = map[string]int32{ CMMessageIdE_value = map[string]int32{
"_CMPing": 101, "_CMPing": 101,
"_CMLogin": 103, "_CMLogin": 103,
"_CMReconnect": 104, "_CMReconnect": 104,
"_CMSearchFriend": 105, "_CMSearchUserByAccountId": 105,
"_CMAddFriendRequest": 106, "_CMSearchUser": 106,
"_CMAcceptFriendRequest": 107, "_CMAddFriendRequest": 107,
"_CMRejectFriendRequest": 108, "_CMAcceptFriendRequest": 108,
"_CMListPendingFriendRequest": 109, "_CMRejectFriendRequest": 109,
"_CMListFriend": 110, "_CMListPendingFriendRequest": 110,
"_CMListFriend": 111,
"_CMDeleteFriendShip": 112,
} }
) )
@ -105,12 +111,14 @@ const (
SMMessageIdE__SMRpcError SMMessageIdE = 102 SMMessageIdE__SMRpcError SMMessageIdE = 102
SMMessageIdE__SMLogin SMMessageIdE = 103 SMMessageIdE__SMLogin SMMessageIdE = 103
SMMessageIdE__SMReconnect SMMessageIdE = 104 SMMessageIdE__SMReconnect SMMessageIdE = 104
SMMessageIdE__SMSearchFriend SMMessageIdE = 105 SMMessageIdE__SMSearchUserByAccountId SMMessageIdE = 105
SMMessageIdE__SMAddFriendRequest SMMessageIdE = 106 SMMessageIdE__SMSearchUser SMMessageIdE = 106
SMMessageIdE__SMAcceptFriendRequest SMMessageIdE = 107 SMMessageIdE__SMAddFriendRequest SMMessageIdE = 107
SMMessageIdE__SMRejectFriendRequest SMMessageIdE = 108 SMMessageIdE__SMAcceptFriendRequest SMMessageIdE = 108
SMMessageIdE__SMListPendingFriendRequest SMMessageIdE = 109 SMMessageIdE__SMRejectFriendRequest SMMessageIdE = 109
SMMessageIdE__SMListFriend SMMessageIdE = 110 SMMessageIdE__SMListPendingFriendRequest SMMessageIdE = 110
SMMessageIdE__SMListFriend SMMessageIdE = 111
SMMessageIdE__SMDeleteFriendShip SMMessageIdE = 112
) )
// Enum value maps for SMMessageIdE. // Enum value maps for SMMessageIdE.
@ -120,24 +128,28 @@ var (
102: "_SMRpcError", 102: "_SMRpcError",
103: "_SMLogin", 103: "_SMLogin",
104: "_SMReconnect", 104: "_SMReconnect",
105: "_SMSearchFriend", 105: "_SMSearchUserByAccountId",
106: "_SMAddFriendRequest", 106: "_SMSearchUser",
107: "_SMAcceptFriendRequest", 107: "_SMAddFriendRequest",
108: "_SMRejectFriendRequest", 108: "_SMAcceptFriendRequest",
109: "_SMListPendingFriendRequest", 109: "_SMRejectFriendRequest",
110: "_SMListFriend", 110: "_SMListPendingFriendRequest",
111: "_SMListFriend",
112: "_SMDeleteFriendShip",
} }
SMMessageIdE_value = map[string]int32{ SMMessageIdE_value = map[string]int32{
"_SMPing": 101, "_SMPing": 101,
"_SMRpcError": 102, "_SMRpcError": 102,
"_SMLogin": 103, "_SMLogin": 103,
"_SMReconnect": 104, "_SMReconnect": 104,
"_SMSearchFriend": 105, "_SMSearchUserByAccountId": 105,
"_SMAddFriendRequest": 106, "_SMSearchUser": 106,
"_SMAcceptFriendRequest": 107, "_SMAddFriendRequest": 107,
"_SMRejectFriendRequest": 108, "_SMAcceptFriendRequest": 108,
"_SMListPendingFriendRequest": 109, "_SMRejectFriendRequest": 109,
"_SMListFriend": 110, "_SMListPendingFriendRequest": 110,
"_SMListFriend": 111,
"_SMDeleteFriendShip": 112,
} }
) )
@ -182,35 +194,42 @@ var File_cs_msgid_proto protoreflect.FileDescriptor
var file_cs_msgid_proto_rawDesc = []byte{ var file_cs_msgid_proto_rawDesc = []byte{
0x0a, 0x0e, 0x63, 0x73, 0x5f, 0x6d, 0x73, 0x67, 0x69, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x0a, 0x0e, 0x63, 0x73, 0x5f, 0x6d, 0x73, 0x67, 0x69, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x12, 0x02, 0x63, 0x73, 0x2a, 0xd6, 0x01, 0x0a, 0x0d, 0x43, 0x4d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x12, 0x02, 0x63, 0x73, 0x2a, 0x8b, 0x02, 0x0a, 0x0d, 0x43, 0x4d, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x49, 0x64, 0x5f, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x5f, 0x43, 0x4d, 0x50, 0x69, 0x6e, 0x67, 0x65, 0x49, 0x64, 0x5f, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x5f, 0x43, 0x4d, 0x50, 0x69, 0x6e,
0x67, 0x10, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x5f, 0x43, 0x4d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x10, 0x67, 0x10, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x5f, 0x43, 0x4d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x10,
0x67, 0x12, 0x10, 0x0a, 0x0c, 0x5f, 0x43, 0x4d, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x67, 0x12, 0x10, 0x0a, 0x0c, 0x5f, 0x43, 0x4d, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63,
0x74, 0x10, 0x68, 0x12, 0x13, 0x0a, 0x0f, 0x5f, 0x43, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x74, 0x10, 0x68, 0x12, 0x1c, 0x0a, 0x18, 0x5f, 0x43, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68,
0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x69, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x43, 0x4d, 0x41, 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x10,
0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x69, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x43, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73,
0x6a, 0x12, 0x1a, 0x0a, 0x16, 0x5f, 0x43, 0x4d, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x46, 0x72, 0x65, 0x72, 0x10, 0x6a, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x43, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72,
0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6b, 0x12, 0x1a, 0x0a, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6b, 0x12, 0x1a, 0x0a,
0x16, 0x5f, 0x43, 0x4d, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x16, 0x5f, 0x43, 0x4d, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6c, 0x12, 0x1f, 0x0a, 0x1b, 0x5f, 0x43, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6c, 0x12, 0x1a, 0x0a, 0x16, 0x5f, 0x43, 0x4d,
0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75,
0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6d, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x43, 0x65, 0x73, 0x74, 0x10, 0x6d, 0x12, 0x1f, 0x0a, 0x1b, 0x5f, 0x43, 0x4d, 0x4c, 0x69, 0x73, 0x74,
0x4d, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x6e, 0x2a, 0xe7, 0x01, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71,
0x0a, 0x0d, 0x53, 0x4d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x5f, 0x65, 0x12, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6e, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x43, 0x4d, 0x4c, 0x69, 0x73,
0x0b, 0x0a, 0x07, 0x5f, 0x53, 0x4d, 0x50, 0x69, 0x6e, 0x67, 0x10, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x6f, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x43, 0x4d,
0x5f, 0x53, 0x4d, 0x52, 0x70, 0x63, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x10, 0x66, 0x12, 0x0c, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x69, 0x70,
0x08, 0x5f, 0x53, 0x4d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x10, 0x67, 0x12, 0x10, 0x0a, 0x0c, 0x5f, 0x10, 0x70, 0x2a, 0x9c, 0x02, 0x0a, 0x0d, 0x53, 0x4d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x53, 0x4d, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x10, 0x68, 0x12, 0x13, 0x0a, 0x49, 0x64, 0x5f, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x5f, 0x53, 0x4d, 0x50, 0x69, 0x6e, 0x67, 0x10,
0x0f, 0x5f, 0x53, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x5f, 0x53, 0x4d, 0x52, 0x70, 0x63, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x10, 0x69, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x53, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x10, 0x66, 0x12, 0x0c, 0x0a, 0x08, 0x5f, 0x53, 0x4d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x10, 0x67,
0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6a, 0x12, 0x1a, 0x0a, 0x16, 0x5f, 0x12, 0x10, 0x0a, 0x0c, 0x5f, 0x53, 0x4d, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
0x53, 0x4d, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x10, 0x68, 0x12, 0x1c, 0x0a, 0x18, 0x5f, 0x53, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55,
0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6b, 0x12, 0x1a, 0x0a, 0x16, 0x5f, 0x53, 0x4d, 0x52, 0x65, 0x73, 0x65, 0x72, 0x42, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x10, 0x69,
0x6a, 0x65, 0x63, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x53, 0x4d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65,
0x74, 0x10, 0x6c, 0x12, 0x1f, 0x0a, 0x1b, 0x5f, 0x53, 0x4d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x65, 0x72, 0x10, 0x6a, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x53, 0x4d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69,
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6b, 0x12, 0x1a, 0x0a, 0x16,
0x73, 0x74, 0x10, 0x6d, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x53, 0x4d, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x5f, 0x53, 0x4d, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52,
0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x6e, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x63, 0x73, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x10, 0x6c, 0x12, 0x1a, 0x0a, 0x16, 0x5f, 0x53, 0x4d, 0x52,
0x65, 0x6a, 0x65, 0x63, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x10, 0x6d, 0x12, 0x1f, 0x0a, 0x1b, 0x5f, 0x53, 0x4d, 0x4c, 0x69, 0x73, 0x74, 0x50,
0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x10, 0x6e, 0x12, 0x11, 0x0a, 0x0d, 0x5f, 0x53, 0x4d, 0x4c, 0x69, 0x73, 0x74,
0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x6f, 0x12, 0x17, 0x0a, 0x13, 0x5f, 0x53, 0x4d, 0x44,
0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x69, 0x70, 0x10,
0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x63, 0x73,
} }
var ( var (

File diff suppressed because it is too large Load Diff

View File

@ -250,10 +250,31 @@ func (fm *FriendsMgr) rejectFriendRequest(account1Id string, account2Id string)
} }
// deleteFriendShip 删除好友 // deleteFriendShip 删除好友
func (fm *FriendsMgr) deleteFriendShip(account1Id, account2Id string) { func (fm *FriendsMgr) deleteFriendShip(account1ID, account2ID string) error {
fm.findFriendShipIndex(account1Id, account2Id) user1Friendships := fm.friendships[account1ID]
//if account2Index < 0 { user2Friendships := fm.friendships[account2ID]
//}
var found bool
for i, friendship := range user1Friendships {
if friendship.User1.Username == account2ID || friendship.User2.Username == account2ID {
fm.friendships[account1ID] = append(user1Friendships[:i], user1Friendships[i+1:]...)
found = true
break
}
}
if !found {
return errors.New("friendship not found")
}
for i, friendship := range user2Friendships {
if friendship.User1.Username == account1ID || friendship.User2.Username == account1ID {
fm.friendships[account2ID] = append(user2Friendships[:i], user2Friendships[i+1:]...)
break
}
}
return nil
} }
// getFriendCount 好友数量 // getFriendCount 好友数量

View File

@ -14,12 +14,14 @@ func (this *HandlerMgr) init() {
cs.RegHandlerId(int(cs.CMMessageIdE__CMPing), PLAYER_MGR_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMPing), PLAYER_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMLogin), PLAYER_MGR_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMLogin), PLAYER_MGR_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMSearchFriend), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMSearchUser), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMSearchUserByAccountId), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMAddFriendRequest), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMAddFriendRequest), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMAcceptFriendRequest), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMAcceptFriendRequest), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMRejectFriendRequest), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMRejectFriendRequest), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMListPendingFriendRequest), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMListPendingFriendRequest), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMListFriend), PLAYER_HANDLER_ID) cs.RegHandlerId(int(cs.CMMessageIdE__CMListFriend), PLAYER_HANDLER_ID)
cs.RegHandlerId(int(cs.CMMessageIdE__CMDeleteFriendShip), PLAYER_HANDLER_ID)
} }
func (this *HandlerMgr) unInit() { func (this *HandlerMgr) unInit() {

View File

@ -13,23 +13,35 @@ type Player struct {
sessionId string sessionId string
} }
// CMAddFriendRequest 搜索用户 // CMSearchUser 搜索用户
func (p *Player) CMSearchFriend(hdr *f5.MsgHdr, msg *cs.CMSearchFriend) { func (p *Player) CMSearchUser(hdr *f5.MsgHdr, msg *cs.CMSearchUser) {
rspMsg := new(cs.SMSearchFriend) rspMsg := new(cs.SMSearchUser)
//rspMsg := &cs.SMSearchFriend{} //rspMsg := &cs.SMSearchFriend{}
listUsers := friendMgr.searchUsers(msg.GetSearchKeyword()) listUsers := friendMgr.searchUsers(msg.GetSearchKeyword())
for _, u := range listUsers { for _, u := range listUsers {
friend := &cs.MFFriend{ friend := &cs.MFUser{
AccountId: &u.AccountId, AccountId: &u.AccountId,
Username: &u.Username, Username: &u.Username,
} }
rspMsg.Friends = append(rspMsg.Friends, friend) rspMsg.Users = append(rspMsg.Users, friend)
} }
fmt.Printf("length%d \n", len(rspMsg.Friends)) fmt.Printf("length%d \n", len(rspMsg.Users))
wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg) wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg)
} }
// CMSearchUserByAccountId 搜索指定用户
func (p *Player) CMSearchUserByAccountId(hdr *f5.MsgHdr, msg *cs.CMSearchUserByAccountId) {
rspMsg := new(cs.SMSearchUserByAccountId)
user := friendMgr.searchByAccountId(msg.GetSearchKeyword())
if user != nil {
rspMsg.AccountId = &user.AccountId
rspMsg.Username = &user.Username
fmt.Printf("search result: accountId:%s \n", *rspMsg.AccountId)
}
wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg)
}
// CMAddFriendRequest 添加好友请求 // CMAddFriendRequest 添加好友请求
func (p *Player) CMAddFriendRequest(hdr *f5.MsgHdr, msg *cs.CMAddFriendRequest) { func (p *Player) CMAddFriendRequest(hdr *f5.MsgHdr, msg *cs.CMAddFriendRequest) {
rspMsg := &cs.SMAddFriendRequest{} rspMsg := &cs.SMAddFriendRequest{}
@ -111,20 +123,39 @@ func (p *Player) CMListFriend(hdr *f5.MsgHdr, msg *cs.CMListFriend) {
accountId := p.accountId accountId := p.accountId
for _, friendship := range friendMgr.friendships[accountId] { for _, friendship := range friendMgr.friendships[accountId] {
if friendship.User1.AccountId != accountId { if friendship.User1.AccountId != accountId {
friend := &cs.MFFriend{ friend := &cs.MFUser{
AccountId: &friendship.User1.AccountId, AccountId: &friendship.User1.AccountId,
Username: &friendship.User1.Username, Username: &friendship.User1.Username,
} }
rspMsg.Friends = append(rspMsg.Friends, friend) rspMsg.Users = append(rspMsg.Users, friend)
} else { } else {
friend := &cs.MFFriend{ friend := &cs.MFUser{
AccountId: &friendship.User2.AccountId, AccountId: &friendship.User2.AccountId,
Username: &friendship.User2.Username, Username: &friendship.User2.Username,
} }
rspMsg.Friends = append(rspMsg.Friends, friend) rspMsg.Users = append(rspMsg.Users, friend)
} }
} }
f5.GetSysLog().Info("CMListFriend friends count:%d\n", len(rspMsg.Friends)) f5.GetSysLog().Info("CMListFriend friends count:%d\n", len(rspMsg.Users))
wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg)
}
// CMDeleteFriendShip 删除好友
func (p *Player) CMDeleteFriendShip(hdr *f5.MsgHdr, msg *cs.CMDeleteFriendShip) {
rspMsg := &cs.SMDeleteFriendShip{}
user1Id := p.accountId
user2Id := msg.GetTargetAccountId()
err := friendMgr.deleteFriendShip(user1Id, user2Id)
if err != nil {
reason := err.Error()
rspMsg.Reason = &reason
wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg)
f5.GetSysLog().Info("CMDeleteFriendShip: reason:%s, params: %s or %s\n", reason, user1Id, user2Id)
return
}
status := "deleted"
rspMsg.Status = &status
wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg) wspListener.sendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg)
} }

View File

@ -9,12 +9,14 @@ enum CMMessageId_e
_CMLogin = 103; _CMLogin = 103;
_CMReconnect = 104; _CMReconnect = 104;
_CMSearchFriend = 105; _CMSearchUserByAccountId = 105;
_CMAddFriendRequest = 106; _CMSearchUser = 106;
_CMAcceptFriendRequest = 107; _CMAddFriendRequest = 107;
_CMRejectFriendRequest = 108; _CMAcceptFriendRequest = 108;
_CMListPendingFriendRequest = 109; _CMRejectFriendRequest = 109;
_CMListFriend = 110; _CMListPendingFriendRequest = 110;
_CMListFriend = 111;
_CMDeleteFriendShip = 112;
} }
enum SMMessageId_e enum SMMessageId_e
@ -23,12 +25,14 @@ enum SMMessageId_e
_SMRpcError = 102; _SMRpcError = 102;
_SMLogin = 103; _SMLogin = 103;
_SMReconnect = 104; _SMReconnect = 104;
_SMSearchFriend = 105; _SMSearchUserByAccountId = 105;
_SMAddFriendRequest = 106; _SMSearchUser = 106;
_SMAcceptFriendRequest = 107; _SMAddFriendRequest = 107;
_SMRejectFriendRequest = 108; _SMAcceptFriendRequest = 108;
_SMListPendingFriendRequest = 109; _SMRejectFriendRequest = 109;
_SMListFriend = 110; _SMListPendingFriendRequest = 110;
_SMListFriend = 111;
_SMDeleteFriendShip = 112;
} }

View File

@ -119,15 +119,28 @@ message SMReconnect
// //
message CMSearchFriend message CMSearchUser
{ {
optional string search_keyword = 1; // optional string search_keyword = 1; //
} }
// //
message SMSearchFriend message SMSearchUser
{ {
repeated MFFriend friends = 1; repeated MFUser users = 1;
}
// CMSearchUserByAccountId
message CMSearchUserByAccountId
{
optional string search_keyword = 1; //account id
}
//
message SMSearchUserByAccountId
{
optional string account_id = 1;
optional string username = 2;
} }
// //
@ -189,10 +202,24 @@ message CMListFriend
// //
message SMListFriend message SMListFriend
{ {
repeated MFFriend friends = 1; repeated MFUser users = 1;
} }
message MFFriend {
//
message CMDeleteFriendShip
{
optional string target_account_id = 1; // id
}
//
message SMDeleteFriendShip
{
optional string reason = 1;
optional string status = 2;
}
message MFUser {
optional string account_id = 1; optional string account_id = 1;
optional string username = 2; optional string username = 2;
} }