@@ -291,7 +291,6 @@ func (g *Gate) SendMessage(ctx context.Context, req *meta.GateSendMessageRequest
291291
292292 //防止乱写
293293 req .Msg .From = s .getID ()
294- req .Msg .Method = meta .Method_NONE
295294
296295 if err = g .store .newMessage (req .Msg ); err != nil {
297296 return & meta.GateSendMessageResponse {Header : & meta.ResponseHeader {Code : util .ErrorNewMessage , Msg : err .Error ()}}, nil
@@ -332,8 +331,8 @@ func (g *Gate) Heartbeat(ctx context.Context, req *meta.GateHeartbeatRequest) (*
332331 return & meta.GateHeartbeatResponse {}, nil
333332}
334333
335- // Notice recv Notice server Message, and send Message to client.
336- func (g * Gate ) Notice (ctx context.Context , req * meta.GateNoticeRequest ) (* meta.GateNoticeResponse , error ) {
334+ // Push recv Notice server Message, and send Message to client.
335+ func (g * Gate ) Push (ctx context.Context , req * meta.GatePushRequest ) (* meta.GatePushResponse , error ) {
337336 log .Debugf ("begin PushID:%v msg:%v" , req .ID , req .Msg )
338337
339338 for _ , id := range req .ID {
@@ -342,54 +341,35 @@ func (g *Gate) Notice(ctx context.Context, req *meta.GateNoticeRequest) (*meta.G
342341 log .Debugf ("User:%d offline" , id .User )
343342 continue
344343 }
345- req .Msg .Before = id .Before
344+ req .Msg .Msg . Before = id .Before
346345 log .Debugf ("will push user:%d, msg:%v" , id .User , req .Msg )
347346 s .push <- req .Msg
348347 }
349348
350349 log .Debugf ("end PushID:%v msg:%v ok" , req .ID , req .Msg )
351350
352- return & meta.GateNoticeResponse {}, nil
351+ return & meta.GatePushResponse {}, nil
353352}
354353
355- // AddFriend 添加好友或确认接受添加.
356- func (g * Gate ) AddFriend (ctx context.Context , req * meta.GateAddFriendRequest ) (* meta.GateAddFriendResponse , error ) {
354+ // Friend 添加好友或确认接受添加.
355+ func (g * Gate ) Friend (ctx context.Context , req * meta.GateFriendRequest ) (* meta.GateFriendResponse , error ) {
357356 s , err := g .getOnlineSession (ctx )
358357 if err != nil {
359- return & meta.GateAddFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorGetOnlineSession , Msg : err .Error ()}}, nil
358+ return & meta.GateFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorGetOnlineSession , Msg : err .Error ()}}, nil
360359 }
361360
362361 //自己要把自己添加成好友
363362 if req .UserID == s .id {
364363 log .Infof ("%d add friend id:%d" , s .id , req .UserID )
365- return & meta.GateAddFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorFriendSelf , Msg : "Friend ID must not be Self ID" }}, nil
364+ return & meta.GateFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorFriendSelf , Msg : "Friend ID must not be Self ID" }}, nil
366365 }
367366
368- // 主动添加对方为好友,更新自己本地信息
369- state , err := g .store .addFriend (s .id , req .UserID , meta .FriendRelation_Active , req .Msg )
370- if err != nil {
371- log .Errorf ("%d addFriend:%d erorr:%s" , s .id , req .UserID , errors .ErrorStack (err ))
372- return & meta.GateAddFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorAddFriend , Msg : err .Error ()}}, nil
373- }
374-
375- // 被动添加好友,更新对方好友信息
376- if state , err = g .store .addFriend (req .UserID , s .id , meta .FriendRelation_Passive , req .Msg ); err != nil {
377- log .Errorf ("%d addFriend:%d erorr:%s" , s .id , req .UserID , errors .ErrorStack (err ))
378- return & meta.GateAddFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorAddFriend , Msg : err .Error ()}}, nil
379- }
380-
381- // 如果对方返回FriendRelation_Confirm,说明之前对方添加过自己, 只不过本地信息未更新,要先更新本地信息,再返回FriendRelation_Confirm
382- if state == meta .FriendRelation_Confirm {
383- // 正常流程走不到这里,除非是数据丢失了
384- _ , err := g .store .addFriend (s .id , req .UserID , meta .FriendRelation_Confirm , req .Msg )
385- if err != nil {
386- log .Errorf ("%d addFriend:%d erorr:%s" , s .id , req .UserID , errors .ErrorStack (err ))
387- return & meta.GateAddFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorAddFriend , Msg : err .Error ()}}, nil
388- }
389- return & meta.GateAddFriendResponse {Confirm : true }, nil
367+ if err = g .store .friend (s .id , req .UserID , req .Operate , req .Msg ); err != nil {
368+ log .Errorf ("%d friend:%d operate:%d erorr:%s" , s .id , req .UserID , req .Operate , errors .ErrorStack (err ))
369+ return & meta.GateFriendResponse {Header : & meta.ResponseHeader {Code : util .ErrorAddFriend , Msg : err .Error ()}}, nil
390370 }
391371
392- return & meta.GateAddFriendResponse {}, nil
372+ return & meta.GateFriendResponse {}, nil
393373}
394374
395375// LoadFriendList 加载好友列表
0 commit comments