diff --git a/protocol/userProxy.proto b/protocol/userProxy.proto index 7503b54723426b8730c811d06037604a92cd2580..f3c141c72099a21e9f194b6e6d4baffd1a2d4188 100644 --- a/protocol/userProxy.proto +++ b/protocol/userProxy.proto @@ -402,4 +402,10 @@ message CpUpgrade { User user2 = 2; uint32 cp_level = 3; string group_id = 4; +} + +/* id == 151 svip升级 */ +message SvipUpgrade { + User user = 1; + uint32 svip_level = 2; } \ No newline at end of file diff --git a/rpc/user_center_coder.go b/rpc/user_center_coder.go index 7971594bab4e1d6c4940663c96f4ff35f0e88b09..4caea3fa4f4cfdd892d8bdc4029495719b68556c 100644 --- a/rpc/user_center_coder.go +++ b/rpc/user_center_coder.go @@ -65,6 +65,7 @@ const ( MsgTypeSheepGameResult = 148 // 羊羊游戏结果 MsgTypeCpInvite = 149 // cp邀请 MsgTypeCpUpgrade = 150 // cp升级 + MsgTypeSvipUpgrade = 151 // svip升级 ) const ( diff --git a/rpc/user_center_func.go b/rpc/user_center_func.go index 3741418db86f03978a05fc091fb3f1477086c742..fbccb4f02da25f6835cf337a5a059579f5e2c598 100644 --- a/rpc/user_center_func.go +++ b/rpc/user_center_func.go @@ -359,3 +359,30 @@ func SendCpUpgrade(nick1, nick2, avatar1, avatar2 string, cpLevel uint32, groupI } return nil } + +// svip升级 +func SendSvipUpgrade(nick, avatar string, svipLevel uint32) error { + msg := &userProxy.SvipUpgrade{ + User: &userProxy.User{Nick: nick, Avatar: avatar}, + SvipLevel: svipLevel, + } + if buffer, err := proto.Marshal(msg); err == nil { + rspUids, err := broadcast(MsgTypeSvipUpgrade, buffer) + + //记录socket,注意闭包问题 + go func(userId uint64, msg *userProxy.SvipUpgrade, rspUids []uint64, err error) { + buf, _ := json.Marshal(msg) + AddRpcLog(MsgTypeSvipUpgrade, userId, string(buf[:]), rspUids, err) + }(0, msg, rspUids, err) + + if err != nil { + mylogrus.MyLog.Errorf("grpc SendSvipUpgrade send fail") + return err + } else { + mylogrus.MyLog.Info("grpc SendSvipUpgrade send success") + } + } else { + return err + } + return nil +}