From 06f5d92c96dfa30b70ddc27fa8f5a151b500f723 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 19 Jun 2020 10:50:22 +0800 Subject: [PATCH] 1 --- server/imserver/app.cc | 3 +++ server/imserver/constant.h | 1 + server/imserver/handlermgr.cc | 6 ++++++ server/imserver/playermgr.cc | 10 ++++++++++ server/imserver/playermgr.h | 4 ++++ server/imserver/synchelper.cc | 10 ++++++++++ server/imserver/synchelper.h | 12 ++++++++++++ 7 files changed, 46 insertions(+) diff --git a/server/imserver/app.cc b/server/imserver/app.cc index c0ee0ef..338f648 100644 --- a/server/imserver/app.cc +++ b/server/imserver/app.cc @@ -397,6 +397,9 @@ void App::ProcessIMServerMsg(f8::MsgHdr& hdr) case HID_IMListener: ProcessNetMsg(handler, IMListener::Instance(), hdr); break; + case HID_SyncHelper: + ProcessNetMsg(handler, SyncHelper::Instance(), hdr); + break; default: { } diff --git a/server/imserver/constant.h b/server/imserver/constant.h index bb9bc9b..4a14e00 100644 --- a/server/imserver/constant.h +++ b/server/imserver/constant.h @@ -31,6 +31,7 @@ enum NetHandler_e HID_Player, HID_GroupMgr, HID_IMConnMgr, + HID_SyncHelper }; const char* const PROJ_NAME_FMT = "friend_imserver"; diff --git a/server/imserver/handlermgr.cc b/server/imserver/handlermgr.cc index 0f5bf11..77d8ead 100644 --- a/server/imserver/handlermgr.cc +++ b/server/imserver/handlermgr.cc @@ -11,6 +11,7 @@ #include "playermgr.h" #include "groupmgr.h" #include "IMConnMgr.h" +#include "synchelper.h" #include "ss_proto.pb.h" #include "cs_proto.pb.h" @@ -37,6 +38,9 @@ void HandlerMgr::RegisterNetMsgHandlers() { RegisterNetMsgHandler(&immsghandler, &IMListener::_SS_Ping); + RegisterNetMsgHandler(&immsghandler, &SyncHelper::_SS_IM_FriendAgreeResponse); + RegisterNetMsgHandler(&immsghandler, &SyncHelper::_SS_IM_FriendDeleteResponse); + RegisterNetMsgHandler(&mscmsghandler, &PlayerMgr::_SS_MS_PushUserList); RegisterNetMsgHandler(&mscmsghandler, &GroupMgr::_SS_MS_LoadGroup); RegisterNetMsgHandler(&mscmsghandler, &GroupMgr::_SS_MS_ForwardGroupCMMsg); @@ -47,6 +51,8 @@ void HandlerMgr::RegisterNetMsgHandlers() RegisterNetMsgHandler(&imcmsghandler, &PlayerMgr::_SS_IM_SendChatMsg); RegisterNetMsgHandler(&imcmsghandler, &PlayerMgr::_SS_IM_SendCustomMsg); RegisterNetMsgHandler(&imcmsghandler, &PlayerMgr::_SS_IM_UpdateUserInfo); + RegisterNetMsgHandler(&imcmsghandler, &PlayerMgr::_SS_IM_FriendAgreeRequest); + RegisterNetMsgHandler(&imcmsghandler, &PlayerMgr::_SS_IM_FriendDeleteRequest); RegisterNetMsgHandler(&wsmsghandler, &WSListener::_SS_Ping); diff --git a/server/imserver/playermgr.cc b/server/imserver/playermgr.cc index 1ada794..d04f6ae 100644 --- a/server/imserver/playermgr.cc +++ b/server/imserver/playermgr.cc @@ -56,6 +56,16 @@ void PlayerMgr::_SS_IM_SendCustomMsg(f8::MsgHdr& hdr, const ss::SS_IM_SendCustom } } +void PlayerMgr::_SS_IM_FriendAgreeRequest(f8::MsgHdr& hdr, const ss::SS_IM_FriendAgreeRequest& msg) +{ + +} + +void PlayerMgr::_SS_IM_FriendDeleteRequest(f8::MsgHdr& hdr, const ss::SS_IM_FriendDeleteRequest& msg) +{ + +} + void PlayerMgr::_SS_IM_UpdateUserInfo(f8::MsgHdr& hdr, const ss::SS_IM_UpdateUserInfo& msg) { auto itr = watch_players_.find(msg.user_info().base_data().account_id()); diff --git a/server/imserver/playermgr.h b/server/imserver/playermgr.h index 2b9a970..552a51a 100644 --- a/server/imserver/playermgr.h +++ b/server/imserver/playermgr.h @@ -12,6 +12,8 @@ namespace ss class SS_IM_SendChatMsg; class SS_IM_SendCustomMsg; class SS_IM_UpdateUserInfo; + class SS_IM_FriendAgreeRequest; + class SS_IM_FriendDeleteRequest; } class Player; @@ -32,6 +34,8 @@ class PlayerMgr : public a8::Singleton void _SS_MS_PushUserList(f8::MsgHdr& hdr, const ss::SS_MS_PushUserList& msg); void _SS_IM_SendChatMsg(f8::MsgHdr& hdr, const ss::SS_IM_SendChatMsg& msg); void _SS_IM_SendCustomMsg(f8::MsgHdr& hdr, const ss::SS_IM_SendCustomMsg& msg); + void _SS_IM_FriendAgreeRequest(f8::MsgHdr& hdr, const ss::SS_IM_FriendAgreeRequest& msg); + void _SS_IM_FriendDeleteRequest(f8::MsgHdr& hdr, const ss::SS_IM_FriendDeleteRequest& msg); void _SS_IM_UpdateUserInfo(f8::MsgHdr& hdr, const ss::SS_IM_UpdateUserInfo& msg); diff --git a/server/imserver/synchelper.cc b/server/imserver/synchelper.cc index 67f8c6b..7ba4b18 100644 --- a/server/imserver/synchelper.cc +++ b/server/imserver/synchelper.cc @@ -69,3 +69,13 @@ void SyncHelper::BroadcastIMConnMsg(int msgid, ::google::protobuf::Message& msg) free(buff); } } + +void SyncHelper::_SS_IM_FriendAgreeResponse(f8::MsgHdr& hdr, const ss::SS_IM_FriendAgreeResponse& msg) +{ + +} + +void SyncHelper::_SS_IM_FriendDeleteResponse(f8::MsgHdr& hdr, const ss::SS_IM_FriendDeleteResponse& msg) +{ + +} diff --git a/server/imserver/synchelper.h b/server/imserver/synchelper.h index 299d26d..895eb37 100644 --- a/server/imserver/synchelper.h +++ b/server/imserver/synchelper.h @@ -1,8 +1,17 @@ #pragma once +namespace ss +{ + class SS_IM_FriendAgreeResponse; + class SS_IM_FriendDeleteResponse; +} + class Player; class SyncHelper : public a8::Singleton { + public: + enum { HID = HID_SyncHelper }; + private: SyncHelper() {}; friend class a8::Singleton; @@ -15,6 +24,9 @@ class SyncHelper : public a8::Singleton void SyncDeleteFriend(Player* hum, const std::string& target_id); void SyncUpdateFriend(Player* hum, const std::string& target_id); + void _SS_IM_FriendAgreeResponse(f8::MsgHdr& hdr, const ss::SS_IM_FriendAgreeResponse& msg); + void _SS_IM_FriendDeleteResponse(f8::MsgHdr& hdr, const ss::SS_IM_FriendDeleteResponse& msg); + private: template void BroadcastIMConnMsg(T& msg)