From a89d617532846bb6d372f061d6483aed6ac66048 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Tue, 29 Mar 2022 11:27:19 +0800 Subject: [PATCH 01/41] group add --- go.mod | 2 +- go.sum | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 30e4daa6a..f005f9ce0 100644 --- a/go.mod +++ b/go.mod @@ -22,7 +22,7 @@ require ( github.com/gin-gonic/gin v1.7.0 github.com/go-playground/validator/v10 v10.4.1 github.com/go-sql-driver/mysql v1.6.0 // indirect - github.com/gogo/protobuf v1.3.2 // indirect + github.com/gogo/protobuf v1.3.2 github.com/golang-jwt/jwt/v4 v4.1.0 github.com/golang/protobuf v1.5.2 github.com/golang/snappy v0.0.4 // indirect diff --git a/go.sum b/go.sum index 1defffaf3..cec54f0ff 100644 --- a/go.sum +++ b/go.sum @@ -53,6 +53,7 @@ github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuy github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alibabacloud-go/darabonba-openapi v0.1.7/go.mod h1:6FV1Bt1AItYIlC2rVopPTumrRNtkfPBmrPVAZ8v2bLk= github.com/alibabacloud-go/darabonba-openapi v0.1.11 h1:w59gtSA0s87p0U5NNG/N/PIHsRP3rtj7qCP9hx9+GL8= github.com/alibabacloud-go/darabonba-openapi v0.1.11/go.mod h1:MPJMxv7HYrFm5m9uOZWkDYsAWyZztEgnBRfk9Fg0eIU= github.com/alibabacloud-go/darabonba-string v1.0.0/go.mod h1:93cTfV3vuPhhEwGGpKKqhVW4jLe7tDpo3LUM0i0g6mA= @@ -62,8 +63,11 @@ github.com/alibabacloud-go/dysmsapi-20170525/v2 v2.0.8 h1:KXMiCg99Jx7B6V+DlRFbWw github.com/alibabacloud-go/dysmsapi-20170525/v2 v2.0.8/go.mod h1:8aL6tSyQIWJygF7W/Vqxdf/QDbN2S+u57k36bEA8hD8= github.com/alibabacloud-go/endpoint-util v1.1.0 h1:r/4D3VSw888XGaeNpP994zDUaxdgTSHBbVfZlzf6b5Q= github.com/alibabacloud-go/endpoint-util v1.1.0/go.mod h1:O5FuCALmCKs2Ff7JFJMudHs0I5EBgecXXxZRyswlEjE= +github.com/alibabacloud-go/openapi-util v0.0.8/go.mod h1:sQuElr4ywwFRlCCberQwKRFhRzIyG4QTP/P4y1CJ6Ws= github.com/alibabacloud-go/openapi-util v0.0.9 h1:Z0DP4LFzkM/rW2nxOMiiLoQVZSeE3jVc5jrZ9Fd/UX0= github.com/alibabacloud-go/openapi-util v0.0.9/go.mod h1:sQuElr4ywwFRlCCberQwKRFhRzIyG4QTP/P4y1CJ6Ws= +github.com/alibabacloud-go/sts-20150401 v1.1.0 h1:1yVyKz02ES6aKo3xVjmoPLBH1OAmmSqPkhKRdjEkmYs= +github.com/alibabacloud-go/sts-20150401 v1.1.0/go.mod h1:QW4O/c7Hp4krHYt+6xwnoG8EyZW3V9GYkl6EgIBmxJc= github.com/alibabacloud-go/tea v1.1.0/go.mod h1:IkGyUSX4Ba1V+k4pCtJUc6jDpZLFph9QMy2VUPTwukg= github.com/alibabacloud-go/tea v1.1.7/go.mod h1:/tmnEaQMyb4Ky1/5D+SE1BAsa5zj/KeGOFfwYm3N/p4= github.com/alibabacloud-go/tea v1.1.8/go.mod h1:/tmnEaQMyb4Ky1/5D+SE1BAsa5zj/KeGOFfwYm3N/p4= @@ -1095,6 +1099,8 @@ gopkg.in/ini.v1 v1.56.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/ini.v1 v1.57.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/ini.v1 v1.63.2 h1:tGK/CyBg7SMzb60vP1M03vNZ3VDu3wGQJwn7Sxi9r3c= gopkg.in/ini.v1 v1.63.2/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/ini.v1 v1.66.2 h1:XfR1dOYubytKy4Shzc2LHrrGhU0lDCfDGG1yLPmpgsI= +gopkg.in/ini.v1 v1.66.2/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 h1:VpOs+IwYnYBaFnrNAeB8UUWtL3vEUnzSCL1nVjPhqrw= gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= From 764bc3feadccfc655c276a552b3d31746507dbb9 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 11:35:53 +0800 Subject: [PATCH 02/41] mute group --- pkg/proto/sdk_ws/ws.proto | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index 71b65611f..93d604a7c 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -261,6 +261,13 @@ message GroupDismissedTips{ int64 operationTime = 3; } +message GroupMemberInfoChangedTips{ + GroupInfo group = 1; + GroupMemberFullInfo opUser = 2; + int64 operationTime = 3; + GroupMemberFullInfo changedUserList = 4; +} + //////////////////////friend///////////////////// //message FriendInfo{ From 1aeff25316f9bdfdeafa442358c0b633c6c07680 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 11:48:17 +0800 Subject: [PATCH 03/41] mute group --- cmd/Open-IM-SDK-Core | 2 +- cmd/open_im_api/main.go | 6 +- internal/api/group/group.go | 128 ++++++++++++++++++++++++++++++ internal/rpc/group/group.go | 46 ++++++++--- pkg/base_info/group_api_struct.go | 35 ++++++++ pkg/common/constant/constant.go | 1 + pkg/common/utils/utils.go | 3 + 7 files changed, 209 insertions(+), 12 deletions(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 65f2ba789..a19440c3d 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 65f2ba78952e72f3f07590634e4e3e38897ead1e +Subproject commit a19440c3d6e6504655934cc432d8420bb1909816 diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index a7deb7dbd..2f93c97e8 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -67,7 +67,11 @@ func main() { groupRouterGroup.POST("/get_group_members_info", group.GetGroupMembersInfo) //1 groupRouterGroup.POST("/invite_user_to_group", group.InviteUserToGroup) //1 groupRouterGroup.POST("/get_joined_group_list", group.GetJoinedGroupList) //1 - groupRouterGroup.POST("/dismiss_group", group.DismissGroup) + groupRouterGroup.POST("/dismiss_group", group.DismissGroup) // + groupRouterGroup.POST("/mute_group_member", group.MuteGroupMember) + groupRouterGroup.POST("/cancel_mute_group_member", group.CancelMuteGroupMember) //MuteGroup + groupRouterGroup.POST("/mute_group", group.MuteGroup) + groupRouterGroup.POST("/cancel_mute_group", group.CancelMuteGroup) } //certificate authRouterGroup := r.Group("/auth") diff --git a/internal/api/group/group.go b/internal/api/group/group.go index 41b425d4c..35365cc10 100644 --- a/internal/api/group/group.go +++ b/internal/api/group/group.go @@ -568,3 +568,131 @@ func DismissGroup(c *gin.Context) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api return ", resp) c.JSON(http.StatusOK, resp) } + +func MuteGroupMember(c *gin.Context) { + params := api.MuteGroupMemberReq{} + if err := c.BindJSON(¶ms); err != nil { + log.NewError("0", "BindJSON failed ", err.Error()) + c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()}) + return + } + req := &rpc.MuteGroupMemberReq{} + utils.CopyStructFields(req, ¶ms) + var ok bool + ok, req.OpUserID = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + if !ok { + log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token")) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"}) + return + } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api args ", req.String()) + + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) + client := rpc.NewGroupClient(etcdConn) + reply, err := client.MuteGroupMember(context.Background(), req) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), " failed ", req.String()) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) + return + } + + resp := api.MuteGroupMemberResp{CommResp: api.CommResp{ErrCode: reply.CommonResp.ErrCode, ErrMsg: reply.CommonResp.ErrMsg}} + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api return ", resp) + c.JSON(http.StatusOK, resp) +} + +func CancelMuteGroupMember(c *gin.Context) { + params := api.CancelMuteGroupMemberReq{} + if err := c.BindJSON(¶ms); err != nil { + log.NewError("0", "BindJSON failed ", err.Error()) + c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()}) + return + } + req := &rpc.CancelMuteGroupMemberReq{} + utils.CopyStructFields(req, ¶ms) + var ok bool + ok, req.OpUserID = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + if !ok { + log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token")) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"}) + return + } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api args ", req.String()) + + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) + client := rpc.NewGroupClient(etcdConn) + reply, err := client.CancelMuteGroupMember(context.Background(), req) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), " failed ", req.String()) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) + return + } + + resp := api.CancelMuteGroupMemberResp{CommResp: api.CommResp{ErrCode: reply.CommonResp.ErrCode, ErrMsg: reply.CommonResp.ErrMsg}} + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api return ", resp) + c.JSON(http.StatusOK, resp) +} + +func MuteGroup(c *gin.Context) { + params := api.MuteGroupReq{} + if err := c.BindJSON(¶ms); err != nil { + log.NewError("0", "BindJSON failed ", err.Error()) + c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()}) + return + } + req := &rpc.MuteGroupReq{} + utils.CopyStructFields(req, ¶ms) + var ok bool + ok, req.OpUserID = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + if !ok { + log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token")) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"}) + return + } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api args ", req.String()) + + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) + client := rpc.NewGroupClient(etcdConn) + reply, err := client.MuteGroup(context.Background(), req) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), " failed ", req.String()) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) + return + } + + resp := api.MuteGroupResp{CommResp: api.CommResp{ErrCode: reply.CommonResp.ErrCode, ErrMsg: reply.CommonResp.ErrMsg}} + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api return ", resp) + c.JSON(http.StatusOK, resp) +} + +func CancelMuteGroup(c *gin.Context) { + params := api.CancelMuteGroupReq{} + if err := c.BindJSON(¶ms); err != nil { + log.NewError("0", "BindJSON failed ", err.Error()) + c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()}) + return + } + req := &rpc.CancelMuteGroupReq{} + utils.CopyStructFields(req, ¶ms) + var ok bool + ok, req.OpUserID = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + if !ok { + log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token")) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"}) + return + } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api args ", req.String()) + + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) + client := rpc.NewGroupClient(etcdConn) + reply, err := client.CancelMuteGroup(context.Background(), req) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), " failed ", req.String()) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": err.Error()}) + return + } + + resp := api.CancelMuteGroupResp{CommResp: api.CommResp{ErrCode: reply.CommonResp.ErrCode, ErrMsg: reply.CommonResp.ErrMsg}} + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), " api return ", resp) + c.JSON(http.StatusOK, resp) +} diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 6d9b9d910..98198f598 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -41,16 +41,16 @@ func NewGroupServer(port int) *groupServer { } func (s *groupServer) Run() { - log.NewInfo("0", "group rpc start ") + log.NewInfo("", "group rpc start ") ip := utils.ServerIP registerAddress := ip + ":" + strconv.Itoa(s.rpcPort) //listener network listener, err := net.Listen("tcp", registerAddress) if err != nil { - log.NewError("0", "Listen failed ", err.Error(), registerAddress) + log.NewError("", "Listen failed ", err.Error(), registerAddress) return } - log.NewInfo("0", "listen network success, ", registerAddress, listener) + log.NewInfo("", "listen network success, ", registerAddress, listener) defer listener.Close() //grpc server srv := grpc.NewServer() @@ -59,15 +59,15 @@ func (s *groupServer) Run() { pbGroup.RegisterGroupServer(srv, s) err = getcdv3.RegisterEtcd(s.etcdSchema, strings.Join(s.etcdAddr, ","), ip, s.rpcPort, s.rpcRegisterName, 10) if err != nil { - log.NewError("0", "RegisterEtcd failed ", err.Error()) + log.NewError("", "RegisterEtcd failed ", err.Error()) return } err = srv.Serve(listener) if err != nil { - log.NewError("0", "Serve failed ", err.Error()) + log.NewError("", "Serve failed ", err.Error()) return } - log.NewInfo("0", "group rpc success") + log.NewInfo("", "group rpc success") } func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupReq) (*pbGroup.CreateGroupResp, error) { @@ -355,7 +355,7 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou //remove var resp pbGroup.KickGroupMemberResp for _, v := range req.KickedUserIDList { - //owner cant kicked + //owner can‘t kicked if v == groupOwnerUserID { log.NewError(req.OperationID, "failed, can't kick owner ", v) resp.Id2ResultList = append(resp.Id2ResultList, &pbGroup.Id2Result{UserID: v, Result: -1}) @@ -970,7 +970,7 @@ func (s *groupServer) DismissGroup(ctx context.Context, req *pbGroup.DismissGrou func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGroupMemberReq) (*pbGroup.MuteGroupMemberResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc args ", req.String()) if !imdb.IsGroupOwnerAdmin(req.GroupID, req.UserID) && !token_verify.IsMangerUserID(req.OpUserID) { - log.Error(req.OperationID, "verify failed ", req.OpUserID, req.GroupID) + log.Error(req.OperationID, "verify failed ", req.GroupID, req.UserID) return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil } groupMemberInfo := db.GroupMember{GroupID: req.GroupID, UserID: req.UserID} @@ -1002,9 +1002,35 @@ func (s *groupServer) CancelMuteGroupMember(ctx context.Context, req *pbGroup.Ca } func (s *groupServer) MuteGroup(ctx context.Context, req *pbGroup.MuteGroupReq) (*pbGroup.MuteGroupResp, error) { - return nil, nil + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc args ", req.String()) + if !imdb.IsGroupOwnerAdmin(req.GroupID, req.OpUserID) && !token_verify.IsMangerUserID(req.OpUserID) { + log.Error(req.OperationID, "verify failed ", req.GroupID, req.GroupID) + return &pbGroup.MuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil + } + err := imdb.OperateGroupStatus(req.GroupID, constant.GroupStatusMuted) + if err != nil { + log.Error(req.OperationID, "OperateGroupStatus failed ", err.Error(), req.GroupID, constant.GroupStatusMuted) + return &pbGroup.MuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil + } + chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) + return &pbGroup.MuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } func (s *groupServer) CancelMuteGroup(ctx context.Context, req *pbGroup.CancelMuteGroupReq) (*pbGroup.CancelMuteGroupResp, error) { - return nil, nil + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc args ", req.String()) + if !imdb.IsGroupOwnerAdmin(req.GroupID, req.OpUserID) && !token_verify.IsMangerUserID(req.OpUserID) { + log.Error(req.OperationID, "verify failed ", req.OpUserID, req.GroupID) + return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil + } + groupInfo := db.Group{GroupID: req.GroupID} + + err := imdb.UpdateGroupInfoDefaultZero(groupInfo, map[string]interface{}{"status": constant.GroupOk}) + if err != nil { + log.Error(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), groupInfo) + return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil + } + chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) + return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } diff --git a/pkg/base_info/group_api_struct.go b/pkg/base_info/group_api_struct.go index 68df84731..47b6a6c67 100644 --- a/pkg/base_info/group_api_struct.go +++ b/pkg/base_info/group_api_struct.go @@ -185,3 +185,38 @@ type DismissGroupReq struct { type DismissGroupResp struct { CommResp } + +type MuteGroupMemberReq struct { + OperationID string `json:"operationID" binding:"required"` + GroupID string `json:"groupID" binding:"required"` + UserID string `json:"userID" binding:"required"` + MutedSeconds uint32 `json:"mutedSeconds" binding:"required"` +} +type MuteGroupMemberResp struct { + CommResp +} + +type CancelMuteGroupMemberReq struct { + OperationID string `json:"operationID" binding:"required"` + GroupID string `json:"groupID" binding:"required"` + UserID string `json:"userID" binding:"required"` +} +type CancelMuteGroupMemberResp struct { + CommResp +} + +type MuteGroupReq struct { + OperationID string `json:"operationID" binding:"required"` + GroupID string `json:"groupID" binding:"required"` +} +type MuteGroupResp struct { + CommResp +} + +type CancelMuteGroupReq struct { + OperationID string `json:"operationID" binding:"required"` + GroupID string `json:"groupID" binding:"required"` +} +type CancelMuteGroupResp struct { + CommResp +} diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index bfecd0872..0a1e38168 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -79,6 +79,7 @@ const ( MemberInvitedNotification = 1509 MemberEnterNotification = 1510 GroupDismissedNotification = 1511 + GroupMemberInfoChangedNotification = 1512 SignalingNotificationBegin = 1600 SignalingNotification = 1601 diff --git a/pkg/common/utils/utils.go b/pkg/common/utils/utils.go index bbd546225..514063755 100644 --- a/pkg/common/utils/utils.go +++ b/pkg/common/utils/utils.go @@ -119,6 +119,9 @@ func GroupMemberDBCopyOpenIM(dst *open_im_sdk.GroupMemberFullInfo, src *db.Group } dst.JoinTime = int32(src.JoinTime.Unix()) dst.MuteEndTime = uint32(src.JoinTime.Unix()) + if dst.MuteEndTime < uint32(time.Now().Unix()) { + dst.MuteEndTime = 0 + } return nil } From f6eef21b45b669d717a44a7840d1fff6d3b68742 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Tue, 29 Mar 2022 11:55:48 +0800 Subject: [PATCH 04/41] mute group --- pkg/proto/sdk_ws/ws.pb.go | 516 +++++++++++++++++++++----------------- 1 file changed, 290 insertions(+), 226 deletions(-) diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index b738d4218..9945fbc92 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -40,7 +40,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} } func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{0} + return fileDescriptor_ws_48b3765a4295b161, []int{0} } func (m *GroupInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfo.Unmarshal(m, b) @@ -165,7 +165,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{1} + return fileDescriptor_ws_48b3765a4295b161, []int{1} } func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) @@ -277,7 +277,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{2} + return fileDescriptor_ws_48b3765a4295b161, []int{2} } func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) @@ -352,7 +352,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} } func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{3} + return fileDescriptor_ws_48b3765a4295b161, []int{3} } func (m *UserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfo.Unmarshal(m, b) @@ -459,7 +459,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} } func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{4} + return fileDescriptor_ws_48b3765a4295b161, []int{4} } func (m *FriendInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfo.Unmarshal(m, b) @@ -544,7 +544,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} } func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{5} + return fileDescriptor_ws_48b3765a4295b161, []int{5} } func (m *BlackInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackInfo.Unmarshal(m, b) @@ -625,7 +625,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} } func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{6} + return fileDescriptor_ws_48b3765a4295b161, []int{6} } func (m *GroupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupRequest.Unmarshal(m, b) @@ -733,7 +733,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} } func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{7} + return fileDescriptor_ws_48b3765a4295b161, []int{7} } func (m *FriendRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendRequest.Unmarshal(m, b) @@ -871,7 +871,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{8} + return fileDescriptor_ws_48b3765a4295b161, []int{8} } func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) @@ -925,7 +925,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{9} + return fileDescriptor_ws_48b3765a4295b161, []int{9} } func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) @@ -976,7 +976,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{10} + return fileDescriptor_ws_48b3765a4295b161, []int{10} } func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) @@ -1008,7 +1008,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{11} + return fileDescriptor_ws_48b3765a4295b161, []int{11} } func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) @@ -1055,7 +1055,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{12} + return fileDescriptor_ws_48b3765a4295b161, []int{12} } func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) @@ -1124,7 +1124,7 @@ func (m *MsgData) Reset() { *m = MsgData{} } func (m *MsgData) String() string { return proto.CompactTextString(m) } func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{13} + return fileDescriptor_ws_48b3765a4295b161, []int{13} } func (m *MsgData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgData.Unmarshal(m, b) @@ -1285,7 +1285,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{14} + return fileDescriptor_ws_48b3765a4295b161, []int{14} } func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) @@ -1353,7 +1353,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} } func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{15} + return fileDescriptor_ws_48b3765a4295b161, []int{15} } func (m *TipsComm) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TipsComm.Unmarshal(m, b) @@ -1410,7 +1410,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{16} + return fileDescriptor_ws_48b3765a4295b161, []int{16} } func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) @@ -1479,7 +1479,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{17} + return fileDescriptor_ws_48b3765a4295b161, []int{17} } func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) @@ -1534,7 +1534,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{18} + return fileDescriptor_ws_48b3765a4295b161, []int{18} } func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) @@ -1590,7 +1590,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{19} + return fileDescriptor_ws_48b3765a4295b161, []int{19} } func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) @@ -1645,7 +1645,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{20} + return fileDescriptor_ws_48b3765a4295b161, []int{20} } func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) @@ -1700,7 +1700,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{21} + return fileDescriptor_ws_48b3765a4295b161, []int{21} } func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) @@ -1756,7 +1756,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{22} + return fileDescriptor_ws_48b3765a4295b161, []int{22} } func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) @@ -1819,7 +1819,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{23} + return fileDescriptor_ws_48b3765a4295b161, []int{23} } func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) @@ -1882,7 +1882,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{24} + return fileDescriptor_ws_48b3765a4295b161, []int{24} } func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) @@ -1944,7 +1944,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{25} + return fileDescriptor_ws_48b3765a4295b161, []int{25} } func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) @@ -1998,7 +1998,7 @@ func (m *GroupDismissedTips) Reset() { *m = GroupDismissedTips{} } func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) } func (*GroupDismissedTips) ProtoMessage() {} func (*GroupDismissedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{26} + return fileDescriptor_ws_48b3765a4295b161, []int{26} } func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b) @@ -2039,6 +2039,68 @@ func (m *GroupDismissedTips) GetOperationTime() int64 { return 0 } +type GroupMemberInfoChangedTips struct { + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + ChangedUserList *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUserList" json:"changedUserList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupMemberInfoChangedTips) Reset() { *m = GroupMemberInfoChangedTips{} } +func (m *GroupMemberInfoChangedTips) String() string { return proto.CompactTextString(m) } +func (*GroupMemberInfoChangedTips) ProtoMessage() {} +func (*GroupMemberInfoChangedTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_48b3765a4295b161, []int{27} +} +func (m *GroupMemberInfoChangedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMemberInfoChangedTips.Unmarshal(m, b) +} +func (m *GroupMemberInfoChangedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMemberInfoChangedTips.Marshal(b, m, deterministic) +} +func (dst *GroupMemberInfoChangedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMemberInfoChangedTips.Merge(dst, src) +} +func (m *GroupMemberInfoChangedTips) XXX_Size() int { + return xxx_messageInfo_GroupMemberInfoChangedTips.Size(m) +} +func (m *GroupMemberInfoChangedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMemberInfoChangedTips.DiscardUnknown(m) +} + +var xxx_messageInfo_GroupMemberInfoChangedTips proto.InternalMessageInfo + +func (m *GroupMemberInfoChangedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group + } + return nil +} + +func (m *GroupMemberInfoChangedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser + } + return nil +} + +func (m *GroupMemberInfoChangedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime + } + return 0 +} + +func (m *GroupMemberInfoChangedTips) GetChangedUserList() *GroupMemberFullInfo { + if m != nil { + return m.ChangedUserList + } + return nil +} + type FriendApplication struct { AddTime int64 `protobuf:"varint,1,opt,name=addTime" json:"addTime,omitempty"` AddSource string `protobuf:"bytes,2,opt,name=addSource" json:"addSource,omitempty"` @@ -2052,7 +2114,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} } func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{27} + return fileDescriptor_ws_48b3765a4295b161, []int{28} } func (m *FriendApplication) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplication.Unmarshal(m, b) @@ -2105,7 +2167,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} } func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{28} + return fileDescriptor_ws_48b3765a4295b161, []int{29} } func (m *FromToUserID) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FromToUserID.Unmarshal(m, b) @@ -2151,7 +2213,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{29} + return fileDescriptor_ws_48b3765a4295b161, []int{30} } func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) @@ -2191,7 +2253,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{30} + return fileDescriptor_ws_48b3765a4295b161, []int{31} } func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) @@ -2238,7 +2300,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{31} + return fileDescriptor_ws_48b3765a4295b161, []int{32} } func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) @@ -2286,7 +2348,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{32} + return fileDescriptor_ws_48b3765a4295b161, []int{33} } func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) @@ -2339,7 +2401,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{33} + return fileDescriptor_ws_48b3765a4295b161, []int{34} } func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) @@ -2377,7 +2439,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{34} + return fileDescriptor_ws_48b3765a4295b161, []int{35} } func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) @@ -2415,7 +2477,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{35} + return fileDescriptor_ws_48b3765a4295b161, []int{36} } func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) @@ -2453,7 +2515,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{36} + return fileDescriptor_ws_48b3765a4295b161, []int{37} } func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) @@ -2492,7 +2554,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{37} + return fileDescriptor_ws_48b3765a4295b161, []int{38} } func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) @@ -2531,7 +2593,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{38} + return fileDescriptor_ws_48b3765a4295b161, []int{39} } func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) @@ -2571,7 +2633,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} } func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{39} + return fileDescriptor_ws_48b3765a4295b161, []int{40} } func (m *RequestPagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RequestPagination.Unmarshal(m, b) @@ -2617,7 +2679,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{40} + return fileDescriptor_ws_48b3765a4295b161, []int{41} } func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) @@ -2670,7 +2732,7 @@ func (m *SignalReq) Reset() { *m = SignalReq{} } func (m *SignalReq) String() string { return proto.CompactTextString(m) } func (*SignalReq) ProtoMessage() {} func (*SignalReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{41} + return fileDescriptor_ws_48b3765a4295b161, []int{42} } func (m *SignalReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalReq.Unmarshal(m, b) @@ -2937,7 +2999,7 @@ func (m *SignalResp) Reset() { *m = SignalResp{} } func (m *SignalResp) String() string { return proto.CompactTextString(m) } func (*SignalResp) ProtoMessage() {} func (*SignalResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{42} + return fileDescriptor_ws_48b3765a4295b161, []int{43} } func (m *SignalResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalResp.Unmarshal(m, b) @@ -3205,7 +3267,7 @@ func (m *InvitationInfo) Reset() { *m = InvitationInfo{} } func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } func (*InvitationInfo) ProtoMessage() {} func (*InvitationInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{43} + return fileDescriptor_ws_48b3765a4295b161, []int{44} } func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) @@ -3301,7 +3363,7 @@ func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} } func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } func (*ParticipantMetaData) ProtoMessage() {} func (*ParticipantMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{44} + return fileDescriptor_ws_48b3765a4295b161, []int{45} } func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) @@ -3356,7 +3418,7 @@ func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} } func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteReq) ProtoMessage() {} func (*SignalInviteReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{45} + return fileDescriptor_ws_48b3765a4295b161, []int{46} } func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) @@ -3417,7 +3479,7 @@ func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} } func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteReply) ProtoMessage() {} func (*SignalInviteReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{46} + return fileDescriptor_ws_48b3765a4295b161, []int{47} } func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) @@ -3472,7 +3534,7 @@ func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{} func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReq) ProtoMessage() {} func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{47} + return fileDescriptor_ws_48b3765a4295b161, []int{48} } func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) @@ -3533,7 +3595,7 @@ func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupRep func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReply) ProtoMessage() {} func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{48} + return fileDescriptor_ws_48b3765a4295b161, []int{49} } func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) @@ -3588,7 +3650,7 @@ func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} } func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } func (*SignalCancelReq) ProtoMessage() {} func (*SignalCancelReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{49} + return fileDescriptor_ws_48b3765a4295b161, []int{50} } func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) @@ -3646,7 +3708,7 @@ func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} } func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } func (*SignalCancelReply) ProtoMessage() {} func (*SignalCancelReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{50} + return fileDescriptor_ws_48b3765a4295b161, []int{51} } func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) @@ -3681,7 +3743,7 @@ func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} } func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReq) ProtoMessage() {} func (*SignalAcceptReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{51} + return fileDescriptor_ws_48b3765a4295b161, []int{52} } func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) @@ -3749,7 +3811,7 @@ func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} } func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReply) ProtoMessage() {} func (*SignalAcceptReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{52} + return fileDescriptor_ws_48b3765a4295b161, []int{53} } func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) @@ -3803,7 +3865,7 @@ func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} } func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReq) ProtoMessage() {} func (*SignalHungUpReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{53} + return fileDescriptor_ws_48b3765a4295b161, []int{54} } func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) @@ -3854,7 +3916,7 @@ func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} } func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReply) ProtoMessage() {} func (*SignalHungUpReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{54} + return fileDescriptor_ws_48b3765a4295b161, []int{55} } func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) @@ -3889,7 +3951,7 @@ func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} } func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } func (*SignalRejectReq) ProtoMessage() {} func (*SignalRejectReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{55} + return fileDescriptor_ws_48b3765a4295b161, []int{56} } func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) @@ -3954,7 +4016,7 @@ func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} } func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } func (*SignalRejectReply) ProtoMessage() {} func (*SignalRejectReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{56} + return fileDescriptor_ws_48b3765a4295b161, []int{57} } func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) @@ -3988,7 +4050,7 @@ func (m *DelMsgListReq) Reset() { *m = DelMsgListReq{} } func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) } func (*DelMsgListReq) ProtoMessage() {} func (*DelMsgListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{57} + return fileDescriptor_ws_48b3765a4295b161, []int{58} } func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b) @@ -4048,7 +4110,7 @@ func (m *DelMsgListResp) Reset() { *m = DelMsgListResp{} } func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) } func (*DelMsgListResp) ProtoMessage() {} func (*DelMsgListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_a63d7f660800bc8e, []int{58} + return fileDescriptor_ws_48b3765a4295b161, []int{59} } func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b) @@ -4111,6 +4173,7 @@ func init() { proto.RegisterType((*MemberInvitedTips)(nil), "server_api_params.MemberInvitedTips") proto.RegisterType((*MemberEnterTips)(nil), "server_api_params.MemberEnterTips") proto.RegisterType((*GroupDismissedTips)(nil), "server_api_params.GroupDismissedTips") + proto.RegisterType((*GroupMemberInfoChangedTips)(nil), "server_api_params.GroupMemberInfoChangedTips") proto.RegisterType((*FriendApplication)(nil), "server_api_params.FriendApplication") proto.RegisterType((*FromToUserID)(nil), "server_api_params.FromToUserID") proto.RegisterType((*FriendApplicationTips)(nil), "server_api_params.FriendApplicationTips") @@ -4145,171 +4208,172 @@ func init() { proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp") } -func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_a63d7f660800bc8e) } - -var fileDescriptor_ws_a63d7f660800bc8e = []byte{ - // 2605 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x6f, 0x23, 0x49, - 0x15, 0xa7, 0xdb, 0xb1, 0x13, 0x3f, 0xc7, 0x71, 0xd2, 0x59, 0x82, 0x19, 0x66, 0x87, 0xd0, 0x8a, - 0x96, 0x61, 0x81, 0x2c, 0x1a, 0x84, 0x04, 0xbb, 0x30, 0x28, 0x1f, 0xf3, 0xb5, 0xc4, 0x33, 0xd9, - 0xf6, 0x0c, 0x8b, 0x00, 0x69, 0x54, 0x71, 0x57, 0x9c, 0xde, 0xb4, 0xab, 0xda, 0x5d, 0xdd, 0x99, - 0x89, 0x84, 0x84, 0x04, 0x12, 0xe2, 0xc6, 0x09, 0xae, 0x48, 0x5c, 0x10, 0x12, 0x5a, 0xed, 0x01, - 0x6e, 0x88, 0x13, 0xff, 0x00, 0x47, 0xc4, 0x8d, 0x33, 0x57, 0x0e, 0x48, 0x48, 0xa0, 0xfa, 0xe8, - 0xee, 0xaa, 0x6e, 0x3b, 0xf1, 0x5a, 0xd1, 0x0e, 0x68, 0xb8, 0xf9, 0xbd, 0xae, 0xf7, 0xea, 0xd5, - 0xef, 0x7d, 0xd4, 0xab, 0x2a, 0x43, 0x87, 0xf9, 0xa7, 0x4f, 0x9f, 0xb1, 0x37, 0x9e, 0xb1, 0xed, - 0x28, 0xa6, 0x09, 0x75, 0xd6, 0x18, 0x8e, 0xcf, 0x70, 0xfc, 0x14, 0x45, 0xc1, 0xd3, 0x08, 0xc5, - 0x68, 0xc4, 0xdc, 0x7f, 0xd8, 0xd0, 0xbc, 0x17, 0xd3, 0x34, 0x7a, 0x40, 0x8e, 0xa9, 0xd3, 0x85, - 0xc5, 0xa1, 0x20, 0xf6, 0xbb, 0xd6, 0xa6, 0x75, 0xb3, 0xe9, 0x65, 0xa4, 0x73, 0x1d, 0x9a, 0xe2, - 0xe7, 0x43, 0x34, 0xc2, 0x5d, 0x5b, 0x7c, 0x2b, 0x18, 0x8e, 0x0b, 0xcb, 0x84, 0x26, 0xc1, 0x71, - 0x30, 0x40, 0x49, 0x40, 0x49, 0xb7, 0x26, 0x06, 0x18, 0x3c, 0x3e, 0x26, 0x20, 0x49, 0x4c, 0xfd, - 0x74, 0x20, 0xc6, 0x2c, 0xc8, 0x31, 0x3a, 0x8f, 0xcf, 0x7f, 0x8c, 0x06, 0xf8, 0x89, 0x77, 0xd0, - 0xad, 0xcb, 0xf9, 0x15, 0xe9, 0x6c, 0x42, 0x8b, 0x3e, 0x23, 0x38, 0x7e, 0xc2, 0x70, 0xfc, 0x60, - 0xbf, 0xdb, 0x10, 0x5f, 0x75, 0x96, 0x73, 0x03, 0x60, 0x10, 0x63, 0x94, 0xe0, 0xc7, 0xc1, 0x08, - 0x77, 0x17, 0x37, 0xad, 0x9b, 0x6d, 0x4f, 0xe3, 0x70, 0x0d, 0x23, 0x3c, 0x3a, 0xc2, 0xf1, 0x1e, - 0x4d, 0x49, 0xd2, 0x5d, 0x12, 0x03, 0x74, 0x96, 0xb3, 0x02, 0x36, 0x7e, 0xde, 0x6d, 0x0a, 0xd5, - 0x36, 0x7e, 0xee, 0x6c, 0x40, 0x83, 0x25, 0x28, 0x49, 0x59, 0x17, 0x36, 0xad, 0x9b, 0x75, 0x4f, - 0x51, 0xce, 0x16, 0xb4, 0x85, 0x5e, 0x9a, 0x59, 0xd3, 0x12, 0x22, 0x26, 0x33, 0x47, 0xec, 0xf1, - 0x79, 0x84, 0xbb, 0xcb, 0x42, 0x41, 0xc1, 0x70, 0xff, 0x62, 0xc3, 0xba, 0xc0, 0xbd, 0x27, 0x0c, - 0xb8, 0x9b, 0x86, 0xe1, 0x25, 0x1e, 0xd8, 0x80, 0x46, 0x2a, 0xa7, 0x93, 0xf0, 0x2b, 0x8a, 0xcf, - 0x13, 0xd3, 0x10, 0x1f, 0xe0, 0x33, 0x1c, 0x0a, 0xe0, 0xeb, 0x5e, 0xc1, 0x70, 0xae, 0xc1, 0xd2, - 0x7b, 0x34, 0x20, 0x02, 0x93, 0x05, 0xf1, 0x31, 0xa7, 0xf9, 0x37, 0x12, 0x0c, 0x4e, 0x09, 0x77, - 0xa9, 0x84, 0x3b, 0xa7, 0x75, 0x4f, 0x34, 0x4c, 0x4f, 0xbc, 0x06, 0x2b, 0x28, 0x8a, 0x7a, 0x88, - 0x0c, 0x71, 0x2c, 0x27, 0x5d, 0x14, 0x7a, 0x4b, 0x5c, 0xee, 0x0f, 0x3e, 0x53, 0x9f, 0xa6, 0xf1, - 0x00, 0x0b, 0xb8, 0xeb, 0x9e, 0xc6, 0xe1, 0x7a, 0x68, 0x84, 0x63, 0x0d, 0x46, 0x89, 0x7c, 0x89, - 0xab, 0xbc, 0x02, 0xb9, 0x57, 0xb8, 0x1f, 0xd3, 0x04, 0xdf, 0x21, 0xbe, 0x58, 0x54, 0x4b, 0xf9, - 0xb1, 0x60, 0xb9, 0x3f, 0xb1, 0x60, 0xe5, 0x30, 0x3d, 0x0a, 0x83, 0x81, 0x50, 0xc1, 0x61, 0x2d, - 0xc0, 0xb3, 0x0c, 0xf0, 0x74, 0x08, 0xec, 0xe9, 0x10, 0xd4, 0x4c, 0x08, 0x36, 0xa0, 0x31, 0xc4, - 0xc4, 0xc7, 0xb1, 0x82, 0x54, 0x51, 0xca, 0xd4, 0x7a, 0x66, 0xaa, 0xfb, 0x0b, 0x1b, 0x96, 0x3e, - 0x62, 0x13, 0x36, 0xa1, 0x15, 0x9d, 0x50, 0x82, 0x1f, 0xa6, 0x3c, 0xac, 0x94, 0x2d, 0x3a, 0xcb, - 0x79, 0x05, 0xea, 0x47, 0x41, 0x9c, 0x9c, 0x08, 0xbf, 0xb6, 0x3d, 0x49, 0x70, 0x2e, 0x1e, 0xa1, - 0x40, 0x3a, 0xb3, 0xe9, 0x49, 0x42, 0x2d, 0x68, 0x29, 0xc7, 0xde, 0xcc, 0xb1, 0x66, 0x25, 0xc7, - 0xaa, 0xb1, 0x01, 0x93, 0x62, 0xc3, 0xfd, 0xa7, 0x05, 0x70, 0x37, 0x0e, 0x30, 0xf1, 0x05, 0x34, - 0xa5, 0xe4, 0xb6, 0xaa, 0xc9, 0xbd, 0x01, 0x8d, 0x18, 0x8f, 0x50, 0x7c, 0x9a, 0x05, 0xbf, 0xa4, - 0x4a, 0x06, 0xd5, 0x2a, 0x06, 0xbd, 0x05, 0x70, 0x2c, 0xe6, 0xe1, 0x7a, 0x04, 0x54, 0xad, 0x5b, - 0x9f, 0xda, 0xae, 0x94, 0xc1, 0xed, 0xcc, 0x4b, 0x9e, 0x36, 0x9c, 0x67, 0x16, 0xf2, 0x7d, 0x15, - 0xc0, 0x75, 0x99, 0x59, 0x39, 0x63, 0x42, 0xfc, 0x36, 0x2e, 0x88, 0xdf, 0xc5, 0x3c, 0x28, 0xfe, - 0x6e, 0x41, 0x73, 0x37, 0x44, 0x83, 0xd3, 0x19, 0x97, 0x6e, 0x2e, 0xd1, 0xae, 0x2c, 0xf1, 0x1e, - 0xb4, 0x8f, 0xb8, 0xba, 0x6c, 0x09, 0x02, 0x85, 0xd6, 0xad, 0xcf, 0x4c, 0x58, 0xa5, 0x99, 0x14, - 0x9e, 0x29, 0x67, 0x2e, 0x77, 0xe1, 0xf2, 0xe5, 0xd6, 0x2f, 0x58, 0x6e, 0x23, 0x5f, 0xee, 0x9f, - 0x6d, 0x58, 0x16, 0x85, 0xce, 0xc3, 0xe3, 0x14, 0xb3, 0xc4, 0xf9, 0x06, 0x2c, 0xa5, 0x99, 0xa9, - 0xd6, 0xac, 0xa6, 0xe6, 0x22, 0xce, 0x9b, 0xaa, 0xac, 0x0a, 0x79, 0x5b, 0xc8, 0x5f, 0x9f, 0x20, - 0x9f, 0xef, 0x69, 0x5e, 0x31, 0x9c, 0x6f, 0x41, 0x27, 0x88, 0xf8, 0x21, 0xf6, 0x30, 0x4b, 0xc3, - 0x44, 0x55, 0x4b, 0x83, 0x27, 0x23, 0x6d, 0xdc, 0x63, 0x43, 0xb5, 0x41, 0x29, 0x8a, 0xa3, 0x23, - 0xc7, 0xf1, 0x4f, 0x72, 0xe9, 0x05, 0x83, 0x27, 0x6a, 0x8c, 0xc7, 0xc2, 0x43, 0x32, 0xad, 0x32, - 0xb2, 0x98, 0x53, 0xa1, 0x26, 0x03, 0xc1, 0xe0, 0x71, 0x17, 0x4b, 0x5a, 0x28, 0x90, 0x3b, 0x93, - 0xc6, 0x29, 0x6f, 0x4c, 0xee, 0x5f, 0x6b, 0xd0, 0x96, 0xe9, 0x93, 0x81, 0x7a, 0x83, 0xc7, 0x39, - 0x1d, 0x19, 0x51, 0xa4, 0x71, 0xb8, 0x15, 0x9c, 0x7a, 0x68, 0x16, 0x1a, 0x83, 0xc7, 0x43, 0x91, - 0xd3, 0x77, 0x8d, 0x82, 0xa3, 0xb3, 0xb2, 0x59, 0xee, 0xe9, 0x85, 0x47, 0xe3, 0xf0, 0x52, 0x96, - 0x50, 0x23, 0x3a, 0x72, 0x9a, 0xcb, 0x26, 0x34, 0x9f, 0x5f, 0xc6, 0x87, 0xc6, 0xe1, 0xf8, 0x26, - 0x34, 0x9b, 0x5b, 0x82, 0x54, 0x30, 0xa4, 0x66, 0x35, 0xaf, 0xdc, 0x4a, 0x72, 0xba, 0xe2, 0xd5, - 0xe6, 0x85, 0x5e, 0x05, 0xc3, 0xab, 0x66, 0x72, 0xb5, 0x2a, 0xc9, 0xb5, 0x05, 0x6d, 0xa9, 0x27, - 0x0b, 0xfa, 0x65, 0xb9, 0xd5, 0x1b, 0x4c, 0x33, 0x36, 0xda, 0xe5, 0xd8, 0x30, 0xbd, 0xbb, 0x32, - 0xc5, 0xbb, 0x9d, 0xdc, 0xbb, 0x3f, 0x80, 0xee, 0x61, 0x1a, 0x86, 0x3d, 0xcc, 0x18, 0x1a, 0xe2, - 0xdd, 0xf3, 0x3e, 0x1e, 0x1f, 0x04, 0x2c, 0xf1, 0x30, 0x8b, 0x78, 0x9c, 0xe1, 0x38, 0xde, 0xa3, - 0x3e, 0x16, 0x4e, 0xae, 0x7b, 0x19, 0xc9, 0x57, 0x88, 0xe3, 0x98, 0x1b, 0xa0, 0x2a, 0xa4, 0xa4, - 0x9c, 0x6d, 0x58, 0x08, 0x03, 0xc6, 0x63, 0xbd, 0x76, 0xb3, 0x75, 0xeb, 0xda, 0x84, 0x54, 0xe9, - 0xb1, 0xe1, 0x3e, 0x4a, 0x90, 0x27, 0xc6, 0xb9, 0x23, 0xf8, 0xc4, 0xe4, 0xd9, 0xc7, 0x53, 0x77, - 0x30, 0x5e, 0xc3, 0x44, 0x11, 0x08, 0x28, 0xc9, 0xdb, 0x13, 0x9d, 0xc5, 0xcd, 0x66, 0x52, 0x8f, - 0xb0, 0xa3, 0xed, 0x65, 0xa4, 0xfb, 0x0a, 0x38, 0xf7, 0x70, 0xd2, 0x43, 0xcf, 0x77, 0x88, 0xdf, - 0x0b, 0x48, 0x1f, 0x8f, 0x3d, 0x3c, 0x76, 0xef, 0xc0, 0x7a, 0x85, 0xcb, 0x22, 0x6e, 0xc0, 0x08, - 0x3d, 0xef, 0xe3, 0xb1, 0x30, 0xa0, 0xed, 0x29, 0x4a, 0xf0, 0xc5, 0x28, 0x55, 0x1e, 0x15, 0xe5, - 0x8e, 0xa1, 0xc3, 0x3d, 0xd4, 0xc7, 0xc4, 0xef, 0xb1, 0xa1, 0x50, 0xb1, 0x09, 0x2d, 0x89, 0x40, - 0x8f, 0x0d, 0x8b, 0x7a, 0xab, 0xb1, 0xf8, 0x88, 0x41, 0x18, 0x60, 0x92, 0xc8, 0x11, 0x6a, 0x35, - 0x1a, 0x8b, 0x07, 0x23, 0xc3, 0xaa, 0xfd, 0xe0, 0x59, 0x52, 0xf3, 0x72, 0xda, 0xfd, 0x43, 0x1d, - 0x16, 0x15, 0xa0, 0xa2, 0x7f, 0xe4, 0x5b, 0x5c, 0x8e, 0x97, 0xa4, 0x64, 0x30, 0x0e, 0xce, 0x8a, - 0x4e, 0x4e, 0x52, 0x7a, 0xef, 0x57, 0x33, 0x7b, 0xbf, 0x92, 0x4d, 0x0b, 0x55, 0x9b, 0x4a, 0xeb, - 0xaa, 0x57, 0xd7, 0xf5, 0x3a, 0xac, 0x32, 0x91, 0x30, 0x87, 0x21, 0x4a, 0x8e, 0x69, 0x3c, 0x52, - 0x3b, 0x56, 0xdd, 0xab, 0xf0, 0x79, 0xb1, 0x97, 0xbc, 0x3c, 0x61, 0x65, 0x46, 0x96, 0xb8, 0x3c, - 0x3d, 0x24, 0x27, 0x4b, 0x5c, 0xd9, 0x2a, 0x98, 0x4c, 0x69, 0x1b, 0x63, 0x01, 0x25, 0xa2, 0x17, - 0x96, 0xf9, 0xa9, 0xb3, 0xf8, 0xca, 0x47, 0x6c, 0x78, 0x37, 0xa6, 0x23, 0xd5, 0x30, 0x64, 0xa4, - 0x58, 0x39, 0x25, 0x09, 0x26, 0x89, 0x90, 0x6d, 0x49, 0x59, 0x8d, 0xc5, 0x65, 0x15, 0x29, 0x92, - 0x73, 0xd9, 0xcb, 0x48, 0x67, 0x15, 0x6a, 0x0c, 0x8f, 0x55, 0xc6, 0xf1, 0x9f, 0x86, 0xe7, 0x3a, - 0xa6, 0xe7, 0x4a, 0xa5, 0x60, 0x55, 0x7c, 0xd5, 0x4b, 0x41, 0x71, 0x1a, 0x58, 0x33, 0x4e, 0x03, - 0x3b, 0xb0, 0x48, 0x23, 0x1e, 0xe7, 0xac, 0xeb, 0x88, 0x1c, 0xfb, 0xec, 0xf4, 0x1c, 0xdb, 0x7e, - 0x24, 0x47, 0xde, 0x21, 0x49, 0x7c, 0xee, 0x65, 0x72, 0xce, 0x01, 0x74, 0xe8, 0xf1, 0x71, 0x18, - 0x10, 0x7c, 0x98, 0xb2, 0x13, 0xb1, 0xb3, 0xad, 0x8b, 0x9d, 0xcd, 0x9d, 0xa0, 0xea, 0x91, 0x39, - 0xd2, 0x2b, 0x8b, 0x5e, 0x7b, 0x13, 0x96, 0xf5, 0x69, 0x38, 0x0c, 0xa7, 0xf8, 0x5c, 0xc5, 0x20, - 0xff, 0xc9, 0x9b, 0xbd, 0x33, 0x14, 0xa6, 0x72, 0x1b, 0x58, 0xf2, 0x24, 0xf1, 0xa6, 0xfd, 0x55, - 0xcb, 0xfd, 0xb9, 0x05, 0x9d, 0xd2, 0x04, 0x7c, 0x74, 0x12, 0x24, 0x21, 0x56, 0x1a, 0x24, 0xe1, - 0x38, 0xb0, 0xe0, 0x63, 0x36, 0x50, 0x21, 0x2c, 0x7e, 0xab, 0x4a, 0x56, 0xcb, 0xdb, 0x45, 0x7e, - 0xe4, 0x7b, 0xd4, 0xe7, 0x8a, 0xfa, 0x34, 0x25, 0x7e, 0x7e, 0xe4, 0xd3, 0x78, 0x3c, 0x84, 0x82, - 0x47, 0xfd, 0x5d, 0xe4, 0x0f, 0xb1, 0x3c, 0x98, 0xd5, 0x85, 0x4d, 0x26, 0xd3, 0xf5, 0x61, 0xe9, - 0x71, 0x10, 0xb1, 0x3d, 0x3a, 0x1a, 0x71, 0x47, 0xf8, 0x38, 0xe1, 0xbd, 0xaa, 0x25, 0xfc, 0xad, - 0x28, 0x1e, 0x2a, 0x3e, 0x3e, 0x46, 0x69, 0x98, 0xf0, 0xa1, 0x59, 0xe2, 0x6a, 0x2c, 0x71, 0x24, - 0x61, 0x94, 0xec, 0x4b, 0x69, 0x69, 0xa7, 0xc6, 0x71, 0xff, 0x64, 0xc3, 0xaa, 0x68, 0x1c, 0xf6, - 0x84, 0xdb, 0x7d, 0x21, 0x74, 0x0b, 0xea, 0x22, 0x0d, 0x55, 0xb3, 0x72, 0x71, 0xb3, 0x21, 0x87, - 0x3a, 0xb7, 0xa1, 0x41, 0x23, 0xd1, 0x72, 0xca, 0x0e, 0xe5, 0xb5, 0x69, 0x42, 0xe6, 0xe9, 0xcf, - 0x53, 0x52, 0xce, 0x5d, 0x00, 0x79, 0x30, 0x3d, 0x28, 0x4a, 0xf7, 0xac, 0x3a, 0x34, 0x49, 0x0e, - 0x6e, 0x5e, 0x86, 0xf3, 0x23, 0x60, 0xcd, 0x33, 0x99, 0xce, 0x43, 0x58, 0x11, 0x66, 0x3f, 0xca, - 0xba, 0x4e, 0xe1, 0x83, 0xd9, 0x67, 0x2c, 0x49, 0xbb, 0xbf, 0xb2, 0x14, 0x8c, 0xfc, 0x6b, 0x1f, - 0x4b, 0xec, 0x0b, 0x48, 0xac, 0xb9, 0x20, 0xb9, 0x06, 0x4b, 0xfc, 0x8c, 0x97, 0x37, 0xc1, 0x35, - 0x2f, 0xa7, 0x0b, 0x17, 0xd5, 0x66, 0x76, 0x91, 0xfb, 0x6b, 0x0b, 0xba, 0x6f, 0xd3, 0x80, 0x88, - 0x0f, 0x3b, 0x51, 0x14, 0xaa, 0x7b, 0x8a, 0xb9, 0x7d, 0xfe, 0x4d, 0x68, 0x22, 0xa9, 0x86, 0x24, - 0xca, 0xed, 0x33, 0x34, 0xb6, 0x85, 0x8c, 0xd6, 0xa3, 0xd4, 0xf4, 0x1e, 0xc5, 0x7d, 0xdf, 0x82, - 0x15, 0x09, 0xca, 0x3b, 0x69, 0x90, 0xcc, 0x6d, 0xdf, 0x2e, 0x2c, 0x8d, 0xd3, 0x20, 0x99, 0x23, - 0x2a, 0x73, 0xb9, 0x6a, 0x3c, 0xd5, 0x26, 0xc4, 0x93, 0xfb, 0x81, 0x05, 0xd7, 0xcb, 0xb0, 0xee, - 0x0c, 0x06, 0x38, 0x7a, 0x91, 0x29, 0x65, 0xf4, 0x68, 0x0b, 0xa5, 0x1e, 0x6d, 0xa2, 0xc9, 0x1e, - 0x7e, 0x0f, 0x0f, 0xfe, 0x7b, 0x4d, 0xfe, 0xb1, 0x0d, 0x9f, 0xbc, 0x97, 0x27, 0xde, 0xe3, 0x18, - 0x11, 0x76, 0x8c, 0xe3, 0xf8, 0x05, 0xda, 0x7b, 0x00, 0x6d, 0x82, 0x9f, 0x15, 0x36, 0xa9, 0x74, - 0x9c, 0x55, 0x8d, 0x29, 0x3c, 0x5b, 0xed, 0x72, 0xff, 0x65, 0xc1, 0xaa, 0xd4, 0xf3, 0xad, 0x60, - 0x70, 0xfa, 0x02, 0x17, 0xff, 0x10, 0x56, 0x4e, 0x85, 0x05, 0x9c, 0x9a, 0xa3, 0x6c, 0x97, 0xa4, - 0x67, 0x5c, 0xfe, 0xbf, 0x2d, 0x58, 0x93, 0x8a, 0x1e, 0x90, 0xb3, 0xe0, 0x45, 0x06, 0xeb, 0x21, - 0x74, 0x02, 0x69, 0xc2, 0x9c, 0x00, 0x94, 0xc5, 0x67, 0x44, 0xe0, 0xf7, 0x16, 0x74, 0xa4, 0xa6, - 0x3b, 0x24, 0xc1, 0xf1, 0xdc, 0xeb, 0xbf, 0x0f, 0x2d, 0x4c, 0x92, 0x18, 0x91, 0x79, 0x2a, 0xa4, - 0x2e, 0x3a, 0x63, 0x91, 0x7c, 0xdf, 0x02, 0x47, 0xa8, 0xda, 0x0f, 0xd8, 0x28, 0x60, 0xec, 0x05, - 0xba, 0x6e, 0x36, 0x83, 0x4f, 0x61, 0x4d, 0xde, 0x39, 0x68, 0x25, 0x92, 0x37, 0xdf, 0xc8, 0x97, - 0xfd, 0xb4, 0x25, 0x84, 0x32, 0xd2, 0xbc, 0x4d, 0x52, 0x0f, 0x06, 0xc5, 0x6d, 0xd2, 0x0d, 0x00, - 0xe4, 0xfb, 0xef, 0xd2, 0xd8, 0x0f, 0x48, 0xb6, 0xdf, 0x69, 0x1c, 0xf7, 0x6d, 0x58, 0xe6, 0xed, - 0xff, 0x63, 0xed, 0xf6, 0xe0, 0xc2, 0xfb, 0x0d, 0xfd, 0xe6, 0xc1, 0x36, 0x6f, 0x1e, 0xdc, 0xef, - 0xc3, 0xc7, 0x2b, 0x86, 0x0b, 0xac, 0xf7, 0xe4, 0xa5, 0x48, 0x36, 0x89, 0x82, 0xfc, 0xd3, 0x13, - 0xd0, 0xd3, 0x6d, 0xf1, 0x0c, 0x21, 0xf7, 0x47, 0x16, 0xbc, 0x5a, 0x51, 0xbf, 0x13, 0x45, 0x31, - 0x3d, 0x53, 0x2e, 0xbd, 0x8a, 0x69, 0xcc, 0xbd, 0xc0, 0x2e, 0xef, 0x05, 0x13, 0x8d, 0x30, 0xf6, - 0xaf, 0x8f, 0xc0, 0x88, 0xdf, 0x58, 0xd0, 0x51, 0x46, 0xf8, 0xbe, 0x9a, 0xf6, 0x2b, 0xd0, 0x90, - 0x17, 0xaa, 0x6a, 0xc2, 0x57, 0x27, 0x4e, 0x98, 0x5d, 0x04, 0x7b, 0x6a, 0x70, 0x35, 0x22, 0xed, - 0x49, 0x7d, 0xeb, 0xd7, 0xf2, 0xb8, 0x9f, 0xf9, 0xca, 0x53, 0x09, 0xb8, 0xdf, 0xc9, 0x82, 0x79, - 0x1f, 0x87, 0xf8, 0x2a, 0x31, 0x72, 0x9f, 0xc0, 0x8a, 0xb8, 0xdd, 0x2d, 0x30, 0xb8, 0x12, 0xb5, - 0xef, 0xc2, 0xaa, 0x50, 0x7b, 0xe5, 0xf6, 0xe6, 0xd9, 0xc1, 0xf1, 0xd9, 0x3b, 0x41, 0x64, 0x78, - 0x95, 0xda, 0xbf, 0x08, 0xeb, 0x19, 0xf6, 0x4f, 0x22, 0x3f, 0x3f, 0x53, 0x4d, 0xb9, 0x49, 0x72, - 0xbf, 0x04, 0x1b, 0x7b, 0x94, 0x9c, 0xe1, 0x98, 0x09, 0x2f, 0x4b, 0x91, 0x4c, 0xc2, 0x48, 0x7e, - 0x45, 0xb9, 0x7d, 0x58, 0x53, 0x77, 0xa0, 0x87, 0x68, 0x18, 0x10, 0x59, 0x95, 0x6e, 0x00, 0x44, - 0x68, 0x98, 0xbd, 0x81, 0xc8, 0x8b, 0x32, 0x8d, 0xc3, 0xbf, 0xb3, 0x13, 0xfa, 0x4c, 0x7d, 0xb7, - 0xe5, 0xf7, 0x82, 0xe3, 0x7e, 0x1b, 0x1c, 0x0f, 0xb3, 0x88, 0x12, 0x86, 0x35, 0xad, 0x9b, 0xd0, - 0xda, 0x4b, 0xe3, 0x18, 0x13, 0x3e, 0x55, 0xf6, 0x20, 0xa0, 0xb3, 0xb8, 0xde, 0x7e, 0xa1, 0x57, - 0x5e, 0xae, 0x68, 0x1c, 0xf7, 0x97, 0x35, 0x68, 0xf6, 0x83, 0x21, 0x41, 0xa1, 0x87, 0xc7, 0xce, - 0xd7, 0xa1, 0x21, 0xb7, 0x3c, 0x05, 0xed, 0xa4, 0xc3, 0xbe, 0x1c, 0x2d, 0xf7, 0x76, 0x0f, 0x8f, - 0xef, 0x7f, 0xcc, 0x53, 0x32, 0xce, 0x3b, 0xd0, 0x96, 0xbf, 0x1e, 0xc8, 0x23, 0x8c, 0xaa, 0xfd, - 0x9f, 0xbb, 0x44, 0x89, 0x1a, 0x2d, 0x75, 0x99, 0x1a, 0xb8, 0x41, 0x03, 0x44, 0x06, 0xea, 0x19, - 0xf1, 0x22, 0x83, 0xf6, 0xc4, 0x30, 0x65, 0x90, 0x94, 0xe1, 0xd2, 0x48, 0x34, 0xf9, 0xea, 0x99, - 0x65, 0xba, 0xb4, 0x3c, 0x0b, 0x28, 0x69, 0x29, 0xc3, 0xa5, 0x4f, 0x52, 0x32, 0x7c, 0x12, 0xa9, - 0xb3, 0xe7, 0x74, 0xe9, 0xfb, 0x62, 0x98, 0x92, 0x96, 0x32, 0x5c, 0x3a, 0x16, 0xd5, 0x4e, 0x80, - 0x7e, 0x91, 0xb4, 0x2c, 0x8a, 0x4a, 0x5a, 0xca, 0xec, 0x36, 0x61, 0x31, 0x42, 0xe7, 0x21, 0x45, - 0xbe, 0xfb, 0xdb, 0x1a, 0x40, 0x36, 0x90, 0x89, 0x9d, 0xd5, 0x70, 0xd1, 0xd6, 0xa5, 0x2e, 0x8a, - 0xc2, 0x73, 0xcd, 0x49, 0xfd, 0xc9, 0x4e, 0xfa, 0xfc, 0xac, 0x4e, 0x92, 0xda, 0x4a, 0x6e, 0xba, - 0x5d, 0x72, 0xd3, 0xd6, 0xa5, 0x6e, 0x52, 0x46, 0x29, 0x47, 0xdd, 0x2e, 0x39, 0x6a, 0xeb, 0x52, - 0x47, 0x29, 0x79, 0xe5, 0xaa, 0xdb, 0x25, 0x57, 0x6d, 0x5d, 0xea, 0x2a, 0x25, 0xaf, 0x9c, 0x75, - 0xbb, 0xe4, 0xac, 0xad, 0x4b, 0x9d, 0xa5, 0xe4, 0xab, 0xee, 0xfa, 0xc0, 0x86, 0x15, 0x01, 0x99, - 0xbc, 0x68, 0x26, 0xc7, 0x54, 0xdc, 0x27, 0x09, 0xb8, 0xcc, 0x27, 0x35, 0x93, 0xe9, 0x7c, 0x01, - 0xd6, 0x24, 0x43, 0x3d, 0xc1, 0x88, 0x7e, 0xd5, 0xde, 0xac, 0xdd, 0x6c, 0x7a, 0xd5, 0x0f, 0xe2, - 0x6a, 0x30, 0x65, 0x09, 0x1d, 0xed, 0xa3, 0x04, 0x65, 0xdd, 0x4a, 0xc1, 0xd1, 0x2f, 0x6e, 0x17, - 0x2a, 0x8f, 0xf6, 0x31, 0xa5, 0xa3, 0xfc, 0x46, 0x56, 0x51, 0x5c, 0x22, 0x09, 0x46, 0x98, 0xa6, - 0x89, 0x2a, 0x13, 0x19, 0xc9, 0xf7, 0xd8, 0x11, 0xf6, 0x03, 0x24, 0xae, 0x3b, 0xd5, 0x3b, 0x48, - 0xce, 0x10, 0x95, 0xad, 0xb8, 0xbe, 0x55, 0x8f, 0xea, 0x05, 0xe7, 0xf2, 0xab, 0x56, 0xf7, 0x6f, - 0x16, 0xac, 0x1f, 0xa2, 0x38, 0x09, 0x06, 0x41, 0x84, 0x48, 0xd2, 0xc3, 0x09, 0x12, 0x6b, 0x30, - 0xde, 0xd5, 0xac, 0x0f, 0xf7, 0xae, 0x76, 0x08, 0x9d, 0x61, 0xd1, 0x5f, 0x6a, 0x2f, 0x73, 0x33, - 0xf7, 0xfe, 0x25, 0x71, 0xe3, 0x91, 0xb0, 0xf6, 0xa1, 0x1f, 0x09, 0xdd, 0x9f, 0xda, 0xd0, 0x29, - 0x95, 0x4e, 0xde, 0x22, 0xca, 0xcd, 0x3f, 0x8f, 0x89, 0x9c, 0x76, 0x76, 0x00, 0x82, 0x3c, 0x8c, - 0x2e, 0xb8, 0xbc, 0x31, 0x63, 0xcd, 0xd3, 0x84, 0x26, 0xdd, 0xe1, 0xd6, 0xe6, 0xbe, 0xc3, 0xe5, - 0xa7, 0x91, 0xa8, 0x70, 0x92, 0x4a, 0xd4, 0x49, 0x68, 0x4e, 0x70, 0xa5, 0xa7, 0x8b, 0xba, 0xdf, - 0x83, 0xb5, 0x4a, 0x85, 0x12, 0x57, 0xba, 0xf4, 0x14, 0x93, 0xfc, 0x4a, 0x97, 0x13, 0x5a, 0xb0, - 0xda, 0xe5, 0x60, 0x0d, 0x83, 0x33, 0xfd, 0x5f, 0x08, 0x8a, 0x74, 0x7f, 0x66, 0xc3, 0xc6, 0xe4, - 0xdd, 0xe5, 0x65, 0x85, 0xfb, 0x08, 0xba, 0xd3, 0x2a, 0xf9, 0x95, 0xa1, 0x5e, 0x44, 0x77, 0xbe, - 0x0f, 0xbf, 0xac, 0x70, 0xaf, 0x67, 0xd1, 0xad, 0x6d, 0x75, 0xee, 0xef, 0x72, 0x7c, 0xf2, 0x4e, - 0xe3, 0x25, 0xc5, 0xc7, 0x79, 0x1d, 0x56, 0xe5, 0x32, 0xb5, 0x47, 0x3f, 0xd9, 0xb8, 0x56, 0xf8, - 0x45, 0xa5, 0xd0, 0xb6, 0xfd, 0x2b, 0x8b, 0xd9, 0x3f, 0x5a, 0x99, 0x4f, 0xf2, 0xfe, 0xed, 0x7f, - 0xca, 0x27, 0x45, 0xa4, 0x69, 0x4d, 0x8d, 0x16, 0x69, 0x79, 0x5f, 0xf9, 0xff, 0x48, 0xbb, 0x3c, - 0xd2, 0x72, 0x2c, 0xb5, 0x06, 0xcf, 0xfd, 0x21, 0xb4, 0xf7, 0x71, 0xd8, 0x63, 0xc3, 0xec, 0xef, - 0x06, 0x17, 0x01, 0x39, 0xed, 0xcf, 0x90, 0x53, 0xff, 0x68, 0x50, 0xfe, 0x93, 0xc2, 0x42, 0xe5, - 0x4f, 0x0a, 0xee, 0x2e, 0xac, 0xe8, 0x06, 0xcc, 0xf3, 0x6f, 0x8b, 0xdd, 0xeb, 0xdf, 0xbd, 0xb6, - 0xfd, 0x86, 0xfc, 0xdb, 0xed, 0x5b, 0x15, 0x10, 0x8f, 0x1a, 0xe2, 0x6f, 0xb8, 0x5f, 0xfe, 0x4f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xd9, 0x1a, 0xc5, 0xce, 0x99, 0x2b, 0x00, 0x00, +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_48b3765a4295b161) } + +var fileDescriptor_ws_48b3765a4295b161 = []byte{ + // 2624 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3a, 0xcd, 0x6f, 0xe4, 0x48, + 0xf5, 0x3f, 0xbb, 0xd3, 0x9d, 0xf4, 0xeb, 0x74, 0x3a, 0x71, 0xf6, 0x17, 0x9a, 0x30, 0x3b, 0x04, + 0x2b, 0x5a, 0x86, 0x05, 0xb2, 0x68, 0x10, 0x12, 0xcc, 0xc2, 0xa0, 0x7c, 0xcc, 0xd7, 0x92, 0x9e, + 0xc9, 0xba, 0x67, 0x58, 0x04, 0x48, 0x23, 0xa7, 0x5d, 0xe9, 0x78, 0xe3, 0xae, 0x72, 0xfb, 0x23, + 0x33, 0x91, 0x90, 0x90, 0x40, 0x42, 0xdc, 0x38, 0xc1, 0x15, 0x89, 0x0b, 0x42, 0x42, 0xab, 0x3d, + 0xc0, 0x0d, 0x71, 0xe2, 0x1f, 0xe0, 0x88, 0xb8, 0x71, 0xe6, 0xca, 0x01, 0x09, 0x09, 0x54, 0xf5, + 0xca, 0x76, 0x95, 0xdd, 0x9d, 0xf4, 0x44, 0xd1, 0xce, 0xa2, 0xe1, 0xe6, 0xf7, 0x5c, 0xef, 0xd5, + 0xab, 0xf7, 0x5d, 0xcf, 0x86, 0x4e, 0xec, 0x9d, 0x3c, 0x7d, 0x16, 0xbf, 0xf5, 0x2c, 0xde, 0x0a, + 0x23, 0x96, 0x30, 0x6b, 0x25, 0x26, 0xd1, 0x29, 0x89, 0x9e, 0xba, 0xa1, 0xff, 0x34, 0x74, 0x23, + 0x77, 0x14, 0xdb, 0xff, 0x30, 0xa1, 0x79, 0x2f, 0x62, 0x69, 0xf8, 0x80, 0x1e, 0x31, 0xab, 0x0b, + 0xf3, 0x43, 0x01, 0xec, 0x75, 0x8d, 0x0d, 0xe3, 0x46, 0xd3, 0xc9, 0x40, 0xeb, 0x1a, 0x34, 0xc5, + 0xe3, 0x43, 0x77, 0x44, 0xba, 0xa6, 0x78, 0x57, 0x20, 0x2c, 0x1b, 0x16, 0x29, 0x4b, 0xfc, 0x23, + 0x7f, 0xe0, 0x26, 0x3e, 0xa3, 0xdd, 0x9a, 0x58, 0xa0, 0xe1, 0xf8, 0x1a, 0x9f, 0x26, 0x11, 0xf3, + 0xd2, 0x81, 0x58, 0x33, 0x87, 0x6b, 0x54, 0x1c, 0xdf, 0xff, 0xc8, 0x1d, 0x90, 0x27, 0xce, 0x7e, + 0xb7, 0x8e, 0xfb, 0x4b, 0xd0, 0xda, 0x80, 0x16, 0x7b, 0x46, 0x49, 0xf4, 0x24, 0x26, 0xd1, 0x83, + 0xbd, 0x6e, 0x43, 0xbc, 0x55, 0x51, 0xd6, 0x75, 0x80, 0x41, 0x44, 0xdc, 0x84, 0x3c, 0xf6, 0x47, + 0xa4, 0x3b, 0xbf, 0x61, 0xdc, 0x68, 0x3b, 0x0a, 0x86, 0x73, 0x18, 0x91, 0xd1, 0x21, 0x89, 0x76, + 0x59, 0x4a, 0x93, 0xee, 0x82, 0x58, 0xa0, 0xa2, 0xac, 0x25, 0x30, 0xc9, 0xf3, 0x6e, 0x53, 0xb0, + 0x36, 0xc9, 0x73, 0x6b, 0x0d, 0x1a, 0x71, 0xe2, 0x26, 0x69, 0xdc, 0x85, 0x0d, 0xe3, 0x46, 0xdd, + 0x91, 0x90, 0xb5, 0x09, 0x6d, 0xc1, 0x97, 0x65, 0xd2, 0xb4, 0x04, 0x89, 0x8e, 0xcc, 0x35, 0xf6, + 0xf8, 0x2c, 0x24, 0xdd, 0x45, 0xc1, 0xa0, 0x40, 0xd8, 0x7f, 0x31, 0x61, 0x55, 0xe8, 0xbd, 0x27, + 0x04, 0xb8, 0x9b, 0x06, 0xc1, 0x05, 0x16, 0x58, 0x83, 0x46, 0x8a, 0xdb, 0xa1, 0xfa, 0x25, 0xc4, + 0xf7, 0x89, 0x58, 0x40, 0xf6, 0xc9, 0x29, 0x09, 0x84, 0xe2, 0xeb, 0x4e, 0x81, 0xb0, 0xd6, 0x61, + 0xe1, 0x7d, 0xe6, 0x53, 0xa1, 0x93, 0x39, 0xf1, 0x32, 0x87, 0xf9, 0x3b, 0xea, 0x0f, 0x4e, 0x28, + 0x37, 0x29, 0xaa, 0x3b, 0x87, 0x55, 0x4b, 0x34, 0x74, 0x4b, 0xbc, 0x01, 0x4b, 0x6e, 0x18, 0xf6, + 0x5c, 0x3a, 0x24, 0x11, 0x6e, 0x3a, 0x2f, 0xf8, 0x96, 0xb0, 0xdc, 0x1e, 0x7c, 0xa7, 0x3e, 0x4b, + 0xa3, 0x01, 0x11, 0xea, 0xae, 0x3b, 0x0a, 0x86, 0xf3, 0x61, 0x21, 0x89, 0x14, 0x35, 0xa2, 0xe6, + 0x4b, 0x58, 0x69, 0x15, 0xc8, 0xad, 0xc2, 0xed, 0x98, 0x26, 0xe4, 0x0e, 0xf5, 0xc4, 0xa1, 0x5a, + 0xd2, 0x8e, 0x05, 0xca, 0xfe, 0x89, 0x01, 0x4b, 0x07, 0xe9, 0x61, 0xe0, 0x0f, 0x04, 0x0b, 0xae, + 0xd6, 0x42, 0x79, 0x86, 0xa6, 0x3c, 0x55, 0x05, 0xe6, 0x74, 0x15, 0xd4, 0x74, 0x15, 0xac, 0x41, + 0x63, 0x48, 0xa8, 0x47, 0x22, 0xa9, 0x52, 0x09, 0x49, 0x51, 0xeb, 0x99, 0xa8, 0xf6, 0x2f, 0x4c, + 0x58, 0xf8, 0x88, 0x45, 0xd8, 0x80, 0x56, 0x78, 0xcc, 0x28, 0x79, 0x98, 0x72, 0xb7, 0x92, 0xb2, + 0xa8, 0x28, 0xeb, 0x35, 0xa8, 0x1f, 0xfa, 0x51, 0x72, 0x2c, 0xec, 0xda, 0x76, 0x10, 0xe0, 0x58, + 0x32, 0x72, 0x7d, 0x34, 0x66, 0xd3, 0x41, 0x40, 0x1e, 0x68, 0x21, 0xd7, 0xbd, 0x1e, 0x63, 0xcd, + 0x4a, 0x8c, 0x55, 0x7d, 0x03, 0x26, 0xf9, 0x86, 0xfd, 0x4f, 0x03, 0xe0, 0x6e, 0xe4, 0x13, 0xea, + 0x09, 0xd5, 0x94, 0x82, 0xdb, 0xa8, 0x06, 0xf7, 0x1a, 0x34, 0x22, 0x32, 0x72, 0xa3, 0x93, 0xcc, + 0xf9, 0x11, 0x2a, 0x09, 0x54, 0xab, 0x08, 0xf4, 0x36, 0xc0, 0x91, 0xd8, 0x87, 0xf3, 0x11, 0xaa, + 0x6a, 0xdd, 0xfc, 0xd4, 0x56, 0x25, 0x0d, 0x6e, 0x65, 0x56, 0x72, 0x94, 0xe5, 0x3c, 0xb2, 0x5c, + 0xcf, 0x93, 0x0e, 0x5c, 0xc7, 0xc8, 0xca, 0x11, 0x13, 0xfc, 0xb7, 0x71, 0x8e, 0xff, 0xce, 0xe7, + 0x4e, 0xf1, 0x77, 0x03, 0x9a, 0x3b, 0x81, 0x3b, 0x38, 0x99, 0xf1, 0xe8, 0xfa, 0x11, 0xcd, 0xca, + 0x11, 0xef, 0x41, 0xfb, 0x90, 0xb3, 0xcb, 0x8e, 0x20, 0xb4, 0xd0, 0xba, 0xf9, 0x99, 0x09, 0xa7, + 0xd4, 0x83, 0xc2, 0xd1, 0xe9, 0xf4, 0xe3, 0xce, 0x5d, 0x7c, 0xdc, 0xfa, 0x39, 0xc7, 0x6d, 0xe4, + 0xc7, 0xfd, 0xb3, 0x09, 0x8b, 0x22, 0xd1, 0x39, 0x64, 0x9c, 0x92, 0x38, 0xb1, 0xbe, 0x01, 0x0b, + 0x69, 0x26, 0xaa, 0x31, 0xab, 0xa8, 0x39, 0x89, 0x75, 0x4b, 0xa6, 0x55, 0x41, 0x6f, 0x0a, 0xfa, + 0x6b, 0x13, 0xe8, 0xf3, 0x9a, 0xe6, 0x14, 0xcb, 0x79, 0x09, 0x3a, 0x76, 0xa9, 0x17, 0x10, 0x87, + 0xc4, 0x69, 0x90, 0xc8, 0x6c, 0xa9, 0xe1, 0xd0, 0xd3, 0xc6, 0xbd, 0x78, 0x28, 0x0b, 0x94, 0x84, + 0xb8, 0x76, 0x70, 0x1d, 0x7f, 0x85, 0x47, 0x2f, 0x10, 0x3c, 0x50, 0x23, 0x32, 0x16, 0x16, 0xc2, + 0xb0, 0xca, 0xc0, 0x62, 0x4f, 0xa9, 0x35, 0x74, 0x04, 0x0d, 0xc7, 0x4d, 0x8c, 0xb0, 0x60, 0x80, + 0x95, 0x49, 0xc1, 0x94, 0x0b, 0x93, 0xfd, 0xd7, 0x1a, 0xb4, 0x31, 0x7c, 0x32, 0xa5, 0x5e, 0xe7, + 0x7e, 0xce, 0x46, 0x9a, 0x17, 0x29, 0x18, 0x2e, 0x05, 0x87, 0x1e, 0xea, 0x89, 0x46, 0xc3, 0x71, + 0x57, 0xe4, 0xf0, 0x5d, 0x2d, 0xe1, 0xa8, 0xa8, 0x6c, 0x97, 0x7b, 0x6a, 0xe2, 0x51, 0x30, 0x3c, + 0x95, 0x25, 0x4c, 0xf3, 0x8e, 0x1c, 0xe6, 0xb4, 0x09, 0xcb, 0xf7, 0x47, 0xff, 0x50, 0x30, 0x5c, + 0xbf, 0x09, 0xcb, 0xf6, 0x46, 0x25, 0x15, 0x08, 0xe4, 0x2c, 0xf7, 0xc5, 0x52, 0x92, 0xc3, 0x15, + 0xab, 0x36, 0xcf, 0xb5, 0x2a, 0x68, 0x56, 0xd5, 0x83, 0xab, 0x55, 0x09, 0xae, 0x4d, 0x68, 0x23, + 0x9f, 0xcc, 0xe9, 0x17, 0xb1, 0xd4, 0x6b, 0x48, 0xdd, 0x37, 0xda, 0x65, 0xdf, 0xd0, 0xad, 0xbb, + 0x34, 0xc5, 0xba, 0x9d, 0xdc, 0xba, 0x3f, 0x80, 0xee, 0x41, 0x1a, 0x04, 0x3d, 0x12, 0xc7, 0xee, + 0x90, 0xec, 0x9c, 0xf5, 0xc9, 0x78, 0xdf, 0x8f, 0x13, 0x87, 0xc4, 0x21, 0xf7, 0x33, 0x12, 0x45, + 0xbb, 0xcc, 0x23, 0xc2, 0xc8, 0x75, 0x27, 0x03, 0xf9, 0x09, 0x49, 0x14, 0x71, 0x01, 0x64, 0x86, + 0x44, 0xc8, 0xda, 0x82, 0xb9, 0xc0, 0x8f, 0xb9, 0xaf, 0xd7, 0x6e, 0xb4, 0x6e, 0xae, 0x4f, 0x08, + 0x95, 0x5e, 0x3c, 0xdc, 0x73, 0x13, 0xd7, 0x11, 0xeb, 0xec, 0x11, 0x7c, 0x62, 0xf2, 0xee, 0xe3, + 0xa9, 0x15, 0x8c, 0xe7, 0x30, 0x91, 0x04, 0x7c, 0x46, 0xf3, 0xf6, 0x44, 0x45, 0x71, 0xb1, 0x63, + 0xe4, 0x23, 0xe4, 0x68, 0x3b, 0x19, 0x68, 0xbf, 0x06, 0xd6, 0x3d, 0x92, 0xf4, 0xdc, 0xe7, 0xdb, + 0xd4, 0xeb, 0xf9, 0xb4, 0x4f, 0xc6, 0x0e, 0x19, 0xdb, 0x77, 0x60, 0xb5, 0x82, 0x8d, 0x43, 0x2e, + 0xc0, 0xc8, 0x7d, 0xde, 0x27, 0x63, 0x21, 0x40, 0xdb, 0x91, 0x90, 0xc0, 0x8b, 0x55, 0x32, 0x3d, + 0x4a, 0xc8, 0x1e, 0x43, 0x87, 0x5b, 0xa8, 0x4f, 0xa8, 0xd7, 0x8b, 0x87, 0x82, 0xc5, 0x06, 0xb4, + 0x50, 0x03, 0xbd, 0x78, 0x58, 0xe4, 0x5b, 0x05, 0xc5, 0x57, 0x0c, 0x02, 0x9f, 0xd0, 0x04, 0x57, + 0xc8, 0xd3, 0x28, 0x28, 0xee, 0x8c, 0x31, 0x91, 0xed, 0x07, 0x8f, 0x92, 0x9a, 0x93, 0xc3, 0xf6, + 0x1f, 0xea, 0x30, 0x2f, 0x15, 0x2a, 0xfa, 0x47, 0x5e, 0xe2, 0x72, 0x7d, 0x21, 0x84, 0xce, 0x38, + 0x38, 0x2d, 0x3a, 0x39, 0x84, 0xd4, 0xde, 0xaf, 0xa6, 0xf7, 0x7e, 0x25, 0x99, 0xe6, 0xaa, 0x32, + 0x95, 0xce, 0x55, 0xaf, 0x9e, 0xeb, 0x4d, 0x58, 0x8e, 0x45, 0xc0, 0x1c, 0x04, 0x6e, 0x72, 0xc4, + 0xa2, 0x91, 0xac, 0x58, 0x75, 0xa7, 0x82, 0xe7, 0xc9, 0x1e, 0x71, 0x79, 0xc0, 0x62, 0x44, 0x96, + 0xb0, 0x3c, 0x3c, 0x10, 0x93, 0x05, 0x2e, 0xb6, 0x0a, 0x3a, 0x12, 0x65, 0x8b, 0x63, 0x9f, 0x51, + 0xd1, 0x0b, 0x63, 0x7c, 0xaa, 0x28, 0x7e, 0xf2, 0x51, 0x3c, 0xbc, 0x1b, 0xb1, 0x91, 0x6c, 0x18, + 0x32, 0x50, 0x9c, 0x9c, 0xd1, 0x84, 0xd0, 0x44, 0xd0, 0xb6, 0x90, 0x56, 0x41, 0x71, 0x5a, 0x09, + 0x8a, 0xe0, 0x5c, 0x74, 0x32, 0xd0, 0x5a, 0x86, 0x5a, 0x4c, 0xc6, 0x32, 0xe2, 0xf8, 0xa3, 0x66, + 0xb9, 0x8e, 0x6e, 0xb9, 0x52, 0x2a, 0x58, 0x16, 0x6f, 0xd5, 0x54, 0x50, 0xdc, 0x06, 0x56, 0xb4, + 0xdb, 0xc0, 0x36, 0xcc, 0xb3, 0x90, 0xfb, 0x79, 0xdc, 0xb5, 0x44, 0x8c, 0x7d, 0x76, 0x7a, 0x8c, + 0x6d, 0x3d, 0xc2, 0x95, 0x77, 0x68, 0x12, 0x9d, 0x39, 0x19, 0x9d, 0xb5, 0x0f, 0x1d, 0x76, 0x74, + 0x14, 0xf8, 0x94, 0x1c, 0xa4, 0xf1, 0xb1, 0xa8, 0x6c, 0xab, 0xa2, 0xb2, 0xd9, 0x13, 0x58, 0x3d, + 0xd2, 0x57, 0x3a, 0x65, 0xd2, 0xf5, 0x5b, 0xb0, 0xa8, 0x6e, 0xc3, 0xd5, 0x70, 0x42, 0xce, 0xa4, + 0x0f, 0xf2, 0x47, 0xde, 0xec, 0x9d, 0xba, 0x41, 0x8a, 0x65, 0x60, 0xc1, 0x41, 0xe0, 0x96, 0xf9, + 0x55, 0xc3, 0xfe, 0xb9, 0x01, 0x9d, 0xd2, 0x06, 0x7c, 0x75, 0xe2, 0x27, 0x01, 0x91, 0x1c, 0x10, + 0xb0, 0x2c, 0x98, 0xf3, 0x48, 0x3c, 0x90, 0x2e, 0x2c, 0x9e, 0x65, 0x26, 0xab, 0xe5, 0xed, 0x22, + 0xbf, 0xf2, 0x3d, 0xea, 0x73, 0x46, 0x7d, 0x96, 0x52, 0x2f, 0xbf, 0xf2, 0x29, 0x38, 0xee, 0x42, + 0xfe, 0xa3, 0xfe, 0x8e, 0xeb, 0x0d, 0x09, 0x5e, 0xcc, 0xea, 0x42, 0x26, 0x1d, 0x69, 0x7b, 0xb0, + 0xf0, 0xd8, 0x0f, 0xe3, 0x5d, 0x36, 0x1a, 0x71, 0x43, 0x78, 0x24, 0xe1, 0xbd, 0xaa, 0x21, 0xec, + 0x2d, 0x21, 0xee, 0x2a, 0x1e, 0x39, 0x72, 0xd3, 0x20, 0xe1, 0x4b, 0xb3, 0xc0, 0x55, 0x50, 0xe2, + 0x4a, 0x12, 0x33, 0xba, 0x87, 0xd4, 0x28, 0xa7, 0x82, 0xb1, 0xff, 0x64, 0xc2, 0xb2, 0x68, 0x1c, + 0x76, 0x85, 0xd9, 0x3d, 0x41, 0x74, 0x13, 0xea, 0x22, 0x0c, 0x65, 0xb3, 0x72, 0x7e, 0xb3, 0x81, + 0x4b, 0xad, 0xdb, 0xd0, 0x60, 0xa1, 0x68, 0x39, 0xb1, 0x43, 0x79, 0x63, 0x1a, 0x91, 0x7e, 0xfb, + 0x73, 0x24, 0x95, 0x75, 0x17, 0x00, 0x2f, 0xa6, 0xfb, 0x45, 0xea, 0x9e, 0x95, 0x87, 0x42, 0xc9, + 0x95, 0x9b, 0xa7, 0xe1, 0xfc, 0x0a, 0x58, 0x73, 0x74, 0xa4, 0xf5, 0x10, 0x96, 0x84, 0xd8, 0x8f, + 0xb2, 0xae, 0x53, 0xd8, 0x60, 0xf6, 0x1d, 0x4b, 0xd4, 0xf6, 0xaf, 0x0c, 0xa9, 0x46, 0xfe, 0xb6, + 0x4f, 0x50, 0xf7, 0x85, 0x4a, 0x8c, 0x4b, 0xa9, 0x64, 0x1d, 0x16, 0xf8, 0x1d, 0x2f, 0x6f, 0x82, + 0x6b, 0x4e, 0x0e, 0x17, 0x26, 0xaa, 0xcd, 0x6c, 0x22, 0xfb, 0xd7, 0x06, 0x74, 0xdf, 0x61, 0x3e, + 0x15, 0x2f, 0xb6, 0xc3, 0x30, 0x90, 0x73, 0x8a, 0x4b, 0xdb, 0xfc, 0x9b, 0xd0, 0x74, 0x91, 0x0d, + 0x4d, 0xa4, 0xd9, 0x67, 0x68, 0x6c, 0x0b, 0x1a, 0xa5, 0x47, 0xa9, 0xa9, 0x3d, 0x8a, 0xfd, 0x81, + 0x01, 0x4b, 0xa8, 0x94, 0x77, 0x53, 0x3f, 0xb9, 0xb4, 0x7c, 0x3b, 0xb0, 0x30, 0x4e, 0xfd, 0xe4, + 0x12, 0x5e, 0x99, 0xd3, 0x55, 0xfd, 0xa9, 0x36, 0xc1, 0x9f, 0xec, 0x0f, 0x0d, 0xb8, 0x56, 0x56, + 0xeb, 0xf6, 0x60, 0x40, 0xc2, 0x97, 0x19, 0x52, 0x5a, 0x8f, 0x36, 0x57, 0xea, 0xd1, 0x26, 0x8a, + 0xec, 0x90, 0xf7, 0xc9, 0xe0, 0xe3, 0x2b, 0xf2, 0x8f, 0x4d, 0xf8, 0xe4, 0xbd, 0x3c, 0xf0, 0x1e, + 0x47, 0x2e, 0x8d, 0x8f, 0x48, 0x14, 0xbd, 0x44, 0x79, 0xf7, 0xa1, 0x4d, 0xc9, 0xb3, 0x42, 0x26, + 0x19, 0x8e, 0xb3, 0xb2, 0xd1, 0x89, 0x67, 0xcb, 0x5d, 0xf6, 0xbf, 0x0c, 0x58, 0x46, 0x3e, 0xdf, + 0xf2, 0x07, 0x27, 0x2f, 0xf1, 0xf0, 0x0f, 0x61, 0xe9, 0x44, 0x48, 0xc0, 0xa1, 0x4b, 0xa4, 0xed, + 0x12, 0xf5, 0x8c, 0xc7, 0xff, 0xb7, 0x01, 0x2b, 0xc8, 0xe8, 0x01, 0x3d, 0xf5, 0x5f, 0xa6, 0xb3, + 0x1e, 0x40, 0xc7, 0x47, 0x11, 0x2e, 0xa9, 0x80, 0x32, 0xf9, 0x8c, 0x1a, 0xf8, 0xbd, 0x01, 0x1d, + 0xe4, 0x74, 0x87, 0x26, 0x24, 0xba, 0xf4, 0xf9, 0xef, 0x43, 0x8b, 0xd0, 0x24, 0x72, 0xe9, 0x65, + 0x32, 0xa4, 0x4a, 0x3a, 0x63, 0x92, 0xfc, 0xc0, 0x00, 0x4b, 0xb0, 0xda, 0xf3, 0xe3, 0x91, 0x1f, + 0xc7, 0x2f, 0xd1, 0x74, 0xb3, 0x09, 0xfc, 0x53, 0x13, 0xd6, 0x15, 0x2e, 0x9c, 0xc3, 0xee, 0xb1, + 0x4b, 0x87, 0x1f, 0x77, 0xc1, 0xb9, 0x67, 0x0e, 0x50, 0xd0, 0xdc, 0x33, 0xe7, 0x5e, 0x68, 0xbb, + 0x32, 0xb9, 0x7d, 0x02, 0x2b, 0x38, 0x7e, 0x51, 0xaa, 0x05, 0xbf, 0x87, 0xb8, 0x1e, 0x5e, 0x2d, + 0x0c, 0x21, 0x46, 0x06, 0xea, 0x83, 0x35, 0xf9, 0xed, 0xa4, 0x18, 0xac, 0x5d, 0x07, 0x70, 0x3d, + 0xef, 0x3d, 0x16, 0x79, 0x3e, 0xcd, 0x4a, 0xbf, 0x82, 0xb1, 0xdf, 0x81, 0x45, 0x7e, 0x13, 0x7a, + 0xac, 0x0c, 0x52, 0xce, 0x1d, 0xf5, 0xa8, 0x43, 0x18, 0x53, 0x1f, 0xc2, 0xd8, 0xdf, 0x87, 0xff, + 0xaf, 0x08, 0x2e, 0xac, 0xb7, 0x8b, 0xf3, 0xa1, 0x6c, 0x13, 0x69, 0xc4, 0x4f, 0x4f, 0x50, 0x90, + 0x2a, 0x8b, 0xa3, 0x11, 0xd9, 0x3f, 0x32, 0xe0, 0xf5, 0x0a, 0xfb, 0xed, 0x30, 0x8c, 0xd8, 0xa9, + 0x74, 0x92, 0xab, 0xd8, 0x46, 0x2f, 0x8b, 0x66, 0xb9, 0x2c, 0x4e, 0x14, 0x42, 0x2b, 0xe5, 0x1f, + 0x81, 0x10, 0xbf, 0x31, 0xa0, 0x23, 0x85, 0xf0, 0x3c, 0xb9, 0xed, 0x57, 0xa0, 0x81, 0xb3, 0x65, + 0xb9, 0xe1, 0xeb, 0x13, 0x37, 0xcc, 0x66, 0xe2, 0x8e, 0x5c, 0x5c, 0xf5, 0x71, 0x73, 0x92, 0x8f, + 0x7f, 0x2d, 0x8f, 0xa4, 0x99, 0xa7, 0xbf, 0x92, 0xc0, 0xfe, 0x4e, 0xe6, 0xcc, 0x7b, 0x24, 0x20, + 0x57, 0xa9, 0x23, 0xfb, 0x09, 0x2c, 0x89, 0x41, 0x77, 0xa1, 0x83, 0x2b, 0x61, 0xfb, 0x1e, 0x2c, + 0x0b, 0xb6, 0x57, 0x2e, 0x6f, 0x1e, 0x1d, 0xe5, 0xdc, 0x76, 0x25, 0xdc, 0xbf, 0x08, 0xab, 0x99, + 0xee, 0x9f, 0x84, 0x5e, 0x7e, 0xbd, 0x9c, 0x32, 0x54, 0xb3, 0xbf, 0x04, 0x6b, 0xbb, 0x8c, 0x9e, + 0x92, 0x28, 0x16, 0x56, 0x46, 0x92, 0x8c, 0x42, 0x0b, 0x7e, 0x09, 0xd9, 0x7d, 0x58, 0x91, 0xe3, + 0xe0, 0x03, 0x77, 0xe8, 0x53, 0xcc, 0x4a, 0xd7, 0x01, 0x42, 0x77, 0x98, 0x7d, 0x0e, 0xc2, 0x99, + 0xa1, 0x82, 0xe1, 0xef, 0xe3, 0x63, 0xf6, 0x4c, 0xbe, 0x37, 0xf1, 0x7d, 0x81, 0xb1, 0xbf, 0x0d, + 0x96, 0x43, 0xe2, 0x90, 0xd1, 0x98, 0x28, 0x5c, 0x37, 0xa0, 0xb5, 0x9b, 0x46, 0x11, 0xa1, 0x7c, + 0xab, 0xec, 0xdb, 0x88, 0x8a, 0xe2, 0x7c, 0xfb, 0x05, 0x5f, 0x9c, 0x33, 0x29, 0x18, 0xfb, 0x97, + 0x35, 0x68, 0xf6, 0xfd, 0x21, 0x75, 0x03, 0x87, 0x8c, 0xad, 0xaf, 0x43, 0x03, 0xab, 0xbf, 0x54, + 0xed, 0xa4, 0xb9, 0x07, 0xae, 0xc6, 0x36, 0xc7, 0x21, 0xe3, 0xfb, 0xff, 0xe7, 0x48, 0x1a, 0xeb, + 0x5d, 0x68, 0xe3, 0xd3, 0x03, 0xbc, 0xcd, 0xc9, 0x6a, 0xf2, 0xb9, 0x0b, 0x98, 0xc8, 0xd5, 0xc8, + 0x4b, 0xe7, 0xc0, 0x05, 0x1a, 0xb8, 0x74, 0x20, 0xbf, 0xa8, 0x9e, 0x27, 0xd0, 0xae, 0x58, 0x26, + 0x05, 0x42, 0x1a, 0x4e, 0xed, 0x8a, 0xfb, 0x8e, 0x2c, 0x34, 0xd3, 0xa9, 0xf1, 0x5a, 0x24, 0xa9, + 0x91, 0x86, 0x53, 0x1f, 0xa7, 0x74, 0xf8, 0x24, 0x94, 0xd7, 0xf0, 0xe9, 0xd4, 0xf7, 0xc5, 0x32, + 0x49, 0x8d, 0x34, 0x9c, 0x3a, 0x12, 0xd9, 0x4e, 0x28, 0xfd, 0x3c, 0x6a, 0x4c, 0x8a, 0x92, 0x1a, + 0x69, 0x76, 0x9a, 0x30, 0x1f, 0xba, 0x67, 0x01, 0x73, 0x3d, 0xfb, 0xb7, 0x35, 0x80, 0x6c, 0x61, + 0x2c, 0x6a, 0xb5, 0x66, 0xa2, 0xcd, 0x0b, 0x4d, 0x14, 0x06, 0x67, 0x8a, 0x91, 0xfa, 0x93, 0x8d, + 0xf4, 0xf9, 0x59, 0x8d, 0x84, 0xdc, 0x4a, 0x66, 0xba, 0x5d, 0x32, 0xd3, 0xe6, 0x85, 0x66, 0x92, + 0x42, 0x49, 0x43, 0xdd, 0x2e, 0x19, 0x6a, 0xf3, 0x42, 0x43, 0x49, 0x7a, 0x69, 0xaa, 0xdb, 0x25, + 0x53, 0x6d, 0x5e, 0x68, 0x2a, 0x49, 0x2f, 0x8d, 0x75, 0xbb, 0x64, 0xac, 0xcd, 0x0b, 0x8d, 0x25, + 0xe9, 0xab, 0xe6, 0xfa, 0xd0, 0x84, 0x25, 0xa1, 0x32, 0x9c, 0xb9, 0xd3, 0x23, 0x26, 0x46, 0x6b, + 0x42, 0x5d, 0xfa, 0xd7, 0x45, 0x1d, 0x69, 0x7d, 0x01, 0x56, 0x10, 0x21, 0xbf, 0x46, 0x89, 0x06, + 0xc9, 0xdc, 0xa8, 0xdd, 0x68, 0x3a, 0xd5, 0x17, 0x62, 0x4a, 0x9a, 0xc6, 0x09, 0x1b, 0xed, 0xb9, + 0x89, 0x9b, 0x75, 0x2b, 0x05, 0x46, 0x9d, 0x61, 0xcf, 0x55, 0xfe, 0x5f, 0x88, 0x18, 0x1b, 0xe5, + 0xc3, 0x69, 0x09, 0x71, 0x8a, 0xc4, 0x1f, 0x11, 0x96, 0x26, 0x32, 0x4d, 0x64, 0x20, 0xaf, 0xb1, + 0x23, 0xe2, 0xf9, 0xae, 0x98, 0xfc, 0xca, 0x4f, 0x42, 0x39, 0x42, 0x64, 0xb6, 0x62, 0x92, 0x2d, + 0xff, 0x2f, 0x28, 0x30, 0x17, 0x4f, 0x9d, 0xed, 0xbf, 0x19, 0xb0, 0x7a, 0xe0, 0x46, 0x89, 0x3f, + 0xf0, 0x43, 0x97, 0x26, 0x3d, 0x92, 0xb8, 0xe2, 0x0c, 0xda, 0x27, 0x46, 0xe3, 0xc5, 0x3e, 0x31, + 0x1e, 0x40, 0x67, 0xa8, 0x37, 0xc9, 0x2f, 0xd8, 0xdb, 0x96, 0xc9, 0xb5, 0xef, 0xa5, 0xb5, 0x17, + 0xfe, 0x5e, 0xca, 0xdb, 0xf6, 0x4e, 0x29, 0x75, 0xf2, 0x16, 0x11, 0x8b, 0x7f, 0xee, 0x13, 0x39, + 0x6c, 0x6d, 0x03, 0xf8, 0xb9, 0x1b, 0x9d, 0x33, 0xc7, 0xd2, 0x7d, 0xcd, 0x51, 0x88, 0x26, 0x8d, + 0xb3, 0x6b, 0x97, 0x1e, 0x67, 0xf3, 0x8b, 0x59, 0x58, 0x18, 0xe9, 0x9c, 0xd6, 0x7d, 0x82, 0x29, + 0x1d, 0x95, 0xd4, 0xfe, 0x1e, 0xac, 0x54, 0x32, 0x94, 0x98, 0x6e, 0xb3, 0x13, 0x42, 0xf3, 0xe9, + 0x36, 0x07, 0x14, 0x67, 0x35, 0xcb, 0xce, 0x1a, 0xf8, 0xa7, 0xea, 0x0f, 0x19, 0x12, 0xb4, 0x7f, + 0x66, 0xc2, 0xda, 0xe4, 0xea, 0xf2, 0xaa, 0xaa, 0xfb, 0x10, 0xba, 0xd3, 0x32, 0xf9, 0x95, 0x69, + 0xbd, 0xf0, 0xee, 0xbc, 0x0e, 0xbf, 0xaa, 0xea, 0x5e, 0xcd, 0xbc, 0x5b, 0x29, 0x75, 0xf6, 0xef, + 0x72, 0xfd, 0xe4, 0x9d, 0xc6, 0x2b, 0xaa, 0x1f, 0xeb, 0x4d, 0x58, 0xc6, 0x63, 0x2a, 0xdf, 0x3f, + 0xb1, 0x71, 0xad, 0xe0, 0x8b, 0x4c, 0xa1, 0x94, 0xfd, 0x2b, 0xf3, 0xd9, 0x3f, 0x1a, 0x99, 0x4d, + 0xf2, 0xfe, 0xed, 0xbf, 0xca, 0x26, 0x85, 0xa7, 0x29, 0x4d, 0x8d, 0xe2, 0x69, 0x79, 0x5f, 0xf9, + 0x3f, 0x4f, 0xbb, 0xd8, 0xd3, 0x72, 0x5d, 0x2a, 0x0d, 0x9e, 0xfd, 0x43, 0x68, 0xef, 0x91, 0xa0, + 0x17, 0x0f, 0xb3, 0x3f, 0x2f, 0xce, 0x53, 0xe4, 0xb4, 0xff, 0x42, 0xa7, 0xfe, 0x73, 0x51, 0xfe, + 0x5f, 0x63, 0xae, 0xf2, 0xbf, 0x86, 0xbd, 0x03, 0x4b, 0xaa, 0x00, 0x97, 0xf9, 0xf1, 0x64, 0xe7, + 0xda, 0x77, 0xd7, 0xb7, 0xde, 0xc2, 0x3f, 0x90, 0xdf, 0xae, 0x28, 0xf1, 0xb0, 0x21, 0xfe, 0x48, + 0xfe, 0xf2, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x57, 0x56, 0x7c, 0x02, 0xa4, 0x2c, 0x00, 0x00, } From ecb1068f0b9465d5fb955ac2c446cce704d59757 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 12:40:08 +0800 Subject: [PATCH 05/41] mute group --- pkg/proto/sdk_ws/ws.proto | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index 93d604a7c..a1cc2ce63 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -261,11 +261,31 @@ message GroupDismissedTips{ int64 operationTime = 3; } -message GroupMemberInfoChangedTips{ +message GroupMemberMutedTips{ + GroupInfo group = 1; + GroupMemberFullInfo opUser = 2; + int64 operationTime = 3; + GroupMemberFullInfo mutedUser = 4; + uint32 mutedSeconds = 5; +} + +message GroupMemberCancelMutedTips{ + GroupInfo group = 1; + GroupMemberFullInfo opUser = 2; + int64 operationTime = 3; + GroupMemberFullInfo mutedUser = 4; +} + +message GroupMutedTips{ + GroupInfo group = 1; + GroupMemberFullInfo opUser = 2; + int64 operationTime = 3; +} + +message GroupCancelMutedTips{ GroupInfo group = 1; GroupMemberFullInfo opUser = 2; int64 operationTime = 3; - GroupMemberFullInfo changedUserList = 4; } From 30bc6c274ebe726fe3a34c74a08df208a8113dcf Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Tue, 29 Mar 2022 13:30:54 +0800 Subject: [PATCH 06/41] mute group --- pkg/proto/sdk_ws/ws.pb.go | 687 ++++++++++++++++++++++++-------------- 1 file changed, 436 insertions(+), 251 deletions(-) diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index 9945fbc92..43fd488b8 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -40,7 +40,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} } func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{0} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{0} } func (m *GroupInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfo.Unmarshal(m, b) @@ -165,7 +165,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{1} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{1} } func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) @@ -277,7 +277,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{2} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{2} } func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) @@ -352,7 +352,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} } func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{3} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{3} } func (m *UserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfo.Unmarshal(m, b) @@ -459,7 +459,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} } func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{4} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{4} } func (m *FriendInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfo.Unmarshal(m, b) @@ -544,7 +544,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} } func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{5} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{5} } func (m *BlackInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackInfo.Unmarshal(m, b) @@ -625,7 +625,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} } func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{6} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{6} } func (m *GroupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupRequest.Unmarshal(m, b) @@ -733,7 +733,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} } func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{7} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{7} } func (m *FriendRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendRequest.Unmarshal(m, b) @@ -871,7 +871,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{8} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{8} } func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) @@ -925,7 +925,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{9} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{9} } func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) @@ -976,7 +976,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{10} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{10} } func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) @@ -1008,7 +1008,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{11} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{11} } func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) @@ -1055,7 +1055,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{12} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{12} } func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) @@ -1124,7 +1124,7 @@ func (m *MsgData) Reset() { *m = MsgData{} } func (m *MsgData) String() string { return proto.CompactTextString(m) } func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{13} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{13} } func (m *MsgData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgData.Unmarshal(m, b) @@ -1285,7 +1285,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{14} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{14} } func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) @@ -1353,7 +1353,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} } func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{15} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{15} } func (m *TipsComm) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TipsComm.Unmarshal(m, b) @@ -1410,7 +1410,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{16} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{16} } func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) @@ -1479,7 +1479,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{17} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{17} } func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) @@ -1534,7 +1534,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{18} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{18} } func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) @@ -1590,7 +1590,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{19} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{19} } func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) @@ -1645,7 +1645,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{20} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{20} } func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) @@ -1700,7 +1700,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{21} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{21} } func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) @@ -1756,7 +1756,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{22} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{22} } func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) @@ -1819,7 +1819,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{23} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{23} } func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) @@ -1882,7 +1882,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{24} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{24} } func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) @@ -1944,7 +1944,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{25} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{25} } func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) @@ -1998,7 +1998,7 @@ func (m *GroupDismissedTips) Reset() { *m = GroupDismissedTips{} } func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) } func (*GroupDismissedTips) ProtoMessage() {} func (*GroupDismissedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{26} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{26} } func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b) @@ -2039,68 +2039,246 @@ func (m *GroupDismissedTips) GetOperationTime() int64 { return 0 } -type GroupMemberInfoChangedTips struct { +type GroupMemberMutedTips struct { Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` - ChangedUserList *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUserList" json:"changedUserList,omitempty"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser" json:"mutedUser,omitempty"` + MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds" json:"mutedSeconds,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *GroupMemberInfoChangedTips) Reset() { *m = GroupMemberInfoChangedTips{} } -func (m *GroupMemberInfoChangedTips) String() string { return proto.CompactTextString(m) } -func (*GroupMemberInfoChangedTips) ProtoMessage() {} -func (*GroupMemberInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{27} +func (m *GroupMemberMutedTips) Reset() { *m = GroupMemberMutedTips{} } +func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) } +func (*GroupMemberMutedTips) ProtoMessage() {} +func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_f1fa7995a968e7fe, []int{27} } -func (m *GroupMemberInfoChangedTips) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_GroupMemberInfoChangedTips.Unmarshal(m, b) +func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b) } -func (m *GroupMemberInfoChangedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_GroupMemberInfoChangedTips.Marshal(b, m, deterministic) +func (m *GroupMemberMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMemberMutedTips.Marshal(b, m, deterministic) } -func (dst *GroupMemberInfoChangedTips) XXX_Merge(src proto.Message) { - xxx_messageInfo_GroupMemberInfoChangedTips.Merge(dst, src) +func (dst *GroupMemberMutedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMemberMutedTips.Merge(dst, src) } -func (m *GroupMemberInfoChangedTips) XXX_Size() int { - return xxx_messageInfo_GroupMemberInfoChangedTips.Size(m) +func (m *GroupMemberMutedTips) XXX_Size() int { + return xxx_messageInfo_GroupMemberMutedTips.Size(m) } -func (m *GroupMemberInfoChangedTips) XXX_DiscardUnknown() { - xxx_messageInfo_GroupMemberInfoChangedTips.DiscardUnknown(m) +func (m *GroupMemberMutedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMemberMutedTips.DiscardUnknown(m) } -var xxx_messageInfo_GroupMemberInfoChangedTips proto.InternalMessageInfo +var xxx_messageInfo_GroupMemberMutedTips proto.InternalMessageInfo -func (m *GroupMemberInfoChangedTips) GetGroup() *GroupInfo { +func (m *GroupMemberMutedTips) GetGroup() *GroupInfo { if m != nil { return m.Group } return nil } -func (m *GroupMemberInfoChangedTips) GetOpUser() *GroupMemberFullInfo { +func (m *GroupMemberMutedTips) GetOpUser() *GroupMemberFullInfo { if m != nil { return m.OpUser } return nil } -func (m *GroupMemberInfoChangedTips) GetOperationTime() int64 { +func (m *GroupMemberMutedTips) GetOperationTime() int64 { if m != nil { return m.OperationTime } return 0 } -func (m *GroupMemberInfoChangedTips) GetChangedUserList() *GroupMemberFullInfo { +func (m *GroupMemberMutedTips) GetMutedUser() *GroupMemberFullInfo { if m != nil { - return m.ChangedUserList + return m.MutedUser } return nil } +func (m *GroupMemberMutedTips) GetMutedSeconds() uint32 { + if m != nil { + return m.MutedSeconds + } + return 0 +} + +type GroupMemberCancelMutedTips struct { + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser" json:"mutedUser,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupMemberCancelMutedTips) Reset() { *m = GroupMemberCancelMutedTips{} } +func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) } +func (*GroupMemberCancelMutedTips) ProtoMessage() {} +func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_f1fa7995a968e7fe, []int{28} +} +func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b) +} +func (m *GroupMemberCancelMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMemberCancelMutedTips.Marshal(b, m, deterministic) +} +func (dst *GroupMemberCancelMutedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMemberCancelMutedTips.Merge(dst, src) +} +func (m *GroupMemberCancelMutedTips) XXX_Size() int { + return xxx_messageInfo_GroupMemberCancelMutedTips.Size(m) +} +func (m *GroupMemberCancelMutedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMemberCancelMutedTips.DiscardUnknown(m) +} + +var xxx_messageInfo_GroupMemberCancelMutedTips proto.InternalMessageInfo + +func (m *GroupMemberCancelMutedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group + } + return nil +} + +func (m *GroupMemberCancelMutedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser + } + return nil +} + +func (m *GroupMemberCancelMutedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime + } + return 0 +} + +func (m *GroupMemberCancelMutedTips) GetMutedUser() *GroupMemberFullInfo { + if m != nil { + return m.MutedUser + } + return nil +} + +type GroupMutedTips struct { + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupMutedTips) Reset() { *m = GroupMutedTips{} } +func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) } +func (*GroupMutedTips) ProtoMessage() {} +func (*GroupMutedTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_f1fa7995a968e7fe, []int{29} +} +func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b) +} +func (m *GroupMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMutedTips.Marshal(b, m, deterministic) +} +func (dst *GroupMutedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMutedTips.Merge(dst, src) +} +func (m *GroupMutedTips) XXX_Size() int { + return xxx_messageInfo_GroupMutedTips.Size(m) +} +func (m *GroupMutedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMutedTips.DiscardUnknown(m) +} + +var xxx_messageInfo_GroupMutedTips proto.InternalMessageInfo + +func (m *GroupMutedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group + } + return nil +} + +func (m *GroupMutedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser + } + return nil +} + +func (m *GroupMutedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime + } + return 0 +} + +type GroupCancelMutedTips struct { + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GroupCancelMutedTips) Reset() { *m = GroupCancelMutedTips{} } +func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) } +func (*GroupCancelMutedTips) ProtoMessage() {} +func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_f1fa7995a968e7fe, []int{30} +} +func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b) +} +func (m *GroupCancelMutedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupCancelMutedTips.Marshal(b, m, deterministic) +} +func (dst *GroupCancelMutedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupCancelMutedTips.Merge(dst, src) +} +func (m *GroupCancelMutedTips) XXX_Size() int { + return xxx_messageInfo_GroupCancelMutedTips.Size(m) +} +func (m *GroupCancelMutedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupCancelMutedTips.DiscardUnknown(m) +} + +var xxx_messageInfo_GroupCancelMutedTips proto.InternalMessageInfo + +func (m *GroupCancelMutedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group + } + return nil +} + +func (m *GroupCancelMutedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser + } + return nil +} + +func (m *GroupCancelMutedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime + } + return 0 +} + type FriendApplication struct { AddTime int64 `protobuf:"varint,1,opt,name=addTime" json:"addTime,omitempty"` AddSource string `protobuf:"bytes,2,opt,name=addSource" json:"addSource,omitempty"` @@ -2114,7 +2292,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} } func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{28} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{31} } func (m *FriendApplication) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplication.Unmarshal(m, b) @@ -2167,7 +2345,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} } func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{29} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{32} } func (m *FromToUserID) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FromToUserID.Unmarshal(m, b) @@ -2213,7 +2391,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{30} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{33} } func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) @@ -2253,7 +2431,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{31} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{34} } func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) @@ -2300,7 +2478,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{32} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{35} } func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) @@ -2348,7 +2526,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{33} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{36} } func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) @@ -2401,7 +2579,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{34} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{37} } func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) @@ -2439,7 +2617,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{35} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{38} } func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) @@ -2477,7 +2655,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{36} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{39} } func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) @@ -2515,7 +2693,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{37} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{40} } func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) @@ -2554,7 +2732,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{38} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{41} } func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) @@ -2593,7 +2771,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{39} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{42} } func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) @@ -2633,7 +2811,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} } func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{40} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{43} } func (m *RequestPagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RequestPagination.Unmarshal(m, b) @@ -2679,7 +2857,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{41} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{44} } func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) @@ -2732,7 +2910,7 @@ func (m *SignalReq) Reset() { *m = SignalReq{} } func (m *SignalReq) String() string { return proto.CompactTextString(m) } func (*SignalReq) ProtoMessage() {} func (*SignalReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{42} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{45} } func (m *SignalReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalReq.Unmarshal(m, b) @@ -2999,7 +3177,7 @@ func (m *SignalResp) Reset() { *m = SignalResp{} } func (m *SignalResp) String() string { return proto.CompactTextString(m) } func (*SignalResp) ProtoMessage() {} func (*SignalResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{43} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{46} } func (m *SignalResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalResp.Unmarshal(m, b) @@ -3267,7 +3445,7 @@ func (m *InvitationInfo) Reset() { *m = InvitationInfo{} } func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } func (*InvitationInfo) ProtoMessage() {} func (*InvitationInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{44} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{47} } func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) @@ -3363,7 +3541,7 @@ func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} } func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } func (*ParticipantMetaData) ProtoMessage() {} func (*ParticipantMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{45} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{48} } func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) @@ -3418,7 +3596,7 @@ func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} } func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteReq) ProtoMessage() {} func (*SignalInviteReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{46} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{49} } func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) @@ -3479,7 +3657,7 @@ func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} } func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteReply) ProtoMessage() {} func (*SignalInviteReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{47} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{50} } func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) @@ -3534,7 +3712,7 @@ func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{} func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReq) ProtoMessage() {} func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{48} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{51} } func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) @@ -3595,7 +3773,7 @@ func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupRep func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReply) ProtoMessage() {} func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{49} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{52} } func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) @@ -3650,7 +3828,7 @@ func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} } func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } func (*SignalCancelReq) ProtoMessage() {} func (*SignalCancelReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{50} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{53} } func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) @@ -3708,7 +3886,7 @@ func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} } func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } func (*SignalCancelReply) ProtoMessage() {} func (*SignalCancelReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{51} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{54} } func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) @@ -3743,7 +3921,7 @@ func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} } func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReq) ProtoMessage() {} func (*SignalAcceptReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{52} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{55} } func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) @@ -3811,7 +3989,7 @@ func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} } func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReply) ProtoMessage() {} func (*SignalAcceptReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{53} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{56} } func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) @@ -3865,7 +4043,7 @@ func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} } func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReq) ProtoMessage() {} func (*SignalHungUpReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{54} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{57} } func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) @@ -3916,7 +4094,7 @@ func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} } func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReply) ProtoMessage() {} func (*SignalHungUpReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{55} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{58} } func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) @@ -3951,7 +4129,7 @@ func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} } func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } func (*SignalRejectReq) ProtoMessage() {} func (*SignalRejectReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{56} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{59} } func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) @@ -4016,7 +4194,7 @@ func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} } func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } func (*SignalRejectReply) ProtoMessage() {} func (*SignalRejectReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{57} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{60} } func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) @@ -4050,7 +4228,7 @@ func (m *DelMsgListReq) Reset() { *m = DelMsgListReq{} } func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) } func (*DelMsgListReq) ProtoMessage() {} func (*DelMsgListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{58} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{61} } func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b) @@ -4110,7 +4288,7 @@ func (m *DelMsgListResp) Reset() { *m = DelMsgListResp{} } func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) } func (*DelMsgListResp) ProtoMessage() {} func (*DelMsgListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_48b3765a4295b161, []int{59} + return fileDescriptor_ws_f1fa7995a968e7fe, []int{62} } func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b) @@ -4173,7 +4351,10 @@ func init() { proto.RegisterType((*MemberInvitedTips)(nil), "server_api_params.MemberInvitedTips") proto.RegisterType((*MemberEnterTips)(nil), "server_api_params.MemberEnterTips") proto.RegisterType((*GroupDismissedTips)(nil), "server_api_params.GroupDismissedTips") - proto.RegisterType((*GroupMemberInfoChangedTips)(nil), "server_api_params.GroupMemberInfoChangedTips") + proto.RegisterType((*GroupMemberMutedTips)(nil), "server_api_params.GroupMemberMutedTips") + proto.RegisterType((*GroupMemberCancelMutedTips)(nil), "server_api_params.GroupMemberCancelMutedTips") + proto.RegisterType((*GroupMutedTips)(nil), "server_api_params.GroupMutedTips") + proto.RegisterType((*GroupCancelMutedTips)(nil), "server_api_params.GroupCancelMutedTips") proto.RegisterType((*FriendApplication)(nil), "server_api_params.FriendApplication") proto.RegisterType((*FromToUserID)(nil), "server_api_params.FromToUserID") proto.RegisterType((*FriendApplicationTips)(nil), "server_api_params.FriendApplicationTips") @@ -4208,172 +4389,176 @@ func init() { proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp") } -func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_48b3765a4295b161) } - -var fileDescriptor_ws_48b3765a4295b161 = []byte{ - // 2624 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3a, 0xcd, 0x6f, 0xe4, 0x48, - 0xf5, 0x3f, 0xbb, 0xd3, 0x9d, 0xf4, 0xeb, 0x74, 0x3a, 0x71, 0xf6, 0x17, 0x9a, 0x30, 0x3b, 0x04, - 0x2b, 0x5a, 0x86, 0x05, 0xb2, 0x68, 0x10, 0x12, 0xcc, 0xc2, 0xa0, 0x7c, 0xcc, 0xd7, 0x92, 0x9e, - 0xc9, 0xba, 0x67, 0x58, 0x04, 0x48, 0x23, 0xa7, 0x5d, 0xe9, 0x78, 0xe3, 0xae, 0x72, 0xfb, 0x23, - 0x33, 0x91, 0x90, 0x90, 0x40, 0x42, 0xdc, 0x38, 0xc1, 0x15, 0x89, 0x0b, 0x42, 0x42, 0xab, 0x3d, - 0xc0, 0x0d, 0x71, 0xe2, 0x1f, 0xe0, 0x88, 0xb8, 0x71, 0xe6, 0xca, 0x01, 0x09, 0x09, 0x54, 0xf5, - 0xca, 0x76, 0x95, 0xdd, 0x9d, 0xf4, 0x44, 0xd1, 0xce, 0xa2, 0xe1, 0xe6, 0xf7, 0x5c, 0xef, 0xd5, - 0xab, 0xf7, 0x5d, 0xcf, 0x86, 0x4e, 0xec, 0x9d, 0x3c, 0x7d, 0x16, 0xbf, 0xf5, 0x2c, 0xde, 0x0a, - 0x23, 0x96, 0x30, 0x6b, 0x25, 0x26, 0xd1, 0x29, 0x89, 0x9e, 0xba, 0xa1, 0xff, 0x34, 0x74, 0x23, - 0x77, 0x14, 0xdb, 0xff, 0x30, 0xa1, 0x79, 0x2f, 0x62, 0x69, 0xf8, 0x80, 0x1e, 0x31, 0xab, 0x0b, - 0xf3, 0x43, 0x01, 0xec, 0x75, 0x8d, 0x0d, 0xe3, 0x46, 0xd3, 0xc9, 0x40, 0xeb, 0x1a, 0x34, 0xc5, - 0xe3, 0x43, 0x77, 0x44, 0xba, 0xa6, 0x78, 0x57, 0x20, 0x2c, 0x1b, 0x16, 0x29, 0x4b, 0xfc, 0x23, - 0x7f, 0xe0, 0x26, 0x3e, 0xa3, 0xdd, 0x9a, 0x58, 0xa0, 0xe1, 0xf8, 0x1a, 0x9f, 0x26, 0x11, 0xf3, - 0xd2, 0x81, 0x58, 0x33, 0x87, 0x6b, 0x54, 0x1c, 0xdf, 0xff, 0xc8, 0x1d, 0x90, 0x27, 0xce, 0x7e, - 0xb7, 0x8e, 0xfb, 0x4b, 0xd0, 0xda, 0x80, 0x16, 0x7b, 0x46, 0x49, 0xf4, 0x24, 0x26, 0xd1, 0x83, - 0xbd, 0x6e, 0x43, 0xbc, 0x55, 0x51, 0xd6, 0x75, 0x80, 0x41, 0x44, 0xdc, 0x84, 0x3c, 0xf6, 0x47, - 0xa4, 0x3b, 0xbf, 0x61, 0xdc, 0x68, 0x3b, 0x0a, 0x86, 0x73, 0x18, 0x91, 0xd1, 0x21, 0x89, 0x76, - 0x59, 0x4a, 0x93, 0xee, 0x82, 0x58, 0xa0, 0xa2, 0xac, 0x25, 0x30, 0xc9, 0xf3, 0x6e, 0x53, 0xb0, - 0x36, 0xc9, 0x73, 0x6b, 0x0d, 0x1a, 0x71, 0xe2, 0x26, 0x69, 0xdc, 0x85, 0x0d, 0xe3, 0x46, 0xdd, - 0x91, 0x90, 0xb5, 0x09, 0x6d, 0xc1, 0x97, 0x65, 0xd2, 0xb4, 0x04, 0x89, 0x8e, 0xcc, 0x35, 0xf6, - 0xf8, 0x2c, 0x24, 0xdd, 0x45, 0xc1, 0xa0, 0x40, 0xd8, 0x7f, 0x31, 0x61, 0x55, 0xe8, 0xbd, 0x27, - 0x04, 0xb8, 0x9b, 0x06, 0xc1, 0x05, 0x16, 0x58, 0x83, 0x46, 0x8a, 0xdb, 0xa1, 0xfa, 0x25, 0xc4, - 0xf7, 0x89, 0x58, 0x40, 0xf6, 0xc9, 0x29, 0x09, 0x84, 0xe2, 0xeb, 0x4e, 0x81, 0xb0, 0xd6, 0x61, - 0xe1, 0x7d, 0xe6, 0x53, 0xa1, 0x93, 0x39, 0xf1, 0x32, 0x87, 0xf9, 0x3b, 0xea, 0x0f, 0x4e, 0x28, - 0x37, 0x29, 0xaa, 0x3b, 0x87, 0x55, 0x4b, 0x34, 0x74, 0x4b, 0xbc, 0x01, 0x4b, 0x6e, 0x18, 0xf6, - 0x5c, 0x3a, 0x24, 0x11, 0x6e, 0x3a, 0x2f, 0xf8, 0x96, 0xb0, 0xdc, 0x1e, 0x7c, 0xa7, 0x3e, 0x4b, - 0xa3, 0x01, 0x11, 0xea, 0xae, 0x3b, 0x0a, 0x86, 0xf3, 0x61, 0x21, 0x89, 0x14, 0x35, 0xa2, 0xe6, - 0x4b, 0x58, 0x69, 0x15, 0xc8, 0xad, 0xc2, 0xed, 0x98, 0x26, 0xe4, 0x0e, 0xf5, 0xc4, 0xa1, 0x5a, - 0xd2, 0x8e, 0x05, 0xca, 0xfe, 0x89, 0x01, 0x4b, 0x07, 0xe9, 0x61, 0xe0, 0x0f, 0x04, 0x0b, 0xae, - 0xd6, 0x42, 0x79, 0x86, 0xa6, 0x3c, 0x55, 0x05, 0xe6, 0x74, 0x15, 0xd4, 0x74, 0x15, 0xac, 0x41, - 0x63, 0x48, 0xa8, 0x47, 0x22, 0xa9, 0x52, 0x09, 0x49, 0x51, 0xeb, 0x99, 0xa8, 0xf6, 0x2f, 0x4c, - 0x58, 0xf8, 0x88, 0x45, 0xd8, 0x80, 0x56, 0x78, 0xcc, 0x28, 0x79, 0x98, 0x72, 0xb7, 0x92, 0xb2, - 0xa8, 0x28, 0xeb, 0x35, 0xa8, 0x1f, 0xfa, 0x51, 0x72, 0x2c, 0xec, 0xda, 0x76, 0x10, 0xe0, 0x58, - 0x32, 0x72, 0x7d, 0x34, 0x66, 0xd3, 0x41, 0x40, 0x1e, 0x68, 0x21, 0xd7, 0xbd, 0x1e, 0x63, 0xcd, - 0x4a, 0x8c, 0x55, 0x7d, 0x03, 0x26, 0xf9, 0x86, 0xfd, 0x4f, 0x03, 0xe0, 0x6e, 0xe4, 0x13, 0xea, - 0x09, 0xd5, 0x94, 0x82, 0xdb, 0xa8, 0x06, 0xf7, 0x1a, 0x34, 0x22, 0x32, 0x72, 0xa3, 0x93, 0xcc, - 0xf9, 0x11, 0x2a, 0x09, 0x54, 0xab, 0x08, 0xf4, 0x36, 0xc0, 0x91, 0xd8, 0x87, 0xf3, 0x11, 0xaa, - 0x6a, 0xdd, 0xfc, 0xd4, 0x56, 0x25, 0x0d, 0x6e, 0x65, 0x56, 0x72, 0x94, 0xe5, 0x3c, 0xb2, 0x5c, - 0xcf, 0x93, 0x0e, 0x5c, 0xc7, 0xc8, 0xca, 0x11, 0x13, 0xfc, 0xb7, 0x71, 0x8e, 0xff, 0xce, 0xe7, - 0x4e, 0xf1, 0x77, 0x03, 0x9a, 0x3b, 0x81, 0x3b, 0x38, 0x99, 0xf1, 0xe8, 0xfa, 0x11, 0xcd, 0xca, - 0x11, 0xef, 0x41, 0xfb, 0x90, 0xb3, 0xcb, 0x8e, 0x20, 0xb4, 0xd0, 0xba, 0xf9, 0x99, 0x09, 0xa7, - 0xd4, 0x83, 0xc2, 0xd1, 0xe9, 0xf4, 0xe3, 0xce, 0x5d, 0x7c, 0xdc, 0xfa, 0x39, 0xc7, 0x6d, 0xe4, - 0xc7, 0xfd, 0xb3, 0x09, 0x8b, 0x22, 0xd1, 0x39, 0x64, 0x9c, 0x92, 0x38, 0xb1, 0xbe, 0x01, 0x0b, - 0x69, 0x26, 0xaa, 0x31, 0xab, 0xa8, 0x39, 0x89, 0x75, 0x4b, 0xa6, 0x55, 0x41, 0x6f, 0x0a, 0xfa, - 0x6b, 0x13, 0xe8, 0xf3, 0x9a, 0xe6, 0x14, 0xcb, 0x79, 0x09, 0x3a, 0x76, 0xa9, 0x17, 0x10, 0x87, - 0xc4, 0x69, 0x90, 0xc8, 0x6c, 0xa9, 0xe1, 0xd0, 0xd3, 0xc6, 0xbd, 0x78, 0x28, 0x0b, 0x94, 0x84, - 0xb8, 0x76, 0x70, 0x1d, 0x7f, 0x85, 0x47, 0x2f, 0x10, 0x3c, 0x50, 0x23, 0x32, 0x16, 0x16, 0xc2, - 0xb0, 0xca, 0xc0, 0x62, 0x4f, 0xa9, 0x35, 0x74, 0x04, 0x0d, 0xc7, 0x4d, 0x8c, 0xb0, 0x60, 0x80, - 0x95, 0x49, 0xc1, 0x94, 0x0b, 0x93, 0xfd, 0xd7, 0x1a, 0xb4, 0x31, 0x7c, 0x32, 0xa5, 0x5e, 0xe7, - 0x7e, 0xce, 0x46, 0x9a, 0x17, 0x29, 0x18, 0x2e, 0x05, 0x87, 0x1e, 0xea, 0x89, 0x46, 0xc3, 0x71, - 0x57, 0xe4, 0xf0, 0x5d, 0x2d, 0xe1, 0xa8, 0xa8, 0x6c, 0x97, 0x7b, 0x6a, 0xe2, 0x51, 0x30, 0x3c, - 0x95, 0x25, 0x4c, 0xf3, 0x8e, 0x1c, 0xe6, 0xb4, 0x09, 0xcb, 0xf7, 0x47, 0xff, 0x50, 0x30, 0x5c, - 0xbf, 0x09, 0xcb, 0xf6, 0x46, 0x25, 0x15, 0x08, 0xe4, 0x2c, 0xf7, 0xc5, 0x52, 0x92, 0xc3, 0x15, - 0xab, 0x36, 0xcf, 0xb5, 0x2a, 0x68, 0x56, 0xd5, 0x83, 0xab, 0x55, 0x09, 0xae, 0x4d, 0x68, 0x23, - 0x9f, 0xcc, 0xe9, 0x17, 0xb1, 0xd4, 0x6b, 0x48, 0xdd, 0x37, 0xda, 0x65, 0xdf, 0xd0, 0xad, 0xbb, - 0x34, 0xc5, 0xba, 0x9d, 0xdc, 0xba, 0x3f, 0x80, 0xee, 0x41, 0x1a, 0x04, 0x3d, 0x12, 0xc7, 0xee, - 0x90, 0xec, 0x9c, 0xf5, 0xc9, 0x78, 0xdf, 0x8f, 0x13, 0x87, 0xc4, 0x21, 0xf7, 0x33, 0x12, 0x45, - 0xbb, 0xcc, 0x23, 0xc2, 0xc8, 0x75, 0x27, 0x03, 0xf9, 0x09, 0x49, 0x14, 0x71, 0x01, 0x64, 0x86, - 0x44, 0xc8, 0xda, 0x82, 0xb9, 0xc0, 0x8f, 0xb9, 0xaf, 0xd7, 0x6e, 0xb4, 0x6e, 0xae, 0x4f, 0x08, - 0x95, 0x5e, 0x3c, 0xdc, 0x73, 0x13, 0xd7, 0x11, 0xeb, 0xec, 0x11, 0x7c, 0x62, 0xf2, 0xee, 0xe3, - 0xa9, 0x15, 0x8c, 0xe7, 0x30, 0x91, 0x04, 0x7c, 0x46, 0xf3, 0xf6, 0x44, 0x45, 0x71, 0xb1, 0x63, - 0xe4, 0x23, 0xe4, 0x68, 0x3b, 0x19, 0x68, 0xbf, 0x06, 0xd6, 0x3d, 0x92, 0xf4, 0xdc, 0xe7, 0xdb, - 0xd4, 0xeb, 0xf9, 0xb4, 0x4f, 0xc6, 0x0e, 0x19, 0xdb, 0x77, 0x60, 0xb5, 0x82, 0x8d, 0x43, 0x2e, - 0xc0, 0xc8, 0x7d, 0xde, 0x27, 0x63, 0x21, 0x40, 0xdb, 0x91, 0x90, 0xc0, 0x8b, 0x55, 0x32, 0x3d, - 0x4a, 0xc8, 0x1e, 0x43, 0x87, 0x5b, 0xa8, 0x4f, 0xa8, 0xd7, 0x8b, 0x87, 0x82, 0xc5, 0x06, 0xb4, - 0x50, 0x03, 0xbd, 0x78, 0x58, 0xe4, 0x5b, 0x05, 0xc5, 0x57, 0x0c, 0x02, 0x9f, 0xd0, 0x04, 0x57, - 0xc8, 0xd3, 0x28, 0x28, 0xee, 0x8c, 0x31, 0x91, 0xed, 0x07, 0x8f, 0x92, 0x9a, 0x93, 0xc3, 0xf6, - 0x1f, 0xea, 0x30, 0x2f, 0x15, 0x2a, 0xfa, 0x47, 0x5e, 0xe2, 0x72, 0x7d, 0x21, 0x84, 0xce, 0x38, - 0x38, 0x2d, 0x3a, 0x39, 0x84, 0xd4, 0xde, 0xaf, 0xa6, 0xf7, 0x7e, 0x25, 0x99, 0xe6, 0xaa, 0x32, - 0x95, 0xce, 0x55, 0xaf, 0x9e, 0xeb, 0x4d, 0x58, 0x8e, 0x45, 0xc0, 0x1c, 0x04, 0x6e, 0x72, 0xc4, - 0xa2, 0x91, 0xac, 0x58, 0x75, 0xa7, 0x82, 0xe7, 0xc9, 0x1e, 0x71, 0x79, 0xc0, 0x62, 0x44, 0x96, - 0xb0, 0x3c, 0x3c, 0x10, 0x93, 0x05, 0x2e, 0xb6, 0x0a, 0x3a, 0x12, 0x65, 0x8b, 0x63, 0x9f, 0x51, - 0xd1, 0x0b, 0x63, 0x7c, 0xaa, 0x28, 0x7e, 0xf2, 0x51, 0x3c, 0xbc, 0x1b, 0xb1, 0x91, 0x6c, 0x18, - 0x32, 0x50, 0x9c, 0x9c, 0xd1, 0x84, 0xd0, 0x44, 0xd0, 0xb6, 0x90, 0x56, 0x41, 0x71, 0x5a, 0x09, - 0x8a, 0xe0, 0x5c, 0x74, 0x32, 0xd0, 0x5a, 0x86, 0x5a, 0x4c, 0xc6, 0x32, 0xe2, 0xf8, 0xa3, 0x66, - 0xb9, 0x8e, 0x6e, 0xb9, 0x52, 0x2a, 0x58, 0x16, 0x6f, 0xd5, 0x54, 0x50, 0xdc, 0x06, 0x56, 0xb4, - 0xdb, 0xc0, 0x36, 0xcc, 0xb3, 0x90, 0xfb, 0x79, 0xdc, 0xb5, 0x44, 0x8c, 0x7d, 0x76, 0x7a, 0x8c, - 0x6d, 0x3d, 0xc2, 0x95, 0x77, 0x68, 0x12, 0x9d, 0x39, 0x19, 0x9d, 0xb5, 0x0f, 0x1d, 0x76, 0x74, - 0x14, 0xf8, 0x94, 0x1c, 0xa4, 0xf1, 0xb1, 0xa8, 0x6c, 0xab, 0xa2, 0xb2, 0xd9, 0x13, 0x58, 0x3d, - 0xd2, 0x57, 0x3a, 0x65, 0xd2, 0xf5, 0x5b, 0xb0, 0xa8, 0x6e, 0xc3, 0xd5, 0x70, 0x42, 0xce, 0xa4, - 0x0f, 0xf2, 0x47, 0xde, 0xec, 0x9d, 0xba, 0x41, 0x8a, 0x65, 0x60, 0xc1, 0x41, 0xe0, 0x96, 0xf9, - 0x55, 0xc3, 0xfe, 0xb9, 0x01, 0x9d, 0xd2, 0x06, 0x7c, 0x75, 0xe2, 0x27, 0x01, 0x91, 0x1c, 0x10, - 0xb0, 0x2c, 0x98, 0xf3, 0x48, 0x3c, 0x90, 0x2e, 0x2c, 0x9e, 0x65, 0x26, 0xab, 0xe5, 0xed, 0x22, - 0xbf, 0xf2, 0x3d, 0xea, 0x73, 0x46, 0x7d, 0x96, 0x52, 0x2f, 0xbf, 0xf2, 0x29, 0x38, 0xee, 0x42, - 0xfe, 0xa3, 0xfe, 0x8e, 0xeb, 0x0d, 0x09, 0x5e, 0xcc, 0xea, 0x42, 0x26, 0x1d, 0x69, 0x7b, 0xb0, - 0xf0, 0xd8, 0x0f, 0xe3, 0x5d, 0x36, 0x1a, 0x71, 0x43, 0x78, 0x24, 0xe1, 0xbd, 0xaa, 0x21, 0xec, - 0x2d, 0x21, 0xee, 0x2a, 0x1e, 0x39, 0x72, 0xd3, 0x20, 0xe1, 0x4b, 0xb3, 0xc0, 0x55, 0x50, 0xe2, - 0x4a, 0x12, 0x33, 0xba, 0x87, 0xd4, 0x28, 0xa7, 0x82, 0xb1, 0xff, 0x64, 0xc2, 0xb2, 0x68, 0x1c, - 0x76, 0x85, 0xd9, 0x3d, 0x41, 0x74, 0x13, 0xea, 0x22, 0x0c, 0x65, 0xb3, 0x72, 0x7e, 0xb3, 0x81, - 0x4b, 0xad, 0xdb, 0xd0, 0x60, 0xa1, 0x68, 0x39, 0xb1, 0x43, 0x79, 0x63, 0x1a, 0x91, 0x7e, 0xfb, - 0x73, 0x24, 0x95, 0x75, 0x17, 0x00, 0x2f, 0xa6, 0xfb, 0x45, 0xea, 0x9e, 0x95, 0x87, 0x42, 0xc9, - 0x95, 0x9b, 0xa7, 0xe1, 0xfc, 0x0a, 0x58, 0x73, 0x74, 0xa4, 0xf5, 0x10, 0x96, 0x84, 0xd8, 0x8f, - 0xb2, 0xae, 0x53, 0xd8, 0x60, 0xf6, 0x1d, 0x4b, 0xd4, 0xf6, 0xaf, 0x0c, 0xa9, 0x46, 0xfe, 0xb6, - 0x4f, 0x50, 0xf7, 0x85, 0x4a, 0x8c, 0x4b, 0xa9, 0x64, 0x1d, 0x16, 0xf8, 0x1d, 0x2f, 0x6f, 0x82, - 0x6b, 0x4e, 0x0e, 0x17, 0x26, 0xaa, 0xcd, 0x6c, 0x22, 0xfb, 0xd7, 0x06, 0x74, 0xdf, 0x61, 0x3e, - 0x15, 0x2f, 0xb6, 0xc3, 0x30, 0x90, 0x73, 0x8a, 0x4b, 0xdb, 0xfc, 0x9b, 0xd0, 0x74, 0x91, 0x0d, - 0x4d, 0xa4, 0xd9, 0x67, 0x68, 0x6c, 0x0b, 0x1a, 0xa5, 0x47, 0xa9, 0xa9, 0x3d, 0x8a, 0xfd, 0x81, - 0x01, 0x4b, 0xa8, 0x94, 0x77, 0x53, 0x3f, 0xb9, 0xb4, 0x7c, 0x3b, 0xb0, 0x30, 0x4e, 0xfd, 0xe4, - 0x12, 0x5e, 0x99, 0xd3, 0x55, 0xfd, 0xa9, 0x36, 0xc1, 0x9f, 0xec, 0x0f, 0x0d, 0xb8, 0x56, 0x56, - 0xeb, 0xf6, 0x60, 0x40, 0xc2, 0x97, 0x19, 0x52, 0x5a, 0x8f, 0x36, 0x57, 0xea, 0xd1, 0x26, 0x8a, - 0xec, 0x90, 0xf7, 0xc9, 0xe0, 0xe3, 0x2b, 0xf2, 0x8f, 0x4d, 0xf8, 0xe4, 0xbd, 0x3c, 0xf0, 0x1e, - 0x47, 0x2e, 0x8d, 0x8f, 0x48, 0x14, 0xbd, 0x44, 0x79, 0xf7, 0xa1, 0x4d, 0xc9, 0xb3, 0x42, 0x26, - 0x19, 0x8e, 0xb3, 0xb2, 0xd1, 0x89, 0x67, 0xcb, 0x5d, 0xf6, 0xbf, 0x0c, 0x58, 0x46, 0x3e, 0xdf, - 0xf2, 0x07, 0x27, 0x2f, 0xf1, 0xf0, 0x0f, 0x61, 0xe9, 0x44, 0x48, 0xc0, 0xa1, 0x4b, 0xa4, 0xed, - 0x12, 0xf5, 0x8c, 0xc7, 0xff, 0xb7, 0x01, 0x2b, 0xc8, 0xe8, 0x01, 0x3d, 0xf5, 0x5f, 0xa6, 0xb3, - 0x1e, 0x40, 0xc7, 0x47, 0x11, 0x2e, 0xa9, 0x80, 0x32, 0xf9, 0x8c, 0x1a, 0xf8, 0xbd, 0x01, 0x1d, - 0xe4, 0x74, 0x87, 0x26, 0x24, 0xba, 0xf4, 0xf9, 0xef, 0x43, 0x8b, 0xd0, 0x24, 0x72, 0xe9, 0x65, - 0x32, 0xa4, 0x4a, 0x3a, 0x63, 0x92, 0xfc, 0xc0, 0x00, 0x4b, 0xb0, 0xda, 0xf3, 0xe3, 0x91, 0x1f, - 0xc7, 0x2f, 0xd1, 0x74, 0xb3, 0x09, 0xfc, 0x53, 0x13, 0xd6, 0x15, 0x2e, 0x9c, 0xc3, 0xee, 0xb1, - 0x4b, 0x87, 0x1f, 0x77, 0xc1, 0xb9, 0x67, 0x0e, 0x50, 0xd0, 0xdc, 0x33, 0xe7, 0x5e, 0x68, 0xbb, - 0x32, 0xb9, 0x7d, 0x02, 0x2b, 0x38, 0x7e, 0x51, 0xaa, 0x05, 0xbf, 0x87, 0xb8, 0x1e, 0x5e, 0x2d, - 0x0c, 0x21, 0x46, 0x06, 0xea, 0x83, 0x35, 0xf9, 0xed, 0xa4, 0x18, 0xac, 0x5d, 0x07, 0x70, 0x3d, - 0xef, 0x3d, 0x16, 0x79, 0x3e, 0xcd, 0x4a, 0xbf, 0x82, 0xb1, 0xdf, 0x81, 0x45, 0x7e, 0x13, 0x7a, - 0xac, 0x0c, 0x52, 0xce, 0x1d, 0xf5, 0xa8, 0x43, 0x18, 0x53, 0x1f, 0xc2, 0xd8, 0xdf, 0x87, 0xff, - 0xaf, 0x08, 0x2e, 0xac, 0xb7, 0x8b, 0xf3, 0xa1, 0x6c, 0x13, 0x69, 0xc4, 0x4f, 0x4f, 0x50, 0x90, - 0x2a, 0x8b, 0xa3, 0x11, 0xd9, 0x3f, 0x32, 0xe0, 0xf5, 0x0a, 0xfb, 0xed, 0x30, 0x8c, 0xd8, 0xa9, - 0x74, 0x92, 0xab, 0xd8, 0x46, 0x2f, 0x8b, 0x66, 0xb9, 0x2c, 0x4e, 0x14, 0x42, 0x2b, 0xe5, 0x1f, - 0x81, 0x10, 0xbf, 0x31, 0xa0, 0x23, 0x85, 0xf0, 0x3c, 0xb9, 0xed, 0x57, 0xa0, 0x81, 0xb3, 0x65, - 0xb9, 0xe1, 0xeb, 0x13, 0x37, 0xcc, 0x66, 0xe2, 0x8e, 0x5c, 0x5c, 0xf5, 0x71, 0x73, 0x92, 0x8f, - 0x7f, 0x2d, 0x8f, 0xa4, 0x99, 0xa7, 0xbf, 0x92, 0xc0, 0xfe, 0x4e, 0xe6, 0xcc, 0x7b, 0x24, 0x20, - 0x57, 0xa9, 0x23, 0xfb, 0x09, 0x2c, 0x89, 0x41, 0x77, 0xa1, 0x83, 0x2b, 0x61, 0xfb, 0x1e, 0x2c, - 0x0b, 0xb6, 0x57, 0x2e, 0x6f, 0x1e, 0x1d, 0xe5, 0xdc, 0x76, 0x25, 0xdc, 0xbf, 0x08, 0xab, 0x99, - 0xee, 0x9f, 0x84, 0x5e, 0x7e, 0xbd, 0x9c, 0x32, 0x54, 0xb3, 0xbf, 0x04, 0x6b, 0xbb, 0x8c, 0x9e, - 0x92, 0x28, 0x16, 0x56, 0x46, 0x92, 0x8c, 0x42, 0x0b, 0x7e, 0x09, 0xd9, 0x7d, 0x58, 0x91, 0xe3, - 0xe0, 0x03, 0x77, 0xe8, 0x53, 0xcc, 0x4a, 0xd7, 0x01, 0x42, 0x77, 0x98, 0x7d, 0x0e, 0xc2, 0x99, - 0xa1, 0x82, 0xe1, 0xef, 0xe3, 0x63, 0xf6, 0x4c, 0xbe, 0x37, 0xf1, 0x7d, 0x81, 0xb1, 0xbf, 0x0d, - 0x96, 0x43, 0xe2, 0x90, 0xd1, 0x98, 0x28, 0x5c, 0x37, 0xa0, 0xb5, 0x9b, 0x46, 0x11, 0xa1, 0x7c, - 0xab, 0xec, 0xdb, 0x88, 0x8a, 0xe2, 0x7c, 0xfb, 0x05, 0x5f, 0x9c, 0x33, 0x29, 0x18, 0xfb, 0x97, - 0x35, 0x68, 0xf6, 0xfd, 0x21, 0x75, 0x03, 0x87, 0x8c, 0xad, 0xaf, 0x43, 0x03, 0xab, 0xbf, 0x54, - 0xed, 0xa4, 0xb9, 0x07, 0xae, 0xc6, 0x36, 0xc7, 0x21, 0xe3, 0xfb, 0xff, 0xe7, 0x48, 0x1a, 0xeb, - 0x5d, 0x68, 0xe3, 0xd3, 0x03, 0xbc, 0xcd, 0xc9, 0x6a, 0xf2, 0xb9, 0x0b, 0x98, 0xc8, 0xd5, 0xc8, - 0x4b, 0xe7, 0xc0, 0x05, 0x1a, 0xb8, 0x74, 0x20, 0xbf, 0xa8, 0x9e, 0x27, 0xd0, 0xae, 0x58, 0x26, - 0x05, 0x42, 0x1a, 0x4e, 0xed, 0x8a, 0xfb, 0x8e, 0x2c, 0x34, 0xd3, 0xa9, 0xf1, 0x5a, 0x24, 0xa9, - 0x91, 0x86, 0x53, 0x1f, 0xa7, 0x74, 0xf8, 0x24, 0x94, 0xd7, 0xf0, 0xe9, 0xd4, 0xf7, 0xc5, 0x32, - 0x49, 0x8d, 0x34, 0x9c, 0x3a, 0x12, 0xd9, 0x4e, 0x28, 0xfd, 0x3c, 0x6a, 0x4c, 0x8a, 0x92, 0x1a, - 0x69, 0x76, 0x9a, 0x30, 0x1f, 0xba, 0x67, 0x01, 0x73, 0x3d, 0xfb, 0xb7, 0x35, 0x80, 0x6c, 0x61, - 0x2c, 0x6a, 0xb5, 0x66, 0xa2, 0xcd, 0x0b, 0x4d, 0x14, 0x06, 0x67, 0x8a, 0x91, 0xfa, 0x93, 0x8d, - 0xf4, 0xf9, 0x59, 0x8d, 0x84, 0xdc, 0x4a, 0x66, 0xba, 0x5d, 0x32, 0xd3, 0xe6, 0x85, 0x66, 0x92, - 0x42, 0x49, 0x43, 0xdd, 0x2e, 0x19, 0x6a, 0xf3, 0x42, 0x43, 0x49, 0x7a, 0x69, 0xaa, 0xdb, 0x25, - 0x53, 0x6d, 0x5e, 0x68, 0x2a, 0x49, 0x2f, 0x8d, 0x75, 0xbb, 0x64, 0xac, 0xcd, 0x0b, 0x8d, 0x25, - 0xe9, 0xab, 0xe6, 0xfa, 0xd0, 0x84, 0x25, 0xa1, 0x32, 0x9c, 0xb9, 0xd3, 0x23, 0x26, 0x46, 0x6b, - 0x42, 0x5d, 0xfa, 0xd7, 0x45, 0x1d, 0x69, 0x7d, 0x01, 0x56, 0x10, 0x21, 0xbf, 0x46, 0x89, 0x06, - 0xc9, 0xdc, 0xa8, 0xdd, 0x68, 0x3a, 0xd5, 0x17, 0x62, 0x4a, 0x9a, 0xc6, 0x09, 0x1b, 0xed, 0xb9, - 0x89, 0x9b, 0x75, 0x2b, 0x05, 0x46, 0x9d, 0x61, 0xcf, 0x55, 0xfe, 0x5f, 0x88, 0x18, 0x1b, 0xe5, - 0xc3, 0x69, 0x09, 0x71, 0x8a, 0xc4, 0x1f, 0x11, 0x96, 0x26, 0x32, 0x4d, 0x64, 0x20, 0xaf, 0xb1, - 0x23, 0xe2, 0xf9, 0xae, 0x98, 0xfc, 0xca, 0x4f, 0x42, 0x39, 0x42, 0x64, 0xb6, 0x62, 0x92, 0x2d, - 0xff, 0x2f, 0x28, 0x30, 0x17, 0x4f, 0x9d, 0xed, 0xbf, 0x19, 0xb0, 0x7a, 0xe0, 0x46, 0x89, 0x3f, - 0xf0, 0x43, 0x97, 0x26, 0x3d, 0x92, 0xb8, 0xe2, 0x0c, 0xda, 0x27, 0x46, 0xe3, 0xc5, 0x3e, 0x31, - 0x1e, 0x40, 0x67, 0xa8, 0x37, 0xc9, 0x2f, 0xd8, 0xdb, 0x96, 0xc9, 0xb5, 0xef, 0xa5, 0xb5, 0x17, - 0xfe, 0x5e, 0xca, 0xdb, 0xf6, 0x4e, 0x29, 0x75, 0xf2, 0x16, 0x11, 0x8b, 0x7f, 0xee, 0x13, 0x39, - 0x6c, 0x6d, 0x03, 0xf8, 0xb9, 0x1b, 0x9d, 0x33, 0xc7, 0xd2, 0x7d, 0xcd, 0x51, 0x88, 0x26, 0x8d, - 0xb3, 0x6b, 0x97, 0x1e, 0x67, 0xf3, 0x8b, 0x59, 0x58, 0x18, 0xe9, 0x9c, 0xd6, 0x7d, 0x82, 0x29, - 0x1d, 0x95, 0xd4, 0xfe, 0x1e, 0xac, 0x54, 0x32, 0x94, 0x98, 0x6e, 0xb3, 0x13, 0x42, 0xf3, 0xe9, - 0x36, 0x07, 0x14, 0x67, 0x35, 0xcb, 0xce, 0x1a, 0xf8, 0xa7, 0xea, 0x0f, 0x19, 0x12, 0xb4, 0x7f, - 0x66, 0xc2, 0xda, 0xe4, 0xea, 0xf2, 0xaa, 0xaa, 0xfb, 0x10, 0xba, 0xd3, 0x32, 0xf9, 0x95, 0x69, - 0xbd, 0xf0, 0xee, 0xbc, 0x0e, 0xbf, 0xaa, 0xea, 0x5e, 0xcd, 0xbc, 0x5b, 0x29, 0x75, 0xf6, 0xef, - 0x72, 0xfd, 0xe4, 0x9d, 0xc6, 0x2b, 0xaa, 0x1f, 0xeb, 0x4d, 0x58, 0xc6, 0x63, 0x2a, 0xdf, 0x3f, - 0xb1, 0x71, 0xad, 0xe0, 0x8b, 0x4c, 0xa1, 0x94, 0xfd, 0x2b, 0xf3, 0xd9, 0x3f, 0x1a, 0x99, 0x4d, - 0xf2, 0xfe, 0xed, 0xbf, 0xca, 0x26, 0x85, 0xa7, 0x29, 0x4d, 0x8d, 0xe2, 0x69, 0x79, 0x5f, 0xf9, - 0x3f, 0x4f, 0xbb, 0xd8, 0xd3, 0x72, 0x5d, 0x2a, 0x0d, 0x9e, 0xfd, 0x43, 0x68, 0xef, 0x91, 0xa0, - 0x17, 0x0f, 0xb3, 0x3f, 0x2f, 0xce, 0x53, 0xe4, 0xb4, 0xff, 0x42, 0xa7, 0xfe, 0x73, 0x51, 0xfe, - 0x5f, 0x63, 0xae, 0xf2, 0xbf, 0x86, 0xbd, 0x03, 0x4b, 0xaa, 0x00, 0x97, 0xf9, 0xf1, 0x64, 0xe7, - 0xda, 0x77, 0xd7, 0xb7, 0xde, 0xc2, 0x3f, 0x90, 0xdf, 0xae, 0x28, 0xf1, 0xb0, 0x21, 0xfe, 0x48, - 0xfe, 0xf2, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x57, 0x56, 0x7c, 0x02, 0xa4, 0x2c, 0x00, 0x00, +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_f1fa7995a968e7fe) } + +var fileDescriptor_ws_f1fa7995a968e7fe = []byte{ + // 2676 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x6f, 0x23, 0x49, + 0x15, 0xa7, 0xdb, 0xb1, 0x13, 0x3f, 0xc7, 0x71, 0xd2, 0x59, 0x82, 0x09, 0xb3, 0x43, 0x68, 0x45, + 0xcb, 0xb0, 0x40, 0x16, 0x0d, 0x42, 0x82, 0x5d, 0x18, 0x94, 0x8f, 0xf9, 0x5a, 0xe2, 0x99, 0x6c, + 0x7b, 0x86, 0x45, 0x80, 0xb4, 0xea, 0xb8, 0x2b, 0x4e, 0x6f, 0xda, 0x55, 0xed, 0xfe, 0xc8, 0x4c, + 0x24, 0x24, 0x24, 0x90, 0x10, 0x37, 0x4e, 0x70, 0xe0, 0x82, 0xc4, 0x05, 0x81, 0xd0, 0x6a, 0x0f, + 0x70, 0x43, 0x9c, 0xf8, 0x07, 0x38, 0x22, 0x6e, 0x9c, 0xb9, 0x72, 0x40, 0x42, 0x02, 0x55, 0xbd, + 0xea, 0xee, 0xaa, 0x6e, 0x3b, 0xf1, 0x46, 0xd1, 0xce, 0xac, 0x86, 0x9b, 0xdf, 0xeb, 0x7a, 0xaf, + 0x5e, 0xbd, 0xdf, 0x7b, 0xaf, 0x5e, 0x55, 0x19, 0x3a, 0xb1, 0x77, 0xf2, 0xce, 0x93, 0xf8, 0xb5, + 0x27, 0xf1, 0x56, 0x18, 0xb1, 0x84, 0x59, 0x2b, 0x31, 0x89, 0x4e, 0x49, 0xf4, 0x8e, 0x1b, 0xfa, + 0xef, 0x84, 0x6e, 0xe4, 0x8e, 0x62, 0xfb, 0x5f, 0x26, 0x34, 0xef, 0x46, 0x2c, 0x0d, 0xef, 0xd3, + 0x23, 0x66, 0x75, 0x61, 0x7e, 0x28, 0x88, 0xbd, 0xae, 0xb1, 0x61, 0xdc, 0x68, 0x3a, 0x19, 0x69, + 0x5d, 0x83, 0xa6, 0xf8, 0xf9, 0xc0, 0x1d, 0x91, 0xae, 0x29, 0xbe, 0x15, 0x0c, 0xcb, 0x86, 0x45, + 0xca, 0x12, 0xff, 0xc8, 0x1f, 0xb8, 0x89, 0xcf, 0x68, 0xb7, 0x26, 0x06, 0x68, 0x3c, 0x3e, 0xc6, + 0xa7, 0x49, 0xc4, 0xbc, 0x74, 0x20, 0xc6, 0xcc, 0xe1, 0x18, 0x95, 0xc7, 0xe7, 0x3f, 0x72, 0x07, + 0xe4, 0xb1, 0xb3, 0xdf, 0xad, 0xe3, 0xfc, 0x92, 0xb4, 0x36, 0xa0, 0xc5, 0x9e, 0x50, 0x12, 0x3d, + 0x8e, 0x49, 0x74, 0x7f, 0xaf, 0xdb, 0x10, 0x5f, 0x55, 0x96, 0x75, 0x1d, 0x60, 0x10, 0x11, 0x37, + 0x21, 0x8f, 0xfc, 0x11, 0xe9, 0xce, 0x6f, 0x18, 0x37, 0xda, 0x8e, 0xc2, 0xe1, 0x1a, 0x46, 0x64, + 0x74, 0x48, 0xa2, 0x5d, 0x96, 0xd2, 0xa4, 0xbb, 0x20, 0x06, 0xa8, 0x2c, 0x6b, 0x09, 0x4c, 0xf2, + 0xb4, 0xdb, 0x14, 0xaa, 0x4d, 0xf2, 0xd4, 0x5a, 0x83, 0x46, 0x9c, 0xb8, 0x49, 0x1a, 0x77, 0x61, + 0xc3, 0xb8, 0x51, 0x77, 0x24, 0x65, 0x6d, 0x42, 0x5b, 0xe8, 0x65, 0x99, 0x35, 0x2d, 0x21, 0xa2, + 0x33, 0x73, 0x8f, 0x3d, 0x3a, 0x0b, 0x49, 0x77, 0x51, 0x28, 0x28, 0x18, 0xf6, 0xdf, 0x4c, 0x58, + 0x15, 0x7e, 0xef, 0x09, 0x03, 0xee, 0xa4, 0x41, 0x70, 0x01, 0x02, 0x6b, 0xd0, 0x48, 0x71, 0x3a, + 0x74, 0xbf, 0xa4, 0xf8, 0x3c, 0x11, 0x0b, 0xc8, 0x3e, 0x39, 0x25, 0x81, 0x70, 0x7c, 0xdd, 0x29, + 0x18, 0xd6, 0x3a, 0x2c, 0xbc, 0xcb, 0x7c, 0x2a, 0x7c, 0x32, 0x27, 0x3e, 0xe6, 0x34, 0xff, 0x46, + 0xfd, 0xc1, 0x09, 0xe5, 0x90, 0xa2, 0xbb, 0x73, 0x5a, 0x45, 0xa2, 0xa1, 0x23, 0xf1, 0x0a, 0x2c, + 0xb9, 0x61, 0xd8, 0x73, 0xe9, 0x90, 0x44, 0x38, 0xe9, 0xbc, 0xd0, 0x5b, 0xe2, 0x72, 0x3c, 0xf8, + 0x4c, 0x7d, 0x96, 0x46, 0x03, 0x22, 0xdc, 0x5d, 0x77, 0x14, 0x0e, 0xd7, 0xc3, 0x42, 0x12, 0x29, + 0x6e, 0x44, 0xcf, 0x97, 0xb8, 0x12, 0x15, 0xc8, 0x51, 0xe1, 0x38, 0xa6, 0x09, 0xb9, 0x4d, 0x3d, + 0xb1, 0xa8, 0x96, 0xc4, 0xb1, 0x60, 0xd9, 0x3f, 0x31, 0x60, 0xe9, 0x20, 0x3d, 0x0c, 0xfc, 0x81, + 0x50, 0xc1, 0xdd, 0x5a, 0x38, 0xcf, 0xd0, 0x9c, 0xa7, 0xba, 0xc0, 0x9c, 0xee, 0x82, 0x9a, 0xee, + 0x82, 0x35, 0x68, 0x0c, 0x09, 0xf5, 0x48, 0x24, 0x5d, 0x2a, 0x29, 0x69, 0x6a, 0x3d, 0x33, 0xd5, + 0xfe, 0x85, 0x09, 0x0b, 0x1f, 0xb2, 0x09, 0x1b, 0xd0, 0x0a, 0x8f, 0x19, 0x25, 0x0f, 0x52, 0x1e, + 0x56, 0xd2, 0x16, 0x95, 0x65, 0xbd, 0x04, 0xf5, 0x43, 0x3f, 0x4a, 0x8e, 0x05, 0xae, 0x6d, 0x07, + 0x09, 0xce, 0x25, 0x23, 0xd7, 0x47, 0x30, 0x9b, 0x0e, 0x12, 0x72, 0x41, 0x0b, 0xb9, 0xef, 0xf5, + 0x1c, 0x6b, 0x56, 0x72, 0xac, 0x1a, 0x1b, 0x30, 0x29, 0x36, 0xec, 0x7f, 0x1b, 0x00, 0x77, 0x22, + 0x9f, 0x50, 0x4f, 0xb8, 0xa6, 0x94, 0xdc, 0x46, 0x35, 0xb9, 0xd7, 0xa0, 0x11, 0x91, 0x91, 0x1b, + 0x9d, 0x64, 0xc1, 0x8f, 0x54, 0xc9, 0xa0, 0x5a, 0xc5, 0xa0, 0x37, 0x00, 0x8e, 0xc4, 0x3c, 0x5c, + 0x8f, 0x70, 0x55, 0xeb, 0xe6, 0xa7, 0xb6, 0x2a, 0x65, 0x70, 0x2b, 0x43, 0xc9, 0x51, 0x86, 0xf3, + 0xcc, 0x72, 0x3d, 0x4f, 0x06, 0x70, 0x1d, 0x33, 0x2b, 0x67, 0x4c, 0x88, 0xdf, 0xc6, 0x39, 0xf1, + 0x3b, 0x9f, 0x07, 0xc5, 0x3f, 0x0d, 0x68, 0xee, 0x04, 0xee, 0xe0, 0x64, 0xc6, 0xa5, 0xeb, 0x4b, + 0x34, 0x2b, 0x4b, 0xbc, 0x0b, 0xed, 0x43, 0xae, 0x2e, 0x5b, 0x82, 0xf0, 0x42, 0xeb, 0xe6, 0x67, + 0x26, 0xac, 0x52, 0x4f, 0x0a, 0x47, 0x97, 0xd3, 0x97, 0x3b, 0x77, 0xf1, 0x72, 0xeb, 0xe7, 0x2c, + 0xb7, 0x91, 0x2f, 0xf7, 0xaf, 0x26, 0x2c, 0x8a, 0x42, 0xe7, 0x90, 0x71, 0x4a, 0xe2, 0xc4, 0xfa, + 0x06, 0x2c, 0xa4, 0x99, 0xa9, 0xc6, 0xac, 0xa6, 0xe6, 0x22, 0xd6, 0xeb, 0xb2, 0xac, 0x0a, 0x79, + 0x53, 0xc8, 0x5f, 0x9b, 0x20, 0x9f, 0xef, 0x69, 0x4e, 0x31, 0x9c, 0x6f, 0x41, 0xc7, 0x2e, 0xf5, + 0x02, 0xe2, 0x90, 0x38, 0x0d, 0x12, 0x59, 0x2d, 0x35, 0x1e, 0x46, 0xda, 0xb8, 0x17, 0x0f, 0xe5, + 0x06, 0x25, 0x29, 0xee, 0x1d, 0x1c, 0xc7, 0x3f, 0xe1, 0xd2, 0x0b, 0x06, 0x4f, 0xd4, 0x88, 0x8c, + 0x05, 0x42, 0x98, 0x56, 0x19, 0x59, 0xcc, 0x29, 0xbd, 0x86, 0x81, 0xa0, 0xf1, 0x38, 0xc4, 0x48, + 0x0b, 0x05, 0xb8, 0x33, 0x29, 0x9c, 0xf2, 0xc6, 0x64, 0xff, 0xbd, 0x06, 0x6d, 0x4c, 0x9f, 0xcc, + 0xa9, 0xd7, 0x79, 0x9c, 0xb3, 0x91, 0x16, 0x45, 0x0a, 0x87, 0x5b, 0xc1, 0xa9, 0x07, 0x7a, 0xa1, + 0xd1, 0x78, 0x3c, 0x14, 0x39, 0x7d, 0x47, 0x2b, 0x38, 0x2a, 0x2b, 0x9b, 0xe5, 0xae, 0x5a, 0x78, + 0x14, 0x0e, 0x2f, 0x65, 0x09, 0xd3, 0xa2, 0x23, 0xa7, 0xb9, 0x6c, 0xc2, 0xf2, 0xf9, 0x31, 0x3e, + 0x14, 0x0e, 0xf7, 0x6f, 0xc2, 0xb2, 0xb9, 0xd1, 0x49, 0x05, 0x03, 0x35, 0xcb, 0x79, 0x71, 0x2b, + 0xc9, 0xe9, 0x0a, 0xaa, 0xcd, 0x73, 0x51, 0x05, 0x0d, 0x55, 0x3d, 0xb9, 0x5a, 0x95, 0xe4, 0xda, + 0x84, 0x36, 0xea, 0xc9, 0x82, 0x7e, 0x11, 0xb7, 0x7a, 0x8d, 0xa9, 0xc7, 0x46, 0xbb, 0x1c, 0x1b, + 0x3a, 0xba, 0x4b, 0x53, 0xd0, 0xed, 0xe4, 0xe8, 0xfe, 0x00, 0xba, 0x07, 0x69, 0x10, 0xf4, 0x48, + 0x1c, 0xbb, 0x43, 0xb2, 0x73, 0xd6, 0x27, 0xe3, 0x7d, 0x3f, 0x4e, 0x1c, 0x12, 0x87, 0x3c, 0xce, + 0x48, 0x14, 0xed, 0x32, 0x8f, 0x08, 0x90, 0xeb, 0x4e, 0x46, 0xf2, 0x15, 0x92, 0x28, 0xe2, 0x06, + 0xc8, 0x0a, 0x89, 0x94, 0xb5, 0x05, 0x73, 0x81, 0x1f, 0xf3, 0x58, 0xaf, 0xdd, 0x68, 0xdd, 0x5c, + 0x9f, 0x90, 0x2a, 0xbd, 0x78, 0xb8, 0xe7, 0x26, 0xae, 0x23, 0xc6, 0xd9, 0x23, 0xf8, 0xc4, 0xe4, + 0xd9, 0xc7, 0x53, 0x77, 0x30, 0x5e, 0xc3, 0x44, 0x11, 0xf0, 0x19, 0xcd, 0xdb, 0x13, 0x95, 0xc5, + 0xcd, 0x8e, 0x51, 0x8f, 0xb0, 0xa3, 0xed, 0x64, 0xa4, 0xfd, 0x12, 0x58, 0x77, 0x49, 0xd2, 0x73, + 0x9f, 0x6e, 0x53, 0xaf, 0xe7, 0xd3, 0x3e, 0x19, 0x3b, 0x64, 0x6c, 0xdf, 0x86, 0xd5, 0x0a, 0x37, + 0x0e, 0xb9, 0x01, 0x23, 0xf7, 0x69, 0x9f, 0x8c, 0x85, 0x01, 0x6d, 0x47, 0x52, 0x82, 0x2f, 0x46, + 0xc9, 0xf2, 0x28, 0x29, 0x7b, 0x0c, 0x1d, 0x8e, 0x50, 0x9f, 0x50, 0xaf, 0x17, 0x0f, 0x85, 0x8a, + 0x0d, 0x68, 0xa1, 0x07, 0x7a, 0xf1, 0xb0, 0xa8, 0xb7, 0x0a, 0x8b, 0x8f, 0x18, 0x04, 0x3e, 0xa1, + 0x09, 0x8e, 0x90, 0xab, 0x51, 0x58, 0x3c, 0x18, 0x63, 0x22, 0xdb, 0x0f, 0x9e, 0x25, 0x35, 0x27, + 0xa7, 0xed, 0x3f, 0xd5, 0x61, 0x5e, 0x3a, 0x54, 0xf4, 0x8f, 0x7c, 0x8b, 0xcb, 0xfd, 0x85, 0x14, + 0x06, 0xe3, 0xe0, 0xb4, 0xe8, 0xe4, 0x90, 0x52, 0x7b, 0xbf, 0x9a, 0xde, 0xfb, 0x95, 0x6c, 0x9a, + 0xab, 0xda, 0x54, 0x5a, 0x57, 0xbd, 0xba, 0xae, 0x57, 0x61, 0x39, 0x16, 0x09, 0x73, 0x10, 0xb8, + 0xc9, 0x11, 0x8b, 0x46, 0x72, 0xc7, 0xaa, 0x3b, 0x15, 0x3e, 0x2f, 0xf6, 0xc8, 0xcb, 0x13, 0x16, + 0x33, 0xb2, 0xc4, 0xe5, 0xe9, 0x81, 0x9c, 0x2c, 0x71, 0xb1, 0x55, 0xd0, 0x99, 0x68, 0x5b, 0x1c, + 0xfb, 0x8c, 0x8a, 0x5e, 0x18, 0xf3, 0x53, 0x65, 0xf1, 0x95, 0x8f, 0xe2, 0xe1, 0x9d, 0x88, 0x8d, + 0x64, 0xc3, 0x90, 0x91, 0x62, 0xe5, 0x8c, 0x26, 0x84, 0x26, 0x42, 0xb6, 0x85, 0xb2, 0x0a, 0x8b, + 0xcb, 0x4a, 0x52, 0x24, 0xe7, 0xa2, 0x93, 0x91, 0xd6, 0x32, 0xd4, 0x62, 0x32, 0x96, 0x19, 0xc7, + 0x7f, 0x6a, 0xc8, 0x75, 0x74, 0xe4, 0x4a, 0xa5, 0x60, 0x59, 0x7c, 0x55, 0x4b, 0x41, 0x71, 0x1a, + 0x58, 0xd1, 0x4e, 0x03, 0xdb, 0x30, 0xcf, 0x42, 0x1e, 0xe7, 0x71, 0xd7, 0x12, 0x39, 0xf6, 0xd9, + 0xe9, 0x39, 0xb6, 0xf5, 0x10, 0x47, 0xde, 0xa6, 0x49, 0x74, 0xe6, 0x64, 0x72, 0xd6, 0x3e, 0x74, + 0xd8, 0xd1, 0x51, 0xe0, 0x53, 0x72, 0x90, 0xc6, 0xc7, 0x62, 0x67, 0x5b, 0x15, 0x3b, 0x9b, 0x3d, + 0x41, 0xd5, 0x43, 0x7d, 0xa4, 0x53, 0x16, 0x5d, 0x7f, 0x1d, 0x16, 0xd5, 0x69, 0xb8, 0x1b, 0x4e, + 0xc8, 0x99, 0x8c, 0x41, 0xfe, 0x93, 0x37, 0x7b, 0xa7, 0x6e, 0x90, 0xe2, 0x36, 0xb0, 0xe0, 0x20, + 0xf1, 0xba, 0xf9, 0x55, 0xc3, 0xfe, 0xb9, 0x01, 0x9d, 0xd2, 0x04, 0x7c, 0x74, 0xe2, 0x27, 0x01, + 0x91, 0x1a, 0x90, 0xb0, 0x2c, 0x98, 0xf3, 0x48, 0x3c, 0x90, 0x21, 0x2c, 0x7e, 0xcb, 0x4a, 0x56, + 0xcb, 0xdb, 0x45, 0x7e, 0xe4, 0x7b, 0xd8, 0xe7, 0x8a, 0xfa, 0x2c, 0xa5, 0x5e, 0x7e, 0xe4, 0x53, + 0x78, 0x3c, 0x84, 0xfc, 0x87, 0xfd, 0x1d, 0xd7, 0x1b, 0x12, 0x3c, 0x98, 0xd5, 0x85, 0x4d, 0x3a, + 0xd3, 0xf6, 0x60, 0xe1, 0x91, 0x1f, 0xc6, 0xbb, 0x6c, 0x34, 0xe2, 0x40, 0x78, 0x24, 0xe1, 0xbd, + 0xaa, 0x21, 0xf0, 0x96, 0x14, 0x0f, 0x15, 0x8f, 0x1c, 0xb9, 0x69, 0x90, 0xf0, 0xa1, 0x59, 0xe2, + 0x2a, 0x2c, 0x71, 0x24, 0x89, 0x19, 0xdd, 0x43, 0x69, 0xb4, 0x53, 0xe1, 0xd8, 0x7f, 0x31, 0x61, + 0x59, 0x34, 0x0e, 0xbb, 0x02, 0x76, 0x4f, 0x08, 0xdd, 0x84, 0xba, 0x48, 0x43, 0xd9, 0xac, 0x9c, + 0xdf, 0x6c, 0xe0, 0x50, 0xeb, 0x16, 0x34, 0x58, 0x28, 0x5a, 0x4e, 0xec, 0x50, 0x5e, 0x99, 0x26, + 0xa4, 0x9f, 0xfe, 0x1c, 0x29, 0x65, 0xdd, 0x01, 0xc0, 0x83, 0xe9, 0x7e, 0x51, 0xba, 0x67, 0xd5, + 0xa1, 0x48, 0x72, 0xe7, 0xe6, 0x65, 0x38, 0x3f, 0x02, 0xd6, 0x1c, 0x9d, 0x69, 0x3d, 0x80, 0x25, + 0x61, 0xf6, 0xc3, 0xac, 0xeb, 0x14, 0x18, 0xcc, 0x3e, 0x63, 0x49, 0xda, 0xfe, 0xb5, 0x21, 0xdd, + 0xc8, 0xbf, 0xf6, 0x09, 0xfa, 0xbe, 0x70, 0x89, 0x71, 0x29, 0x97, 0xac, 0xc3, 0x02, 0x3f, 0xe3, + 0xe5, 0x4d, 0x70, 0xcd, 0xc9, 0xe9, 0x02, 0xa2, 0xda, 0xcc, 0x10, 0xd9, 0xbf, 0x31, 0xa0, 0xfb, + 0x26, 0xf3, 0xa9, 0xf8, 0xb0, 0x1d, 0x86, 0x81, 0xbc, 0xa7, 0xb8, 0x34, 0xe6, 0xdf, 0x84, 0xa6, + 0x8b, 0x6a, 0x68, 0x22, 0x61, 0x9f, 0xa1, 0xb1, 0x2d, 0x64, 0x94, 0x1e, 0xa5, 0xa6, 0xf6, 0x28, + 0xf6, 0x7b, 0x06, 0x2c, 0xa1, 0x53, 0xde, 0x4a, 0xfd, 0xe4, 0xd2, 0xf6, 0xed, 0xc0, 0xc2, 0x38, + 0xf5, 0x93, 0x4b, 0x44, 0x65, 0x2e, 0x57, 0x8d, 0xa7, 0xda, 0x84, 0x78, 0xb2, 0xdf, 0x37, 0xe0, + 0x5a, 0xd9, 0xad, 0xdb, 0x83, 0x01, 0x09, 0x9f, 0x65, 0x4a, 0x69, 0x3d, 0xda, 0x5c, 0xa9, 0x47, + 0x9b, 0x68, 0xb2, 0x43, 0xde, 0x25, 0x83, 0xe7, 0xd7, 0xe4, 0x1f, 0x9b, 0xf0, 0xc9, 0xbb, 0x79, + 0xe2, 0x3d, 0x8a, 0x5c, 0x1a, 0x1f, 0x91, 0x28, 0x7a, 0x86, 0xf6, 0xee, 0x43, 0x9b, 0x92, 0x27, + 0x85, 0x4d, 0x32, 0x1d, 0x67, 0x55, 0xa3, 0x0b, 0xcf, 0x56, 0xbb, 0xec, 0xff, 0x18, 0xb0, 0x8c, + 0x7a, 0xbe, 0xe5, 0x0f, 0x4e, 0x9e, 0xe1, 0xe2, 0x1f, 0xc0, 0xd2, 0x89, 0xb0, 0x80, 0x53, 0x97, + 0x28, 0xdb, 0x25, 0xe9, 0x19, 0x97, 0xff, 0x5f, 0x03, 0x56, 0x50, 0xd1, 0x7d, 0x7a, 0xea, 0x3f, + 0xcb, 0x60, 0x3d, 0x80, 0x8e, 0x8f, 0x26, 0x5c, 0xd2, 0x01, 0x65, 0xf1, 0x19, 0x3d, 0xf0, 0x47, + 0x03, 0x3a, 0xa8, 0xe9, 0x36, 0x4d, 0x48, 0x74, 0xe9, 0xf5, 0xdf, 0x83, 0x16, 0xa1, 0x49, 0xe4, + 0xd2, 0xcb, 0x54, 0x48, 0x55, 0x74, 0xc6, 0x22, 0xf9, 0x9e, 0x01, 0x96, 0x50, 0xb5, 0xe7, 0xc7, + 0x23, 0x3f, 0x8e, 0x9f, 0x21, 0x74, 0xb3, 0x19, 0xfc, 0x4b, 0x13, 0x5e, 0x52, 0xb4, 0xf4, 0xd2, + 0xe4, 0x79, 0x37, 0xd9, 0xda, 0x83, 0x26, 0xef, 0x11, 0xd4, 0xcb, 0xbf, 0x59, 0x27, 0x2a, 0x04, + 0x79, 0x17, 0x2b, 0x88, 0x3e, 0x19, 0x30, 0xea, 0xc5, 0xa2, 0x39, 0x6a, 0x3b, 0x1a, 0x8f, 0x97, + 0xa1, 0x75, 0x45, 0xcd, 0xae, 0x4b, 0x07, 0x24, 0x78, 0x61, 0x5c, 0x64, 0xff, 0xce, 0x80, 0x25, + 0x1c, 0xf2, 0xfc, 0x2f, 0x99, 0xef, 0xf5, 0x18, 0xc8, 0x1f, 0x19, 0x94, 0xec, 0x13, 0x58, 0xc1, + 0xfb, 0x3e, 0xa5, 0x3d, 0xe1, 0x07, 0x5f, 0xd7, 0xc3, 0xb3, 0xac, 0x21, 0x84, 0x32, 0x52, 0xbf, + 0xc9, 0x95, 0x8f, 0x75, 0xc5, 0x4d, 0xee, 0x75, 0x00, 0xd7, 0xf3, 0xde, 0x66, 0x91, 0xe7, 0xd3, + 0xac, 0xd7, 0x54, 0x38, 0xf6, 0x9b, 0xb0, 0xc8, 0x8f, 0xde, 0x8f, 0x94, 0x9b, 0xbb, 0x73, 0xef, + 0x16, 0xd5, 0x5b, 0x3f, 0x53, 0xbf, 0xf5, 0xb3, 0xbf, 0x0f, 0x1f, 0xaf, 0x18, 0x2e, 0x7c, 0xbd, + 0x8b, 0x17, 0x92, 0xd9, 0x24, 0xd2, 0xe5, 0x9f, 0x9e, 0xe0, 0x3d, 0xd5, 0x16, 0x47, 0x13, 0xb2, + 0x7f, 0x64, 0xc0, 0xcb, 0x15, 0xf5, 0xdb, 0x61, 0x18, 0xb1, 0x53, 0x09, 0xe9, 0x55, 0x4c, 0xa3, + 0xf7, 0x61, 0x66, 0xb9, 0x0f, 0x9b, 0x68, 0x84, 0xd6, 0x3b, 0x7e, 0x08, 0x46, 0xfc, 0xd6, 0x80, + 0x8e, 0x34, 0xc2, 0xf3, 0xe4, 0xb4, 0x5f, 0x81, 0x06, 0x3e, 0x66, 0xc8, 0x09, 0x5f, 0x9e, 0x38, + 0x61, 0xf6, 0x08, 0xe3, 0xc8, 0xc1, 0xd5, 0x88, 0x34, 0x27, 0xd5, 0x8d, 0xaf, 0xe5, 0x71, 0x3f, + 0xf3, 0x73, 0x83, 0x14, 0xb0, 0xbf, 0x93, 0x05, 0xf3, 0x1e, 0x09, 0xc8, 0x55, 0xfa, 0xc8, 0x7e, + 0x0c, 0x4b, 0xe2, 0x65, 0xa5, 0xf0, 0xc1, 0x95, 0xa8, 0x7d, 0x1b, 0x96, 0x85, 0xda, 0x2b, 0xb7, + 0x37, 0xcf, 0x0e, 0xee, 0x9f, 0xdd, 0x63, 0x97, 0x0e, 0xaf, 0x52, 0xfb, 0x17, 0x61, 0x35, 0xf3, + 0xfd, 0xe3, 0xd0, 0xcb, 0xef, 0x33, 0xa6, 0xdc, 0xe2, 0xda, 0x5f, 0x82, 0xb5, 0x5d, 0x46, 0x4f, + 0x49, 0x14, 0x0b, 0x94, 0x51, 0x24, 0x93, 0xd0, 0x92, 0x5f, 0x52, 0x76, 0x1f, 0x56, 0xe4, 0xfb, + 0xc3, 0x81, 0x3b, 0xf4, 0x29, 0x56, 0xa5, 0xeb, 0x00, 0xa1, 0x3b, 0xcc, 0xde, 0x1f, 0xf1, 0x92, + 0x5a, 0xe1, 0xf0, 0xef, 0xf1, 0x31, 0x7b, 0x22, 0xbf, 0x9b, 0xf8, 0xbd, 0xe0, 0xd8, 0xdf, 0x06, + 0xcb, 0x21, 0x71, 0xc8, 0x68, 0x4c, 0x14, 0xad, 0x1b, 0xd0, 0xda, 0x4d, 0xa3, 0x88, 0x50, 0x3e, + 0x55, 0xf6, 0x18, 0xa7, 0xb2, 0xb8, 0xde, 0x7e, 0xa1, 0x17, 0x2f, 0x36, 0x15, 0x8e, 0xfd, 0xab, + 0x1a, 0x34, 0xfb, 0xfe, 0x90, 0xba, 0x81, 0x43, 0xc6, 0xd6, 0xd7, 0xa1, 0x81, 0xed, 0xa6, 0x74, + 0xed, 0xa4, 0x8b, 0x36, 0x1c, 0x8d, 0x7d, 0xb5, 0x43, 0xc6, 0xf7, 0x3e, 0xe6, 0x48, 0x19, 0xeb, + 0x2d, 0x68, 0xe3, 0xaf, 0xfb, 0x78, 0x7d, 0x20, 0x6b, 0xff, 0xe7, 0x2e, 0x50, 0x22, 0x47, 0xa3, + 0x2e, 0x5d, 0x03, 0x37, 0x68, 0x20, 0xb6, 0x23, 0x99, 0x4f, 0xd3, 0x0d, 0xc2, 0x5d, 0x4b, 0x1a, + 0x84, 0x32, 0x5c, 0xda, 0x15, 0x07, 0x6c, 0xb9, 0x85, 0x4f, 0x97, 0xc6, 0x73, 0xb8, 0x94, 0x46, + 0x19, 0x2e, 0x7d, 0x9c, 0xd2, 0xe1, 0xe3, 0x50, 0xde, 0xfb, 0x4c, 0x97, 0xbe, 0x27, 0x86, 0x49, + 0x69, 0x94, 0xe1, 0xd2, 0x91, 0xa8, 0x76, 0xc2, 0xe9, 0xe7, 0x49, 0x63, 0x51, 0x94, 0xd2, 0x28, + 0xb3, 0xd3, 0x84, 0xf9, 0xd0, 0x3d, 0x0b, 0x98, 0xeb, 0xd9, 0xbf, 0xaf, 0x01, 0x64, 0x03, 0x63, + 0xb1, 0xb3, 0x6a, 0x10, 0x6d, 0x5e, 0x08, 0x51, 0x18, 0x9c, 0x29, 0x20, 0xf5, 0x27, 0x83, 0xf4, + 0xf9, 0x59, 0x41, 0x42, 0x6d, 0x25, 0x98, 0x6e, 0x95, 0x60, 0xda, 0xbc, 0x10, 0x26, 0x69, 0x94, + 0x04, 0xea, 0x56, 0x09, 0xa8, 0xcd, 0x0b, 0x81, 0x92, 0xf2, 0x12, 0xaa, 0x5b, 0x25, 0xa8, 0x36, + 0x2f, 0x84, 0x4a, 0xca, 0x4b, 0xb0, 0x6e, 0x95, 0xc0, 0xda, 0xbc, 0x10, 0x2c, 0x29, 0x5f, 0x85, + 0xeb, 0x7d, 0x13, 0x96, 0x84, 0xcb, 0xf0, 0x91, 0x87, 0x1e, 0x31, 0x71, 0x97, 0x2b, 0xdc, 0xa5, + 0x3f, 0x67, 0xeb, 0x4c, 0xeb, 0x0b, 0xb0, 0x82, 0x0c, 0xf9, 0xfc, 0x29, 0xce, 0x8a, 0xe6, 0x46, + 0xed, 0x46, 0xd3, 0xa9, 0x7e, 0x10, 0xd7, 0xf2, 0x69, 0x9c, 0xb0, 0xd1, 0x9e, 0x9b, 0xb8, 0x59, + 0xb7, 0x52, 0x70, 0xd4, 0x47, 0x93, 0xb9, 0xca, 0x1f, 0x66, 0x22, 0xc6, 0x46, 0xf9, 0x6b, 0x88, + 0xa4, 0xb8, 0x44, 0xe2, 0x8f, 0x08, 0x4b, 0x13, 0x59, 0x26, 0x32, 0x92, 0xef, 0xb1, 0x23, 0xe2, + 0xf9, 0xae, 0x78, 0x6a, 0x90, 0x6f, 0x90, 0x39, 0x43, 0x54, 0xb6, 0xe2, 0xe9, 0x44, 0xfe, 0xa1, + 0xa5, 0xe0, 0x5c, 0xfc, 0xcc, 0x61, 0xff, 0xc3, 0x80, 0xd5, 0x03, 0x37, 0x4a, 0xfc, 0x81, 0x1f, + 0xba, 0x34, 0xe9, 0x91, 0xc4, 0x15, 0x6b, 0xd0, 0xde, 0xb4, 0x8d, 0x0f, 0xf6, 0xa6, 0x7d, 0x00, + 0x9d, 0x61, 0xd1, 0x5f, 0x2a, 0xaf, 0xe2, 0x33, 0x9f, 0xbb, 0x4b, 0xe2, 0xda, 0x03, 0x7d, 0xed, + 0x03, 0x3f, 0xd0, 0xdb, 0x3f, 0x35, 0xa1, 0x53, 0x2a, 0x9d, 0xbc, 0x45, 0xc4, 0xcd, 0x3f, 0x8f, + 0x89, 0x9c, 0xb6, 0xb6, 0x01, 0xfc, 0x3c, 0x8c, 0xce, 0xb9, 0x38, 0xd5, 0x63, 0xcd, 0x51, 0x84, + 0x26, 0xbd, 0x9f, 0xd4, 0x2e, 0xfd, 0x7e, 0x62, 0xdd, 0x83, 0x56, 0x58, 0x80, 0x74, 0xce, 0xa1, + 0x68, 0x02, 0x94, 0x8e, 0x2a, 0x6a, 0x7f, 0x0f, 0x56, 0x2a, 0x15, 0x4a, 0x3c, 0xa7, 0xb0, 0x13, + 0x42, 0xf3, 0xe7, 0x14, 0x4e, 0x28, 0xc1, 0x6a, 0x96, 0x83, 0x35, 0xf0, 0x4f, 0xd5, 0x7f, 0x00, + 0x49, 0xd2, 0xfe, 0x99, 0x09, 0x6b, 0x93, 0x77, 0x97, 0x17, 0xd5, 0xdd, 0x87, 0xd0, 0x9d, 0x56, + 0xc9, 0xaf, 0xcc, 0xeb, 0x45, 0x74, 0xe7, 0xfb, 0xf0, 0x8b, 0xea, 0xee, 0xd5, 0x2c, 0xba, 0x95, + 0xad, 0xce, 0xfe, 0x43, 0xee, 0x9f, 0xbc, 0xd3, 0x78, 0x41, 0xfd, 0x63, 0xbd, 0x0a, 0xcb, 0xb8, + 0x4c, 0xe5, 0xc1, 0x1d, 0x1b, 0xd7, 0x0a, 0xbf, 0xa8, 0x14, 0xca, 0xb6, 0x7f, 0x65, 0x31, 0xfb, + 0x67, 0x23, 0xc3, 0x24, 0xef, 0xdf, 0x3e, 0x52, 0x98, 0x14, 0x91, 0xa6, 0x34, 0x35, 0x4a, 0xa4, + 0xe5, 0x7d, 0xe5, 0xff, 0x23, 0xed, 0xe2, 0x48, 0xcb, 0x7d, 0xa9, 0x34, 0x78, 0xf6, 0x0f, 0xa1, + 0xbd, 0x47, 0x82, 0x5e, 0x3c, 0xcc, 0xfe, 0xea, 0x73, 0x9e, 0x23, 0xa7, 0xfd, 0x11, 0x79, 0xea, + 0x9f, 0x7c, 0xca, 0x7f, 0x10, 0x9a, 0xab, 0xfc, 0x41, 0xc8, 0xde, 0x81, 0x25, 0xd5, 0x80, 0xcb, + 0xfc, 0xd3, 0x69, 0xe7, 0xda, 0x77, 0xd7, 0xb7, 0x5e, 0xc3, 0xbf, 0xbc, 0xbf, 0x51, 0x71, 0xe2, + 0x61, 0x43, 0xfc, 0x05, 0xfe, 0xcb, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x93, 0x6d, 0x96, 0x68, + 0x15, 0x2f, 0x00, 0x00, } From 7ed6ee50754652e718ddfa3a11b31d8d13eebcd1 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 15:35:03 +0800 Subject: [PATCH 07/41] tag --- .../api/third/minio_storage_credential.go | 2 +- internal/rpc/msg/tag_send_msg.go | 10 +- internal/rpc/office/office.go | 33 ++- internal/rpc/user/user.go | 33 +++ pkg/base_info/office_struct.go | 7 +- pkg/common/db/mongoModel.go | 25 +-- .../im_mysql_model/group_member_model.go | 14 ++ .../mysql_model/im_mysql_model/user_model.go | 9 + pkg/proto/office/office.pb.go | 200 +++++++++--------- pkg/proto/office/office.proto | 19 +- 10 files changed, 226 insertions(+), 126 deletions(-) diff --git a/internal/api/third/minio_storage_credential.go b/internal/api/third/minio_storage_credential.go index 50ab64eb2..b11f04690 100644 --- a/internal/api/third/minio_storage_credential.go +++ b/internal/api/third/minio_storage_credential.go @@ -81,7 +81,7 @@ func MinioUploadFile(c *gin.Context) { _, err = minioClient.PutObject(context.Background(), config.Config.Credential.Minio.Bucket, newName, fileObj, file.Size, minio.PutObjectOptions{ContentType: newType}) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "open file error") - c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": "invalid file path" + err.Error()}) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "invalid file path" + err.Error()}) return } resp.NewName = newName diff --git a/internal/rpc/msg/tag_send_msg.go b/internal/rpc/msg/tag_send_msg.go index 08c88bfba..6d8c0a0b3 100644 --- a/internal/rpc/msg/tag_send_msg.go +++ b/internal/rpc/msg/tag_send_msg.go @@ -10,20 +10,24 @@ import ( "Open_IM/pkg/utils" "context" "strings" + "time" ) -func TagSendMessage(operationID, sendID, recvID, content string, contentType int32) { - log.NewInfo(operationID, utils.GetSelfFuncName(), "args: ", sendID, recvID, content, contentType) +func TagSendMessage(operationID, sendID, recvID, content string, senderPlatformID int32) { + log.NewInfo(operationID, utils.GetSelfFuncName(), "args: ", sendID, recvID, content) var req pbChat.SendMsgReq var msgData pbCommon.MsgData msgData.SendID = sendID msgData.RecvID = recvID - msgData.ContentType = contentType + msgData.ContentType = constant.Custom msgData.SessionType = constant.SingleChatType msgData.MsgFrom = constant.UserMsgType msgData.Content = []byte(content) msgData.Options = map[string]bool{} msgData.Options[constant.IsSenderConversationUpdate] = false + msgData.SendTime = time.Now().Unix() + msgData.CreateTime = time.Now().Unix() + msgData.SenderPlatformID = senderPlatformID req.MsgData = &msgData req.OperationID = operationID etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index 2d0cce613..ebb1de2a2 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -147,10 +147,39 @@ func (s *officeServer) SetTag(_ context.Context, req *pbOffice.SetTagReq) (resp func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagReq) (resp *pbOffice.SendMsg2TagResp, err error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) resp = &pbOffice.SendMsg2TagResp{CommonResp: &pbOffice.CommonResp{}} - userIDList, err := db.DB.GetUserIDListByTagID(req.SendID, req.TagID) + var tagUserIDList []string + for _, tagID := range req.TagList { + userIDList, err := db.DB.GetUserIDListByTagID(req.SendID, tagID) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserIDListByTagID failed", err.Error()) + continue + } + tagUserIDList = append(tagUserIDList, userIDList...) + } + var groupUserIDList []string + for _, groupID := range req.GroupList { + userIDList, err := im_mysql_model.GetGroupMemberIDListByGroupID(groupID) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetGroupMemberIDListByGroupID failed", err.Error()) + continue + } + groupUserIDList = append(groupUserIDList, userIDList...) + } + var userIDList []string + userIDList = append(groupUserIDList, tagUserIDList...) + userIDList = append(groupUserIDList, groupUserIDList...) + userIDList = append(groupUserIDList, req.UserList...) + userIDList = utils.RemoveUserIDRepByMap(userIDList) + for i, userID := range userIDList { + if userID == req.SendID { + userIDList = append(userIDList[:i], userIDList[i+1:]...) + } + } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "total userIDList result: ", userIDList) for _, userID := range userIDList { - msg.TagSendMessage(req.OperationID, req.SendID, userID, req.Content, req.ContentType) + msg.TagSendMessage(req.OperationID, req.SendID, userID, req.Content, req.SenderPlatformID) } + if err := db.DB.SaveTagSendLog(req); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "SaveTagSendLog failed", err.Error()) resp.CommonResp.ErrCode = constant.ErrDB.ErrCode diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 6b4472f01..c8a5d8f65 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -72,6 +72,32 @@ func (s *userServer) Run() { log.NewInfo("0", "rpc user success") } +func syncPeerUserConversation(conversation *pbUser.Conversation, operationID string) error { + if conversation.ConversationType == constant.SingleChatType { + peerUserConversation := db.Conversation{ + OwnerUserID: conversation.UserID, + ConversationID: "single_" + conversation.OwnerUserID, + ConversationType: constant.SingleChatType, + UserID: conversation.OwnerUserID, + GroupID: "", + RecvMsgOpt: 0, + UnreadCount: 0, + DraftTextTime: 0, + IsPinned: false, + IsPrivateChat: conversation.IsPrivateChat, + AttachedInfo: "", + Ex: "", + } + err := imdb.CreateConversationIfNotExist(peerUserConversation) + if err != nil { + log.NewError(operationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) + return err + } + chat.SetConversationNotification(operationID, conversation.UserID) + } + return nil +} + func (s *userServer) GetUserInfo(ctx context.Context, req *pbUser.GetUserInfoReq) (*pbUser.GetUserInfoResp, error) { log.NewInfo(req.OperationID, "GetUserInfo args ", req.String()) var userInfoList []*sdkws.UserInfo @@ -113,6 +139,9 @@ func (s *userServer) BatchSetConversations(ctx context.Context, req *pbUser.Batc continue } resp.Success = append(resp.Success, v.ConversationID) + //if err := syncPeerUserConversation(v, req.OperationID); err != nil { + // log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + //} } chat.SetConversationNotification(req.OperationID, req.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) @@ -189,6 +218,10 @@ func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConvers resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} return resp, nil } + // sync peer user conversation if conversation is singleChatType + //if err := syncPeerUserConversation(req.Conversation, req.OperationID); err != nil { + // log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + //} chat.SetConversationNotification(req.OperationID, req.Conversation.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) resp.CommonResp = &pbUser.CommonResp{} diff --git a/pkg/base_info/office_struct.go b/pkg/base_info/office_struct.go index 65066d0b7..a13255032 100644 --- a/pkg/base_info/office_struct.go +++ b/pkg/base_info/office_struct.go @@ -5,7 +5,7 @@ import ( ) type GetUserTagsReq struct { - OperationID string `json:"operationID"` + OperationID string `json:"operationID" binding:"required"` } type GetUserTagsResp struct { @@ -47,7 +47,10 @@ type SetTagResp struct { } type SendMsg2TagReq struct { - TagID string `json:"tagID" binding:"required"` + TagList []string `json:"tagList"` + UserList []string `json:"userList"` + GroupList []string `json:"groupList"` + SenderPlatformID int32 `json:"senderPlatformID" binding:"required"` Content string `json:"content" binding:"required"` ContentType int32 `json:"contentType" binding:"required"` diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index e503c06ab..36550e50c 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -526,28 +526,25 @@ type TagUser struct { } type TagSendLog struct { - TagID string `bson:"tag_id"` - TagName string `bson:"tag_name"` - SendID string `bson:"send_id"` - SenderPlatformID int32 `bson:"sender_platform_id"` - Content string `bson:"content"` - ContentType int32 `bson:"content_type"` - SendTime int64 `bson:"send_time"` + TagList []string `bson:"tag_list"` + GroupList []string `bson:"group_list"` + UserList []string `bson:"user_list"` + SendID string `bson:"send_id"` + SenderPlatformID int32 `bson:"sender_platform_id"` + Content string `bson:"content"` + SendTime int64 `bson:"send_time"` } func (d *DataBases) SaveTagSendLog(sendReq *officePb.SendMsg2TagReq) error { ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) - c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cTag) - var tag Tag - _ = c.FindOne(ctx, bson.M{"user_id": sendReq.SendID, "tag_id": sendReq.TagID}).Decode(&tag) - c = d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cSendLog) + c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cSendLog) tagSendLog := TagSendLog{ - TagID: sendReq.TagID, - TagName: tag.TagName, + TagList: sendReq.TagList, + GroupList: sendReq.GroupList, + UserList: sendReq.UserList, SendID: sendReq.SendID, SenderPlatformID: sendReq.SenderPlatformID, Content: sendReq.Content, - ContentType: sendReq.ContentType, SendTime: time.Now().Unix(), } _, err := c.InsertOne(ctx, tagSendLog) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index f944f0396..493b78e4e 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -65,6 +65,20 @@ func GetGroupMemberListByGroupID(groupID string) ([]db.GroupMember, error) { return groupMemberList, nil } +func GetGroupMemberIDListByGroupID(groupID string) ([]string, error) { + dbConn, err := db.DB.MysqlDB.DefaultGormDB() + if err != nil { + return nil, err + } + var groupMemberIDList []string + err = dbConn.Table("group_members").Select("user_id").Where("group_id=?", groupID).Find(&groupMemberIDList).Error + + if err != nil { + return nil, err + } + return groupMemberIDList, nil +} + func GetGroupMemberListByGroupIDAndRoleLevel(groupID string, roleLevel int32) ([]db.GroupMember, error) { dbConn, err := db.DB.MysqlDB.DefaultGormDB() if err != nil { diff --git a/pkg/common/db/mysql_model/im_mysql_model/user_model.go b/pkg/common/db/mysql_model/im_mysql_model/user_model.go index c753396a8..3a37062a7 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/user_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/user_model.go @@ -377,3 +377,12 @@ func GetConversations(OwnerUserID string, conversationIDs []string) ([]db.Conver err = dbConn.Model(&db.Conversation{}).Where("conversation_id IN (?) and owner_user_id=?", conversationIDs, OwnerUserID).Find(&conversations).Error return conversations, err } + +func CreateConversationIfNotExist(conversation db.Conversation) error { + //dbConn, err := db.DB.MysqlDB.DefaultGormDB() + //if err != nil { + // return err + //} + //err = dbConn.Model(&db.Conversation{}).Where().Find().Error + return nil +} diff --git a/pkg/proto/office/office.pb.go b/pkg/proto/office/office.pb.go index b7ee98a38..34648cdb7 100644 --- a/pkg/proto/office/office.pb.go +++ b/pkg/proto/office/office.pb.go @@ -36,7 +36,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} } func (m *CommonResp) String() string { return proto.CompactTextString(m) } func (*CommonResp) ProtoMessage() {} func (*CommonResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{0} + return fileDescriptor_office_b53660f9aedbfa32, []int{0} } func (m *CommonResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CommonResp.Unmarshal(m, b) @@ -82,7 +82,7 @@ func (m *TagUser) Reset() { *m = TagUser{} } func (m *TagUser) String() string { return proto.CompactTextString(m) } func (*TagUser) ProtoMessage() {} func (*TagUser) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{1} + return fileDescriptor_office_b53660f9aedbfa32, []int{1} } func (m *TagUser) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagUser.Unmarshal(m, b) @@ -129,7 +129,7 @@ func (m *Tag) Reset() { *m = Tag{} } func (m *Tag) String() string { return proto.CompactTextString(m) } func (*Tag) ProtoMessage() {} func (*Tag) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{2} + return fileDescriptor_office_b53660f9aedbfa32, []int{2} } func (m *Tag) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Tag.Unmarshal(m, b) @@ -182,7 +182,7 @@ func (m *GetUserTagsReq) Reset() { *m = GetUserTagsReq{} } func (m *GetUserTagsReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagsReq) ProtoMessage() {} func (*GetUserTagsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{3} + return fileDescriptor_office_b53660f9aedbfa32, []int{3} } func (m *GetUserTagsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsReq.Unmarshal(m, b) @@ -228,7 +228,7 @@ func (m *GetUserTagsResp) Reset() { *m = GetUserTagsResp{} } func (m *GetUserTagsResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagsResp) ProtoMessage() {} func (*GetUserTagsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{4} + return fileDescriptor_office_b53660f9aedbfa32, []int{4} } func (m *GetUserTagsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsResp.Unmarshal(m, b) @@ -276,7 +276,7 @@ func (m *CreateTagReq) Reset() { *m = CreateTagReq{} } func (m *CreateTagReq) String() string { return proto.CompactTextString(m) } func (*CreateTagReq) ProtoMessage() {} func (*CreateTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{5} + return fileDescriptor_office_b53660f9aedbfa32, []int{5} } func (m *CreateTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagReq.Unmarshal(m, b) @@ -335,7 +335,7 @@ func (m *CreateTagResp) Reset() { *m = CreateTagResp{} } func (m *CreateTagResp) String() string { return proto.CompactTextString(m) } func (*CreateTagResp) ProtoMessage() {} func (*CreateTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{6} + return fileDescriptor_office_b53660f9aedbfa32, []int{6} } func (m *CreateTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagResp.Unmarshal(m, b) @@ -375,7 +375,7 @@ func (m *DeleteTagReq) Reset() { *m = DeleteTagReq{} } func (m *DeleteTagReq) String() string { return proto.CompactTextString(m) } func (*DeleteTagReq) ProtoMessage() {} func (*DeleteTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{7} + return fileDescriptor_office_b53660f9aedbfa32, []int{7} } func (m *DeleteTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagReq.Unmarshal(m, b) @@ -427,7 +427,7 @@ func (m *DeleteTagResp) Reset() { *m = DeleteTagResp{} } func (m *DeleteTagResp) String() string { return proto.CompactTextString(m) } func (*DeleteTagResp) ProtoMessage() {} func (*DeleteTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{8} + return fileDescriptor_office_b53660f9aedbfa32, []int{8} } func (m *DeleteTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagResp.Unmarshal(m, b) @@ -470,7 +470,7 @@ func (m *SetTagReq) Reset() { *m = SetTagReq{} } func (m *SetTagReq) String() string { return proto.CompactTextString(m) } func (*SetTagReq) ProtoMessage() {} func (*SetTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{9} + return fileDescriptor_office_b53660f9aedbfa32, []int{9} } func (m *SetTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagReq.Unmarshal(m, b) @@ -543,7 +543,7 @@ func (m *SetTagResp) Reset() { *m = SetTagResp{} } func (m *SetTagResp) String() string { return proto.CompactTextString(m) } func (*SetTagResp) ProtoMessage() {} func (*SetTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{10} + return fileDescriptor_office_b53660f9aedbfa32, []int{10} } func (m *SetTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagResp.Unmarshal(m, b) @@ -571,12 +571,13 @@ func (m *SetTagResp) GetCommonResp() *CommonResp { } type SendMsg2TagReq struct { - TagID string `protobuf:"bytes,1,opt,name=tagID" json:"tagID,omitempty"` - SendID string `protobuf:"bytes,2,opt,name=sendID" json:"sendID,omitempty"` - SenderPlatformID int32 `protobuf:"varint,3,opt,name=senderPlatformID" json:"senderPlatformID,omitempty"` - Content string `protobuf:"bytes,4,opt,name=content" json:"content,omitempty"` - ContentType int32 `protobuf:"varint,5,opt,name=contentType" json:"contentType,omitempty"` - OperationID string `protobuf:"bytes,6,opt,name=operationID" json:"operationID,omitempty"` + TagList []string `protobuf:"bytes,1,rep,name=tagList" json:"tagList,omitempty"` + UserList []string `protobuf:"bytes,2,rep,name=UserList" json:"UserList,omitempty"` + GroupList []string `protobuf:"bytes,3,rep,name=GroupList" json:"GroupList,omitempty"` + SendID string `protobuf:"bytes,4,opt,name=sendID" json:"sendID,omitempty"` + SenderPlatformID int32 `protobuf:"varint,5,opt,name=senderPlatformID" json:"senderPlatformID,omitempty"` + Content string `protobuf:"bytes,6,opt,name=content" json:"content,omitempty"` + OperationID string `protobuf:"bytes,7,opt,name=operationID" json:"operationID,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -586,7 +587,7 @@ func (m *SendMsg2TagReq) Reset() { *m = SendMsg2TagReq{} } func (m *SendMsg2TagReq) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagReq) ProtoMessage() {} func (*SendMsg2TagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{11} + return fileDescriptor_office_b53660f9aedbfa32, []int{11} } func (m *SendMsg2TagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagReq.Unmarshal(m, b) @@ -606,11 +607,25 @@ func (m *SendMsg2TagReq) XXX_DiscardUnknown() { var xxx_messageInfo_SendMsg2TagReq proto.InternalMessageInfo -func (m *SendMsg2TagReq) GetTagID() string { +func (m *SendMsg2TagReq) GetTagList() []string { if m != nil { - return m.TagID + return m.TagList } - return "" + return nil +} + +func (m *SendMsg2TagReq) GetUserList() []string { + if m != nil { + return m.UserList + } + return nil +} + +func (m *SendMsg2TagReq) GetGroupList() []string { + if m != nil { + return m.GroupList + } + return nil } func (m *SendMsg2TagReq) GetSendID() string { @@ -634,13 +649,6 @@ func (m *SendMsg2TagReq) GetContent() string { return "" } -func (m *SendMsg2TagReq) GetContentType() int32 { - if m != nil { - return m.ContentType - } - return 0 -} - func (m *SendMsg2TagReq) GetOperationID() string { if m != nil { return m.OperationID @@ -659,7 +667,7 @@ func (m *SendMsg2TagResp) Reset() { *m = SendMsg2TagResp{} } func (m *SendMsg2TagResp) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagResp) ProtoMessage() {} func (*SendMsg2TagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{12} + return fileDescriptor_office_b53660f9aedbfa32, []int{12} } func (m *SendMsg2TagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagResp.Unmarshal(m, b) @@ -699,7 +707,7 @@ func (m *GetTagSendLogsReq) Reset() { *m = GetTagSendLogsReq{} } func (m *GetTagSendLogsReq) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsReq) ProtoMessage() {} func (*GetTagSendLogsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{13} + return fileDescriptor_office_b53660f9aedbfa32, []int{13} } func (m *GetTagSendLogsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsReq.Unmarshal(m, b) @@ -741,9 +749,9 @@ func (m *GetTagSendLogsReq) GetOperationID() string { } type TagSendLog struct { - TagID string `protobuf:"bytes,1,opt,name=tagID" json:"tagID,omitempty"` - TagName string `protobuf:"bytes,2,opt,name=tagName" json:"tagName,omitempty"` - ContentType int32 `protobuf:"varint,3,opt,name=contentType" json:"contentType,omitempty"` + UserList []string `protobuf:"bytes,1,rep,name=userList" json:"userList,omitempty"` + TagList []string `protobuf:"bytes,2,rep,name=tagList" json:"tagList,omitempty"` + GroupList []string `protobuf:"bytes,3,rep,name=groupList" json:"groupList,omitempty"` Content string `protobuf:"bytes,4,opt,name=content" json:"content,omitempty"` SendTime int64 `protobuf:"varint,5,opt,name=sendTime" json:"sendTime,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -755,7 +763,7 @@ func (m *TagSendLog) Reset() { *m = TagSendLog{} } func (m *TagSendLog) String() string { return proto.CompactTextString(m) } func (*TagSendLog) ProtoMessage() {} func (*TagSendLog) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{14} + return fileDescriptor_office_b53660f9aedbfa32, []int{14} } func (m *TagSendLog) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagSendLog.Unmarshal(m, b) @@ -775,25 +783,25 @@ func (m *TagSendLog) XXX_DiscardUnknown() { var xxx_messageInfo_TagSendLog proto.InternalMessageInfo -func (m *TagSendLog) GetTagID() string { +func (m *TagSendLog) GetUserList() []string { if m != nil { - return m.TagID + return m.UserList } - return "" + return nil } -func (m *TagSendLog) GetTagName() string { +func (m *TagSendLog) GetTagList() []string { if m != nil { - return m.TagName + return m.TagList } - return "" + return nil } -func (m *TagSendLog) GetContentType() int32 { +func (m *TagSendLog) GetGroupList() []string { if m != nil { - return m.ContentType + return m.GroupList } - return 0 + return nil } func (m *TagSendLog) GetContent() string { @@ -823,7 +831,7 @@ func (m *GetTagSendLogsResp) Reset() { *m = GetTagSendLogsResp{} } func (m *GetTagSendLogsResp) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsResp) ProtoMessage() {} func (*GetTagSendLogsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_8580c3f7b2871da9, []int{15} + return fileDescriptor_office_b53660f9aedbfa32, []int{15} } func (m *GetTagSendLogsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsResp.Unmarshal(m, b) @@ -1120,55 +1128,57 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{ Metadata: "office/office.proto", } -func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_8580c3f7b2871da9) } - -var fileDescriptor_office_8580c3f7b2871da9 = []byte{ - // 751 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xc1, 0x6e, 0xd3, 0x4c, - 0x10, 0x96, 0x93, 0x26, 0x6d, 0x26, 0x6d, 0xf3, 0x77, 0xff, 0x52, 0x82, 0x0f, 0x10, 0x2c, 0x90, - 0x2a, 0x90, 0x12, 0x29, 0x70, 0x40, 0x42, 0x54, 0x88, 0xa4, 0xaa, 0x8a, 0x5a, 0x5a, 0x6d, 0xd3, - 0x0b, 0x07, 0xa2, 0x6d, 0x32, 0xb1, 0xac, 0x36, 0xb6, 0xbb, 0xbb, 0x6d, 0xc5, 0x95, 0x57, 0x80, - 0x57, 0x42, 0xe2, 0xca, 0x03, 0x21, 0x21, 0xaf, 0xd7, 0xf6, 0xda, 0x49, 0x04, 0xe4, 0x94, 0x9d, - 0xd9, 0x99, 0xc9, 0xf7, 0x7d, 0xb3, 0x3b, 0x6b, 0xf8, 0x3f, 0x98, 0x4c, 0xbc, 0x11, 0x76, 0xe2, - 0x9f, 0x76, 0xc8, 0x03, 0x19, 0x90, 0x6a, 0x6c, 0xd9, 0x8f, 0x4f, 0x42, 0xf4, 0x87, 0x87, 0xc7, - 0x9d, 0xf0, 0xd2, 0xed, 0xa8, 0xad, 0x8e, 0x18, 0x5f, 0x0e, 0xef, 0x44, 0xe7, 0x4e, 0xc4, 0xa1, - 0xce, 0x1e, 0x40, 0x2f, 0x98, 0x4e, 0x03, 0x9f, 0xa2, 0x08, 0x49, 0x13, 0x56, 0x91, 0xf3, 0x5e, - 0x30, 0xc6, 0xa6, 0xd5, 0xb2, 0x76, 0x2b, 0x34, 0x31, 0xc9, 0x0e, 0x54, 0x91, 0xf3, 0x63, 0xe1, - 0x36, 0x4b, 0x2d, 0x6b, 0xb7, 0x46, 0xb5, 0xe5, 0xbc, 0x81, 0xd5, 0x01, 0x73, 0xcf, 0x05, 0xf2, - 0x28, 0xe4, 0x46, 0x20, 0x3f, 0xec, 0xab, 0xdc, 0x1a, 0xd5, 0x16, 0xb1, 0x61, 0x2d, 0x5a, 0x7d, - 0x60, 0x53, 0xd4, 0xc9, 0xa9, 0xed, 0x5c, 0x40, 0x79, 0xc0, 0x5c, 0xb2, 0x0d, 0x15, 0xc9, 0xdc, - 0x34, 0x33, 0x36, 0x22, 0x34, 0x92, 0xb9, 0x46, 0x5e, 0x62, 0x92, 0xe7, 0x71, 0xc9, 0x23, 0x4f, - 0xc8, 0x66, 0xb9, 0x55, 0xde, 0xad, 0x77, 0x1b, 0x6d, 0xad, 0x80, 0x46, 0x43, 0xd3, 0x00, 0xe7, - 0x3d, 0x6c, 0x1e, 0xa0, 0x8c, 0x9c, 0x03, 0xe6, 0x0a, 0x8a, 0xd7, 0x0b, 0x91, 0xb6, 0xa0, 0x1e, - 0x84, 0xc8, 0x99, 0xf4, 0x02, 0xff, 0xb0, 0xaf, 0xff, 0xd4, 0x74, 0x39, 0x13, 0x68, 0xe4, 0x6a, - 0x89, 0x90, 0x74, 0x01, 0x46, 0xa9, 0x82, 0xaa, 0x60, 0xbd, 0x4b, 0x12, 0x34, 0x99, 0xb6, 0xd4, - 0x88, 0x22, 0x8f, 0x60, 0x45, 0x32, 0x57, 0x34, 0x4b, 0x0a, 0x7b, 0xdd, 0xc0, 0x4e, 0xd5, 0x86, - 0xf3, 0xc5, 0x82, 0xf5, 0x1e, 0x47, 0x26, 0x31, 0xf2, 0xe1, 0xb5, 0xa9, 0x85, 0x95, 0xd7, 0x22, - 0x23, 0x53, 0xca, 0x91, 0x79, 0x08, 0x10, 0xaf, 0x52, 0x95, 0x6a, 0xd4, 0xf0, 0x14, 0xc9, 0xae, - 0xcc, 0x92, 0xed, 0xc1, 0x86, 0x81, 0x61, 0x39, 0xaa, 0xce, 0x27, 0x58, 0xef, 0xe3, 0x15, 0xa6, - 0x44, 0x16, 0x69, 0x9f, 0x1e, 0x81, 0x92, 0x79, 0x04, 0x0a, 0x20, 0xcb, 0x73, 0x41, 0x1a, 0xf5, - 0x97, 0x04, 0xf9, 0xd3, 0x82, 0xda, 0x19, 0xca, 0xa5, 0x20, 0x36, 0x61, 0xd5, 0xc7, 0x3b, 0xd5, - 0x99, 0x18, 0x5e, 0x62, 0x92, 0x36, 0x10, 0xcf, 0x1f, 0x71, 0x64, 0x02, 0xcf, 0xb3, 0x4e, 0xac, - 0xa8, 0x4e, 0xcc, 0xd9, 0x21, 0xcf, 0xe0, 0x3f, 0x8e, 0xe3, 0x9b, 0x91, 0x19, 0x5d, 0x51, 0xd1, - 0x33, 0xfe, 0xa2, 0x30, 0xd5, 0x59, 0x61, 0xde, 0x02, 0x24, 0x94, 0x96, 0x54, 0xe5, 0x87, 0x05, - 0x9b, 0x67, 0xe8, 0x8f, 0x8f, 0x85, 0xdb, 0xd5, 0xd2, 0xcc, 0xbf, 0xa8, 0x3b, 0x50, 0x15, 0xe8, - 0x8f, 0xb3, 0x23, 0x18, 0x5b, 0x11, 0xa1, 0x68, 0x85, 0xfc, 0xf4, 0x8a, 0xc9, 0x49, 0xc0, 0xa7, - 0xba, 0x85, 0x15, 0x3a, 0xe3, 0x8f, 0x64, 0x1c, 0x05, 0xbe, 0x44, 0x5f, 0xea, 0xa3, 0x98, 0x98, - 0x11, 0x55, 0xbd, 0x1c, 0x7c, 0x0e, 0xb1, 0x59, 0x51, 0x05, 0x4c, 0xd7, 0x5f, 0x88, 0xb1, 0x0f, - 0x8d, 0x1c, 0x93, 0x25, 0x15, 0xf9, 0x6a, 0xc1, 0xd6, 0x81, 0x12, 0x35, 0xaa, 0x76, 0x14, 0xc4, - 0xe3, 0xa4, 0x0f, 0x70, 0xca, 0x5c, 0xcf, 0x57, 0x7f, 0xa6, 0x2b, 0x3d, 0x69, 0x0b, 0xe4, 0xb7, - 0xc8, 0x87, 0x2c, 0xf4, 0x86, 0x21, 0xe3, 0x6c, 0x2a, 0xda, 0x14, 0xaf, 0x6f, 0x50, 0xc8, 0x2c, - 0x96, 0x1a, 0x79, 0x0b, 0xef, 0xf1, 0x9f, 0xaf, 0xc0, 0x37, 0x0b, 0x20, 0x83, 0xf4, 0xcf, 0xc3, - 0xb4, 0xa0, 0x6f, 0x79, 0x56, 0xdf, 0xc5, 0xbd, 0xb1, 0x61, 0x2d, 0xea, 0xe4, 0xc0, 0x9b, 0xc6, - 0x8d, 0x29, 0xd3, 0xd4, 0x76, 0xbe, 0x5b, 0x40, 0x8a, 0x62, 0x2d, 0x39, 0x2f, 0xf7, 0x73, 0x0a, - 0x97, 0x54, 0xce, 0xd3, 0xb9, 0x0a, 0x8b, 0x30, 0xf0, 0x05, 0x2e, 0x90, 0xf8, 0x25, 0xd4, 0x65, - 0x86, 0x46, 0xbf, 0x1c, 0xc4, 0x98, 0xbe, 0x7a, 0x8b, 0x9a, 0x61, 0xdd, 0x5f, 0x25, 0xd8, 0x38, - 0x51, 0x21, 0x67, 0xc8, 0x6f, 0xbd, 0x11, 0x92, 0x3d, 0xa8, 0x1b, 0xaf, 0x00, 0xd9, 0x49, 0x2a, - 0xe4, 0x9f, 0x19, 0xfb, 0xfe, 0x5c, 0xbf, 0x08, 0xc9, 0x2b, 0xa8, 0xa5, 0x83, 0x95, 0x6c, 0xa7, - 0xdc, 0x8d, 0x79, 0x6f, 0xdf, 0x9b, 0xe3, 0x8d, 0x33, 0xd3, 0x69, 0x97, 0x65, 0x9a, 0x03, 0x36, - 0xcb, 0xcc, 0x8f, 0xc5, 0x0e, 0x54, 0xe3, 0x71, 0x40, 0xb6, 0x92, 0x80, 0x74, 0xe2, 0xd9, 0xa4, - 0xe8, 0x12, 0x61, 0x44, 0xd2, 0xb8, 0x32, 0x19, 0xc9, 0xfc, 0x44, 0xc8, 0x48, 0x16, 0xef, 0xd7, - 0x81, 0x7a, 0x76, 0x8d, 0xee, 0x93, 0x07, 0x86, 0x1e, 0xf9, 0x2b, 0x64, 0xdb, 0x8b, 0xb6, 0x44, - 0xf8, 0x6e, 0xeb, 0x63, 0xa3, 0xad, 0xbf, 0x6f, 0x5e, 0xc7, 0x3f, 0x17, 0x55, 0xf5, 0xf1, 0xf2, - 0xe2, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x72, 0xfc, 0x2a, 0x94, 0xfe, 0x08, 0x00, 0x00, +func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_b53660f9aedbfa32) } + +var fileDescriptor_office_b53660f9aedbfa32 = []byte{ + // 781 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xdd, 0x6a, 0xdb, 0x4a, + 0x10, 0x46, 0xf2, 0x5f, 0x3c, 0x4e, 0xe2, 0x93, 0x3d, 0x39, 0x39, 0xaa, 0x08, 0xad, 0x2b, 0x5a, + 0x08, 0x2d, 0xd8, 0xe0, 0xf6, 0xa2, 0x50, 0x1a, 0x4a, 0xed, 0x60, 0x5c, 0x92, 0x26, 0x28, 0xce, + 0x4d, 0x2f, 0x6a, 0x36, 0xf6, 0x58, 0x88, 0xc4, 0x92, 0xb2, 0x2b, 0x27, 0xf7, 0x7d, 0x85, 0x42, + 0xdf, 0xa8, 0x0f, 0xd0, 0x77, 0xe8, 0x6b, 0x14, 0x8a, 0x56, 0xd2, 0x6a, 0x25, 0xdb, 0x14, 0x7c, + 0x25, 0x7d, 0xb3, 0x33, 0xab, 0x6f, 0xbe, 0xd9, 0x99, 0x15, 0xfc, 0xeb, 0xcf, 0x66, 0xee, 0x04, + 0x3b, 0xf1, 0xa3, 0x1d, 0x30, 0x3f, 0xf4, 0x49, 0x35, 0x46, 0xe6, 0xd3, 0xf3, 0x00, 0xbd, 0xf1, + 0xf0, 0xac, 0x13, 0xdc, 0x38, 0x1d, 0xb1, 0xd4, 0xe1, 0xd3, 0x9b, 0xf1, 0x03, 0xef, 0x3c, 0xf0, + 0xd8, 0xd5, 0x3a, 0x06, 0xe8, 0xf9, 0xf3, 0xb9, 0xef, 0xd9, 0xc8, 0x03, 0x62, 0x40, 0x0d, 0x19, + 0xeb, 0xf9, 0x53, 0x34, 0xb4, 0x96, 0x76, 0x54, 0xb1, 0x53, 0x48, 0x0e, 0xa0, 0x8a, 0x8c, 0x9d, + 0x71, 0xc7, 0xd0, 0x5b, 0xda, 0x51, 0xdd, 0x4e, 0x90, 0xf5, 0x0e, 0x6a, 0x23, 0xea, 0x5c, 0x71, + 0x64, 0x91, 0xcb, 0x82, 0x23, 0x1b, 0xf6, 0x45, 0x6c, 0xdd, 0x4e, 0x10, 0x31, 0x61, 0x2b, 0x7a, + 0xfb, 0x44, 0xe7, 0x98, 0x04, 0x4b, 0x6c, 0x5d, 0x43, 0x69, 0x44, 0x1d, 0xb2, 0x0f, 0x95, 0x90, + 0x3a, 0x32, 0x32, 0x06, 0x11, 0x9b, 0x90, 0x3a, 0x4a, 0x5c, 0x0a, 0xc9, 0xcb, 0x78, 0xcb, 0x53, + 0x97, 0x87, 0x46, 0xa9, 0x55, 0x3a, 0x6a, 0x74, 0x9b, 0xed, 0x44, 0x81, 0x84, 0x8d, 0x2d, 0x1d, + 0xac, 0x8f, 0xb0, 0x3b, 0xc0, 0x30, 0x32, 0x8e, 0xa8, 0xc3, 0x6d, 0xbc, 0x5b, 0xcb, 0xb4, 0x05, + 0x0d, 0x3f, 0x40, 0x46, 0x43, 0xd7, 0xf7, 0x86, 0xfd, 0xe4, 0xa3, 0xaa, 0xc9, 0x9a, 0x41, 0x33, + 0xb7, 0x17, 0x0f, 0x48, 0x17, 0x60, 0x22, 0x15, 0x14, 0x1b, 0x36, 0xba, 0x24, 0x65, 0x93, 0x69, + 0x6b, 0x2b, 0x5e, 0xe4, 0x09, 0x94, 0x43, 0xea, 0x70, 0x43, 0x17, 0xdc, 0x1b, 0x0a, 0x77, 0x5b, + 0x2c, 0x58, 0x5f, 0x35, 0xd8, 0xee, 0x31, 0xa4, 0x21, 0x46, 0x36, 0xbc, 0x53, 0xb5, 0xd0, 0xf2, + 0x5a, 0x64, 0xc9, 0xe8, 0xb9, 0x64, 0x1e, 0x03, 0xc4, 0x6f, 0x52, 0xa5, 0xba, 0xad, 0x58, 0x8a, + 0xc9, 0x96, 0x97, 0x93, 0xed, 0xc1, 0x8e, 0xc2, 0x61, 0xb3, 0x54, 0xad, 0x2f, 0xb0, 0xdd, 0xc7, + 0x5b, 0x94, 0x89, 0xac, 0xd3, 0x5e, 0x1e, 0x01, 0x5d, 0x3d, 0x02, 0x05, 0x92, 0xa5, 0x95, 0x24, + 0x95, 0xfd, 0x37, 0x24, 0xf9, 0x53, 0x83, 0xfa, 0x25, 0x86, 0x1b, 0x51, 0x34, 0xa0, 0xe6, 0xe1, + 0x83, 0xa8, 0x4c, 0x4c, 0x2f, 0x85, 0xa4, 0x0d, 0xc4, 0xf5, 0x26, 0x0c, 0x29, 0xc7, 0xab, 0xac, + 0x12, 0x65, 0x51, 0x89, 0x15, 0x2b, 0xe4, 0x05, 0xfc, 0xc3, 0x70, 0xba, 0x98, 0xa8, 0xde, 0x15, + 0xe1, 0xbd, 0x64, 0x2f, 0x0a, 0x53, 0x5d, 0x16, 0xe6, 0x3d, 0x40, 0x9a, 0xd2, 0x86, 0xaa, 0xfc, + 0xd2, 0x60, 0xf7, 0x12, 0xbd, 0xe9, 0x19, 0x77, 0xba, 0xb9, 0x63, 0x28, 0x98, 0x69, 0x82, 0x59, + 0x0a, 0xa3, 0x2e, 0xbf, 0x4a, 0x5b, 0x52, 0x17, 0x4b, 0x12, 0x93, 0x43, 0xa8, 0x0f, 0x98, 0xbf, + 0x08, 0x94, 0x93, 0x98, 0x19, 0x22, 0xb9, 0x39, 0x7a, 0x53, 0x79, 0x06, 0x13, 0x14, 0xc9, 0x11, + 0xbd, 0x21, 0xbb, 0xb8, 0xa5, 0xe1, 0xcc, 0x67, 0xf3, 0x61, 0xdf, 0xa8, 0x88, 0xa9, 0xb4, 0x64, + 0x8f, 0x78, 0x4d, 0x7c, 0x2f, 0x44, 0x2f, 0x4c, 0xa4, 0x48, 0x61, 0x51, 0xa8, 0xda, 0xb2, 0x50, + 0x27, 0xd0, 0xcc, 0x65, 0xb9, 0xa1, 0x5a, 0xdf, 0x34, 0xd8, 0x1b, 0x08, 0xc1, 0xa3, 0xdd, 0x4e, + 0xfd, 0x78, 0xd4, 0xf4, 0x01, 0x2e, 0xa8, 0xe3, 0x7a, 0xe2, 0x63, 0xc9, 0x4e, 0xcf, 0xda, 0x1c, + 0xd9, 0x3d, 0xb2, 0x31, 0x0d, 0xdc, 0x71, 0x40, 0x19, 0x9d, 0xf3, 0xb6, 0x8d, 0x77, 0x0b, 0xe4, + 0x61, 0xe6, 0x6b, 0x2b, 0x71, 0x6b, 0x7b, 0xfc, 0xef, 0xed, 0xf1, 0x5d, 0x03, 0xc8, 0x28, 0xa5, + 0xb3, 0x58, 0x29, 0xa0, 0xc4, 0x6a, 0x6d, 0xf5, 0x7c, 0x6d, 0x0f, 0xa1, 0xee, 0x14, 0xeb, 0x27, + 0x0d, 0xaa, 0xf6, 0xe5, 0xbc, 0xf6, 0x26, 0x6c, 0x45, 0x95, 0x1a, 0xb9, 0x73, 0x14, 0x95, 0x2b, + 0xd9, 0x12, 0x5b, 0x3f, 0x34, 0x20, 0x45, 0xb9, 0x36, 0x9c, 0xa6, 0x27, 0x39, 0x8d, 0x75, 0x11, + 0xf3, 0x7c, 0xa5, 0xc6, 0x3c, 0xf0, 0x3d, 0x8e, 0x6b, 0x44, 0x7e, 0x0d, 0x8d, 0x30, 0x63, 0x93, + 0xdc, 0x2b, 0x44, 0x99, 0xcd, 0xc9, 0x92, 0xad, 0xba, 0x75, 0x7f, 0xeb, 0xb0, 0x73, 0x2e, 0x5c, + 0x2e, 0x91, 0xdd, 0xbb, 0x13, 0x24, 0xc7, 0xd0, 0x50, 0xee, 0x08, 0x72, 0x90, 0xee, 0x90, 0xbf, + 0x84, 0xcc, 0xff, 0x57, 0xda, 0x79, 0x40, 0xde, 0x40, 0x5d, 0x8e, 0x5d, 0xb2, 0x2f, 0x73, 0x57, + 0x6e, 0x03, 0xf3, 0xbf, 0x15, 0xd6, 0x38, 0x52, 0xce, 0xc2, 0x2c, 0x52, 0x1d, 0xbf, 0x59, 0x64, + 0x7e, 0x68, 0x76, 0xa0, 0x1a, 0x0f, 0x0b, 0xb2, 0x97, 0x3a, 0xc8, 0x79, 0x68, 0x92, 0xa2, 0x89, + 0x07, 0x51, 0x92, 0x4a, 0xd3, 0x64, 0x49, 0xe6, 0xe7, 0x45, 0x96, 0x64, 0xb1, 0xc3, 0x06, 0xe2, + 0x52, 0x56, 0xaa, 0x4f, 0x1e, 0x29, 0x7a, 0xe4, 0x9b, 0xc8, 0x34, 0xd7, 0x2d, 0xf1, 0xe0, 0xc3, + 0xde, 0xe7, 0x66, 0x3b, 0xf9, 0xfb, 0x79, 0x1b, 0x3f, 0xae, 0xab, 0xe2, 0xd7, 0xe6, 0xd5, 0x9f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0xbf, 0x36, 0xc4, 0xe9, 0x1c, 0x09, 0x00, 0x00, } diff --git a/pkg/proto/office/office.proto b/pkg/proto/office/office.proto index bb0a59b0a..99c749dbb 100644 --- a/pkg/proto/office/office.proto +++ b/pkg/proto/office/office.proto @@ -64,12 +64,13 @@ message SetTagResp { } message SendMsg2TagReq { - string tagID = 1; - string sendID = 2; - int32 senderPlatformID = 3; - string content = 4; - int32 contentType = 5; - string operationID = 6; + repeated string tagList = 1; + repeated string UserList = 2; + repeated string GroupList = 3; + string sendID = 4; + int32 senderPlatformID = 5; + string content = 6; + string operationID = 7; } message SendMsg2TagResp { @@ -83,9 +84,9 @@ message GetTagSendLogsReq { } message TagSendLog { - string tagID = 1; - string tagName = 2; - int32 contentType = 3; + repeated string userList = 1; + repeated string tagList = 2; + repeated string groupList =3; string content = 4; int64 sendTime = 5; } From 416f87f4bb963008b5fca8d3d0fd5074ee7b3f0c Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 15:50:20 +0800 Subject: [PATCH 08/41] tag --- internal/rpc/office/office.go | 6 +++--- pkg/common/db/mongoModel.go | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index ebb1de2a2..508d0c04c 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -166,9 +166,9 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR groupUserIDList = append(groupUserIDList, userIDList...) } var userIDList []string - userIDList = append(groupUserIDList, tagUserIDList...) - userIDList = append(groupUserIDList, groupUserIDList...) - userIDList = append(groupUserIDList, req.UserList...) + userIDList = append(userIDList, tagUserIDList...) + userIDList = append(userIDList, groupUserIDList...) + userIDList = append(userIDList, req.UserList...) userIDList = utils.RemoveUserIDRepByMap(userIDList) for i, userID := range userIDList { if userID == req.SendID { diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index 36550e50c..bcc05a295 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -568,7 +568,7 @@ func (d *DataBases) GetTagSendLogs(userID string, showNumber, pageNumber int32) } func generateTagID(tagName, userID string) string { - return utils.Md5(tagName + userID + strconv.Itoa(rand.Int())) + return utils.Md5(tagName + userID + strconv.Itoa(rand.Int()) + time.Now().String()) } func getCurrentTimestampByMill() int64 { From d0a65c7c68347eafb005a2e5ab763a29950228b3 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 15:58:42 +0800 Subject: [PATCH 09/41] tag --- internal/rpc/office/office.go | 1 + pkg/common/db/mysql_model/im_mysql_model/group_member_model.go | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index 508d0c04c..8f177abcb 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -165,6 +165,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR } groupUserIDList = append(groupUserIDList, userIDList...) } + log.NewDebug(req.OperationID, utils.GetSelfFuncName(), groupUserIDList, req.GroupList) var userIDList []string userIDList = append(userIDList, tagUserIDList...) userIDList = append(userIDList, groupUserIDList...) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index acf5a7a15..2eb0b591f 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -73,9 +73,9 @@ func GetGroupMemberIDListByGroupID(groupID string) ([]string, error) { if err != nil { return nil, err } + dbConn.LogMode(true) var groupMemberIDList []string err = dbConn.Table("group_members").Select("user_id").Where("group_id=?", groupID).Find(&groupMemberIDList).Error - if err != nil { return nil, err } From fe4b534b781ad6c9ac77b21e92fdc6b06dcefc20 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 16:04:15 +0800 Subject: [PATCH 10/41] mute group --- cmd/Open-IM-SDK-Core | 2 +- config/config.yaml | 50 ++++++++++++++++++ internal/rpc/group/group.go | 6 ++- internal/rpc/msg/group_notification.go | 73 ++++++++++++++++++++++++++ internal/rpc/msg/send_msg.go | 32 +++++++++++ pkg/common/config/config.go | 24 +++++++++ pkg/common/constant/constant.go | 5 +- 7 files changed, 188 insertions(+), 4 deletions(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index a19440c3d..a6b33ab9d 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit a19440c3d6e6504655934cc432d8420bb1909816 +Subproject commit a6b33ab9d277ef82e1e0e12c4affb49b53758735 diff --git a/config/config.yaml b/config/config.yaml index 7d864283c..a801d7c57 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -366,6 +366,56 @@ notification: ext: "groupDismissed ext" defaultTips: tips: "group dismissed" + + + groupMuted: + conversation: + reliabilityLevel: 3 + unreadCount: true + offlinePush: + switch: false + title: "groupMuted title" + desc: "groupMuted desc" + ext: "groupMuted ext" + defaultTips: + tips: "group Muted" + + groupCancelMuted: + conversation: + reliabilityLevel: 3 + unreadCount: true + offlinePush: + switch: false + title: "groupCancelMuted title" + desc: "groupCancelMuted desc" + ext: "groupCancelMuted ext" + defaultTips: + tips: "group Cancel Muted" + + + groupMemberMuted: + conversation: + reliabilityLevel: 3 + unreadCount: true + offlinePush: + switch: false + title: "groupMemberMuted title" + desc: "groupMemberMuted desc" + ext: "groupMemberMuted ext" + defaultTips: + tips: "group Member Muted" + + groupMemberCancelMuted: + conversation: + reliabilityLevel: 3 + unreadCount: true + offlinePush: + switch: false + title: "groupMemberCancelMuted title" + desc: "groupMemberCancelMuted desc" + ext: "groupMemberCancelMuted ext" + defaultTips: + tips: "group Member Cancel Muted" #############################friend################################# friendApplicationAdded: diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 98198f598..eefbcac9c 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -980,6 +980,7 @@ func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGrou log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo) return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil } + chat.GroupMemberMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID, req.MutedSeconds) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } @@ -997,6 +998,7 @@ func (s *groupServer) CancelMuteGroupMember(ctx context.Context, req *pbGroup.Ca log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo) return &pbGroup.CancelMuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil } + chat.GroupMemberCancelMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) return &pbGroup.CancelMuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } @@ -1012,7 +1014,7 @@ func (s *groupServer) MuteGroup(ctx context.Context, req *pbGroup.MuteGroupReq) log.Error(req.OperationID, "OperateGroupStatus failed ", err.Error(), req.GroupID, constant.GroupStatusMuted) return &pbGroup.MuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil } - chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID) + chat.GroupMutedNotification(req.OperationID, req.OpUserID, req.GroupID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) return &pbGroup.MuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } @@ -1030,7 +1032,7 @@ func (s *groupServer) CancelMuteGroup(ctx context.Context, req *pbGroup.CancelMu log.Error(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), groupInfo) return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil } - chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID) + chat.GroupCancelMutedNotification(req.OperationID, req.OpUserID, req.GroupID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil } diff --git a/internal/rpc/msg/group_notification.go b/internal/rpc/msg/group_notification.go index f5155889b..d6def3ff2 100644 --- a/internal/rpc/msg/group_notification.go +++ b/internal/rpc/msg/group_notification.go @@ -160,6 +160,14 @@ func groupNotification(contentType int32, m proto.Message, sendID, groupID, recv tips.DefaultTips = toNickname + " " + cn.MemberEnter.DefaultTips.Tips case constant.GroupDismissedNotification: tips.DefaultTips = toNickname + "" + cn.GroupDismissed.DefaultTips.Tips + case constant.GroupMutedNotification: + tips.DefaultTips = toNickname + "" + cn.GroupMuted.DefaultTips.Tips + case constant.GroupCancelMutedNotification: + tips.DefaultTips = toNickname + "" + cn.GroupCancelMuted.DefaultTips.Tips + case constant.GroupMemberMutedNotification: + tips.DefaultTips = toNickname + "" + cn.GroupMemberMuted.DefaultTips.Tips + case constant.GroupMemberCancelMutedNotification: + tips.DefaultTips = toNickname + "" + cn.GroupMemberCancelMuted.DefaultTips.Tips default: log.Error(operationID, "contentType failed ", contentType) return @@ -227,6 +235,71 @@ func GroupInfoSetNotification(operationID, opUserID, groupID string) { groupNotification(constant.GroupInfoSetNotification, &GroupInfoChangedTips, opUserID, groupID, "", operationID) } +func GroupMutedNotification(operationID, opUserID, groupID string) { + tips := open_im_sdk.GroupMutedTips{Group: &open_im_sdk.GroupInfo{}, + OpUser: &open_im_sdk.GroupMemberFullInfo{}} + if err := setGroupInfo(groupID, tips.Group); err != nil { + log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID) + return + } + if err := setOpUserInfo(opUserID, groupID, tips.OpUser); err != nil { + log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID) + return + } + groupNotification(constant.GroupMutedNotification, &tips, opUserID, groupID, "", operationID) +} + +func GroupCancelMutedNotification(operationID, opUserID, groupID string) { + tips := open_im_sdk.GroupCancelMutedTips{Group: &open_im_sdk.GroupInfo{}, + OpUser: &open_im_sdk.GroupMemberFullInfo{}} + if err := setGroupInfo(groupID, tips.Group); err != nil { + log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID) + return + } + if err := setOpUserInfo(opUserID, groupID, tips.OpUser); err != nil { + log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID) + return + } + groupNotification(constant.GroupCancelMutedNotification, &tips, opUserID, groupID, "", operationID) +} + +func GroupMemberMutedNotification(operationID, opUserID, groupID, groupMemberUserID string, mutedSeconds uint32) { + tips := open_im_sdk.GroupMemberMutedTips{Group: &open_im_sdk.GroupInfo{}, + OpUser: &open_im_sdk.GroupMemberFullInfo{}, MutedUser: &open_im_sdk.GroupMemberFullInfo{}} + tips.MutedSeconds = mutedSeconds + if err := setGroupInfo(groupID, tips.Group); err != nil { + log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID) + return + } + if err := setOpUserInfo(opUserID, groupID, tips.OpUser); err != nil { + log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID) + return + } + if err := setGroupMemberInfo(groupID, groupMemberUserID, tips.MutedUser); err != nil { + log.Error(operationID, "setGroupMemberInfo failed ", err.Error(), groupID, groupMemberUserID) + return + } + groupNotification(constant.GroupMemberMutedNotification, &tips, opUserID, groupID, "", operationID) +} + +func GroupMemberCancelMutedNotification(operationID, opUserID, groupID, groupMemberUserID string) { + tips := open_im_sdk.GroupMemberCancelMutedTips{Group: &open_im_sdk.GroupInfo{}, + OpUser: &open_im_sdk.GroupMemberFullInfo{}, MutedUser: &open_im_sdk.GroupMemberFullInfo{}} + if err := setGroupInfo(groupID, tips.Group); err != nil { + log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID) + return + } + if err := setOpUserInfo(opUserID, groupID, tips.OpUser); err != nil { + log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID) + return + } + if err := setGroupMemberInfo(groupID, groupMemberUserID, tips.MutedUser); err != nil { + log.Error(operationID, "setGroupMemberInfo failed ", err.Error(), groupID, groupMemberUserID) + return + } + groupNotification(constant.GroupMemberCancelMutedNotification, &tips, opUserID, groupID, "", operationID) +} + //message ReceiveJoinApplicationTips{ // GroupInfo Group = 1; // PublicUserInfo Applicant = 2; diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 2820bd8ad..de189a048 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -513,6 +513,38 @@ func Notification(n *NotificationMsg) { ex = config.Config.Notification.GroupDismissed.OfflinePush.Ext reliabilityLevel = config.Config.Notification.GroupDismissed.Conversation.ReliabilityLevel unReadCount = config.Config.Notification.GroupDismissed.Conversation.UnreadCount + + case constant.GroupMutedNotification: + pushSwitch = config.Config.Notification.GroupMuted.OfflinePush.PushSwitch + title = config.Config.Notification.GroupMuted.OfflinePush.Title + desc = config.Config.Notification.GroupMuted.OfflinePush.Desc + ex = config.Config.Notification.GroupMuted.OfflinePush.Ext + reliabilityLevel = config.Config.Notification.GroupMuted.Conversation.ReliabilityLevel + unReadCount = config.Config.Notification.GroupMuted.Conversation.UnreadCount + + case constant.GroupCancelMutedNotification: + pushSwitch = config.Config.Notification.GroupCancelMuted.OfflinePush.PushSwitch + title = config.Config.Notification.GroupCancelMuted.OfflinePush.Title + desc = config.Config.Notification.GroupCancelMuted.OfflinePush.Desc + ex = config.Config.Notification.GroupCancelMuted.OfflinePush.Ext + reliabilityLevel = config.Config.Notification.GroupCancelMuted.Conversation.ReliabilityLevel + unReadCount = config.Config.Notification.GroupCancelMuted.Conversation.UnreadCount + + case constant.GroupMemberMutedNotification: + pushSwitch = config.Config.Notification.GroupMemberMuted.OfflinePush.PushSwitch + title = config.Config.Notification.GroupMemberMuted.OfflinePush.Title + desc = config.Config.Notification.GroupMemberMuted.OfflinePush.Desc + ex = config.Config.Notification.GroupMemberMuted.OfflinePush.Ext + reliabilityLevel = config.Config.Notification.GroupMemberMuted.Conversation.ReliabilityLevel + unReadCount = config.Config.Notification.GroupMemberMuted.Conversation.UnreadCount + + case constant.GroupMemberCancelMutedNotification: + pushSwitch = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.PushSwitch + title = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Title + desc = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Desc + ex = config.Config.Notification.GroupMemberCancelMuted.OfflinePush.Ext + reliabilityLevel = config.Config.Notification.GroupMemberCancelMuted.Conversation.ReliabilityLevel + unReadCount = config.Config.Notification.GroupMemberCancelMuted.Conversation.UnreadCount } switch reliabilityLevel { case constant.UnreliableNotification: diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 2a8ec36ff..2a9759cc7 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -270,6 +270,30 @@ type config struct { DefaultTips PDefaultTips `yaml:"defaultTips"` } `yaml:"groupDismissed"` + GroupMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMuted"` + + GroupCancelMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupCancelMuted"` + + GroupMemberMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberMuted"` + + GroupMemberCancelMuted struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"groupMemberCancelMuted"` + ////////////////////////user/////////////////////// UserInfoUpdated struct { Conversation PConversation `yaml:"conversation"` diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index 0a1e38168..a38076e7b 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -79,7 +79,10 @@ const ( MemberInvitedNotification = 1509 MemberEnterNotification = 1510 GroupDismissedNotification = 1511 - GroupMemberInfoChangedNotification = 1512 + GroupMemberMutedNotification = 1512 + GroupMemberCancelMutedNotification = 1513 + GroupMutedNotification = 1514 + GroupCancelMutedNotification = 1515 SignalingNotificationBegin = 1600 SignalingNotification = 1601 From 7e937d7d293ebc53abe7792dbb8633c548c58caa Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 16:04:54 +0800 Subject: [PATCH 11/41] tag --- internal/rpc/office/office.go | 2 +- internal/rpc/user/user.go | 1 + pkg/common/db/mysql_model/im_mysql_model/user_model.go | 10 +++++----- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index 8f177abcb..ac691190a 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -165,7 +165,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR } groupUserIDList = append(groupUserIDList, userIDList...) } - log.NewDebug(req.OperationID, utils.GetSelfFuncName(), groupUserIDList, req.GroupList) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), groupUserIDList, req.GroupList) var userIDList []string userIDList = append(userIDList, tagUserIDList...) userIDList = append(userIDList, groupUserIDList...) diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index c8a5d8f65..f83e0e551 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -93,6 +93,7 @@ func syncPeerUserConversation(conversation *pbUser.Conversation, operationID str log.NewError(operationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) return err } + chat.SetConversationNotification(operationID, conversation.UserID) } return nil diff --git a/pkg/common/db/mysql_model/im_mysql_model/user_model.go b/pkg/common/db/mysql_model/im_mysql_model/user_model.go index 3a37062a7..ab367a5ff 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/user_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/user_model.go @@ -379,10 +379,10 @@ func GetConversations(OwnerUserID string, conversationIDs []string) ([]db.Conver } func CreateConversationIfNotExist(conversation db.Conversation) error { - //dbConn, err := db.DB.MysqlDB.DefaultGormDB() - //if err != nil { - // return err - //} - //err = dbConn.Model(&db.Conversation{}).Where().Find().Error + dbConn, err := db.DB.MysqlDB.DefaultGormDB() + if err != nil { + return err + } + err = dbConn.Model(&db.Conversation{}).Create(conversation).Error return nil } From f2b324abc2e3302b0fff76c05d82bbf66b269c32 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 16:10:36 +0800 Subject: [PATCH 12/41] tag --- internal/rpc/office/office.go | 3 ++- .../db/mysql_model/im_mysql_model/group_member_model.go | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index ac691190a..e96475773 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -163,6 +163,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetGroupMemberIDListByGroupID failed", err.Error()) continue } + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), userIDList) groupUserIDList = append(groupUserIDList, userIDList...) } log.NewInfo(req.OperationID, utils.GetSelfFuncName(), groupUserIDList, req.GroupList) @@ -172,7 +173,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR userIDList = append(userIDList, req.UserList...) userIDList = utils.RemoveUserIDRepByMap(userIDList) for i, userID := range userIDList { - if userID == req.SendID { + if userID == req.SendID || userID == "" { userIDList = append(userIDList[:i], userIDList[i+1:]...) } } diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index 2eb0b591f..90e0a26e7 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -74,11 +74,15 @@ func GetGroupMemberIDListByGroupID(groupID string) ([]string, error) { return nil, err } dbConn.LogMode(true) - var groupMemberIDList []string - err = dbConn.Table("group_members").Select("user_id").Where("group_id=?", groupID).Find(&groupMemberIDList).Error + var groupMembers []db.GroupMember + err = dbConn.Table("group_members").Select("user_id").Where("group_id=?", groupID).Find(&groupMembers).Error if err != nil { return nil, err } + var groupMemberIDList []string + for _, v := range groupMembers { + groupMemberIDList = append(groupMemberIDList, v.UserID) + } return groupMemberIDList, nil } From 1bd8154ac4b80ed7e14ca042b5b5c7af54671133 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 16:15:37 +0800 Subject: [PATCH 13/41] tag --- pkg/base_info/office_struct.go | 1 - 1 file changed, 1 deletion(-) diff --git a/pkg/base_info/office_struct.go b/pkg/base_info/office_struct.go index a13255032..ac22c2239 100644 --- a/pkg/base_info/office_struct.go +++ b/pkg/base_info/office_struct.go @@ -53,7 +53,6 @@ type SendMsg2TagReq struct { SenderPlatformID int32 `json:"senderPlatformID" binding:"required"` Content string `json:"content" binding:"required"` - ContentType int32 `json:"contentType" binding:"required"` OperationID string `json:"operationID" binding:"required"` } From 475e64fc5b89d347a47ebd3a4a09c316c6674756 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 16:32:25 +0800 Subject: [PATCH 14/41] mute group --- internal/rpc/group/group.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index eefbcac9c..a279603ad 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -969,7 +969,7 @@ func (s *groupServer) DismissGroup(ctx context.Context, req *pbGroup.DismissGrou func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGroupMemberReq) (*pbGroup.MuteGroupMemberResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc args ", req.String()) - if !imdb.IsGroupOwnerAdmin(req.GroupID, req.UserID) && !token_verify.IsMangerUserID(req.OpUserID) { + if !imdb.IsGroupOwnerAdmin(req.GroupID, req.OpUserID) && !token_verify.IsMangerUserID(req.OpUserID) { log.Error(req.OperationID, "verify failed ", req.GroupID, req.UserID) return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil } @@ -987,7 +987,7 @@ func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGrou func (s *groupServer) CancelMuteGroupMember(ctx context.Context, req *pbGroup.CancelMuteGroupMemberReq) (*pbGroup.CancelMuteGroupMemberResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc args ", req.String()) - if !imdb.IsGroupOwnerAdmin(req.GroupID, req.UserID) && !token_verify.IsMangerUserID(req.OpUserID) { + if !imdb.IsGroupOwnerAdmin(req.GroupID, req.OpUserID) && !token_verify.IsMangerUserID(req.OpUserID) { log.Error(req.OperationID, "verify failed ", req.OpUserID, req.GroupID) return &pbGroup.CancelMuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil } From d53da0e4220b7a01a4a0b021d22cc00fc5e6c188 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Tue, 29 Mar 2022 16:56:33 +0800 Subject: [PATCH 15/41] group add --- pkg/common/db/mysql_model/im_mysql_model/group_member_model.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index a8fe5ed56..f22070218 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -31,7 +31,7 @@ func InsertIntoGroupMember(toInsertInfo db.GroupMember) error { toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers } if toInsertInfo.MuteEndTime.Unix() == 0 { - toInsertInfo.MuteEndTime = time.Unix(0, 0) + toInsertInfo.MuteEndTime = time.Unix(1, 0) } err = dbConn.Table("group_members").Create(toInsertInfo).Error if err != nil { From 85cf7f26cee49cbf058ef6d36716a485f85e70ab Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 17:03:06 +0800 Subject: [PATCH 16/41] mute group --- cmd/Open-IM-SDK-Core | 2 +- internal/rpc/group/group.go | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index a6b33ab9d..754a21f0b 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit a6b33ab9d277ef82e1e0e12c4affb49b53758735 +Subproject commit 754a21f0b1a86292127dd77999cfb42f18a713af diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index a279603ad..d62e24366 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -974,7 +974,8 @@ func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGrou return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil } groupMemberInfo := db.GroupMember{GroupID: req.GroupID, UserID: req.UserID} - groupMemberInfo.MuteEndTime = time.Unix(int64(time.Now().Second())+int64(req.MutedSeconds), 0) + + groupMemberInfo.MuteEndTime = time.Unix(int64(time.Now().Second())+int64(req.MutedSeconds), time.Now().UnixNano()) err := imdb.UpdateGroupMemberInfo(groupMemberInfo) if err != nil { log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo) From bc260fffde073a7875328707318fe631a4071a0f Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Tue, 29 Mar 2022 17:15:51 +0800 Subject: [PATCH 17/41] group add --- pkg/common/db/mysql_model/im_mysql_model/group_member_model.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index 70ed81c6e..8c16bd3ff 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -31,7 +31,7 @@ func InsertIntoGroupMember(toInsertInfo db.GroupMember) error { toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers } if toInsertInfo.MuteEndTime.Unix() == 0 { - toInsertInfo.MuteEndTime = time.Unix(1, 0) + toInsertInfo.MuteEndTime = time.Unix(1, 1) } err = dbConn.Table("group_members").Create(toInsertInfo).Error if err != nil { From e8517e954d0e979edcf6d4723d3d876cfe36ffdc Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Tue, 29 Mar 2022 17:20:37 +0800 Subject: [PATCH 18/41] group add --- .../db/mysql_model/im_mysql_model/group_member_model.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go index 8c16bd3ff..b0ffbd4ee 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_member_model.go @@ -30,9 +30,7 @@ func InsertIntoGroupMember(toInsertInfo db.GroupMember) error { if toInsertInfo.RoleLevel == 0 { toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers } - if toInsertInfo.MuteEndTime.Unix() == 0 { - toInsertInfo.MuteEndTime = time.Unix(1, 1) - } + toInsertInfo.MuteEndTime = time.Unix(int64(time.Now().Second()), 0) err = dbConn.Table("group_members").Create(toInsertInfo).Error if err != nil { return err From de55c14a1632ce56846f5c59940b3bd4afd68ad9 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 17:24:46 +0800 Subject: [PATCH 19/41] mute group --- cmd/Open-IM-SDK-Core | 2 +- internal/rpc/group/group.go | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 754a21f0b..119b4a428 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 754a21f0b1a86292127dd77999cfb42f18a713af +Subproject commit 119b4a428510aabc71f52b30867b8d5f64ddeaa2 diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index d62e24366..0b7500369 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -273,8 +273,11 @@ func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGro } for _, v := range memberList { + log.Debug(req.OperationID, v) var node open_im_sdk.GroupMemberFullInfo cp.GroupMemberDBCopyOpenIM(&node, &v) + log.Debug(req.OperationID, "db value:", v) + log.Debug(req.OperationID, "cp value: ", node) resp.MemberList = append(resp.MemberList, &node) } log.NewInfo(req.OperationID, "GetGroupAllMember rpc return ", resp.String()) From 373e6b6c8e682e15c00f21ec728e5997613e3859 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 17:29:05 +0800 Subject: [PATCH 20/41] mute group --- pkg/common/utils/utils.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/utils/utils.go b/pkg/common/utils/utils.go index 514063755..64f044a8e 100644 --- a/pkg/common/utils/utils.go +++ b/pkg/common/utils/utils.go @@ -118,7 +118,7 @@ func GroupMemberDBCopyOpenIM(dst *open_im_sdk.GroupMemberFullInfo, src *db.Group dst.AppMangerLevel = 1 } dst.JoinTime = int32(src.JoinTime.Unix()) - dst.MuteEndTime = uint32(src.JoinTime.Unix()) + dst.MuteEndTime = uint32(src.MuteEndTime.Unix()) if dst.MuteEndTime < uint32(time.Now().Unix()) { dst.MuteEndTime = 0 } From 18d7aab70366ca6a000cfb615a055aeec5f2c3b3 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 29 Mar 2022 17:33:06 +0800 Subject: [PATCH 21/41] tag --- internal/rpc/user/user.go | 30 +++++++++++++------ .../mysql_model/im_mysql_model/user_model.go | 28 +++++++++++------ 2 files changed, 40 insertions(+), 18 deletions(-) diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index f83e0e551..cbeb9240b 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -88,12 +88,11 @@ func syncPeerUserConversation(conversation *pbUser.Conversation, operationID str AttachedInfo: "", Ex: "", } - err := imdb.CreateConversationIfNotExist(peerUserConversation) + err := imdb.PeerUserSetConversation(peerUserConversation) if err != nil { log.NewError(operationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) return err } - chat.SetConversationNotification(operationID, conversation.UserID) } return nil @@ -140,9 +139,9 @@ func (s *userServer) BatchSetConversations(ctx context.Context, req *pbUser.Batc continue } resp.Success = append(resp.Success, v.ConversationID) - //if err := syncPeerUserConversation(v, req.OperationID); err != nil { - // log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) - //} + if err := syncPeerUserConversation(v, req.OperationID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + } } chat.SetConversationNotification(req.OperationID, req.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) @@ -219,10 +218,12 @@ func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConvers resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} return resp, nil } - // sync peer user conversation if conversation is singleChatType - //if err := syncPeerUserConversation(req.Conversation, req.OperationID); err != nil { - // log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) - //} + //sync peer user conversation if conversation is singleChatType + if err := syncPeerUserConversation(req.Conversation, req.OperationID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} + return resp, nil + } chat.SetConversationNotification(req.OperationID, req.Conversation.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) resp.CommonResp = &pbUser.CommonResp{} @@ -241,6 +242,17 @@ func (s *userServer) SetRecvMsgOpt(ctx context.Context, req *pbUser.SetRecvMsgOp resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} return resp, nil } + stringList := strings.Split(req.ConversationID, "_") + if len(stringList) > 1 { + switch stringList[0] { + case "single_": + conversation.UserID = stringList[1] + conversation.ConversationType = constant.SingleChatType + case "group": + conversation.GroupID = stringList[1] + conversation.ConversationType = constant.GroupChatType + } + } err := imdb.SetRecvMsgOpt(conversation) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) diff --git a/pkg/common/db/mysql_model/im_mysql_model/user_model.go b/pkg/common/db/mysql_model/im_mysql_model/user_model.go index ab367a5ff..5719371c5 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/user_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/user_model.go @@ -325,6 +325,25 @@ func SetConversation(conversation db.Conversation) error { } } +func PeerUserSetConversation(conversation db.Conversation) error { + dbConn, err := db.DB.MysqlDB.DefaultGormDB() + if err != nil { + return err + } + dbConn.LogMode(true) + newConversation := conversation + if dbConn.Model(&db.Conversation{}).Find(&newConversation).RowsAffected == 0 { + log.NewDebug("", utils.GetSelfFuncName(), "conversation", conversation, "not exist in db, create") + return dbConn.Model(&db.Conversation{}).Create(conversation).Error + // if exist, then update record + } + log.NewDebug("", utils.GetSelfFuncName(), "conversation", conversation, "exist in db, update") + //force update + return dbConn.Model(conversation).Where("owner_user_id = ? and conversation_id = ?", conversation.OwnerUserID, conversation.ConversationID). + Update(map[string]interface{}{"is_private_chat": conversation.IsPrivateChat}).Error + +} + func SetRecvMsgOpt(conversation db.Conversation) error { dbConn, err := db.DB.MysqlDB.DefaultGormDB() if err != nil { @@ -377,12 +396,3 @@ func GetConversations(OwnerUserID string, conversationIDs []string) ([]db.Conver err = dbConn.Model(&db.Conversation{}).Where("conversation_id IN (?) and owner_user_id=?", conversationIDs, OwnerUserID).Find(&conversations).Error return conversations, err } - -func CreateConversationIfNotExist(conversation db.Conversation) error { - dbConn, err := db.DB.MysqlDB.DefaultGormDB() - if err != nil { - return err - } - err = dbConn.Model(&db.Conversation{}).Create(conversation).Error - return nil -} From cc9df9c586426554cbdd107e8fe973d2f24cbd3a Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 18:24:10 +0800 Subject: [PATCH 22/41] mute group --- internal/rpc/group/group.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 0b7500369..10b3fe2a4 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -276,7 +276,7 @@ func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGro log.Debug(req.OperationID, v) var node open_im_sdk.GroupMemberFullInfo cp.GroupMemberDBCopyOpenIM(&node, &v) - log.Debug(req.OperationID, "db value:", v) + log.Debug(req.OperationID, "db value:", v.MuteEndTime, "seconds: ", v.MuteEndTime.Unix()) log.Debug(req.OperationID, "cp value: ", node) resp.MemberList = append(resp.MemberList, &node) } From 84aca5b9e12d6df798456f74f325123241847fc8 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 18:29:19 +0800 Subject: [PATCH 23/41] mute group --- cmd/Open-IM-SDK-Core | 2 +- pkg/common/utils/utils.go | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 119b4a428..884d0d0b2 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 119b4a428510aabc71f52b30867b8d5f64ddeaa2 +Subproject commit 884d0d0b2712f269db3f7f7fc7309759854dcb03 diff --git a/pkg/common/utils/utils.go b/pkg/common/utils/utils.go index 64f044a8e..5c317e4c9 100644 --- a/pkg/common/utils/utils.go +++ b/pkg/common/utils/utils.go @@ -118,6 +118,10 @@ func GroupMemberDBCopyOpenIM(dst *open_im_sdk.GroupMemberFullInfo, src *db.Group dst.AppMangerLevel = 1 } dst.JoinTime = int32(src.JoinTime.Unix()) + if src.MuteEndTime.Unix() < 0 { + dst.JoinTime = 0 + return nil + } dst.MuteEndTime = uint32(src.MuteEndTime.Unix()) if dst.MuteEndTime < uint32(time.Now().Unix()) { dst.MuteEndTime = 0 From bf5f72c00bb54bbe187d794d7cc2b1d394938e2c Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 18:36:24 +0800 Subject: [PATCH 24/41] mute group --- internal/rpc/group/group.go | 5 ++--- pkg/common/db/mysql_model/im_mysql_model/group_model.go | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 10b3fe2a4..50baff39e 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -1029,11 +1029,10 @@ func (s *groupServer) CancelMuteGroup(ctx context.Context, req *pbGroup.CancelMu log.Error(req.OperationID, "verify failed ", req.OpUserID, req.GroupID) return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil } - groupInfo := db.Group{GroupID: req.GroupID} - err := imdb.UpdateGroupInfoDefaultZero(groupInfo, map[string]interface{}{"status": constant.GroupOk}) + err := imdb.UpdateGroupInfoDefaultZero(req.GroupID, map[string]interface{}{"status": constant.GroupOk}) if err != nil { - log.Error(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), groupInfo) + log.Error(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), req.GroupID) return &pbGroup.CancelMuteGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil } chat.GroupCancelMutedNotification(req.OperationID, req.OpUserID, req.GroupID) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_model.go index 2d1d0e4db..88dfece8c 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_model.go @@ -216,10 +216,10 @@ func GetGroupMaster(groupId string) (db.GroupMember, error) { return groupMember, nil } -func UpdateGroupInfoDefaultZero(groupInfo db.Group, args map[string]interface{}) error { +func UpdateGroupInfoDefaultZero(groupID string, args map[string]interface{}) error { dbConn, err := db.DB.MysqlDB.DefaultGormDB() if err != nil { return err } - return dbConn.Model(groupInfo).Updates(args).Error + return dbConn.Model(&db.Group{}).Where("group_id = ? ", groupID).Update(args).Error } From 009ae6a235cfd1a6bbfb06de1c925ef5274f214b Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Tue, 29 Mar 2022 18:54:55 +0800 Subject: [PATCH 25/41] mute group --- pkg/common/db/mysql_model/im_mysql_model/group_model.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/mysql_model/im_mysql_model/group_model.go b/pkg/common/db/mysql_model/im_mysql_model/group_model.go index 88dfece8c..9056bfb00 100644 --- a/pkg/common/db/mysql_model/im_mysql_model/group_model.go +++ b/pkg/common/db/mysql_model/im_mysql_model/group_model.go @@ -221,5 +221,5 @@ func UpdateGroupInfoDefaultZero(groupID string, args map[string]interface{}) err if err != nil { return err } - return dbConn.Model(&db.Group{}).Where("group_id = ? ", groupID).Update(args).Error + return dbConn.Table("groups").Where("group_id = ? ", groupID).Update(args).Error } From 6744745152630c23fb32fb3c475150074f443a64 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Wed, 30 Mar 2022 15:52:04 +0800 Subject: [PATCH 26/41] token add operationID --- internal/api/manage/management_chat.go | 2 +- internal/rpc/msg/send_msg.go | 2 +- internal/utils/jwt_token_test.go | 2 +- pkg/common/token_verify/jwt_token.go | 16 ++++++++-------- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/internal/api/manage/management_chat.go b/internal/api/manage/management_chat.go index 802bb4207..f2b7fe11f 100644 --- a/internal/api/manage/management_chat.go +++ b/internal/api/manage/management_chat.go @@ -140,7 +140,7 @@ func ManagementSendMsg(c *gin.Context) { } log.NewInfo("", data, params) token := c.Request.Header.Get("token") - claims, err := token_verify.ParseToken(token) + claims, err := token_verify.ParseToken(token, params.OperationID) if err != nil { log.NewError(params.OperationID, "parse token failed", err.Error()) c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": "parse token failed", "sendTime": 0, "MsgID": ""}) diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index de189a048..6cd321d07 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -571,6 +571,6 @@ func Notification(n *NotificationMsg) { if err != nil { log.NewError(req.OperationID, "SendMsg rpc failed, ", req.String(), err.Error()) } else if reply.ErrCode != 0 { - log.NewError(req.OperationID, "SendMsg rpc failed, ", req.String()) + log.NewError(req.OperationID, "SendMsg rpc failed, ", req.String(), reply.ErrCode, reply.ErrMsg) } } diff --git a/internal/utils/jwt_token_test.go b/internal/utils/jwt_token_test.go index 571836d39..da53a2a36 100644 --- a/internal/utils/jwt_token_test.go +++ b/internal/utils/jwt_token_test.go @@ -76,7 +76,7 @@ func Test_ParseToken(t *testing.T) { uid := "1" platform := int32(1) tokenString, _, _ := token_verify.CreateToken(uid, platform) - claims, err := token_verify.ParseToken(tokenString) + claims, err := token_verify.ParseToken(tokenString, "") if err == nil { assert.Equal(t, claims.UID, uid) } diff --git a/pkg/common/token_verify/jwt_token.go b/pkg/common/token_verify/jwt_token.go index 21334a7a8..28d6cf314 100644 --- a/pkg/common/token_verify/jwt_token.go +++ b/pkg/common/token_verify/jwt_token.go @@ -101,7 +101,7 @@ func GetClaimFromToken(tokensString string) (*Claims, error) { } func IsAppManagerAccess(token string, OpUserID string) bool { - claims, err := ParseToken(token) + claims, err := ParseToken(token, "") if err != nil { return false } @@ -130,7 +130,7 @@ func CheckAccess(OpUserID string, OwnerUserID string) bool { } func GetUserIDFromToken(token string, operationID string) (bool, string) { - claims, err := ParseToken(token) + claims, err := ParseToken(token, operationID) if err != nil { log.Error(operationID, "ParseToken failed, ", err.Error(), token) return false, "" @@ -138,21 +138,21 @@ func GetUserIDFromToken(token string, operationID string) (bool, string) { return true, claims.UID } -func ParseToken(tokensString string) (claims *Claims, err error) { +func ParseToken(tokensString, operationID string) (claims *Claims, err error) { claims, err = GetClaimFromToken(tokensString) if err != nil { - log.NewError("", "token validate err", err.Error()) + log.NewError(operationID, "token validate err", err.Error(), tokensString) return nil, err } m, err := commonDB.DB.GetTokenMapByUidPid(claims.UID, claims.Platform) if err != nil { - log.NewError("", "get token from redis err", err.Error()) + log.NewError(operationID, "get token from redis err", err.Error(), tokensString) return nil, &constant.ErrTokenInvalid } if m == nil { - log.NewError("", "get token from redis err", "m is nil") + log.NewError(operationID, "get token from redis err", "m is nil", tokensString) return nil, &constant.ErrTokenInvalid } if v, ok := m[tokensString]; ok { @@ -195,7 +195,7 @@ func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) { //Validation token, false means failure, true means successful verification func VerifyToken(token, uid string) (bool, error) { - claims, err := ParseToken(token) + claims, err := ParseToken(token, "") if err != nil { return false, err } @@ -207,7 +207,7 @@ func VerifyToken(token, uid string) (bool, error) { return true, nil } func WsVerifyToken(token, uid string, platformID string) (bool, error, string) { - claims, err := ParseToken(token) + claims, err := ParseToken(token, "") if err != nil { return false, err, "parse token err" } From 170392f0bcfe14453fa9285a0201131643d07ded Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Wed, 30 Mar 2022 18:23:05 +0800 Subject: [PATCH 27/41] oa notification add --- .../msg_transfer/logic/history_msg_handler.go | 16 +++++++++++++ .../logic/persistent_msg_handler.go | 23 +++++++++++-------- internal/rpc/msg/send_msg.go | 17 ++++++++++++++ 3 files changed, 47 insertions(+), 9 deletions(-) diff --git a/internal/msg_transfer/logic/history_msg_handler.go b/internal/msg_transfer/logic/history_msg_handler.go index 7d729f5cd..0b9f5c1c3 100644 --- a/internal/msg_transfer/logic/history_msg_handler.go +++ b/internal/msg_transfer/logic/history_msg_handler.go @@ -80,6 +80,22 @@ func (mc *HistoryConsumerHandler) handleChatWs2Mongo(msg []byte, msgKey string) mc.groupMsgCount++ } go sendMessageToPush(&msgFromMQ, msgFromMQ.MsgData.RecvID) + case constant.NotificationChatType: + log.NewDebug(msgFromMQ.OperationID, "msg_transfer msg type = NotificationChatType", isHistory, isPersist) + if isHistory { + err := saveUserChat(msgKey, &msgFromMQ) + if err != nil { + log.NewError(operationID, "single data insert to mongo err", err.Error(), msgFromMQ.String()) + return + } + mc.singleMsgCount++ + log.NewDebug(msgFromMQ.OperationID, "sendMessageToPush cost time ", utils.GetCurrentTimestampByNano()-time) + } + if !isSenderSync && msgKey == msgFromMQ.MsgData.SendID { + } else { + go sendMessageToPush(&msgFromMQ, msgKey) + } + log.NewDebug(operationID, "saveUserChat cost time ", utils.GetCurrentTimestampByNano()-time) default: log.NewError(msgFromMQ.OperationID, "SessionType error", msgFromMQ.String()) return diff --git a/internal/msg_transfer/logic/persistent_msg_handler.go b/internal/msg_transfer/logic/persistent_msg_handler.go index 59c338294..5400d54d6 100644 --- a/internal/msg_transfer/logic/persistent_msg_handler.go +++ b/internal/msg_transfer/logic/persistent_msg_handler.go @@ -34,26 +34,31 @@ func (pc *PersistentConsumerHandler) Init() { func (pc *PersistentConsumerHandler) handleChatWs2Mysql(msg []byte, msgKey string) { log.NewInfo("msg come here mysql!!!", "", "msg", string(msg)) + var tag bool msgFromMQ := pbMsg.MsgDataToMQ{} err := proto.Unmarshal(msg, &msgFromMQ) if err != nil { - log.ErrorByKv("msg_transfer Unmarshal msg err", "", "msg", string(msg), "err", err.Error()) + log.NewError(msgFromMQ.OperationID, "msg_transfer Unmarshal msg err", "msg", string(msg), "err", err.Error()) return } //Control whether to store history messages (mysql) isPersist := utils.GetSwitchFromOptions(msgFromMQ.MsgData.Options, constant.IsPersistent) //Only process receiver data if isPersist { - if msgKey == msgFromMQ.MsgData.RecvID && msgFromMQ.MsgData.SessionType == constant.SingleChatType { - log.InfoByKv("msg_transfer msg persisting", msgFromMQ.OperationID) - if err = im_mysql_msg_model.InsertMessageToChatLog(msgFromMQ); err != nil { - log.ErrorByKv("Message insert failed", msgFromMQ.OperationID, "err", err.Error(), "msg", msgFromMQ.String()) - return + switch msgFromMQ.MsgData.SessionType { + case constant.SingleChatType, constant.NotificationChatType: + if msgKey == msgFromMQ.MsgData.RecvID { + tag = true } - } else if msgFromMQ.MsgData.SessionType == constant.GroupChatType && msgKey == msgFromMQ.MsgData.SendID { - log.InfoByKv("msg_transfer msg persisting", msgFromMQ.OperationID) + case constant.GroupChatType: + if msgKey == msgFromMQ.MsgData.SendID || utils.IsContain(msgFromMQ.MsgData.SendID, config.Config.Manager.AppManagerUid) { + tag = true + } + } + if tag { + log.NewInfo(msgFromMQ.OperationID, "msg_transfer msg persisting", string(msg)) if err = im_mysql_msg_model.InsertMessageToChatLog(msgFromMQ); err != nil { - log.ErrorByKv("Message insert failed", msgFromMQ.OperationID, "err", err.Error(), "msg", msgFromMQ.String()) + log.NewError(msgFromMQ.OperationID, "Message insert failed", "err", err.Error(), "msg", msgFromMQ.String()) return } } diff --git a/internal/rpc/msg/send_msg.go b/internal/rpc/msg/send_msg.go index 6cd321d07..c84549f6c 100644 --- a/internal/rpc/msg/send_msg.go +++ b/internal/rpc/msg/send_msg.go @@ -281,6 +281,23 @@ func (rpc *rpcChat) SendMsg(_ context.Context, pb *pbChat.SendMsgReq) (*pbChat.S log.NewError(pb.OperationID, utils.GetSelfFuncName(), "callbackAfterSendGroupMsg failed", err.Error()) } return returnMsg(&replay, pb, 0, "", msgToMQ.MsgData.ServerMsgID, msgToMQ.MsgData.SendTime) + case constant.NotificationChatType: + msgToMQ.MsgData = pb.MsgData + log.NewInfo(msgToMQ.OperationID, msgToMQ) + err1 := rpc.sendMsgToKafka(&msgToMQ, msgToMQ.MsgData.RecvID) + if err1 != nil { + log.NewError(msgToMQ.OperationID, "kafka send msg err:RecvID", msgToMQ.MsgData.RecvID, msgToMQ.String()) + return returnMsg(&replay, pb, 201, "kafka send msg err", "", 0) + } + + if msgToMQ.MsgData.SendID != msgToMQ.MsgData.RecvID { //Filter messages sent to yourself + err2 := rpc.sendMsgToKafka(&msgToMQ, msgToMQ.MsgData.SendID) + if err2 != nil { + log.NewError(msgToMQ.OperationID, "kafka send msg err:SendID", msgToMQ.MsgData.SendID, msgToMQ.String()) + return returnMsg(&replay, pb, 201, "kafka send msg err", "", 0) + } + } + return returnMsg(&replay, pb, 0, "", msgToMQ.MsgData.ServerMsgID, msgToMQ.MsgData.SendTime) default: return returnMsg(&replay, pb, 203, "unkonwn sessionType", "", 0) } From 60418276bd9085959382bfe7149ac91c7d7389c0 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Wed, 30 Mar 2022 20:04:12 +0800 Subject: [PATCH 28/41] oa notification add --- pkg/common/token_verify/jwt_token.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/common/token_verify/jwt_token.go b/pkg/common/token_verify/jwt_token.go index 28d6cf314..69b112bf7 100644 --- a/pkg/common/token_verify/jwt_token.go +++ b/pkg/common/token_verify/jwt_token.go @@ -139,7 +139,6 @@ func GetUserIDFromToken(token string, operationID string) (bool, string) { } func ParseToken(tokensString, operationID string) (claims *Claims, err error) { - claims, err = GetClaimFromToken(tokensString) if err != nil { log.NewError(operationID, "token validate err", err.Error(), tokensString) @@ -158,11 +157,12 @@ func ParseToken(tokensString, operationID string) (claims *Claims, err error) { if v, ok := m[tokensString]; ok { switch v { case constant.NormalToken: - log.NewDebug("", "this is normal return", claims) + log.NewDebug(operationID, "this is normal return", claims) return claims, nil case constant.InValidToken: return nil, &constant.ErrTokenInvalid case constant.KickedToken: + log.Error(operationID, "this token has been kicked by other same terminal ", constant.ErrTokenKicked) return nil, &constant.ErrTokenKicked case constant.ExpiredToken: return nil, &constant.ErrTokenExpired @@ -170,6 +170,7 @@ func ParseToken(tokensString, operationID string) (claims *Claims, err error) { return nil, &constant.ErrTokenUnknown } } + log.NewError(operationID, "redis token map not find", constant.ErrTokenUnknown) return nil, &constant.ErrTokenUnknown } From ecd2f0e2bfacc83d667bc8ce23cd9a4664d325b4 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Thu, 31 Mar 2022 11:15:06 +0800 Subject: [PATCH 29/41] Merge log files --- cmd/Open-IM-SDK-Core | 2 +- cmd/open_im_api/main.go | 3 ++- cmd/open_im_demo/main.go | 3 ++- cmd/open_im_timer_task/main.go | 3 ++- internal/msg_transfer/logic/init.go | 3 ++- internal/push/logic/init.go | 2 +- internal/rpc/admin_cms/admin_cms.go | 8 ++++---- internal/rpc/auth/auth.go | 2 +- internal/rpc/friend/firend.go | 2 +- internal/rpc/group/group.go | 2 +- internal/rpc/message_cms/message_cms.go | 20 ++++++++++---------- internal/rpc/msg/rpcChat.go | 3 ++- internal/rpc/office/office.go | 2 +- internal/rpc/statistics/statistics.go | 8 ++++---- internal/rpc/user/user.go | 2 +- pkg/common/constant/constant.go | 2 ++ pkg/common/log/logrus.go | 8 ++++---- 17 files changed, 41 insertions(+), 34 deletions(-) diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 884d0d0b2..7b66c0ab7 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 884d0d0b2712f269db3f7f7fc7309759854dcb03 +Subproject commit 7b66c0ab78be494ce2cfe23de37543dd11c2d354 diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 2f93c97e8..10626a8ef 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -10,6 +10,7 @@ import ( "Open_IM/internal/api/office" apiThird "Open_IM/internal/api/third" "Open_IM/internal/api/user" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" "Open_IM/pkg/utils" "flag" @@ -125,7 +126,7 @@ func main() { officeGroup.POST("/get_send_tag_log", office.GetTagSendLogs) } apiThird.MinioInit() - log.NewPrivateLog("api") + log.NewPrivateLog(constant.LogFileName) ginPort := flag.Int("port", 10000, "get ginServerPort from cmd,default 10000 as port") flag.Parse() r.Run(":" + strconv.Itoa(*ginPort)) diff --git a/cmd/open_im_demo/main.go b/cmd/open_im_demo/main.go index 430b0faaf..58f5826db 100644 --- a/cmd/open_im_demo/main.go +++ b/cmd/open_im_demo/main.go @@ -2,6 +2,7 @@ package main import ( "Open_IM/internal/demo/register" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" "Open_IM/pkg/utils" "flag" @@ -23,7 +24,7 @@ func main() { authRouterGroup.POST("/login", register.Login) authRouterGroup.POST("/reset_password", register.ResetPassword) } - log.NewPrivateLog("demo") + log.NewPrivateLog(constant.LogFileName) ginPort := flag.Int("port", 42233, "get ginServerPort from cmd,default 42233 as port") flag.Parse() r.Run(":" + strconv.Itoa(*ginPort)) diff --git a/cmd/open_im_timer_task/main.go b/cmd/open_im_timer_task/main.go index 954c41ae6..37265e285 100644 --- a/cmd/open_im_timer_task/main.go +++ b/cmd/open_im_timer_task/main.go @@ -1,6 +1,7 @@ package main import ( + "Open_IM/pkg/common/constant" commonDB "Open_IM/pkg/common/db" "Open_IM/pkg/common/db/mysql_model/im_mysql_model" "Open_IM/pkg/common/log" @@ -8,7 +9,7 @@ import ( ) func main() { - log.NewPrivateLog("timer") + log.NewPrivateLog(constant.LogFileName) //for { // fmt.Println("start delete mongodb expired record") // timeUnixBegin := time.Now().Unix() diff --git a/internal/msg_transfer/logic/init.go b/internal/msg_transfer/logic/init.go index cce434d99..e91f7dbe6 100644 --- a/internal/msg_transfer/logic/init.go +++ b/internal/msg_transfer/logic/init.go @@ -2,6 +2,7 @@ package logic import ( "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/kafka" "Open_IM/pkg/common/log" ) @@ -13,7 +14,7 @@ var ( ) func Init() { - log.NewPrivateLog(config.Config.ModuleName.MsgTransferName) + log.NewPrivateLog(constant.LogFileName) persistentCH.Init() historyCH.Init() producer = kafka.NewKafkaProducer(config.Config.Kafka.Ms2pschat.Addr, config.Config.Kafka.Ms2pschat.Topic) diff --git a/internal/push/logic/init.go b/internal/push/logic/init.go index 6f6f061b8..a41f60a6a 100644 --- a/internal/push/logic/init.go +++ b/internal/push/logic/init.go @@ -24,7 +24,7 @@ var ( ) func Init(rpcPort int) { - log.NewPrivateLog(config.Config.ModuleName.PushName) + log.NewPrivateLog(constant.LogFileName) rpcServer.Init(rpcPort) pushCh.Init() pushTerminal = []int32{constant.IOSPlatformID, constant.AndroidPlatformID} diff --git a/internal/rpc/admin_cms/admin_cms.go b/internal/rpc/admin_cms/admin_cms.go index 8d36f3724..156748bbc 100644 --- a/internal/rpc/admin_cms/admin_cms.go +++ b/internal/rpc/admin_cms/admin_cms.go @@ -24,7 +24,7 @@ type adminCMSServer struct { } func NewAdminCMSServer(port int) *adminCMSServer { - log.NewPrivateLog("AdminCMS") + log.NewPrivateLog(constant.LogFileName) return &adminCMSServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImAdminCMSName, @@ -66,12 +66,12 @@ func (s *adminCMSServer) Run() { func (s *adminCMSServer) AdminLogin(_ context.Context, req *pbAdminCMS.AdminLoginReq) (*pbAdminCMS.AdminLoginResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) resp := &pbAdminCMS.AdminLoginResp{} - for i, adminID := range config.Config.Manager.AppManagerUid{ + for i, adminID := range config.Config.Manager.AppManagerUid { if adminID == req.AdminID && config.Config.Manager.Secrets[i] == req.Secret { token, expTime, err := token_verify.CreateToken(adminID, constant.SingleChatType) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "generate token success", "token: ", token, "expTime:", expTime) if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "generate token failed", "adminID: ", adminID, err.Error()) + log.NewError(req.OperationID, utils.GetSelfFuncName(), "generate token failed", "adminID: ", adminID, err.Error()) return resp, openIMHttp.WrapError(constant.ErrTokenUnknown) } resp.Token = token @@ -84,4 +84,4 @@ func (s *adminCMSServer) AdminLogin(_ context.Context, req *pbAdminCMS.AdminLogi return resp, openIMHttp.WrapError(constant.ErrTokenMalformed) } return resp, nil -} \ No newline at end of file +} diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index ed6ec4404..1aa0ec50b 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -63,7 +63,7 @@ type rpcAuth struct { } func NewRpcAuthServer(port int) *rpcAuth { - log.NewPrivateLog("auth") + log.NewPrivateLog(constant.LogFileName) return &rpcAuth{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImAuthName, diff --git a/internal/rpc/friend/firend.go b/internal/rpc/friend/firend.go index d79f2af33..b570b8106 100644 --- a/internal/rpc/friend/firend.go +++ b/internal/rpc/friend/firend.go @@ -29,7 +29,7 @@ type friendServer struct { } func NewFriendServer(port int) *friendServer { - log.NewPrivateLog("friend") + log.NewPrivateLog(constant.LogFileName) return &friendServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImFriendName, diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 50baff39e..edece9829 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -31,7 +31,7 @@ type groupServer struct { } func NewGroupServer(port int) *groupServer { - log.NewPrivateLog("group") + log.NewPrivateLog(constant.LogFileName) return &groupServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImGroupName, diff --git a/internal/rpc/message_cms/message_cms.go b/internal/rpc/message_cms/message_cms.go index d71394668..7f27e007a 100644 --- a/internal/rpc/message_cms/message_cms.go +++ b/internal/rpc/message_cms/message_cms.go @@ -31,7 +31,7 @@ type messageCMSServer struct { } func NewMessageCMSServer(port int) *messageCMSServer { - log.NewPrivateLog("MessageCMS") + log.NewPrivateLog(constant.LogFileName) return &messageCMSServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImMessageCMSName, @@ -84,8 +84,8 @@ func (s *messageCMSServer) GetChatLogs(_ context.Context, req *pbMessageCMS.GetC log.NewError(req.OperationID, utils.GetSelfFuncName(), "time string parse error", err.Error()) } chatLog := db.ChatLog{ - Content: req.Content, - SendTime: time, + Content: req.Content, + SendTime: time, ContentType: req.ContentType, SessionType: req.SessionType, } @@ -101,20 +101,20 @@ func (s *messageCMSServer) GetChatLogs(_ context.Context, req *pbMessageCMS.GetC if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetChatLogCount", err.Error()) } - chatLogs, err := imdb.GetChatLog(chatLog, req.Pagination.PageNumber, req.Pagination.ShowNumber) + chatLogs, err := imdb.GetChatLog(chatLog, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetChatLog", err.Error()) return resp, errors.WrapError(constant.ErrDB) } for _, chatLog := range chatLogs { pbChatLog := &pbMessageCMS.ChatLogs{ - SessionType: chatLog.SessionType, - ContentType: chatLog.ContentType, - SearchContent: req.Content, - WholeContent: chatLog.Content, - Date: chatLog.CreateTime.String(), + SessionType: chatLog.SessionType, + ContentType: chatLog.ContentType, + SearchContent: req.Content, + WholeContent: chatLog.Content, + Date: chatLog.CreateTime.String(), SenderNickName: chatLog.SenderNickname, - SenderId: chatLog.SendID, + SenderId: chatLog.SendID, } if chatLog.SenderNickname == "" { sendUser, err := imdb.GetUserByUserID(chatLog.SendID) diff --git a/internal/rpc/msg/rpcChat.go b/internal/rpc/msg/rpcChat.go index 43113ae51..c0f723a91 100644 --- a/internal/rpc/msg/rpcChat.go +++ b/internal/rpc/msg/rpcChat.go @@ -2,6 +2,7 @@ package msg import ( "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/kafka" "Open_IM/pkg/common/log" "Open_IM/pkg/grpc-etcdv3/getcdv3" @@ -22,7 +23,7 @@ type rpcChat struct { } func NewRpcChatServer(port int) *rpcChat { - log.NewPrivateLog("msg") + log.NewPrivateLog(constant.LogFileName) rc := rpcChat{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImOfflineMessageName, diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index e96475773..914990673 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -26,7 +26,7 @@ type officeServer struct { } func NewOfficeServer(port int) *officeServer { - log.NewPrivateLog("office") + log.NewPrivateLog(constant.LogFileName) return &officeServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImOfficeName, diff --git a/internal/rpc/statistics/statistics.go b/internal/rpc/statistics/statistics.go index e8b1383f9..cda164332 100644 --- a/internal/rpc/statistics/statistics.go +++ b/internal/rpc/statistics/statistics.go @@ -19,10 +19,10 @@ import ( //open_im_sdk "Open_IM/pkg/proto/sdk_ws" "Open_IM/pkg/utils" //"context" + errors "Open_IM/pkg/common/http" "net" "strconv" "strings" - errors "Open_IM/pkg/common/http" "google.golang.org/grpc" ) @@ -35,7 +35,7 @@ type statisticsServer struct { } func NewStatisticsServer(port int) *statisticsServer { - log.NewPrivateLog("Statistics") + log.NewPrivateLog(constant.LogFileName) return &statisticsServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImStatisticsName, @@ -164,7 +164,7 @@ func GetRangeDate(from, to time.Time) [][2]time.Time { } // month case !isInOneMonth(from, to): - if to.Sub(from) < time.Hour * 24 * 30 { + if to.Sub(from) < time.Hour*24*30 { for i := 0; ; i++ { fromTime := from.Add(time.Hour * 24 * time.Duration(i)) toTime := from.Add(time.Hour * 24 * time.Duration(i+1)) @@ -251,7 +251,7 @@ func (s *statisticsServer) GetGroupStatistics(_ context.Context, req *pbStatisti log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetIncreaseGroupNum", v, err.Error()) } resp.TotalGroupNumList[index] = &pbStatistics.DateNumList{ - Date: v[0].String(), + Date: v[0].String(), Num: num, } }(wg, i, v) diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index cbeb9240b..299fca101 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -32,7 +32,7 @@ type userServer struct { } func NewUserServer(port int) *userServer { - log.NewPrivateLog("user") + log.NewPrivateLog(constant.LogFileName) return &userServer{ rpcPort: port, rpcRegisterName: config.Config.RpcRegisterName.OpenImUserName, diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index a38076e7b..0fdf9dbec 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -230,3 +230,5 @@ func GroupIsBanPrivateChat(status int32) bool { } const BigVersion = "v3" + +const LogFileName = "OpenIM.log" diff --git a/pkg/common/log/logrus.go b/pkg/common/log/logrus.go index a5e0ae7dd..caf4c9126 100644 --- a/pkg/common/log/logrus.go +++ b/pkg/common/log/logrus.go @@ -63,10 +63,10 @@ func loggerInit(moduleName string) *Logger { } func NewLfsHook(rotationTime time.Duration, maxRemainNum uint, moduleName string) logrus.Hook { lfsHook := lfshook.NewHook(lfshook.WriterMap{ - logrus.DebugLevel: initRotateLogs(rotationTime, maxRemainNum, "debug", moduleName), - logrus.InfoLevel: initRotateLogs(rotationTime, maxRemainNum, "info", moduleName), - logrus.WarnLevel: initRotateLogs(rotationTime, maxRemainNum, "warn", moduleName), - logrus.ErrorLevel: initRotateLogs(rotationTime, maxRemainNum, "error", moduleName), + logrus.DebugLevel: initRotateLogs(rotationTime, maxRemainNum, "all", moduleName), + logrus.InfoLevel: initRotateLogs(rotationTime, maxRemainNum, "all", moduleName), + logrus.WarnLevel: initRotateLogs(rotationTime, maxRemainNum, "all", moduleName), + logrus.ErrorLevel: initRotateLogs(rotationTime, maxRemainNum, "all", moduleName), }, &nested.Formatter{ TimestampFormat: "2006-01-02 15:04:05.000", HideKeys: false, From 9fbfbfb23bf54bfc966c5c63acfc2789d2d4e433 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Thu, 31 Mar 2022 11:28:51 +0800 Subject: [PATCH 30/41] Merge log files --- internal/msg_gateway/gate/init.go | 3 ++- pkg/common/db/model.go | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/internal/msg_gateway/gate/init.go b/internal/msg_gateway/gate/init.go index b827f9928..e62338d14 100644 --- a/internal/msg_gateway/gate/init.go +++ b/internal/msg_gateway/gate/init.go @@ -2,6 +2,7 @@ package gate import ( "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" "Open_IM/pkg/statistics" "fmt" @@ -20,7 +21,7 @@ var ( func Init(rpcPort, wsPort int) { //log initialization - log.NewPrivateLog(config.Config.ModuleName.LongConnSvrName) + log.NewPrivateLog(constant.LogFileName) rwLock = new(sync.RWMutex) validate = validator.New() statistics.NewStatistics(&sendMsgCount, config.Config.ModuleName.LongConnSvrName, fmt.Sprintf("%d second recv to msg_gateway sendMsgCount", sendMsgCount), 300) diff --git a/pkg/common/db/model.go b/pkg/common/db/model.go index 812783e03..21dae1667 100644 --- a/pkg/common/db/model.go +++ b/pkg/common/db/model.go @@ -2,6 +2,7 @@ package db import ( "Open_IM/pkg/common/config" + "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" "Open_IM/pkg/utils" "fmt" @@ -33,6 +34,7 @@ func key(dbAddress, dbName string) string { } func init() { + log.NewPrivateLog(constant.LogFileName) //var mgoSession *mgo.Session var mongoClient *mongo.Client var err1 error @@ -51,7 +53,7 @@ func init() { } mongoClient, err := mongo.Connect(context.TODO(), options.Client().ApplyURI(uri)) - if err != nil{ + if err != nil { log.NewError(" mongo.Connect failed, try ", utils.GetSelfFuncName(), err.Error(), uri) time.Sleep(time.Duration(30) * time.Second) mongoClient, err1 = mongo.Connect(context.TODO(), options.Client().ApplyURI(uri)) From 5639c985df026989282137c5439e5a6021322dc6 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Thu, 31 Mar 2022 11:43:14 +0800 Subject: [PATCH 31/41] OA tag fields modify --- internal/api/manage/management_chat.go | 10 +++++----- internal/rpc/office/office.go | 8 ++++---- pkg/common/db/mongoModel.go | 2 +- pkg/utils/utils.go | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/internal/api/manage/management_chat.go b/internal/api/manage/management_chat.go index f2b7fe11f..0b1d0aada 100644 --- a/internal/api/manage/management_chat.go +++ b/internal/api/manage/management_chat.go @@ -289,16 +289,16 @@ type OANotificationElem struct { Url string `mapstructure:"url"` MixType int32 `mapstructure:"mixType"` Image struct { - SourceUrl string `mapstructure:"sourceUrl"` - SnapshotUrl string `mapstructure:"snapshotUrl"` + SourceUrl string `mapstructure:"sourceURL"` + SnapshotUrl string `mapstructure:"snapshotURL"` } `mapstructure:"image"` Video struct { - SourceUrl string `mapstructure:"sourceUrl"` - SnapshotUrl string `mapstructure:"snapshotUrl"` + SourceUrl string `mapstructure:"sourceURL"` + SnapshotUrl string `mapstructure:"snapshotURL"` Duration int64 `mapstructure:"duration"` } `mapstructure:"video"` File struct { - SourceUrl string `mapstructure:"sourceUrl"` + SourceUrl string `mapstructure:"sourceURL"` FileName string `mapstructure:"fileName"` FileSize int64 `mapstructure:"fileSize"` } `mapstructure:"file"` diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index e96475773..a6bcb1a97 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -103,7 +103,7 @@ func (s *officeServer) GetUserTags(_ context.Context, req *pbOffice.GetUserTagsR func (s *officeServer) CreateTag(_ context.Context, req *pbOffice.CreateTagReq) (resp *pbOffice.CreateTagResp, err error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "CreateTag req", req.String()) - userIDList := utils.RemoveUserIDRepByMap(req.UserIDList) + userIDList := utils.RemoveRepeatedStringInList(req.UserIDList) log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "userIDList: ", userIDList) resp = &pbOffice.CreateTagResp{CommonResp: &pbOffice.CommonResp{}} if err := db.DB.CreateTag(req.UserID, req.TagName, userIDList); err != nil { @@ -132,8 +132,8 @@ func (s *officeServer) DeleteTag(_ context.Context, req *pbOffice.DeleteTagReq) func (s *officeServer) SetTag(_ context.Context, req *pbOffice.SetTagReq) (resp *pbOffice.SetTagResp, err error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) resp = &pbOffice.SetTagResp{CommonResp: &pbOffice.CommonResp{}} - IncreaseUserIDList := utils.RemoveUserIDRepByMap(req.IncreaseUserIDList) - reduceUserIDList := utils.RemoveUserIDRepByMap(req.ReduceUserIDList) + IncreaseUserIDList := utils.RemoveRepeatedStringInList(req.IncreaseUserIDList) + reduceUserIDList := utils.RemoveRepeatedStringInList(req.ReduceUserIDList) if err := db.DB.SetTag(req.UserID, req.TagID, req.NewName, IncreaseUserIDList, reduceUserIDList); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetTag failed", err.Error()) resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg @@ -171,7 +171,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR userIDList = append(userIDList, tagUserIDList...) userIDList = append(userIDList, groupUserIDList...) userIDList = append(userIDList, req.UserList...) - userIDList = utils.RemoveUserIDRepByMap(userIDList) + userIDList = utils.RemoveRepeatedStringInList(userIDList) for i, userID := range userIDList { if userID == req.SendID || userID == "" { userIDList = append(userIDList[:i], userIDList[i+1:]...) diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index bcc05a295..55324d0f1 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -491,7 +491,7 @@ func (d *DataBases) SetTag(userID, tagID, newName string, increaseUserIDList []s } } tag.UserList = append(tag.UserList, increaseUserIDList...) - tag.UserList = utils.RemoveUserIDRepByMap(tag.UserList) + tag.UserList = utils.RemoveRepeatedStringInList(tag.UserList) for _, v := range reduceUserIDList { for i2, v2 := range tag.UserList { if v == v2 { diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index f0e34aa90..d23b1633a 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -77,7 +77,7 @@ func OperationIDGenerator() string { return strconv.FormatInt(time.Now().UnixNano()+int64(rand.Uint32()), 10) } -func RemoveUserIDRepByMap(slc []string) []string { +func RemoveRepeatedStringInList(slc []string) []string { var result []string tempMap := map[string]byte{} for _, e := range slc { From d600042110f2dafa480b25f6fd078aa88eb2a5cc Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 31 Mar 2022 14:50:02 +0800 Subject: [PATCH 32/41] tag and set private tips --- cmd/open_im_api/main.go | 1 + config/config.yaml | 12 + internal/api/conversation/conversation.go | 4 +- internal/api/office/tag.go | 36 + internal/rpc/msg/conversation_notification.go | 42 +- internal/rpc/msg/del_msg.go | 2 +- internal/rpc/office/office.go | 27 + internal/rpc/user/user.go | 73 +- pkg/base_info/conversation_api_struct.go | 23 +- pkg/base_info/office_struct.go | 12 + pkg/common/config/config.go | 5 + pkg/common/constant/constant.go | 11 +- pkg/common/db/mongoModel.go | 8 + pkg/proto/office/office.pb.go | 276 +- pkg/proto/office/office.proto | 12 + pkg/proto/sdk_ws/ws.pb.go | 527 +- pkg/proto/sdk_ws/ws.proto | 5 + pkg/proto/user/user.pb.go | 5282 ++++++----------- pkg/proto/user/user.proto | 9 +- 19 files changed, 2573 insertions(+), 3794 deletions(-) diff --git a/cmd/open_im_api/main.go b/cmd/open_im_api/main.go index 2f93c97e8..14d129807 100644 --- a/cmd/open_im_api/main.go +++ b/cmd/open_im_api/main.go @@ -118,6 +118,7 @@ func main() { officeGroup := r.Group("/office") { officeGroup.POST("/get_user_tags", office.GetUserTags) + officeGroup.POST("/get_user_tag_by_id", office.GetUserTagByID) officeGroup.POST("/create_tag", office.CreateTag) officeGroup.POST("/delete_tag", office.DeleteTag) officeGroup.POST("/set_tag", office.SetTag) diff --git a/config/config.yaml b/config/config.yaml index a801d7c57..a78e23f01 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -551,6 +551,18 @@ notification: defaultTips: tips: "conversation opt update" + conversationSetPrivate: + conversation: + reliabilityLevel: 2 + unreadCount: true + offlinePush: + switch: true + title: "conversation was set to private " + desc: "conversation was set to private " + ext: "conversation was set to private " + defaultTips: + tips: "conversation was set to private " + #---------------demo configuration---------------------# diff --git a/internal/api/conversation/conversation.go b/internal/api/conversation/conversation.go index 5c06ecaf5..3d580864f 100644 --- a/internal/api/conversation/conversation.go +++ b/internal/api/conversation/conversation.go @@ -128,7 +128,7 @@ func GetConversation(c *gin.Context) { client := pbUser.NewUserClient(etcdConn) respPb, err := client.GetConversation(context.Background(), &reqPb) if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetConversation rpc failed, ", reqPb.String(), err.Error()) + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetConversation rpc failed, ", reqPb.String(), err.Error()) c.JSON(http.StatusBadRequest, gin.H{"errCode": 500, "errMsg": "GetAllConversationMsgOpt rpc failed, " + err.Error()}) return } @@ -192,7 +192,7 @@ func SetRecvMsgOpt(c *gin.Context) { client := pbUser.NewUserClient(etcdConn) respPb, err := client.SetRecvMsgOpt(context.Background(), &reqPb) if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetConversation rpc failed, ", reqPb.String(), err.Error()) + log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetRecvMsgOpt rpc failed, ", reqPb.String(), err.Error()) c.JSON(http.StatusBadRequest, gin.H{"errCode": 500, "errMsg": "GetAllConversationMsgOpt rpc failed, " + err.Error()}) return } diff --git a/internal/api/office/tag.go b/internal/api/office/tag.go index 1f14a0116..a1229ed83 100644 --- a/internal/api/office/tag.go +++ b/internal/api/office/tag.go @@ -234,3 +234,39 @@ func GetTagSendLogs(c *gin.Context) { resp.Data.CurrentPage = respPb.Pagination.CurrentPage c.JSON(http.StatusOK, resp) } + +func GetUserTagByID(c *gin.Context) { + var ( + req apistruct.GetUserTagByIDReq + resp apistruct.GetUserTagByIDResp + reqPb pbOffice.GetUserTagByIDReq + respPb *pbOffice.GetUserTagByIDResp + ) + if err := c.BindJSON(&req); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "bind json failed", err.Error()) + c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": "bind json failed " + err.Error()}) + return + } + ok, userID := token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID) + if !ok { + log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token")) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"}) + return + } + reqPb.UserID = userID + reqPb.OperationID = req.OperationID + reqPb.TagID = req.TagID + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfficeName) + client := pbOffice.NewOfficeServiceClient(etcdConn) + respPb, err := client.GetUserTagByID(context.Background(), &reqPb) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserTagByID failed", err.Error()) + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "CreateTag rpc server failed" + err.Error()}) + return + } + if err := utils.CopyStructFields(&resp.CommResp, respPb.CommonResp); err != nil { + log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", err.Error()) + } + resp.Data.Tag = respPb.Tag + c.JSON(http.StatusOK, resp) +} diff --git a/internal/rpc/msg/conversation_notification.go b/internal/rpc/msg/conversation_notification.go index 598ba1cc7..ccb5e3674 100644 --- a/internal/rpc/msg/conversation_notification.go +++ b/internal/rpc/msg/conversation_notification.go @@ -10,12 +10,12 @@ import ( "github.com/golang/protobuf/proto" ) -func conversationNotification(contentType int32, m proto.Message, operationID, userID string) { +func SetConversationNotification(operationID, sendID, recvID string, contentType int, m proto.Message, tips open_im_sdk.TipsComm) { + log.NewInfo(operationID, "args: ", sendID, recvID, contentType, m.String(), tips.String()) var err error - var tips open_im_sdk.TipsComm tips.Detail, err = proto.Marshal(m) if err != nil { - log.Error(operationID, utils.GetSelfFuncName(), "Marshal failed ", err.Error(), m.String()) + log.NewError(operationID, "Marshal failed ", err.Error(), m.String()) return } marshaler := jsonpb.Marshaler{ @@ -24,15 +24,10 @@ func conversationNotification(contentType int32, m proto.Message, operationID, u EmitDefaults: false, } tips.JsonDetail, _ = marshaler.MarshalToString(m) - cn := config.Config.Notification - switch contentType { - case constant.ConversationOptChangeNotification: - tips.DefaultTips = cn.ConversationOptUpdate.DefaultTips.Tips - } var n NotificationMsg - n.SendID = userID - n.RecvID = userID - n.ContentType = contentType + n.SendID = sendID + n.RecvID = recvID + n.ContentType = int32(contentType) n.SessionType = constant.SingleChatType n.MsgFrom = constant.SysMsgType n.OperationID = operationID @@ -44,10 +39,27 @@ func conversationNotification(contentType int32, m proto.Message, operationID, u Notification(&n) } -func SetConversationNotification(operationID, userID string) { - log.NewInfo(operationID, utils.GetSelfFuncName(), "userID: ", userID) - conversationUpdateTips := open_im_sdk.ConversationUpdateTips{ +// SetPrivate调用 +func ConversationSetPrivateNotification(operationID, sendID, recvID string, isPrivateChat bool) { + log.NewInfo(operationID, utils.GetSelfFuncName()) + conversationSetPrivateTips := &open_im_sdk.ConversationSetPrivateTips{ + RecvID: recvID, + SendID: sendID, + IsPrivate: isPrivateChat, + } + var tips open_im_sdk.TipsComm + strMap := map[bool]string{true: "true", false: "false"} + tips.DefaultTips = config.Config.Notification.ConversationSetPrivate.DefaultTips.Tips + strMap[isPrivateChat] + " by " + sendID + SetConversationNotification(operationID, sendID, recvID, constant.ConversationPrivateChatNotification, conversationSetPrivateTips, tips) +} + +// 会话改变 +func ConversationChangeNotification(operationID, userID string) { + log.NewInfo(operationID, utils.GetSelfFuncName()) + ConversationChangedTips := &open_im_sdk.ConversationUpdateTips{ UserID: userID, } - conversationNotification(constant.ConversationOptChangeNotification, &conversationUpdateTips, operationID, userID) + var tips open_im_sdk.TipsComm + tips.DefaultTips = config.Config.Notification.ConversationOptUpdate.DefaultTips.Tips + SetConversationNotification(operationID, userID, userID, constant.ConversationOptChangeNotification, ConversationChangedTips, tips) } diff --git a/internal/rpc/msg/del_msg.go b/internal/rpc/msg/del_msg.go index 838312d40..daacb8533 100644 --- a/internal/rpc/msg/del_msg.go +++ b/internal/rpc/msg/del_msg.go @@ -16,7 +16,7 @@ func (rpc *rpcChat) DelMsgList(_ context.Context, req *commonPb.DelMsgListReq) ( log.NewError(req.OperationID, utils.GetSelfFuncName(), "DelMsg failed", err.Error()) resp.ErrMsg = constant.ErrDB.ErrMsg resp.ErrCode = constant.ErrDB.ErrCode - return resp, err + return resp, nil } log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp.String()) return resp, nil diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index e96475773..29f5eded3 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -215,3 +215,30 @@ func (s *officeServer) GetTagSendLogs(_ context.Context, req *pbOffice.GetTagSen log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp.String()) return resp, nil } + +func (s *officeServer) GetUserTagByID(_ context.Context, req *pbOffice.GetUserTagByIDReq) (resp *pbOffice.GetUserTagByIDResp, err error) { + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) + resp = &pbOffice.GetUserTagByIDResp{CommonResp: &pbOffice.CommonResp{}} + tag, err := db.DB.GetTagByID(req.UserID, req.TagID) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetTagByID failed", err.Error()) + resp.CommonResp.ErrCode = constant.ErrDB.ErrCode + resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg + return resp, nil + } + for _, userID := range tag.UserList { + userName, err := im_mysql_model.GetUserNameByUserID(userID) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserNameByUserID failed", err.Error()) + continue + } + resp.Tag.UserList = append(resp.Tag.UserList, &pbOffice.TagUser{ + UserID: userID, + UserName: userName, + }) + } + resp.Tag.TagID = tag.TagID + resp.Tag.TagName = tag.TagName + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp.String()) + return resp, nil +} diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index cbeb9240b..b8d8d24f1 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -73,28 +73,26 @@ func (s *userServer) Run() { } func syncPeerUserConversation(conversation *pbUser.Conversation, operationID string) error { - if conversation.ConversationType == constant.SingleChatType { - peerUserConversation := db.Conversation{ - OwnerUserID: conversation.UserID, - ConversationID: "single_" + conversation.OwnerUserID, - ConversationType: constant.SingleChatType, - UserID: conversation.OwnerUserID, - GroupID: "", - RecvMsgOpt: 0, - UnreadCount: 0, - DraftTextTime: 0, - IsPinned: false, - IsPrivateChat: conversation.IsPrivateChat, - AttachedInfo: "", - Ex: "", - } - err := imdb.PeerUserSetConversation(peerUserConversation) - if err != nil { - log.NewError(operationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) - return err - } - chat.SetConversationNotification(operationID, conversation.UserID) + peerUserConversation := db.Conversation{ + OwnerUserID: conversation.UserID, + ConversationID: "single_" + conversation.OwnerUserID, + ConversationType: constant.SingleChatType, + UserID: conversation.OwnerUserID, + GroupID: "", + RecvMsgOpt: 0, + UnreadCount: 0, + DraftTextTime: 0, + IsPinned: false, + IsPrivateChat: conversation.IsPrivateChat, + AttachedInfo: "", + Ex: "", + } + err := imdb.PeerUserSetConversation(peerUserConversation) + if err != nil { + log.NewError(operationID, utils.GetSelfFuncName(), "SetConversation error", err.Error()) + return err } + chat.ConversationSetPrivateNotification(operationID, conversation.OwnerUserID, conversation.UserID, conversation.IsPrivateChat) return nil } @@ -122,6 +120,9 @@ func (s *userServer) GetUserInfo(ctx context.Context, req *pbUser.GetUserInfoReq func (s *userServer) BatchSetConversations(ctx context.Context, req *pbUser.BatchSetConversationsReq) (*pbUser.BatchSetConversationsResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) + if req.NotificationType == 0 { + req.NotificationType = constant.ConversationOptChangeNotification + } resp := &pbUser.BatchSetConversationsResp{} for _, v := range req.Conversations { conversation := db.Conversation{} @@ -139,11 +140,14 @@ func (s *userServer) BatchSetConversations(ctx context.Context, req *pbUser.Batc continue } resp.Success = append(resp.Success, v.ConversationID) - if err := syncPeerUserConversation(v, req.OperationID); err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + // if is set private chat operation,then peer user need to sync and set tips\ + if v.ConversationType == constant.SingleChatType && req.NotificationType == constant.ConversationPrivateChatNotification { + if err := syncPeerUserConversation(v, req.OperationID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + } } } - chat.SetConversationNotification(req.OperationID, req.OwnerUserID) + chat.ConversationChangeNotification(req.OperationID, req.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) resp.CommonResp = &pbUser.CommonResp{} return resp, nil @@ -202,6 +206,9 @@ func (s *userServer) GetConversations(ctx context.Context, req *pbUser.GetConver func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConversationReq) (*pbUser.SetConversationResp, error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) + if req.NotificationType == 0 { + req.NotificationType = constant.ConversationOptChangeNotification + } resp := &pbUser.SetConversationResp{} var conversation db.Conversation if err := utils.CopyStructFields(&conversation, req.Conversation); err != nil { @@ -218,13 +225,17 @@ func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConvers resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} return resp, nil } - //sync peer user conversation if conversation is singleChatType - if err := syncPeerUserConversation(req.Conversation, req.OperationID); err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) - resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} - return resp, nil + // notification + if req.Conversation.ConversationType == constant.SingleChatType && req.NotificationType == constant.ConversationPrivateChatNotification { + //sync peer user conversation if conversation is singleChatType + if err := syncPeerUserConversation(req.Conversation, req.OperationID); err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "syncPeerUserConversation", err.Error()) + resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} + return resp, nil + } + } else { + chat.ConversationChangeNotification(req.OperationID, req.Conversation.OwnerUserID) } - chat.SetConversationNotification(req.OperationID, req.Conversation.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) resp.CommonResp = &pbUser.CommonResp{} return resp, nil @@ -259,7 +270,7 @@ func (s *userServer) SetRecvMsgOpt(ctx context.Context, req *pbUser.SetRecvMsgOp resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg} return resp, nil } - chat.SetConversationNotification(req.OperationID, req.OwnerUserID) + chat.ConversationChangeNotification(req.OperationID, req.OwnerUserID) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp.String()) resp.CommonResp = &pbUser.CommonResp{} return resp, nil diff --git a/pkg/base_info/conversation_api_struct.go b/pkg/base_info/conversation_api_struct.go index ed706c4ad..10b46f547 100644 --- a/pkg/base_info/conversation_api_struct.go +++ b/pkg/base_info/conversation_api_struct.go @@ -34,8 +34,8 @@ type SetReceiveMessageOptResp struct { type Conversation struct { OwnerUserID string `json:"ownerUserID" binding:"required"` - ConversationID string `json:"conversationID"` - ConversationType int32 `json:"conversationType"` + ConversationID string `json:"conversationID" binding:"required"` + ConversationType int32 `json:"conversationType" binding:"required"` UserID string `json:"userID"` GroupID string `json:"groupID"` RecvMsgOpt int32 `json:"recvMsgOpt" binding:"omitempty,oneof=0 1 2"` @@ -49,7 +49,8 @@ type Conversation struct { type SetConversationReq struct { Conversation - OperationID string `json:"operationID" binding:"required"` + NotificationType int32 `json:"notificationType"` + OperationID string `json:"operationID" binding:"required"` } type SetConversationResp struct { @@ -57,9 +58,10 @@ type SetConversationResp struct { } type BatchSetConversationsReq struct { - Conversations []Conversation `json:"conversations" binding:"required"` - OwnerUserID string `json:"ownerUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` + Conversations []Conversation `json:"conversations" binding:"required"` + NotificationType int32 `json:"notificationType"` + OwnerUserID string `json:"ownerUserID" binding:"required"` + OperationID string `json:"operationID" binding:"required"` } type BatchSetConversationsResp struct { @@ -103,10 +105,11 @@ type GetConversationsResp struct { } type SetRecvMsgOptReq struct { - OwnerUserID string `json:"ownerUserID" binding:"required"` - ConversationID string `json:"conversationID"` - RecvMsgOpt int32 `json:"recvMsgOpt" binding:"omitempty,oneof=0 1 2"` - OperationID string `json:"operationID" binding:"required"` + OwnerUserID string `json:"ownerUserID" binding:"required"` + ConversationID string `json:"conversationID"` + RecvMsgOpt int32 `json:"recvMsgOpt" binding:"omitempty,oneof=0 1 2"` + OperationID string `json:"operationID" binding:"required"` + NotificationType int32 `json:"notificationType"` } type SetRecvMsgOptResp struct { diff --git a/pkg/base_info/office_struct.go b/pkg/base_info/office_struct.go index ac22c2239..e4dca230d 100644 --- a/pkg/base_info/office_struct.go +++ b/pkg/base_info/office_struct.go @@ -74,3 +74,15 @@ type GetTagSendLogsResp struct { ShowNumber int32 `json:"showNumber"` } `json:"data"` } + +type GetUserTagByIDReq struct { + TagID string `json:"tagID" binding:"required"` + OperationID string `json:"operationID" binding:"required"` +} + +type GetUserTagByIDResp struct { + CommResp + Data struct { + Tag *pbOffice.Tag `json:"tag"` + } `json:"data"` +} diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 2a9759cc7..2242fb452 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -350,6 +350,11 @@ type config struct { OfflinePush POfflinePush `yaml:"offlinePush"` DefaultTips PDefaultTips `yaml:"defaultTips"` } `yaml:"conversationOptUpdate"` + ConversationSetPrivate struct { + Conversation PConversation `yaml:"conversation"` + OfflinePush POfflinePush `yaml:"offlinePush"` + DefaultTips PDefaultTips `yaml:"defaultTips"` + } `yaml:"conversationSetPrivate"` } Demo struct { Port []int `yaml:"openImDemoPort"` diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index a38076e7b..15b7d60f8 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -56,13 +56,11 @@ const ( FriendRemarkSetNotification = 1206 //set_friend_remark? BlackAddedNotification = 1207 //add_black BlackDeletedNotification = 1208 //remove_black - ConversationOptChangeNotification = 1300 // change conversation opt + + ConversationOptChangeNotification = 1300 // change conversation opt UserNotificationBegin = 1301 UserInfoUpdatedNotification = 1303 //SetSelfInfoTip = 204 - ConversationNotification = 1307 - ConversationNotNotification = 1308 - ConversationDefault = 0 UserNotificationEnd = 1399 OANotification = 1400 @@ -87,7 +85,10 @@ const ( SignalingNotificationBegin = 1600 SignalingNotification = 1601 SignalingNotificationEnd = 1699 - NotificationEnd = 2000 + + ConversationPrivateChatNotification = 1701 + + NotificationEnd = 2000 //status MsgNormal = 1 diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index bcc05a295..fb866bbaa 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -470,6 +470,14 @@ func (d *DataBases) CreateTag(userID, tagName string, userList []string) error { return err } +func (d *DataBases) GetTagByID(userID, tagID string) (Tag, error) { + ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) + c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cTag) + var tag Tag + err := c.FindOne(ctx, bson.M{"user_id": userID, "tag_id": tagID}).Decode(&tag) + return tag, err +} + func (d *DataBases) DeleteTag(userID, tagID string) error { ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cTag) diff --git a/pkg/proto/office/office.pb.go b/pkg/proto/office/office.pb.go index 34648cdb7..83c352e70 100644 --- a/pkg/proto/office/office.pb.go +++ b/pkg/proto/office/office.pb.go @@ -36,7 +36,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} } func (m *CommonResp) String() string { return proto.CompactTextString(m) } func (*CommonResp) ProtoMessage() {} func (*CommonResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{0} + return fileDescriptor_office_0fe56c4f733d3593, []int{0} } func (m *CommonResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CommonResp.Unmarshal(m, b) @@ -82,7 +82,7 @@ func (m *TagUser) Reset() { *m = TagUser{} } func (m *TagUser) String() string { return proto.CompactTextString(m) } func (*TagUser) ProtoMessage() {} func (*TagUser) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{1} + return fileDescriptor_office_0fe56c4f733d3593, []int{1} } func (m *TagUser) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagUser.Unmarshal(m, b) @@ -129,7 +129,7 @@ func (m *Tag) Reset() { *m = Tag{} } func (m *Tag) String() string { return proto.CompactTextString(m) } func (*Tag) ProtoMessage() {} func (*Tag) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{2} + return fileDescriptor_office_0fe56c4f733d3593, []int{2} } func (m *Tag) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Tag.Unmarshal(m, b) @@ -182,7 +182,7 @@ func (m *GetUserTagsReq) Reset() { *m = GetUserTagsReq{} } func (m *GetUserTagsReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagsReq) ProtoMessage() {} func (*GetUserTagsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{3} + return fileDescriptor_office_0fe56c4f733d3593, []int{3} } func (m *GetUserTagsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsReq.Unmarshal(m, b) @@ -228,7 +228,7 @@ func (m *GetUserTagsResp) Reset() { *m = GetUserTagsResp{} } func (m *GetUserTagsResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagsResp) ProtoMessage() {} func (*GetUserTagsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{4} + return fileDescriptor_office_0fe56c4f733d3593, []int{4} } func (m *GetUserTagsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsResp.Unmarshal(m, b) @@ -276,7 +276,7 @@ func (m *CreateTagReq) Reset() { *m = CreateTagReq{} } func (m *CreateTagReq) String() string { return proto.CompactTextString(m) } func (*CreateTagReq) ProtoMessage() {} func (*CreateTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{5} + return fileDescriptor_office_0fe56c4f733d3593, []int{5} } func (m *CreateTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagReq.Unmarshal(m, b) @@ -335,7 +335,7 @@ func (m *CreateTagResp) Reset() { *m = CreateTagResp{} } func (m *CreateTagResp) String() string { return proto.CompactTextString(m) } func (*CreateTagResp) ProtoMessage() {} func (*CreateTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{6} + return fileDescriptor_office_0fe56c4f733d3593, []int{6} } func (m *CreateTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagResp.Unmarshal(m, b) @@ -375,7 +375,7 @@ func (m *DeleteTagReq) Reset() { *m = DeleteTagReq{} } func (m *DeleteTagReq) String() string { return proto.CompactTextString(m) } func (*DeleteTagReq) ProtoMessage() {} func (*DeleteTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{7} + return fileDescriptor_office_0fe56c4f733d3593, []int{7} } func (m *DeleteTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagReq.Unmarshal(m, b) @@ -427,7 +427,7 @@ func (m *DeleteTagResp) Reset() { *m = DeleteTagResp{} } func (m *DeleteTagResp) String() string { return proto.CompactTextString(m) } func (*DeleteTagResp) ProtoMessage() {} func (*DeleteTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{8} + return fileDescriptor_office_0fe56c4f733d3593, []int{8} } func (m *DeleteTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagResp.Unmarshal(m, b) @@ -470,7 +470,7 @@ func (m *SetTagReq) Reset() { *m = SetTagReq{} } func (m *SetTagReq) String() string { return proto.CompactTextString(m) } func (*SetTagReq) ProtoMessage() {} func (*SetTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{9} + return fileDescriptor_office_0fe56c4f733d3593, []int{9} } func (m *SetTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagReq.Unmarshal(m, b) @@ -543,7 +543,7 @@ func (m *SetTagResp) Reset() { *m = SetTagResp{} } func (m *SetTagResp) String() string { return proto.CompactTextString(m) } func (*SetTagResp) ProtoMessage() {} func (*SetTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{10} + return fileDescriptor_office_0fe56c4f733d3593, []int{10} } func (m *SetTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagResp.Unmarshal(m, b) @@ -587,7 +587,7 @@ func (m *SendMsg2TagReq) Reset() { *m = SendMsg2TagReq{} } func (m *SendMsg2TagReq) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagReq) ProtoMessage() {} func (*SendMsg2TagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{11} + return fileDescriptor_office_0fe56c4f733d3593, []int{11} } func (m *SendMsg2TagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagReq.Unmarshal(m, b) @@ -667,7 +667,7 @@ func (m *SendMsg2TagResp) Reset() { *m = SendMsg2TagResp{} } func (m *SendMsg2TagResp) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagResp) ProtoMessage() {} func (*SendMsg2TagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{12} + return fileDescriptor_office_0fe56c4f733d3593, []int{12} } func (m *SendMsg2TagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagResp.Unmarshal(m, b) @@ -707,7 +707,7 @@ func (m *GetTagSendLogsReq) Reset() { *m = GetTagSendLogsReq{} } func (m *GetTagSendLogsReq) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsReq) ProtoMessage() {} func (*GetTagSendLogsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{13} + return fileDescriptor_office_0fe56c4f733d3593, []int{13} } func (m *GetTagSendLogsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsReq.Unmarshal(m, b) @@ -763,7 +763,7 @@ func (m *TagSendLog) Reset() { *m = TagSendLog{} } func (m *TagSendLog) String() string { return proto.CompactTextString(m) } func (*TagSendLog) ProtoMessage() {} func (*TagSendLog) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{14} + return fileDescriptor_office_0fe56c4f733d3593, []int{14} } func (m *TagSendLog) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagSendLog.Unmarshal(m, b) @@ -831,7 +831,7 @@ func (m *GetTagSendLogsResp) Reset() { *m = GetTagSendLogsResp{} } func (m *GetTagSendLogsResp) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsResp) ProtoMessage() {} func (*GetTagSendLogsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_b53660f9aedbfa32, []int{15} + return fileDescriptor_office_0fe56c4f733d3593, []int{15} } func (m *GetTagSendLogsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsResp.Unmarshal(m, b) @@ -872,6 +872,106 @@ func (m *GetTagSendLogsResp) GetTagSendLogs() []*TagSendLog { return nil } +type GetUserTagByIDReq struct { + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + TagID string `protobuf:"bytes,2,opt,name=tagID" json:"tagID,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=operationID" json:"operationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetUserTagByIDReq) Reset() { *m = GetUserTagByIDReq{} } +func (m *GetUserTagByIDReq) String() string { return proto.CompactTextString(m) } +func (*GetUserTagByIDReq) ProtoMessage() {} +func (*GetUserTagByIDReq) Descriptor() ([]byte, []int) { + return fileDescriptor_office_0fe56c4f733d3593, []int{16} +} +func (m *GetUserTagByIDReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserTagByIDReq.Unmarshal(m, b) +} +func (m *GetUserTagByIDReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserTagByIDReq.Marshal(b, m, deterministic) +} +func (dst *GetUserTagByIDReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserTagByIDReq.Merge(dst, src) +} +func (m *GetUserTagByIDReq) XXX_Size() int { + return xxx_messageInfo_GetUserTagByIDReq.Size(m) +} +func (m *GetUserTagByIDReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserTagByIDReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUserTagByIDReq proto.InternalMessageInfo + +func (m *GetUserTagByIDReq) GetUserID() string { + if m != nil { + return m.UserID + } + return "" +} + +func (m *GetUserTagByIDReq) GetTagID() string { + if m != nil { + return m.TagID + } + return "" +} + +func (m *GetUserTagByIDReq) GetOperationID() string { + if m != nil { + return m.OperationID + } + return "" +} + +type GetUserTagByIDResp struct { + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + Tag *Tag `protobuf:"bytes,2,opt,name=tag" json:"tag,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetUserTagByIDResp) Reset() { *m = GetUserTagByIDResp{} } +func (m *GetUserTagByIDResp) String() string { return proto.CompactTextString(m) } +func (*GetUserTagByIDResp) ProtoMessage() {} +func (*GetUserTagByIDResp) Descriptor() ([]byte, []int) { + return fileDescriptor_office_0fe56c4f733d3593, []int{17} +} +func (m *GetUserTagByIDResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserTagByIDResp.Unmarshal(m, b) +} +func (m *GetUserTagByIDResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserTagByIDResp.Marshal(b, m, deterministic) +} +func (dst *GetUserTagByIDResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserTagByIDResp.Merge(dst, src) +} +func (m *GetUserTagByIDResp) XXX_Size() int { + return xxx_messageInfo_GetUserTagByIDResp.Size(m) +} +func (m *GetUserTagByIDResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserTagByIDResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUserTagByIDResp proto.InternalMessageInfo + +func (m *GetUserTagByIDResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp + } + return nil +} + +func (m *GetUserTagByIDResp) GetTag() *Tag { + if m != nil { + return m.Tag + } + return nil +} + func init() { proto.RegisterType((*CommonResp)(nil), "office.CommonResp") proto.RegisterType((*TagUser)(nil), "office.TagUser") @@ -889,6 +989,8 @@ func init() { proto.RegisterType((*GetTagSendLogsReq)(nil), "office.GetTagSendLogsReq") proto.RegisterType((*TagSendLog)(nil), "office.TagSendLog") proto.RegisterType((*GetTagSendLogsResp)(nil), "office.GetTagSendLogsResp") + proto.RegisterType((*GetUserTagByIDReq)(nil), "office.GetUserTagByIDReq") + proto.RegisterType((*GetUserTagByIDResp)(nil), "office.GetUserTagByIDResp") } // Reference imports to suppress errors if they are not otherwise used. @@ -908,6 +1010,7 @@ type OfficeServiceClient interface { SetTag(ctx context.Context, in *SetTagReq, opts ...grpc.CallOption) (*SetTagResp, error) SendMsg2Tag(ctx context.Context, in *SendMsg2TagReq, opts ...grpc.CallOption) (*SendMsg2TagResp, error) GetTagSendLogs(ctx context.Context, in *GetTagSendLogsReq, opts ...grpc.CallOption) (*GetTagSendLogsResp, error) + GetUserTagByID(ctx context.Context, in *GetUserTagByIDReq, opts ...grpc.CallOption) (*GetUserTagByIDResp, error) } type officeServiceClient struct { @@ -972,6 +1075,15 @@ func (c *officeServiceClient) GetTagSendLogs(ctx context.Context, in *GetTagSend return out, nil } +func (c *officeServiceClient) GetUserTagByID(ctx context.Context, in *GetUserTagByIDReq, opts ...grpc.CallOption) (*GetUserTagByIDResp, error) { + out := new(GetUserTagByIDResp) + err := grpc.Invoke(ctx, "/office.OfficeService/GetUserTagByID", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // Server API for OfficeService service type OfficeServiceServer interface { @@ -981,6 +1093,7 @@ type OfficeServiceServer interface { SetTag(context.Context, *SetTagReq) (*SetTagResp, error) SendMsg2Tag(context.Context, *SendMsg2TagReq) (*SendMsg2TagResp, error) GetTagSendLogs(context.Context, *GetTagSendLogsReq) (*GetTagSendLogsResp, error) + GetUserTagByID(context.Context, *GetUserTagByIDReq) (*GetUserTagByIDResp, error) } func RegisterOfficeServiceServer(s *grpc.Server, srv OfficeServiceServer) { @@ -1095,6 +1208,24 @@ func _OfficeService_GetTagSendLogs_Handler(srv interface{}, ctx context.Context, return interceptor(ctx, in, info, handler) } +func _OfficeService_GetUserTagByID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetUserTagByIDReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(OfficeServiceServer).GetUserTagByID(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/office.OfficeService/GetUserTagByID", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(OfficeServiceServer).GetUserTagByID(ctx, req.(*GetUserTagByIDReq)) + } + return interceptor(ctx, in, info, handler) +} + var _OfficeService_serviceDesc = grpc.ServiceDesc{ ServiceName: "office.OfficeService", HandlerType: (*OfficeServiceServer)(nil), @@ -1123,62 +1254,69 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{ MethodName: "GetTagSendLogs", Handler: _OfficeService_GetTagSendLogs_Handler, }, + { + MethodName: "GetUserTagByID", + Handler: _OfficeService_GetUserTagByID_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "office/office.proto", } -func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_b53660f9aedbfa32) } - -var fileDescriptor_office_b53660f9aedbfa32 = []byte{ - // 781 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xdd, 0x6a, 0xdb, 0x4a, - 0x10, 0x46, 0xf2, 0x5f, 0x3c, 0x4e, 0xe2, 0x93, 0x3d, 0x39, 0x39, 0xaa, 0x08, 0xad, 0x2b, 0x5a, - 0x08, 0x2d, 0xd8, 0xe0, 0xf6, 0xa2, 0x50, 0x1a, 0x4a, 0xed, 0x60, 0x5c, 0x92, 0x26, 0x28, 0xce, - 0x4d, 0x2f, 0x6a, 0x36, 0xf6, 0x58, 0x88, 0xc4, 0x92, 0xb2, 0x2b, 0x27, 0xf7, 0x7d, 0x85, 0x42, - 0xdf, 0xa8, 0x0f, 0xd0, 0x77, 0xe8, 0x6b, 0x14, 0x8a, 0x56, 0xd2, 0x6a, 0x25, 0xdb, 0x14, 0x7c, - 0x25, 0x7d, 0xb3, 0x33, 0xab, 0x6f, 0xbe, 0xd9, 0x99, 0x15, 0xfc, 0xeb, 0xcf, 0x66, 0xee, 0x04, - 0x3b, 0xf1, 0xa3, 0x1d, 0x30, 0x3f, 0xf4, 0x49, 0x35, 0x46, 0xe6, 0xd3, 0xf3, 0x00, 0xbd, 0xf1, - 0xf0, 0xac, 0x13, 0xdc, 0x38, 0x1d, 0xb1, 0xd4, 0xe1, 0xd3, 0x9b, 0xf1, 0x03, 0xef, 0x3c, 0xf0, - 0xd8, 0xd5, 0x3a, 0x06, 0xe8, 0xf9, 0xf3, 0xb9, 0xef, 0xd9, 0xc8, 0x03, 0x62, 0x40, 0x0d, 0x19, - 0xeb, 0xf9, 0x53, 0x34, 0xb4, 0x96, 0x76, 0x54, 0xb1, 0x53, 0x48, 0x0e, 0xa0, 0x8a, 0x8c, 0x9d, - 0x71, 0xc7, 0xd0, 0x5b, 0xda, 0x51, 0xdd, 0x4e, 0x90, 0xf5, 0x0e, 0x6a, 0x23, 0xea, 0x5c, 0x71, - 0x64, 0x91, 0xcb, 0x82, 0x23, 0x1b, 0xf6, 0x45, 0x6c, 0xdd, 0x4e, 0x10, 0x31, 0x61, 0x2b, 0x7a, - 0xfb, 0x44, 0xe7, 0x98, 0x04, 0x4b, 0x6c, 0x5d, 0x43, 0x69, 0x44, 0x1d, 0xb2, 0x0f, 0x95, 0x90, - 0x3a, 0x32, 0x32, 0x06, 0x11, 0x9b, 0x90, 0x3a, 0x4a, 0x5c, 0x0a, 0xc9, 0xcb, 0x78, 0xcb, 0x53, - 0x97, 0x87, 0x46, 0xa9, 0x55, 0x3a, 0x6a, 0x74, 0x9b, 0xed, 0x44, 0x81, 0x84, 0x8d, 0x2d, 0x1d, - 0xac, 0x8f, 0xb0, 0x3b, 0xc0, 0x30, 0x32, 0x8e, 0xa8, 0xc3, 0x6d, 0xbc, 0x5b, 0xcb, 0xb4, 0x05, - 0x0d, 0x3f, 0x40, 0x46, 0x43, 0xd7, 0xf7, 0x86, 0xfd, 0xe4, 0xa3, 0xaa, 0xc9, 0x9a, 0x41, 0x33, - 0xb7, 0x17, 0x0f, 0x48, 0x17, 0x60, 0x22, 0x15, 0x14, 0x1b, 0x36, 0xba, 0x24, 0x65, 0x93, 0x69, - 0x6b, 0x2b, 0x5e, 0xe4, 0x09, 0x94, 0x43, 0xea, 0x70, 0x43, 0x17, 0xdc, 0x1b, 0x0a, 0x77, 0x5b, - 0x2c, 0x58, 0x5f, 0x35, 0xd8, 0xee, 0x31, 0xa4, 0x21, 0x46, 0x36, 0xbc, 0x53, 0xb5, 0xd0, 0xf2, - 0x5a, 0x64, 0xc9, 0xe8, 0xb9, 0x64, 0x1e, 0x03, 0xc4, 0x6f, 0x52, 0xa5, 0xba, 0xad, 0x58, 0x8a, - 0xc9, 0x96, 0x97, 0x93, 0xed, 0xc1, 0x8e, 0xc2, 0x61, 0xb3, 0x54, 0xad, 0x2f, 0xb0, 0xdd, 0xc7, - 0x5b, 0x94, 0x89, 0xac, 0xd3, 0x5e, 0x1e, 0x01, 0x5d, 0x3d, 0x02, 0x05, 0x92, 0xa5, 0x95, 0x24, - 0x95, 0xfd, 0x37, 0x24, 0xf9, 0x53, 0x83, 0xfa, 0x25, 0x86, 0x1b, 0x51, 0x34, 0xa0, 0xe6, 0xe1, - 0x83, 0xa8, 0x4c, 0x4c, 0x2f, 0x85, 0xa4, 0x0d, 0xc4, 0xf5, 0x26, 0x0c, 0x29, 0xc7, 0xab, 0xac, - 0x12, 0x65, 0x51, 0x89, 0x15, 0x2b, 0xe4, 0x05, 0xfc, 0xc3, 0x70, 0xba, 0x98, 0xa8, 0xde, 0x15, - 0xe1, 0xbd, 0x64, 0x2f, 0x0a, 0x53, 0x5d, 0x16, 0xe6, 0x3d, 0x40, 0x9a, 0xd2, 0x86, 0xaa, 0xfc, - 0xd2, 0x60, 0xf7, 0x12, 0xbd, 0xe9, 0x19, 0x77, 0xba, 0xb9, 0x63, 0x28, 0x98, 0x69, 0x82, 0x59, - 0x0a, 0xa3, 0x2e, 0xbf, 0x4a, 0x5b, 0x52, 0x17, 0x4b, 0x12, 0x93, 0x43, 0xa8, 0x0f, 0x98, 0xbf, - 0x08, 0x94, 0x93, 0x98, 0x19, 0x22, 0xb9, 0x39, 0x7a, 0x53, 0x79, 0x06, 0x13, 0x14, 0xc9, 0x11, - 0xbd, 0x21, 0xbb, 0xb8, 0xa5, 0xe1, 0xcc, 0x67, 0xf3, 0x61, 0xdf, 0xa8, 0x88, 0xa9, 0xb4, 0x64, - 0x8f, 0x78, 0x4d, 0x7c, 0x2f, 0x44, 0x2f, 0x4c, 0xa4, 0x48, 0x61, 0x51, 0xa8, 0xda, 0xb2, 0x50, - 0x27, 0xd0, 0xcc, 0x65, 0xb9, 0xa1, 0x5a, 0xdf, 0x34, 0xd8, 0x1b, 0x08, 0xc1, 0xa3, 0xdd, 0x4e, - 0xfd, 0x78, 0xd4, 0xf4, 0x01, 0x2e, 0xa8, 0xe3, 0x7a, 0xe2, 0x63, 0xc9, 0x4e, 0xcf, 0xda, 0x1c, - 0xd9, 0x3d, 0xb2, 0x31, 0x0d, 0xdc, 0x71, 0x40, 0x19, 0x9d, 0xf3, 0xb6, 0x8d, 0x77, 0x0b, 0xe4, - 0x61, 0xe6, 0x6b, 0x2b, 0x71, 0x6b, 0x7b, 0xfc, 0xef, 0xed, 0xf1, 0x5d, 0x03, 0xc8, 0x28, 0xa5, - 0xb3, 0x58, 0x29, 0xa0, 0xc4, 0x6a, 0x6d, 0xf5, 0x7c, 0x6d, 0x0f, 0xa1, 0xee, 0x14, 0xeb, 0x27, - 0x0d, 0xaa, 0xf6, 0xe5, 0xbc, 0xf6, 0x26, 0x6c, 0x45, 0x95, 0x1a, 0xb9, 0x73, 0x14, 0x95, 0x2b, - 0xd9, 0x12, 0x5b, 0x3f, 0x34, 0x20, 0x45, 0xb9, 0x36, 0x9c, 0xa6, 0x27, 0x39, 0x8d, 0x75, 0x11, - 0xf3, 0x7c, 0xa5, 0xc6, 0x3c, 0xf0, 0x3d, 0x8e, 0x6b, 0x44, 0x7e, 0x0d, 0x8d, 0x30, 0x63, 0x93, - 0xdc, 0x2b, 0x44, 0x99, 0xcd, 0xc9, 0x92, 0xad, 0xba, 0x75, 0x7f, 0xeb, 0xb0, 0x73, 0x2e, 0x5c, - 0x2e, 0x91, 0xdd, 0xbb, 0x13, 0x24, 0xc7, 0xd0, 0x50, 0xee, 0x08, 0x72, 0x90, 0xee, 0x90, 0xbf, - 0x84, 0xcc, 0xff, 0x57, 0xda, 0x79, 0x40, 0xde, 0x40, 0x5d, 0x8e, 0x5d, 0xb2, 0x2f, 0x73, 0x57, - 0x6e, 0x03, 0xf3, 0xbf, 0x15, 0xd6, 0x38, 0x52, 0xce, 0xc2, 0x2c, 0x52, 0x1d, 0xbf, 0x59, 0x64, - 0x7e, 0x68, 0x76, 0xa0, 0x1a, 0x0f, 0x0b, 0xb2, 0x97, 0x3a, 0xc8, 0x79, 0x68, 0x92, 0xa2, 0x89, - 0x07, 0x51, 0x92, 0x4a, 0xd3, 0x64, 0x49, 0xe6, 0xe7, 0x45, 0x96, 0x64, 0xb1, 0xc3, 0x06, 0xe2, - 0x52, 0x56, 0xaa, 0x4f, 0x1e, 0x29, 0x7a, 0xe4, 0x9b, 0xc8, 0x34, 0xd7, 0x2d, 0xf1, 0xe0, 0xc3, - 0xde, 0xe7, 0x66, 0x3b, 0xf9, 0xfb, 0x79, 0x1b, 0x3f, 0xae, 0xab, 0xe2, 0xd7, 0xe6, 0xd5, 0x9f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xbf, 0x36, 0xc4, 0xe9, 0x1c, 0x09, 0x00, 0x00, +func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_0fe56c4f733d3593) } + +var fileDescriptor_office_0fe56c4f733d3593 = []byte{ + // 826 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x5f, 0x6b, 0xdb, 0x48, + 0x10, 0x47, 0xfe, 0x1b, 0x8f, 0x93, 0xf8, 0xb2, 0x97, 0xcb, 0xf9, 0x44, 0xee, 0xce, 0x27, 0xee, + 0x20, 0x5c, 0xc1, 0x06, 0xb7, 0x0f, 0x85, 0xd2, 0x50, 0x62, 0x07, 0xe3, 0x92, 0x34, 0x41, 0x71, + 0x5e, 0xfa, 0x50, 0xb3, 0xb1, 0xc7, 0x42, 0x24, 0x96, 0x94, 0x5d, 0x39, 0xa1, 0xaf, 0xfd, 0x0a, + 0x85, 0x7e, 0xa3, 0xf6, 0xbd, 0xdf, 0xa1, 0x1f, 0xa4, 0x68, 0x25, 0xad, 0x76, 0x65, 0x9b, 0x82, + 0xa1, 0x4f, 0xd2, 0xcc, 0xce, 0x8c, 0x7e, 0xf3, 0x9b, 0xd9, 0x19, 0xc1, 0xaf, 0xfe, 0x6c, 0xe6, + 0x4e, 0xb0, 0x13, 0x3f, 0xda, 0x01, 0xf3, 0x43, 0x9f, 0x54, 0x62, 0xc9, 0xfc, 0xe7, 0x22, 0x40, + 0x6f, 0x3c, 0x3c, 0xef, 0x04, 0xb7, 0x4e, 0x47, 0x1c, 0x75, 0xf8, 0xf4, 0x76, 0xfc, 0xc8, 0x3b, + 0x8f, 0x3c, 0x36, 0xb5, 0x8e, 0x01, 0x7a, 0xfe, 0x7c, 0xee, 0x7b, 0x36, 0xf2, 0x80, 0x34, 0xa1, + 0x8a, 0x8c, 0xf5, 0xfc, 0x29, 0x36, 0x8d, 0x96, 0x71, 0x54, 0xb6, 0x53, 0x91, 0x1c, 0x40, 0x05, + 0x19, 0x3b, 0xe7, 0x4e, 0xb3, 0xd0, 0x32, 0x8e, 0x6a, 0x76, 0x22, 0x59, 0x2f, 0xa1, 0x3a, 0xa2, + 0xce, 0x35, 0x47, 0x16, 0x99, 0x2c, 0x38, 0xb2, 0x61, 0x5f, 0xf8, 0xd6, 0xec, 0x44, 0x22, 0x26, + 0x6c, 0x45, 0x6f, 0x6f, 0xe8, 0x1c, 0x13, 0x67, 0x29, 0x5b, 0x37, 0x50, 0x1c, 0x51, 0x87, 0xec, + 0x43, 0x39, 0xa4, 0x8e, 0xf4, 0x8c, 0x85, 0x08, 0x4d, 0x48, 0x1d, 0xc5, 0x2f, 0x15, 0xc9, 0x93, + 0x38, 0xe4, 0x99, 0xcb, 0xc3, 0x66, 0xb1, 0x55, 0x3c, 0xaa, 0x77, 0x1b, 0xed, 0x84, 0x81, 0x04, + 0x8d, 0x2d, 0x0d, 0xac, 0xd7, 0xb0, 0x3b, 0xc0, 0x30, 0x52, 0x8e, 0xa8, 0xc3, 0x6d, 0xbc, 0x5f, + 0x8b, 0xb4, 0x05, 0x75, 0x3f, 0x40, 0x46, 0x43, 0xd7, 0xf7, 0x86, 0xfd, 0xe4, 0xa3, 0xaa, 0xca, + 0x9a, 0x41, 0x43, 0x8b, 0xc5, 0x03, 0xd2, 0x05, 0x98, 0x48, 0x06, 0x45, 0xc0, 0x7a, 0x97, 0xa4, + 0x68, 0x32, 0x6e, 0x6d, 0xc5, 0x8a, 0xfc, 0x0d, 0xa5, 0x90, 0x3a, 0xbc, 0x59, 0x10, 0xd8, 0xeb, + 0x0a, 0x76, 0x5b, 0x1c, 0x58, 0x1f, 0x0c, 0xd8, 0xee, 0x31, 0xa4, 0x21, 0x46, 0x3a, 0xbc, 0x57, + 0xb9, 0x30, 0x74, 0x2e, 0xb2, 0x64, 0x0a, 0x5a, 0x32, 0x7f, 0x01, 0xc4, 0x6f, 0x92, 0xa5, 0x9a, + 0xad, 0x68, 0xf2, 0xc9, 0x96, 0x96, 0x93, 0xed, 0xc1, 0x8e, 0x82, 0x61, 0xb3, 0x54, 0xad, 0x77, + 0xb0, 0xdd, 0xc7, 0x3b, 0x94, 0x89, 0xac, 0xe3, 0x5e, 0xb6, 0x40, 0x41, 0x6d, 0x81, 0x1c, 0xc8, + 0xe2, 0x4a, 0x90, 0x4a, 0xfc, 0x0d, 0x41, 0x7e, 0x35, 0xa0, 0x76, 0x85, 0xe1, 0x46, 0x10, 0x9b, + 0x50, 0xf5, 0xf0, 0x51, 0x54, 0x26, 0x86, 0x97, 0x8a, 0xa4, 0x0d, 0xc4, 0xf5, 0x26, 0x0c, 0x29, + 0xc7, 0xeb, 0xac, 0x12, 0x25, 0x51, 0x89, 0x15, 0x27, 0xe4, 0x7f, 0xf8, 0x85, 0xe1, 0x74, 0x31, + 0x51, 0xad, 0xcb, 0xc2, 0x7a, 0x49, 0x9f, 0x27, 0xa6, 0xb2, 0x4c, 0xcc, 0x2b, 0x80, 0x34, 0xa5, + 0x0d, 0x59, 0xf9, 0x66, 0xc0, 0xee, 0x15, 0x7a, 0xd3, 0x73, 0xee, 0x74, 0xb5, 0x36, 0x14, 0xc8, + 0x0c, 0x81, 0x2c, 0x15, 0xa3, 0x5b, 0x7e, 0x9d, 0x5e, 0xc9, 0x82, 0x38, 0x92, 0x32, 0x39, 0x84, + 0xda, 0x80, 0xf9, 0x8b, 0x40, 0xe9, 0xc4, 0x4c, 0x11, 0xd1, 0xcd, 0xd1, 0x9b, 0xca, 0x1e, 0x4c, + 0xa4, 0x88, 0x8e, 0xe8, 0x0d, 0xd9, 0xe5, 0x1d, 0x0d, 0x67, 0x3e, 0x9b, 0x0f, 0xfb, 0xcd, 0xb2, + 0x98, 0x4a, 0x4b, 0xfa, 0x08, 0xd7, 0xc4, 0xf7, 0x42, 0xf4, 0xc2, 0x84, 0x8a, 0x54, 0xcc, 0x13, + 0x55, 0x5d, 0x26, 0xea, 0x14, 0x1a, 0x5a, 0x96, 0x1b, 0xb2, 0xf5, 0xd1, 0x80, 0xbd, 0x81, 0x20, + 0x3c, 0x8a, 0x76, 0xe6, 0xc7, 0xa3, 0xa6, 0x0f, 0x70, 0x49, 0x1d, 0xd7, 0x13, 0x1f, 0x4b, 0x22, + 0xfd, 0xdb, 0xe6, 0xc8, 0x1e, 0x90, 0x8d, 0x69, 0xe0, 0x8e, 0x03, 0xca, 0xe8, 0x9c, 0xb7, 0x6d, + 0xbc, 0x5f, 0x20, 0x0f, 0x33, 0x5b, 0x5b, 0xf1, 0x5b, 0x7b, 0xc7, 0x7f, 0x7c, 0x3d, 0x3e, 0x19, + 0x00, 0x19, 0xa4, 0x74, 0x16, 0x2b, 0x05, 0x94, 0xb2, 0x5a, 0xdb, 0x82, 0x5e, 0xdb, 0x43, 0xa8, + 0x39, 0xf9, 0xfa, 0x49, 0x85, 0xca, 0x7d, 0x49, 0xe7, 0xde, 0x84, 0xad, 0xa8, 0x52, 0x23, 0x77, + 0x8e, 0xa2, 0x72, 0x45, 0x5b, 0xca, 0xd6, 0x67, 0x03, 0x48, 0x9e, 0xae, 0x0d, 0xa7, 0xe9, 0xa9, + 0xc6, 0x71, 0x41, 0xf8, 0xfc, 0xb7, 0x92, 0x63, 0x1e, 0xf8, 0x1e, 0xc7, 0x35, 0x24, 0x3f, 0x83, + 0x7a, 0x98, 0xa1, 0x49, 0xf6, 0x0a, 0x51, 0x66, 0x73, 0x72, 0x64, 0xab, 0x66, 0xd6, 0x44, 0x54, + 0x3d, 0xd9, 0x08, 0x27, 0xef, 0x87, 0xfd, 0x9f, 0x31, 0xe4, 0x1c, 0xc1, 0x95, 0xf6, 0x91, 0x0d, + 0xb9, 0xfa, 0x13, 0x8a, 0x21, 0x75, 0x12, 0x92, 0xb4, 0xc5, 0x13, 0xe9, 0xbb, 0x5f, 0x8a, 0xb0, + 0x73, 0x21, 0x74, 0x57, 0xc8, 0x1e, 0xdc, 0x09, 0x92, 0x63, 0xa8, 0x2b, 0x1b, 0x8f, 0x1c, 0xa4, + 0x2e, 0xfa, 0x4a, 0x35, 0x7f, 0x5f, 0xa9, 0xe7, 0x01, 0x79, 0x0e, 0x35, 0xb9, 0x44, 0xc8, 0xbe, + 0x44, 0xa7, 0xec, 0x36, 0xf3, 0xb7, 0x15, 0xda, 0xd8, 0x53, 0x4e, 0xf6, 0xcc, 0x53, 0x5d, 0x26, + 0x99, 0xa7, 0xbe, 0x02, 0x3a, 0x50, 0x89, 0x47, 0x1f, 0xd9, 0x4b, 0x0d, 0xe4, 0x74, 0x37, 0x49, + 0x5e, 0xc5, 0x83, 0x28, 0x49, 0x65, 0x04, 0x64, 0x49, 0xea, 0xd3, 0x2f, 0x4b, 0x32, 0x3f, 0x2f, + 0x06, 0xe2, 0x17, 0x43, 0xe9, 0x65, 0xf2, 0x87, 0xc2, 0x87, 0x3e, 0x12, 0x4c, 0x73, 0xdd, 0x91, + 0x0c, 0xa4, 0x14, 0x5a, 0x0b, 0xa4, 0x77, 0x99, 0x16, 0x28, 0xd7, 0x1b, 0x27, 0x7b, 0x6f, 0x1b, + 0xed, 0xe4, 0xa7, 0xf0, 0x45, 0xfc, 0xb8, 0xa9, 0x88, 0x3f, 0xbe, 0xa7, 0xdf, 0x03, 0x00, 0x00, + 0xff, 0xff, 0x1f, 0x69, 0x88, 0xf6, 0x33, 0x0a, 0x00, 0x00, } diff --git a/pkg/proto/office/office.proto b/pkg/proto/office/office.proto index 99c749dbb..b4a7f83d7 100644 --- a/pkg/proto/office/office.proto +++ b/pkg/proto/office/office.proto @@ -97,6 +97,17 @@ message GetTagSendLogsResp { repeated TagSendLog tagSendLogs = 3; } +message GetUserTagByIDReq { + string userID = 1; + string tagID = 2; + string operationID = 3; +} + +message GetUserTagByIDResp { + CommonResp commonResp = 1; + Tag tag = 2; +} + service OfficeService { rpc GetUserTags(GetUserTagsReq) returns(GetUserTagsResp); rpc CreateTag(CreateTagReq) returns(CreateTagResp); @@ -104,5 +115,6 @@ service OfficeService { rpc SetTag(SetTagReq) returns(SetTagResp); rpc SendMsg2Tag(SendMsg2TagReq) returns(SendMsg2TagResp); rpc GetTagSendLogs(GetTagSendLogsReq) returns(GetTagSendLogsResp); + rpc GetUserTagByID(GetUserTagByIDReq) returns(GetUserTagByIDResp); } diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index 43fd488b8..d0566cd04 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -40,7 +40,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} } func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{0} + return fileDescriptor_ws_331bd590ecfeca43, []int{0} } func (m *GroupInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfo.Unmarshal(m, b) @@ -165,7 +165,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{1} + return fileDescriptor_ws_331bd590ecfeca43, []int{1} } func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) @@ -277,7 +277,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{2} + return fileDescriptor_ws_331bd590ecfeca43, []int{2} } func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) @@ -352,7 +352,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} } func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{3} + return fileDescriptor_ws_331bd590ecfeca43, []int{3} } func (m *UserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfo.Unmarshal(m, b) @@ -459,7 +459,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} } func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{4} + return fileDescriptor_ws_331bd590ecfeca43, []int{4} } func (m *FriendInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfo.Unmarshal(m, b) @@ -544,7 +544,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} } func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{5} + return fileDescriptor_ws_331bd590ecfeca43, []int{5} } func (m *BlackInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackInfo.Unmarshal(m, b) @@ -625,7 +625,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} } func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{6} + return fileDescriptor_ws_331bd590ecfeca43, []int{6} } func (m *GroupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupRequest.Unmarshal(m, b) @@ -733,7 +733,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} } func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{7} + return fileDescriptor_ws_331bd590ecfeca43, []int{7} } func (m *FriendRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendRequest.Unmarshal(m, b) @@ -871,7 +871,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{8} + return fileDescriptor_ws_331bd590ecfeca43, []int{8} } func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) @@ -925,7 +925,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{9} + return fileDescriptor_ws_331bd590ecfeca43, []int{9} } func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) @@ -976,7 +976,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{10} + return fileDescriptor_ws_331bd590ecfeca43, []int{10} } func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) @@ -1008,7 +1008,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{11} + return fileDescriptor_ws_331bd590ecfeca43, []int{11} } func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) @@ -1055,7 +1055,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{12} + return fileDescriptor_ws_331bd590ecfeca43, []int{12} } func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) @@ -1124,7 +1124,7 @@ func (m *MsgData) Reset() { *m = MsgData{} } func (m *MsgData) String() string { return proto.CompactTextString(m) } func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{13} + return fileDescriptor_ws_331bd590ecfeca43, []int{13} } func (m *MsgData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgData.Unmarshal(m, b) @@ -1285,7 +1285,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{14} + return fileDescriptor_ws_331bd590ecfeca43, []int{14} } func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) @@ -1353,7 +1353,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} } func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{15} + return fileDescriptor_ws_331bd590ecfeca43, []int{15} } func (m *TipsComm) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TipsComm.Unmarshal(m, b) @@ -1410,7 +1410,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{16} + return fileDescriptor_ws_331bd590ecfeca43, []int{16} } func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) @@ -1479,7 +1479,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{17} + return fileDescriptor_ws_331bd590ecfeca43, []int{17} } func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) @@ -1534,7 +1534,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{18} + return fileDescriptor_ws_331bd590ecfeca43, []int{18} } func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) @@ -1590,7 +1590,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{19} + return fileDescriptor_ws_331bd590ecfeca43, []int{19} } func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) @@ -1645,7 +1645,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{20} + return fileDescriptor_ws_331bd590ecfeca43, []int{20} } func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) @@ -1700,7 +1700,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{21} + return fileDescriptor_ws_331bd590ecfeca43, []int{21} } func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) @@ -1756,7 +1756,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{22} + return fileDescriptor_ws_331bd590ecfeca43, []int{22} } func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) @@ -1819,7 +1819,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{23} + return fileDescriptor_ws_331bd590ecfeca43, []int{23} } func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) @@ -1882,7 +1882,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{24} + return fileDescriptor_ws_331bd590ecfeca43, []int{24} } func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) @@ -1944,7 +1944,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{25} + return fileDescriptor_ws_331bd590ecfeca43, []int{25} } func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) @@ -1998,7 +1998,7 @@ func (m *GroupDismissedTips) Reset() { *m = GroupDismissedTips{} } func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) } func (*GroupDismissedTips) ProtoMessage() {} func (*GroupDismissedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{26} + return fileDescriptor_ws_331bd590ecfeca43, []int{26} } func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b) @@ -2054,7 +2054,7 @@ func (m *GroupMemberMutedTips) Reset() { *m = GroupMemberMutedTips{} } func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMemberMutedTips) ProtoMessage() {} func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{27} + return fileDescriptor_ws_331bd590ecfeca43, []int{27} } func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b) @@ -2123,7 +2123,7 @@ func (m *GroupMemberCancelMutedTips) Reset() { *m = GroupMemberCancelMut func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMemberCancelMutedTips) ProtoMessage() {} func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{28} + return fileDescriptor_ws_331bd590ecfeca43, []int{28} } func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b) @@ -2184,7 +2184,7 @@ func (m *GroupMutedTips) Reset() { *m = GroupMutedTips{} } func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupMutedTips) ProtoMessage() {} func (*GroupMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{29} + return fileDescriptor_ws_331bd590ecfeca43, []int{29} } func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b) @@ -2238,7 +2238,7 @@ func (m *GroupCancelMutedTips) Reset() { *m = GroupCancelMutedTips{} } func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) } func (*GroupCancelMutedTips) ProtoMessage() {} func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{30} + return fileDescriptor_ws_331bd590ecfeca43, []int{30} } func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b) @@ -2292,7 +2292,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} } func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{31} + return fileDescriptor_ws_331bd590ecfeca43, []int{31} } func (m *FriendApplication) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplication.Unmarshal(m, b) @@ -2345,7 +2345,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} } func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{32} + return fileDescriptor_ws_331bd590ecfeca43, []int{32} } func (m *FromToUserID) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FromToUserID.Unmarshal(m, b) @@ -2391,7 +2391,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{33} + return fileDescriptor_ws_331bd590ecfeca43, []int{33} } func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) @@ -2431,7 +2431,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{34} + return fileDescriptor_ws_331bd590ecfeca43, []int{34} } func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) @@ -2478,7 +2478,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{35} + return fileDescriptor_ws_331bd590ecfeca43, []int{35} } func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) @@ -2526,7 +2526,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{36} + return fileDescriptor_ws_331bd590ecfeca43, []int{36} } func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) @@ -2579,7 +2579,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{37} + return fileDescriptor_ws_331bd590ecfeca43, []int{37} } func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) @@ -2617,7 +2617,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{38} + return fileDescriptor_ws_331bd590ecfeca43, []int{38} } func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) @@ -2655,7 +2655,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{39} + return fileDescriptor_ws_331bd590ecfeca43, []int{39} } func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) @@ -2693,7 +2693,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{40} + return fileDescriptor_ws_331bd590ecfeca43, []int{40} } func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) @@ -2732,7 +2732,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{41} + return fileDescriptor_ws_331bd590ecfeca43, []int{41} } func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) @@ -2771,7 +2771,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{42} + return fileDescriptor_ws_331bd590ecfeca43, []int{42} } func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) @@ -2798,6 +2798,60 @@ func (m *ConversationUpdateTips) GetUserID() string { return "" } +type ConversationSetPrivateTips struct { + RecvID string `protobuf:"bytes,1,opt,name=recvID" json:"recvID,omitempty"` + SendID string `protobuf:"bytes,2,opt,name=sendID" json:"sendID,omitempty"` + IsPrivate bool `protobuf:"varint,3,opt,name=isPrivate" json:"isPrivate,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ConversationSetPrivateTips) Reset() { *m = ConversationSetPrivateTips{} } +func (m *ConversationSetPrivateTips) String() string { return proto.CompactTextString(m) } +func (*ConversationSetPrivateTips) ProtoMessage() {} +func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) { + return fileDescriptor_ws_331bd590ecfeca43, []int{43} +} +func (m *ConversationSetPrivateTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ConversationSetPrivateTips.Unmarshal(m, b) +} +func (m *ConversationSetPrivateTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ConversationSetPrivateTips.Marshal(b, m, deterministic) +} +func (dst *ConversationSetPrivateTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_ConversationSetPrivateTips.Merge(dst, src) +} +func (m *ConversationSetPrivateTips) XXX_Size() int { + return xxx_messageInfo_ConversationSetPrivateTips.Size(m) +} +func (m *ConversationSetPrivateTips) XXX_DiscardUnknown() { + xxx_messageInfo_ConversationSetPrivateTips.DiscardUnknown(m) +} + +var xxx_messageInfo_ConversationSetPrivateTips proto.InternalMessageInfo + +func (m *ConversationSetPrivateTips) GetRecvID() string { + if m != nil { + return m.RecvID + } + return "" +} + +func (m *ConversationSetPrivateTips) GetSendID() string { + if m != nil { + return m.SendID + } + return "" +} + +func (m *ConversationSetPrivateTips) GetIsPrivate() bool { + if m != nil { + return m.IsPrivate + } + return false +} + // /cms type RequestPagination struct { PageNumber int32 `protobuf:"varint,1,opt,name=pageNumber" json:"pageNumber,omitempty"` @@ -2811,7 +2865,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} } func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{43} + return fileDescriptor_ws_331bd590ecfeca43, []int{44} } func (m *RequestPagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RequestPagination.Unmarshal(m, b) @@ -2857,7 +2911,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{44} + return fileDescriptor_ws_331bd590ecfeca43, []int{45} } func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) @@ -2910,7 +2964,7 @@ func (m *SignalReq) Reset() { *m = SignalReq{} } func (m *SignalReq) String() string { return proto.CompactTextString(m) } func (*SignalReq) ProtoMessage() {} func (*SignalReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{45} + return fileDescriptor_ws_331bd590ecfeca43, []int{46} } func (m *SignalReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalReq.Unmarshal(m, b) @@ -3177,7 +3231,7 @@ func (m *SignalResp) Reset() { *m = SignalResp{} } func (m *SignalResp) String() string { return proto.CompactTextString(m) } func (*SignalResp) ProtoMessage() {} func (*SignalResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{46} + return fileDescriptor_ws_331bd590ecfeca43, []int{47} } func (m *SignalResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalResp.Unmarshal(m, b) @@ -3445,7 +3499,7 @@ func (m *InvitationInfo) Reset() { *m = InvitationInfo{} } func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } func (*InvitationInfo) ProtoMessage() {} func (*InvitationInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{47} + return fileDescriptor_ws_331bd590ecfeca43, []int{48} } func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) @@ -3541,7 +3595,7 @@ func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} } func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } func (*ParticipantMetaData) ProtoMessage() {} func (*ParticipantMetaData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{48} + return fileDescriptor_ws_331bd590ecfeca43, []int{49} } func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) @@ -3596,7 +3650,7 @@ func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} } func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteReq) ProtoMessage() {} func (*SignalInviteReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{49} + return fileDescriptor_ws_331bd590ecfeca43, []int{50} } func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) @@ -3657,7 +3711,7 @@ func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} } func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteReply) ProtoMessage() {} func (*SignalInviteReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{50} + return fileDescriptor_ws_331bd590ecfeca43, []int{51} } func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) @@ -3712,7 +3766,7 @@ func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{} func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReq) ProtoMessage() {} func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{51} + return fileDescriptor_ws_331bd590ecfeca43, []int{52} } func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) @@ -3773,7 +3827,7 @@ func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupRep func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } func (*SignalInviteInGroupReply) ProtoMessage() {} func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{52} + return fileDescriptor_ws_331bd590ecfeca43, []int{53} } func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) @@ -3828,7 +3882,7 @@ func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} } func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } func (*SignalCancelReq) ProtoMessage() {} func (*SignalCancelReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{53} + return fileDescriptor_ws_331bd590ecfeca43, []int{54} } func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) @@ -3886,7 +3940,7 @@ func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} } func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } func (*SignalCancelReply) ProtoMessage() {} func (*SignalCancelReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{54} + return fileDescriptor_ws_331bd590ecfeca43, []int{55} } func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) @@ -3921,7 +3975,7 @@ func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} } func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReq) ProtoMessage() {} func (*SignalAcceptReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{55} + return fileDescriptor_ws_331bd590ecfeca43, []int{56} } func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) @@ -3989,7 +4043,7 @@ func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} } func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } func (*SignalAcceptReply) ProtoMessage() {} func (*SignalAcceptReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{56} + return fileDescriptor_ws_331bd590ecfeca43, []int{57} } func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) @@ -4043,7 +4097,7 @@ func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} } func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReq) ProtoMessage() {} func (*SignalHungUpReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{57} + return fileDescriptor_ws_331bd590ecfeca43, []int{58} } func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) @@ -4094,7 +4148,7 @@ func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} } func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } func (*SignalHungUpReply) ProtoMessage() {} func (*SignalHungUpReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{58} + return fileDescriptor_ws_331bd590ecfeca43, []int{59} } func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) @@ -4129,7 +4183,7 @@ func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} } func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } func (*SignalRejectReq) ProtoMessage() {} func (*SignalRejectReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{59} + return fileDescriptor_ws_331bd590ecfeca43, []int{60} } func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) @@ -4194,7 +4248,7 @@ func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} } func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } func (*SignalRejectReply) ProtoMessage() {} func (*SignalRejectReply) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{60} + return fileDescriptor_ws_331bd590ecfeca43, []int{61} } func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) @@ -4228,7 +4282,7 @@ func (m *DelMsgListReq) Reset() { *m = DelMsgListReq{} } func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) } func (*DelMsgListReq) ProtoMessage() {} func (*DelMsgListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{61} + return fileDescriptor_ws_331bd590ecfeca43, []int{62} } func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b) @@ -4288,7 +4342,7 @@ func (m *DelMsgListResp) Reset() { *m = DelMsgListResp{} } func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) } func (*DelMsgListResp) ProtoMessage() {} func (*DelMsgListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_f1fa7995a968e7fe, []int{62} + return fileDescriptor_ws_331bd590ecfeca43, []int{63} } func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b) @@ -4367,6 +4421,7 @@ func init() { proto.RegisterType((*FriendInfoChangedTips)(nil), "server_api_params.FriendInfoChangedTips") proto.RegisterType((*UserInfoUpdatedTips)(nil), "server_api_params.UserInfoUpdatedTips") proto.RegisterType((*ConversationUpdateTips)(nil), "server_api_params.ConversationUpdateTips") + proto.RegisterType((*ConversationSetPrivateTips)(nil), "server_api_params.ConversationSetPrivateTips") proto.RegisterType((*RequestPagination)(nil), "server_api_params.RequestPagination") proto.RegisterType((*ResponsePagination)(nil), "server_api_params.ResponsePagination") proto.RegisterType((*SignalReq)(nil), "server_api_params.SignalReq") @@ -4389,176 +4444,178 @@ func init() { proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp") } -func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_f1fa7995a968e7fe) } - -var fileDescriptor_ws_f1fa7995a968e7fe = []byte{ - // 2676 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x6f, 0x23, 0x49, - 0x15, 0xa7, 0xdb, 0xb1, 0x13, 0x3f, 0xc7, 0x71, 0xd2, 0x59, 0x82, 0x09, 0xb3, 0x43, 0x68, 0x45, - 0xcb, 0xb0, 0x40, 0x16, 0x0d, 0x42, 0x82, 0x5d, 0x18, 0x94, 0x8f, 0xf9, 0x5a, 0xe2, 0x99, 0x6c, - 0x7b, 0x86, 0x45, 0x80, 0xb4, 0xea, 0xb8, 0x2b, 0x4e, 0x6f, 0xda, 0x55, 0xed, 0xfe, 0xc8, 0x4c, - 0x24, 0x24, 0x24, 0x90, 0x10, 0x37, 0x4e, 0x70, 0xe0, 0x82, 0xc4, 0x05, 0x81, 0xd0, 0x6a, 0x0f, - 0x70, 0x43, 0x9c, 0xf8, 0x07, 0x38, 0x22, 0x6e, 0x9c, 0xb9, 0x72, 0x40, 0x42, 0x02, 0x55, 0xbd, - 0xea, 0xee, 0xaa, 0x6e, 0x3b, 0xf1, 0x46, 0xd1, 0xce, 0xac, 0x86, 0x9b, 0xdf, 0xeb, 0x7a, 0xaf, - 0x5e, 0xbd, 0xdf, 0x7b, 0xaf, 0x5e, 0x55, 0x19, 0x3a, 0xb1, 0x77, 0xf2, 0xce, 0x93, 0xf8, 0xb5, - 0x27, 0xf1, 0x56, 0x18, 0xb1, 0x84, 0x59, 0x2b, 0x31, 0x89, 0x4e, 0x49, 0xf4, 0x8e, 0x1b, 0xfa, - 0xef, 0x84, 0x6e, 0xe4, 0x8e, 0x62, 0xfb, 0x5f, 0x26, 0x34, 0xef, 0x46, 0x2c, 0x0d, 0xef, 0xd3, - 0x23, 0x66, 0x75, 0x61, 0x7e, 0x28, 0x88, 0xbd, 0xae, 0xb1, 0x61, 0xdc, 0x68, 0x3a, 0x19, 0x69, - 0x5d, 0x83, 0xa6, 0xf8, 0xf9, 0xc0, 0x1d, 0x91, 0xae, 0x29, 0xbe, 0x15, 0x0c, 0xcb, 0x86, 0x45, - 0xca, 0x12, 0xff, 0xc8, 0x1f, 0xb8, 0x89, 0xcf, 0x68, 0xb7, 0x26, 0x06, 0x68, 0x3c, 0x3e, 0xc6, - 0xa7, 0x49, 0xc4, 0xbc, 0x74, 0x20, 0xc6, 0xcc, 0xe1, 0x18, 0x95, 0xc7, 0xe7, 0x3f, 0x72, 0x07, - 0xe4, 0xb1, 0xb3, 0xdf, 0xad, 0xe3, 0xfc, 0x92, 0xb4, 0x36, 0xa0, 0xc5, 0x9e, 0x50, 0x12, 0x3d, - 0x8e, 0x49, 0x74, 0x7f, 0xaf, 0xdb, 0x10, 0x5f, 0x55, 0x96, 0x75, 0x1d, 0x60, 0x10, 0x11, 0x37, - 0x21, 0x8f, 0xfc, 0x11, 0xe9, 0xce, 0x6f, 0x18, 0x37, 0xda, 0x8e, 0xc2, 0xe1, 0x1a, 0x46, 0x64, - 0x74, 0x48, 0xa2, 0x5d, 0x96, 0xd2, 0xa4, 0xbb, 0x20, 0x06, 0xa8, 0x2c, 0x6b, 0x09, 0x4c, 0xf2, - 0xb4, 0xdb, 0x14, 0xaa, 0x4d, 0xf2, 0xd4, 0x5a, 0x83, 0x46, 0x9c, 0xb8, 0x49, 0x1a, 0x77, 0x61, - 0xc3, 0xb8, 0x51, 0x77, 0x24, 0x65, 0x6d, 0x42, 0x5b, 0xe8, 0x65, 0x99, 0x35, 0x2d, 0x21, 0xa2, - 0x33, 0x73, 0x8f, 0x3d, 0x3a, 0x0b, 0x49, 0x77, 0x51, 0x28, 0x28, 0x18, 0xf6, 0xdf, 0x4c, 0x58, - 0x15, 0x7e, 0xef, 0x09, 0x03, 0xee, 0xa4, 0x41, 0x70, 0x01, 0x02, 0x6b, 0xd0, 0x48, 0x71, 0x3a, - 0x74, 0xbf, 0xa4, 0xf8, 0x3c, 0x11, 0x0b, 0xc8, 0x3e, 0x39, 0x25, 0x81, 0x70, 0x7c, 0xdd, 0x29, - 0x18, 0xd6, 0x3a, 0x2c, 0xbc, 0xcb, 0x7c, 0x2a, 0x7c, 0x32, 0x27, 0x3e, 0xe6, 0x34, 0xff, 0x46, - 0xfd, 0xc1, 0x09, 0xe5, 0x90, 0xa2, 0xbb, 0x73, 0x5a, 0x45, 0xa2, 0xa1, 0x23, 0xf1, 0x0a, 0x2c, - 0xb9, 0x61, 0xd8, 0x73, 0xe9, 0x90, 0x44, 0x38, 0xe9, 0xbc, 0xd0, 0x5b, 0xe2, 0x72, 0x3c, 0xf8, - 0x4c, 0x7d, 0x96, 0x46, 0x03, 0x22, 0xdc, 0x5d, 0x77, 0x14, 0x0e, 0xd7, 0xc3, 0x42, 0x12, 0x29, - 0x6e, 0x44, 0xcf, 0x97, 0xb8, 0x12, 0x15, 0xc8, 0x51, 0xe1, 0x38, 0xa6, 0x09, 0xb9, 0x4d, 0x3d, - 0xb1, 0xa8, 0x96, 0xc4, 0xb1, 0x60, 0xd9, 0x3f, 0x31, 0x60, 0xe9, 0x20, 0x3d, 0x0c, 0xfc, 0x81, - 0x50, 0xc1, 0xdd, 0x5a, 0x38, 0xcf, 0xd0, 0x9c, 0xa7, 0xba, 0xc0, 0x9c, 0xee, 0x82, 0x9a, 0xee, - 0x82, 0x35, 0x68, 0x0c, 0x09, 0xf5, 0x48, 0x24, 0x5d, 0x2a, 0x29, 0x69, 0x6a, 0x3d, 0x33, 0xd5, - 0xfe, 0x85, 0x09, 0x0b, 0x1f, 0xb2, 0x09, 0x1b, 0xd0, 0x0a, 0x8f, 0x19, 0x25, 0x0f, 0x52, 0x1e, - 0x56, 0xd2, 0x16, 0x95, 0x65, 0xbd, 0x04, 0xf5, 0x43, 0x3f, 0x4a, 0x8e, 0x05, 0xae, 0x6d, 0x07, - 0x09, 0xce, 0x25, 0x23, 0xd7, 0x47, 0x30, 0x9b, 0x0e, 0x12, 0x72, 0x41, 0x0b, 0xb9, 0xef, 0xf5, - 0x1c, 0x6b, 0x56, 0x72, 0xac, 0x1a, 0x1b, 0x30, 0x29, 0x36, 0xec, 0x7f, 0x1b, 0x00, 0x77, 0x22, - 0x9f, 0x50, 0x4f, 0xb8, 0xa6, 0x94, 0xdc, 0x46, 0x35, 0xb9, 0xd7, 0xa0, 0x11, 0x91, 0x91, 0x1b, - 0x9d, 0x64, 0xc1, 0x8f, 0x54, 0xc9, 0xa0, 0x5a, 0xc5, 0xa0, 0x37, 0x00, 0x8e, 0xc4, 0x3c, 0x5c, - 0x8f, 0x70, 0x55, 0xeb, 0xe6, 0xa7, 0xb6, 0x2a, 0x65, 0x70, 0x2b, 0x43, 0xc9, 0x51, 0x86, 0xf3, - 0xcc, 0x72, 0x3d, 0x4f, 0x06, 0x70, 0x1d, 0x33, 0x2b, 0x67, 0x4c, 0x88, 0xdf, 0xc6, 0x39, 0xf1, - 0x3b, 0x9f, 0x07, 0xc5, 0x3f, 0x0d, 0x68, 0xee, 0x04, 0xee, 0xe0, 0x64, 0xc6, 0xa5, 0xeb, 0x4b, - 0x34, 0x2b, 0x4b, 0xbc, 0x0b, 0xed, 0x43, 0xae, 0x2e, 0x5b, 0x82, 0xf0, 0x42, 0xeb, 0xe6, 0x67, - 0x26, 0xac, 0x52, 0x4f, 0x0a, 0x47, 0x97, 0xd3, 0x97, 0x3b, 0x77, 0xf1, 0x72, 0xeb, 0xe7, 0x2c, - 0xb7, 0x91, 0x2f, 0xf7, 0xaf, 0x26, 0x2c, 0x8a, 0x42, 0xe7, 0x90, 0x71, 0x4a, 0xe2, 0xc4, 0xfa, - 0x06, 0x2c, 0xa4, 0x99, 0xa9, 0xc6, 0xac, 0xa6, 0xe6, 0x22, 0xd6, 0xeb, 0xb2, 0xac, 0x0a, 0x79, - 0x53, 0xc8, 0x5f, 0x9b, 0x20, 0x9f, 0xef, 0x69, 0x4e, 0x31, 0x9c, 0x6f, 0x41, 0xc7, 0x2e, 0xf5, - 0x02, 0xe2, 0x90, 0x38, 0x0d, 0x12, 0x59, 0x2d, 0x35, 0x1e, 0x46, 0xda, 0xb8, 0x17, 0x0f, 0xe5, - 0x06, 0x25, 0x29, 0xee, 0x1d, 0x1c, 0xc7, 0x3f, 0xe1, 0xd2, 0x0b, 0x06, 0x4f, 0xd4, 0x88, 0x8c, - 0x05, 0x42, 0x98, 0x56, 0x19, 0x59, 0xcc, 0x29, 0xbd, 0x86, 0x81, 0xa0, 0xf1, 0x38, 0xc4, 0x48, - 0x0b, 0x05, 0xb8, 0x33, 0x29, 0x9c, 0xf2, 0xc6, 0x64, 0xff, 0xbd, 0x06, 0x6d, 0x4c, 0x9f, 0xcc, - 0xa9, 0xd7, 0x79, 0x9c, 0xb3, 0x91, 0x16, 0x45, 0x0a, 0x87, 0x5b, 0xc1, 0xa9, 0x07, 0x7a, 0xa1, - 0xd1, 0x78, 0x3c, 0x14, 0x39, 0x7d, 0x47, 0x2b, 0x38, 0x2a, 0x2b, 0x9b, 0xe5, 0xae, 0x5a, 0x78, - 0x14, 0x0e, 0x2f, 0x65, 0x09, 0xd3, 0xa2, 0x23, 0xa7, 0xb9, 0x6c, 0xc2, 0xf2, 0xf9, 0x31, 0x3e, - 0x14, 0x0e, 0xf7, 0x6f, 0xc2, 0xb2, 0xb9, 0xd1, 0x49, 0x05, 0x03, 0x35, 0xcb, 0x79, 0x71, 0x2b, - 0xc9, 0xe9, 0x0a, 0xaa, 0xcd, 0x73, 0x51, 0x05, 0x0d, 0x55, 0x3d, 0xb9, 0x5a, 0x95, 0xe4, 0xda, - 0x84, 0x36, 0xea, 0xc9, 0x82, 0x7e, 0x11, 0xb7, 0x7a, 0x8d, 0xa9, 0xc7, 0x46, 0xbb, 0x1c, 0x1b, - 0x3a, 0xba, 0x4b, 0x53, 0xd0, 0xed, 0xe4, 0xe8, 0xfe, 0x00, 0xba, 0x07, 0x69, 0x10, 0xf4, 0x48, - 0x1c, 0xbb, 0x43, 0xb2, 0x73, 0xd6, 0x27, 0xe3, 0x7d, 0x3f, 0x4e, 0x1c, 0x12, 0x87, 0x3c, 0xce, - 0x48, 0x14, 0xed, 0x32, 0x8f, 0x08, 0x90, 0xeb, 0x4e, 0x46, 0xf2, 0x15, 0x92, 0x28, 0xe2, 0x06, - 0xc8, 0x0a, 0x89, 0x94, 0xb5, 0x05, 0x73, 0x81, 0x1f, 0xf3, 0x58, 0xaf, 0xdd, 0x68, 0xdd, 0x5c, - 0x9f, 0x90, 0x2a, 0xbd, 0x78, 0xb8, 0xe7, 0x26, 0xae, 0x23, 0xc6, 0xd9, 0x23, 0xf8, 0xc4, 0xe4, - 0xd9, 0xc7, 0x53, 0x77, 0x30, 0x5e, 0xc3, 0x44, 0x11, 0xf0, 0x19, 0xcd, 0xdb, 0x13, 0x95, 0xc5, - 0xcd, 0x8e, 0x51, 0x8f, 0xb0, 0xa3, 0xed, 0x64, 0xa4, 0xfd, 0x12, 0x58, 0x77, 0x49, 0xd2, 0x73, - 0x9f, 0x6e, 0x53, 0xaf, 0xe7, 0xd3, 0x3e, 0x19, 0x3b, 0x64, 0x6c, 0xdf, 0x86, 0xd5, 0x0a, 0x37, - 0x0e, 0xb9, 0x01, 0x23, 0xf7, 0x69, 0x9f, 0x8c, 0x85, 0x01, 0x6d, 0x47, 0x52, 0x82, 0x2f, 0x46, - 0xc9, 0xf2, 0x28, 0x29, 0x7b, 0x0c, 0x1d, 0x8e, 0x50, 0x9f, 0x50, 0xaf, 0x17, 0x0f, 0x85, 0x8a, - 0x0d, 0x68, 0xa1, 0x07, 0x7a, 0xf1, 0xb0, 0xa8, 0xb7, 0x0a, 0x8b, 0x8f, 0x18, 0x04, 0x3e, 0xa1, - 0x09, 0x8e, 0x90, 0xab, 0x51, 0x58, 0x3c, 0x18, 0x63, 0x22, 0xdb, 0x0f, 0x9e, 0x25, 0x35, 0x27, - 0xa7, 0xed, 0x3f, 0xd5, 0x61, 0x5e, 0x3a, 0x54, 0xf4, 0x8f, 0x7c, 0x8b, 0xcb, 0xfd, 0x85, 0x14, - 0x06, 0xe3, 0xe0, 0xb4, 0xe8, 0xe4, 0x90, 0x52, 0x7b, 0xbf, 0x9a, 0xde, 0xfb, 0x95, 0x6c, 0x9a, - 0xab, 0xda, 0x54, 0x5a, 0x57, 0xbd, 0xba, 0xae, 0x57, 0x61, 0x39, 0x16, 0x09, 0x73, 0x10, 0xb8, - 0xc9, 0x11, 0x8b, 0x46, 0x72, 0xc7, 0xaa, 0x3b, 0x15, 0x3e, 0x2f, 0xf6, 0xc8, 0xcb, 0x13, 0x16, - 0x33, 0xb2, 0xc4, 0xe5, 0xe9, 0x81, 0x9c, 0x2c, 0x71, 0xb1, 0x55, 0xd0, 0x99, 0x68, 0x5b, 0x1c, - 0xfb, 0x8c, 0x8a, 0x5e, 0x18, 0xf3, 0x53, 0x65, 0xf1, 0x95, 0x8f, 0xe2, 0xe1, 0x9d, 0x88, 0x8d, - 0x64, 0xc3, 0x90, 0x91, 0x62, 0xe5, 0x8c, 0x26, 0x84, 0x26, 0x42, 0xb6, 0x85, 0xb2, 0x0a, 0x8b, - 0xcb, 0x4a, 0x52, 0x24, 0xe7, 0xa2, 0x93, 0x91, 0xd6, 0x32, 0xd4, 0x62, 0x32, 0x96, 0x19, 0xc7, - 0x7f, 0x6a, 0xc8, 0x75, 0x74, 0xe4, 0x4a, 0xa5, 0x60, 0x59, 0x7c, 0x55, 0x4b, 0x41, 0x71, 0x1a, - 0x58, 0xd1, 0x4e, 0x03, 0xdb, 0x30, 0xcf, 0x42, 0x1e, 0xe7, 0x71, 0xd7, 0x12, 0x39, 0xf6, 0xd9, - 0xe9, 0x39, 0xb6, 0xf5, 0x10, 0x47, 0xde, 0xa6, 0x49, 0x74, 0xe6, 0x64, 0x72, 0xd6, 0x3e, 0x74, - 0xd8, 0xd1, 0x51, 0xe0, 0x53, 0x72, 0x90, 0xc6, 0xc7, 0x62, 0x67, 0x5b, 0x15, 0x3b, 0x9b, 0x3d, - 0x41, 0xd5, 0x43, 0x7d, 0xa4, 0x53, 0x16, 0x5d, 0x7f, 0x1d, 0x16, 0xd5, 0x69, 0xb8, 0x1b, 0x4e, - 0xc8, 0x99, 0x8c, 0x41, 0xfe, 0x93, 0x37, 0x7b, 0xa7, 0x6e, 0x90, 0xe2, 0x36, 0xb0, 0xe0, 0x20, - 0xf1, 0xba, 0xf9, 0x55, 0xc3, 0xfe, 0xb9, 0x01, 0x9d, 0xd2, 0x04, 0x7c, 0x74, 0xe2, 0x27, 0x01, - 0x91, 0x1a, 0x90, 0xb0, 0x2c, 0x98, 0xf3, 0x48, 0x3c, 0x90, 0x21, 0x2c, 0x7e, 0xcb, 0x4a, 0x56, - 0xcb, 0xdb, 0x45, 0x7e, 0xe4, 0x7b, 0xd8, 0xe7, 0x8a, 0xfa, 0x2c, 0xa5, 0x5e, 0x7e, 0xe4, 0x53, - 0x78, 0x3c, 0x84, 0xfc, 0x87, 0xfd, 0x1d, 0xd7, 0x1b, 0x12, 0x3c, 0x98, 0xd5, 0x85, 0x4d, 0x3a, - 0xd3, 0xf6, 0x60, 0xe1, 0x91, 0x1f, 0xc6, 0xbb, 0x6c, 0x34, 0xe2, 0x40, 0x78, 0x24, 0xe1, 0xbd, - 0xaa, 0x21, 0xf0, 0x96, 0x14, 0x0f, 0x15, 0x8f, 0x1c, 0xb9, 0x69, 0x90, 0xf0, 0xa1, 0x59, 0xe2, - 0x2a, 0x2c, 0x71, 0x24, 0x89, 0x19, 0xdd, 0x43, 0x69, 0xb4, 0x53, 0xe1, 0xd8, 0x7f, 0x31, 0x61, - 0x59, 0x34, 0x0e, 0xbb, 0x02, 0x76, 0x4f, 0x08, 0xdd, 0x84, 0xba, 0x48, 0x43, 0xd9, 0xac, 0x9c, - 0xdf, 0x6c, 0xe0, 0x50, 0xeb, 0x16, 0x34, 0x58, 0x28, 0x5a, 0x4e, 0xec, 0x50, 0x5e, 0x99, 0x26, - 0xa4, 0x9f, 0xfe, 0x1c, 0x29, 0x65, 0xdd, 0x01, 0xc0, 0x83, 0xe9, 0x7e, 0x51, 0xba, 0x67, 0xd5, - 0xa1, 0x48, 0x72, 0xe7, 0xe6, 0x65, 0x38, 0x3f, 0x02, 0xd6, 0x1c, 0x9d, 0x69, 0x3d, 0x80, 0x25, - 0x61, 0xf6, 0xc3, 0xac, 0xeb, 0x14, 0x18, 0xcc, 0x3e, 0x63, 0x49, 0xda, 0xfe, 0xb5, 0x21, 0xdd, - 0xc8, 0xbf, 0xf6, 0x09, 0xfa, 0xbe, 0x70, 0x89, 0x71, 0x29, 0x97, 0xac, 0xc3, 0x02, 0x3f, 0xe3, - 0xe5, 0x4d, 0x70, 0xcd, 0xc9, 0xe9, 0x02, 0xa2, 0xda, 0xcc, 0x10, 0xd9, 0xbf, 0x31, 0xa0, 0xfb, - 0x26, 0xf3, 0xa9, 0xf8, 0xb0, 0x1d, 0x86, 0x81, 0xbc, 0xa7, 0xb8, 0x34, 0xe6, 0xdf, 0x84, 0xa6, - 0x8b, 0x6a, 0x68, 0x22, 0x61, 0x9f, 0xa1, 0xb1, 0x2d, 0x64, 0x94, 0x1e, 0xa5, 0xa6, 0xf6, 0x28, - 0xf6, 0x7b, 0x06, 0x2c, 0xa1, 0x53, 0xde, 0x4a, 0xfd, 0xe4, 0xd2, 0xf6, 0xed, 0xc0, 0xc2, 0x38, - 0xf5, 0x93, 0x4b, 0x44, 0x65, 0x2e, 0x57, 0x8d, 0xa7, 0xda, 0x84, 0x78, 0xb2, 0xdf, 0x37, 0xe0, - 0x5a, 0xd9, 0xad, 0xdb, 0x83, 0x01, 0x09, 0x9f, 0x65, 0x4a, 0x69, 0x3d, 0xda, 0x5c, 0xa9, 0x47, - 0x9b, 0x68, 0xb2, 0x43, 0xde, 0x25, 0x83, 0xe7, 0xd7, 0xe4, 0x1f, 0x9b, 0xf0, 0xc9, 0xbb, 0x79, - 0xe2, 0x3d, 0x8a, 0x5c, 0x1a, 0x1f, 0x91, 0x28, 0x7a, 0x86, 0xf6, 0xee, 0x43, 0x9b, 0x92, 0x27, - 0x85, 0x4d, 0x32, 0x1d, 0x67, 0x55, 0xa3, 0x0b, 0xcf, 0x56, 0xbb, 0xec, 0xff, 0x18, 0xb0, 0x8c, - 0x7a, 0xbe, 0xe5, 0x0f, 0x4e, 0x9e, 0xe1, 0xe2, 0x1f, 0xc0, 0xd2, 0x89, 0xb0, 0x80, 0x53, 0x97, - 0x28, 0xdb, 0x25, 0xe9, 0x19, 0x97, 0xff, 0x5f, 0x03, 0x56, 0x50, 0xd1, 0x7d, 0x7a, 0xea, 0x3f, - 0xcb, 0x60, 0x3d, 0x80, 0x8e, 0x8f, 0x26, 0x5c, 0xd2, 0x01, 0x65, 0xf1, 0x19, 0x3d, 0xf0, 0x47, - 0x03, 0x3a, 0xa8, 0xe9, 0x36, 0x4d, 0x48, 0x74, 0xe9, 0xf5, 0xdf, 0x83, 0x16, 0xa1, 0x49, 0xe4, - 0xd2, 0xcb, 0x54, 0x48, 0x55, 0x74, 0xc6, 0x22, 0xf9, 0x9e, 0x01, 0x96, 0x50, 0xb5, 0xe7, 0xc7, - 0x23, 0x3f, 0x8e, 0x9f, 0x21, 0x74, 0xb3, 0x19, 0xfc, 0x4b, 0x13, 0x5e, 0x52, 0xb4, 0xf4, 0xd2, - 0xe4, 0x79, 0x37, 0xd9, 0xda, 0x83, 0x26, 0xef, 0x11, 0xd4, 0xcb, 0xbf, 0x59, 0x27, 0x2a, 0x04, - 0x79, 0x17, 0x2b, 0x88, 0x3e, 0x19, 0x30, 0xea, 0xc5, 0xa2, 0x39, 0x6a, 0x3b, 0x1a, 0x8f, 0x97, - 0xa1, 0x75, 0x45, 0xcd, 0xae, 0x4b, 0x07, 0x24, 0x78, 0x61, 0x5c, 0x64, 0xff, 0xce, 0x80, 0x25, - 0x1c, 0xf2, 0xfc, 0x2f, 0x99, 0xef, 0xf5, 0x18, 0xc8, 0x1f, 0x19, 0x94, 0xec, 0x13, 0x58, 0xc1, - 0xfb, 0x3e, 0xa5, 0x3d, 0xe1, 0x07, 0x5f, 0xd7, 0xc3, 0xb3, 0xac, 0x21, 0x84, 0x32, 0x52, 0xbf, - 0xc9, 0x95, 0x8f, 0x75, 0xc5, 0x4d, 0xee, 0x75, 0x00, 0xd7, 0xf3, 0xde, 0x66, 0x91, 0xe7, 0xd3, - 0xac, 0xd7, 0x54, 0x38, 0xf6, 0x9b, 0xb0, 0xc8, 0x8f, 0xde, 0x8f, 0x94, 0x9b, 0xbb, 0x73, 0xef, - 0x16, 0xd5, 0x5b, 0x3f, 0x53, 0xbf, 0xf5, 0xb3, 0xbf, 0x0f, 0x1f, 0xaf, 0x18, 0x2e, 0x7c, 0xbd, - 0x8b, 0x17, 0x92, 0xd9, 0x24, 0xd2, 0xe5, 0x9f, 0x9e, 0xe0, 0x3d, 0xd5, 0x16, 0x47, 0x13, 0xb2, - 0x7f, 0x64, 0xc0, 0xcb, 0x15, 0xf5, 0xdb, 0x61, 0x18, 0xb1, 0x53, 0x09, 0xe9, 0x55, 0x4c, 0xa3, - 0xf7, 0x61, 0x66, 0xb9, 0x0f, 0x9b, 0x68, 0x84, 0xd6, 0x3b, 0x7e, 0x08, 0x46, 0xfc, 0xd6, 0x80, - 0x8e, 0x34, 0xc2, 0xf3, 0xe4, 0xb4, 0x5f, 0x81, 0x06, 0x3e, 0x66, 0xc8, 0x09, 0x5f, 0x9e, 0x38, - 0x61, 0xf6, 0x08, 0xe3, 0xc8, 0xc1, 0xd5, 0x88, 0x34, 0x27, 0xd5, 0x8d, 0xaf, 0xe5, 0x71, 0x3f, - 0xf3, 0x73, 0x83, 0x14, 0xb0, 0xbf, 0x93, 0x05, 0xf3, 0x1e, 0x09, 0xc8, 0x55, 0xfa, 0xc8, 0x7e, - 0x0c, 0x4b, 0xe2, 0x65, 0xa5, 0xf0, 0xc1, 0x95, 0xa8, 0x7d, 0x1b, 0x96, 0x85, 0xda, 0x2b, 0xb7, - 0x37, 0xcf, 0x0e, 0xee, 0x9f, 0xdd, 0x63, 0x97, 0x0e, 0xaf, 0x52, 0xfb, 0x17, 0x61, 0x35, 0xf3, - 0xfd, 0xe3, 0xd0, 0xcb, 0xef, 0x33, 0xa6, 0xdc, 0xe2, 0xda, 0x5f, 0x82, 0xb5, 0x5d, 0x46, 0x4f, - 0x49, 0x14, 0x0b, 0x94, 0x51, 0x24, 0x93, 0xd0, 0x92, 0x5f, 0x52, 0x76, 0x1f, 0x56, 0xe4, 0xfb, - 0xc3, 0x81, 0x3b, 0xf4, 0x29, 0x56, 0xa5, 0xeb, 0x00, 0xa1, 0x3b, 0xcc, 0xde, 0x1f, 0xf1, 0x92, - 0x5a, 0xe1, 0xf0, 0xef, 0xf1, 0x31, 0x7b, 0x22, 0xbf, 0x9b, 0xf8, 0xbd, 0xe0, 0xd8, 0xdf, 0x06, - 0xcb, 0x21, 0x71, 0xc8, 0x68, 0x4c, 0x14, 0xad, 0x1b, 0xd0, 0xda, 0x4d, 0xa3, 0x88, 0x50, 0x3e, - 0x55, 0xf6, 0x18, 0xa7, 0xb2, 0xb8, 0xde, 0x7e, 0xa1, 0x17, 0x2f, 0x36, 0x15, 0x8e, 0xfd, 0xab, - 0x1a, 0x34, 0xfb, 0xfe, 0x90, 0xba, 0x81, 0x43, 0xc6, 0xd6, 0xd7, 0xa1, 0x81, 0xed, 0xa6, 0x74, - 0xed, 0xa4, 0x8b, 0x36, 0x1c, 0x8d, 0x7d, 0xb5, 0x43, 0xc6, 0xf7, 0x3e, 0xe6, 0x48, 0x19, 0xeb, - 0x2d, 0x68, 0xe3, 0xaf, 0xfb, 0x78, 0x7d, 0x20, 0x6b, 0xff, 0xe7, 0x2e, 0x50, 0x22, 0x47, 0xa3, - 0x2e, 0x5d, 0x03, 0x37, 0x68, 0x20, 0xb6, 0x23, 0x99, 0x4f, 0xd3, 0x0d, 0xc2, 0x5d, 0x4b, 0x1a, - 0x84, 0x32, 0x5c, 0xda, 0x15, 0x07, 0x6c, 0xb9, 0x85, 0x4f, 0x97, 0xc6, 0x73, 0xb8, 0x94, 0x46, - 0x19, 0x2e, 0x7d, 0x9c, 0xd2, 0xe1, 0xe3, 0x50, 0xde, 0xfb, 0x4c, 0x97, 0xbe, 0x27, 0x86, 0x49, - 0x69, 0x94, 0xe1, 0xd2, 0x91, 0xa8, 0x76, 0xc2, 0xe9, 0xe7, 0x49, 0x63, 0x51, 0x94, 0xd2, 0x28, - 0xb3, 0xd3, 0x84, 0xf9, 0xd0, 0x3d, 0x0b, 0x98, 0xeb, 0xd9, 0xbf, 0xaf, 0x01, 0x64, 0x03, 0x63, - 0xb1, 0xb3, 0x6a, 0x10, 0x6d, 0x5e, 0x08, 0x51, 0x18, 0x9c, 0x29, 0x20, 0xf5, 0x27, 0x83, 0xf4, - 0xf9, 0x59, 0x41, 0x42, 0x6d, 0x25, 0x98, 0x6e, 0x95, 0x60, 0xda, 0xbc, 0x10, 0x26, 0x69, 0x94, - 0x04, 0xea, 0x56, 0x09, 0xa8, 0xcd, 0x0b, 0x81, 0x92, 0xf2, 0x12, 0xaa, 0x5b, 0x25, 0xa8, 0x36, - 0x2f, 0x84, 0x4a, 0xca, 0x4b, 0xb0, 0x6e, 0x95, 0xc0, 0xda, 0xbc, 0x10, 0x2c, 0x29, 0x5f, 0x85, - 0xeb, 0x7d, 0x13, 0x96, 0x84, 0xcb, 0xf0, 0x91, 0x87, 0x1e, 0x31, 0x71, 0x97, 0x2b, 0xdc, 0xa5, - 0x3f, 0x67, 0xeb, 0x4c, 0xeb, 0x0b, 0xb0, 0x82, 0x0c, 0xf9, 0xfc, 0x29, 0xce, 0x8a, 0xe6, 0x46, - 0xed, 0x46, 0xd3, 0xa9, 0x7e, 0x10, 0xd7, 0xf2, 0x69, 0x9c, 0xb0, 0xd1, 0x9e, 0x9b, 0xb8, 0x59, - 0xb7, 0x52, 0x70, 0xd4, 0x47, 0x93, 0xb9, 0xca, 0x1f, 0x66, 0x22, 0xc6, 0x46, 0xf9, 0x6b, 0x88, - 0xa4, 0xb8, 0x44, 0xe2, 0x8f, 0x08, 0x4b, 0x13, 0x59, 0x26, 0x32, 0x92, 0xef, 0xb1, 0x23, 0xe2, - 0xf9, 0xae, 0x78, 0x6a, 0x90, 0x6f, 0x90, 0x39, 0x43, 0x54, 0xb6, 0xe2, 0xe9, 0x44, 0xfe, 0xa1, - 0xa5, 0xe0, 0x5c, 0xfc, 0xcc, 0x61, 0xff, 0xc3, 0x80, 0xd5, 0x03, 0x37, 0x4a, 0xfc, 0x81, 0x1f, - 0xba, 0x34, 0xe9, 0x91, 0xc4, 0x15, 0x6b, 0xd0, 0xde, 0xb4, 0x8d, 0x0f, 0xf6, 0xa6, 0x7d, 0x00, - 0x9d, 0x61, 0xd1, 0x5f, 0x2a, 0xaf, 0xe2, 0x33, 0x9f, 0xbb, 0x4b, 0xe2, 0xda, 0x03, 0x7d, 0xed, - 0x03, 0x3f, 0xd0, 0xdb, 0x3f, 0x35, 0xa1, 0x53, 0x2a, 0x9d, 0xbc, 0x45, 0xc4, 0xcd, 0x3f, 0x8f, - 0x89, 0x9c, 0xb6, 0xb6, 0x01, 0xfc, 0x3c, 0x8c, 0xce, 0xb9, 0x38, 0xd5, 0x63, 0xcd, 0x51, 0x84, - 0x26, 0xbd, 0x9f, 0xd4, 0x2e, 0xfd, 0x7e, 0x62, 0xdd, 0x83, 0x56, 0x58, 0x80, 0x74, 0xce, 0xa1, - 0x68, 0x02, 0x94, 0x8e, 0x2a, 0x6a, 0x7f, 0x0f, 0x56, 0x2a, 0x15, 0x4a, 0x3c, 0xa7, 0xb0, 0x13, - 0x42, 0xf3, 0xe7, 0x14, 0x4e, 0x28, 0xc1, 0x6a, 0x96, 0x83, 0x35, 0xf0, 0x4f, 0xd5, 0x7f, 0x00, - 0x49, 0xd2, 0xfe, 0x99, 0x09, 0x6b, 0x93, 0x77, 0x97, 0x17, 0xd5, 0xdd, 0x87, 0xd0, 0x9d, 0x56, - 0xc9, 0xaf, 0xcc, 0xeb, 0x45, 0x74, 0xe7, 0xfb, 0xf0, 0x8b, 0xea, 0xee, 0xd5, 0x2c, 0xba, 0x95, - 0xad, 0xce, 0xfe, 0x43, 0xee, 0x9f, 0xbc, 0xd3, 0x78, 0x41, 0xfd, 0x63, 0xbd, 0x0a, 0xcb, 0xb8, - 0x4c, 0xe5, 0xc1, 0x1d, 0x1b, 0xd7, 0x0a, 0xbf, 0xa8, 0x14, 0xca, 0xb6, 0x7f, 0x65, 0x31, 0xfb, - 0x67, 0x23, 0xc3, 0x24, 0xef, 0xdf, 0x3e, 0x52, 0x98, 0x14, 0x91, 0xa6, 0x34, 0x35, 0x4a, 0xa4, - 0xe5, 0x7d, 0xe5, 0xff, 0x23, 0xed, 0xe2, 0x48, 0xcb, 0x7d, 0xa9, 0x34, 0x78, 0xf6, 0x0f, 0xa1, - 0xbd, 0x47, 0x82, 0x5e, 0x3c, 0xcc, 0xfe, 0xea, 0x73, 0x9e, 0x23, 0xa7, 0xfd, 0x11, 0x79, 0xea, - 0x9f, 0x7c, 0xca, 0x7f, 0x10, 0x9a, 0xab, 0xfc, 0x41, 0xc8, 0xde, 0x81, 0x25, 0xd5, 0x80, 0xcb, - 0xfc, 0xd3, 0x69, 0xe7, 0xda, 0x77, 0xd7, 0xb7, 0x5e, 0xc3, 0xbf, 0xbc, 0xbf, 0x51, 0x71, 0xe2, - 0x61, 0x43, 0xfc, 0x05, 0xfe, 0xcb, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x93, 0x6d, 0x96, 0x68, - 0x15, 0x2f, 0x00, 0x00, +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_331bd590ecfeca43) } + +var fileDescriptor_ws_331bd590ecfeca43 = []byte{ + // 2713 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x6f, 0xe4, 0x48, + 0x15, 0xc7, 0xee, 0x74, 0x27, 0xfd, 0x3a, 0x9d, 0x0f, 0x67, 0x08, 0x4d, 0x98, 0x1d, 0x82, 0x15, + 0x2d, 0xc3, 0x02, 0x59, 0x34, 0x08, 0x09, 0x66, 0x61, 0x50, 0x3e, 0xe6, 0x6b, 0x49, 0xcf, 0x64, + 0xdd, 0x33, 0x2c, 0x02, 0xa4, 0x91, 0xd3, 0xae, 0x74, 0x3c, 0x71, 0x97, 0xdd, 0x2e, 0x3b, 0x33, + 0x91, 0x90, 0x90, 0x40, 0x42, 0xdc, 0x38, 0xc1, 0x81, 0x0b, 0x12, 0x17, 0x04, 0x42, 0xab, 0x3d, + 0xc0, 0x0d, 0x71, 0xe2, 0x1f, 0xe0, 0x88, 0xb8, 0x71, 0xe6, 0xca, 0x01, 0x09, 0x09, 0x54, 0xf5, + 0xca, 0x76, 0x95, 0xdd, 0x9d, 0xf4, 0x46, 0xd1, 0xce, 0xac, 0x86, 0x5b, 0xbf, 0xd7, 0xf5, 0x5e, + 0xbd, 0x7a, 0xbf, 0xf7, 0x5e, 0xbd, 0xaa, 0x32, 0x2c, 0x32, 0xef, 0xf8, 0xc9, 0x33, 0xf6, 0xe6, + 0x33, 0xb6, 0x19, 0xc5, 0x61, 0x12, 0x5a, 0xcb, 0x8c, 0xc4, 0x27, 0x24, 0x7e, 0xe2, 0x46, 0xfe, + 0x93, 0xc8, 0x8d, 0xdd, 0x21, 0xb3, 0xff, 0x65, 0x42, 0xf3, 0x6e, 0x1c, 0xa6, 0xd1, 0x7d, 0x7a, + 0x18, 0x5a, 0x1d, 0x98, 0x1d, 0x08, 0x62, 0xb7, 0x63, 0xac, 0x1b, 0xd7, 0x9b, 0x4e, 0x46, 0x5a, + 0x57, 0xa1, 0x29, 0x7e, 0x3e, 0x70, 0x87, 0xa4, 0x63, 0x8a, 0xff, 0x0a, 0x86, 0x65, 0xc3, 0x3c, + 0x0d, 0x13, 0xff, 0xd0, 0xef, 0xbb, 0x89, 0x1f, 0xd2, 0x4e, 0x4d, 0x0c, 0xd0, 0x78, 0x7c, 0x8c, + 0x4f, 0x93, 0x38, 0xf4, 0xd2, 0xbe, 0x18, 0x33, 0x83, 0x63, 0x54, 0x1e, 0x9f, 0xff, 0xd0, 0xed, + 0x93, 0xc7, 0xce, 0x5e, 0xa7, 0x8e, 0xf3, 0x4b, 0xd2, 0x5a, 0x87, 0x56, 0xf8, 0x8c, 0x92, 0xf8, + 0x31, 0x23, 0xf1, 0xfd, 0xdd, 0x4e, 0x43, 0xfc, 0xab, 0xb2, 0xac, 0x6b, 0x00, 0xfd, 0x98, 0xb8, + 0x09, 0x79, 0xe4, 0x0f, 0x49, 0x67, 0x76, 0xdd, 0xb8, 0xde, 0x76, 0x14, 0x0e, 0xd7, 0x30, 0x24, + 0xc3, 0x03, 0x12, 0xef, 0x84, 0x29, 0x4d, 0x3a, 0x73, 0x62, 0x80, 0xca, 0xb2, 0x16, 0xc0, 0x24, + 0xcf, 0x3b, 0x4d, 0xa1, 0xda, 0x24, 0xcf, 0xad, 0x55, 0x68, 0xb0, 0xc4, 0x4d, 0x52, 0xd6, 0x81, + 0x75, 0xe3, 0x7a, 0xdd, 0x91, 0x94, 0xb5, 0x01, 0x6d, 0xa1, 0x37, 0xcc, 0xac, 0x69, 0x09, 0x11, + 0x9d, 0x99, 0x7b, 0xec, 0xd1, 0x69, 0x44, 0x3a, 0xf3, 0x42, 0x41, 0xc1, 0xb0, 0xff, 0x66, 0xc2, + 0x8a, 0xf0, 0x7b, 0x57, 0x18, 0x70, 0x27, 0x0d, 0x82, 0x73, 0x10, 0x58, 0x85, 0x46, 0x8a, 0xd3, + 0xa1, 0xfb, 0x25, 0xc5, 0xe7, 0x89, 0xc3, 0x80, 0xec, 0x91, 0x13, 0x12, 0x08, 0xc7, 0xd7, 0x9d, + 0x82, 0x61, 0xad, 0xc1, 0xdc, 0xd3, 0xd0, 0xa7, 0xc2, 0x27, 0x33, 0xe2, 0xcf, 0x9c, 0xe6, 0xff, + 0x51, 0xbf, 0x7f, 0x4c, 0x39, 0xa4, 0xe8, 0xee, 0x9c, 0x56, 0x91, 0x68, 0xe8, 0x48, 0xbc, 0x0e, + 0x0b, 0x6e, 0x14, 0x75, 0x5d, 0x3a, 0x20, 0x31, 0x4e, 0x3a, 0x2b, 0xf4, 0x96, 0xb8, 0x1c, 0x0f, + 0x3e, 0x53, 0x2f, 0x4c, 0xe3, 0x3e, 0x11, 0xee, 0xae, 0x3b, 0x0a, 0x87, 0xeb, 0x09, 0x23, 0x12, + 0x2b, 0x6e, 0x44, 0xcf, 0x97, 0xb8, 0x12, 0x15, 0xc8, 0x51, 0xe1, 0x38, 0xa6, 0x09, 0xb9, 0x4d, + 0x3d, 0xb1, 0xa8, 0x96, 0xc4, 0xb1, 0x60, 0xd9, 0x3f, 0x31, 0x60, 0x61, 0x3f, 0x3d, 0x08, 0xfc, + 0xbe, 0x50, 0xc1, 0xdd, 0x5a, 0x38, 0xcf, 0xd0, 0x9c, 0xa7, 0xba, 0xc0, 0x9c, 0xec, 0x82, 0x9a, + 0xee, 0x82, 0x55, 0x68, 0x0c, 0x08, 0xf5, 0x48, 0x2c, 0x5d, 0x2a, 0x29, 0x69, 0x6a, 0x3d, 0x33, + 0xd5, 0xfe, 0x85, 0x09, 0x73, 0x1f, 0xb2, 0x09, 0xeb, 0xd0, 0x8a, 0x8e, 0x42, 0x4a, 0x1e, 0xa4, + 0x3c, 0xac, 0xa4, 0x2d, 0x2a, 0xcb, 0xba, 0x02, 0xf5, 0x03, 0x3f, 0x4e, 0x8e, 0x04, 0xae, 0x6d, + 0x07, 0x09, 0xce, 0x25, 0x43, 0xd7, 0x47, 0x30, 0x9b, 0x0e, 0x12, 0x72, 0x41, 0x73, 0xb9, 0xef, + 0xf5, 0x1c, 0x6b, 0x56, 0x72, 0xac, 0x1a, 0x1b, 0x30, 0x2e, 0x36, 0xec, 0x7f, 0x1b, 0x00, 0x77, + 0x62, 0x9f, 0x50, 0x4f, 0xb8, 0xa6, 0x94, 0xdc, 0x46, 0x35, 0xb9, 0x57, 0xa1, 0x11, 0x93, 0xa1, + 0x1b, 0x1f, 0x67, 0xc1, 0x8f, 0x54, 0xc9, 0xa0, 0x5a, 0xc5, 0xa0, 0xb7, 0x00, 0x0e, 0xc5, 0x3c, + 0x5c, 0x8f, 0x70, 0x55, 0xeb, 0xc6, 0xa7, 0x36, 0x2b, 0x65, 0x70, 0x33, 0x43, 0xc9, 0x51, 0x86, + 0xf3, 0xcc, 0x72, 0x3d, 0x4f, 0x06, 0x70, 0x1d, 0x33, 0x2b, 0x67, 0x8c, 0x89, 0xdf, 0xc6, 0x19, + 0xf1, 0x3b, 0x9b, 0x07, 0xc5, 0x3f, 0x0d, 0x68, 0x6e, 0x07, 0x6e, 0xff, 0x78, 0xca, 0xa5, 0xeb, + 0x4b, 0x34, 0x2b, 0x4b, 0xbc, 0x0b, 0xed, 0x03, 0xae, 0x2e, 0x5b, 0x82, 0xf0, 0x42, 0xeb, 0xc6, + 0x67, 0xc6, 0xac, 0x52, 0x4f, 0x0a, 0x47, 0x97, 0xd3, 0x97, 0x3b, 0x73, 0xfe, 0x72, 0xeb, 0x67, + 0x2c, 0xb7, 0x91, 0x2f, 0xf7, 0xaf, 0x26, 0xcc, 0x8b, 0x42, 0xe7, 0x90, 0x51, 0x4a, 0x58, 0x62, + 0x7d, 0x03, 0xe6, 0xd2, 0xcc, 0x54, 0x63, 0x5a, 0x53, 0x73, 0x11, 0xeb, 0xa6, 0x2c, 0xab, 0x42, + 0xde, 0x14, 0xf2, 0x57, 0xc7, 0xc8, 0xe7, 0x7b, 0x9a, 0x53, 0x0c, 0xe7, 0x5b, 0xd0, 0x91, 0x4b, + 0xbd, 0x80, 0x38, 0x84, 0xa5, 0x41, 0x22, 0xab, 0xa5, 0xc6, 0xc3, 0x48, 0x1b, 0x75, 0xd9, 0x40, + 0x6e, 0x50, 0x92, 0xe2, 0xde, 0xc1, 0x71, 0xfc, 0x2f, 0x5c, 0x7a, 0xc1, 0xe0, 0x89, 0x1a, 0x93, + 0x91, 0x40, 0x08, 0xd3, 0x2a, 0x23, 0x8b, 0x39, 0xa5, 0xd7, 0x30, 0x10, 0x34, 0x1e, 0x87, 0x18, + 0x69, 0xa1, 0x00, 0x77, 0x26, 0x85, 0x53, 0xde, 0x98, 0xec, 0xbf, 0xd7, 0xa0, 0x8d, 0xe9, 0x93, + 0x39, 0xf5, 0x1a, 0x8f, 0xf3, 0x70, 0xa8, 0x45, 0x91, 0xc2, 0xe1, 0x56, 0x70, 0xea, 0x81, 0x5e, + 0x68, 0x34, 0x1e, 0x0f, 0x45, 0x4e, 0xdf, 0xd1, 0x0a, 0x8e, 0xca, 0xca, 0x66, 0xb9, 0xab, 0x16, + 0x1e, 0x85, 0xc3, 0x4b, 0x59, 0x12, 0x6a, 0xd1, 0x91, 0xd3, 0x5c, 0x36, 0x09, 0xf3, 0xf9, 0x31, + 0x3e, 0x14, 0x0e, 0xf7, 0x6f, 0x12, 0x66, 0x73, 0xa3, 0x93, 0x0a, 0x06, 0x6a, 0x96, 0xf3, 0xe2, + 0x56, 0x92, 0xd3, 0x15, 0x54, 0x9b, 0x67, 0xa2, 0x0a, 0x1a, 0xaa, 0x7a, 0x72, 0xb5, 0x2a, 0xc9, + 0xb5, 0x01, 0x6d, 0xd4, 0x93, 0x05, 0xfd, 0x3c, 0x6e, 0xf5, 0x1a, 0x53, 0x8f, 0x8d, 0x76, 0x39, + 0x36, 0x74, 0x74, 0x17, 0x26, 0xa0, 0xbb, 0x98, 0xa3, 0xfb, 0x03, 0xe8, 0xec, 0xa7, 0x41, 0xd0, + 0x25, 0x8c, 0xb9, 0x03, 0xb2, 0x7d, 0xda, 0x23, 0xa3, 0x3d, 0x9f, 0x25, 0x0e, 0x61, 0x11, 0x8f, + 0x33, 0x12, 0xc7, 0x3b, 0xa1, 0x47, 0x04, 0xc8, 0x75, 0x27, 0x23, 0xf9, 0x0a, 0x49, 0x1c, 0x73, + 0x03, 0x64, 0x85, 0x44, 0xca, 0xda, 0x84, 0x99, 0xc0, 0x67, 0x3c, 0xd6, 0x6b, 0xd7, 0x5b, 0x37, + 0xd6, 0xc6, 0xa4, 0x4a, 0x97, 0x0d, 0x76, 0xdd, 0xc4, 0x75, 0xc4, 0x38, 0x7b, 0x08, 0x9f, 0x18, + 0x3f, 0xfb, 0x68, 0xe2, 0x0e, 0xc6, 0x6b, 0x98, 0x28, 0x02, 0x7e, 0x48, 0xf3, 0xf6, 0x44, 0x65, + 0x71, 0xb3, 0x19, 0xea, 0x11, 0x76, 0xb4, 0x9d, 0x8c, 0xb4, 0xaf, 0x80, 0x75, 0x97, 0x24, 0x5d, + 0xf7, 0xf9, 0x16, 0xf5, 0xba, 0x3e, 0xed, 0x91, 0x91, 0x43, 0x46, 0xf6, 0x6d, 0x58, 0xa9, 0x70, + 0x59, 0xc4, 0x0d, 0x18, 0xba, 0xcf, 0x7b, 0x64, 0x24, 0x0c, 0x68, 0x3b, 0x92, 0x12, 0x7c, 0x31, + 0x4a, 0x96, 0x47, 0x49, 0xd9, 0x23, 0x58, 0xe4, 0x08, 0xf5, 0x08, 0xf5, 0xba, 0x6c, 0x20, 0x54, + 0xac, 0x43, 0x0b, 0x3d, 0xd0, 0x65, 0x83, 0xa2, 0xde, 0x2a, 0x2c, 0x3e, 0xa2, 0x1f, 0xf8, 0x84, + 0x26, 0x38, 0x42, 0xae, 0x46, 0x61, 0xf1, 0x60, 0x64, 0x44, 0xb6, 0x1f, 0x3c, 0x4b, 0x6a, 0x4e, + 0x4e, 0xdb, 0x7f, 0xaa, 0xc3, 0xac, 0x74, 0xa8, 0xe8, 0x1f, 0xf9, 0x16, 0x97, 0xfb, 0x0b, 0x29, + 0x0c, 0xc6, 0xfe, 0x49, 0xd1, 0xc9, 0x21, 0xa5, 0xf6, 0x7e, 0x35, 0xbd, 0xf7, 0x2b, 0xd9, 0x34, + 0x53, 0xb5, 0xa9, 0xb4, 0xae, 0x7a, 0x75, 0x5d, 0x6f, 0xc0, 0x12, 0x13, 0x09, 0xb3, 0x1f, 0xb8, + 0xc9, 0x61, 0x18, 0x0f, 0xe5, 0x8e, 0x55, 0x77, 0x2a, 0x7c, 0x5e, 0xec, 0x91, 0x97, 0x27, 0x2c, + 0x66, 0x64, 0x89, 0xcb, 0xd3, 0x03, 0x39, 0x59, 0xe2, 0x62, 0xab, 0xa0, 0x33, 0xd1, 0x36, 0xc6, + 0xfc, 0x90, 0x8a, 0x5e, 0x18, 0xf3, 0x53, 0x65, 0xf1, 0x95, 0x0f, 0xd9, 0xe0, 0x4e, 0x1c, 0x0e, + 0x65, 0xc3, 0x90, 0x91, 0x62, 0xe5, 0x21, 0x4d, 0x08, 0x4d, 0x84, 0x6c, 0x0b, 0x65, 0x15, 0x16, + 0x97, 0x95, 0xa4, 0x48, 0xce, 0x79, 0x27, 0x23, 0xad, 0x25, 0xa8, 0x31, 0x32, 0x92, 0x19, 0xc7, + 0x7f, 0x6a, 0xc8, 0x2d, 0xea, 0xc8, 0x95, 0x4a, 0xc1, 0x92, 0xf8, 0x57, 0x2d, 0x05, 0xc5, 0x69, + 0x60, 0x59, 0x3b, 0x0d, 0x6c, 0xc1, 0x6c, 0x18, 0xf1, 0x38, 0x67, 0x1d, 0x4b, 0xe4, 0xd8, 0x67, + 0x27, 0xe7, 0xd8, 0xe6, 0x43, 0x1c, 0x79, 0x9b, 0x26, 0xf1, 0xa9, 0x93, 0xc9, 0x59, 0x7b, 0xb0, + 0x18, 0x1e, 0x1e, 0x06, 0x3e, 0x25, 0xfb, 0x29, 0x3b, 0x12, 0x3b, 0xdb, 0x8a, 0xd8, 0xd9, 0xec, + 0x31, 0xaa, 0x1e, 0xea, 0x23, 0x9d, 0xb2, 0xe8, 0xda, 0x4d, 0x98, 0x57, 0xa7, 0xe1, 0x6e, 0x38, + 0x26, 0xa7, 0x32, 0x06, 0xf9, 0x4f, 0xde, 0xec, 0x9d, 0xb8, 0x41, 0x8a, 0xdb, 0xc0, 0x9c, 0x83, + 0xc4, 0x4d, 0xf3, 0xab, 0x86, 0xfd, 0x73, 0x03, 0x16, 0x4b, 0x13, 0xf0, 0xd1, 0x89, 0x9f, 0x04, + 0x44, 0x6a, 0x40, 0xc2, 0xb2, 0x60, 0xc6, 0x23, 0xac, 0x2f, 0x43, 0x58, 0xfc, 0x96, 0x95, 0xac, + 0x96, 0xb7, 0x8b, 0xfc, 0xc8, 0xf7, 0xb0, 0xc7, 0x15, 0xf5, 0xc2, 0x94, 0x7a, 0xf9, 0x91, 0x4f, + 0xe1, 0xf1, 0x10, 0xf2, 0x1f, 0xf6, 0xb6, 0x5d, 0x6f, 0x40, 0xf0, 0x60, 0x56, 0x17, 0x36, 0xe9, + 0x4c, 0xdb, 0x83, 0xb9, 0x47, 0x7e, 0xc4, 0x76, 0xc2, 0xe1, 0x90, 0x03, 0xe1, 0x91, 0x84, 0xf7, + 0xaa, 0x86, 0xc0, 0x5b, 0x52, 0x3c, 0x54, 0x3c, 0x72, 0xe8, 0xa6, 0x41, 0xc2, 0x87, 0x66, 0x89, + 0xab, 0xb0, 0xc4, 0x91, 0x84, 0x85, 0x74, 0x17, 0xa5, 0xd1, 0x4e, 0x85, 0x63, 0xff, 0xc5, 0x84, + 0x25, 0xd1, 0x38, 0xec, 0x08, 0xd8, 0x3d, 0x21, 0x74, 0x03, 0xea, 0x22, 0x0d, 0x65, 0xb3, 0x72, + 0x76, 0xb3, 0x81, 0x43, 0xad, 0x5b, 0xd0, 0x08, 0x23, 0xd1, 0x72, 0x62, 0x87, 0xf2, 0xfa, 0x24, + 0x21, 0xfd, 0xf4, 0xe7, 0x48, 0x29, 0xeb, 0x0e, 0x00, 0x1e, 0x4c, 0xf7, 0x8a, 0xd2, 0x3d, 0xad, + 0x0e, 0x45, 0x92, 0x3b, 0x37, 0x2f, 0xc3, 0xf9, 0x11, 0xb0, 0xe6, 0xe8, 0x4c, 0xeb, 0x01, 0x2c, + 0x08, 0xb3, 0x1f, 0x66, 0x5d, 0xa7, 0xc0, 0x60, 0xfa, 0x19, 0x4b, 0xd2, 0xf6, 0xaf, 0x0d, 0xe9, + 0x46, 0xfe, 0x6f, 0x8f, 0xa0, 0xef, 0x0b, 0x97, 0x18, 0x17, 0x72, 0xc9, 0x1a, 0xcc, 0xf1, 0x33, + 0x5e, 0xde, 0x04, 0xd7, 0x9c, 0x9c, 0x2e, 0x20, 0xaa, 0x4d, 0x0d, 0x91, 0xfd, 0x1b, 0x03, 0x3a, + 0x6f, 0x87, 0x3e, 0x15, 0x7f, 0x6c, 0x45, 0x51, 0x20, 0xef, 0x29, 0x2e, 0x8c, 0xf9, 0x37, 0xa1, + 0xe9, 0xa2, 0x1a, 0x9a, 0x48, 0xd8, 0xa7, 0x68, 0x6c, 0x0b, 0x19, 0xa5, 0x47, 0xa9, 0xa9, 0x3d, + 0x8a, 0xfd, 0x9e, 0x01, 0x0b, 0xe8, 0x94, 0x77, 0x52, 0x3f, 0xb9, 0xb0, 0x7d, 0xdb, 0x30, 0x37, + 0x4a, 0xfd, 0xe4, 0x02, 0x51, 0x99, 0xcb, 0x55, 0xe3, 0xa9, 0x36, 0x26, 0x9e, 0xec, 0xf7, 0x0d, + 0xb8, 0x5a, 0x76, 0xeb, 0x56, 0xbf, 0x4f, 0xa2, 0x17, 0x99, 0x52, 0x5a, 0x8f, 0x36, 0x53, 0xea, + 0xd1, 0xc6, 0x9a, 0xec, 0x90, 0xa7, 0xa4, 0xff, 0xf2, 0x9a, 0xfc, 0x63, 0x13, 0x3e, 0x79, 0x37, + 0x4f, 0xbc, 0x47, 0xb1, 0x4b, 0xd9, 0x21, 0x89, 0xe3, 0x17, 0x68, 0xef, 0x1e, 0xb4, 0x29, 0x79, + 0x56, 0xd8, 0x24, 0xd3, 0x71, 0x5a, 0x35, 0xba, 0xf0, 0x74, 0xb5, 0xcb, 0xfe, 0x8f, 0x01, 0x4b, + 0xa8, 0xe7, 0x5b, 0x7e, 0xff, 0xf8, 0x05, 0x2e, 0xfe, 0x01, 0x2c, 0x1c, 0x0b, 0x0b, 0x38, 0x75, + 0x81, 0xb2, 0x5d, 0x92, 0x9e, 0x72, 0xf9, 0xff, 0x35, 0x60, 0x19, 0x15, 0xdd, 0xa7, 0x27, 0xfe, + 0x8b, 0x0c, 0xd6, 0x7d, 0x58, 0xf4, 0xd1, 0x84, 0x0b, 0x3a, 0xa0, 0x2c, 0x3e, 0xa5, 0x07, 0xfe, + 0x68, 0xc0, 0x22, 0x6a, 0xba, 0x4d, 0x13, 0x12, 0x5f, 0x78, 0xfd, 0xf7, 0xa0, 0x45, 0x68, 0x12, + 0xbb, 0xf4, 0x22, 0x15, 0x52, 0x15, 0x9d, 0xb2, 0x48, 0xbe, 0x67, 0x80, 0x25, 0x54, 0xed, 0xfa, + 0x6c, 0xe8, 0x33, 0xf6, 0x02, 0xa1, 0x9b, 0xce, 0xe0, 0x5f, 0x9a, 0x70, 0x45, 0xd1, 0xd2, 0x4d, + 0x93, 0x97, 0xdd, 0x64, 0x6b, 0x17, 0x9a, 0xbc, 0x47, 0x50, 0x2f, 0xff, 0xa6, 0x9d, 0xa8, 0x10, + 0xe4, 0x5d, 0xac, 0x20, 0x7a, 0xa4, 0x1f, 0x52, 0x8f, 0x89, 0xe6, 0xa8, 0xed, 0x68, 0x3c, 0x5e, + 0x86, 0xd6, 0x14, 0x35, 0x3b, 0x2e, 0xed, 0x93, 0xe0, 0x95, 0x71, 0x91, 0xfd, 0x3b, 0x03, 0x16, + 0x70, 0xc8, 0xcb, 0xbf, 0x64, 0xbe, 0xd7, 0x63, 0x20, 0x7f, 0x64, 0x50, 0xb2, 0x8f, 0x61, 0x19, + 0xef, 0xfb, 0x94, 0xf6, 0x84, 0x1f, 0x7c, 0x5d, 0x0f, 0xcf, 0xb2, 0x86, 0x10, 0xca, 0x48, 0xfd, + 0x26, 0x57, 0x3e, 0xd6, 0x15, 0x37, 0xb9, 0xd7, 0x00, 0x5c, 0xcf, 0x7b, 0x37, 0x8c, 0x3d, 0x9f, + 0x66, 0xbd, 0xa6, 0xc2, 0xb1, 0xdf, 0x86, 0x79, 0x7e, 0xf4, 0x7e, 0xa4, 0xdc, 0xdc, 0x9d, 0x79, + 0xb7, 0xa8, 0xde, 0xfa, 0x99, 0xfa, 0xad, 0x9f, 0xfd, 0x7d, 0xf8, 0x78, 0xc5, 0x70, 0xe1, 0xeb, + 0x1d, 0xbc, 0x90, 0xcc, 0x26, 0x91, 0x2e, 0xff, 0xf4, 0x18, 0xef, 0xa9, 0xb6, 0x38, 0x9a, 0x90, + 0xfd, 0x23, 0x03, 0x5e, 0xab, 0xa8, 0xdf, 0x8a, 0xa2, 0x38, 0x3c, 0x91, 0x90, 0x5e, 0xc6, 0x34, + 0x7a, 0x1f, 0x66, 0x96, 0xfb, 0xb0, 0xb1, 0x46, 0x68, 0xbd, 0xe3, 0x87, 0x60, 0xc4, 0x6f, 0x0d, + 0x58, 0x94, 0x46, 0x78, 0x9e, 0x9c, 0xf6, 0x2b, 0xd0, 0xc0, 0xc7, 0x0c, 0x39, 0xe1, 0x6b, 0x63, + 0x27, 0xcc, 0x1e, 0x61, 0x1c, 0x39, 0xb8, 0x1a, 0x91, 0xe6, 0xb8, 0xba, 0xf1, 0xb5, 0x3c, 0xee, + 0xa7, 0x7e, 0x6e, 0x90, 0x02, 0xf6, 0x77, 0xb2, 0x60, 0xde, 0x25, 0x01, 0xb9, 0x4c, 0x1f, 0xd9, + 0x8f, 0x61, 0x41, 0xbc, 0xac, 0x14, 0x3e, 0xb8, 0x14, 0xb5, 0xef, 0xc2, 0x92, 0x50, 0x7b, 0xe9, + 0xf6, 0xe6, 0xd9, 0xc1, 0xfd, 0xb3, 0x73, 0xe4, 0xd2, 0xc1, 0x65, 0x6a, 0xff, 0x22, 0xac, 0x64, + 0xbe, 0x7f, 0x1c, 0x79, 0xf9, 0x7d, 0xc6, 0x84, 0x5b, 0x5c, 0xfb, 0x4b, 0xb0, 0xba, 0x13, 0xd2, + 0x13, 0x12, 0x33, 0x81, 0x32, 0x8a, 0x64, 0x12, 0x5a, 0xf2, 0x4b, 0xca, 0x7e, 0x0a, 0x6b, 0xaa, + 0x44, 0x8f, 0x24, 0xfb, 0xb1, 0x7f, 0xa2, 0x48, 0xc9, 0x5b, 0x4e, 0x43, 0xbb, 0xe5, 0x2c, 0x6e, + 0x45, 0x4d, 0xed, 0x56, 0xf4, 0x2a, 0x34, 0x7d, 0x26, 0x15, 0x88, 0xa0, 0x9a, 0x73, 0x0a, 0x86, + 0xdd, 0x83, 0x65, 0xf9, 0xd6, 0xb1, 0xef, 0x0e, 0x7c, 0x8a, 0x15, 0xf0, 0x1a, 0x40, 0xe4, 0x0e, + 0xb2, 0xb7, 0x4e, 0xbc, 0x10, 0x57, 0x38, 0xfc, 0x7f, 0x76, 0x14, 0x3e, 0x93, 0xff, 0x9b, 0xf8, + 0x7f, 0xc1, 0xb1, 0xbf, 0x0d, 0x96, 0x43, 0x58, 0x14, 0x52, 0x46, 0x14, 0xad, 0xeb, 0xd0, 0xda, + 0x49, 0xe3, 0x98, 0x50, 0x3e, 0x55, 0xf6, 0xf0, 0xa7, 0xb2, 0xb8, 0xde, 0x5e, 0xa1, 0x17, 0x2f, + 0x51, 0x15, 0x8e, 0xfd, 0xab, 0x1a, 0x34, 0x7b, 0xfe, 0x80, 0xba, 0x81, 0x43, 0x46, 0xd6, 0xd7, + 0xa1, 0x81, 0xad, 0xad, 0x84, 0x71, 0xdc, 0xa5, 0x1e, 0x8e, 0xc6, 0x1e, 0xde, 0x21, 0xa3, 0x7b, + 0x1f, 0x73, 0xa4, 0x8c, 0xf5, 0x0e, 0xb4, 0xf1, 0xd7, 0x7d, 0xbc, 0xaa, 0x90, 0xfb, 0xcc, 0xe7, + 0xce, 0x51, 0x22, 0x47, 0xa3, 0x2e, 0x5d, 0x03, 0x37, 0xa8, 0x2f, 0xb6, 0x3e, 0x99, 0xbb, 0x93, + 0x0d, 0xc2, 0x1d, 0x52, 0x1a, 0x84, 0x32, 0x5c, 0xda, 0x15, 0x87, 0x79, 0xd9, 0x2e, 0x4c, 0x96, + 0xc6, 0x33, 0xbf, 0x94, 0x46, 0x19, 0x2e, 0x7d, 0x94, 0xd2, 0xc1, 0xe3, 0x48, 0xde, 0x31, 0x4d, + 0x96, 0xbe, 0x27, 0x86, 0x49, 0x69, 0x94, 0xe1, 0xd2, 0xb1, 0xa8, 0xac, 0xc2, 0xe9, 0x67, 0x49, + 0x63, 0x01, 0x96, 0xd2, 0x28, 0xb3, 0xdd, 0x84, 0xd9, 0xc8, 0x3d, 0x0d, 0x42, 0xd7, 0xb3, 0x7f, + 0x5f, 0x03, 0xc8, 0x06, 0x32, 0xb1, 0x8b, 0x6b, 0x10, 0x6d, 0x9c, 0x0b, 0x51, 0x14, 0x9c, 0x2a, + 0x20, 0xf5, 0xc6, 0x83, 0xf4, 0xf9, 0x69, 0x41, 0x42, 0x6d, 0x25, 0x98, 0x6e, 0x95, 0x60, 0xda, + 0x38, 0x17, 0x26, 0x69, 0x94, 0x04, 0xea, 0x56, 0x09, 0xa8, 0x8d, 0x73, 0x81, 0x92, 0xf2, 0x12, + 0xaa, 0x5b, 0x25, 0xa8, 0x36, 0xce, 0x85, 0x4a, 0xca, 0x4b, 0xb0, 0x6e, 0x95, 0xc0, 0xda, 0x38, + 0x17, 0x2c, 0x29, 0x5f, 0x85, 0xeb, 0x7d, 0x13, 0x16, 0x84, 0xcb, 0xf0, 0x41, 0x89, 0x1e, 0x86, + 0xe2, 0xde, 0x58, 0xb8, 0x4b, 0x7f, 0x3a, 0xd7, 0x99, 0xd6, 0x17, 0x60, 0x19, 0x19, 0xf2, 0xa9, + 0x55, 0x9c, 0x4b, 0xcd, 0xf5, 0xda, 0xf5, 0xa6, 0x53, 0xfd, 0x43, 0x3c, 0x01, 0xa4, 0x2c, 0x09, + 0x87, 0xbb, 0x6e, 0xe2, 0x66, 0x9d, 0x51, 0xc1, 0x51, 0x1f, 0x68, 0x66, 0x2a, 0x1f, 0xe7, 0xc4, + 0x61, 0x38, 0xcc, 0x5f, 0x5e, 0x24, 0xc5, 0x25, 0x12, 0x7f, 0x48, 0xc2, 0x34, 0x91, 0x65, 0x22, + 0x23, 0x79, 0xb9, 0x1b, 0x12, 0xcf, 0x77, 0xc5, 0xb3, 0x86, 0x7c, 0xef, 0xcc, 0x19, 0xa2, 0xb2, + 0x15, 0xcf, 0x34, 0xf2, 0xe3, 0x99, 0x82, 0x73, 0xfe, 0x93, 0x8a, 0xfd, 0x0f, 0x03, 0x56, 0xf6, + 0xdd, 0x38, 0xf1, 0xfb, 0x7e, 0xe4, 0xd2, 0xa4, 0x4b, 0x12, 0x57, 0xac, 0x41, 0x7b, 0x3f, 0x37, + 0x3e, 0xd8, 0xfb, 0xf9, 0x3e, 0x2c, 0x0e, 0x8a, 0x5e, 0x56, 0x79, 0x81, 0x9f, 0xfa, 0x8c, 0x5f, + 0x12, 0xd7, 0x3e, 0x06, 0xa8, 0x7d, 0xe0, 0x8f, 0x01, 0xec, 0x9f, 0x9a, 0xb0, 0x58, 0x2a, 0x9d, + 0xbc, 0x1d, 0xc5, 0x46, 0x23, 0x8f, 0x89, 0x9c, 0xb6, 0xb6, 0x00, 0xfc, 0x3c, 0x8c, 0xce, 0xb8, + 0xa4, 0xd5, 0x63, 0xcd, 0x51, 0x84, 0xc6, 0xbd, 0xd5, 0xd4, 0x2e, 0xfc, 0x56, 0x63, 0xdd, 0x83, + 0x56, 0x54, 0x80, 0x74, 0xc6, 0x01, 0x6c, 0x0c, 0x94, 0x8e, 0x2a, 0x6a, 0x7f, 0x0f, 0x96, 0x2b, + 0x15, 0x4a, 0x3c, 0xdd, 0x84, 0xc7, 0x84, 0xe6, 0x4f, 0x37, 0x9c, 0x50, 0x82, 0xd5, 0x2c, 0x07, + 0x6b, 0xe0, 0x9f, 0xa8, 0x5f, 0x1b, 0x49, 0xd2, 0xfe, 0x99, 0x09, 0xab, 0xe3, 0x77, 0x97, 0x57, + 0xd5, 0xdd, 0x07, 0xd0, 0x99, 0x54, 0xc9, 0x2f, 0xcd, 0xeb, 0x45, 0x74, 0xe7, 0xfb, 0xf0, 0xab, + 0xea, 0xee, 0x95, 0x2c, 0xba, 0x95, 0xad, 0xce, 0xfe, 0x43, 0xee, 0x9f, 0xbc, 0xd3, 0x78, 0x45, + 0xfd, 0x63, 0xbd, 0x01, 0x4b, 0xb8, 0x4c, 0xe5, 0x71, 0x1f, 0x1b, 0xd7, 0x0a, 0xbf, 0xa8, 0x14, + 0xca, 0xb6, 0x7f, 0x69, 0x31, 0xfb, 0x67, 0x23, 0xc3, 0x24, 0xef, 0xdf, 0x3e, 0x52, 0x98, 0x14, + 0x91, 0xa6, 0x34, 0x35, 0x4a, 0xa4, 0xe5, 0x7d, 0xe5, 0xff, 0x23, 0xed, 0xfc, 0x48, 0xcb, 0x7d, + 0xa9, 0x34, 0x78, 0xf6, 0x0f, 0xa1, 0xbd, 0x4b, 0x82, 0x2e, 0x1b, 0x64, 0x9f, 0x15, 0x9d, 0xe5, + 0xc8, 0x49, 0x1f, 0x3d, 0x4f, 0xfc, 0xa0, 0xa8, 0xfc, 0x31, 0xd2, 0x4c, 0xe5, 0x63, 0x24, 0x7b, + 0x1b, 0x16, 0x54, 0x03, 0x2e, 0xf2, 0x55, 0xd5, 0xf6, 0xd5, 0xef, 0xae, 0x6d, 0xbe, 0x89, 0x9f, + 0xd7, 0xbf, 0x55, 0x71, 0xe2, 0x41, 0x43, 0x7c, 0x6e, 0xff, 0xe5, 0xff, 0x05, 0x00, 0x00, 0xff, + 0xff, 0x59, 0xb0, 0xc2, 0xf4, 0x81, 0x2f, 0x00, 0x00, } diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index a1cc2ce63..1f9cb5bb1 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -360,7 +360,12 @@ message UserInfoUpdatedTips{ //////////////////////conversation///////////////////// message ConversationUpdateTips{ string UserID = 1; +} +message ConversationSetPrivateTips{ + string recvID = 1; + string sendID = 2; + bool isPrivate = 3; } diff --git a/pkg/proto/user/user.pb.go b/pkg/proto/user/user.pb.go index 603434dbc..1c8b88653 100644 --- a/pkg/proto/user/user.pb.go +++ b/pkg/proto/user/user.pb.go @@ -1,4248 +1,2633 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.27.1 -// protoc v3.15.5 // source: user/user.proto -package user +package user // import "./user" + +import proto "github.com/golang/protobuf/proto" +import fmt "fmt" +import math "math" +import sdk_ws "Open_IM/pkg/proto/sdk_ws" import ( - sdk_ws "Open_IM/pkg/proto/sdk_ws" - context "context" + context "golang.org/x/net/context" grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" ) -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf -type CommonResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package - ErrCode int32 `protobuf:"varint,1,opt,name=errCode,proto3" json:"errCode,omitempty"` - ErrMsg string `protobuf:"bytes,2,opt,name=errMsg,proto3" json:"errMsg,omitempty"` +type CommonResp struct { + ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"` + ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *CommonResp) Reset() { - *x = CommonResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *CommonResp) Reset() { *m = CommonResp{} } +func (m *CommonResp) String() string { return proto.CompactTextString(m) } +func (*CommonResp) ProtoMessage() {} +func (*CommonResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{0} } - -func (x *CommonResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *CommonResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CommonResp.Unmarshal(m, b) } - -func (*CommonResp) ProtoMessage() {} - -func (x *CommonResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *CommonResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CommonResp.Marshal(b, m, deterministic) } - -// Deprecated: Use CommonResp.ProtoReflect.Descriptor instead. -func (*CommonResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{0} +func (dst *CommonResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_CommonResp.Merge(dst, src) +} +func (m *CommonResp) XXX_Size() int { + return xxx_messageInfo_CommonResp.Size(m) +} +func (m *CommonResp) XXX_DiscardUnknown() { + xxx_messageInfo_CommonResp.DiscardUnknown(m) } -func (x *CommonResp) GetErrCode() int32 { - if x != nil { - return x.ErrCode +var xxx_messageInfo_CommonResp proto.InternalMessageInfo + +func (m *CommonResp) GetErrCode() int32 { + if m != nil { + return m.ErrCode } return 0 } -func (x *CommonResp) GetErrMsg() string { - if x != nil { - return x.ErrMsg +func (m *CommonResp) GetErrMsg() string { + if m != nil { + return m.ErrMsg } return "" } type DeleteUsersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - DeleteUserIDList []string `protobuf:"bytes,2,rep,name=DeleteUserIDList,proto3" json:"DeleteUserIDList,omitempty"` - OpUserID string `protobuf:"bytes,3,opt,name=OpUserID,proto3" json:"OpUserID,omitempty"` - OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + DeleteUserIDList []string `protobuf:"bytes,2,rep,name=DeleteUserIDList" json:"DeleteUserIDList,omitempty"` + OpUserID string `protobuf:"bytes,3,opt,name=OpUserID" json:"OpUserID,omitempty"` + OperationID string `protobuf:"bytes,4,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *DeleteUsersReq) Reset() { - *x = DeleteUsersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *DeleteUsersReq) Reset() { *m = DeleteUsersReq{} } +func (m *DeleteUsersReq) String() string { return proto.CompactTextString(m) } +func (*DeleteUsersReq) ProtoMessage() {} +func (*DeleteUsersReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{1} } - -func (x *DeleteUsersReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *DeleteUsersReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DeleteUsersReq.Unmarshal(m, b) } - -func (*DeleteUsersReq) ProtoMessage() {} - -func (x *DeleteUsersReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *DeleteUsersReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DeleteUsersReq.Marshal(b, m, deterministic) } - -// Deprecated: Use DeleteUsersReq.ProtoReflect.Descriptor instead. -func (*DeleteUsersReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{1} +func (dst *DeleteUsersReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteUsersReq.Merge(dst, src) +} +func (m *DeleteUsersReq) XXX_Size() int { + return xxx_messageInfo_DeleteUsersReq.Size(m) } +func (m *DeleteUsersReq) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteUsersReq.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteUsersReq proto.InternalMessageInfo -func (x *DeleteUsersReq) GetDeleteUserIDList() []string { - if x != nil { - return x.DeleteUserIDList +func (m *DeleteUsersReq) GetDeleteUserIDList() []string { + if m != nil { + return m.DeleteUserIDList } return nil } -func (x *DeleteUsersReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *DeleteUsersReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *DeleteUsersReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *DeleteUsersReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type DeleteUsersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - FailedUserIDList []string `protobuf:"bytes,2,rep,name=FailedUserIDList,proto3" json:"FailedUserIDList,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + FailedUserIDList []string `protobuf:"bytes,2,rep,name=FailedUserIDList" json:"FailedUserIDList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *DeleteUsersResp) Reset() { - *x = DeleteUsersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *DeleteUsersResp) Reset() { *m = DeleteUsersResp{} } +func (m *DeleteUsersResp) String() string { return proto.CompactTextString(m) } +func (*DeleteUsersResp) ProtoMessage() {} +func (*DeleteUsersResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{2} } - -func (x *DeleteUsersResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *DeleteUsersResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DeleteUsersResp.Unmarshal(m, b) } - -func (*DeleteUsersResp) ProtoMessage() {} - -func (x *DeleteUsersResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *DeleteUsersResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DeleteUsersResp.Marshal(b, m, deterministic) } - -// Deprecated: Use DeleteUsersResp.ProtoReflect.Descriptor instead. -func (*DeleteUsersResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{2} +func (dst *DeleteUsersResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteUsersResp.Merge(dst, src) } +func (m *DeleteUsersResp) XXX_Size() int { + return xxx_messageInfo_DeleteUsersResp.Size(m) +} +func (m *DeleteUsersResp) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteUsersResp.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteUsersResp proto.InternalMessageInfo -func (x *DeleteUsersResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *DeleteUsersResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *DeleteUsersResp) GetFailedUserIDList() []string { - if x != nil { - return x.FailedUserIDList +func (m *DeleteUsersResp) GetFailedUserIDList() []string { + if m != nil { + return m.FailedUserIDList } return nil } type GetAllUserIDReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=operationID,proto3" json:"operationID,omitempty"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=operationID" json:"operationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetAllUserIDReq) Reset() { - *x = GetAllUserIDReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetAllUserIDReq) Reset() { *m = GetAllUserIDReq{} } +func (m *GetAllUserIDReq) String() string { return proto.CompactTextString(m) } +func (*GetAllUserIDReq) ProtoMessage() {} +func (*GetAllUserIDReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{3} } - -func (x *GetAllUserIDReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetAllUserIDReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetAllUserIDReq.Unmarshal(m, b) } - -func (*GetAllUserIDReq) ProtoMessage() {} - -func (x *GetAllUserIDReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetAllUserIDReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetAllUserIDReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetAllUserIDReq.ProtoReflect.Descriptor instead. -func (*GetAllUserIDReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{3} +func (dst *GetAllUserIDReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetAllUserIDReq.Merge(dst, src) +} +func (m *GetAllUserIDReq) XXX_Size() int { + return xxx_messageInfo_GetAllUserIDReq.Size(m) +} +func (m *GetAllUserIDReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetAllUserIDReq.DiscardUnknown(m) } -func (x *GetAllUserIDReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +var xxx_messageInfo_GetAllUserIDReq proto.InternalMessageInfo + +func (m *GetAllUserIDReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *GetAllUserIDReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetAllUserIDReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetAllUserIDResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - UserIDList []string `protobuf:"bytes,2,rep,name=UserIDList,proto3" json:"UserIDList,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + UserIDList []string `protobuf:"bytes,2,rep,name=UserIDList" json:"UserIDList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetAllUserIDResp) Reset() { - *x = GetAllUserIDResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetAllUserIDResp) Reset() { *m = GetAllUserIDResp{} } +func (m *GetAllUserIDResp) String() string { return proto.CompactTextString(m) } +func (*GetAllUserIDResp) ProtoMessage() {} +func (*GetAllUserIDResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{4} } - -func (x *GetAllUserIDResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetAllUserIDResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetAllUserIDResp.Unmarshal(m, b) } - -func (*GetAllUserIDResp) ProtoMessage() {} - -func (x *GetAllUserIDResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetAllUserIDResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetAllUserIDResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetAllUserIDResp.ProtoReflect.Descriptor instead. -func (*GetAllUserIDResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{4} +func (dst *GetAllUserIDResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetAllUserIDResp.Merge(dst, src) +} +func (m *GetAllUserIDResp) XXX_Size() int { + return xxx_messageInfo_GetAllUserIDResp.Size(m) } +func (m *GetAllUserIDResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetAllUserIDResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetAllUserIDResp proto.InternalMessageInfo -func (x *GetAllUserIDResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetAllUserIDResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetAllUserIDResp) GetUserIDList() []string { - if x != nil { - return x.UserIDList +func (m *GetAllUserIDResp) GetUserIDList() []string { + if m != nil { + return m.UserIDList } return nil } type AccountCheckReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CheckUserIDList []string `protobuf:"bytes,1,rep,name=CheckUserIDList,proto3" json:"CheckUserIDList,omitempty"` - OpUserID string `protobuf:"bytes,2,opt,name=OpUserID,proto3" json:"OpUserID,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + CheckUserIDList []string `protobuf:"bytes,1,rep,name=CheckUserIDList" json:"CheckUserIDList,omitempty"` + OpUserID string `protobuf:"bytes,2,opt,name=OpUserID" json:"OpUserID,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *AccountCheckReq) Reset() { - *x = AccountCheckReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AccountCheckReq) Reset() { *m = AccountCheckReq{} } +func (m *AccountCheckReq) String() string { return proto.CompactTextString(m) } +func (*AccountCheckReq) ProtoMessage() {} +func (*AccountCheckReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{5} } - -func (x *AccountCheckReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AccountCheckReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AccountCheckReq.Unmarshal(m, b) } - -func (*AccountCheckReq) ProtoMessage() {} - -func (x *AccountCheckReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *AccountCheckReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AccountCheckReq.Marshal(b, m, deterministic) } - -// Deprecated: Use AccountCheckReq.ProtoReflect.Descriptor instead. -func (*AccountCheckReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{5} +func (dst *AccountCheckReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_AccountCheckReq.Merge(dst, src) +} +func (m *AccountCheckReq) XXX_Size() int { + return xxx_messageInfo_AccountCheckReq.Size(m) } +func (m *AccountCheckReq) XXX_DiscardUnknown() { + xxx_messageInfo_AccountCheckReq.DiscardUnknown(m) +} + +var xxx_messageInfo_AccountCheckReq proto.InternalMessageInfo -func (x *AccountCheckReq) GetCheckUserIDList() []string { - if x != nil { - return x.CheckUserIDList +func (m *AccountCheckReq) GetCheckUserIDList() []string { + if m != nil { + return m.CheckUserIDList } return nil } -func (x *AccountCheckReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *AccountCheckReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *AccountCheckReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *AccountCheckReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type AccountCheckResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - ResultList []*AccountCheckResp_SingleUserStatus `protobuf:"bytes,2,rep,name=ResultList,proto3" json:"ResultList,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + ResultList []*AccountCheckResp_SingleUserStatus `protobuf:"bytes,2,rep,name=ResultList" json:"ResultList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *AccountCheckResp) Reset() { - *x = AccountCheckResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AccountCheckResp) Reset() { *m = AccountCheckResp{} } +func (m *AccountCheckResp) String() string { return proto.CompactTextString(m) } +func (*AccountCheckResp) ProtoMessage() {} +func (*AccountCheckResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{6} } - -func (x *AccountCheckResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AccountCheckResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AccountCheckResp.Unmarshal(m, b) } - -func (*AccountCheckResp) ProtoMessage() {} - -func (x *AccountCheckResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *AccountCheckResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AccountCheckResp.Marshal(b, m, deterministic) } - -// Deprecated: Use AccountCheckResp.ProtoReflect.Descriptor instead. -func (*AccountCheckResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{6} +func (dst *AccountCheckResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_AccountCheckResp.Merge(dst, src) +} +func (m *AccountCheckResp) XXX_Size() int { + return xxx_messageInfo_AccountCheckResp.Size(m) } +func (m *AccountCheckResp) XXX_DiscardUnknown() { + xxx_messageInfo_AccountCheckResp.DiscardUnknown(m) +} + +var xxx_messageInfo_AccountCheckResp proto.InternalMessageInfo -func (x *AccountCheckResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *AccountCheckResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *AccountCheckResp) GetResultList() []*AccountCheckResp_SingleUserStatus { - if x != nil { - return x.ResultList +func (m *AccountCheckResp) GetResultList() []*AccountCheckResp_SingleUserStatus { + if m != nil { + return m.ResultList } return nil } -type GetUserInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +type AccountCheckResp_SingleUserStatus struct { + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + AccountStatus string `protobuf:"bytes,2,opt,name=accountStatus" json:"accountStatus,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} - UserIDList []string `protobuf:"bytes,1,rep,name=userIDList,proto3" json:"userIDList,omitempty"` - OpUserID string `protobuf:"bytes,2,opt,name=OpUserID,proto3" json:"OpUserID,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` +func (m *AccountCheckResp_SingleUserStatus) Reset() { *m = AccountCheckResp_SingleUserStatus{} } +func (m *AccountCheckResp_SingleUserStatus) String() string { return proto.CompactTextString(m) } +func (*AccountCheckResp_SingleUserStatus) ProtoMessage() {} +func (*AccountCheckResp_SingleUserStatus) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{6, 0} } +func (m *AccountCheckResp_SingleUserStatus) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AccountCheckResp_SingleUserStatus.Unmarshal(m, b) +} +func (m *AccountCheckResp_SingleUserStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AccountCheckResp_SingleUserStatus.Marshal(b, m, deterministic) +} +func (dst *AccountCheckResp_SingleUserStatus) XXX_Merge(src proto.Message) { + xxx_messageInfo_AccountCheckResp_SingleUserStatus.Merge(dst, src) +} +func (m *AccountCheckResp_SingleUserStatus) XXX_Size() int { + return xxx_messageInfo_AccountCheckResp_SingleUserStatus.Size(m) +} +func (m *AccountCheckResp_SingleUserStatus) XXX_DiscardUnknown() { + xxx_messageInfo_AccountCheckResp_SingleUserStatus.DiscardUnknown(m) +} + +var xxx_messageInfo_AccountCheckResp_SingleUserStatus proto.InternalMessageInfo -func (x *GetUserInfoReq) Reset() { - *x = GetUserInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (m *AccountCheckResp_SingleUserStatus) GetUserID() string { + if m != nil { + return m.UserID } + return "" } -func (x *GetUserInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AccountCheckResp_SingleUserStatus) GetAccountStatus() string { + if m != nil { + return m.AccountStatus + } + return "" } -func (*GetUserInfoReq) ProtoMessage() {} - -func (x *GetUserInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +type GetUserInfoReq struct { + UserIDList []string `protobuf:"bytes,1,rep,name=userIDList" json:"userIDList,omitempty"` + OpUserID string `protobuf:"bytes,2,opt,name=OpUserID" json:"OpUserID,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -// Deprecated: Use GetUserInfoReq.ProtoReflect.Descriptor instead. +func (m *GetUserInfoReq) Reset() { *m = GetUserInfoReq{} } +func (m *GetUserInfoReq) String() string { return proto.CompactTextString(m) } +func (*GetUserInfoReq) ProtoMessage() {} func (*GetUserInfoReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{7} + return fileDescriptor_user_6133bd34462fbb1a, []int{7} +} +func (m *GetUserInfoReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserInfoReq.Unmarshal(m, b) } +func (m *GetUserInfoReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserInfoReq.Marshal(b, m, deterministic) +} +func (dst *GetUserInfoReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserInfoReq.Merge(dst, src) +} +func (m *GetUserInfoReq) XXX_Size() int { + return xxx_messageInfo_GetUserInfoReq.Size(m) +} +func (m *GetUserInfoReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserInfoReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUserInfoReq proto.InternalMessageInfo -func (x *GetUserInfoReq) GetUserIDList() []string { - if x != nil { - return x.UserIDList +func (m *GetUserInfoReq) GetUserIDList() []string { + if m != nil { + return m.UserIDList } return nil } -func (x *GetUserInfoReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *GetUserInfoReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *GetUserInfoReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetUserInfoReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetUserInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - UserInfoList []*sdk_ws.UserInfo `protobuf:"bytes,3,rep,name=UserInfoList,proto3" json:"UserInfoList,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + UserInfoList []*sdk_ws.UserInfo `protobuf:"bytes,3,rep,name=UserInfoList" json:"UserInfoList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUserInfoResp) Reset() { - *x = GetUserInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUserInfoResp) Reset() { *m = GetUserInfoResp{} } +func (m *GetUserInfoResp) String() string { return proto.CompactTextString(m) } +func (*GetUserInfoResp) ProtoMessage() {} +func (*GetUserInfoResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{8} } - -func (x *GetUserInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUserInfoResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserInfoResp.Unmarshal(m, b) } - -func (*GetUserInfoResp) ProtoMessage() {} - -func (x *GetUserInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUserInfoResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserInfoResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetUserInfoResp.ProtoReflect.Descriptor instead. -func (*GetUserInfoResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{8} +func (dst *GetUserInfoResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserInfoResp.Merge(dst, src) +} +func (m *GetUserInfoResp) XXX_Size() int { + return xxx_messageInfo_GetUserInfoResp.Size(m) } +func (m *GetUserInfoResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserInfoResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUserInfoResp proto.InternalMessageInfo -func (x *GetUserInfoResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetUserInfoResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetUserInfoResp) GetUserInfoList() []*sdk_ws.UserInfo { - if x != nil { - return x.UserInfoList +func (m *GetUserInfoResp) GetUserInfoList() []*sdk_ws.UserInfo { + if m != nil { + return m.UserInfoList } return nil } type UpdateUserInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserInfo *sdk_ws.UserInfo `protobuf:"bytes,1,opt,name=UserInfo,proto3" json:"UserInfo,omitempty"` - OpUserID string `protobuf:"bytes,2,opt,name=OpUserID,proto3" json:"OpUserID,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID,omitempty"` + UserInfo *sdk_ws.UserInfo `protobuf:"bytes,1,opt,name=UserInfo" json:"UserInfo,omitempty"` + OpUserID string `protobuf:"bytes,2,opt,name=OpUserID" json:"OpUserID,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=operationID" json:"operationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UpdateUserInfoReq) Reset() { - *x = UpdateUserInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *UpdateUserInfoReq) Reset() { *m = UpdateUserInfoReq{} } +func (m *UpdateUserInfoReq) String() string { return proto.CompactTextString(m) } +func (*UpdateUserInfoReq) ProtoMessage() {} +func (*UpdateUserInfoReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{9} } - -func (x *UpdateUserInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *UpdateUserInfoReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UpdateUserInfoReq.Unmarshal(m, b) } - -func (*UpdateUserInfoReq) ProtoMessage() {} - -func (x *UpdateUserInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *UpdateUserInfoReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UpdateUserInfoReq.Marshal(b, m, deterministic) } - -// Deprecated: Use UpdateUserInfoReq.ProtoReflect.Descriptor instead. -func (*UpdateUserInfoReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{9} +func (dst *UpdateUserInfoReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_UpdateUserInfoReq.Merge(dst, src) +} +func (m *UpdateUserInfoReq) XXX_Size() int { + return xxx_messageInfo_UpdateUserInfoReq.Size(m) } +func (m *UpdateUserInfoReq) XXX_DiscardUnknown() { + xxx_messageInfo_UpdateUserInfoReq.DiscardUnknown(m) +} + +var xxx_messageInfo_UpdateUserInfoReq proto.InternalMessageInfo -func (x *UpdateUserInfoReq) GetUserInfo() *sdk_ws.UserInfo { - if x != nil { - return x.UserInfo +func (m *UpdateUserInfoReq) GetUserInfo() *sdk_ws.UserInfo { + if m != nil { + return m.UserInfo } return nil } -func (x *UpdateUserInfoReq) GetOpUserID() string { - if x != nil { - return x.OpUserID +func (m *UpdateUserInfoReq) GetOpUserID() string { + if m != nil { + return m.OpUserID } return "" } -func (x *UpdateUserInfoReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *UpdateUserInfoReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type UpdateUserInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UpdateUserInfoResp) Reset() { - *x = UpdateUserInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *UpdateUserInfoResp) Reset() { *m = UpdateUserInfoResp{} } +func (m *UpdateUserInfoResp) String() string { return proto.CompactTextString(m) } +func (*UpdateUserInfoResp) ProtoMessage() {} +func (*UpdateUserInfoResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{10} } - -func (x *UpdateUserInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *UpdateUserInfoResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UpdateUserInfoResp.Unmarshal(m, b) } - -func (*UpdateUserInfoResp) ProtoMessage() {} - -func (x *UpdateUserInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *UpdateUserInfoResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UpdateUserInfoResp.Marshal(b, m, deterministic) } - -// Deprecated: Use UpdateUserInfoResp.ProtoReflect.Descriptor instead. -func (*UpdateUserInfoResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{10} +func (dst *UpdateUserInfoResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_UpdateUserInfoResp.Merge(dst, src) +} +func (m *UpdateUserInfoResp) XXX_Size() int { + return xxx_messageInfo_UpdateUserInfoResp.Size(m) } +func (m *UpdateUserInfoResp) XXX_DiscardUnknown() { + xxx_messageInfo_UpdateUserInfoResp.DiscardUnknown(m) +} + +var xxx_messageInfo_UpdateUserInfoResp proto.InternalMessageInfo -func (x *UpdateUserInfoResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *UpdateUserInfoResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type Conversation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - ConversationID string `protobuf:"bytes,2,opt,name=ConversationID,proto3" json:"ConversationID,omitempty"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=RecvMsgOpt,proto3" json:"RecvMsgOpt,omitempty"` - ConversationType int32 `protobuf:"varint,4,opt,name=ConversationType,proto3" json:"ConversationType,omitempty"` - UserID string `protobuf:"bytes,5,opt,name=UserID,proto3" json:"UserID,omitempty"` - GroupID string `protobuf:"bytes,6,opt,name=GroupID,proto3" json:"GroupID,omitempty"` - UnreadCount int32 `protobuf:"varint,7,opt,name=UnreadCount,proto3" json:"UnreadCount,omitempty"` - DraftTextTime int64 `protobuf:"varint,8,opt,name=DraftTextTime,proto3" json:"DraftTextTime,omitempty"` - IsPinned bool `protobuf:"varint,9,opt,name=IsPinned,proto3" json:"IsPinned,omitempty"` - AttachedInfo string `protobuf:"bytes,10,opt,name=AttachedInfo,proto3" json:"AttachedInfo,omitempty"` - IsPrivateChat bool `protobuf:"varint,11,opt,name=IsPrivateChat,proto3" json:"IsPrivateChat,omitempty"` - Ex string `protobuf:"bytes,12,opt,name=Ex,proto3" json:"Ex,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + ConversationID string `protobuf:"bytes,2,opt,name=ConversationID" json:"ConversationID,omitempty"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=RecvMsgOpt" json:"RecvMsgOpt,omitempty"` + ConversationType int32 `protobuf:"varint,4,opt,name=ConversationType" json:"ConversationType,omitempty"` + UserID string `protobuf:"bytes,5,opt,name=UserID" json:"UserID,omitempty"` + GroupID string `protobuf:"bytes,6,opt,name=GroupID" json:"GroupID,omitempty"` + UnreadCount int32 `protobuf:"varint,7,opt,name=UnreadCount" json:"UnreadCount,omitempty"` + DraftTextTime int64 `protobuf:"varint,8,opt,name=DraftTextTime" json:"DraftTextTime,omitempty"` + IsPinned bool `protobuf:"varint,9,opt,name=IsPinned" json:"IsPinned,omitempty"` + AttachedInfo string `protobuf:"bytes,10,opt,name=AttachedInfo" json:"AttachedInfo,omitempty"` + IsPrivateChat bool `protobuf:"varint,11,opt,name=IsPrivateChat" json:"IsPrivateChat,omitempty"` + Ex string `protobuf:"bytes,12,opt,name=Ex" json:"Ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Conversation) Reset() { *m = Conversation{} } +func (m *Conversation) String() string { return proto.CompactTextString(m) } +func (*Conversation) ProtoMessage() {} +func (*Conversation) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{11} } - -func (x *Conversation) Reset() { - *x = Conversation{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *Conversation) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Conversation.Unmarshal(m, b) } - -func (x *Conversation) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *Conversation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Conversation.Marshal(b, m, deterministic) } - -func (*Conversation) ProtoMessage() {} - -func (x *Conversation) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *Conversation) XXX_Merge(src proto.Message) { + xxx_messageInfo_Conversation.Merge(dst, src) } - -// Deprecated: Use Conversation.ProtoReflect.Descriptor instead. -func (*Conversation) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{11} +func (m *Conversation) XXX_Size() int { + return xxx_messageInfo_Conversation.Size(m) +} +func (m *Conversation) XXX_DiscardUnknown() { + xxx_messageInfo_Conversation.DiscardUnknown(m) } -func (x *Conversation) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +var xxx_messageInfo_Conversation proto.InternalMessageInfo + +func (m *Conversation) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *Conversation) GetConversationID() string { - if x != nil { - return x.ConversationID +func (m *Conversation) GetConversationID() string { + if m != nil { + return m.ConversationID } return "" } -func (x *Conversation) GetRecvMsgOpt() int32 { - if x != nil { - return x.RecvMsgOpt +func (m *Conversation) GetRecvMsgOpt() int32 { + if m != nil { + return m.RecvMsgOpt } return 0 } -func (x *Conversation) GetConversationType() int32 { - if x != nil { - return x.ConversationType +func (m *Conversation) GetConversationType() int32 { + if m != nil { + return m.ConversationType } return 0 } -func (x *Conversation) GetUserID() string { - if x != nil { - return x.UserID +func (m *Conversation) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *Conversation) GetGroupID() string { - if x != nil { - return x.GroupID +func (m *Conversation) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *Conversation) GetUnreadCount() int32 { - if x != nil { - return x.UnreadCount +func (m *Conversation) GetUnreadCount() int32 { + if m != nil { + return m.UnreadCount } return 0 } -func (x *Conversation) GetDraftTextTime() int64 { - if x != nil { - return x.DraftTextTime +func (m *Conversation) GetDraftTextTime() int64 { + if m != nil { + return m.DraftTextTime } return 0 } -func (x *Conversation) GetIsPinned() bool { - if x != nil { - return x.IsPinned +func (m *Conversation) GetIsPinned() bool { + if m != nil { + return m.IsPinned } return false } -func (x *Conversation) GetAttachedInfo() string { - if x != nil { - return x.AttachedInfo +func (m *Conversation) GetAttachedInfo() string { + if m != nil { + return m.AttachedInfo } return "" } -func (x *Conversation) GetIsPrivateChat() bool { - if x != nil { - return x.IsPrivateChat +func (m *Conversation) GetIsPrivateChat() bool { + if m != nil { + return m.IsPrivateChat } return false } -func (x *Conversation) GetEx() string { - if x != nil { - return x.Ex +func (m *Conversation) GetEx() string { + if m != nil { + return m.Ex } return "" } type SetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversation *Conversation `protobuf:"bytes,1,opt,name=Conversation,proto3" json:"Conversation,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + Conversation *Conversation `protobuf:"bytes,1,opt,name=Conversation" json:"Conversation,omitempty"` + NotificationType int32 `protobuf:"varint,2,opt,name=notificationType" json:"notificationType,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SetConversationReq) Reset() { - *x = SetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SetConversationReq) Reset() { *m = SetConversationReq{} } +func (m *SetConversationReq) String() string { return proto.CompactTextString(m) } +func (*SetConversationReq) ProtoMessage() {} +func (*SetConversationReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{12} } - -func (x *SetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SetConversationReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SetConversationReq.Unmarshal(m, b) +} +func (m *SetConversationReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SetConversationReq.Marshal(b, m, deterministic) +} +func (dst *SetConversationReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SetConversationReq.Merge(dst, src) +} +func (m *SetConversationReq) XXX_Size() int { + return xxx_messageInfo_SetConversationReq.Size(m) +} +func (m *SetConversationReq) XXX_DiscardUnknown() { + xxx_messageInfo_SetConversationReq.DiscardUnknown(m) } -func (*SetConversationReq) ProtoMessage() {} +var xxx_messageInfo_SetConversationReq proto.InternalMessageInfo -func (x *SetConversationReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (m *SetConversationReq) GetConversation() *Conversation { + if m != nil { + return m.Conversation } - return mi.MessageOf(x) -} - -// Deprecated: Use SetConversationReq.ProtoReflect.Descriptor instead. -func (*SetConversationReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{12} + return nil } -func (x *SetConversationReq) GetConversation() *Conversation { - if x != nil { - return x.Conversation +func (m *SetConversationReq) GetNotificationType() int32 { + if m != nil { + return m.NotificationType } - return nil + return 0 } -func (x *SetConversationReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *SetConversationReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type SetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SetConversationResp) Reset() { - *x = SetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SetConversationResp) Reset() { *m = SetConversationResp{} } +func (m *SetConversationResp) String() string { return proto.CompactTextString(m) } +func (*SetConversationResp) ProtoMessage() {} +func (*SetConversationResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{13} } - -func (x *SetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SetConversationResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SetConversationResp.Unmarshal(m, b) } - -func (*SetConversationResp) ProtoMessage() {} - -func (x *SetConversationResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SetConversationResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SetConversationResp.Marshal(b, m, deterministic) } - -// Deprecated: Use SetConversationResp.ProtoReflect.Descriptor instead. -func (*SetConversationResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{13} +func (dst *SetConversationResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_SetConversationResp.Merge(dst, src) } +func (m *SetConversationResp) XXX_Size() int { + return xxx_messageInfo_SetConversationResp.Size(m) +} +func (m *SetConversationResp) XXX_DiscardUnknown() { + xxx_messageInfo_SetConversationResp.DiscardUnknown(m) +} + +var xxx_messageInfo_SetConversationResp proto.InternalMessageInfo -func (x *SetConversationResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *SetConversationResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type SetRecvMsgOptReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - ConversationID string `protobuf:"bytes,2,opt,name=ConversationID,proto3" json:"ConversationID,omitempty"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=RecvMsgOpt,proto3" json:"RecvMsgOpt,omitempty"` - OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + ConversationID string `protobuf:"bytes,2,opt,name=ConversationID" json:"ConversationID,omitempty"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=RecvMsgOpt" json:"RecvMsgOpt,omitempty"` + NotificationType int32 `protobuf:"varint,4,opt,name=notificationType" json:"notificationType,omitempty"` + OperationID string `protobuf:"bytes,5,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SetRecvMsgOptReq) Reset() { *m = SetRecvMsgOptReq{} } +func (m *SetRecvMsgOptReq) String() string { return proto.CompactTextString(m) } +func (*SetRecvMsgOptReq) ProtoMessage() {} +func (*SetRecvMsgOptReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{14} } - -func (x *SetRecvMsgOptReq) Reset() { - *x = SetRecvMsgOptReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SetRecvMsgOptReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SetRecvMsgOptReq.Unmarshal(m, b) } - -func (x *SetRecvMsgOptReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SetRecvMsgOptReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SetRecvMsgOptReq.Marshal(b, m, deterministic) +} +func (dst *SetRecvMsgOptReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_SetRecvMsgOptReq.Merge(dst, src) +} +func (m *SetRecvMsgOptReq) XXX_Size() int { + return xxx_messageInfo_SetRecvMsgOptReq.Size(m) +} +func (m *SetRecvMsgOptReq) XXX_DiscardUnknown() { + xxx_messageInfo_SetRecvMsgOptReq.DiscardUnknown(m) } -func (*SetRecvMsgOptReq) ProtoMessage() {} +var xxx_messageInfo_SetRecvMsgOptReq proto.InternalMessageInfo -func (x *SetRecvMsgOptReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (m *SetRecvMsgOptReq) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } - return mi.MessageOf(x) -} - -// Deprecated: Use SetRecvMsgOptReq.ProtoReflect.Descriptor instead. -func (*SetRecvMsgOptReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{14} + return "" } -func (x *SetRecvMsgOptReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *SetRecvMsgOptReq) GetConversationID() string { + if m != nil { + return m.ConversationID } return "" } -func (x *SetRecvMsgOptReq) GetConversationID() string { - if x != nil { - return x.ConversationID +func (m *SetRecvMsgOptReq) GetRecvMsgOpt() int32 { + if m != nil { + return m.RecvMsgOpt } - return "" + return 0 } -func (x *SetRecvMsgOptReq) GetRecvMsgOpt() int32 { - if x != nil { - return x.RecvMsgOpt +func (m *SetRecvMsgOptReq) GetNotificationType() int32 { + if m != nil { + return m.NotificationType } return 0 } -func (x *SetRecvMsgOptReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *SetRecvMsgOptReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type SetRecvMsgOptResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *SetRecvMsgOptResp) Reset() { - *x = SetRecvMsgOptResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *SetRecvMsgOptResp) Reset() { *m = SetRecvMsgOptResp{} } +func (m *SetRecvMsgOptResp) String() string { return proto.CompactTextString(m) } +func (*SetRecvMsgOptResp) ProtoMessage() {} +func (*SetRecvMsgOptResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{15} } - -func (x *SetRecvMsgOptResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *SetRecvMsgOptResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SetRecvMsgOptResp.Unmarshal(m, b) } - -func (*SetRecvMsgOptResp) ProtoMessage() {} - -func (x *SetRecvMsgOptResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *SetRecvMsgOptResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SetRecvMsgOptResp.Marshal(b, m, deterministic) } - -// Deprecated: Use SetRecvMsgOptResp.ProtoReflect.Descriptor instead. -func (*SetRecvMsgOptResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{15} +func (dst *SetRecvMsgOptResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_SetRecvMsgOptResp.Merge(dst, src) +} +func (m *SetRecvMsgOptResp) XXX_Size() int { + return xxx_messageInfo_SetRecvMsgOptResp.Size(m) +} +func (m *SetRecvMsgOptResp) XXX_DiscardUnknown() { + xxx_messageInfo_SetRecvMsgOptResp.DiscardUnknown(m) } -func (x *SetRecvMsgOptResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +var xxx_messageInfo_SetRecvMsgOptResp proto.InternalMessageInfo + +func (m *SetRecvMsgOptResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type GetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=ConversationID,proto3" json:"ConversationID,omitempty"` - OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + ConversationID string `protobuf:"bytes,1,opt,name=ConversationID" json:"ConversationID,omitempty"` + OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetConversationReq) Reset() { - *x = GetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetConversationReq) Reset() { *m = GetConversationReq{} } +func (m *GetConversationReq) String() string { return proto.CompactTextString(m) } +func (*GetConversationReq) ProtoMessage() {} +func (*GetConversationReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{16} } - -func (x *GetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetConversationReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetConversationReq.Unmarshal(m, b) } - -func (*GetConversationReq) ProtoMessage() {} - -func (x *GetConversationReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetConversationReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetConversationReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetConversationReq.ProtoReflect.Descriptor instead. -func (*GetConversationReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{16} +func (dst *GetConversationReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetConversationReq.Merge(dst, src) +} +func (m *GetConversationReq) XXX_Size() int { + return xxx_messageInfo_GetConversationReq.Size(m) +} +func (m *GetConversationReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetConversationReq.DiscardUnknown(m) } -func (x *GetConversationReq) GetConversationID() string { - if x != nil { - return x.ConversationID +var xxx_messageInfo_GetConversationReq proto.InternalMessageInfo + +func (m *GetConversationReq) GetConversationID() string { + if m != nil { + return m.ConversationID } return "" } -func (x *GetConversationReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *GetConversationReq) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *GetConversationReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetConversationReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - Conversation *Conversation `protobuf:"bytes,2,opt,name=Conversation,proto3" json:"Conversation,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + Conversation *Conversation `protobuf:"bytes,2,opt,name=Conversation" json:"Conversation,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetConversationResp) Reset() { - *x = GetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetConversationResp) Reset() { *m = GetConversationResp{} } +func (m *GetConversationResp) String() string { return proto.CompactTextString(m) } +func (*GetConversationResp) ProtoMessage() {} +func (*GetConversationResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{17} } - -func (x *GetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetConversationResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetConversationResp.Unmarshal(m, b) } - -func (*GetConversationResp) ProtoMessage() {} - -func (x *GetConversationResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetConversationResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetConversationResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetConversationResp.ProtoReflect.Descriptor instead. -func (*GetConversationResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{17} +func (dst *GetConversationResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetConversationResp.Merge(dst, src) +} +func (m *GetConversationResp) XXX_Size() int { + return xxx_messageInfo_GetConversationResp.Size(m) +} +func (m *GetConversationResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetConversationResp.DiscardUnknown(m) } -func (x *GetConversationResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +var xxx_messageInfo_GetConversationResp proto.InternalMessageInfo + +func (m *GetConversationResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetConversationResp) GetConversation() *Conversation { - if x != nil { - return x.Conversation +func (m *GetConversationResp) GetConversation() *Conversation { + if m != nil { + return m.Conversation } return nil } type GetConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - ConversationIDs []string `protobuf:"bytes,2,rep,name=ConversationIDs,proto3" json:"ConversationIDs,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + ConversationIDs []string `protobuf:"bytes,2,rep,name=ConversationIDs" json:"ConversationIDs,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetConversationsReq) Reset() { - *x = GetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetConversationsReq) Reset() { *m = GetConversationsReq{} } +func (m *GetConversationsReq) String() string { return proto.CompactTextString(m) } +func (*GetConversationsReq) ProtoMessage() {} +func (*GetConversationsReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{18} } - -func (x *GetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetConversationsReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetConversationsReq.Unmarshal(m, b) } - -func (*GetConversationsReq) ProtoMessage() {} - -func (x *GetConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetConversationsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetConversationsReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetConversationsReq.ProtoReflect.Descriptor instead. -func (*GetConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{18} +func (dst *GetConversationsReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetConversationsReq.Merge(dst, src) +} +func (m *GetConversationsReq) XXX_Size() int { + return xxx_messageInfo_GetConversationsReq.Size(m) +} +func (m *GetConversationsReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetConversationsReq.DiscardUnknown(m) } -func (x *GetConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +var xxx_messageInfo_GetConversationsReq proto.InternalMessageInfo + +func (m *GetConversationsReq) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *GetConversationsReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs +func (m *GetConversationsReq) GetConversationIDs() []string { + if m != nil { + return m.ConversationIDs } return nil } -func (x *GetConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetConversationsReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - Conversations []*Conversation `protobuf:"bytes,2,rep,name=Conversations,proto3" json:"Conversations,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + Conversations []*Conversation `protobuf:"bytes,2,rep,name=Conversations" json:"Conversations,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetConversationsResp) Reset() { - *x = GetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetConversationsResp) Reset() { *m = GetConversationsResp{} } +func (m *GetConversationsResp) String() string { return proto.CompactTextString(m) } +func (*GetConversationsResp) ProtoMessage() {} +func (*GetConversationsResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{19} } - -func (x *GetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetConversationsResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetConversationsResp.Unmarshal(m, b) } - -func (*GetConversationsResp) ProtoMessage() {} - -func (x *GetConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetConversationsResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetConversationsResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetConversationsResp.ProtoReflect.Descriptor instead. -func (*GetConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{19} +func (dst *GetConversationsResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetConversationsResp.Merge(dst, src) } +func (m *GetConversationsResp) XXX_Size() int { + return xxx_messageInfo_GetConversationsResp.Size(m) +} +func (m *GetConversationsResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetConversationsResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetConversationsResp proto.InternalMessageInfo -func (x *GetConversationsResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetConversationsResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetConversationsResp) GetConversations() []*Conversation { - if x != nil { - return x.Conversations +func (m *GetConversationsResp) GetConversations() []*Conversation { + if m != nil { + return m.Conversations } return nil } type GetAllConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetAllConversationsReq) Reset() { - *x = GetAllConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetAllConversationsReq) Reset() { *m = GetAllConversationsReq{} } +func (m *GetAllConversationsReq) String() string { return proto.CompactTextString(m) } +func (*GetAllConversationsReq) ProtoMessage() {} +func (*GetAllConversationsReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{20} } - -func (x *GetAllConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetAllConversationsReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetAllConversationsReq.Unmarshal(m, b) } - -func (*GetAllConversationsReq) ProtoMessage() {} - -func (x *GetAllConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetAllConversationsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetAllConversationsReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetAllConversationsReq.ProtoReflect.Descriptor instead. -func (*GetAllConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{20} +func (dst *GetAllConversationsReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetAllConversationsReq.Merge(dst, src) } +func (m *GetAllConversationsReq) XXX_Size() int { + return xxx_messageInfo_GetAllConversationsReq.Size(m) +} +func (m *GetAllConversationsReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetAllConversationsReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetAllConversationsReq proto.InternalMessageInfo -func (x *GetAllConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *GetAllConversationsReq) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *GetAllConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetAllConversationsReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetAllConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - Conversations []*Conversation `protobuf:"bytes,2,rep,name=Conversations,proto3" json:"Conversations,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + Conversations []*Conversation `protobuf:"bytes,2,rep,name=Conversations" json:"Conversations,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetAllConversationsResp) Reset() { - *x = GetAllConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetAllConversationsResp) Reset() { *m = GetAllConversationsResp{} } +func (m *GetAllConversationsResp) String() string { return proto.CompactTextString(m) } +func (*GetAllConversationsResp) ProtoMessage() {} +func (*GetAllConversationsResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{21} } - -func (x *GetAllConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetAllConversationsResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetAllConversationsResp.Unmarshal(m, b) } - -func (*GetAllConversationsResp) ProtoMessage() {} - -func (x *GetAllConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetAllConversationsResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetAllConversationsResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetAllConversationsResp.ProtoReflect.Descriptor instead. -func (*GetAllConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{21} +func (dst *GetAllConversationsResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetAllConversationsResp.Merge(dst, src) } +func (m *GetAllConversationsResp) XXX_Size() int { + return xxx_messageInfo_GetAllConversationsResp.Size(m) +} +func (m *GetAllConversationsResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetAllConversationsResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetAllConversationsResp proto.InternalMessageInfo -func (x *GetAllConversationsResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetAllConversationsResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetAllConversationsResp) GetConversations() []*Conversation { - if x != nil { - return x.Conversations +func (m *GetAllConversationsResp) GetConversations() []*Conversation { + if m != nil { + return m.Conversations } return nil } type BatchSetConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*Conversation `protobuf:"bytes,1,rep,name=Conversations,proto3" json:"Conversations,omitempty"` - OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + Conversations []*Conversation `protobuf:"bytes,1,rep,name=Conversations" json:"Conversations,omitempty"` + OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID" json:"OwnerUserID,omitempty"` + NotificationType int32 `protobuf:"varint,3,opt,name=notificationType" json:"notificationType,omitempty"` + OperationID string `protobuf:"bytes,4,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *BatchSetConversationsReq) Reset() { *m = BatchSetConversationsReq{} } +func (m *BatchSetConversationsReq) String() string { return proto.CompactTextString(m) } +func (*BatchSetConversationsReq) ProtoMessage() {} +func (*BatchSetConversationsReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{22} } - -func (x *BatchSetConversationsReq) Reset() { - *x = BatchSetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *BatchSetConversationsReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BatchSetConversationsReq.Unmarshal(m, b) } - -func (x *BatchSetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *BatchSetConversationsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BatchSetConversationsReq.Marshal(b, m, deterministic) } - -func (*BatchSetConversationsReq) ProtoMessage() {} - -func (x *BatchSetConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *BatchSetConversationsReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_BatchSetConversationsReq.Merge(dst, src) } - -// Deprecated: Use BatchSetConversationsReq.ProtoReflect.Descriptor instead. -func (*BatchSetConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{22} +func (m *BatchSetConversationsReq) XXX_Size() int { + return xxx_messageInfo_BatchSetConversationsReq.Size(m) +} +func (m *BatchSetConversationsReq) XXX_DiscardUnknown() { + xxx_messageInfo_BatchSetConversationsReq.DiscardUnknown(m) } -func (x *BatchSetConversationsReq) GetConversations() []*Conversation { - if x != nil { - return x.Conversations +var xxx_messageInfo_BatchSetConversationsReq proto.InternalMessageInfo + +func (m *BatchSetConversationsReq) GetConversations() []*Conversation { + if m != nil { + return m.Conversations } return nil } -func (x *BatchSetConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *BatchSetConversationsReq) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *BatchSetConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *BatchSetConversationsReq) GetNotificationType() int32 { + if m != nil { + return m.NotificationType + } + return 0 +} + +func (m *BatchSetConversationsReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type BatchSetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` - Success []string `protobuf:"bytes,2,rep,name=Success,proto3" json:"Success,omitempty"` - Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + Success []string `protobuf:"bytes,2,rep,name=Success" json:"Success,omitempty"` + Failed []string `protobuf:"bytes,3,rep,name=Failed" json:"Failed,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BatchSetConversationsResp) Reset() { - *x = BatchSetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *BatchSetConversationsResp) Reset() { *m = BatchSetConversationsResp{} } +func (m *BatchSetConversationsResp) String() string { return proto.CompactTextString(m) } +func (*BatchSetConversationsResp) ProtoMessage() {} +func (*BatchSetConversationsResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{23} } - -func (x *BatchSetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *BatchSetConversationsResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BatchSetConversationsResp.Unmarshal(m, b) } - -func (*BatchSetConversationsResp) ProtoMessage() {} - -func (x *BatchSetConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *BatchSetConversationsResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BatchSetConversationsResp.Marshal(b, m, deterministic) } - -// Deprecated: Use BatchSetConversationsResp.ProtoReflect.Descriptor instead. -func (*BatchSetConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{23} +func (dst *BatchSetConversationsResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_BatchSetConversationsResp.Merge(dst, src) } +func (m *BatchSetConversationsResp) XXX_Size() int { + return xxx_messageInfo_BatchSetConversationsResp.Size(m) +} +func (m *BatchSetConversationsResp) XXX_DiscardUnknown() { + xxx_messageInfo_BatchSetConversationsResp.DiscardUnknown(m) +} + +var xxx_messageInfo_BatchSetConversationsResp proto.InternalMessageInfo -func (x *BatchSetConversationsResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *BatchSetConversationsResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *BatchSetConversationsResp) GetSuccess() []string { - if x != nil { - return x.Success +func (m *BatchSetConversationsResp) GetSuccess() []string { + if m != nil { + return m.Success } return nil } -func (x *BatchSetConversationsResp) GetFailed() []string { - if x != nil { - return x.Failed +func (m *BatchSetConversationsResp) GetFailed() []string { + if m != nil { + return m.Failed } return nil } type ResignUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=UserId,proto3" json:"UserId,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=UserId" json:"UserId,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *ResignUserReq) Reset() { - *x = ResignUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *ResignUserReq) Reset() { *m = ResignUserReq{} } +func (m *ResignUserReq) String() string { return proto.CompactTextString(m) } +func (*ResignUserReq) ProtoMessage() {} +func (*ResignUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{24} } - -func (x *ResignUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *ResignUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ResignUserReq.Unmarshal(m, b) } - -func (*ResignUserReq) ProtoMessage() {} - -func (x *ResignUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *ResignUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ResignUserReq.Marshal(b, m, deterministic) } - -// Deprecated: Use ResignUserReq.ProtoReflect.Descriptor instead. -func (*ResignUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{24} +func (dst *ResignUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_ResignUserReq.Merge(dst, src) } +func (m *ResignUserReq) XXX_Size() int { + return xxx_messageInfo_ResignUserReq.Size(m) +} +func (m *ResignUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_ResignUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_ResignUserReq proto.InternalMessageInfo -func (x *ResignUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *ResignUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *ResignUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *ResignUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type ResignUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp,proto3" json:"commonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *ResignUserResp) Reset() { - *x = ResignUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *ResignUserResp) Reset() { *m = ResignUserResp{} } +func (m *ResignUserResp) String() string { return proto.CompactTextString(m) } +func (*ResignUserResp) ProtoMessage() {} +func (*ResignUserResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{25} } - -func (x *ResignUserResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *ResignUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ResignUserResp.Unmarshal(m, b) } - -func (*ResignUserResp) ProtoMessage() {} - -func (x *ResignUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *ResignUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ResignUserResp.Marshal(b, m, deterministic) } - -// Deprecated: Use ResignUserResp.ProtoReflect.Descriptor instead. -func (*ResignUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{25} +func (dst *ResignUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_ResignUserResp.Merge(dst, src) } +func (m *ResignUserResp) XXX_Size() int { + return xxx_messageInfo_ResignUserResp.Size(m) +} +func (m *ResignUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_ResignUserResp.DiscardUnknown(m) +} + +var xxx_messageInfo_ResignUserResp proto.InternalMessageInfo -func (x *ResignUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *ResignUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type GetUserByIdReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=UserId,proto3" json:"UserId,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=UserId" json:"UserId,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUserByIdReq) Reset() { - *x = GetUserByIdReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUserByIdReq) Reset() { *m = GetUserByIdReq{} } +func (m *GetUserByIdReq) String() string { return proto.CompactTextString(m) } +func (*GetUserByIdReq) ProtoMessage() {} +func (*GetUserByIdReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{26} } - -func (x *GetUserByIdReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUserByIdReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserByIdReq.Unmarshal(m, b) } - -func (*GetUserByIdReq) ProtoMessage() {} - -func (x *GetUserByIdReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUserByIdReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserByIdReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetUserByIdReq.ProtoReflect.Descriptor instead. -func (*GetUserByIdReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{26} +func (dst *GetUserByIdReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserByIdReq.Merge(dst, src) +} +func (m *GetUserByIdReq) XXX_Size() int { + return xxx_messageInfo_GetUserByIdReq.Size(m) +} +func (m *GetUserByIdReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserByIdReq.DiscardUnknown(m) } -func (x *GetUserByIdReq) GetUserId() string { - if x != nil { - return x.UserId +var xxx_messageInfo_GetUserByIdReq proto.InternalMessageInfo + +func (m *GetUserByIdReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *GetUserByIdReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetUserByIdReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type User struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ProfilePhoto string `protobuf:"bytes,1,opt,name=ProfilePhoto,proto3" json:"ProfilePhoto,omitempty"` - Nickname string `protobuf:"bytes,2,opt,name=Nickname,proto3" json:"Nickname,omitempty"` - UserId string `protobuf:"bytes,3,opt,name=UserId,proto3" json:"UserId,omitempty"` - CreateTime string `protobuf:"bytes,4,opt,name=CreateTime,proto3" json:"CreateTime,omitempty"` - IsBlock bool `protobuf:"varint,5,opt,name=IsBlock,proto3" json:"IsBlock,omitempty"` + ProfilePhoto string `protobuf:"bytes,1,opt,name=ProfilePhoto" json:"ProfilePhoto,omitempty"` + Nickname string `protobuf:"bytes,2,opt,name=Nickname" json:"Nickname,omitempty"` + UserId string `protobuf:"bytes,3,opt,name=UserId" json:"UserId,omitempty"` + CreateTime string `protobuf:"bytes,4,opt,name=CreateTime" json:"CreateTime,omitempty"` + IsBlock bool `protobuf:"varint,5,opt,name=IsBlock" json:"IsBlock,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *User) Reset() { *m = User{} } +func (m *User) String() string { return proto.CompactTextString(m) } +func (*User) ProtoMessage() {} +func (*User) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{27} } - -func (x *User) Reset() { - *x = User{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *User) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_User.Unmarshal(m, b) } - -func (x *User) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *User) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_User.Marshal(b, m, deterministic) } - -func (*User) ProtoMessage() {} - -func (x *User) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *User) XXX_Merge(src proto.Message) { + xxx_messageInfo_User.Merge(dst, src) } - -// Deprecated: Use User.ProtoReflect.Descriptor instead. -func (*User) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{27} +func (m *User) XXX_Size() int { + return xxx_messageInfo_User.Size(m) } +func (m *User) XXX_DiscardUnknown() { + xxx_messageInfo_User.DiscardUnknown(m) +} + +var xxx_messageInfo_User proto.InternalMessageInfo -func (x *User) GetProfilePhoto() string { - if x != nil { - return x.ProfilePhoto +func (m *User) GetProfilePhoto() string { + if m != nil { + return m.ProfilePhoto } return "" } -func (x *User) GetNickname() string { - if x != nil { - return x.Nickname +func (m *User) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *User) GetUserId() string { - if x != nil { - return x.UserId +func (m *User) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *User) GetCreateTime() string { - if x != nil { - return x.CreateTime +func (m *User) GetCreateTime() string { + if m != nil { + return m.CreateTime } return "" } -func (x *User) GetIsBlock() bool { - if x != nil { - return x.IsBlock +func (m *User) GetIsBlock() bool { + if m != nil { + return m.IsBlock } return false } type GetUserByIdResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + User *User `protobuf:"bytes,2,opt,name=user" json:"user,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUserByIdResp) Reset() { - *x = GetUserByIdResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUserByIdResp) Reset() { *m = GetUserByIdResp{} } +func (m *GetUserByIdResp) String() string { return proto.CompactTextString(m) } +func (*GetUserByIdResp) ProtoMessage() {} +func (*GetUserByIdResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{28} } - -func (x *GetUserByIdResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUserByIdResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUserByIdResp.Unmarshal(m, b) } - -func (*GetUserByIdResp) ProtoMessage() {} - -func (x *GetUserByIdResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUserByIdResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUserByIdResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetUserByIdResp.ProtoReflect.Descriptor instead. -func (*GetUserByIdResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{28} +func (dst *GetUserByIdResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUserByIdResp.Merge(dst, src) +} +func (m *GetUserByIdResp) XXX_Size() int { + return xxx_messageInfo_GetUserByIdResp.Size(m) } +func (m *GetUserByIdResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetUserByIdResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUserByIdResp proto.InternalMessageInfo -func (x *GetUserByIdResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetUserByIdResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetUserByIdResp) GetUser() *User { - if x != nil { - return x.User +func (m *GetUserByIdResp) GetUser() *User { + if m != nil { + return m.User } return nil } type GetUsersByNameReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserName string `protobuf:"bytes,1,opt,name=UserName,proto3" json:"UserName,omitempty"` - Pagination *sdk_ws.RequestPagination `protobuf:"bytes,2,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + UserName string `protobuf:"bytes,1,opt,name=UserName" json:"UserName,omitempty"` + Pagination *sdk_ws.RequestPagination `protobuf:"bytes,2,opt,name=Pagination" json:"Pagination,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUsersByNameReq) Reset() { - *x = GetUsersByNameReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUsersByNameReq) Reset() { *m = GetUsersByNameReq{} } +func (m *GetUsersByNameReq) String() string { return proto.CompactTextString(m) } +func (*GetUsersByNameReq) ProtoMessage() {} +func (*GetUsersByNameReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{29} } - -func (x *GetUsersByNameReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUsersByNameReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUsersByNameReq.Unmarshal(m, b) } - -func (*GetUsersByNameReq) ProtoMessage() {} - -func (x *GetUsersByNameReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUsersByNameReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUsersByNameReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetUsersByNameReq.ProtoReflect.Descriptor instead. -func (*GetUsersByNameReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{29} +func (dst *GetUsersByNameReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUsersByNameReq.Merge(dst, src) +} +func (m *GetUsersByNameReq) XXX_Size() int { + return xxx_messageInfo_GetUsersByNameReq.Size(m) } +func (m *GetUsersByNameReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetUsersByNameReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUsersByNameReq proto.InternalMessageInfo -func (x *GetUsersByNameReq) GetUserName() string { - if x != nil { - return x.UserName +func (m *GetUsersByNameReq) GetUserName() string { + if m != nil { + return m.UserName } return "" } -func (x *GetUsersByNameReq) GetPagination() *sdk_ws.RequestPagination { - if x != nil { - return x.Pagination +func (m *GetUsersByNameReq) GetPagination() *sdk_ws.RequestPagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetUsersByNameReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetUsersByNameReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetUsersByNameResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Users []*User `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"` - Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,2,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - UserNums int32 `protobuf:"varint,3,opt,name=UserNums,proto3" json:"UserNums,omitempty"` + Users []*User `protobuf:"bytes,1,rep,name=users" json:"users,omitempty"` + Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,2,opt,name=Pagination" json:"Pagination,omitempty"` + UserNums int32 `protobuf:"varint,3,opt,name=UserNums" json:"UserNums,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUsersByNameResp) Reset() { - *x = GetUsersByNameResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUsersByNameResp) Reset() { *m = GetUsersByNameResp{} } +func (m *GetUsersByNameResp) String() string { return proto.CompactTextString(m) } +func (*GetUsersByNameResp) ProtoMessage() {} +func (*GetUsersByNameResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{30} } - -func (x *GetUsersByNameResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUsersByNameResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUsersByNameResp.Unmarshal(m, b) } - -func (*GetUsersByNameResp) ProtoMessage() {} - -func (x *GetUsersByNameResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUsersByNameResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUsersByNameResp.Marshal(b, m, deterministic) +} +func (dst *GetUsersByNameResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUsersByNameResp.Merge(dst, src) +} +func (m *GetUsersByNameResp) XXX_Size() int { + return xxx_messageInfo_GetUsersByNameResp.Size(m) +} +func (m *GetUsersByNameResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetUsersByNameResp.DiscardUnknown(m) } -// Deprecated: Use GetUsersByNameResp.ProtoReflect.Descriptor instead. -func (*GetUsersByNameResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{30} -} +var xxx_messageInfo_GetUsersByNameResp proto.InternalMessageInfo -func (x *GetUsersByNameResp) GetUsers() []*User { - if x != nil { - return x.Users +func (m *GetUsersByNameResp) GetUsers() []*User { + if m != nil { + return m.Users } return nil } -func (x *GetUsersByNameResp) GetPagination() *sdk_ws.ResponsePagination { - if x != nil { - return x.Pagination +func (m *GetUsersByNameResp) GetPagination() *sdk_ws.ResponsePagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetUsersByNameResp) GetUserNums() int32 { - if x != nil { - return x.UserNums +func (m *GetUsersByNameResp) GetUserNums() int32 { + if m != nil { + return m.UserNums } return 0 } type AlterUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=UserId,proto3" json:"UserId,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - PhoneNumber int64 `protobuf:"varint,3,opt,name=PhoneNumber,proto3" json:"PhoneNumber,omitempty"` - Nickname string `protobuf:"bytes,4,opt,name=Nickname,proto3" json:"Nickname,omitempty"` - Email string `protobuf:"bytes,5,opt,name=Email,proto3" json:"Email,omitempty"` - OpUserId string `protobuf:"bytes,6,opt,name=OpUserId,proto3" json:"OpUserId,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=UserId" json:"UserId,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + PhoneNumber int64 `protobuf:"varint,3,opt,name=PhoneNumber" json:"PhoneNumber,omitempty"` + Nickname string `protobuf:"bytes,4,opt,name=Nickname" json:"Nickname,omitempty"` + Email string `protobuf:"bytes,5,opt,name=Email" json:"Email,omitempty"` + OpUserId string `protobuf:"bytes,6,opt,name=OpUserId" json:"OpUserId,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *AlterUserReq) Reset() { *m = AlterUserReq{} } +func (m *AlterUserReq) String() string { return proto.CompactTextString(m) } +func (*AlterUserReq) ProtoMessage() {} +func (*AlterUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{31} } - -func (x *AlterUserReq) Reset() { - *x = AlterUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AlterUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AlterUserReq.Unmarshal(m, b) } - -func (x *AlterUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AlterUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AlterUserReq.Marshal(b, m, deterministic) } - -func (*AlterUserReq) ProtoMessage() {} - -func (x *AlterUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *AlterUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlterUserReq.Merge(dst, src) } - -// Deprecated: Use AlterUserReq.ProtoReflect.Descriptor instead. -func (*AlterUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{31} +func (m *AlterUserReq) XXX_Size() int { + return xxx_messageInfo_AlterUserReq.Size(m) } +func (m *AlterUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_AlterUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_AlterUserReq proto.InternalMessageInfo -func (x *AlterUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *AlterUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *AlterUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *AlterUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *AlterUserReq) GetPhoneNumber() int64 { - if x != nil { - return x.PhoneNumber +func (m *AlterUserReq) GetPhoneNumber() int64 { + if m != nil { + return m.PhoneNumber } return 0 } -func (x *AlterUserReq) GetNickname() string { - if x != nil { - return x.Nickname +func (m *AlterUserReq) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *AlterUserReq) GetEmail() string { - if x != nil { - return x.Email +func (m *AlterUserReq) GetEmail() string { + if m != nil { + return m.Email } return "" } -func (x *AlterUserReq) GetOpUserId() string { - if x != nil { - return x.OpUserId +func (m *AlterUserReq) GetOpUserId() string { + if m != nil { + return m.OpUserId } return "" } type AlterUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *AlterUserResp) Reset() { - *x = AlterUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AlterUserResp) Reset() { *m = AlterUserResp{} } +func (m *AlterUserResp) String() string { return proto.CompactTextString(m) } +func (*AlterUserResp) ProtoMessage() {} +func (*AlterUserResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{32} } - -func (x *AlterUserResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AlterUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AlterUserResp.Unmarshal(m, b) } - -func (*AlterUserResp) ProtoMessage() {} - -func (x *AlterUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *AlterUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AlterUserResp.Marshal(b, m, deterministic) } - -// Deprecated: Use AlterUserResp.ProtoReflect.Descriptor instead. -func (*AlterUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{32} +func (dst *AlterUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlterUserResp.Merge(dst, src) +} +func (m *AlterUserResp) XXX_Size() int { + return xxx_messageInfo_AlterUserResp.Size(m) } +func (m *AlterUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_AlterUserResp.DiscardUnknown(m) +} + +var xxx_messageInfo_AlterUserResp proto.InternalMessageInfo -func (x *AlterUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *AlterUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type GetUsersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OperationID string `protobuf:"bytes,1,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - Pagination *sdk_ws.RequestPagination `protobuf:"bytes,2,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - UserName string `protobuf:"bytes,3,opt,name=UserName,proto3" json:"UserName,omitempty"` + OperationID string `protobuf:"bytes,1,opt,name=OperationID" json:"OperationID,omitempty"` + Pagination *sdk_ws.RequestPagination `protobuf:"bytes,2,opt,name=Pagination" json:"Pagination,omitempty"` + UserName string `protobuf:"bytes,3,opt,name=UserName" json:"UserName,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetUsersReq) Reset() { - *x = GetUsersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUsersReq) Reset() { *m = GetUsersReq{} } +func (m *GetUsersReq) String() string { return proto.CompactTextString(m) } +func (*GetUsersReq) ProtoMessage() {} +func (*GetUsersReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{33} } - -func (x *GetUsersReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUsersReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUsersReq.Unmarshal(m, b) } - -func (*GetUsersReq) ProtoMessage() {} - -func (x *GetUsersReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetUsersReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUsersReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetUsersReq.ProtoReflect.Descriptor instead. -func (*GetUsersReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{33} +func (dst *GetUsersReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUsersReq.Merge(dst, src) +} +func (m *GetUsersReq) XXX_Size() int { + return xxx_messageInfo_GetUsersReq.Size(m) } +func (m *GetUsersReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetUsersReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUsersReq proto.InternalMessageInfo -func (x *GetUsersReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetUsersReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *GetUsersReq) GetPagination() *sdk_ws.RequestPagination { - if x != nil { - return x.Pagination +func (m *GetUsersReq) GetPagination() *sdk_ws.RequestPagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetUsersReq) GetUserName() string { - if x != nil { - return x.UserName +func (m *GetUsersReq) GetUserName() string { + if m != nil { + return m.UserName } return "" } type GetUsersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - User []*User `protobuf:"bytes,2,rep,name=user,proto3" json:"user,omitempty"` - Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,3,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - UserNums int32 `protobuf:"varint,4,opt,name=UserNums,proto3" json:"UserNums,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + User []*User `protobuf:"bytes,2,rep,name=user" json:"user,omitempty"` + Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,3,opt,name=Pagination" json:"Pagination,omitempty"` + UserNums int32 `protobuf:"varint,4,opt,name=UserNums" json:"UserNums,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetUsersResp) Reset() { *m = GetUsersResp{} } +func (m *GetUsersResp) String() string { return proto.CompactTextString(m) } +func (*GetUsersResp) ProtoMessage() {} +func (*GetUsersResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{34} } - -func (x *GetUsersResp) Reset() { - *x = GetUsersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetUsersResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetUsersResp.Unmarshal(m, b) } - -func (x *GetUsersResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetUsersResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetUsersResp.Marshal(b, m, deterministic) } - -func (*GetUsersResp) ProtoMessage() {} - -func (x *GetUsersResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *GetUsersResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetUsersResp.Merge(dst, src) } - -// Deprecated: Use GetUsersResp.ProtoReflect.Descriptor instead. -func (*GetUsersResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{34} +func (m *GetUsersResp) XXX_Size() int { + return xxx_messageInfo_GetUsersResp.Size(m) } +func (m *GetUsersResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetUsersResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetUsersResp proto.InternalMessageInfo -func (x *GetUsersResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetUsersResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetUsersResp) GetUser() []*User { - if x != nil { - return x.User +func (m *GetUsersResp) GetUser() []*User { + if m != nil { + return m.User } return nil } -func (x *GetUsersResp) GetPagination() *sdk_ws.ResponsePagination { - if x != nil { - return x.Pagination +func (m *GetUsersResp) GetPagination() *sdk_ws.ResponsePagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetUsersResp) GetUserNums() int32 { - if x != nil { - return x.UserNums +func (m *GetUsersResp) GetUserNums() int32 { + if m != nil { + return m.UserNums } return 0 } type AddUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OperationID string `protobuf:"bytes,1,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - PhoneNumber string `protobuf:"bytes,2,opt,name=PhoneNumber,proto3" json:"PhoneNumber,omitempty"` - UserId string `protobuf:"bytes,3,opt,name=UserId,proto3" json:"UserId,omitempty"` - Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` - OpUserId string `protobuf:"bytes,5,opt,name=OpUserId,proto3" json:"OpUserId,omitempty"` + OperationID string `protobuf:"bytes,1,opt,name=OperationID" json:"OperationID,omitempty"` + PhoneNumber string `protobuf:"bytes,2,opt,name=PhoneNumber" json:"PhoneNumber,omitempty"` + UserId string `protobuf:"bytes,3,opt,name=UserId" json:"UserId,omitempty"` + Name string `protobuf:"bytes,4,opt,name=name" json:"name,omitempty"` + OpUserId string `protobuf:"bytes,5,opt,name=OpUserId" json:"OpUserId,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *AddUserReq) Reset() { *m = AddUserReq{} } +func (m *AddUserReq) String() string { return proto.CompactTextString(m) } +func (*AddUserReq) ProtoMessage() {} +func (*AddUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{35} } - -func (x *AddUserReq) Reset() { - *x = AddUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AddUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AddUserReq.Unmarshal(m, b) } - -func (x *AddUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AddUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AddUserReq.Marshal(b, m, deterministic) } - -func (*AddUserReq) ProtoMessage() {} - -func (x *AddUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *AddUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_AddUserReq.Merge(dst, src) } - -// Deprecated: Use AddUserReq.ProtoReflect.Descriptor instead. -func (*AddUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{35} +func (m *AddUserReq) XXX_Size() int { + return xxx_messageInfo_AddUserReq.Size(m) } +func (m *AddUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_AddUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_AddUserReq proto.InternalMessageInfo -func (x *AddUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *AddUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *AddUserReq) GetPhoneNumber() string { - if x != nil { - return x.PhoneNumber +func (m *AddUserReq) GetPhoneNumber() string { + if m != nil { + return m.PhoneNumber } return "" } -func (x *AddUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *AddUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *AddUserReq) GetName() string { - if x != nil { - return x.Name +func (m *AddUserReq) GetName() string { + if m != nil { + return m.Name } return "" } -func (x *AddUserReq) GetOpUserId() string { - if x != nil { - return x.OpUserId +func (m *AddUserReq) GetOpUserId() string { + if m != nil { + return m.OpUserId } return "" } type AddUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *AddUserResp) Reset() { - *x = AddUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *AddUserResp) Reset() { *m = AddUserResp{} } +func (m *AddUserResp) String() string { return proto.CompactTextString(m) } +func (*AddUserResp) ProtoMessage() {} +func (*AddUserResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{36} } - -func (x *AddUserResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *AddUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AddUserResp.Unmarshal(m, b) } - -func (*AddUserResp) ProtoMessage() {} - -func (x *AddUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *AddUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AddUserResp.Marshal(b, m, deterministic) } - -// Deprecated: Use AddUserResp.ProtoReflect.Descriptor instead. -func (*AddUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{36} +func (dst *AddUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_AddUserResp.Merge(dst, src) +} +func (m *AddUserResp) XXX_Size() int { + return xxx_messageInfo_AddUserResp.Size(m) } +func (m *AddUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_AddUserResp.DiscardUnknown(m) +} + +var xxx_messageInfo_AddUserResp proto.InternalMessageInfo -func (x *AddUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *AddUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type BlockUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=UserId,proto3" json:"UserId,omitempty"` - EndDisableTime string `protobuf:"bytes,2,opt,name=EndDisableTime,proto3" json:"EndDisableTime,omitempty"` - OperationID string `protobuf:"bytes,3,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - OpUserId string `protobuf:"bytes,4,opt,name=OpUserId,proto3" json:"OpUserId,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=UserId" json:"UserId,omitempty"` + EndDisableTime string `protobuf:"bytes,2,opt,name=EndDisableTime" json:"EndDisableTime,omitempty"` + OperationID string `protobuf:"bytes,3,opt,name=OperationID" json:"OperationID,omitempty"` + OpUserId string `protobuf:"bytes,4,opt,name=OpUserId" json:"OpUserId,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *BlockUserReq) Reset() { *m = BlockUserReq{} } +func (m *BlockUserReq) String() string { return proto.CompactTextString(m) } +func (*BlockUserReq) ProtoMessage() {} +func (*BlockUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{37} } - -func (x *BlockUserReq) Reset() { - *x = BlockUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *BlockUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlockUserReq.Unmarshal(m, b) } - -func (x *BlockUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *BlockUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlockUserReq.Marshal(b, m, deterministic) } - -func (*BlockUserReq) ProtoMessage() {} - -func (x *BlockUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[37] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *BlockUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlockUserReq.Merge(dst, src) } - -// Deprecated: Use BlockUserReq.ProtoReflect.Descriptor instead. -func (*BlockUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{37} +func (m *BlockUserReq) XXX_Size() int { + return xxx_messageInfo_BlockUserReq.Size(m) } +func (m *BlockUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_BlockUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_BlockUserReq proto.InternalMessageInfo -func (x *BlockUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *BlockUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *BlockUserReq) GetEndDisableTime() string { - if x != nil { - return x.EndDisableTime +func (m *BlockUserReq) GetEndDisableTime() string { + if m != nil { + return m.EndDisableTime } return "" } -func (x *BlockUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *BlockUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *BlockUserReq) GetOpUserId() string { - if x != nil { - return x.OpUserId +func (m *BlockUserReq) GetOpUserId() string { + if m != nil { + return m.OpUserId } return "" } type BlockUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BlockUserResp) Reset() { - *x = BlockUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *BlockUserResp) Reset() { *m = BlockUserResp{} } +func (m *BlockUserResp) String() string { return proto.CompactTextString(m) } +func (*BlockUserResp) ProtoMessage() {} +func (*BlockUserResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{38} } - -func (x *BlockUserResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *BlockUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlockUserResp.Unmarshal(m, b) } - -func (*BlockUserResp) ProtoMessage() {} - -func (x *BlockUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[38] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *BlockUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlockUserResp.Marshal(b, m, deterministic) } - -// Deprecated: Use BlockUserResp.ProtoReflect.Descriptor instead. -func (*BlockUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{38} +func (dst *BlockUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlockUserResp.Merge(dst, src) +} +func (m *BlockUserResp) XXX_Size() int { + return xxx_messageInfo_BlockUserResp.Size(m) } +func (m *BlockUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_BlockUserResp.DiscardUnknown(m) +} + +var xxx_messageInfo_BlockUserResp proto.InternalMessageInfo -func (x *BlockUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *BlockUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type UnBlockUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=UserId,proto3" json:"UserId,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - OpUserId string `protobuf:"bytes,3,opt,name=OpUserId,proto3" json:"OpUserId,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=UserId" json:"UserId,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + OpUserId string `protobuf:"bytes,3,opt,name=OpUserId" json:"OpUserId,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UnBlockUserReq) Reset() { - *x = UnBlockUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *UnBlockUserReq) Reset() { *m = UnBlockUserReq{} } +func (m *UnBlockUserReq) String() string { return proto.CompactTextString(m) } +func (*UnBlockUserReq) ProtoMessage() {} +func (*UnBlockUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{39} } - -func (x *UnBlockUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *UnBlockUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UnBlockUserReq.Unmarshal(m, b) } - -func (*UnBlockUserReq) ProtoMessage() {} - -func (x *UnBlockUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[39] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *UnBlockUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UnBlockUserReq.Marshal(b, m, deterministic) } - -// Deprecated: Use UnBlockUserReq.ProtoReflect.Descriptor instead. -func (*UnBlockUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{39} +func (dst *UnBlockUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_UnBlockUserReq.Merge(dst, src) +} +func (m *UnBlockUserReq) XXX_Size() int { + return xxx_messageInfo_UnBlockUserReq.Size(m) } +func (m *UnBlockUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_UnBlockUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_UnBlockUserReq proto.InternalMessageInfo -func (x *UnBlockUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *UnBlockUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *UnBlockUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *UnBlockUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *UnBlockUserReq) GetOpUserId() string { - if x != nil { - return x.OpUserId +func (m *UnBlockUserReq) GetOpUserId() string { + if m != nil { + return m.OpUserId } return "" } type UnBlockUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UnBlockUserResp) Reset() { - *x = UnBlockUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *UnBlockUserResp) Reset() { *m = UnBlockUserResp{} } +func (m *UnBlockUserResp) String() string { return proto.CompactTextString(m) } +func (*UnBlockUserResp) ProtoMessage() {} +func (*UnBlockUserResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{40} } - -func (x *UnBlockUserResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *UnBlockUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UnBlockUserResp.Unmarshal(m, b) } - -func (*UnBlockUserResp) ProtoMessage() {} - -func (x *UnBlockUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[40] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *UnBlockUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UnBlockUserResp.Marshal(b, m, deterministic) } - -// Deprecated: Use UnBlockUserResp.ProtoReflect.Descriptor instead. -func (*UnBlockUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{40} +func (dst *UnBlockUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_UnBlockUserResp.Merge(dst, src) +} +func (m *UnBlockUserResp) XXX_Size() int { + return xxx_messageInfo_UnBlockUserResp.Size(m) } +func (m *UnBlockUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_UnBlockUserResp.DiscardUnknown(m) +} + +var xxx_messageInfo_UnBlockUserResp proto.InternalMessageInfo -func (x *UnBlockUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *UnBlockUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } type GetBlockUsersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdk_ws.RequestPagination `protobuf:"bytes,1,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - BlockUserNum int32 `protobuf:"varint,3,opt,name=BlockUserNum,proto3" json:"BlockUserNum,omitempty"` + Pagination *sdk_ws.RequestPagination `protobuf:"bytes,1,opt,name=Pagination" json:"Pagination,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + BlockUserNum int32 `protobuf:"varint,3,opt,name=BlockUserNum" json:"BlockUserNum,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetBlockUsersReq) Reset() { - *x = GetBlockUsersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetBlockUsersReq) Reset() { *m = GetBlockUsersReq{} } +func (m *GetBlockUsersReq) String() string { return proto.CompactTextString(m) } +func (*GetBlockUsersReq) ProtoMessage() {} +func (*GetBlockUsersReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{41} } - -func (x *GetBlockUsersReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetBlockUsersReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetBlockUsersReq.Unmarshal(m, b) } - -func (*GetBlockUsersReq) ProtoMessage() {} - -func (x *GetBlockUsersReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[41] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetBlockUsersReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetBlockUsersReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetBlockUsersReq.ProtoReflect.Descriptor instead. -func (*GetBlockUsersReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{41} +func (dst *GetBlockUsersReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetBlockUsersReq.Merge(dst, src) +} +func (m *GetBlockUsersReq) XXX_Size() int { + return xxx_messageInfo_GetBlockUsersReq.Size(m) } +func (m *GetBlockUsersReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetBlockUsersReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetBlockUsersReq proto.InternalMessageInfo -func (x *GetBlockUsersReq) GetPagination() *sdk_ws.RequestPagination { - if x != nil { - return x.Pagination +func (m *GetBlockUsersReq) GetPagination() *sdk_ws.RequestPagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetBlockUsersReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetBlockUsersReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *GetBlockUsersReq) GetBlockUserNum() int32 { - if x != nil { - return x.BlockUserNum +func (m *GetBlockUsersReq) GetBlockUserNum() int32 { + if m != nil { + return m.BlockUserNum } return 0 } type BlockUser struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - User *User `protobuf:"bytes,1,opt,name=User,proto3" json:"User,omitempty"` - BeginDisableTime string `protobuf:"bytes,2,opt,name=BeginDisableTime,proto3" json:"BeginDisableTime,omitempty"` - EndDisableTime string `protobuf:"bytes,3,opt,name=EndDisableTime,proto3" json:"EndDisableTime,omitempty"` + User *User `protobuf:"bytes,1,opt,name=User" json:"User,omitempty"` + BeginDisableTime string `protobuf:"bytes,2,opt,name=BeginDisableTime" json:"BeginDisableTime,omitempty"` + EndDisableTime string `protobuf:"bytes,3,opt,name=EndDisableTime" json:"EndDisableTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BlockUser) Reset() { - *x = BlockUser{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *BlockUser) Reset() { *m = BlockUser{} } +func (m *BlockUser) String() string { return proto.CompactTextString(m) } +func (*BlockUser) ProtoMessage() {} +func (*BlockUser) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{42} } - -func (x *BlockUser) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *BlockUser) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlockUser.Unmarshal(m, b) } - -func (*BlockUser) ProtoMessage() {} - -func (x *BlockUser) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[42] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *BlockUser) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlockUser.Marshal(b, m, deterministic) } - -// Deprecated: Use BlockUser.ProtoReflect.Descriptor instead. -func (*BlockUser) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{42} +func (dst *BlockUser) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlockUser.Merge(dst, src) +} +func (m *BlockUser) XXX_Size() int { + return xxx_messageInfo_BlockUser.Size(m) } +func (m *BlockUser) XXX_DiscardUnknown() { + xxx_messageInfo_BlockUser.DiscardUnknown(m) +} + +var xxx_messageInfo_BlockUser proto.InternalMessageInfo -func (x *BlockUser) GetUser() *User { - if x != nil { - return x.User +func (m *BlockUser) GetUser() *User { + if m != nil { + return m.User } return nil } -func (x *BlockUser) GetBeginDisableTime() string { - if x != nil { - return x.BeginDisableTime +func (m *BlockUser) GetBeginDisableTime() string { + if m != nil { + return m.BeginDisableTime } return "" } -func (x *BlockUser) GetEndDisableTime() string { - if x != nil { - return x.EndDisableTime +func (m *BlockUser) GetEndDisableTime() string { + if m != nil { + return m.EndDisableTime } return "" } type GetBlockUsersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` - BlockUsers []*BlockUser `protobuf:"bytes,2,rep,name=BlockUsers,proto3" json:"BlockUsers,omitempty"` - Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,3,opt,name=Pagination,proto3" json:"Pagination,omitempty"` - UserNums int32 `protobuf:"varint,4,opt,name=UserNums,proto3" json:"UserNums,omitempty"` + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + BlockUsers []*BlockUser `protobuf:"bytes,2,rep,name=BlockUsers" json:"BlockUsers,omitempty"` + Pagination *sdk_ws.ResponsePagination `protobuf:"bytes,3,opt,name=Pagination" json:"Pagination,omitempty"` + UserNums int32 `protobuf:"varint,4,opt,name=UserNums" json:"UserNums,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GetBlockUsersResp) Reset() { *m = GetBlockUsersResp{} } +func (m *GetBlockUsersResp) String() string { return proto.CompactTextString(m) } +func (*GetBlockUsersResp) ProtoMessage() {} +func (*GetBlockUsersResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{43} } - -func (x *GetBlockUsersResp) Reset() { - *x = GetBlockUsersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetBlockUsersResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetBlockUsersResp.Unmarshal(m, b) } - -func (x *GetBlockUsersResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetBlockUsersResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetBlockUsersResp.Marshal(b, m, deterministic) } - -func (*GetBlockUsersResp) ProtoMessage() {} - -func (x *GetBlockUsersResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[43] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (dst *GetBlockUsersResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetBlockUsersResp.Merge(dst, src) } - -// Deprecated: Use GetBlockUsersResp.ProtoReflect.Descriptor instead. -func (*GetBlockUsersResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{43} +func (m *GetBlockUsersResp) XXX_Size() int { + return xxx_messageInfo_GetBlockUsersResp.Size(m) } +func (m *GetBlockUsersResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetBlockUsersResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetBlockUsersResp proto.InternalMessageInfo -func (x *GetBlockUsersResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp +func (m *GetBlockUsersResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } return nil } -func (x *GetBlockUsersResp) GetBlockUsers() []*BlockUser { - if x != nil { - return x.BlockUsers +func (m *GetBlockUsersResp) GetBlockUsers() []*BlockUser { + if m != nil { + return m.BlockUsers } return nil } -func (x *GetBlockUsersResp) GetPagination() *sdk_ws.ResponsePagination { - if x != nil { - return x.Pagination +func (m *GetBlockUsersResp) GetPagination() *sdk_ws.ResponsePagination { + if m != nil { + return m.Pagination } return nil } -func (x *GetBlockUsersResp) GetUserNums() int32 { - if x != nil { - return x.UserNums +func (m *GetBlockUsersResp) GetUserNums() int32 { + if m != nil { + return m.UserNums } return 0 } type GetBlockUserByIdReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=User_id,json=UserId,proto3" json:"User_id,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=User_id,json=UserId" json:"User_id,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetBlockUserByIdReq) Reset() { - *x = GetBlockUserByIdReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetBlockUserByIdReq) Reset() { *m = GetBlockUserByIdReq{} } +func (m *GetBlockUserByIdReq) String() string { return proto.CompactTextString(m) } +func (*GetBlockUserByIdReq) ProtoMessage() {} +func (*GetBlockUserByIdReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{44} } - -func (x *GetBlockUserByIdReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetBlockUserByIdReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetBlockUserByIdReq.Unmarshal(m, b) } - -func (*GetBlockUserByIdReq) ProtoMessage() {} - -func (x *GetBlockUserByIdReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[44] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetBlockUserByIdReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetBlockUserByIdReq.Marshal(b, m, deterministic) } - -// Deprecated: Use GetBlockUserByIdReq.ProtoReflect.Descriptor instead. -func (*GetBlockUserByIdReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{44} +func (dst *GetBlockUserByIdReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetBlockUserByIdReq.Merge(dst, src) +} +func (m *GetBlockUserByIdReq) XXX_Size() int { + return xxx_messageInfo_GetBlockUserByIdReq.Size(m) } +func (m *GetBlockUserByIdReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetBlockUserByIdReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetBlockUserByIdReq proto.InternalMessageInfo -func (x *GetBlockUserByIdReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *GetBlockUserByIdReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *GetBlockUserByIdReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *GetBlockUserByIdReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } type GetBlockUserByIdResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - BlockUser *BlockUser `protobuf:"bytes,2,opt,name=BlockUser,proto3" json:"BlockUser,omitempty"` + BlockUser *BlockUser `protobuf:"bytes,2,opt,name=BlockUser" json:"BlockUser,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetBlockUserByIdResp) Reset() { - *x = GetBlockUserByIdResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *GetBlockUserByIdResp) Reset() { *m = GetBlockUserByIdResp{} } +func (m *GetBlockUserByIdResp) String() string { return proto.CompactTextString(m) } +func (*GetBlockUserByIdResp) ProtoMessage() {} +func (*GetBlockUserByIdResp) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{45} } - -func (x *GetBlockUserByIdResp) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *GetBlockUserByIdResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetBlockUserByIdResp.Unmarshal(m, b) } - -func (*GetBlockUserByIdResp) ProtoMessage() {} - -func (x *GetBlockUserByIdResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[45] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *GetBlockUserByIdResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetBlockUserByIdResp.Marshal(b, m, deterministic) } - -// Deprecated: Use GetBlockUserByIdResp.ProtoReflect.Descriptor instead. -func (*GetBlockUserByIdResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{45} +func (dst *GetBlockUserByIdResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetBlockUserByIdResp.Merge(dst, src) +} +func (m *GetBlockUserByIdResp) XXX_Size() int { + return xxx_messageInfo_GetBlockUserByIdResp.Size(m) } +func (m *GetBlockUserByIdResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetBlockUserByIdResp.DiscardUnknown(m) +} + +var xxx_messageInfo_GetBlockUserByIdResp proto.InternalMessageInfo -func (x *GetBlockUserByIdResp) GetBlockUser() *BlockUser { - if x != nil { - return x.BlockUser +func (m *GetBlockUserByIdResp) GetBlockUser() *BlockUser { + if m != nil { + return m.BlockUser } return nil } type DeleteUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserId string `protobuf:"bytes,1,opt,name=User_id,json=UserId,proto3" json:"User_id,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=OperationID,proto3" json:"OperationID,omitempty"` - OpUserId string `protobuf:"bytes,3,opt,name=OpUserId,proto3" json:"OpUserId,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=User_id,json=UserId" json:"User_id,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=OperationID" json:"OperationID,omitempty"` + OpUserId string `protobuf:"bytes,3,opt,name=OpUserId" json:"OpUserId,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *DeleteUserReq) Reset() { - *x = DeleteUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *DeleteUserReq) Reset() { *m = DeleteUserReq{} } +func (m *DeleteUserReq) String() string { return proto.CompactTextString(m) } +func (*DeleteUserReq) ProtoMessage() {} +func (*DeleteUserReq) Descriptor() ([]byte, []int) { + return fileDescriptor_user_6133bd34462fbb1a, []int{46} } - -func (x *DeleteUserReq) String() string { - return protoimpl.X.MessageStringOf(x) +func (m *DeleteUserReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DeleteUserReq.Unmarshal(m, b) } - -func (*DeleteUserReq) ProtoMessage() {} - -func (x *DeleteUserReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[46] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *DeleteUserReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DeleteUserReq.Marshal(b, m, deterministic) } - -// Deprecated: Use DeleteUserReq.ProtoReflect.Descriptor instead. -func (*DeleteUserReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{46} +func (dst *DeleteUserReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteUserReq.Merge(dst, src) +} +func (m *DeleteUserReq) XXX_Size() int { + return xxx_messageInfo_DeleteUserReq.Size(m) } +func (m *DeleteUserReq) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteUserReq.DiscardUnknown(m) +} + +var xxx_messageInfo_DeleteUserReq proto.InternalMessageInfo -func (x *DeleteUserReq) GetUserId() string { - if x != nil { - return x.UserId +func (m *DeleteUserReq) GetUserId() string { + if m != nil { + return m.UserId } return "" } -func (x *DeleteUserReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *DeleteUserReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *DeleteUserReq) GetOpUserId() string { - if x != nil { - return x.OpUserId +func (m *DeleteUserReq) GetOpUserId() string { + if m != nil { + return m.OpUserId } return "" } type DeleteUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp,proto3" json:"CommonResp,omitempty"` -} - -func (x *DeleteUserResp) Reset() { - *x = DeleteUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteUserResp) String() string { - return protoimpl.X.MessageStringOf(x) + CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (*DeleteUserResp) ProtoMessage() {} - -func (x *DeleteUserResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[47] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteUserResp.ProtoReflect.Descriptor instead. +func (m *DeleteUserResp) Reset() { *m = DeleteUserResp{} } +func (m *DeleteUserResp) String() string { return proto.CompactTextString(m) } +func (*DeleteUserResp) ProtoMessage() {} func (*DeleteUserResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{47} -} - -func (x *DeleteUserResp) GetCommonResp() *CommonResp { - if x != nil { - return x.CommonResp - } - return nil + return fileDescriptor_user_6133bd34462fbb1a, []int{47} } - -type AccountCheckResp_SingleUserStatus struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` - AccountStatus string `protobuf:"bytes,2,opt,name=accountStatus,proto3" json:"accountStatus,omitempty"` +func (m *DeleteUserResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DeleteUserResp.Unmarshal(m, b) } - -func (x *AccountCheckResp_SingleUserStatus) Reset() { - *x = AccountCheckResp_SingleUserStatus{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +func (m *DeleteUserResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DeleteUserResp.Marshal(b, m, deterministic) } - -func (x *AccountCheckResp_SingleUserStatus) String() string { - return protoimpl.X.MessageStringOf(x) +func (dst *DeleteUserResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeleteUserResp.Merge(dst, src) } - -func (*AccountCheckResp_SingleUserStatus) ProtoMessage() {} - -func (x *AccountCheckResp_SingleUserStatus) ProtoReflect() protoreflect.Message { - mi := &file_user_user_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +func (m *DeleteUserResp) XXX_Size() int { + return xxx_messageInfo_DeleteUserResp.Size(m) } - -// Deprecated: Use AccountCheckResp_SingleUserStatus.ProtoReflect.Descriptor instead. -func (*AccountCheckResp_SingleUserStatus) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{6, 0} +func (m *DeleteUserResp) XXX_DiscardUnknown() { + xxx_messageInfo_DeleteUserResp.DiscardUnknown(m) } -func (x *AccountCheckResp_SingleUserStatus) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} +var xxx_messageInfo_DeleteUserResp proto.InternalMessageInfo -func (x *AccountCheckResp_SingleUserStatus) GetAccountStatus() string { - if x != nil { - return x.AccountStatus +func (m *DeleteUserResp) GetCommonResp() *CommonResp { + if m != nil { + return m.CommonResp } - return "" + return nil } -var File_user_user_proto protoreflect.FileDescriptor - -var file_user_user_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x04, 0x75, 0x73, 0x65, 0x72, 0x1a, 0x21, 0x4f, 0x70, 0x65, 0x6e, 0x5f, 0x49, 0x4d, - 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x64, 0x6b, 0x5f, 0x77, - 0x73, 0x2f, 0x77, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3e, 0x0a, 0x0a, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x72, 0x43, - 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x22, 0x7a, 0x0a, 0x0e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x6f, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, - 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x46, - 0x61, 0x69, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x4f, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x41, 0x6c, - 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x64, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, - 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, - 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x79, - 0x0a, 0x0f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, - 0x71, 0x12, 0x28, 0x0a, 0x0f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x4f, - 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, - 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0xdf, 0x01, 0x0a, 0x10, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, - 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x47, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0x50, 0x0a, 0x10, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x6e, 0x0a, 0x0e, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, - 0x0a, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x84, 0x01, 0x0a, 0x0f, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, - 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, - 0x73, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, - 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, - 0x46, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x94, 0x03, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x77, 0x6e, 0x65, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, - 0x70, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, - 0x12, 0x20, 0x0a, 0x0b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x44, 0x72, 0x61, 0x66, 0x74, 0x54, 0x65, 0x78, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x44, 0x72, 0x61, 0x66, 0x74, - 0x54, 0x65, 0x78, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x49, 0x73, 0x50, 0x69, - 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x49, 0x73, 0x50, 0x69, - 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x41, 0x74, 0x74, 0x61, - 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x49, 0x73, 0x50, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0d, 0x49, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x12, 0x0e, - 0x0a, 0x02, 0x45, 0x78, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x45, 0x78, 0x22, 0x6e, - 0x0a, 0x12, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x12, 0x36, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x47, - 0x0a, 0x13, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x9e, 0x01, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x26, - 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, - 0x67, 0x4f, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, 0x65, 0x63, 0x76, - 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x45, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x52, - 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, - 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, - 0x80, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x20, - 0x0a, 0x0b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x22, 0x7f, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, - 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, 0x0a, 0x0c, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x83, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x28, 0x0a, - 0x0f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x82, 0x01, 0x0a, 0x14, 0x47, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x5c, - 0x0a, 0x16, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x77, 0x6e, 0x65, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x85, 0x01, 0x0a, - 0x17, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, - 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x18, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, - 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, - 0x7f, 0x0a, 0x19, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, - 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x46, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, - 0x22, 0x49, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x42, 0x0a, 0x0e, 0x52, - 0x65, 0x73, 0x69, 0x67, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, - 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, - 0x4a, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, - 0x71, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x98, 0x01, 0x0a, 0x04, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, - 0x68, 0x6f, 0x74, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x50, 0x68, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x69, 0x63, 0x6b, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4e, 0x69, 0x63, 0x6b, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x49, 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x49, - 0x73, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x63, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, - 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x75, - 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x97, 0x01, 0x0a, 0x11, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, - 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x44, 0x0a, - 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x99, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x05, - 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x12, 0x45, - 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, - 0x73, 0x22, 0xb8, 0x01, 0x0a, 0x0c, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0b, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x45, 0x6d, - 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x0d, - 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, - 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, - 0x91, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, - 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x12, 0x44, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, - 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x0a, 0x41, 0x64, - 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x8c, 0x01, 0x0a, 0x0c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, - 0x0a, 0x0e, 0x45, 0x6e, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x45, 0x6e, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x22, 0x41, 0x0a, 0x0d, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x66, 0x0a, 0x0e, 0x55, 0x6e, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, - 0x43, 0x0a, 0x0f, 0x55, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x9e, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x44, 0x0a, 0x0a, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, - 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, - 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x22, 0x7f, 0x0a, 0x09, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, - 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x04, 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0a, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x55, 0x73, - 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x42, 0x65, - 0x67, 0x69, 0x6e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, - 0x0a, 0x0e, 0x45, 0x6e, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x45, 0x6e, 0x64, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xd9, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2f, - 0x0a, 0x0a, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x0a, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, - 0x45, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x50, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, - 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x75, - 0x6d, 0x73, 0x22, 0x50, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, - 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x55, 0x73, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x45, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, - 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2d, 0x0a, 0x09, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0f, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x09, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x22, 0x66, 0x0a, 0x0d, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, - 0x55, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x22, 0x42, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x52, 0x0a, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x32, 0x97, 0x0b, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, - 0x12, 0x3a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x14, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x43, 0x0a, 0x0e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, - 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x3a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, - 0x12, 0x14, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3d, 0x0a, - 0x0c, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x15, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x41, - 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3d, 0x0a, 0x0c, - 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x15, 0x2e, 0x75, - 0x73, 0x65, 0x72, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x0f, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, - 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x52, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1c, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x49, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x19, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x58, 0x0a, 0x15, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x0f, - 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x18, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x40, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x52, 0x65, 0x63, 0x76, 0x4d, - 0x73, 0x67, 0x4f, 0x70, 0x74, 0x12, 0x16, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, - 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, - 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x42, 0x79, 0x49, 0x64, 0x12, 0x14, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x42, 0x79, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x73, 0x42, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x42, 0x79, 0x4e, - 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x37, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x69, 0x67, - 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x13, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, - 0x69, 0x67, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x52, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x34, 0x0a, 0x09, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x1a, 0x13, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x73, 0x12, 0x11, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2e, 0x0a, 0x07, 0x41, 0x64, 0x64, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x10, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x64, 0x64, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x41, 0x64, - 0x64, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x34, 0x0a, 0x09, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x3a, 0x0a, 0x0b, 0x55, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x14, - 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x6e, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x55, 0x6e, 0x42, 0x6c, - 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x40, 0x0a, 0x0d, 0x47, - 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x75, - 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, - 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x42, - 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x49, 0x0a, - 0x10, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, - 0x64, 0x12, 0x19, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, - 0x6b, 0x55, 0x73, 0x65, 0x72, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x75, - 0x73, 0x65, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, - 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x37, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x13, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x75, 0x73, - 0x65, 0x72, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x3b, 0x75, 0x73, 0x65, 0x72, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_user_user_proto_rawDescOnce sync.Once - file_user_user_proto_rawDescData = file_user_user_proto_rawDesc -) - -func file_user_user_proto_rawDescGZIP() []byte { - file_user_user_proto_rawDescOnce.Do(func() { - file_user_user_proto_rawDescData = protoimpl.X.CompressGZIP(file_user_user_proto_rawDescData) - }) - return file_user_user_proto_rawDescData -} - -var file_user_user_proto_msgTypes = make([]protoimpl.MessageInfo, 49) -var file_user_user_proto_goTypes = []interface{}{ - (*CommonResp)(nil), // 0: user.CommonResp - (*DeleteUsersReq)(nil), // 1: user.DeleteUsersReq - (*DeleteUsersResp)(nil), // 2: user.DeleteUsersResp - (*GetAllUserIDReq)(nil), // 3: user.GetAllUserIDReq - (*GetAllUserIDResp)(nil), // 4: user.GetAllUserIDResp - (*AccountCheckReq)(nil), // 5: user.AccountCheckReq - (*AccountCheckResp)(nil), // 6: user.AccountCheckResp - (*GetUserInfoReq)(nil), // 7: user.GetUserInfoReq - (*GetUserInfoResp)(nil), // 8: user.GetUserInfoResp - (*UpdateUserInfoReq)(nil), // 9: user.UpdateUserInfoReq - (*UpdateUserInfoResp)(nil), // 10: user.UpdateUserInfoResp - (*Conversation)(nil), // 11: user.Conversation - (*SetConversationReq)(nil), // 12: user.SetConversationReq - (*SetConversationResp)(nil), // 13: user.SetConversationResp - (*SetRecvMsgOptReq)(nil), // 14: user.SetRecvMsgOptReq - (*SetRecvMsgOptResp)(nil), // 15: user.SetRecvMsgOptResp - (*GetConversationReq)(nil), // 16: user.GetConversationReq - (*GetConversationResp)(nil), // 17: user.GetConversationResp - (*GetConversationsReq)(nil), // 18: user.GetConversationsReq - (*GetConversationsResp)(nil), // 19: user.GetConversationsResp - (*GetAllConversationsReq)(nil), // 20: user.GetAllConversationsReq - (*GetAllConversationsResp)(nil), // 21: user.GetAllConversationsResp - (*BatchSetConversationsReq)(nil), // 22: user.BatchSetConversationsReq - (*BatchSetConversationsResp)(nil), // 23: user.BatchSetConversationsResp - (*ResignUserReq)(nil), // 24: user.ResignUserReq - (*ResignUserResp)(nil), // 25: user.ResignUserResp - (*GetUserByIdReq)(nil), // 26: user.GetUserByIdReq - (*User)(nil), // 27: user.User - (*GetUserByIdResp)(nil), // 28: user.GetUserByIdResp - (*GetUsersByNameReq)(nil), // 29: user.GetUsersByNameReq - (*GetUsersByNameResp)(nil), // 30: user.GetUsersByNameResp - (*AlterUserReq)(nil), // 31: user.AlterUserReq - (*AlterUserResp)(nil), // 32: user.AlterUserResp - (*GetUsersReq)(nil), // 33: user.GetUsersReq - (*GetUsersResp)(nil), // 34: user.GetUsersResp - (*AddUserReq)(nil), // 35: user.AddUserReq - (*AddUserResp)(nil), // 36: user.AddUserResp - (*BlockUserReq)(nil), // 37: user.BlockUserReq - (*BlockUserResp)(nil), // 38: user.BlockUserResp - (*UnBlockUserReq)(nil), // 39: user.UnBlockUserReq - (*UnBlockUserResp)(nil), // 40: user.UnBlockUserResp - (*GetBlockUsersReq)(nil), // 41: user.GetBlockUsersReq - (*BlockUser)(nil), // 42: user.BlockUser - (*GetBlockUsersResp)(nil), // 43: user.GetBlockUsersResp - (*GetBlockUserByIdReq)(nil), // 44: user.GetBlockUserByIdReq - (*GetBlockUserByIdResp)(nil), // 45: user.GetBlockUserByIdResp - (*DeleteUserReq)(nil), // 46: user.DeleteUserReq - (*DeleteUserResp)(nil), // 47: user.DeleteUserResp - (*AccountCheckResp_SingleUserStatus)(nil), // 48: user.AccountCheckResp.SingleUserStatus - (*sdk_ws.UserInfo)(nil), // 49: server_api_params.UserInfo - (*sdk_ws.RequestPagination)(nil), // 50: server_api_params.RequestPagination - (*sdk_ws.ResponsePagination)(nil), // 51: server_api_params.ResponsePagination -} -var file_user_user_proto_depIdxs = []int32{ - 0, // 0: user.DeleteUsersResp.CommonResp:type_name -> user.CommonResp - 0, // 1: user.GetAllUserIDResp.CommonResp:type_name -> user.CommonResp - 0, // 2: user.AccountCheckResp.commonResp:type_name -> user.CommonResp - 48, // 3: user.AccountCheckResp.ResultList:type_name -> user.AccountCheckResp.SingleUserStatus - 0, // 4: user.GetUserInfoResp.commonResp:type_name -> user.CommonResp - 49, // 5: user.GetUserInfoResp.UserInfoList:type_name -> server_api_params.UserInfo - 49, // 6: user.UpdateUserInfoReq.UserInfo:type_name -> server_api_params.UserInfo - 0, // 7: user.UpdateUserInfoResp.commonResp:type_name -> user.CommonResp - 11, // 8: user.SetConversationReq.Conversation:type_name -> user.Conversation - 0, // 9: user.SetConversationResp.commonResp:type_name -> user.CommonResp - 0, // 10: user.SetRecvMsgOptResp.commonResp:type_name -> user.CommonResp - 0, // 11: user.GetConversationResp.commonResp:type_name -> user.CommonResp - 11, // 12: user.GetConversationResp.Conversation:type_name -> user.Conversation - 0, // 13: user.GetConversationsResp.commonResp:type_name -> user.CommonResp - 11, // 14: user.GetConversationsResp.Conversations:type_name -> user.Conversation - 0, // 15: user.GetAllConversationsResp.commonResp:type_name -> user.CommonResp - 11, // 16: user.GetAllConversationsResp.Conversations:type_name -> user.Conversation - 11, // 17: user.BatchSetConversationsReq.Conversations:type_name -> user.Conversation - 0, // 18: user.BatchSetConversationsResp.commonResp:type_name -> user.CommonResp - 0, // 19: user.ResignUserResp.commonResp:type_name -> user.CommonResp - 0, // 20: user.GetUserByIdResp.CommonResp:type_name -> user.CommonResp - 27, // 21: user.GetUserByIdResp.user:type_name -> user.User - 50, // 22: user.GetUsersByNameReq.Pagination:type_name -> server_api_params.RequestPagination - 27, // 23: user.GetUsersByNameResp.users:type_name -> user.User - 51, // 24: user.GetUsersByNameResp.Pagination:type_name -> server_api_params.ResponsePagination - 0, // 25: user.AlterUserResp.CommonResp:type_name -> user.CommonResp - 50, // 26: user.GetUsersReq.Pagination:type_name -> server_api_params.RequestPagination - 0, // 27: user.GetUsersResp.CommonResp:type_name -> user.CommonResp - 27, // 28: user.GetUsersResp.user:type_name -> user.User - 51, // 29: user.GetUsersResp.Pagination:type_name -> server_api_params.ResponsePagination - 0, // 30: user.AddUserResp.CommonResp:type_name -> user.CommonResp - 0, // 31: user.BlockUserResp.CommonResp:type_name -> user.CommonResp - 0, // 32: user.UnBlockUserResp.CommonResp:type_name -> user.CommonResp - 50, // 33: user.GetBlockUsersReq.Pagination:type_name -> server_api_params.RequestPagination - 27, // 34: user.BlockUser.User:type_name -> user.User - 0, // 35: user.GetBlockUsersResp.CommonResp:type_name -> user.CommonResp - 42, // 36: user.GetBlockUsersResp.BlockUsers:type_name -> user.BlockUser - 51, // 37: user.GetBlockUsersResp.Pagination:type_name -> server_api_params.ResponsePagination - 42, // 38: user.GetBlockUserByIdResp.BlockUser:type_name -> user.BlockUser - 0, // 39: user.DeleteUserResp.CommonResp:type_name -> user.CommonResp - 7, // 40: user.user.GetUserInfo:input_type -> user.GetUserInfoReq - 9, // 41: user.user.UpdateUserInfo:input_type -> user.UpdateUserInfoReq - 1, // 42: user.user.DeleteUsers:input_type -> user.DeleteUsersReq - 3, // 43: user.user.GetAllUserID:input_type -> user.GetAllUserIDReq - 5, // 44: user.user.AccountCheck:input_type -> user.AccountCheckReq - 16, // 45: user.user.GetConversation:input_type -> user.GetConversationReq - 20, // 46: user.user.GetAllConversations:input_type -> user.GetAllConversationsReq - 18, // 47: user.user.GetConversations:input_type -> user.GetConversationsReq - 22, // 48: user.user.BatchSetConversations:input_type -> user.BatchSetConversationsReq - 12, // 49: user.user.SetConversation:input_type -> user.SetConversationReq - 14, // 50: user.user.SetRecvMsgOpt:input_type -> user.SetRecvMsgOptReq - 26, // 51: user.user.GetUserById:input_type -> user.GetUserByIdReq - 29, // 52: user.user.GetUsersByName:input_type -> user.GetUsersByNameReq - 24, // 53: user.user.ResignUser:input_type -> user.ResignUserReq - 31, // 54: user.user.AlterUser:input_type -> user.AlterUserReq - 33, // 55: user.user.GetUsers:input_type -> user.GetUsersReq - 35, // 56: user.user.AddUser:input_type -> user.AddUserReq - 37, // 57: user.user.BlockUser:input_type -> user.BlockUserReq - 39, // 58: user.user.UnBlockUser:input_type -> user.UnBlockUserReq - 41, // 59: user.user.GetBlockUsers:input_type -> user.GetBlockUsersReq - 44, // 60: user.user.GetBlockUserById:input_type -> user.GetBlockUserByIdReq - 46, // 61: user.user.DeleteUser:input_type -> user.DeleteUserReq - 8, // 62: user.user.GetUserInfo:output_type -> user.GetUserInfoResp - 10, // 63: user.user.UpdateUserInfo:output_type -> user.UpdateUserInfoResp - 2, // 64: user.user.DeleteUsers:output_type -> user.DeleteUsersResp - 4, // 65: user.user.GetAllUserID:output_type -> user.GetAllUserIDResp - 6, // 66: user.user.AccountCheck:output_type -> user.AccountCheckResp - 17, // 67: user.user.GetConversation:output_type -> user.GetConversationResp - 21, // 68: user.user.GetAllConversations:output_type -> user.GetAllConversationsResp - 19, // 69: user.user.GetConversations:output_type -> user.GetConversationsResp - 23, // 70: user.user.BatchSetConversations:output_type -> user.BatchSetConversationsResp - 13, // 71: user.user.SetConversation:output_type -> user.SetConversationResp - 15, // 72: user.user.SetRecvMsgOpt:output_type -> user.SetRecvMsgOptResp - 28, // 73: user.user.GetUserById:output_type -> user.GetUserByIdResp - 30, // 74: user.user.GetUsersByName:output_type -> user.GetUsersByNameResp - 25, // 75: user.user.ResignUser:output_type -> user.ResignUserResp - 32, // 76: user.user.AlterUser:output_type -> user.AlterUserResp - 34, // 77: user.user.GetUsers:output_type -> user.GetUsersResp - 36, // 78: user.user.AddUser:output_type -> user.AddUserResp - 38, // 79: user.user.BlockUser:output_type -> user.BlockUserResp - 40, // 80: user.user.UnBlockUser:output_type -> user.UnBlockUserResp - 43, // 81: user.user.GetBlockUsers:output_type -> user.GetBlockUsersResp - 45, // 82: user.user.GetBlockUserById:output_type -> user.GetBlockUserByIdResp - 47, // 83: user.user.DeleteUser:output_type -> user.DeleteUserResp - 62, // [62:84] is the sub-list for method output_type - 40, // [40:62] is the sub-list for method input_type - 40, // [40:40] is the sub-list for extension type_name - 40, // [40:40] is the sub-list for extension extendee - 0, // [0:40] is the sub-list for field type_name -} - -func init() { file_user_user_proto_init() } -func file_user_user_proto_init() { - if File_user_user_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_user_user_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteUsersReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteUsersResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetAllUserIDReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetAllUserIDResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccountCheckReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccountCheckResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateUserInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateUserInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Conversation); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetRecvMsgOptReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetRecvMsgOptResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetAllConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetAllConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchSetConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchSetConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResignUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResignUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserByIdReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*User); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserByIdResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersByNameReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersByNameResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AlterUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlockUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlockUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnBlockUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnBlockUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBlockUsersReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlockUser); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBlockUsersResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBlockUserByIdReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBlockUserByIdResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_user_user_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccountCheckResp_SingleUserStatus); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_user_user_proto_rawDesc, - NumEnums: 0, - NumMessages: 49, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_user_user_proto_goTypes, - DependencyIndexes: file_user_user_proto_depIdxs, - MessageInfos: file_user_user_proto_msgTypes, - }.Build() - File_user_user_proto = out.File - file_user_user_proto_rawDesc = nil - file_user_user_proto_goTypes = nil - file_user_user_proto_depIdxs = nil +func init() { + proto.RegisterType((*CommonResp)(nil), "user.CommonResp") + proto.RegisterType((*DeleteUsersReq)(nil), "user.DeleteUsersReq") + proto.RegisterType((*DeleteUsersResp)(nil), "user.DeleteUsersResp") + proto.RegisterType((*GetAllUserIDReq)(nil), "user.GetAllUserIDReq") + proto.RegisterType((*GetAllUserIDResp)(nil), "user.GetAllUserIDResp") + proto.RegisterType((*AccountCheckReq)(nil), "user.AccountCheckReq") + proto.RegisterType((*AccountCheckResp)(nil), "user.AccountCheckResp") + proto.RegisterType((*AccountCheckResp_SingleUserStatus)(nil), "user.AccountCheckResp.SingleUserStatus") + proto.RegisterType((*GetUserInfoReq)(nil), "user.GetUserInfoReq") + proto.RegisterType((*GetUserInfoResp)(nil), "user.GetUserInfoResp") + proto.RegisterType((*UpdateUserInfoReq)(nil), "user.UpdateUserInfoReq") + proto.RegisterType((*UpdateUserInfoResp)(nil), "user.UpdateUserInfoResp") + proto.RegisterType((*Conversation)(nil), "user.Conversation") + proto.RegisterType((*SetConversationReq)(nil), "user.SetConversationReq") + proto.RegisterType((*SetConversationResp)(nil), "user.SetConversationResp") + proto.RegisterType((*SetRecvMsgOptReq)(nil), "user.SetRecvMsgOptReq") + proto.RegisterType((*SetRecvMsgOptResp)(nil), "user.SetRecvMsgOptResp") + proto.RegisterType((*GetConversationReq)(nil), "user.GetConversationReq") + proto.RegisterType((*GetConversationResp)(nil), "user.GetConversationResp") + proto.RegisterType((*GetConversationsReq)(nil), "user.GetConversationsReq") + proto.RegisterType((*GetConversationsResp)(nil), "user.GetConversationsResp") + proto.RegisterType((*GetAllConversationsReq)(nil), "user.GetAllConversationsReq") + proto.RegisterType((*GetAllConversationsResp)(nil), "user.GetAllConversationsResp") + proto.RegisterType((*BatchSetConversationsReq)(nil), "user.BatchSetConversationsReq") + proto.RegisterType((*BatchSetConversationsResp)(nil), "user.BatchSetConversationsResp") + proto.RegisterType((*ResignUserReq)(nil), "user.ResignUserReq") + proto.RegisterType((*ResignUserResp)(nil), "user.ResignUserResp") + proto.RegisterType((*GetUserByIdReq)(nil), "user.GetUserByIdReq") + proto.RegisterType((*User)(nil), "user.User") + proto.RegisterType((*GetUserByIdResp)(nil), "user.GetUserByIdResp") + proto.RegisterType((*GetUsersByNameReq)(nil), "user.GetUsersByNameReq") + proto.RegisterType((*GetUsersByNameResp)(nil), "user.GetUsersByNameResp") + proto.RegisterType((*AlterUserReq)(nil), "user.AlterUserReq") + proto.RegisterType((*AlterUserResp)(nil), "user.AlterUserResp") + proto.RegisterType((*GetUsersReq)(nil), "user.GetUsersReq") + proto.RegisterType((*GetUsersResp)(nil), "user.GetUsersResp") + proto.RegisterType((*AddUserReq)(nil), "user.AddUserReq") + proto.RegisterType((*AddUserResp)(nil), "user.AddUserResp") + proto.RegisterType((*BlockUserReq)(nil), "user.BlockUserReq") + proto.RegisterType((*BlockUserResp)(nil), "user.BlockUserResp") + proto.RegisterType((*UnBlockUserReq)(nil), "user.UnBlockUserReq") + proto.RegisterType((*UnBlockUserResp)(nil), "user.UnBlockUserResp") + proto.RegisterType((*GetBlockUsersReq)(nil), "user.GetBlockUsersReq") + proto.RegisterType((*BlockUser)(nil), "user.BlockUser") + proto.RegisterType((*GetBlockUsersResp)(nil), "user.GetBlockUsersResp") + proto.RegisterType((*GetBlockUserByIdReq)(nil), "user.GetBlockUserByIdReq") + proto.RegisterType((*GetBlockUserByIdResp)(nil), "user.GetBlockUserByIdResp") + proto.RegisterType((*DeleteUserReq)(nil), "user.DeleteUserReq") + proto.RegisterType((*DeleteUserResp)(nil), "user.DeleteUserResp") } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConnInterface +var _ grpc.ClientConn // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 +const _ = grpc.SupportPackageIsVersion4 + +// Client API for User service -// UserClient is the client API for User service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type UserClient interface { GetUserInfo(ctx context.Context, in *GetUserInfoReq, opts ...grpc.CallOption) (*GetUserInfoResp, error) UpdateUserInfo(ctx context.Context, in *UpdateUserInfoReq, opts ...grpc.CallOption) (*UpdateUserInfoResp, error) @@ -4269,16 +2654,16 @@ type UserClient interface { } type userClient struct { - cc grpc.ClientConnInterface + cc *grpc.ClientConn } -func NewUserClient(cc grpc.ClientConnInterface) UserClient { +func NewUserClient(cc *grpc.ClientConn) UserClient { return &userClient{cc} } func (c *userClient) GetUserInfo(ctx context.Context, in *GetUserInfoReq, opts ...grpc.CallOption) (*GetUserInfoResp, error) { out := new(GetUserInfoResp) - err := c.cc.Invoke(ctx, "/user.user/GetUserInfo", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetUserInfo", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4287,7 +2672,7 @@ func (c *userClient) GetUserInfo(ctx context.Context, in *GetUserInfoReq, opts . func (c *userClient) UpdateUserInfo(ctx context.Context, in *UpdateUserInfoReq, opts ...grpc.CallOption) (*UpdateUserInfoResp, error) { out := new(UpdateUserInfoResp) - err := c.cc.Invoke(ctx, "/user.user/UpdateUserInfo", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/UpdateUserInfo", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4296,7 +2681,7 @@ func (c *userClient) UpdateUserInfo(ctx context.Context, in *UpdateUserInfoReq, func (c *userClient) DeleteUsers(ctx context.Context, in *DeleteUsersReq, opts ...grpc.CallOption) (*DeleteUsersResp, error) { out := new(DeleteUsersResp) - err := c.cc.Invoke(ctx, "/user.user/DeleteUsers", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/DeleteUsers", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4305,7 +2690,7 @@ func (c *userClient) DeleteUsers(ctx context.Context, in *DeleteUsersReq, opts . func (c *userClient) GetAllUserID(ctx context.Context, in *GetAllUserIDReq, opts ...grpc.CallOption) (*GetAllUserIDResp, error) { out := new(GetAllUserIDResp) - err := c.cc.Invoke(ctx, "/user.user/GetAllUserID", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetAllUserID", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4314,7 +2699,7 @@ func (c *userClient) GetAllUserID(ctx context.Context, in *GetAllUserIDReq, opts func (c *userClient) AccountCheck(ctx context.Context, in *AccountCheckReq, opts ...grpc.CallOption) (*AccountCheckResp, error) { out := new(AccountCheckResp) - err := c.cc.Invoke(ctx, "/user.user/AccountCheck", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/AccountCheck", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4323,7 +2708,7 @@ func (c *userClient) AccountCheck(ctx context.Context, in *AccountCheckReq, opts func (c *userClient) GetConversation(ctx context.Context, in *GetConversationReq, opts ...grpc.CallOption) (*GetConversationResp, error) { out := new(GetConversationResp) - err := c.cc.Invoke(ctx, "/user.user/GetConversation", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetConversation", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4332,7 +2717,7 @@ func (c *userClient) GetConversation(ctx context.Context, in *GetConversationReq func (c *userClient) GetAllConversations(ctx context.Context, in *GetAllConversationsReq, opts ...grpc.CallOption) (*GetAllConversationsResp, error) { out := new(GetAllConversationsResp) - err := c.cc.Invoke(ctx, "/user.user/GetAllConversations", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetAllConversations", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4341,7 +2726,7 @@ func (c *userClient) GetAllConversations(ctx context.Context, in *GetAllConversa func (c *userClient) GetConversations(ctx context.Context, in *GetConversationsReq, opts ...grpc.CallOption) (*GetConversationsResp, error) { out := new(GetConversationsResp) - err := c.cc.Invoke(ctx, "/user.user/GetConversations", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetConversations", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4350,7 +2735,7 @@ func (c *userClient) GetConversations(ctx context.Context, in *GetConversationsR func (c *userClient) BatchSetConversations(ctx context.Context, in *BatchSetConversationsReq, opts ...grpc.CallOption) (*BatchSetConversationsResp, error) { out := new(BatchSetConversationsResp) - err := c.cc.Invoke(ctx, "/user.user/BatchSetConversations", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/BatchSetConversations", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4359,7 +2744,7 @@ func (c *userClient) BatchSetConversations(ctx context.Context, in *BatchSetConv func (c *userClient) SetConversation(ctx context.Context, in *SetConversationReq, opts ...grpc.CallOption) (*SetConversationResp, error) { out := new(SetConversationResp) - err := c.cc.Invoke(ctx, "/user.user/SetConversation", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/SetConversation", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4368,7 +2753,7 @@ func (c *userClient) SetConversation(ctx context.Context, in *SetConversationReq func (c *userClient) SetRecvMsgOpt(ctx context.Context, in *SetRecvMsgOptReq, opts ...grpc.CallOption) (*SetRecvMsgOptResp, error) { out := new(SetRecvMsgOptResp) - err := c.cc.Invoke(ctx, "/user.user/SetRecvMsgOpt", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/SetRecvMsgOpt", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4377,7 +2762,7 @@ func (c *userClient) SetRecvMsgOpt(ctx context.Context, in *SetRecvMsgOptReq, op func (c *userClient) GetUserById(ctx context.Context, in *GetUserByIdReq, opts ...grpc.CallOption) (*GetUserByIdResp, error) { out := new(GetUserByIdResp) - err := c.cc.Invoke(ctx, "/user.user/GetUserById", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetUserById", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4386,7 +2771,7 @@ func (c *userClient) GetUserById(ctx context.Context, in *GetUserByIdReq, opts . func (c *userClient) GetUsersByName(ctx context.Context, in *GetUsersByNameReq, opts ...grpc.CallOption) (*GetUsersByNameResp, error) { out := new(GetUsersByNameResp) - err := c.cc.Invoke(ctx, "/user.user/GetUsersByName", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetUsersByName", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4395,7 +2780,7 @@ func (c *userClient) GetUsersByName(ctx context.Context, in *GetUsersByNameReq, func (c *userClient) ResignUser(ctx context.Context, in *ResignUserReq, opts ...grpc.CallOption) (*ResignUserResp, error) { out := new(ResignUserResp) - err := c.cc.Invoke(ctx, "/user.user/ResignUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/ResignUser", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4404,7 +2789,7 @@ func (c *userClient) ResignUser(ctx context.Context, in *ResignUserReq, opts ... func (c *userClient) AlterUser(ctx context.Context, in *AlterUserReq, opts ...grpc.CallOption) (*AlterUserResp, error) { out := new(AlterUserResp) - err := c.cc.Invoke(ctx, "/user.user/AlterUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/AlterUser", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4413,7 +2798,7 @@ func (c *userClient) AlterUser(ctx context.Context, in *AlterUserReq, opts ...gr func (c *userClient) GetUsers(ctx context.Context, in *GetUsersReq, opts ...grpc.CallOption) (*GetUsersResp, error) { out := new(GetUsersResp) - err := c.cc.Invoke(ctx, "/user.user/GetUsers", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetUsers", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4422,7 +2807,7 @@ func (c *userClient) GetUsers(ctx context.Context, in *GetUsersReq, opts ...grpc func (c *userClient) AddUser(ctx context.Context, in *AddUserReq, opts ...grpc.CallOption) (*AddUserResp, error) { out := new(AddUserResp) - err := c.cc.Invoke(ctx, "/user.user/AddUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/AddUser", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4431,7 +2816,7 @@ func (c *userClient) AddUser(ctx context.Context, in *AddUserReq, opts ...grpc.C func (c *userClient) BlockUser(ctx context.Context, in *BlockUserReq, opts ...grpc.CallOption) (*BlockUserResp, error) { out := new(BlockUserResp) - err := c.cc.Invoke(ctx, "/user.user/BlockUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/BlockUser", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4440,7 +2825,7 @@ func (c *userClient) BlockUser(ctx context.Context, in *BlockUserReq, opts ...gr func (c *userClient) UnBlockUser(ctx context.Context, in *UnBlockUserReq, opts ...grpc.CallOption) (*UnBlockUserResp, error) { out := new(UnBlockUserResp) - err := c.cc.Invoke(ctx, "/user.user/UnBlockUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/UnBlockUser", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4449,7 +2834,7 @@ func (c *userClient) UnBlockUser(ctx context.Context, in *UnBlockUserReq, opts . func (c *userClient) GetBlockUsers(ctx context.Context, in *GetBlockUsersReq, opts ...grpc.CallOption) (*GetBlockUsersResp, error) { out := new(GetBlockUsersResp) - err := c.cc.Invoke(ctx, "/user.user/GetBlockUsers", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetBlockUsers", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4458,7 +2843,7 @@ func (c *userClient) GetBlockUsers(ctx context.Context, in *GetBlockUsersReq, op func (c *userClient) GetBlockUserById(ctx context.Context, in *GetBlockUserByIdReq, opts ...grpc.CallOption) (*GetBlockUserByIdResp, error) { out := new(GetBlockUserByIdResp) - err := c.cc.Invoke(ctx, "/user.user/GetBlockUserById", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/GetBlockUserById", in, out, c.cc, opts...) if err != nil { return nil, err } @@ -4467,14 +2852,15 @@ func (c *userClient) GetBlockUserById(ctx context.Context, in *GetBlockUserByIdR func (c *userClient) DeleteUser(ctx context.Context, in *DeleteUserReq, opts ...grpc.CallOption) (*DeleteUserResp, error) { out := new(DeleteUserResp) - err := c.cc.Invoke(ctx, "/user.user/DeleteUser", in, out, opts...) + err := grpc.Invoke(ctx, "/user.user/DeleteUser", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } -// UserServer is the server API for User service. +// Server API for User service + type UserServer interface { GetUserInfo(context.Context, *GetUserInfoReq) (*GetUserInfoResp, error) UpdateUserInfo(context.Context, *UpdateUserInfoReq) (*UpdateUserInfoResp, error) @@ -4500,77 +2886,6 @@ type UserServer interface { DeleteUser(context.Context, *DeleteUserReq) (*DeleteUserResp, error) } -// UnimplementedUserServer can be embedded to have forward compatible implementations. -type UnimplementedUserServer struct { -} - -func (*UnimplementedUserServer) GetUserInfo(context.Context, *GetUserInfoReq) (*GetUserInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUserInfo not implemented") -} -func (*UnimplementedUserServer) UpdateUserInfo(context.Context, *UpdateUserInfoReq) (*UpdateUserInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateUserInfo not implemented") -} -func (*UnimplementedUserServer) DeleteUsers(context.Context, *DeleteUsersReq) (*DeleteUsersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteUsers not implemented") -} -func (*UnimplementedUserServer) GetAllUserID(context.Context, *GetAllUserIDReq) (*GetAllUserIDResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAllUserID not implemented") -} -func (*UnimplementedUserServer) AccountCheck(context.Context, *AccountCheckReq) (*AccountCheckResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AccountCheck not implemented") -} -func (*UnimplementedUserServer) GetConversation(context.Context, *GetConversationReq) (*GetConversationResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversation not implemented") -} -func (*UnimplementedUserServer) GetAllConversations(context.Context, *GetAllConversationsReq) (*GetAllConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAllConversations not implemented") -} -func (*UnimplementedUserServer) GetConversations(context.Context, *GetConversationsReq) (*GetConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversations not implemented") -} -func (*UnimplementedUserServer) BatchSetConversations(context.Context, *BatchSetConversationsReq) (*BatchSetConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method BatchSetConversations not implemented") -} -func (*UnimplementedUserServer) SetConversation(context.Context, *SetConversationReq) (*SetConversationResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConversation not implemented") -} -func (*UnimplementedUserServer) SetRecvMsgOpt(context.Context, *SetRecvMsgOptReq) (*SetRecvMsgOptResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetRecvMsgOpt not implemented") -} -func (*UnimplementedUserServer) GetUserById(context.Context, *GetUserByIdReq) (*GetUserByIdResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUserById not implemented") -} -func (*UnimplementedUserServer) GetUsersByName(context.Context, *GetUsersByNameReq) (*GetUsersByNameResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUsersByName not implemented") -} -func (*UnimplementedUserServer) ResignUser(context.Context, *ResignUserReq) (*ResignUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ResignUser not implemented") -} -func (*UnimplementedUserServer) AlterUser(context.Context, *AlterUserReq) (*AlterUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AlterUser not implemented") -} -func (*UnimplementedUserServer) GetUsers(context.Context, *GetUsersReq) (*GetUsersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUsers not implemented") -} -func (*UnimplementedUserServer) AddUser(context.Context, *AddUserReq) (*AddUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddUser not implemented") -} -func (*UnimplementedUserServer) BlockUser(context.Context, *BlockUserReq) (*BlockUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method BlockUser not implemented") -} -func (*UnimplementedUserServer) UnBlockUser(context.Context, *UnBlockUserReq) (*UnBlockUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UnBlockUser not implemented") -} -func (*UnimplementedUserServer) GetBlockUsers(context.Context, *GetBlockUsersReq) (*GetBlockUsersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetBlockUsers not implemented") -} -func (*UnimplementedUserServer) GetBlockUserById(context.Context, *GetBlockUserByIdReq) (*GetBlockUserByIdResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetBlockUserById not implemented") -} -func (*UnimplementedUserServer) DeleteUser(context.Context, *DeleteUserReq) (*DeleteUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteUser not implemented") -} - func RegisterUserServer(s *grpc.Server, srv UserServer) { s.RegisterService(&_User_serviceDesc, srv) } @@ -5067,3 +3382,124 @@ var _User_serviceDesc = grpc.ServiceDesc{ Streams: []grpc.StreamDesc{}, Metadata: "user/user.proto", } + +func init() { proto.RegisterFile("user/user.proto", fileDescriptor_user_6133bd34462fbb1a) } + +var fileDescriptor_user_6133bd34462fbb1a = []byte{ + // 1835 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0x5f, 0x6f, 0xdc, 0xc6, + 0x11, 0x07, 0xef, 0x8f, 0x25, 0xcd, 0xe9, 0x4e, 0xa7, 0x95, 0x2c, 0xd1, 0x6c, 0xab, 0xaa, 0x84, + 0xeb, 0x0a, 0x02, 0x2a, 0xb5, 0x6e, 0x51, 0x17, 0x2e, 0x5a, 0x5b, 0x77, 0x92, 0x85, 0x2b, 0x62, + 0xe9, 0xc0, 0xb3, 0x80, 0x20, 0x08, 0x20, 0xd0, 0x77, 0x2b, 0x89, 0xd0, 0x1d, 0x49, 0x73, 0x79, + 0xb2, 0x95, 0x17, 0x07, 0xf9, 0xf3, 0x12, 0xe4, 0x25, 0x40, 0x00, 0x3b, 0x79, 0xc8, 0xe7, 0xc8, + 0x7b, 0xf2, 0x94, 0x6f, 0x90, 0xa7, 0x7c, 0x95, 0x60, 0x97, 0x4b, 0x72, 0x77, 0x49, 0x49, 0x17, + 0x4a, 0xf0, 0x8b, 0xad, 0x9d, 0xdd, 0x1d, 0xfe, 0x66, 0xe6, 0x37, 0xb3, 0xb3, 0x7b, 0x30, 0x37, + 0x26, 0x38, 0xd8, 0xa4, 0xff, 0x6c, 0xf8, 0x81, 0x17, 0x7a, 0xa8, 0x42, 0xff, 0x36, 0xfe, 0xb4, + 0xef, 0x63, 0xf7, 0xb0, 0xf3, 0x74, 0xd3, 0x3f, 0x3d, 0xde, 0x64, 0x13, 0x9b, 0x64, 0x70, 0x7a, + 0xf8, 0x92, 0x6c, 0xbe, 0x24, 0xd1, 0x42, 0xf3, 0x7f, 0x00, 0x6d, 0x6f, 0x34, 0xf2, 0x5c, 0x0b, + 0x13, 0x1f, 0xe9, 0x30, 0x85, 0x83, 0xa0, 0xed, 0x0d, 0xb0, 0xae, 0xad, 0x6a, 0x6b, 0x55, 0x2b, + 0x1e, 0xa2, 0x25, 0xb8, 0x85, 0x83, 0xe0, 0x29, 0x39, 0xd6, 0x4b, 0xab, 0xda, 0xda, 0x8c, 0xc5, + 0x47, 0xe6, 0x47, 0xd0, 0xd8, 0xc6, 0x43, 0x1c, 0xe2, 0x03, 0x82, 0x03, 0x62, 0xe1, 0x17, 0x68, + 0x1d, 0x9a, 0xa9, 0xa4, 0xb3, 0xfd, 0x9e, 0x43, 0x42, 0xbd, 0xb4, 0x5a, 0x5e, 0x9b, 0xb1, 0x32, + 0x72, 0x64, 0xc0, 0xf4, 0xbe, 0x1f, 0x8d, 0xf5, 0x32, 0xd3, 0x9b, 0x8c, 0xd1, 0x2a, 0xd4, 0xf6, + 0x7d, 0x1c, 0xd8, 0xa1, 0xe3, 0xb9, 0x9d, 0x6d, 0xbd, 0xc2, 0xa6, 0x45, 0x91, 0xe9, 0xc1, 0x9c, + 0xf4, 0x6d, 0xe2, 0xa3, 0xbf, 0x89, 0xe6, 0x30, 0x1b, 0x6a, 0xf7, 0x9b, 0x1b, 0xcc, 0x31, 0xa9, + 0xdc, 0x12, 0x4d, 0x5e, 0x87, 0xe6, 0x13, 0xdb, 0x19, 0xe2, 0x41, 0x16, 0xae, 0x2a, 0x37, 0xf7, + 0x61, 0x6e, 0x17, 0x87, 0x5b, 0xc3, 0x61, 0x24, 0xa3, 0xd6, 0x1a, 0x30, 0xed, 0xc5, 0x16, 0x68, + 0x91, 0x05, 0x9e, 0x60, 0x81, 0x27, 0x58, 0x10, 0x39, 0x4e, 0x14, 0x99, 0x03, 0x68, 0xca, 0x0a, + 0x0b, 0x99, 0xb0, 0x02, 0x90, 0x01, 0x2f, 0x48, 0xcc, 0x73, 0x98, 0xdb, 0xea, 0xf7, 0xbd, 0xb1, + 0x1b, 0xb6, 0x4f, 0x70, 0xff, 0x94, 0xc2, 0x5e, 0x83, 0x39, 0xf6, 0xb7, 0xb0, 0x4f, 0x63, 0xfb, + 0x54, 0xb1, 0x14, 0xa2, 0xd2, 0xe5, 0x21, 0x2a, 0x67, 0x43, 0xf4, 0x8b, 0x06, 0x4d, 0xf9, 0xdb, + 0x91, 0x85, 0xfd, 0x09, 0x2c, 0x4c, 0xd7, 0xa0, 0x5d, 0x00, 0x0b, 0x93, 0xf1, 0x30, 0x4c, 0x2c, + 0xac, 0xdd, 0xff, 0x4b, 0xb4, 0x43, 0xd5, 0xbe, 0xd1, 0x73, 0xdc, 0xe3, 0x21, 0xa3, 0x44, 0x2f, + 0xb4, 0xc3, 0x31, 0xb1, 0x84, 0xad, 0x46, 0x17, 0x9a, 0xea, 0x3c, 0xa5, 0xf6, 0x58, 0x0c, 0x20, + 0x1f, 0xa1, 0xbb, 0x50, 0xb7, 0x23, 0xe5, 0xd1, 0x42, 0x6e, 0xbe, 0x2c, 0x34, 0x5d, 0x68, 0xec, + 0xe2, 0x90, 0x39, 0xc4, 0x3d, 0xf2, 0xa8, 0x6f, 0x57, 0x00, 0xc6, 0xaa, 0x5b, 0x05, 0xc9, 0x35, + 0x3d, 0xfa, 0x99, 0xc6, 0x48, 0x98, 0x7e, 0xb0, 0x90, 0x43, 0x1f, 0xc1, 0x6c, 0xac, 0x81, 0xa1, + 0x2c, 0x33, 0x97, 0xfe, 0x6e, 0x83, 0xe0, 0xe0, 0x0c, 0x07, 0x87, 0xb6, 0xef, 0x1c, 0xfa, 0x76, + 0x60, 0x8f, 0xc8, 0x46, 0xf2, 0x21, 0x69, 0x83, 0xf9, 0x85, 0x06, 0xf3, 0x07, 0xfe, 0xc0, 0xe6, + 0xe9, 0xcc, 0x4d, 0x7f, 0x00, 0xd3, 0xf1, 0x90, 0xc3, 0xb8, 0x54, 0x65, 0xb2, 0xf8, 0x2a, 0x9f, + 0x78, 0x59, 0x9f, 0x88, 0x69, 0xf4, 0x04, 0x90, 0x8a, 0xa5, 0x88, 0x57, 0xcc, 0xaf, 0xcb, 0x30, + 0xdb, 0xf6, 0xdc, 0x33, 0x1c, 0x10, 0xa6, 0x9a, 0x85, 0xe3, 0xa5, 0x8b, 0x03, 0x29, 0xc1, 0x45, + 0x11, 0xba, 0x07, 0x0d, 0x71, 0x47, 0x02, 0x5f, 0x91, 0x52, 0x52, 0x58, 0xb8, 0x7f, 0xf6, 0x94, + 0x1c, 0xef, 0xfb, 0x21, 0xb3, 0xa1, 0x6a, 0x09, 0x12, 0x5a, 0x86, 0xc4, 0x1d, 0xcf, 0xce, 0x7d, + 0xcc, 0x4a, 0x5e, 0xd5, 0xca, 0xc8, 0x29, 0x61, 0x39, 0xa0, 0x6a, 0x44, 0x58, 0x8e, 0x45, 0x87, + 0xa9, 0xdd, 0xc0, 0x1b, 0xfb, 0x9d, 0x6d, 0xfd, 0x16, 0x9b, 0x88, 0x87, 0xd4, 0x8e, 0x03, 0x37, + 0xc0, 0xf6, 0xa0, 0x4d, 0x99, 0xab, 0x4f, 0x31, 0xc5, 0xa2, 0x88, 0x92, 0x7d, 0x3b, 0xb0, 0x8f, + 0xc2, 0x67, 0xf8, 0x55, 0xf8, 0xcc, 0x19, 0x61, 0x7d, 0x7a, 0x55, 0x5b, 0x2b, 0x5b, 0xb2, 0x90, + 0x86, 0xa9, 0x43, 0xba, 0x8e, 0xeb, 0xe2, 0x81, 0x3e, 0xb3, 0xaa, 0xad, 0x4d, 0x5b, 0xc9, 0x18, + 0x99, 0x30, 0xbb, 0x15, 0x86, 0x76, 0xff, 0x04, 0x0f, 0x58, 0xfc, 0x81, 0x41, 0x90, 0x64, 0xf4, + 0x2b, 0x1d, 0xd2, 0x0d, 0x9c, 0x33, 0x3b, 0xc4, 0xed, 0x13, 0x3b, 0xd4, 0x6b, 0x4c, 0x89, 0x2c, + 0x44, 0x0d, 0x28, 0xed, 0xbc, 0xd2, 0x67, 0xd9, 0xfe, 0xd2, 0xce, 0x2b, 0xf3, 0x5b, 0x0d, 0x50, + 0x0f, 0x87, 0xa2, 0x1f, 0x28, 0xd9, 0xfe, 0x25, 0x07, 0x8b, 0x47, 0x18, 0xc5, 0x11, 0x16, 0x16, + 0xcb, 0x41, 0x5d, 0x87, 0xa6, 0xeb, 0x85, 0xce, 0x91, 0xd3, 0x4f, 0x5d, 0x5d, 0x8a, 0x5c, 0xad, + 0xca, 0x27, 0xc8, 0xc7, 0x5d, 0x58, 0xc8, 0x60, 0x2b, 0x44, 0xbe, 0x9f, 0x34, 0x68, 0xf6, 0x70, + 0x98, 0x72, 0x82, 0xda, 0xf8, 0x4e, 0x09, 0x98, 0xf1, 0x4a, 0x65, 0x32, 0xaf, 0x54, 0xb3, 0x5e, + 0xd9, 0x81, 0x79, 0xc5, 0x96, 0x42, 0x3e, 0xf9, 0x58, 0x03, 0xb4, 0x9b, 0x8d, 0x7c, 0xd6, 0x66, + 0x2d, 0xd7, 0x66, 0xc5, 0x7b, 0xa5, 0xac, 0xf7, 0xae, 0x8e, 0xef, 0x6b, 0x58, 0xd8, 0xbd, 0x89, + 0xf8, 0x66, 0xe8, 0x5a, 0x9a, 0x8c, 0xae, 0xe6, 0xa7, 0x5a, 0x06, 0x01, 0x99, 0x8c, 0x1a, 0xf4, + 0x90, 0x97, 0x1c, 0x42, 0x78, 0x73, 0xa0, 0x8a, 0x27, 0x70, 0xc3, 0x27, 0x1a, 0x2c, 0x66, 0x51, + 0x14, 0x72, 0xc4, 0xbf, 0xa1, 0x2e, 0xa9, 0xe1, 0xe7, 0x79, 0x9e, 0x27, 0xe4, 0x85, 0xe6, 0x87, + 0xb0, 0x14, 0xb5, 0x4b, 0x05, 0x9c, 0xa1, 0x98, 0x58, 0xca, 0x9a, 0xf8, 0xb9, 0x06, 0xcb, 0xb9, + 0xea, 0xdf, 0xb1, 0x95, 0x3f, 0x6a, 0xa0, 0xb7, 0xec, 0xb0, 0x7f, 0xd2, 0xcb, 0x89, 0x7a, 0x46, + 0xad, 0x36, 0xa1, 0xda, 0x09, 0x92, 0x21, 0xaf, 0x04, 0x94, 0x27, 0x2b, 0x01, 0x95, 0xbc, 0xc4, + 0xb9, 0x73, 0x81, 0x15, 0x85, 0xfc, 0xa9, 0xc3, 0x54, 0x6f, 0xdc, 0xef, 0x63, 0x12, 0x93, 0x38, + 0x1e, 0xd2, 0xe3, 0x30, 0xea, 0xd4, 0x59, 0x17, 0x33, 0x63, 0xf1, 0x91, 0xd9, 0x81, 0xba, 0x85, + 0x89, 0x73, 0xec, 0x52, 0xf3, 0xa8, 0xef, 0xe2, 0x73, 0x73, 0x10, 0x37, 0x7a, 0xd1, 0x68, 0x02, + 0x6a, 0xb4, 0xa0, 0x21, 0xaa, 0x2a, 0x54, 0xcb, 0xfe, 0x9f, 0x34, 0x8a, 0xad, 0xf3, 0xce, 0xe0, + 0x7a, 0x78, 0xde, 0x6a, 0x50, 0xa1, 0x8b, 0xe9, 0xa1, 0xdb, 0x0d, 0xbc, 0x23, 0x67, 0x88, 0xbb, + 0x27, 0x5e, 0xe8, 0x71, 0x45, 0x92, 0x8c, 0x1e, 0xda, 0x7b, 0x4e, 0xff, 0xd4, 0xb5, 0x47, 0x38, + 0xee, 0xad, 0xe2, 0xb1, 0x00, 0xa1, 0x2c, 0x41, 0x58, 0x01, 0x68, 0x07, 0xd8, 0x0e, 0x31, 0xeb, + 0x05, 0xa2, 0xe8, 0x0a, 0x12, 0x1a, 0x8d, 0x0e, 0x69, 0x0d, 0xbd, 0xfe, 0x29, 0xab, 0xfe, 0xd3, + 0x56, 0x3c, 0x34, 0xfb, 0x49, 0x7b, 0x1a, 0x99, 0x59, 0xf0, 0x46, 0xc3, 0x2e, 0xb0, 0xbc, 0x46, + 0x42, 0xb4, 0x96, 0xf9, 0x9e, 0xc9, 0xcd, 0x37, 0x1a, 0xcc, 0xf3, 0xaf, 0x90, 0xd6, 0xf9, 0x9e, + 0x3d, 0xc2, 0xfc, 0x2e, 0x46, 0x25, 0x74, 0x18, 0xdf, 0xc5, 0xe2, 0x31, 0xda, 0x06, 0xe8, 0xda, + 0xc7, 0x8e, 0x2b, 0xd6, 0xde, 0xbb, 0x39, 0xbd, 0xa9, 0x85, 0x5f, 0x8c, 0x31, 0x09, 0xd3, 0xb5, + 0x96, 0xb0, 0x6f, 0x82, 0x3a, 0xf9, 0x4d, 0x74, 0x62, 0x49, 0xc8, 0x88, 0x8f, 0x56, 0xa1, 0x4a, + 0x81, 0xc7, 0xe9, 0x2a, 0x5a, 0x14, 0x4d, 0xa0, 0x9d, 0x1c, 0x80, 0x7f, 0xce, 0x05, 0x48, 0x7c, + 0xcf, 0x25, 0xf8, 0x02, 0x84, 0xb1, 0x0f, 0xc6, 0x23, 0xc2, 0x73, 0x37, 0x19, 0x9b, 0xdf, 0x6b, + 0x30, 0xbb, 0x35, 0x0c, 0xa3, 0x7c, 0xbf, 0x16, 0x01, 0xe9, 0x8a, 0xee, 0x89, 0xe7, 0xe2, 0xbd, + 0xf1, 0xe8, 0x39, 0x0e, 0xd8, 0x97, 0xca, 0x96, 0x28, 0x92, 0x58, 0x57, 0x51, 0x58, 0xb7, 0x08, + 0xd5, 0x9d, 0x91, 0xed, 0x0c, 0x79, 0xe7, 0x10, 0x0d, 0x84, 0x3b, 0xc0, 0x80, 0xf7, 0xaf, 0xc9, + 0xd8, 0xdc, 0x82, 0xba, 0x80, 0xbc, 0x08, 0xa7, 0xcc, 0xaf, 0x34, 0xa8, 0xc5, 0x91, 0x89, 0x8f, + 0x0c, 0xc1, 0x48, 0x2d, 0x6b, 0xe4, 0xcd, 0x70, 0x46, 0x64, 0x65, 0x59, 0x66, 0xa5, 0xf9, 0x83, + 0x06, 0xb3, 0x29, 0xa6, 0x6b, 0xa6, 0x4a, 0x39, 0x2f, 0x55, 0x14, 0x5e, 0x95, 0x6f, 0x82, 0x57, + 0x15, 0x85, 0x57, 0x6f, 0x35, 0x80, 0xad, 0xc1, 0x20, 0x66, 0xd5, 0xd5, 0x8e, 0x55, 0xd8, 0xc3, + 0xf9, 0x25, 0xb2, 0xe7, 0xa2, 0xba, 0x84, 0xa0, 0x22, 0x30, 0x8a, 0xfd, 0x2d, 0xf1, 0xa6, 0xaa, + 0xf0, 0xe6, 0x11, 0xd4, 0x12, 0x64, 0x85, 0x58, 0xf3, 0xa5, 0x06, 0xb3, 0xac, 0xb0, 0x5d, 0x95, + 0x33, 0xf7, 0xa0, 0xb1, 0xe3, 0x0e, 0xb6, 0x1d, 0x62, 0x3f, 0x1f, 0x46, 0x55, 0x93, 0xf7, 0xe1, + 0xb2, 0xf4, 0xea, 0x12, 0x22, 0xd9, 0x53, 0xc9, 0xe6, 0x81, 0x80, 0xa6, 0x90, 0x45, 0x47, 0xd0, + 0x38, 0x70, 0x27, 0x32, 0xe9, 0xea, 0x32, 0x20, 0x42, 0x2d, 0x2b, 0x50, 0xdb, 0x30, 0x27, 0x7d, + 0xa7, 0x10, 0xd8, 0xef, 0x34, 0xf6, 0x42, 0x96, 0xa8, 0x61, 0x99, 0x2b, 0xe7, 0xa5, 0x76, 0x33, + 0xb5, 0x3c, 0xc7, 0x3a, 0x53, 0x08, 0xfd, 0xde, 0x78, 0xc4, 0xeb, 0xa9, 0x24, 0x33, 0x5f, 0xc3, + 0x4c, 0x32, 0xa6, 0xb9, 0x48, 0xff, 0xe7, 0x90, 0xa4, 0x5c, 0x64, 0xf3, 0xeb, 0xd0, 0x6c, 0xe1, + 0x63, 0xc7, 0xcd, 0xb2, 0x24, 0x23, 0xcf, 0xe1, 0x53, 0x39, 0x8f, 0x4f, 0xe6, 0xcf, 0xd1, 0x51, + 0x28, 0x7a, 0xa8, 0x50, 0x1d, 0xd9, 0x04, 0x48, 0x75, 0xf0, 0x6a, 0x32, 0x17, 0xed, 0x48, 0x83, + 0x28, 0x2c, 0x79, 0x17, 0x85, 0xa5, 0xcb, 0x6e, 0x3e, 0xc9, 0x37, 0xe3, 0xbe, 0x69, 0x19, 0xa6, + 0xe8, 0xf0, 0xd0, 0xf9, 0xed, 0x8d, 0xd3, 0x0e, 0xbb, 0xc5, 0x28, 0x1a, 0x89, 0x8f, 0xfe, 0x2a, + 0x84, 0x91, 0x57, 0xfa, 0x8c, 0xf1, 0xe9, 0x0a, 0xf3, 0x08, 0xea, 0xe9, 0xcb, 0xf3, 0xf5, 0x20, + 0x5d, 0x9a, 0x43, 0x2d, 0xf1, 0x75, 0xbd, 0x58, 0x60, 0xef, 0xbf, 0xa9, 0x45, 0x27, 0x04, 0x7a, + 0x98, 0x9c, 0x7f, 0xec, 0x2d, 0x66, 0x31, 0xda, 0x25, 0x3f, 0x5e, 0x1a, 0xb7, 0x73, 0xa4, 0xc4, + 0x47, 0x6d, 0x68, 0xc8, 0x2f, 0x6c, 0x68, 0x99, 0xb3, 0x5b, 0x7d, 0x03, 0x34, 0xf4, 0xfc, 0x09, + 0xe2, 0x53, 0x00, 0xc2, 0x7b, 0x7d, 0x0c, 0x40, 0xfe, 0xf9, 0x20, 0x06, 0xa0, 0x3e, 0xec, 0xff, + 0x97, 0x1d, 0x94, 0xc9, 0x4b, 0x39, 0x4a, 0x71, 0x8a, 0xcf, 0xf1, 0xc6, 0x52, 0x9e, 0x38, 0xda, + 0x2e, 0x3e, 0x14, 0xc7, 0xdb, 0x95, 0x67, 0xf1, 0x78, 0x7b, 0xe6, 0xc5, 0xfa, 0x09, 0x6b, 0x6a, + 0xa5, 0x57, 0x24, 0x3d, 0xf9, 0x92, 0xf2, 0x3a, 0x61, 0xdc, 0xb9, 0x60, 0x86, 0xf8, 0xc8, 0x62, + 0x84, 0x56, 0x6f, 0x98, 0xe8, 0xf7, 0x22, 0x6a, 0xf5, 0xca, 0x67, 0xfc, 0xe1, 0x92, 0x59, 0xe2, + 0xa3, 0x0e, 0xab, 0x90, 0xb2, 0xc2, 0x7c, 0x08, 0x4c, 0x9b, 0x71, 0xd1, 0x14, 0xf1, 0xd1, 0xfb, + 0x70, 0x3b, 0xf7, 0xca, 0x86, 0x56, 0x78, 0x2e, 0x5c, 0x70, 0x2b, 0x35, 0xfe, 0x78, 0xe9, 0x7c, + 0xe4, 0xc0, 0x5e, 0xbe, 0x03, 0x7b, 0x17, 0x3a, 0x30, 0xef, 0x59, 0xed, 0x31, 0xd4, 0xa5, 0x77, + 0x25, 0xb4, 0x94, 0xac, 0x95, 0x1e, 0xce, 0x8c, 0xe5, 0x5c, 0x79, 0x44, 0x42, 0xe1, 0x7e, 0xa2, + 0x64, 0x01, 0xaf, 0x30, 0x4a, 0x16, 0x24, 0x55, 0xa2, 0x9d, 0x5c, 0xe1, 0x78, 0x6f, 0x1f, 0x67, + 0x41, 0xe6, 0x2e, 0x62, 0xe8, 0xf9, 0x13, 0xc4, 0x47, 0x0f, 0xd8, 0x6f, 0x19, 0xfc, 0x2e, 0x89, + 0x16, 0xa2, 0x75, 0xd2, 0x45, 0xd5, 0x58, 0xcc, 0x0a, 0x89, 0x8f, 0xfe, 0x09, 0x33, 0x49, 0x0f, + 0x8c, 0xf8, 0x85, 0x5f, 0x6c, 0xe7, 0x8d, 0x85, 0x8c, 0x8c, 0xf8, 0xe8, 0xef, 0x30, 0x1d, 0x83, + 0x40, 0xf3, 0x32, 0x28, 0xba, 0x07, 0xa9, 0x22, 0xe2, 0xa3, 0x0d, 0x98, 0xe2, 0x4d, 0x13, 0xe2, + 0xa5, 0x25, 0xed, 0xee, 0x8c, 0x79, 0x45, 0x12, 0x01, 0x4b, 0xcf, 0x40, 0xa4, 0x96, 0xcd, 0x14, + 0x98, 0xdc, 0x0c, 0x3c, 0x84, 0x9a, 0xd0, 0x1f, 0xc4, 0x81, 0x90, 0x5b, 0x93, 0x38, 0x10, 0x6a, + 0x23, 0xf1, 0x18, 0xea, 0xd2, 0x99, 0x87, 0xd2, 0xbc, 0x97, 0x5a, 0x05, 0x63, 0x39, 0x57, 0x9e, + 0x64, 0x8d, 0x74, 0x10, 0x08, 0x59, 0xa3, 0x1e, 0x39, 0x42, 0xd6, 0x64, 0xcf, 0x8e, 0x07, 0x00, + 0x69, 0xb5, 0x8a, 0x03, 0x2a, 0x1d, 0x0f, 0xc6, 0x62, 0x56, 0x48, 0xfc, 0x56, 0xfd, 0x83, 0xda, + 0x06, 0xfb, 0xd1, 0xf6, 0x3f, 0xf4, 0x9f, 0xe7, 0xb7, 0xd8, 0x2f, 0xb2, 0xff, 0xf8, 0x35, 0x00, + 0x00, 0xff, 0xff, 0x10, 0x04, 0x45, 0x5d, 0xcd, 0x1d, 0x00, 0x00, +} diff --git a/pkg/proto/user/user.proto b/pkg/proto/user/user.proto index f23d82135..c6dad658c 100644 --- a/pkg/proto/user/user.proto +++ b/pkg/proto/user/user.proto @@ -84,7 +84,8 @@ message Conversation{ message SetConversationReq{ Conversation Conversation = 1; - string OperationID = 2; + int32 notificationType = 2; + string OperationID = 3; } message SetConversationResp{ @@ -95,7 +96,8 @@ message SetRecvMsgOptReq { string OwnerUserID = 1; string ConversationID = 2; int32 RecvMsgOpt = 3; - string OperationID = 4; + int32 notificationType = 4; + string OperationID = 5; } message SetRecvMsgOptResp { @@ -137,7 +139,8 @@ message GetAllConversationsResp{ message BatchSetConversationsReq{ repeated Conversation Conversations = 1; string OwnerUserID = 2; - string OperationID = 3; + int32 notificationType = 3; + string OperationID = 4; } message BatchSetConversationsResp{ From dab00e7fb2d7dcdf62a6ac8ff4bddfcef215b441 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 31 Mar 2022 15:01:49 +0800 Subject: [PATCH 33/41] tag and set private tips --- config/config.yaml | 2 +- internal/rpc/office/office.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/config.yaml b/config/config.yaml index a78e23f01..1110249e7 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -148,7 +148,7 @@ log: rotationTime: 24 remainRotationCount: 3 #日志数量 #日志级别 6表示全都打印,测试阶段建议设置为6 - remainLogLevel: 4 + remainLogLevel: 6 elasticSearchSwitch: false elasticSearchAddr: [ 127.0.0.1:9201 ] elasticSearchUser: "" diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index d33e8c9b0..a335e1474 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -218,7 +218,7 @@ func (s *officeServer) GetTagSendLogs(_ context.Context, req *pbOffice.GetTagSen func (s *officeServer) GetUserTagByID(_ context.Context, req *pbOffice.GetUserTagByIDReq) (resp *pbOffice.GetUserTagByIDResp, err error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) - resp = &pbOffice.GetUserTagByIDResp{CommonResp: &pbOffice.CommonResp{}} + resp = &pbOffice.GetUserTagByIDResp{CommonResp: &pbOffice.CommonResp{}, Tag: &pbOffice.Tag{}} tag, err := db.DB.GetTagByID(req.UserID, req.TagID) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetTagByID failed", err.Error()) From 4390302384f5413e851bceab121abeee332dd5f8 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 31 Mar 2022 16:50:46 +0800 Subject: [PATCH 34/41] tag and set private tips --- internal/rpc/office/office.go | 20 +++- pkg/common/db/mongoModel.go | 24 ++--- pkg/proto/office/office.pb.go | 179 +++++++++++++++------------------- pkg/proto/office/office.proto | 8 +- 4 files changed, 108 insertions(+), 123 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index a335e1474..8bae29b6a 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -16,6 +16,7 @@ import ( "net" "strconv" "strings" + "time" ) type officeServer struct { @@ -181,8 +182,23 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR for _, userID := range userIDList { msg.TagSendMessage(req.OperationID, req.SendID, userID, req.Content, req.SenderPlatformID) } - - if err := db.DB.SaveTagSendLog(req); err != nil { + var tagSendLogs db.TagSendLog + for _, userID := range userIDList { + userName, err := im_mysql_model.GetUserNameByUserID(userID) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserNameByUserID failed", err.Error()) + continue + } + tagSendLogs.Users = append(tagSendLogs.Users, db.TagUser{ + UserID: userID, + UserName: userName, + }) + } + tagSendLogs.SendID = req.SendID + tagSendLogs.Content = req.Content + tagSendLogs.SenderPlatformID = req.SenderPlatformID + tagSendLogs.SendTime = time.Now().Unix() + if err := db.DB.SaveTagSendLog(&tagSendLogs); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "SaveTagSendLog failed", err.Error()) resp.CommonResp.ErrCode = constant.ErrDB.ErrCode resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index c2ae7991f..a03c387fb 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -5,7 +5,6 @@ import ( "Open_IM/pkg/common/constant" "Open_IM/pkg/common/log" pbMsg "Open_IM/pkg/proto/chat" - officePb "Open_IM/pkg/proto/office" open_im_sdk "Open_IM/pkg/proto/sdk_ws" "Open_IM/pkg/utils" "context" @@ -534,27 +533,16 @@ type TagUser struct { } type TagSendLog struct { - TagList []string `bson:"tag_list"` - GroupList []string `bson:"group_list"` - UserList []string `bson:"user_list"` - SendID string `bson:"send_id"` - SenderPlatformID int32 `bson:"sender_platform_id"` - Content string `bson:"content"` - SendTime int64 `bson:"send_time"` + Users []TagUser `bson:"tag_list"` + SendID string `bson:"send_id"` + SenderPlatformID int32 `bson:"sender_platform_id"` + Content string `bson:"content"` + SendTime int64 `bson:"send_time"` } -func (d *DataBases) SaveTagSendLog(sendReq *officePb.SendMsg2TagReq) error { +func (d *DataBases) SaveTagSendLog(tagSendLog *TagSendLog) error { ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second) c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cSendLog) - tagSendLog := TagSendLog{ - TagList: sendReq.TagList, - GroupList: sendReq.GroupList, - UserList: sendReq.UserList, - SendID: sendReq.SendID, - SenderPlatformID: sendReq.SenderPlatformID, - Content: sendReq.Content, - SendTime: time.Now().Unix(), - } _, err := c.InsertOne(ctx, tagSendLog) return err } diff --git a/pkg/proto/office/office.pb.go b/pkg/proto/office/office.pb.go index 83c352e70..23471b576 100644 --- a/pkg/proto/office/office.pb.go +++ b/pkg/proto/office/office.pb.go @@ -36,7 +36,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} } func (m *CommonResp) String() string { return proto.CompactTextString(m) } func (*CommonResp) ProtoMessage() {} func (*CommonResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{0} + return fileDescriptor_office_5f182260c0e799b9, []int{0} } func (m *CommonResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CommonResp.Unmarshal(m, b) @@ -82,7 +82,7 @@ func (m *TagUser) Reset() { *m = TagUser{} } func (m *TagUser) String() string { return proto.CompactTextString(m) } func (*TagUser) ProtoMessage() {} func (*TagUser) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{1} + return fileDescriptor_office_5f182260c0e799b9, []int{1} } func (m *TagUser) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagUser.Unmarshal(m, b) @@ -129,7 +129,7 @@ func (m *Tag) Reset() { *m = Tag{} } func (m *Tag) String() string { return proto.CompactTextString(m) } func (*Tag) ProtoMessage() {} func (*Tag) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{2} + return fileDescriptor_office_5f182260c0e799b9, []int{2} } func (m *Tag) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Tag.Unmarshal(m, b) @@ -182,7 +182,7 @@ func (m *GetUserTagsReq) Reset() { *m = GetUserTagsReq{} } func (m *GetUserTagsReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagsReq) ProtoMessage() {} func (*GetUserTagsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{3} + return fileDescriptor_office_5f182260c0e799b9, []int{3} } func (m *GetUserTagsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsReq.Unmarshal(m, b) @@ -228,7 +228,7 @@ func (m *GetUserTagsResp) Reset() { *m = GetUserTagsResp{} } func (m *GetUserTagsResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagsResp) ProtoMessage() {} func (*GetUserTagsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{4} + return fileDescriptor_office_5f182260c0e799b9, []int{4} } func (m *GetUserTagsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsResp.Unmarshal(m, b) @@ -276,7 +276,7 @@ func (m *CreateTagReq) Reset() { *m = CreateTagReq{} } func (m *CreateTagReq) String() string { return proto.CompactTextString(m) } func (*CreateTagReq) ProtoMessage() {} func (*CreateTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{5} + return fileDescriptor_office_5f182260c0e799b9, []int{5} } func (m *CreateTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagReq.Unmarshal(m, b) @@ -335,7 +335,7 @@ func (m *CreateTagResp) Reset() { *m = CreateTagResp{} } func (m *CreateTagResp) String() string { return proto.CompactTextString(m) } func (*CreateTagResp) ProtoMessage() {} func (*CreateTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{6} + return fileDescriptor_office_5f182260c0e799b9, []int{6} } func (m *CreateTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagResp.Unmarshal(m, b) @@ -375,7 +375,7 @@ func (m *DeleteTagReq) Reset() { *m = DeleteTagReq{} } func (m *DeleteTagReq) String() string { return proto.CompactTextString(m) } func (*DeleteTagReq) ProtoMessage() {} func (*DeleteTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{7} + return fileDescriptor_office_5f182260c0e799b9, []int{7} } func (m *DeleteTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagReq.Unmarshal(m, b) @@ -427,7 +427,7 @@ func (m *DeleteTagResp) Reset() { *m = DeleteTagResp{} } func (m *DeleteTagResp) String() string { return proto.CompactTextString(m) } func (*DeleteTagResp) ProtoMessage() {} func (*DeleteTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{8} + return fileDescriptor_office_5f182260c0e799b9, []int{8} } func (m *DeleteTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagResp.Unmarshal(m, b) @@ -470,7 +470,7 @@ func (m *SetTagReq) Reset() { *m = SetTagReq{} } func (m *SetTagReq) String() string { return proto.CompactTextString(m) } func (*SetTagReq) ProtoMessage() {} func (*SetTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{9} + return fileDescriptor_office_5f182260c0e799b9, []int{9} } func (m *SetTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagReq.Unmarshal(m, b) @@ -543,7 +543,7 @@ func (m *SetTagResp) Reset() { *m = SetTagResp{} } func (m *SetTagResp) String() string { return proto.CompactTextString(m) } func (*SetTagResp) ProtoMessage() {} func (*SetTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{10} + return fileDescriptor_office_5f182260c0e799b9, []int{10} } func (m *SetTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagResp.Unmarshal(m, b) @@ -587,7 +587,7 @@ func (m *SendMsg2TagReq) Reset() { *m = SendMsg2TagReq{} } func (m *SendMsg2TagReq) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagReq) ProtoMessage() {} func (*SendMsg2TagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{11} + return fileDescriptor_office_5f182260c0e799b9, []int{11} } func (m *SendMsg2TagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagReq.Unmarshal(m, b) @@ -667,7 +667,7 @@ func (m *SendMsg2TagResp) Reset() { *m = SendMsg2TagResp{} } func (m *SendMsg2TagResp) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagResp) ProtoMessage() {} func (*SendMsg2TagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{12} + return fileDescriptor_office_5f182260c0e799b9, []int{12} } func (m *SendMsg2TagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagResp.Unmarshal(m, b) @@ -707,7 +707,7 @@ func (m *GetTagSendLogsReq) Reset() { *m = GetTagSendLogsReq{} } func (m *GetTagSendLogsReq) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsReq) ProtoMessage() {} func (*GetTagSendLogsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{13} + return fileDescriptor_office_5f182260c0e799b9, []int{13} } func (m *GetTagSendLogsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsReq.Unmarshal(m, b) @@ -749,21 +749,19 @@ func (m *GetTagSendLogsReq) GetOperationID() string { } type TagSendLog struct { - UserList []string `protobuf:"bytes,1,rep,name=userList" json:"userList,omitempty"` - TagList []string `protobuf:"bytes,2,rep,name=tagList" json:"tagList,omitempty"` - GroupList []string `protobuf:"bytes,3,rep,name=groupList" json:"groupList,omitempty"` - Content string `protobuf:"bytes,4,opt,name=content" json:"content,omitempty"` - SendTime int64 `protobuf:"varint,5,opt,name=sendTime" json:"sendTime,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Users []*TagUser `protobuf:"bytes,1,rep,name=users" json:"users,omitempty"` + Content string `protobuf:"bytes,2,opt,name=content" json:"content,omitempty"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime" json:"sendTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *TagSendLog) Reset() { *m = TagSendLog{} } func (m *TagSendLog) String() string { return proto.CompactTextString(m) } func (*TagSendLog) ProtoMessage() {} func (*TagSendLog) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{14} + return fileDescriptor_office_5f182260c0e799b9, []int{14} } func (m *TagSendLog) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagSendLog.Unmarshal(m, b) @@ -783,23 +781,9 @@ func (m *TagSendLog) XXX_DiscardUnknown() { var xxx_messageInfo_TagSendLog proto.InternalMessageInfo -func (m *TagSendLog) GetUserList() []string { +func (m *TagSendLog) GetUsers() []*TagUser { if m != nil { - return m.UserList - } - return nil -} - -func (m *TagSendLog) GetTagList() []string { - if m != nil { - return m.TagList - } - return nil -} - -func (m *TagSendLog) GetGroupList() []string { - if m != nil { - return m.GroupList + return m.Users } return nil } @@ -831,7 +815,7 @@ func (m *GetTagSendLogsResp) Reset() { *m = GetTagSendLogsResp{} } func (m *GetTagSendLogsResp) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsResp) ProtoMessage() {} func (*GetTagSendLogsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{15} + return fileDescriptor_office_5f182260c0e799b9, []int{15} } func (m *GetTagSendLogsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsResp.Unmarshal(m, b) @@ -885,7 +869,7 @@ func (m *GetUserTagByIDReq) Reset() { *m = GetUserTagByIDReq{} } func (m *GetUserTagByIDReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagByIDReq) ProtoMessage() {} func (*GetUserTagByIDReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{16} + return fileDescriptor_office_5f182260c0e799b9, []int{16} } func (m *GetUserTagByIDReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagByIDReq.Unmarshal(m, b) @@ -938,7 +922,7 @@ func (m *GetUserTagByIDResp) Reset() { *m = GetUserTagByIDResp{} } func (m *GetUserTagByIDResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagByIDResp) ProtoMessage() {} func (*GetUserTagByIDResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_0fe56c4f733d3593, []int{17} + return fileDescriptor_office_5f182260c0e799b9, []int{17} } func (m *GetUserTagByIDResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagByIDResp.Unmarshal(m, b) @@ -1263,60 +1247,59 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{ Metadata: "office/office.proto", } -func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_0fe56c4f733d3593) } - -var fileDescriptor_office_0fe56c4f733d3593 = []byte{ - // 826 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0x5f, 0x6b, 0xdb, 0x48, - 0x10, 0x47, 0xfe, 0x1b, 0x8f, 0x93, 0xf8, 0xb2, 0x97, 0xcb, 0xf9, 0x44, 0xee, 0xce, 0x27, 0xee, - 0x20, 0x5c, 0xc1, 0x06, 0xb7, 0x0f, 0x85, 0xd2, 0x50, 0x62, 0x07, 0xe3, 0x92, 0x34, 0x41, 0x71, - 0x5e, 0xfa, 0x50, 0xb3, 0xb1, 0xc7, 0x42, 0x24, 0x96, 0x94, 0x5d, 0x39, 0xa1, 0xaf, 0xfd, 0x0a, - 0x85, 0x7e, 0xa3, 0xf6, 0xbd, 0xdf, 0xa1, 0x1f, 0xa4, 0x68, 0x25, 0xad, 0x76, 0x65, 0x9b, 0x82, - 0xa1, 0x4f, 0xd2, 0xcc, 0xce, 0x8c, 0x7e, 0xf3, 0x9b, 0xd9, 0x19, 0xc1, 0xaf, 0xfe, 0x6c, 0xe6, - 0x4e, 0xb0, 0x13, 0x3f, 0xda, 0x01, 0xf3, 0x43, 0x9f, 0x54, 0x62, 0xc9, 0xfc, 0xe7, 0x22, 0x40, - 0x6f, 0x3c, 0x3c, 0xef, 0x04, 0xb7, 0x4e, 0x47, 0x1c, 0x75, 0xf8, 0xf4, 0x76, 0xfc, 0xc8, 0x3b, - 0x8f, 0x3c, 0x36, 0xb5, 0x8e, 0x01, 0x7a, 0xfe, 0x7c, 0xee, 0x7b, 0x36, 0xf2, 0x80, 0x34, 0xa1, - 0x8a, 0x8c, 0xf5, 0xfc, 0x29, 0x36, 0x8d, 0x96, 0x71, 0x54, 0xb6, 0x53, 0x91, 0x1c, 0x40, 0x05, - 0x19, 0x3b, 0xe7, 0x4e, 0xb3, 0xd0, 0x32, 0x8e, 0x6a, 0x76, 0x22, 0x59, 0x2f, 0xa1, 0x3a, 0xa2, - 0xce, 0x35, 0x47, 0x16, 0x99, 0x2c, 0x38, 0xb2, 0x61, 0x5f, 0xf8, 0xd6, 0xec, 0x44, 0x22, 0x26, - 0x6c, 0x45, 0x6f, 0x6f, 0xe8, 0x1c, 0x13, 0x67, 0x29, 0x5b, 0x37, 0x50, 0x1c, 0x51, 0x87, 0xec, - 0x43, 0x39, 0xa4, 0x8e, 0xf4, 0x8c, 0x85, 0x08, 0x4d, 0x48, 0x1d, 0xc5, 0x2f, 0x15, 0xc9, 0x93, - 0x38, 0xe4, 0x99, 0xcb, 0xc3, 0x66, 0xb1, 0x55, 0x3c, 0xaa, 0x77, 0x1b, 0xed, 0x84, 0x81, 0x04, - 0x8d, 0x2d, 0x0d, 0xac, 0xd7, 0xb0, 0x3b, 0xc0, 0x30, 0x52, 0x8e, 0xa8, 0xc3, 0x6d, 0xbc, 0x5f, - 0x8b, 0xb4, 0x05, 0x75, 0x3f, 0x40, 0x46, 0x43, 0xd7, 0xf7, 0x86, 0xfd, 0xe4, 0xa3, 0xaa, 0xca, - 0x9a, 0x41, 0x43, 0x8b, 0xc5, 0x03, 0xd2, 0x05, 0x98, 0x48, 0x06, 0x45, 0xc0, 0x7a, 0x97, 0xa4, - 0x68, 0x32, 0x6e, 0x6d, 0xc5, 0x8a, 0xfc, 0x0d, 0xa5, 0x90, 0x3a, 0xbc, 0x59, 0x10, 0xd8, 0xeb, - 0x0a, 0x76, 0x5b, 0x1c, 0x58, 0x1f, 0x0c, 0xd8, 0xee, 0x31, 0xa4, 0x21, 0x46, 0x3a, 0xbc, 0x57, - 0xb9, 0x30, 0x74, 0x2e, 0xb2, 0x64, 0x0a, 0x5a, 0x32, 0x7f, 0x01, 0xc4, 0x6f, 0x92, 0xa5, 0x9a, - 0xad, 0x68, 0xf2, 0xc9, 0x96, 0x96, 0x93, 0xed, 0xc1, 0x8e, 0x82, 0x61, 0xb3, 0x54, 0xad, 0x77, - 0xb0, 0xdd, 0xc7, 0x3b, 0x94, 0x89, 0xac, 0xe3, 0x5e, 0xb6, 0x40, 0x41, 0x6d, 0x81, 0x1c, 0xc8, - 0xe2, 0x4a, 0x90, 0x4a, 0xfc, 0x0d, 0x41, 0x7e, 0x35, 0xa0, 0x76, 0x85, 0xe1, 0x46, 0x10, 0x9b, - 0x50, 0xf5, 0xf0, 0x51, 0x54, 0x26, 0x86, 0x97, 0x8a, 0xa4, 0x0d, 0xc4, 0xf5, 0x26, 0x0c, 0x29, - 0xc7, 0xeb, 0xac, 0x12, 0x25, 0x51, 0x89, 0x15, 0x27, 0xe4, 0x7f, 0xf8, 0x85, 0xe1, 0x74, 0x31, - 0x51, 0xad, 0xcb, 0xc2, 0x7a, 0x49, 0x9f, 0x27, 0xa6, 0xb2, 0x4c, 0xcc, 0x2b, 0x80, 0x34, 0xa5, - 0x0d, 0x59, 0xf9, 0x66, 0xc0, 0xee, 0x15, 0x7a, 0xd3, 0x73, 0xee, 0x74, 0xb5, 0x36, 0x14, 0xc8, - 0x0c, 0x81, 0x2c, 0x15, 0xa3, 0x5b, 0x7e, 0x9d, 0x5e, 0xc9, 0x82, 0x38, 0x92, 0x32, 0x39, 0x84, - 0xda, 0x80, 0xf9, 0x8b, 0x40, 0xe9, 0xc4, 0x4c, 0x11, 0xd1, 0xcd, 0xd1, 0x9b, 0xca, 0x1e, 0x4c, - 0xa4, 0x88, 0x8e, 0xe8, 0x0d, 0xd9, 0xe5, 0x1d, 0x0d, 0x67, 0x3e, 0x9b, 0x0f, 0xfb, 0xcd, 0xb2, - 0x98, 0x4a, 0x4b, 0xfa, 0x08, 0xd7, 0xc4, 0xf7, 0x42, 0xf4, 0xc2, 0x84, 0x8a, 0x54, 0xcc, 0x13, - 0x55, 0x5d, 0x26, 0xea, 0x14, 0x1a, 0x5a, 0x96, 0x1b, 0xb2, 0xf5, 0xd1, 0x80, 0xbd, 0x81, 0x20, - 0x3c, 0x8a, 0x76, 0xe6, 0xc7, 0xa3, 0xa6, 0x0f, 0x70, 0x49, 0x1d, 0xd7, 0x13, 0x1f, 0x4b, 0x22, - 0xfd, 0xdb, 0xe6, 0xc8, 0x1e, 0x90, 0x8d, 0x69, 0xe0, 0x8e, 0x03, 0xca, 0xe8, 0x9c, 0xb7, 0x6d, - 0xbc, 0x5f, 0x20, 0x0f, 0x33, 0x5b, 0x5b, 0xf1, 0x5b, 0x7b, 0xc7, 0x7f, 0x7c, 0x3d, 0x3e, 0x19, - 0x00, 0x19, 0xa4, 0x74, 0x16, 0x2b, 0x05, 0x94, 0xb2, 0x5a, 0xdb, 0x82, 0x5e, 0xdb, 0x43, 0xa8, - 0x39, 0xf9, 0xfa, 0x49, 0x85, 0xca, 0x7d, 0x49, 0xe7, 0xde, 0x84, 0xad, 0xa8, 0x52, 0x23, 0x77, - 0x8e, 0xa2, 0x72, 0x45, 0x5b, 0xca, 0xd6, 0x67, 0x03, 0x48, 0x9e, 0xae, 0x0d, 0xa7, 0xe9, 0xa9, - 0xc6, 0x71, 0x41, 0xf8, 0xfc, 0xb7, 0x92, 0x63, 0x1e, 0xf8, 0x1e, 0xc7, 0x35, 0x24, 0x3f, 0x83, - 0x7a, 0x98, 0xa1, 0x49, 0xf6, 0x0a, 0x51, 0x66, 0x73, 0x72, 0x64, 0xab, 0x66, 0xd6, 0x44, 0x54, - 0x3d, 0xd9, 0x08, 0x27, 0xef, 0x87, 0xfd, 0x9f, 0x31, 0xe4, 0x1c, 0xc1, 0x95, 0xf6, 0x91, 0x0d, - 0xb9, 0xfa, 0x13, 0x8a, 0x21, 0x75, 0x12, 0x92, 0xb4, 0xc5, 0x13, 0xe9, 0xbb, 0x5f, 0x8a, 0xb0, - 0x73, 0x21, 0x74, 0x57, 0xc8, 0x1e, 0xdc, 0x09, 0x92, 0x63, 0xa8, 0x2b, 0x1b, 0x8f, 0x1c, 0xa4, - 0x2e, 0xfa, 0x4a, 0x35, 0x7f, 0x5f, 0xa9, 0xe7, 0x01, 0x79, 0x0e, 0x35, 0xb9, 0x44, 0xc8, 0xbe, - 0x44, 0xa7, 0xec, 0x36, 0xf3, 0xb7, 0x15, 0xda, 0xd8, 0x53, 0x4e, 0xf6, 0xcc, 0x53, 0x5d, 0x26, - 0x99, 0xa7, 0xbe, 0x02, 0x3a, 0x50, 0x89, 0x47, 0x1f, 0xd9, 0x4b, 0x0d, 0xe4, 0x74, 0x37, 0x49, - 0x5e, 0xc5, 0x83, 0x28, 0x49, 0x65, 0x04, 0x64, 0x49, 0xea, 0xd3, 0x2f, 0x4b, 0x32, 0x3f, 0x2f, - 0x06, 0xe2, 0x17, 0x43, 0xe9, 0x65, 0xf2, 0x87, 0xc2, 0x87, 0x3e, 0x12, 0x4c, 0x73, 0xdd, 0x91, - 0x0c, 0xa4, 0x14, 0x5a, 0x0b, 0xa4, 0x77, 0x99, 0x16, 0x28, 0xd7, 0x1b, 0x27, 0x7b, 0x6f, 0x1b, - 0xed, 0xe4, 0xa7, 0xf0, 0x45, 0xfc, 0xb8, 0xa9, 0x88, 0x3f, 0xbe, 0xa7, 0xdf, 0x03, 0x00, 0x00, - 0xff, 0xff, 0x1f, 0x69, 0x88, 0xf6, 0x33, 0x0a, 0x00, 0x00, +func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_5f182260c0e799b9) } + +var fileDescriptor_office_5f182260c0e799b9 = []byte{ + // 814 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xdd, 0x6a, 0xdb, 0x4a, + 0x10, 0x46, 0x76, 0x6c, 0xc7, 0xe3, 0x24, 0x3e, 0xd9, 0x93, 0x93, 0xe3, 0x23, 0x4e, 0x5b, 0x57, + 0x34, 0x10, 0x5a, 0xb0, 0xc1, 0xed, 0x45, 0xa1, 0x34, 0x94, 0xd8, 0xc1, 0xb8, 0x24, 0x4d, 0x50, + 0x9c, 0x9b, 0x5e, 0xd4, 0x6c, 0xec, 0xb1, 0x10, 0x89, 0x25, 0x65, 0x57, 0x4e, 0xe8, 0x6d, 0x5f, + 0xa1, 0xcf, 0xd4, 0xde, 0xf7, 0x1d, 0xfa, 0x20, 0x45, 0x2b, 0x69, 0xb5, 0x2b, 0xdb, 0x14, 0x0c, + 0xbd, 0x92, 0xe6, 0x57, 0xdf, 0x7c, 0x3b, 0x3b, 0x23, 0xf8, 0xdb, 0x9f, 0x4e, 0xdd, 0x31, 0xb6, + 0xe3, 0x47, 0x2b, 0x60, 0x7e, 0xe8, 0x93, 0x72, 0x2c, 0x99, 0x4f, 0xcf, 0x03, 0xf4, 0x46, 0x83, + 0xb3, 0x76, 0x70, 0xe3, 0xb4, 0x85, 0xa9, 0xcd, 0x27, 0x37, 0xa3, 0x07, 0xde, 0x7e, 0xe0, 0xb1, + 0xab, 0x75, 0x04, 0xd0, 0xf5, 0x67, 0x33, 0xdf, 0xb3, 0x91, 0x07, 0xa4, 0x01, 0x15, 0x64, 0xac, + 0xeb, 0x4f, 0xb0, 0x61, 0x34, 0x8d, 0xc3, 0x92, 0x9d, 0x8a, 0x64, 0x1f, 0xca, 0xc8, 0xd8, 0x19, + 0x77, 0x1a, 0x85, 0xa6, 0x71, 0x58, 0xb5, 0x13, 0xc9, 0x7a, 0x0b, 0x95, 0x21, 0x75, 0xae, 0x38, + 0xb2, 0xc8, 0x65, 0xce, 0x91, 0x0d, 0x7a, 0x22, 0xb6, 0x6a, 0x27, 0x12, 0x31, 0x61, 0x33, 0x7a, + 0xfb, 0x40, 0x67, 0x98, 0x04, 0x4b, 0xd9, 0xba, 0x86, 0xe2, 0x90, 0x3a, 0x64, 0x0f, 0x4a, 0x21, + 0x75, 0x64, 0x64, 0x2c, 0x44, 0x68, 0x42, 0xea, 0x28, 0x71, 0xa9, 0x48, 0x5e, 0xc4, 0x29, 0x4f, + 0x5d, 0x1e, 0x36, 0x8a, 0xcd, 0xe2, 0x61, 0xad, 0x53, 0x6f, 0x25, 0x0c, 0x24, 0x68, 0x6c, 0xe9, + 0x60, 0xbd, 0x87, 0x9d, 0x3e, 0x86, 0x91, 0x72, 0x48, 0x1d, 0x6e, 0xe3, 0xdd, 0x4a, 0xa4, 0x4d, + 0xa8, 0xf9, 0x01, 0x32, 0x1a, 0xba, 0xbe, 0x37, 0xe8, 0x25, 0x1f, 0x55, 0x55, 0xd6, 0x14, 0xea, + 0x5a, 0x2e, 0x1e, 0x90, 0x0e, 0xc0, 0x58, 0x32, 0x28, 0x12, 0xd6, 0x3a, 0x24, 0x45, 0x93, 0x71, + 0x6b, 0x2b, 0x5e, 0xe4, 0x09, 0x6c, 0x84, 0xd4, 0xe1, 0x8d, 0x82, 0xc0, 0x5e, 0x53, 0xb0, 0xdb, + 0xc2, 0x60, 0x7d, 0x31, 0x60, 0xab, 0xcb, 0x90, 0x86, 0x18, 0xe9, 0xf0, 0x4e, 0xe5, 0xc2, 0xd0, + 0xb9, 0xc8, 0x8a, 0x29, 0x68, 0xc5, 0x3c, 0x06, 0x88, 0xdf, 0x24, 0x4b, 0x55, 0x5b, 0xd1, 0xe4, + 0x8b, 0xdd, 0x58, 0x2c, 0xb6, 0x0b, 0xdb, 0x0a, 0x86, 0xf5, 0x4a, 0xb5, 0x3e, 0xc1, 0x56, 0x0f, + 0x6f, 0x51, 0x16, 0xb2, 0x8a, 0x7b, 0xd9, 0x02, 0x05, 0xb5, 0x05, 0x72, 0x20, 0x8b, 0x4b, 0x41, + 0x2a, 0xf9, 0xd7, 0x04, 0xf9, 0xc3, 0x80, 0xea, 0x25, 0x86, 0x6b, 0x41, 0x6c, 0x40, 0xc5, 0xc3, + 0x07, 0x71, 0x32, 0x31, 0xbc, 0x54, 0x24, 0x2d, 0x20, 0xae, 0x37, 0x66, 0x48, 0x39, 0x5e, 0x65, + 0x27, 0xb1, 0x21, 0x4e, 0x62, 0x89, 0x85, 0x3c, 0x87, 0xbf, 0x18, 0x4e, 0xe6, 0x63, 0xd5, 0xbb, + 0x24, 0xbc, 0x17, 0xf4, 0x79, 0x62, 0xca, 0x8b, 0xc4, 0xbc, 0x03, 0x48, 0x4b, 0x5a, 0x93, 0x95, + 0x9f, 0x06, 0xec, 0x5c, 0xa2, 0x37, 0x39, 0xe3, 0x4e, 0x47, 0x6b, 0x43, 0x81, 0xcc, 0x10, 0xc8, + 0x52, 0x31, 0xba, 0xe5, 0x57, 0xe9, 0x95, 0x2c, 0x08, 0x93, 0x94, 0xc9, 0xff, 0x50, 0xed, 0x33, + 0x7f, 0x1e, 0x28, 0x9d, 0x98, 0x29, 0x22, 0xba, 0x39, 0x7a, 0x13, 0xd9, 0x83, 0x89, 0x14, 0xd1, + 0x11, 0xbd, 0x21, 0xbb, 0xb8, 0xa5, 0xe1, 0xd4, 0x67, 0xb3, 0x41, 0xaf, 0x51, 0x12, 0x53, 0x69, + 0x41, 0x1f, 0xe1, 0x1a, 0xfb, 0x5e, 0x88, 0x5e, 0x98, 0x50, 0x91, 0x8a, 0x79, 0xa2, 0x2a, 0x8b, + 0x44, 0x9d, 0x40, 0x5d, 0xab, 0x72, 0x4d, 0xb6, 0xbe, 0x1a, 0xb0, 0xdb, 0x17, 0x84, 0x47, 0xd9, + 0x4e, 0xfd, 0x78, 0xd4, 0xf4, 0x00, 0x2e, 0xa8, 0xe3, 0x7a, 0xe2, 0x63, 0x49, 0xa6, 0x67, 0x2d, + 0x8e, 0xec, 0x1e, 0xd9, 0x88, 0x06, 0xee, 0x28, 0xa0, 0x8c, 0xce, 0x78, 0xcb, 0xc6, 0xbb, 0x39, + 0xf2, 0x30, 0xf3, 0xb5, 0x95, 0xb8, 0x95, 0x77, 0xfc, 0xf7, 0xd7, 0xc3, 0x05, 0xc8, 0x10, 0x91, + 0x03, 0x28, 0x45, 0x91, 0x5c, 0x1c, 0xde, 0x92, 0xa1, 0x19, 0x5b, 0x55, 0x36, 0x0b, 0x3a, 0x9b, + 0x26, 0x6c, 0x46, 0xdc, 0x0f, 0xdd, 0xa4, 0xdb, 0x8b, 0xb6, 0x94, 0xad, 0x6f, 0x06, 0x90, 0x3c, + 0x01, 0x6b, 0xce, 0xc7, 0x13, 0x8d, 0xb5, 0x82, 0x88, 0x39, 0x58, 0xca, 0x1a, 0x0f, 0x7c, 0x8f, + 0xe3, 0x0a, 0xda, 0x5e, 0x41, 0x2d, 0xcc, 0xd0, 0x24, 0x9b, 0x82, 0x28, 0x45, 0x27, 0x26, 0x5b, + 0x75, 0xb3, 0xc6, 0xe2, 0x1c, 0x93, 0x19, 0x7f, 0xfc, 0x79, 0xd0, 0xfb, 0x13, 0x63, 0xcb, 0x11, + 0x5c, 0x69, 0x1f, 0x59, 0x93, 0xab, 0x47, 0x50, 0x0c, 0xa9, 0x93, 0x90, 0xa4, 0xad, 0x92, 0x48, + 0xdf, 0xf9, 0x5e, 0x84, 0xed, 0x73, 0xa1, 0xbb, 0x44, 0x76, 0xef, 0x8e, 0x91, 0x1c, 0x41, 0x4d, + 0xd9, 0x61, 0x64, 0x3f, 0x0d, 0xd1, 0x97, 0xa4, 0xf9, 0xef, 0x52, 0x3d, 0x0f, 0xc8, 0x6b, 0xa8, + 0xca, 0xb5, 0x40, 0xf6, 0x24, 0x3a, 0x65, 0x5b, 0x99, 0xff, 0x2c, 0xd1, 0xc6, 0x91, 0x72, 0x56, + 0x67, 0x91, 0xea, 0x7a, 0xc8, 0x22, 0xf5, 0xa1, 0xde, 0x86, 0x72, 0x3c, 0xcc, 0xc8, 0x6e, 0xea, + 0x20, 0xe7, 0xb5, 0x49, 0xf2, 0x2a, 0x1e, 0x44, 0x45, 0x2a, 0x97, 0x3a, 0x2b, 0x52, 0x9f, 0x67, + 0x59, 0x91, 0xf9, 0x09, 0xd0, 0x17, 0x3f, 0x0d, 0x4a, 0x2f, 0x93, 0xff, 0x14, 0x3e, 0xf4, 0x4b, + 0x6e, 0x9a, 0xab, 0x4c, 0x32, 0x91, 0x72, 0xd0, 0x5a, 0x22, 0xbd, 0xcb, 0xb4, 0x44, 0xb9, 0xde, + 0x38, 0xde, 0xfd, 0x58, 0x6f, 0x25, 0xbf, 0x79, 0x6f, 0xe2, 0xc7, 0x75, 0x59, 0xfc, 0xc3, 0xbd, + 0xfc, 0x15, 0x00, 0x00, 0xff, 0xff, 0x74, 0xd2, 0x97, 0x48, 0x05, 0x0a, 0x00, 0x00, } diff --git a/pkg/proto/office/office.proto b/pkg/proto/office/office.proto index b4a7f83d7..a25b0dc35 100644 --- a/pkg/proto/office/office.proto +++ b/pkg/proto/office/office.proto @@ -84,11 +84,9 @@ message GetTagSendLogsReq { } message TagSendLog { - repeated string userList = 1; - repeated string tagList = 2; - repeated string groupList =3; - string content = 4; - int64 sendTime = 5; + repeated TagUser users = 1; + string content = 2; + int64 sendTime = 3; } message GetTagSendLogsResp { From 5cdf9e75515a2cdd0b676f0959b584c090b8654e Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Thu, 31 Mar 2022 18:36:15 +0800 Subject: [PATCH 35/41] OA tag fields modify --- internal/api/manage/management_chat.go | 44 ++++++++++---------------- 1 file changed, 17 insertions(+), 27 deletions(-) diff --git a/internal/api/manage/management_chat.go b/internal/api/manage/management_chat.go index 0b1d0aada..e1c1bc0ff 100644 --- a/internal/api/manage/management_chat.go +++ b/internal/api/manage/management_chat.go @@ -218,16 +218,16 @@ type ManagementSendMsgReq struct { type PictureBaseInfo struct { UUID string `mapstructure:"uuid"` - Type string `mapstructure:"type" validate:"required"` - Size int64 `mapstructure:"size" validate:"required"` - Width int32 `mapstructure:"width" validate:"required"` - Height int32 `mapstructure:"height" validate:"required"` - Url string `mapstructure:"url" validate:"required"` + Type string `mapstructure:"type" ` + Size int64 `mapstructure:"size" ` + Width int32 `mapstructure:"width" ` + Height int32 `mapstructure:"height"` + Url string `mapstructure:"url" ` } type PictureElem struct { SourcePath string `mapstructure:"sourcePath"` - SourcePicture PictureBaseInfo `mapstructure:"sourcePicture" validate:"required"` + SourcePicture PictureBaseInfo `mapstructure:"sourcePicture"` BigPicture PictureBaseInfo `mapstructure:"bigPicture" ` SnapshotPicture PictureBaseInfo `mapstructure:"snapshotPicture"` } @@ -282,25 +282,15 @@ type RevokeElem struct { RevokeMsgClientID string `mapstructure:"revokeMsgClientID" validate:"required"` } type OANotificationElem struct { - NotificationName string `mapstructure:"notificationName" validate:"required"` - NotificationFaceURL string `mapstructure:"notificationFaceURL" validate:"required"` - NotificationType int32 `mapstructure:"notificationType" validate:"required"` - Text string `mapstructure:"text" validate:"required"` - Url string `mapstructure:"url"` - MixType int32 `mapstructure:"mixType"` - Image struct { - SourceUrl string `mapstructure:"sourceURL"` - SnapshotUrl string `mapstructure:"snapshotURL"` - } `mapstructure:"image"` - Video struct { - SourceUrl string `mapstructure:"sourceURL"` - SnapshotUrl string `mapstructure:"snapshotURL"` - Duration int64 `mapstructure:"duration"` - } `mapstructure:"video"` - File struct { - SourceUrl string `mapstructure:"sourceURL"` - FileName string `mapstructure:"fileName"` - FileSize int64 `mapstructure:"fileSize"` - } `mapstructure:"file"` - Ex string `mapstructure:"ex"` + NotificationName string `mapstructure:"notificationName" validate:"required"` + NotificationFaceURL string `mapstructure:"notificationFaceURL" validate:"required"` + NotificationType int32 `mapstructure:"notificationType" validate:"required"` + Text string `mapstructure:"text" validate:"required"` + Url string `mapstructure:"url"` + MixType int32 `mapstructure:"mixType"` + PictureElem PictureElem `mapstructure:"pictureElem"` + SoundElem SoundElem `mapstructure:"soundElem"` + VideoElem VideoElem `mapstructure:"videoElem"` + FileElem FileElem `mapstructure:"fileElem"` + Ex string `mapstructure:"ex"` } From bb267ccae7bd33d7cf7b06c711c907bf10f35465 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 31 Mar 2022 19:17:37 +0800 Subject: [PATCH 36/41] tag and set private tips --- internal/rpc/office/office.go | 2 +- pkg/proto/office/office.pb.go | 152 +++++++++++++++++----------------- pkg/proto/office/office.proto | 2 +- 3 files changed, 78 insertions(+), 78 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index 8bae29b6a..ad394f3bc 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -189,7 +189,7 @@ func (s *officeServer) SendMsg2Tag(_ context.Context, req *pbOffice.SendMsg2TagR log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserNameByUserID failed", err.Error()) continue } - tagSendLogs.Users = append(tagSendLogs.Users, db.TagUser{ + tagSendLogs.UserList = append(tagSendLogs.UserList, db.TagUser{ UserID: userID, UserName: userName, }) diff --git a/pkg/proto/office/office.pb.go b/pkg/proto/office/office.pb.go index 23471b576..bbff9427e 100644 --- a/pkg/proto/office/office.pb.go +++ b/pkg/proto/office/office.pb.go @@ -36,7 +36,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} } func (m *CommonResp) String() string { return proto.CompactTextString(m) } func (*CommonResp) ProtoMessage() {} func (*CommonResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{0} + return fileDescriptor_office_7f5adce6bc494f97, []int{0} } func (m *CommonResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CommonResp.Unmarshal(m, b) @@ -82,7 +82,7 @@ func (m *TagUser) Reset() { *m = TagUser{} } func (m *TagUser) String() string { return proto.CompactTextString(m) } func (*TagUser) ProtoMessage() {} func (*TagUser) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{1} + return fileDescriptor_office_7f5adce6bc494f97, []int{1} } func (m *TagUser) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagUser.Unmarshal(m, b) @@ -129,7 +129,7 @@ func (m *Tag) Reset() { *m = Tag{} } func (m *Tag) String() string { return proto.CompactTextString(m) } func (*Tag) ProtoMessage() {} func (*Tag) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{2} + return fileDescriptor_office_7f5adce6bc494f97, []int{2} } func (m *Tag) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_Tag.Unmarshal(m, b) @@ -182,7 +182,7 @@ func (m *GetUserTagsReq) Reset() { *m = GetUserTagsReq{} } func (m *GetUserTagsReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagsReq) ProtoMessage() {} func (*GetUserTagsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{3} + return fileDescriptor_office_7f5adce6bc494f97, []int{3} } func (m *GetUserTagsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsReq.Unmarshal(m, b) @@ -228,7 +228,7 @@ func (m *GetUserTagsResp) Reset() { *m = GetUserTagsResp{} } func (m *GetUserTagsResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagsResp) ProtoMessage() {} func (*GetUserTagsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{4} + return fileDescriptor_office_7f5adce6bc494f97, []int{4} } func (m *GetUserTagsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagsResp.Unmarshal(m, b) @@ -276,7 +276,7 @@ func (m *CreateTagReq) Reset() { *m = CreateTagReq{} } func (m *CreateTagReq) String() string { return proto.CompactTextString(m) } func (*CreateTagReq) ProtoMessage() {} func (*CreateTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{5} + return fileDescriptor_office_7f5adce6bc494f97, []int{5} } func (m *CreateTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagReq.Unmarshal(m, b) @@ -335,7 +335,7 @@ func (m *CreateTagResp) Reset() { *m = CreateTagResp{} } func (m *CreateTagResp) String() string { return proto.CompactTextString(m) } func (*CreateTagResp) ProtoMessage() {} func (*CreateTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{6} + return fileDescriptor_office_7f5adce6bc494f97, []int{6} } func (m *CreateTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_CreateTagResp.Unmarshal(m, b) @@ -375,7 +375,7 @@ func (m *DeleteTagReq) Reset() { *m = DeleteTagReq{} } func (m *DeleteTagReq) String() string { return proto.CompactTextString(m) } func (*DeleteTagReq) ProtoMessage() {} func (*DeleteTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{7} + return fileDescriptor_office_7f5adce6bc494f97, []int{7} } func (m *DeleteTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagReq.Unmarshal(m, b) @@ -427,7 +427,7 @@ func (m *DeleteTagResp) Reset() { *m = DeleteTagResp{} } func (m *DeleteTagResp) String() string { return proto.CompactTextString(m) } func (*DeleteTagResp) ProtoMessage() {} func (*DeleteTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{8} + return fileDescriptor_office_7f5adce6bc494f97, []int{8} } func (m *DeleteTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_DeleteTagResp.Unmarshal(m, b) @@ -470,7 +470,7 @@ func (m *SetTagReq) Reset() { *m = SetTagReq{} } func (m *SetTagReq) String() string { return proto.CompactTextString(m) } func (*SetTagReq) ProtoMessage() {} func (*SetTagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{9} + return fileDescriptor_office_7f5adce6bc494f97, []int{9} } func (m *SetTagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagReq.Unmarshal(m, b) @@ -543,7 +543,7 @@ func (m *SetTagResp) Reset() { *m = SetTagResp{} } func (m *SetTagResp) String() string { return proto.CompactTextString(m) } func (*SetTagResp) ProtoMessage() {} func (*SetTagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{10} + return fileDescriptor_office_7f5adce6bc494f97, []int{10} } func (m *SetTagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SetTagResp.Unmarshal(m, b) @@ -587,7 +587,7 @@ func (m *SendMsg2TagReq) Reset() { *m = SendMsg2TagReq{} } func (m *SendMsg2TagReq) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagReq) ProtoMessage() {} func (*SendMsg2TagReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{11} + return fileDescriptor_office_7f5adce6bc494f97, []int{11} } func (m *SendMsg2TagReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagReq.Unmarshal(m, b) @@ -667,7 +667,7 @@ func (m *SendMsg2TagResp) Reset() { *m = SendMsg2TagResp{} } func (m *SendMsg2TagResp) String() string { return proto.CompactTextString(m) } func (*SendMsg2TagResp) ProtoMessage() {} func (*SendMsg2TagResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{12} + return fileDescriptor_office_7f5adce6bc494f97, []int{12} } func (m *SendMsg2TagResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_SendMsg2TagResp.Unmarshal(m, b) @@ -707,7 +707,7 @@ func (m *GetTagSendLogsReq) Reset() { *m = GetTagSendLogsReq{} } func (m *GetTagSendLogsReq) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsReq) ProtoMessage() {} func (*GetTagSendLogsReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{13} + return fileDescriptor_office_7f5adce6bc494f97, []int{13} } func (m *GetTagSendLogsReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsReq.Unmarshal(m, b) @@ -749,7 +749,7 @@ func (m *GetTagSendLogsReq) GetOperationID() string { } type TagSendLog struct { - Users []*TagUser `protobuf:"bytes,1,rep,name=users" json:"users,omitempty"` + UserList []*TagUser `protobuf:"bytes,1,rep,name=userList" json:"userList,omitempty"` Content string `protobuf:"bytes,2,opt,name=content" json:"content,omitempty"` SendTime int64 `protobuf:"varint,3,opt,name=sendTime" json:"sendTime,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -761,7 +761,7 @@ func (m *TagSendLog) Reset() { *m = TagSendLog{} } func (m *TagSendLog) String() string { return proto.CompactTextString(m) } func (*TagSendLog) ProtoMessage() {} func (*TagSendLog) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{14} + return fileDescriptor_office_7f5adce6bc494f97, []int{14} } func (m *TagSendLog) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TagSendLog.Unmarshal(m, b) @@ -781,9 +781,9 @@ func (m *TagSendLog) XXX_DiscardUnknown() { var xxx_messageInfo_TagSendLog proto.InternalMessageInfo -func (m *TagSendLog) GetUsers() []*TagUser { +func (m *TagSendLog) GetUserList() []*TagUser { if m != nil { - return m.Users + return m.UserList } return nil } @@ -815,7 +815,7 @@ func (m *GetTagSendLogsResp) Reset() { *m = GetTagSendLogsResp{} } func (m *GetTagSendLogsResp) String() string { return proto.CompactTextString(m) } func (*GetTagSendLogsResp) ProtoMessage() {} func (*GetTagSendLogsResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{15} + return fileDescriptor_office_7f5adce6bc494f97, []int{15} } func (m *GetTagSendLogsResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetTagSendLogsResp.Unmarshal(m, b) @@ -869,7 +869,7 @@ func (m *GetUserTagByIDReq) Reset() { *m = GetUserTagByIDReq{} } func (m *GetUserTagByIDReq) String() string { return proto.CompactTextString(m) } func (*GetUserTagByIDReq) ProtoMessage() {} func (*GetUserTagByIDReq) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{16} + return fileDescriptor_office_7f5adce6bc494f97, []int{16} } func (m *GetUserTagByIDReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagByIDReq.Unmarshal(m, b) @@ -922,7 +922,7 @@ func (m *GetUserTagByIDResp) Reset() { *m = GetUserTagByIDResp{} } func (m *GetUserTagByIDResp) String() string { return proto.CompactTextString(m) } func (*GetUserTagByIDResp) ProtoMessage() {} func (*GetUserTagByIDResp) Descriptor() ([]byte, []int) { - return fileDescriptor_office_5f182260c0e799b9, []int{17} + return fileDescriptor_office_7f5adce6bc494f97, []int{17} } func (m *GetUserTagByIDResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetUserTagByIDResp.Unmarshal(m, b) @@ -1247,59 +1247,59 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{ Metadata: "office/office.proto", } -func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_5f182260c0e799b9) } - -var fileDescriptor_office_5f182260c0e799b9 = []byte{ - // 814 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xdd, 0x6a, 0xdb, 0x4a, - 0x10, 0x46, 0x76, 0x6c, 0xc7, 0xe3, 0x24, 0x3e, 0xd9, 0x93, 0x93, 0xe3, 0x23, 0x4e, 0x5b, 0x57, - 0x34, 0x10, 0x5a, 0xb0, 0xc1, 0xed, 0x45, 0xa1, 0x34, 0x94, 0xd8, 0xc1, 0xb8, 0x24, 0x4d, 0x50, - 0x9c, 0x9b, 0x5e, 0xd4, 0x6c, 0xec, 0xb1, 0x10, 0x89, 0x25, 0x65, 0x57, 0x4e, 0xe8, 0x6d, 0x5f, - 0xa1, 0xcf, 0xd4, 0xde, 0xf7, 0x1d, 0xfa, 0x20, 0x45, 0x2b, 0x69, 0xb5, 0x2b, 0xdb, 0x14, 0x0c, - 0xbd, 0x92, 0xe6, 0x57, 0xdf, 0x7c, 0x3b, 0x3b, 0x23, 0xf8, 0xdb, 0x9f, 0x4e, 0xdd, 0x31, 0xb6, - 0xe3, 0x47, 0x2b, 0x60, 0x7e, 0xe8, 0x93, 0x72, 0x2c, 0x99, 0x4f, 0xcf, 0x03, 0xf4, 0x46, 0x83, - 0xb3, 0x76, 0x70, 0xe3, 0xb4, 0x85, 0xa9, 0xcd, 0x27, 0x37, 0xa3, 0x07, 0xde, 0x7e, 0xe0, 0xb1, - 0xab, 0x75, 0x04, 0xd0, 0xf5, 0x67, 0x33, 0xdf, 0xb3, 0x91, 0x07, 0xa4, 0x01, 0x15, 0x64, 0xac, - 0xeb, 0x4f, 0xb0, 0x61, 0x34, 0x8d, 0xc3, 0x92, 0x9d, 0x8a, 0x64, 0x1f, 0xca, 0xc8, 0xd8, 0x19, - 0x77, 0x1a, 0x85, 0xa6, 0x71, 0x58, 0xb5, 0x13, 0xc9, 0x7a, 0x0b, 0x95, 0x21, 0x75, 0xae, 0x38, - 0xb2, 0xc8, 0x65, 0xce, 0x91, 0x0d, 0x7a, 0x22, 0xb6, 0x6a, 0x27, 0x12, 0x31, 0x61, 0x33, 0x7a, - 0xfb, 0x40, 0x67, 0x98, 0x04, 0x4b, 0xd9, 0xba, 0x86, 0xe2, 0x90, 0x3a, 0x64, 0x0f, 0x4a, 0x21, - 0x75, 0x64, 0x64, 0x2c, 0x44, 0x68, 0x42, 0xea, 0x28, 0x71, 0xa9, 0x48, 0x5e, 0xc4, 0x29, 0x4f, - 0x5d, 0x1e, 0x36, 0x8a, 0xcd, 0xe2, 0x61, 0xad, 0x53, 0x6f, 0x25, 0x0c, 0x24, 0x68, 0x6c, 0xe9, - 0x60, 0xbd, 0x87, 0x9d, 0x3e, 0x86, 0x91, 0x72, 0x48, 0x1d, 0x6e, 0xe3, 0xdd, 0x4a, 0xa4, 0x4d, - 0xa8, 0xf9, 0x01, 0x32, 0x1a, 0xba, 0xbe, 0x37, 0xe8, 0x25, 0x1f, 0x55, 0x55, 0xd6, 0x14, 0xea, - 0x5a, 0x2e, 0x1e, 0x90, 0x0e, 0xc0, 0x58, 0x32, 0x28, 0x12, 0xd6, 0x3a, 0x24, 0x45, 0x93, 0x71, - 0x6b, 0x2b, 0x5e, 0xe4, 0x09, 0x6c, 0x84, 0xd4, 0xe1, 0x8d, 0x82, 0xc0, 0x5e, 0x53, 0xb0, 0xdb, - 0xc2, 0x60, 0x7d, 0x31, 0x60, 0xab, 0xcb, 0x90, 0x86, 0x18, 0xe9, 0xf0, 0x4e, 0xe5, 0xc2, 0xd0, - 0xb9, 0xc8, 0x8a, 0x29, 0x68, 0xc5, 0x3c, 0x06, 0x88, 0xdf, 0x24, 0x4b, 0x55, 0x5b, 0xd1, 0xe4, - 0x8b, 0xdd, 0x58, 0x2c, 0xb6, 0x0b, 0xdb, 0x0a, 0x86, 0xf5, 0x4a, 0xb5, 0x3e, 0xc1, 0x56, 0x0f, - 0x6f, 0x51, 0x16, 0xb2, 0x8a, 0x7b, 0xd9, 0x02, 0x05, 0xb5, 0x05, 0x72, 0x20, 0x8b, 0x4b, 0x41, - 0x2a, 0xf9, 0xd7, 0x04, 0xf9, 0xc3, 0x80, 0xea, 0x25, 0x86, 0x6b, 0x41, 0x6c, 0x40, 0xc5, 0xc3, - 0x07, 0x71, 0x32, 0x31, 0xbc, 0x54, 0x24, 0x2d, 0x20, 0xae, 0x37, 0x66, 0x48, 0x39, 0x5e, 0x65, - 0x27, 0xb1, 0x21, 0x4e, 0x62, 0x89, 0x85, 0x3c, 0x87, 0xbf, 0x18, 0x4e, 0xe6, 0x63, 0xd5, 0xbb, - 0x24, 0xbc, 0x17, 0xf4, 0x79, 0x62, 0xca, 0x8b, 0xc4, 0xbc, 0x03, 0x48, 0x4b, 0x5a, 0x93, 0x95, - 0x9f, 0x06, 0xec, 0x5c, 0xa2, 0x37, 0x39, 0xe3, 0x4e, 0x47, 0x6b, 0x43, 0x81, 0xcc, 0x10, 0xc8, - 0x52, 0x31, 0xba, 0xe5, 0x57, 0xe9, 0x95, 0x2c, 0x08, 0x93, 0x94, 0xc9, 0xff, 0x50, 0xed, 0x33, - 0x7f, 0x1e, 0x28, 0x9d, 0x98, 0x29, 0x22, 0xba, 0x39, 0x7a, 0x13, 0xd9, 0x83, 0x89, 0x14, 0xd1, - 0x11, 0xbd, 0x21, 0xbb, 0xb8, 0xa5, 0xe1, 0xd4, 0x67, 0xb3, 0x41, 0xaf, 0x51, 0x12, 0x53, 0x69, - 0x41, 0x1f, 0xe1, 0x1a, 0xfb, 0x5e, 0x88, 0x5e, 0x98, 0x50, 0x91, 0x8a, 0x79, 0xa2, 0x2a, 0x8b, - 0x44, 0x9d, 0x40, 0x5d, 0xab, 0x72, 0x4d, 0xb6, 0xbe, 0x1a, 0xb0, 0xdb, 0x17, 0x84, 0x47, 0xd9, - 0x4e, 0xfd, 0x78, 0xd4, 0xf4, 0x00, 0x2e, 0xa8, 0xe3, 0x7a, 0xe2, 0x63, 0x49, 0xa6, 0x67, 0x2d, - 0x8e, 0xec, 0x1e, 0xd9, 0x88, 0x06, 0xee, 0x28, 0xa0, 0x8c, 0xce, 0x78, 0xcb, 0xc6, 0xbb, 0x39, - 0xf2, 0x30, 0xf3, 0xb5, 0x95, 0xb8, 0x95, 0x77, 0xfc, 0xf7, 0xd7, 0xc3, 0x05, 0xc8, 0x10, 0x91, - 0x03, 0x28, 0x45, 0x91, 0x5c, 0x1c, 0xde, 0x92, 0xa1, 0x19, 0x5b, 0x55, 0x36, 0x0b, 0x3a, 0x9b, - 0x26, 0x6c, 0x46, 0xdc, 0x0f, 0xdd, 0xa4, 0xdb, 0x8b, 0xb6, 0x94, 0xad, 0x6f, 0x06, 0x90, 0x3c, - 0x01, 0x6b, 0xce, 0xc7, 0x13, 0x8d, 0xb5, 0x82, 0x88, 0x39, 0x58, 0xca, 0x1a, 0x0f, 0x7c, 0x8f, - 0xe3, 0x0a, 0xda, 0x5e, 0x41, 0x2d, 0xcc, 0xd0, 0x24, 0x9b, 0x82, 0x28, 0x45, 0x27, 0x26, 0x5b, - 0x75, 0xb3, 0xc6, 0xe2, 0x1c, 0x93, 0x19, 0x7f, 0xfc, 0x79, 0xd0, 0xfb, 0x13, 0x63, 0xcb, 0x11, - 0x5c, 0x69, 0x1f, 0x59, 0x93, 0xab, 0x47, 0x50, 0x0c, 0xa9, 0x93, 0x90, 0xa4, 0xad, 0x92, 0x48, - 0xdf, 0xf9, 0x5e, 0x84, 0xed, 0x73, 0xa1, 0xbb, 0x44, 0x76, 0xef, 0x8e, 0x91, 0x1c, 0x41, 0x4d, - 0xd9, 0x61, 0x64, 0x3f, 0x0d, 0xd1, 0x97, 0xa4, 0xf9, 0xef, 0x52, 0x3d, 0x0f, 0xc8, 0x6b, 0xa8, - 0xca, 0xb5, 0x40, 0xf6, 0x24, 0x3a, 0x65, 0x5b, 0x99, 0xff, 0x2c, 0xd1, 0xc6, 0x91, 0x72, 0x56, - 0x67, 0x91, 0xea, 0x7a, 0xc8, 0x22, 0xf5, 0xa1, 0xde, 0x86, 0x72, 0x3c, 0xcc, 0xc8, 0x6e, 0xea, - 0x20, 0xe7, 0xb5, 0x49, 0xf2, 0x2a, 0x1e, 0x44, 0x45, 0x2a, 0x97, 0x3a, 0x2b, 0x52, 0x9f, 0x67, - 0x59, 0x91, 0xf9, 0x09, 0xd0, 0x17, 0x3f, 0x0d, 0x4a, 0x2f, 0x93, 0xff, 0x14, 0x3e, 0xf4, 0x4b, - 0x6e, 0x9a, 0xab, 0x4c, 0x32, 0x91, 0x72, 0xd0, 0x5a, 0x22, 0xbd, 0xcb, 0xb4, 0x44, 0xb9, 0xde, - 0x38, 0xde, 0xfd, 0x58, 0x6f, 0x25, 0xbf, 0x79, 0x6f, 0xe2, 0xc7, 0x75, 0x59, 0xfc, 0xc3, 0xbd, - 0xfc, 0x15, 0x00, 0x00, 0xff, 0xff, 0x74, 0xd2, 0x97, 0x48, 0x05, 0x0a, 0x00, 0x00, +func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_7f5adce6bc494f97) } + +var fileDescriptor_office_7f5adce6bc494f97 = []byte{ + // 810 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xd1, 0x6a, 0xdb, 0x4a, + 0x10, 0x45, 0x76, 0x6c, 0xc7, 0xe3, 0x24, 0xbe, 0xd9, 0x9b, 0x9b, 0xeb, 0x2b, 0x6e, 0x5b, 0x57, + 0xb4, 0x10, 0x5a, 0xb0, 0xc1, 0xed, 0x43, 0xa1, 0x34, 0x94, 0xd8, 0xc1, 0xb8, 0x24, 0x4d, 0x50, + 0x9c, 0x97, 0x3e, 0xd4, 0x6c, 0xec, 0xb1, 0x10, 0x89, 0x25, 0x65, 0x57, 0x4e, 0xe8, 0x6b, 0x7f, + 0xa1, 0xdf, 0xd4, 0xbe, 0xf7, 0x1f, 0xfa, 0x21, 0x45, 0x2b, 0x69, 0xb5, 0x2b, 0xdb, 0x04, 0x0c, + 0x7d, 0x92, 0x66, 0x76, 0x66, 0x74, 0xe6, 0xec, 0xec, 0x59, 0xc1, 0xdf, 0xfe, 0x74, 0xea, 0x8e, + 0xb1, 0x1d, 0x3f, 0x5a, 0x01, 0xf3, 0x43, 0x9f, 0x94, 0x63, 0xcb, 0x7c, 0x7a, 0x16, 0xa0, 0x37, + 0x1a, 0x9c, 0xb6, 0x83, 0x6b, 0xa7, 0x2d, 0x96, 0xda, 0x7c, 0x72, 0x3d, 0xba, 0xe7, 0xed, 0x7b, + 0x1e, 0x87, 0x5a, 0x87, 0x00, 0x5d, 0x7f, 0x36, 0xf3, 0x3d, 0x1b, 0x79, 0x40, 0x1a, 0x50, 0x41, + 0xc6, 0xba, 0xfe, 0x04, 0x1b, 0x46, 0xd3, 0x38, 0x28, 0xd9, 0xa9, 0x49, 0xf6, 0xa1, 0x8c, 0x8c, + 0x9d, 0x72, 0xa7, 0x51, 0x68, 0x1a, 0x07, 0x55, 0x3b, 0xb1, 0xac, 0x77, 0x50, 0x19, 0x52, 0xe7, + 0x92, 0x23, 0x8b, 0x42, 0xe6, 0x1c, 0xd9, 0xa0, 0x27, 0x72, 0xab, 0x76, 0x62, 0x11, 0x13, 0x36, + 0xa3, 0xb7, 0x8f, 0x74, 0x86, 0x49, 0xb2, 0xb4, 0xad, 0x2b, 0x28, 0x0e, 0xa9, 0x43, 0xf6, 0xa0, + 0x14, 0x52, 0x47, 0x66, 0xc6, 0x46, 0x84, 0x26, 0xa4, 0x8e, 0x92, 0x97, 0x9a, 0xe4, 0x65, 0x5c, + 0xf2, 0xc4, 0xe5, 0x61, 0xa3, 0xd8, 0x2c, 0x1e, 0xd4, 0x3a, 0xf5, 0x56, 0xc2, 0x40, 0x82, 0xc6, + 0x96, 0x01, 0xd6, 0x07, 0xd8, 0xe9, 0x63, 0x18, 0x39, 0x87, 0xd4, 0xe1, 0x36, 0xde, 0xae, 0x44, + 0xda, 0x84, 0x9a, 0x1f, 0x20, 0xa3, 0xa1, 0xeb, 0x7b, 0x83, 0x5e, 0xf2, 0x51, 0xd5, 0x65, 0x4d, + 0xa1, 0xae, 0xd5, 0xe2, 0x01, 0xe9, 0x00, 0x8c, 0x25, 0x83, 0xa2, 0x60, 0xad, 0x43, 0x52, 0x34, + 0x19, 0xb7, 0xb6, 0x12, 0x45, 0x9e, 0xc0, 0x46, 0x48, 0x1d, 0xde, 0x28, 0x08, 0xec, 0x35, 0x05, + 0xbb, 0x2d, 0x16, 0xac, 0xaf, 0x06, 0x6c, 0x75, 0x19, 0xd2, 0x10, 0x23, 0x1f, 0xde, 0xaa, 0x5c, + 0x18, 0x3a, 0x17, 0x59, 0x33, 0x05, 0xad, 0x99, 0xc7, 0x00, 0xf1, 0x9b, 0x64, 0xa9, 0x6a, 0x2b, + 0x9e, 0x7c, 0xb3, 0x1b, 0x8b, 0xcd, 0x76, 0x61, 0x5b, 0xc1, 0xb0, 0x5e, 0xab, 0xd6, 0x67, 0xd8, + 0xea, 0xe1, 0x0d, 0xca, 0x46, 0x56, 0x71, 0x2f, 0x47, 0xa0, 0xa0, 0x8e, 0x40, 0x0e, 0x64, 0x71, + 0x29, 0x48, 0xa5, 0xfe, 0x9a, 0x20, 0x7f, 0x1a, 0x50, 0xbd, 0xc0, 0x70, 0x2d, 0x88, 0x0d, 0xa8, + 0x78, 0x78, 0x2f, 0x76, 0x26, 0x86, 0x97, 0x9a, 0xa4, 0x05, 0xc4, 0xf5, 0xc6, 0x0c, 0x29, 0xc7, + 0xcb, 0x6c, 0x27, 0x36, 0xc4, 0x4e, 0x2c, 0x59, 0x21, 0x2f, 0xe0, 0x2f, 0x86, 0x93, 0xf9, 0x58, + 0x8d, 0x2e, 0x89, 0xe8, 0x05, 0x7f, 0x9e, 0x98, 0xf2, 0x22, 0x31, 0xef, 0x01, 0xd2, 0x96, 0xd6, + 0x64, 0xe5, 0x97, 0x01, 0x3b, 0x17, 0xe8, 0x4d, 0x4e, 0xb9, 0xd3, 0xd1, 0xc6, 0x50, 0x20, 0x33, + 0x04, 0xb2, 0xd4, 0x8c, 0x4e, 0xf9, 0x65, 0x7a, 0x24, 0x0b, 0x62, 0x49, 0xda, 0xe4, 0x7f, 0xa8, + 0xf6, 0x99, 0x3f, 0x0f, 0x94, 0x49, 0xcc, 0x1c, 0x11, 0xdd, 0x1c, 0xbd, 0x89, 0x9c, 0xc1, 0xc4, + 0x8a, 0xe8, 0x88, 0xde, 0x90, 0x9d, 0xdf, 0xd0, 0x70, 0xea, 0xb3, 0xd9, 0xa0, 0xd7, 0x28, 0x09, + 0x55, 0x5a, 0xf0, 0x47, 0xb8, 0xc6, 0xbe, 0x17, 0xa2, 0x17, 0x26, 0x54, 0xa4, 0x66, 0x9e, 0xa8, + 0xca, 0x22, 0x51, 0xc7, 0x50, 0xd7, 0xba, 0x5c, 0x93, 0xad, 0x6f, 0x06, 0xec, 0xf6, 0x05, 0xe1, + 0x51, 0xb5, 0x13, 0x3f, 0x96, 0x9a, 0x1e, 0xc0, 0x39, 0x75, 0x5c, 0x4f, 0x7c, 0x2c, 0xa9, 0xf4, + 0xac, 0xc5, 0x91, 0xdd, 0x21, 0x1b, 0xd1, 0xc0, 0x1d, 0x05, 0x94, 0xd1, 0x19, 0x6f, 0xd9, 0x78, + 0x3b, 0x47, 0x1e, 0x66, 0xb1, 0xb6, 0x92, 0xb7, 0xf2, 0x8c, 0x3f, 0x7c, 0x3c, 0x7c, 0x80, 0x0c, + 0x91, 0xa6, 0x9b, 0xc6, 0x03, 0xba, 0xa9, 0x72, 0x5a, 0xd0, 0x39, 0x35, 0x61, 0x33, 0xda, 0x81, + 0xa1, 0x9b, 0xcc, 0x7c, 0xd1, 0x96, 0xb6, 0xf5, 0xdd, 0x00, 0x92, 0xa7, 0x61, 0x4d, 0x95, 0x3c, + 0xd6, 0xb8, 0x2b, 0x88, 0x9c, 0xe7, 0x4b, 0xb9, 0xe3, 0x81, 0xef, 0x71, 0x5c, 0x41, 0xde, 0x6b, + 0xa8, 0x85, 0x19, 0x9a, 0xe4, 0xbe, 0x20, 0x4a, 0xdf, 0xc9, 0x92, 0xad, 0x86, 0x59, 0x63, 0xb1, + 0x9b, 0x89, 0xd2, 0x1f, 0x7d, 0x19, 0xf4, 0xfe, 0x84, 0x78, 0x39, 0x82, 0x2b, 0xed, 0x23, 0x6b, + 0x72, 0xf5, 0x08, 0x8a, 0x21, 0x75, 0x12, 0x92, 0xb4, 0x0b, 0x25, 0xf2, 0x77, 0x7e, 0x14, 0x61, + 0xfb, 0x4c, 0xf8, 0x2e, 0x90, 0xdd, 0xb9, 0x63, 0x24, 0x87, 0x50, 0x53, 0x6e, 0x32, 0xb2, 0x9f, + 0xa6, 0xe8, 0x57, 0xa5, 0xf9, 0xef, 0x52, 0x3f, 0x0f, 0xc8, 0x1b, 0xa8, 0xca, 0xcb, 0x81, 0xec, + 0x49, 0x74, 0xca, 0x9d, 0x65, 0xfe, 0xb3, 0xc4, 0x1b, 0x67, 0x4a, 0xc5, 0xce, 0x32, 0xd5, 0x4b, + 0x22, 0xcb, 0xd4, 0xa5, 0xbd, 0x0d, 0xe5, 0x58, 0xd2, 0xc8, 0x6e, 0x1a, 0x20, 0x55, 0xdb, 0x24, + 0x79, 0x17, 0x0f, 0xa2, 0x26, 0x95, 0xa3, 0x9d, 0x35, 0xa9, 0xab, 0x5a, 0xd6, 0x64, 0x5e, 0x07, + 0xfa, 0xe2, 0xd7, 0x41, 0x99, 0x65, 0xf2, 0x9f, 0xc2, 0x87, 0x7e, 0xd4, 0x4d, 0x73, 0xd5, 0x92, + 0x2c, 0xa4, 0x6c, 0xb4, 0x56, 0x48, 0x9f, 0x32, 0xad, 0x50, 0x6e, 0x36, 0x8e, 0x76, 0x3f, 0xd5, + 0x5b, 0xc9, 0xcf, 0xde, 0xdb, 0xf8, 0x71, 0x55, 0x16, 0x7f, 0x72, 0xaf, 0x7e, 0x07, 0x00, 0x00, + 0xff, 0xff, 0xed, 0x02, 0x0a, 0x32, 0x0b, 0x0a, 0x00, 0x00, } diff --git a/pkg/proto/office/office.proto b/pkg/proto/office/office.proto index a25b0dc35..edaf5307d 100644 --- a/pkg/proto/office/office.proto +++ b/pkg/proto/office/office.proto @@ -84,7 +84,7 @@ message GetTagSendLogsReq { } message TagSendLog { - repeated TagUser users = 1; + repeated TagUser userList = 1; string content = 2; int64 sendTime = 3; } From 0e27b302bcc12fd58a04906923da5710ac70cbf6 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 31 Mar 2022 19:49:04 +0800 Subject: [PATCH 37/41] tag and set private tips --- pkg/common/db/mongoModel.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/db/mongoModel.go b/pkg/common/db/mongoModel.go index a03c387fb..59ec1a0f2 100644 --- a/pkg/common/db/mongoModel.go +++ b/pkg/common/db/mongoModel.go @@ -533,7 +533,7 @@ type TagUser struct { } type TagSendLog struct { - Users []TagUser `bson:"tag_list"` + UserList []TagUser `bson:"tag_list"` SendID string `bson:"send_id"` SenderPlatformID int32 `bson:"sender_platform_id"` Content string `bson:"content"` From a16a75230c3bb45686cc31124653120c2808dc2f Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 1 Apr 2022 14:43:31 +0800 Subject: [PATCH 38/41] tag and set private tips --- config/config.yaml | 15 ++++++++------- internal/rpc/msg/conversation_notification.go | 15 +++++++++++++-- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/config/config.yaml b/config/config.yaml index 1110249e7..2fd18ff0e 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -555,13 +555,14 @@ notification: conversation: reliabilityLevel: 2 unreadCount: true - offlinePush: - switch: true - title: "conversation was set to private " - desc: "conversation was set to private " - ext: "conversation was set to private " - defaultTips: - tips: "conversation was set to private " + offlinePush: + switch: true + title: "burn after reading" + desc: "burn after reading" + ext: "burn after reading" + defaultTips: + openTips: "burn after reading was opened" + closeTips: "burn after reading was closed" diff --git a/internal/rpc/msg/conversation_notification.go b/internal/rpc/msg/conversation_notification.go index ccb5e3674..5c39ea06a 100644 --- a/internal/rpc/msg/conversation_notification.go +++ b/internal/rpc/msg/conversation_notification.go @@ -48,8 +48,19 @@ func ConversationSetPrivateNotification(operationID, sendID, recvID string, isPr IsPrivate: isPrivateChat, } var tips open_im_sdk.TipsComm - strMap := map[bool]string{true: "true", false: "false"} - tips.DefaultTips = config.Config.Notification.ConversationSetPrivate.DefaultTips.Tips + strMap[isPrivateChat] + " by " + sendID + var tipsMsg string + //var senderName string + //senderName, err := im_mysql_model.GetUserNameByUserID(sendID) + //if err != nil { + // log.NewError(operationID, utils.GetSelfFuncName(), err.Error()) + // senderName = sendID + //} + if isPrivateChat == true { + tipsMsg = config.Config.Notification.ConversationSetPrivate.DefaultTips.OpenTips + } else { + tipsMsg = config.Config.Notification.ConversationSetPrivate.DefaultTips.CloseTips + } + tips.DefaultTips = tipsMsg SetConversationNotification(operationID, sendID, recvID, constant.ConversationPrivateChatNotification, conversationSetPrivateTips, tips) } From b82ff7b88d073ce0804bde450ab5e4eed023c0e5 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 1 Apr 2022 14:49:48 +0800 Subject: [PATCH 39/41] tips info --- pkg/common/config/config.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index 2242fb452..a25972447 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -353,7 +353,10 @@ type config struct { ConversationSetPrivate struct { Conversation PConversation `yaml:"conversation"` OfflinePush POfflinePush `yaml:"offlinePush"` - DefaultTips PDefaultTips `yaml:"defaultTips"` + DefaultTips struct { + OpenTips string `yaml:"openTips"` + CloseTips string `yaml:"closeTips"` + } `yaml:"defaultTips"` } `yaml:"conversationSetPrivate"` } Demo struct { From 77c61200141579ad78516900be5f214708c3cc69 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 1 Apr 2022 15:32:24 +0800 Subject: [PATCH 40/41] null to empty slice --- internal/rpc/office/office.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index ad394f3bc..bab3ff924 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -70,8 +70,9 @@ func (s *officeServer) GetUserTags(_ context.Context, req *pbOffice.GetUserTagsR log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req ", req.String()) resp = &pbOffice.GetUserTagsResp{ CommonResp: &pbOffice.CommonResp{}, - Tags: []*pbOffice.Tag{}, + //Tags: []*pbOffice.Tag{}, } + resp.Tags = make([]*pbOffice.Tag, 0) tags, err := db.DB.GetUserTags(req.UserID) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserTags failed", err.Error()) @@ -216,8 +217,9 @@ func (s *officeServer) GetTagSendLogs(_ context.Context, req *pbOffice.GetTagSen CurrentPage: req.Pagination.PageNumber, ShowNumber: req.Pagination.ShowNumber, }, - TagSendLogs: []*pbOffice.TagSendLog{}, + //TagSendLogs: []*pbOffice.TagSendLog{}, } + resp.TagSendLogs = make([]*pbOffice.TagSendLog, 0) tagSendLogs, err := db.DB.GetTagSendLogs(req.UserID, req.Pagination.ShowNumber, req.Pagination.PageNumber) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetTagSendLogs", err.Error()) @@ -234,7 +236,10 @@ func (s *officeServer) GetTagSendLogs(_ context.Context, req *pbOffice.GetTagSen func (s *officeServer) GetUserTagByID(_ context.Context, req *pbOffice.GetUserTagByIDReq) (resp *pbOffice.GetUserTagByIDResp, err error) { log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) - resp = &pbOffice.GetUserTagByIDResp{CommonResp: &pbOffice.CommonResp{}, Tag: &pbOffice.Tag{}} + resp = &pbOffice.GetUserTagByIDResp{ + CommonResp: &pbOffice.CommonResp{}, + Tag: &pbOffice.Tag{}, + } tag, err := db.DB.GetTagByID(req.UserID, req.TagID) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetTagByID failed", err.Error()) From 2b03b57b5cd1e53be23356a3a6513ebe2da9bd06 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Fri, 1 Apr 2022 15:59:49 +0800 Subject: [PATCH 41/41] tag and set private tips --- internal/api/office/tag.go | 12 ++++++++++-- internal/rpc/office/office.go | 6 ++---- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/internal/api/office/tag.go b/internal/api/office/tag.go index a1229ed83..2471ddd87 100644 --- a/internal/api/office/tag.go +++ b/internal/api/office/tag.go @@ -46,7 +46,11 @@ func GetUserTags(c *gin.Context) { if err := utils.CopyStructFields(&resp.CommResp, respPb.CommonResp); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", err.Error()) } - resp.Data.Tags = respPb.Tags + if respPb.Tags != nil { + resp.Data.Tags = respPb.Tags + } else { + resp.Data.Tags = []*pbOffice.Tag{} + } c.JSON(http.StatusOK, resp) } @@ -229,7 +233,11 @@ func GetTagSendLogs(c *gin.Context) { if err := utils.CopyStructFields(&resp.CommResp, respPb.CommonResp); err != nil { log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", err.Error()) } - resp.Data.Logs = respPb.TagSendLogs + if respPb.TagSendLogs != nil { + resp.Data.Logs = respPb.TagSendLogs + } else { + resp.Data.Logs = []*pbOffice.TagSendLog{} + } resp.Data.ShowNumber = respPb.Pagination.ShowNumber resp.Data.CurrentPage = respPb.Pagination.CurrentPage c.JSON(http.StatusOK, resp) diff --git a/internal/rpc/office/office.go b/internal/rpc/office/office.go index bab3ff924..b390b99bc 100644 --- a/internal/rpc/office/office.go +++ b/internal/rpc/office/office.go @@ -70,9 +70,8 @@ func (s *officeServer) GetUserTags(_ context.Context, req *pbOffice.GetUserTagsR log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req ", req.String()) resp = &pbOffice.GetUserTagsResp{ CommonResp: &pbOffice.CommonResp{}, - //Tags: []*pbOffice.Tag{}, + Tags: []*pbOffice.Tag{}, } - resp.Tags = make([]*pbOffice.Tag, 0) tags, err := db.DB.GetUserTags(req.UserID) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUserTags failed", err.Error()) @@ -217,9 +216,8 @@ func (s *officeServer) GetTagSendLogs(_ context.Context, req *pbOffice.GetTagSen CurrentPage: req.Pagination.PageNumber, ShowNumber: req.Pagination.ShowNumber, }, - //TagSendLogs: []*pbOffice.TagSendLog{}, + TagSendLogs: []*pbOffice.TagSendLog{}, } - resp.TagSendLogs = make([]*pbOffice.TagSendLog, 0) tagSendLogs, err := db.DB.GetTagSendLogs(req.UserID, req.Pagination.ShowNumber, req.Pagination.PageNumber) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetTagSendLogs", err.Error())