From 70d8ae4c19020aa4c70b68d6bc37dacef7ec0426 Mon Sep 17 00:00:00 2001 From: WangchuXiao Date: Fri, 14 Jul 2023 14:49:28 +0800 Subject: [PATCH 01/46] new feature: add batch send msg (#560) * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg --- internal/api/auth.go | 5 +- internal/api/conversation.go | 5 +- internal/api/friend.go | 5 +- internal/api/group.go | 5 +- internal/api/msg.go | 190 ++++++++---------- internal/api/route.go | 26 ++- internal/api/statistics.go | 5 +- internal/api/third.go | 5 +- internal/api/user.go | 5 +- internal/rpc/user/user.go | 5 +- pkg/apistruct/auth.go | 68 ------- pkg/apistruct/aws.go | 33 ---- pkg/apistruct/conversation.go | 131 ------------- pkg/apistruct/cos.go | 33 ---- pkg/apistruct/friend.go | 282 --------------------------- pkg/apistruct/group.go | 272 -------------------------- pkg/apistruct/manage.go | 72 ++----- pkg/apistruct/msg.go | 42 +--- pkg/apistruct/oss.go | 35 ---- pkg/apistruct/pagination.go | 20 -- pkg/apistruct/public.go | 12 -- pkg/apistruct/super_group.go | 31 --- pkg/apistruct/third.go | 128 ------------ pkg/common/db/controller/user.go | 6 +- pkg/common/db/relation/user_model.go | 5 +- pkg/common/db/table/relation/user.go | 2 +- pkg/rpcclient/user.go | 13 ++ 27 files changed, 142 insertions(+), 1299 deletions(-) delete mode 100644 pkg/apistruct/auth.go delete mode 100644 pkg/apistruct/aws.go delete mode 100644 pkg/apistruct/conversation.go delete mode 100644 pkg/apistruct/cos.go delete mode 100644 pkg/apistruct/friend.go delete mode 100644 pkg/apistruct/group.go delete mode 100644 pkg/apistruct/oss.go delete mode 100644 pkg/apistruct/pagination.go delete mode 100644 pkg/apistruct/super_group.go delete mode 100644 pkg/apistruct/third.go diff --git a/internal/api/auth.go b/internal/api/auth.go index 531b39622..e4353a5c4 100644 --- a/internal/api/auth.go +++ b/internal/api/auth.go @@ -18,15 +18,14 @@ import ( "github.com/gin-gonic/gin" "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" ) type AuthApi rpcclient.Auth -func NewAuthApi(discov discoveryregistry.SvcDiscoveryRegistry) AuthApi { - return AuthApi(*rpcclient.NewAuth(discov)) +func NewAuthApi(client rpcclient.Auth) AuthApi { + return AuthApi(client) } func (o *AuthApi) UserToken(c *gin.Context) { diff --git a/internal/api/conversation.go b/internal/api/conversation.go index 6058049a1..211ee362b 100644 --- a/internal/api/conversation.go +++ b/internal/api/conversation.go @@ -18,15 +18,14 @@ import ( "github.com/gin-gonic/gin" "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" ) type ConversationApi rpcclient.Conversation -func NewConversationApi(discov discoveryregistry.SvcDiscoveryRegistry) ConversationApi { - return ConversationApi(*rpcclient.NewConversation(discov)) +func NewConversationApi(client rpcclient.Conversation) ConversationApi { + return ConversationApi(client) } func (o *ConversationApi) GetAllConversations(c *gin.Context) { diff --git a/internal/api/friend.go b/internal/api/friend.go index 60a08a8e7..90214d899 100644 --- a/internal/api/friend.go +++ b/internal/api/friend.go @@ -16,7 +16,6 @@ package api import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" @@ -25,8 +24,8 @@ import ( type FriendApi rpcclient.Friend -func NewFriendApi(discov discoveryregistry.SvcDiscoveryRegistry) FriendApi { - return FriendApi(*rpcclient.NewFriend(discov)) +func NewFriendApi(client rpcclient.Friend) FriendApi { + return FriendApi(client) } func (o *FriendApi) ApplyToAddFriend(c *gin.Context) { diff --git a/internal/api/group.go b/internal/api/group.go index a87af8e6b..519c70004 100644 --- a/internal/api/group.go +++ b/internal/api/group.go @@ -16,7 +16,6 @@ package api import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" @@ -25,8 +24,8 @@ import ( type GroupApi rpcclient.Group -func NewGroupApi(discov discoveryregistry.SvcDiscoveryRegistry) GroupApi { - return GroupApi(*rpcclient.NewGroup(discov)) +func NewGroupApi(client rpcclient.Group) GroupApi { + return GroupApi(client) } func (o *GroupApi) CreateGroup(c *gin.Context) { diff --git a/internal/api/msg.go b/internal/api/msg.go index dba6a52d7..d1858bf8b 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -26,7 +26,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" @@ -35,12 +34,13 @@ import ( ) type MessageApi struct { - rpcclient.Message - validate *validator.Validate + *rpcclient.Message + validate *validator.Validate + userRpcClient *rpcclient.UserRpcClient } -func NewMessageApi(discov discoveryregistry.SvcDiscoveryRegistry) MessageApi { - return MessageApi{Message: *rpcclient.NewMessage(discov), validate: validator.New()} +func NewMessageApi(msgRpcClient *rpcclient.Message, userRpcClient *rpcclient.User) MessageApi { + return MessageApi{Message: msgRpcClient, validate: validator.New(), userRpcClient: rpcclient.NewUserRpcClientByUser(userRpcClient)} } func (MessageApi) SetOptions(options map[string]bool, value bool) { @@ -50,9 +50,10 @@ func (MessageApi) SetOptions(options map[string]bool, value bool) { utils.SetSwitchFromOptions(options, constant.IsConversationUpdate, value) } -func (m MessageApi) newUserSendMsgReq(c *gin.Context, params *apistruct.ManagementSendMsgReq) *msg.SendMsgReq { +func (m MessageApi) newUserSendMsgReq(c *gin.Context, params *apistruct.SendMsg) *msg.SendMsgReq { var newContent string var err error + options := make(map[string]bool, 5) switch params.ContentType { case constant.Text: newContent = params.Content["text"].(string) @@ -70,11 +71,9 @@ func (m MessageApi) newUserSendMsgReq(c *gin.Context, params *apistruct.Manageme fallthrough case constant.CustomOnlineOnly: fallthrough - case constant.Revoke: - newContent = params.Content["revokeMsgClientID"].(string) default: + newContent = utils.StructToJsonString(params.Content) } - options := make(map[string]bool, 5) if params.IsOnlineOnly { m.SetOptions(options, false) } @@ -98,7 +97,6 @@ func (m MessageApi) newUserSendMsgReq(c *gin.Context, params *apistruct.Manageme MsgFrom: constant.SysMsgType, ContentType: params.ContentType, Content: []byte(newContent), - RecvID: params.RecvID, CreateTime: utils.GetCurrentTimestampByMill(), Options: options, OfflinePushInfo: params.OfflinePushInfo, @@ -163,19 +161,9 @@ func (m *MessageApi) DeleteMsgPhysical(c *gin.Context) { a2r.Call(msg.MsgClient.DeleteMsgPhysical, m.Client, c) } -func (m *MessageApi) SendMessage(c *gin.Context) { - params := apistruct.ManagementSendMsgReq{} - if err := c.BindJSON(¶ms); err != nil { - apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap()) - return - } - if !tokenverify.IsAppManagerUid(c) { - apiresp.GinError(c, errs.ErrNoPermission.Wrap("only app manager can send message")) - return - } - +func (m *MessageApi) getSendMsgReq(c *gin.Context, req apistruct.SendMsg) (sendMsgReq *msg.SendMsgReq, err error) { var data interface{} - switch params.ContentType { + switch req.ContentType { case constant.Text: data = apistruct.TextElem{} case constant.Picture: @@ -192,25 +180,44 @@ func (m *MessageApi) SendMessage(c *gin.Context) { data = apistruct.RevokeElem{} case constant.OANotification: data = apistruct.OANotificationElem{} - params.SessionType = constant.NotificationChatType + req.SessionType = constant.NotificationChatType case constant.CustomNotTriggerConversation: data = apistruct.CustomElem{} case constant.CustomOnlineOnly: data = apistruct.CustomElem{} default: - apiresp.GinError(c, errs.ErrArgs.WithDetail("not support err contentType").Wrap()) - return + return nil, errs.ErrArgs.WithDetail("not support err contentType") } - if err := mapstructure.WeakDecode(params.Content, &data); err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) + if err := mapstructure.WeakDecode(req.Content, &data); err != nil { + return nil, err + } + log.ZDebug(c, "getSendMsgReq", "data", data) + if err := m.validate.Struct(data); err != nil { + return nil, err + } + return m.newUserSendMsgReq(c, &req), nil +} + +func (m *MessageApi) SendMessage(c *gin.Context) { + req := apistruct.SendMsgReq{} + if err := c.BindJSON(&req); err != nil { + apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap()) return - } else if err := m.validate.Struct(params); err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) + } + log.ZInfo(c, "SendMessage", "req", req) + if !tokenverify.IsAppManagerUid(c) { + apiresp.GinError(c, errs.ErrNoPermission.Wrap("only app manager can send message")) return } - pbReq := m.newUserSendMsgReq(c, ¶ms) + + sendMsgReq, err := m.getSendMsgReq(c, req.SendMsg) + if err != nil { + log.ZError(c, "decodeData failed", err) + apiresp.GinError(c, err) + } + sendMsgReq.MsgData.RecvID = req.RecvID var status int - respPb, err := m.Client.SendMsg(c, pbReq) + respPb, err := m.Client.SendMsg(c, sendMsgReq) if err != nil { status = constant.MsgSendFailed apiresp.GinError(c, err) @@ -226,107 +233,62 @@ func (m *MessageApi) SendMessage(c *gin.Context) { apiresp.GinSuccess(c, respPb) } -func (m *MessageApi) ManagementBatchSendMsg(c *gin.Context) { - params := apistruct.ManagementBatchSendMsgReq{} - resp := apistruct.ManagementBatchSendMsgResp{} - var msgSendFailedFlag bool - if err := c.BindJSON(¶ms); err != nil { +func (m *MessageApi) BatchSendMsg(c *gin.Context) { + var ( + req apistruct.BatchSendMsgReq + resp apistruct.BatchSendMsgResp + ) + if err := c.BindJSON(&req); err != nil { + log.ZError(c, "BatchSendMsg BindJSON failed", err) apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap()) return } - if !tokenverify.IsAppManagerUid(c) { + log.ZInfo(c, "BatchSendMsg", "req", req) + if err := tokenverify.CheckAdmin(c); err != nil { apiresp.GinError(c, errs.ErrNoPermission.Wrap("only app manager can send message")) return } - var data interface{} - switch params.ContentType { - case constant.Text: - data = apistruct.TextElem{} - case constant.Picture: - data = apistruct.PictureElem{} - case constant.Voice: - data = apistruct.SoundElem{} - case constant.Video: - data = apistruct.VideoElem{} - case constant.File: - data = apistruct.FileElem{} - case constant.Custom: - data = apistruct.CustomElem{} - case constant.Revoke: - data = apistruct.RevokeElem{} - case constant.OANotification: - data = apistruct.OANotificationElem{} - params.SessionType = constant.NotificationChatType - case constant.CustomNotTriggerConversation: - data = apistruct.CustomElem{} - case constant.CustomOnlineOnly: - data = apistruct.CustomElem{} - default: - apiresp.GinError(c, errs.ErrArgs.WithDetail("not support err contentType").Wrap()) - return - } - if err := mapstructure.WeakDecode(params.Content, &data); err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) - return - } else if err := m.validate.Struct(params); err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) - return - } - - t := &apistruct.ManagementSendMsgReq{ - SendID: params.SendID, - GroupID: params.GroupID, - SenderNickname: params.SenderNickname, - SenderFaceURL: params.SenderFaceURL, - SenderPlatformID: params.SenderPlatformID, - Content: params.Content, - ContentType: params.ContentType, - SessionType: params.SessionType, - IsOnlineOnly: params.IsOnlineOnly, - NotOfflinePush: params.NotOfflinePush, - OfflinePushInfo: params.OfflinePushInfo, - } - pbReq := m.newUserSendMsgReq(c, t) - var recvList []string - if params.IsSendAll { - // req2 := &user.GetAllUserIDReq{} - // resp2, err := m.Message.GetAllUserID(c, req2) - // if err != nil { - // apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) - // return - // } - // recvList = resp2.UserIDs + var recvIDs []string + var err error + if req.IsSendAll { + pageNumber := 1 + showNumber := 500 + for { + recvIDsPart, err := m.userRpcClient.GetAllUserIDs(c, int32(pageNumber), int32(showNumber)) + if err != nil { + log.ZError(c, "GetAllUserIDs failed", err) + apiresp.GinError(c, err) + } + if len(recvIDsPart) < showNumber { + recvIDs = append(recvIDs, recvIDsPart...) + break + } + pageNumber++ + } } else { - recvList = params.RecvIDList + recvIDs = req.RecvIDs } - - for _, recvID := range recvList { - pbReq.MsgData.RecvID = recvID - rpcResp, err := m.Client.SendMsg(c, pbReq) + log.ZDebug(c, "BatchSendMsg nums", "nums ", len(recvIDs)) + sendMsgReq, err := m.getSendMsgReq(c, req.SendMsg) + if err != nil { + log.ZError(c, "decodeData failed", err) + apiresp.GinError(c, err) + } + for _, recvID := range recvIDs { + sendMsgReq.MsgData.RecvID = recvID + rpcResp, err := m.Client.SendMsg(c, sendMsgReq) if err != nil { - resp.Data.FailedIDList = append(resp.Data.FailedIDList, recvID) - msgSendFailedFlag = true + resp.FailedIDs = append(resp.FailedIDs, recvID) continue } - resp.Data.ResultList = append(resp.Data.ResultList, &apistruct.SingleReturnResult{ + resp.Results = append(resp.Results, &apistruct.SingleReturnResult{ ServerMsgID: rpcResp.ServerMsgID, ClientMsgID: rpcResp.ClientMsgID, SendTime: rpcResp.SendTime, RecvID: recvID, }) } - var status int32 - if msgSendFailedFlag { - status = constant.MsgSendFailed - } else { - status = constant.MsgSendSuccessed - } - _, err := m.Client.SetSendMsgStatus(c, &msg.SetSendMsgStatusReq{Status: status}) - if err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) - return - } apiresp.GinSuccess(c, resp) } diff --git a/internal/api/route.go b/internal/api/route.go index 51dea2d42..421b33b47 100644 --- a/internal/api/route.go +++ b/internal/api/route.go @@ -29,6 +29,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" + "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" ) func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.UniversalClient) *gin.Engine { @@ -40,8 +41,17 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive } log.ZInfo(context.Background(), "load config", "config", config.Config) r.Use(gin.Recovery(), mw.CorsHandler(), mw.GinParseOperationID()) - u := NewUserApi(discov) - m := NewMessageApi(discov) + // init rpc client here + userRpc := rpcclient.NewUser(discov) + groupRpc := rpcclient.NewGroup(discov) + friendRpc := rpcclient.NewFriend(discov) + messageRpc := rpcclient.NewMessage(discov) + conversationRpc := rpcclient.NewConversation(discov) + authRpc := rpcclient.NewAuth(discov) + thirdRpc := rpcclient.NewThird(discov) + + u := NewUserApi(*userRpc) + m := NewMessageApi(messageRpc, userRpc) if config.Config.Prometheus.Enable { prome.NewApiRequestCounter() prome.NewApiRequestFailedCounter() @@ -65,7 +75,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive //friend routing group friendRouterGroup := r.Group("/friend", ParseToken) { - f := NewFriendApi(discov) + f := NewFriendApi(*friendRpc) friendRouterGroup.POST("/delete_friend", f.DeleteFriend) friendRouterGroup.POST("/get_friend_apply_list", f.GetFriendApplyList) friendRouterGroup.POST("/get_self_friend_apply_list", f.GetSelfApplyList) @@ -79,7 +89,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive friendRouterGroup.POST("/import_friend", f.ImportFriends) friendRouterGroup.POST("/is_friend", f.IsFriend) } - g := NewGroupApi(discov) + g := NewGroupApi(*groupRpc) groupRouterGroup := r.Group("/group", ParseToken) { groupRouterGroup.POST("/create_group", g.CreateGroup) @@ -113,7 +123,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive //certificate authRouterGroup := r.Group("/auth") { - a := NewAuthApi(discov) + a := NewAuthApi(*authRpc) authRouterGroup.POST("/user_token", a.UserToken) authRouterGroup.POST("/parse_token", a.ParseToken) authRouterGroup.POST("/force_logout", ParseToken, a.ForceLogout) @@ -121,7 +131,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive //Third service thirdGroup := r.Group("/third", ParseToken) { - t := NewThirdApi(discov) + t := NewThirdApi(*thirdRpc) thirdGroup.POST("/fcm_update_token", t.FcmUpdateToken) thirdGroup.POST("/set_app_badge", t.SetAppBadge) @@ -154,13 +164,13 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive msgGroup.POST("/delete_msg_phsical_by_seq", m.DeleteMsgPhysicalBySeq) msgGroup.POST("/delete_msg_physical", m.DeleteMsgPhysical) - msgGroup.POST("/batch_send_msg", m.ManagementBatchSendMsg) + msgGroup.POST("/batch_send_msg", m.BatchSendMsg) msgGroup.POST("/check_msg_is_send_success", m.CheckMsgIsSendSuccess) } //Conversation conversationGroup := r.Group("/conversation", ParseToken) { - c := NewConversationApi(discov) + c := NewConversationApi(*conversationRpc) conversationGroup.POST("/get_all_conversations", c.GetAllConversations) conversationGroup.POST("/get_conversation", c.GetConversation) conversationGroup.POST("/get_conversations", c.GetConversations) diff --git a/internal/api/statistics.go b/internal/api/statistics.go index 5b5de01d9..dd8d01799 100644 --- a/internal/api/statistics.go +++ b/internal/api/statistics.go @@ -18,15 +18,14 @@ import ( "github.com/gin-gonic/gin" "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" ) type StatisticsApi rpcclient.User -func NewStatisticsApi(discov discoveryregistry.SvcDiscoveryRegistry) StatisticsApi { - return StatisticsApi(*rpcclient.NewUser(discov)) +func NewStatisticsApi(client rpcclient.User) StatisticsApi { + return StatisticsApi(client) } func (s *StatisticsApi) UserRegister(c *gin.Context) { diff --git a/internal/api/third.go b/internal/api/third.go index 6852ae3a9..7de0493e0 100644 --- a/internal/api/third.go +++ b/internal/api/third.go @@ -23,7 +23,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" @@ -31,8 +30,8 @@ import ( type ThirdApi rpcclient.Third -func NewThirdApi(discov discoveryregistry.SvcDiscoveryRegistry) ThirdApi { - return ThirdApi(*rpcclient.NewThird(discov)) +func NewThirdApi(client rpcclient.Third) ThirdApi { + return ThirdApi(client) } func (o *ThirdApi) FcmUpdateToken(c *gin.Context) { diff --git a/internal/api/user.go b/internal/api/user.go index 4e9d1b0c7..4218e6c70 100644 --- a/internal/api/user.go +++ b/internal/api/user.go @@ -22,7 +22,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" @@ -31,8 +30,8 @@ import ( type UserApi rpcclient.User -func NewUserApi(discov discoveryregistry.SvcDiscoveryRegistry) UserApi { - return UserApi(*rpcclient.NewUser(discov)) +func NewUserApi(client rpcclient.User) UserApi { + return UserApi(client) } func (u *UserApi) UserRegister(c *gin.Context) { diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 9b1e691e5..3b0b67691 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -17,10 +17,11 @@ package user import ( "context" "errors" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "strings" "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" @@ -233,7 +234,7 @@ func (s *userServer) GetGlobalRecvMessageOpt(ctx context.Context, req *pbuser.Ge } func (s *userServer) GetAllUserID(ctx context.Context, req *pbuser.GetAllUserIDReq) (resp *pbuser.GetAllUserIDResp, err error) { - userIDs, err := s.UserDatabase.GetAllUserID(ctx) + userIDs, err := s.UserDatabase.GetAllUserID(ctx, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { return nil, err } diff --git a/pkg/apistruct/auth.go b/pkg/apistruct/auth.go deleted file mode 100644 index a1538347d..000000000 --- a/pkg/apistruct/auth.go +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type UserRegisterReq struct { - Secret string `json:"secret" binding:"required,max=32"` - Platform int32 `json:"platform" binding:"required,min=1,max=12"` - ApiUserInfo - OperationID string `json:"operationID" binding:"required"` -} - -type UserTokenInfo struct { - UserID string `json:"userID"` - Token string `json:"token"` - ExpiredTime int64 `json:"expiredTime"` -} -type UserRegisterResp struct { - UserToken UserTokenInfo `json:"data"` -} - -type UserTokenReq struct { - Secret string `json:"secret" binding:"required,max=32"` - Platform int32 `json:"platform" binding:"required,min=1,max=12"` - UserID string `json:"userID" binding:"required,min=1,max=64"` - OperationID string `json:"operationID" binding:"required"` -} - -type UserTokenResp struct { - UserToken UserTokenInfo `json:"data"` -} - -type ForceLogoutReq struct { - Platform int32 `json:"platform" binding:"required,min=1,max=12"` - FromUserID string `json:"fromUserID" binding:"required,min=1,max=64"` - OperationID string `json:"operationID" binding:"required"` -} - -type ForceLogoutResp struct{} - -type ParseTokenReq struct { - OperationID string `json:"operationID" binding:"required"` -} - -//type ParseTokenResp struct { -// -// ExpireTime int64 `json:"expireTime" binding:"required"` -//} - -type ExpireTime struct { - ExpireTimeSeconds uint32 `json:"expireTimeSeconds"` -} - -type ParseTokenResp struct { - Data map[string]interface{} `json:"data" swaggerignore:"true"` - ExpireTime ExpireTime `json:"-"` -} diff --git a/pkg/apistruct/aws.go b/pkg/apistruct/aws.go deleted file mode 100644 index 3518baea0..000000000 --- a/pkg/apistruct/aws.go +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type AwsStorageCredentialReq struct { - OperationID string `json:"operationID"` -} - -type AwsStorageCredentialRespData struct { - AccessKeyId string `json:"accessKeyID"` - SecretAccessKey string `json:"secretAccessKey"` - SessionToken string `json:"sessionToken"` - RegionID string `json:"regionId"` - Bucket string `json:"bucket"` - FinalHost string `json:"FinalHost"` -} - -type AwsStorageCredentialResp struct { - CosData AwsStorageCredentialRespData - Data map[string]interface{} `json:"data"` -} diff --git a/pkg/apistruct/conversation.go b/pkg/apistruct/conversation.go deleted file mode 100644 index efac9a563..000000000 --- a/pkg/apistruct/conversation.go +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type OptResult struct { - ConversationID string `json:"conversationID"` - Result *int32 `json:"result"` -} -type GetAllConversationMessageOptReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetAllConversationMessageOptResp struct { - ConversationOptResultList []*OptResult `json:"data"` -} -type GetReceiveMessageOptReq struct { - ConversationIDList []string `json:"conversationIDList" binding:"required"` - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetReceiveMessageOptResp struct { - ConversationOptResultList []*OptResult `json:"data"` -} -type SetReceiveMessageOptReq struct { - FromUserID string `json:"fromUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` - Opt *int32 `json:"opt" binding:"required"` - ConversationIDList []string `json:"conversationIDList" binding:"required"` -} -type SetReceiveMessageOptResp struct { - ConversationOptResultList []*OptResult `json:"data"` -} - -type Conversation struct { - OwnerUserID string `json:"ownerUserID" binding:"required"` - 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"` - UnreadCount int32 `json:"unreadCount" binding:"omitempty"` - DraftTextTime int64 `json:"draftTextTime"` - IsPinned bool `json:"isPinned" binding:"omitempty"` - IsPrivateChat bool `json:"isPrivateChat"` - BurnDuration int32 `json:"burnDuration"` - GroupAtType int32 `json:"groupAtType"` - IsNotInGroup bool `json:"isNotInGroup"` - UpdateUnreadCountTime int64 `json:"updateUnreadCountTime"` - AttachedInfo string `json:"attachedInfo"` - Ex string `json:"ex"` -} - -type SetConversationReq struct { - Conversation - NotificationType int32 `json:"notificationType"` - OperationID string `json:"operationID" binding:"required"` -} - -type SetConversationResp struct{} -type ModifyConversationFieldReq struct { - Conversation - FieldType int32 `json:"fieldType" binding:"required"` - UserIDList []string `json:"userIDList" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type ModifyConversationFieldResp struct{} - -type BatchSetConversationsReq struct { - 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 { - Data struct { - Success []string `json:"success"` - Failed []string `json:"failed"` - } `json:"data"` -} - -type GetConversationReq struct { - ConversationID string `json:"conversationID" binding:"required"` - OwnerUserID string `json:"ownerUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} - -type GetConversationResp struct { - Conversation Conversation `json:"data"` -} - -type GetAllConversationsReq struct { - OwnerUserID string `json:"ownerUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} - -type GetAllConversationsResp struct { - Conversations []Conversation `json:"data"` -} - -type GetConversationsReq struct { - ConversationIDs []string `json:"conversationIDs" binding:"required"` - OwnerUserID string `json:"ownerUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} - -type GetConversationsResp struct { - Conversations []Conversation `json:"data"` -} - -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"` - NotificationType int32 `json:"notificationType"` -} - -type SetRecvMsgOptResp struct{} diff --git a/pkg/apistruct/cos.go b/pkg/apistruct/cos.go deleted file mode 100644 index bd2611553..000000000 --- a/pkg/apistruct/cos.go +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -import sts "github.com/tencentyun/qcloud-cos-sts-sdk/go" - -type TencentCloudStorageCredentialReq struct { - OperationID string `json:"operationID"` -} - -type TencentCloudStorageCredentialRespData struct { - *sts.CredentialResult - Region string `json:"region"` - Bucket string `json:"bucket"` -} - -type TencentCloudStorageCredentialResp struct { - CosData TencentCloudStorageCredentialRespData `json:"-"` - - Data map[string]interface{} `json:"data"` -} diff --git a/pkg/apistruct/friend.go b/pkg/apistruct/friend.go deleted file mode 100644 index 5aac9494e..000000000 --- a/pkg/apistruct/friend.go +++ /dev/null @@ -1,282 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -//type ParamsCommFriend struct { -// OperationID string `json:"operationID" binding:"required"` -// ToUserID string `json:"toUserID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -// -//type AddBlacklistReq struct { -// ParamsCommFriend -//} -//type AddBlacklistResp struct { -// -//} -// -//type ImportFriendReq struct { -// FriendUserIDList []string `json:"friendUserIDList" binding:"required"` -// OperationID string `json:"operationID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -//type UserIDResult struct { -// UserID string `json:"userID"` -// Result int32 `json:"result"` -//} -//type ImportFriendResp struct { -// -// UserIDResultList []UserIDResult `json:"data"` -//} -// -//type AddFriendReq struct { -// ParamsCommFriend -// ReqMsg string `json:"reqMsg"` -//} -//type AddFriendResp struct { -// -//} -// -//type AddFriendResponseReq struct { -// ParamsCommFriend -// Flag int32 `json:"flag" binding:"required,oneof=-1 0 1"` -// HandleMsg string `json:"handleMsg"` -//} -//type AddFriendResponseResp struct { -// -//} -// -//type DeleteFriendReq struct { -// ParamsCommFriend -//} -//type DeleteFriendResp struct { -// -//} -// -//type GetBlackListReq struct { -// OperationID string `json:"operationID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -//type GetBlackListResp struct { -// -// BlackUserInfoList []*sdkws.PublicUserInfo `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} -// -////type PublicUserInfo struct { -//// UserID string `json:"userID"` -//// Nickname string `json:"nickname"` -//// FaceUrl string `json:"faceUrl"` -//// Gender int32 `json:"gender"` -////} -// -//type SetFriendRemarkReq struct { -// ParamsCommFriend -// Remark string `json:"remark"` -//} -//type SetFriendRemarkResp struct { -// -//} -// -//type RemoveBlacklistReq struct { -// ParamsCommFriend -//} -//type RemoveBlacklistResp struct { -// -//} -// -//type IsFriendReq struct { -// ParamsCommFriend -//} -//type Response struct { -// Friend bool `json:"isFriend"` -//} -//type IsFriendResp struct { -// -// Response Response `json:"data"` -//} -// -//type GetFriendsInfoReq struct { -// ParamsCommFriend -//} -//type GetFriendsInfoResp struct { -// -// FriendInfoList []*sdkws.FriendInfo `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} -// -//type GetFriendListReq struct { -// OperationID string `json:"operationID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -//type GetFriendListResp struct { -// -// FriendInfoList []*sdkws.FriendInfo `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} -// -//type GetFriendApplyListReq struct { -// OperationID string `json:"operationID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -//type GetFriendApplyListResp struct { -// -// FriendRequestList []*sdkws.FriendRequest `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} -// -//type GetSelfApplyListReq struct { -// OperationID string `json:"operationID" binding:"required"` -// FromUserID string `json:"fromUserID" binding:"required"` -//} -//type GetSelfApplyListResp struct { -// -// FriendRequestList []*sdkws.FriendRequest `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} - -type FriendInfo struct { - UserID string `json:"userID"` - Nickname string `json:"nickname"` - FaceURL string `json:"faceURL"` - Gender int32 `json:"gender"` - Ex string `json:"ex"` -} - -type PublicUserInfo struct { - UserID string `json:"userID"` - Nickname string `json:"nickname"` - FaceURL string `json:"faceURL"` - Gender int32 `json:"gender"` - Ex string `json:"ex"` -} - -type FriendRequest struct { - FromUserID string `json:"fromUserID"` - FromNickname string `json:"fromNickname"` - FromFaceURL string `json:"fromFaceURL"` - FromGender int32 `json:"fromGender"` - ToUserID string `json:"toUserID"` - ToNickname string `json:"toNickname"` - ToFaceURL string `json:"toFaceURL"` - ToGender int32 `json:"toGender"` - HandleResult int32 `json:"handleResult"` - ReqMsg string `json:"reqMsg"` - CreateTime uint32 `json:"createTime"` - HandlerUserID string `json:"handlerUserID"` - HandleMsg string `json:"handleMsg"` - HandleTime uint32 `json:"handleTime"` - Ex string `json:"ex"` -} - -type AddBlacklistReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type AddBlacklistResp struct{} - -type ImportFriendReq struct { - FriendUserIDList []string `json:"friendUserIDList" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} - -type ImportFriendResp struct { - // -} - -type AddFriendReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` - ReqMsg string `json:"reqMsg"` -} -type AddFriendResp struct { - // -} - -type AddFriendResponseReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` - HandleResult int32 `json:"flag" binding:"required,oneof=-1 0 1"` - HandleMsg string `json:"handleMsg"` -} -type AddFriendResponseResp struct{} - -type DeleteFriendReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type DeleteFriendResp struct{} - -type GetBlackListReq struct { - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetBlackListResp struct { - BlackUserInfoList []PublicUserInfo `json:"blackUserInfoList"` -} - -type SetFriendRemarkReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` - Remark string `json:"remark"` -} -type SetFriendRemarkResp struct{} - -type RemoveBlacklistReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type RemoveBlacklistResp struct{} - -type IsFriendReq struct { - ToUserID string `json:"toUserID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type Response struct { - Friend bool `json:"isFriend"` -} -type IsFriendResp struct { - Response Response `json:"data"` -} - -type GetFriendListReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetFriendListResp struct { - OwnerUserID string `json:"ownerUserID"` - Remark string `json:"remark"` - CreateTime uint32 `json:"createTime"` - AddSource int32 `json:"addSource"` - OperatorUserID string `json:"operatorUserID"` - Ex string `json:"ex"` - // FriendUser *UserInfo // TODO -} - -type GetFriendApplyListReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} - -type GetFriendApplyListResp struct { - FriendRequestList []FriendRequest `json:"friendRequestList"` -} - -type GetSelfApplyListReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetSelfApplyListResp struct { - FriendRequestList []FriendRequest `json:"friendRequestList"` -} diff --git a/pkg/apistruct/group.go b/pkg/apistruct/group.go deleted file mode 100644 index a3a379164..000000000 --- a/pkg/apistruct/group.go +++ /dev/null @@ -1,272 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -import ( - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" -) - -type KickGroupMemberReq struct { - GroupID string `json:"groupID" binding:"required"` - KickedUserIDList []string `json:"kickedUserIDList" binding:"required"` - Reason string `json:"reason"` - OperationID string `json:"operationID" binding:"required"` -} -type KickGroupMemberResp struct { - // UserIDResultList []*UserIDResult `json:"data"` -} - -type GetGroupMembersInfoReq struct { - GroupID string `json:"groupID" binding:"required"` - MemberList []string `json:"memberList" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type GetGroupMembersInfoResp struct { - MemberList []*sdkws.GroupMemberFullInfo `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -type InviteUserToGroupReq struct { - GroupID string `json:"groupID" binding:"required"` - InvitedUserIDList []string `json:"invitedUserIDList" binding:"required"` - Reason string `json:"reason"` - OperationID string `json:"operationID" binding:"required"` -} -type InviteUserToGroupResp struct { - // UserIDResultList []*UserIDResult `json:"data"` -} - -type GetJoinedGroupListReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` -} -type GetJoinedGroupListResp struct { - GroupInfoList []*sdkws.GroupInfo `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -type GetGroupMemberListReq struct { - GroupID string `json:"groupID"` - Filter int32 `json:"filter"` - NextSeq int32 `json:"nextSeq"` - OperationID string `json:"operationID"` -} -type GetGroupMemberListResp struct { - NextSeq int32 `json:"nextSeq"` - MemberList []*sdkws.GroupMemberFullInfo `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -type GetGroupAllMemberReq struct { - GroupID string `json:"groupID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` - Offset int32 `json:"offset"` - Count int32 `json:"count"` -} -type GetGroupAllMemberResp struct { - MemberList []*sdkws.GroupMemberFullInfo `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -// -//type GetGroupAllMemberListBySplitReq struct { -// GroupID string `json:"groupID" binding:"required"` -// OperationID string `json:"operationID" binding:"required"` -// Offset int32 `json:"offset" binding:"required"` -// Count int32 `json:"count" binding:"required"` -//} -//type GetGroupAllMemberListBySplitResp struct { -// -// MemberList []*sdkws.GroupMemberFullInfo `json:"-"` -// Map []map[string]interface{} `json:"data" swaggerignore:"true"` -//} - -type CreateGroupReq struct { - MemberList []*GroupAddMemberInfo `json:"memberList"` - OwnerUserID string `json:"ownerUserID"` - GroupType int32 `json:"groupType"` - GroupName string `json:"groupName"` - Notification string `json:"notification"` - Introduction string `json:"introduction"` - FaceURL string `json:"faceURL"` - Ex string `json:"ex"` - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID"` -} -type CreateGroupResp struct { - GroupInfo sdkws.GroupInfo `json:"-"` - Data map[string]interface{} `json:"data" swaggerignore:"true"` -} - -type GetGroupApplicationListReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` // 作为管理员或群主收到的 进群申请 -} - -type GetGroupApplicationListResp struct { - GroupRequestList []*sdkws.GroupRequest `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -type GetUserReqGroupApplicationListReq struct { - OperationID string `json:"operationID" binding:"required"` - UserID string `json:"userID" binding:"required"` -} - -type GetUserRespGroupApplicationResp struct { - GroupRequestList []*sdkws.GroupRequest `json:"data"` -} - -type GetGroupInfoReq struct { - GroupIDList []string `json:"groupIDList" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type GetGroupInfoResp struct { - GroupInfoList []*sdkws.GroupInfo `json:"-"` - Data []map[string]interface{} `json:"data" swaggerignore:"true"` -} - -//type GroupInfoAlias struct { -// sdkws.GroupInfo -// NeedVerification int32 `protobuf:"bytes,13,opt,name=needVerification" json:"needVerification,omitempty"` -//} - -//type GroupInfoAlias struct { -// GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` -// GroupName string `protobuf:"bytes,2,opt,name=groupName" json:"groupName,omitempty"` -// Notification string `protobuf:"bytes,3,opt,name=notification" json:"notification,omitempty"` -// Introduction string `protobuf:"bytes,4,opt,name=introduction" json:"introduction,omitempty"` -// FaceURL string `protobuf:"bytes,5,opt,name=faceURL" json:"faceURL,omitempty"` -// OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID" json:"ownerUserID,omitempty"` -// CreateTime uint32 `protobuf:"varint,7,opt,name=createTime" json:"createTime,omitempty"` -// MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount" json:"memberCount,omitempty"` -// Ex string `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"` -// Status int32 `protobuf:"varint,10,opt,name=status" json:"status,omitempty"` -// CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID" json:"creatorUserID,omitempty"` -// GroupType int32 `protobuf:"varint,12,opt,name=groupType" json:"groupType,omitempty"` -// NeedVerification int32 `protobuf:"bytes,13,opt,name=needVerification" json:"needVerification,omitempty"` -//} - -type ApplicationGroupResponseReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` // application from FromUserID - HandledMsg string `json:"handledMsg"` - HandleResult int32 `json:"handleResult" binding:"required,oneof=-1 1"` -} -type ApplicationGroupResponseResp struct{} - -type JoinGroupReq struct { - GroupID string `json:"groupID" binding:"required"` - ReqMessage string `json:"reqMessage"` - OperationID string `json:"operationID" binding:"required"` - JoinSource int32 `json:"joinSource"` - InviterUserID string `json:"inviterUserID"` -} - -type JoinGroupResp struct{} - -type QuitGroupReq struct { - GroupID string `json:"groupID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type QuitGroupResp struct{} - -type SetGroupInfoReq struct { - GroupID string `json:"groupID" binding:"required"` - GroupName string `json:"groupName"` - Notification string `json:"notification"` - Introduction string `json:"introduction"` - FaceURL string `json:"faceURL"` - Ex string `json:"ex"` - OperationID string `json:"operationID" binding:"required"` - NeedVerification *int32 `json:"needVerification"` - LookMemberInfo *int32 `json:"lookMemberInfo"` - ApplyMemberFriend *int32 `json:"applyMemberFriend"` -} - -type SetGroupInfoResp struct{} - -type TransferGroupOwnerReq struct { - GroupID string `json:"groupID" binding:"required"` - OldOwnerUserID string `json:"oldOwnerUserID" binding:"required"` - NewOwnerUserID string `json:"newOwnerUserID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type TransferGroupOwnerResp struct{} - -type DismissGroupReq struct { - GroupID string `json:"groupID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} -type DismissGroupResp struct{} - -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{} - -type CancelMuteGroupMemberReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` - UserID string `json:"userID" binding:"required"` -} -type CancelMuteGroupMemberResp struct{} - -type MuteGroupReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` -} -type MuteGroupResp struct{} - -type CancelMuteGroupReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` -} -type CancelMuteGroupResp struct{} - -type SetGroupMemberNicknameReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` - UserID string `json:"userID" binding:"required"` - Nickname string `json:"nickname"` -} - -type SetGroupMemberNicknameResp struct{} - -type SetGroupMemberInfoReq struct { - OperationID string `json:"operationID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` - UserID string `json:"userID" binding:"required"` - Nickname *string `json:"nickname"` - FaceURL *string `json:"userGroupFaceUrl"` - RoleLevel *int32 `json:"roleLevel" validate:"gte=1,lte=3"` - Ex *string `json:"ex"` -} - -type SetGroupMemberInfoResp struct{} - -type GetGroupAbstractInfoReq struct { - OperationID string `json:"operationID"` - GroupID string `json:"groupID"` -} - -type GetGroupAbstractInfoResp struct { - GroupMemberNumber int32 `json:"groupMemberNumber"` - GroupMemberListHash uint64 `json:"groupMemberListHash"` -} diff --git a/pkg/apistruct/manage.go b/pkg/apistruct/manage.go index 042f61aa0..6a92f40aa 100644 --- a/pkg/apistruct/manage.go +++ b/pkg/apistruct/manage.go @@ -18,34 +18,7 @@ import ( sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) -type DeleteUsersReq struct { - OperationID string `json:"operationID" binding:"required"` - DeleteUserIDList []string `json:"deleteUserIDList" binding:"required"` -} -type DeleteUsersResp struct { - FailedUserIDList []string `json:"data"` -} -type GetAllUsersUidReq struct { - OperationID string `json:"operationID" binding:"required"` -} -type GetAllUsersUidResp struct { - UserIDList []string `json:"data"` -} -type GetUsersOnlineStatusReq struct { - OperationID string `json:"operationID" binding:"required"` - UserIDList []string `json:"userIDList" binding:"required,lte=200"` -} -type GetUsersOnlineStatusResp struct { - // SuccessResult []*msggateway.GetUsersOnlineStatusResp_SuccessResult `json:"data"` -} - -type AccountCheckReq struct { - OperationID string `json:"operationID" binding:"required"` - CheckUserIDList []string `json:"checkUserIDList" binding:"required,lte=100"` -} -type AccountCheckResp struct{} - -type ManagementSendMsg struct { +type SendMsg struct { SendID string `json:"sendID" binding:"required"` GroupID string `json:"groupID" binding:"required_if=SessionType 2|required_if=SessionType 3"` SenderNickname string `json:"senderNickname"` @@ -59,48 +32,25 @@ type ManagementSendMsg struct { OfflinePushInfo *sdkws.OfflinePushInfo `json:"offlinePushInfo"` } -type ManagementSendMsgReq struct { - SendID string `json:"sendID" binding:"required"` - RecvID string `json:"recvID" binding:"required_if" message:"recvID is required if sessionType is SingleChatType or NotificationChatType"` - GroupID string `json:"groupID" binding:"required_if" message:"groupID is required if sessionType is GroupChatType or SuperGroupChatType"` - SenderNickname string `json:"senderNickname"` - SenderFaceURL string `json:"senderFaceURL"` - SenderPlatformID int32 `json:"senderPlatformID"` - Content map[string]interface{} `json:"content" binding:"required" swaggerignore:"true"` - ContentType int32 `json:"contentType" binding:"required"` - SessionType int32 `json:"sessionType" binding:"required"` - IsOnlineOnly bool `json:"isOnlineOnly"` - NotOfflinePush bool `json:"notOfflinePush"` - OfflinePushInfo *sdkws.OfflinePushInfo `json:"offlinePushInfo"` +type SendMsgReq struct { + RecvID string `json:"recvID" binding:"required_if" message:"recvID is required if sessionType is SingleChatType or NotificationChatType"` + SendMsg } -type ManagementSendMsgResp struct { - ResultList sdkws.UserSendMsgResp `json:"data"` +type BatchSendMsgReq struct { + SendMsg + IsSendAll bool `json:"isSendAll"` + RecvIDs []string `json:"recvIDs"` } -type ManagementBatchSendMsgReq struct { - ManagementSendMsg - IsSendAll bool `json:"isSendAll"` - RecvIDList []string `json:"recvIDList"` +type BatchSendMsgResp struct { + Results []*SingleReturnResult `json:"results"` + FailedIDs []string `json:"failedUserIDs"` } -type ManagementBatchSendMsgResp struct { - Data struct { - ResultList []*SingleReturnResult `json:"resultList"` - FailedIDList []string - } `json:"data"` -} type SingleReturnResult struct { ServerMsgID string `json:"serverMsgID"` ClientMsgID string `json:"clientMsgID"` SendTime int64 `json:"sendTime"` RecvID string `json:"recvID"` } - -type CheckMsgIsSendSuccessReq struct { - OperationID string `json:"operationID"` -} - -type CheckMsgIsSendSuccessResp struct { - Status int32 `json:"status"` -} diff --git a/pkg/apistruct/msg.go b/pkg/apistruct/msg.go index 35351315a..a0c5e1429 100644 --- a/pkg/apistruct/msg.go +++ b/pkg/apistruct/msg.go @@ -14,46 +14,6 @@ package apistruct -type DelMsgReq struct { - UserID string `json:"userID,omitempty" binding:"required"` - SeqList []uint32 `json:"seqList,omitempty" binding:"required"` - OperationID string `json:"operationID,omitempty" binding:"required"` -} - -type DelMsgResp struct{} - -type CleanUpMsgReq struct { - UserID string `json:"userID" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} - -type CleanUpMsgResp struct{} - -type DelSuperGroupMsgReq struct { - UserID string `json:"userID" binding:"required"` - GroupID string `json:"groupID" binding:"required"` - SeqList []uint32 `json:"seqList,omitempty"` - IsAllDelete bool `json:"isAllDelete"` - OperationID string `json:"operationID" binding:"required"` -} - -type DelSuperGroupMsgResp struct{} - -type MsgDeleteNotificationElem struct { - GroupID string `json:"groupID"` - IsAllDelete bool `json:"isAllDelete"` - SeqList []uint32 `json:"seqList"` -} - -type SetMsgMinSeqReq struct { - UserID string `json:"userID" binding:"required"` - GroupID string `json:"groupID"` - MinSeq uint32 `json:"minSeq" binding:"required"` - OperationID string `json:"operationID" binding:"required"` -} - -type SetMsgMinSeqResp struct{} - type PictureBaseInfo struct { UUID string `mapstructure:"uuid"` Type string `mapstructure:"type"` @@ -113,7 +73,7 @@ type CustomElem struct { Extension string `mapstructure:"extension"` } type TextElem struct { - Content string `mapstructure:"content" validate:"required"` + Text string `mapstructure:"text" validate:"required"` } type RevokeElem struct { diff --git a/pkg/apistruct/oss.go b/pkg/apistruct/oss.go deleted file mode 100644 index 4f1e6c00a..000000000 --- a/pkg/apistruct/oss.go +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type OSSCredentialReq struct { - OperationID string `json:"operationID"` - Filename string `json:"filename"` - FileType string `json:"file_type"` -} - -type OSSCredentialRespData struct { - Endpoint string `json:"endpoint"` - AccessKeyId string `json:"access_key_id"` - AccessKeySecret string `json:"access_key_secret"` - Token string `json:"token"` - Bucket string `json:"bucket"` - FinalHost string `json:"final_host"` -} - -type OSSCredentialResp struct { - OssData OSSCredentialRespData `json:"-"` - Data map[string]interface{} `json:"data"` -} diff --git a/pkg/apistruct/pagination.go b/pkg/apistruct/pagination.go deleted file mode 100644 index 02de39967..000000000 --- a/pkg/apistruct/pagination.go +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type Pagination struct { - PageNumber int32 `json:"pageNumber" binding:"required"` - ShowNumber int32 `json:"showNumber" binding:"required"` -} diff --git a/pkg/apistruct/public.go b/pkg/apistruct/public.go index ff3a115ae..7589b1d0f 100644 --- a/pkg/apistruct/public.go +++ b/pkg/apistruct/public.go @@ -14,18 +14,6 @@ package apistruct -type ApiUserInfo struct { - UserID string `json:"userID" binding:"required,min=1,max=64" swaggo:"true,用户ID,"` - Nickname string `json:"nickname" binding:"omitempty,min=1,max=64" swaggo:"true,my id,19"` - FaceURL string `json:"faceURL" binding:"omitempty,max=1024"` - Gender int32 `json:"gender" binding:"omitempty,oneof=0 1 2"` - PhoneNumber string `json:"phoneNumber" binding:"omitempty,max=32"` - Birth int64 `json:"birth" binding:"omitempty"` - Email string `json:"email" binding:"omitempty,max=64"` - CreateTime int64 `json:"createTime"` - Ex string `json:"ex" binding:"omitempty,max=1024"` -} - type GroupAddMemberInfo struct { UserID string `json:"userID" binding:"required"` RoleLevel int32 `json:"roleLevel" binding:"required,oneof= 1 3"` diff --git a/pkg/apistruct/super_group.go b/pkg/apistruct/super_group.go deleted file mode 100644 index 92275eabf..000000000 --- a/pkg/apistruct/super_group.go +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -type GetJoinedSuperGroupListReq struct { - GetJoinedGroupListReq -} - -type GetJoinedSuperGroupListResp struct { - GetJoinedGroupListResp -} - -type GetSuperGroupsInfoReq struct { - GetGroupInfoReq -} - -type GetSuperGroupsInfoResp struct { - GetGroupInfoResp -} diff --git a/pkg/apistruct/third.go b/pkg/apistruct/third.go deleted file mode 100644 index ce4719e1f..000000000 --- a/pkg/apistruct/third.go +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apistruct - -import "mime/multipart" - -type MinioStorageCredentialReq struct { - OperationID string `json:"operationID"` -} - -type MiniostorageCredentialResp struct { - SecretAccessKey string `json:"secretAccessKey"` - AccessKeyID string `json:"accessKeyID"` - SessionToken string `json:"sessionToken"` - BucketName string `json:"bucketName"` - StsEndpointURL string `json:"stsEndpointURL"` - StorageTime int `json:"storageTime"` - IsDistributedMod bool `json:"isDistributedMod"` -} - -type MinioUploadFileReq struct { - OperationID string `form:"operationID" binding:"required"` - FileType int `form:"fileType" binding:"required"` -} - -type MinioUploadFile struct { - URL string `json:"URL"` - NewName string `json:"newName"` - SnapshotURL string `json:"snapshotURL,omitempty"` - SnapshotNewName string `json:"snapshotName,omitempty"` -} - -type MinioUploadFileResp struct { - Data struct { - MinioUploadFile - } `json:"data"` -} - -type UploadUpdateAppReq struct { - OperationID string `form:"operationID" binding:"required"` - Type int `form:"type" binding:"required"` - Version string `form:"version" binding:"required"` - File *multipart.FileHeader `form:"file" binding:"required"` - Yaml *multipart.FileHeader `form:"yaml"` - ForceUpdate bool `form:"forceUpdate"` - UpdateLog string `form:"updateLog" binding:"required"` -} - -type UploadUpdateAppResp struct{} - -type GetDownloadURLReq struct { - OperationID string `json:"operationID" binding:"required"` - Type int `json:"type" binding:"required"` - Version string `json:"version" binding:"required"` -} - -type GetDownloadURLResp struct { - Data struct { - HasNewVersion bool `json:"hasNewVersion"` - ForceUpdate bool `json:"forceUpdate"` - FileURL string `json:"fileURL"` - YamlURL string `json:"yamlURL"` - Version string `json:"version"` - UpdateLog string `json:"update_log"` - } `json:"data"` -} - -type GetRTCInvitationInfoReq struct { - OperationID string `json:"operationID" binding:"required"` - ClientMsgID string `json:"clientMsgID" binding:"required"` -} - -type GetRTCInvitationInfoResp struct { - Data struct { - OpUserID string `json:"opUserID"` - Invitation struct { - InviterUserID string `json:"inviterUserID"` - InviteeUserIDList []string `json:"inviteeUserIDList"` - GroupID string `json:"groupID"` - RoomID string `json:"roomID"` - Timeout int32 `json:"timeout"` - MediaType string `json:"mediaType"` - SessionType int32 `json:"sessionType"` - InitiateTime int32 `json:"initiateTime"` - PlatformID int32 `json:"platformID"` - CustomData string `json:"customData"` - } `json:"invitation"` - OfflinePushInfo struct{} `json:"offlinePushInfo"` - } `json:"data"` -} - -type GetRTCInvitationInfoStartAppReq struct { - OperationID string `json:"operationID" binding:"required"` -} - -type GetRTCInvitationInfoStartAppResp struct { - GetRTCInvitationInfoResp -} - -/** - * FCM第三方上报Token. - */ -type FcmUpdateTokenReq struct { - OperationID string `json:"operationID" binding:"required"` - Platform int `json:"platform" binding:"required,min=1,max=2"` // only for ios + android - FcmToken string `json:"fcmToken" binding:"required"` -} - -type FcmUpdateTokenResp struct{} -type SetAppBadgeReq struct { - OperationID string `json:"operationID" binding:"required"` - FromUserID string `json:"fromUserID" binding:"required"` - AppUnreadCount int32 `json:"appUnreadCount"` -} - -type SetAppBadgeResp struct{} diff --git a/pkg/common/db/controller/user.go b/pkg/common/db/controller/user.go index db725ae60..fe14f0a1c 100644 --- a/pkg/common/db/controller/user.go +++ b/pkg/common/db/controller/user.go @@ -41,7 +41,7 @@ type UserDatabase interface { //只要有一个存在就为true IsExist(ctx context.Context, userIDs []string) (exist bool, err error) //获取所有用户ID - GetAllUserID(ctx context.Context) ([]string, error) + GetAllUserID(ctx context.Context, pageNumber, showNumber int32) ([]string, error) //函数内部先查询db中是否存在,存在则什么都不做;不存在则插入 InitOnce(ctx context.Context, users []*relation.UserModel) (err error) // 获取用户总数 @@ -147,8 +147,8 @@ func (u *userDatabase) IsExist(ctx context.Context, userIDs []string) (exist boo return false, nil } -func (u *userDatabase) GetAllUserID(ctx context.Context) (userIDs []string, err error) { - return u.userDB.GetAllUserID(ctx) +func (u *userDatabase) GetAllUserID(ctx context.Context, pageNumber, showNumber int32) (userIDs []string, err error) { + return u.userDB.GetAllUserID(ctx, pageNumber, showNumber) } func (u *userDatabase) CountTotal(ctx context.Context, before *time.Time) (count int64, err error) { diff --git a/pkg/common/db/relation/user_model.go b/pkg/common/db/relation/user_model.go index d03216d9b..3da877c19 100644 --- a/pkg/common/db/relation/user_model.go +++ b/pkg/common/db/relation/user_model.go @@ -84,9 +84,8 @@ func (u *UserGorm) Page( } // 获取所有用户ID -func (u *UserGorm) GetAllUserID(ctx context.Context) (userIDs []string, err error) { - err = u.db(ctx).Pluck("user_id", &userIDs).Error - return userIDs, err +func (u *UserGorm) GetAllUserID(ctx context.Context, pageNumber, showNumber int32) (userIDs []string, err error) { + return userIDs, errs.Wrap(u.db(ctx).Limit(int(showNumber)).Offset(int((pageNumber-1)*showNumber)).Pluck("user_id", &userIDs).Error) } func (u *UserGorm) GetUserGlobalRecvMsgOpt(ctx context.Context, userID string) (opt int, err error) { diff --git a/pkg/common/db/table/relation/user.go b/pkg/common/db/table/relation/user.go index f44a610ad..c840f7070 100644 --- a/pkg/common/db/table/relation/user.go +++ b/pkg/common/db/table/relation/user.go @@ -63,7 +63,7 @@ type UserModelInterface interface { Take(ctx context.Context, userID string) (user *UserModel, err error) // 获取用户信息 不存在,不返回错误 Page(ctx context.Context, pageNumber, showNumber int32) (users []*UserModel, count int64, err error) - GetAllUserID(ctx context.Context) (userIDs []string, err error) + GetAllUserID(ctx context.Context, pageNumber, showNumber int32) (userIDs []string, err error) GetUserGlobalRecvMsgOpt(ctx context.Context, userID string) (opt int, err error) // 获取用户总数 CountTotal(ctx context.Context, before *time.Time) (count int64, err error) diff --git a/pkg/rpcclient/user.go b/pkg/rpcclient/user.go index a88c061e2..023c26d3c 100644 --- a/pkg/rpcclient/user.go +++ b/pkg/rpcclient/user.go @@ -46,6 +46,11 @@ func NewUser(discov discoveryregistry.SvcDiscoveryRegistry) *User { type UserRpcClient User +func NewUserRpcClientByUser(user *User) *UserRpcClient { + rpc := UserRpcClient(*user) + return &rpc +} + func NewUserRpcClient(client discoveryregistry.SvcDiscoveryRegistry) UserRpcClient { return UserRpcClient(*NewUser(client)) } @@ -141,3 +146,11 @@ func (u *UserRpcClient) Access(ctx context.Context, ownerUserID string) error { } return tokenverify.CheckAccessV3(ctx, ownerUserID) } + +func (u *UserRpcClient) GetAllUserIDs(ctx context.Context, pageNumber, showNumber int32) ([]string, error) { + resp, err := u.Client.GetAllUserID(ctx, &user.GetAllUserIDReq{Pagination: &sdkws.RequestPagination{PageNumber: pageNumber, ShowNumber: showNumber}}) + if err != nil { + return nil, err + } + return resp.UserIDs, nil +} From b85c5ad84e39b6586f362345afa121537edea383 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <86140903+cubxxw@users.noreply.github.com> Date: Fri, 14 Jul 2023 16:17:59 +0800 Subject: [PATCH 02/46] feat: Add light mode and dark mode.(#89) (#558) * feat: Add light mode and dark mode.(#89) Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: make file code len Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: fix scripts support win Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: make build issue Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: golint and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts sudo limits of authority Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: docker images fix Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: docker images fix Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/workflows/scripts-test.yml | 36 +- Dockerfile | 12 +- cmd/openim-api/main.go | 2 +- docker-compose.yaml | 2 +- internal/api/group.go | 1 + internal/api/route.go | 10 +- internal/api/user.go | 6 +- internal/msggateway/client.go | 26 +- internal/msggateway/compressor.go | 1 + internal/msggateway/constant.go | 4 +- internal/msggateway/context.go | 11 + internal/msggateway/encoder.go | 5 +- internal/msggateway/hub_server.go | 2 +- internal/msggateway/long_conn.go | 13 +- internal/msggateway/message_handler.go | 7 +- internal/msggateway/n_ws_server.go | 11 +- internal/msggateway/options.go | 27 +- internal/msggateway/user_map.go | 7 +- internal/msgtransfer/init.go | 14 +- .../msgtransfer/online_history_msg_handler.go | 32 +- .../online_msg_to_mongo_handler.go | 6 +- .../msgtransfer/persistent_msg_handler.go | 10 +- internal/push/offlinepush/fcm/push.go | 6 +- internal/push/offlinepush/getui/body.go | 2 +- internal/push/offlinepush/getui/push.go | 11 +- .../push/offlinepush/jpush/body/platform.go | 3 +- .../push/offlinepush/jpush/body/pushobj.go | 1 + internal/push/push_handler.go | 9 +- internal/push/push_to_client.go | 8 +- internal/rpc/conversation/conversaion.go | 12 +- internal/rpc/friend/friend.go | 20 +- internal/rpc/group/group.go | 17 +- internal/rpc/group/statistics.go | 3 +- internal/rpc/msg/as_read.go | 2 +- internal/rpc/msg/lock.go | 6 +- internal/rpc/msg/send.go | 4 +- internal/rpc/msg/server.go | 31 +- internal/rpc/msg/statistics.go | 22 +- internal/rpc/msg/sync_msg.go | 1 + internal/rpc/msg/verify.go | 5 +- internal/rpc/third/s3.go | 3 +- internal/rpc/third/third.go | 8 +- internal/rpc/third/tool.go | 5 +- internal/rpc/user/user.go | 3 +- internal/tools/conversation.go | 13 +- internal/tools/msg.go | 16 +- pkg/common/cmd/msg_gateway.go | 2 +- pkg/common/config/config.go | 2 +- pkg/common/config/parse.go | 2 +- pkg/common/constant/constant.go | 40 +- pkg/common/constant/platform_id_to_name.go | 8 +- pkg/common/convert/group.go | 2 +- pkg/common/convert/msg.go | 1 - pkg/common/db/cache/black.go | 6 +- pkg/common/db/cache/conversation.go | 2 +- pkg/common/db/cache/friend.go | 4 +- pkg/common/db/cache/group.go | 11 +- pkg/common/db/cache/init_redis.go | 4 +- pkg/common/db/cache/init_redis_test.go | 5 +- pkg/common/db/cache/msg.go | 4 +- pkg/common/db/controller/auth.go | 8 +- pkg/common/db/controller/black.go | 8 +- pkg/common/db/controller/conversation.go | 17 +- pkg/common/db/controller/friend.go | 32 +- pkg/common/db/controller/group.go | 4 +- pkg/common/db/controller/msg.go | 86 +++- pkg/common/db/controller/s3.go | 5 +- pkg/common/db/controller/user.go | 28 +- pkg/common/db/localcache/conversation.go | 1 - pkg/common/db/relation/friend_model.go | 22 +- .../db/relation/friend_request_model.go | 14 +- pkg/common/db/relation/group_model.go | 4 +- pkg/common/db/relation/mysql_init.go | 8 +- pkg/common/db/relation/user_model.go | 12 +- pkg/common/db/s3/cont/controller.go | 10 +- pkg/common/db/s3/cont/error.go | 1 + pkg/common/db/s3/cos/cos.go | 8 +- pkg/common/db/s3/minio/minio.go | 12 +- pkg/common/db/s3/oss/oss.go | 14 +- pkg/common/db/s3/oss/sign.go | 3 +- pkg/common/db/table/relation/conversation.go | 28 +- pkg/common/db/table/unrelation/msg.go | 3 +- pkg/common/db/unrelation/mongo.go | 4 +- pkg/common/db/unrelation/msg.go | 42 +- pkg/common/kafka/consumer_group.go | 1 - pkg/common/kafka/producer.go | 20 +- pkg/common/log/zap.go | 3 +- pkg/common/mw/gin.go | 2 +- pkg/common/prome/gather.go | 24 +- pkg/common/tokenverify/jwt_token.go | 13 +- pkg/discoveryregistry/zookeeper/discover.go | 10 +- pkg/errs/code.go | 8 +- pkg/proto/auth/auth.pb.go | 17 +- pkg/proto/conversation/conversation.pb.go | 78 ++-- pkg/proto/errinfo/errinfo.pb.go | 11 +- pkg/proto/friend/friend.pb.go | 44 +- pkg/proto/group/group.pb.go | 100 ++--- pkg/proto/msg/msg.pb.go | 144 +++---- pkg/proto/msggateway/msggateway.pb.go | 48 ++- pkg/proto/push/push.pb.go | 12 +- pkg/proto/sdkws/sdkws.pb.go | 396 +++++++++--------- pkg/proto/statistics/statistics.pb.go | 3 +- pkg/proto/third/third.pb.go | 65 +-- pkg/proto/user/user.pb.go | 54 +-- pkg/proto/wrapperspb/wrapperspb.pb.go | 5 +- pkg/rpcclient/conversation.go | 4 +- pkg/rpcclient/friend.go | 3 +- pkg/rpcclient/msg.go | 7 +- pkg/rpcclient/notification/conevrsation.go | 6 +- pkg/rpcclient/notification/group.go | 13 +- pkg/rpcclient/third.go | 5 +- scripts/make-rules/golang.mk | 16 +- scripts/make-rules/image.mk | 49 +-- 113 files changed, 1158 insertions(+), 926 deletions(-) diff --git a/.github/workflows/scripts-test.yml b/.github/workflows/scripts-test.yml index 3b12f2d3c..4b0dc03b4 100644 --- a/.github/workflows/scripts-test.yml +++ b/.github/workflows/scripts-test.yml @@ -28,46 +28,46 @@ jobs: - name: Start Docker Compose run: | - docker compose stop - sleep 30 - docker compose up -d - sleep 60 + sudo docker compose stop + sudo sleep 30 + sudo docker compose up -d + sudo sleep 60 continue-on-error: true - name: Stop all services run: | - chmod +x ./scripts/stop_all.sh - ./scripts/stop_all.sh - cat logs/openIM.log 2>/dev/null + sudo chmod +x ./scripts/stop_all.sh + sudo ./scripts/stop_all.sh + sudo cat logs/openIM.log 2>/dev/null shell: bash continue-on-error: true - name: Build all services run: | - chmod +x ./scripts/build_all_service.sh - ./scripts/build_all_service.sh - cat logs/openIM.log 2>/dev/null + sudo chmod +x ./scripts/build_all_service.sh + sudo ./scripts/build_all_service.sh + sudo cat logs/openIM.log 2>/dev/null shell: bash continue-on-error: true - name: Start all services run: | - chmod +x ./scripts/start_all.sh - ./scripts/start_all.sh - cat logs/openIM.log 2>/dev/null + sudo chmod +x ./scripts/start_all.sh + sudo ./scripts/start_all.sh + sudo cat logs/openIM.log 2>/dev/null continue-on-error: true shell: bash - name: Check all services run: | - chmod +x ./scripts/check_all.sh - ./scripts/check_all.sh - cat logs/openIM.log 2>/dev/null + sudo chmod +x ./scripts/check_all.sh + sudo ./scripts/check_all.sh + sudo cat logs/openIM.log 2>/dev/null shell: bash - name: Print openIM.log run: | - cat logs/* 2>/dev/null - cat logs/* 2>/dev/null >> "$GITHUB_OUTPUT" + sudo cat logs/* 2>/dev/null + sudo cat logs/* 2>/dev/null >> "$GITHUB_OUTPUT" shell: bash continue-on-error: true diff --git a/Dockerfile b/Dockerfile index 230b9d6d6..33c4651c9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,9 @@ # Build Stage -FROM golang as build +FROM golang:1.20 AS builder + +LABEL org.opencontainers.image.source=https://github.com/OpenIMSDK/Open-IM-Server +LABEL org.opencontainers.image.description="OpenIM Server image" +LABEL org.opencontainers.image.licenses="Apache 2.0" # Set go mod installation source and proxy ARG GO111MODULE=on @@ -24,9 +28,9 @@ RUN apk --no-cache add tzdata VOLUME ["/Open-IM-Server/logs", "/Open-IM-Server/config", "/Open-IM-Server/scripts", "/Open-IM-Server/db/sdk"] # Copy scripts and binary files to the production image -COPY --from=build /Open-IM-Server/scripts /Open-IM-Server/scripts -COPY --from=build /Open-IM-Server/_output/bin/platforms/linux/arm64 /Open-IM-Server/_output/bin/platforms/linux/arm64 +COPY --from=builder /Open-IM-Server/scripts /Open-IM-Server/scripts +COPY --from=builder /Open-IM-Server/_output/bin/platforms/linux/amd64 /Open-IM-Server/_output/bin/platforms/linux/amd64 WORKDIR /Open-IM-Server/scripts -CMD ["./docker_start_all.sh"] +CMD ["docker_start_all.sh"] \ No newline at end of file diff --git a/cmd/openim-api/main.go b/cmd/openim-api/main.go index 1cd09b652..dbc117edf 100644 --- a/cmd/openim-api/main.go +++ b/cmd/openim-api/main.go @@ -18,12 +18,12 @@ import ( "context" "fmt" "net" + "net/http" "os" "runtime" "strconv" "time" - "net/http" _ "net/http/pprof" "github.com/OpenIMSDK/Open-IM-Server/internal/api" diff --git a/docker-compose.yaml b/docker-compose.yaml index a658f2d8a..0b32d2d50 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -100,7 +100,7 @@ services: openim_server: - image: ghcr.io/openimsdk/openim-server:v3.0.0-rc.2 + image: ghcr.io/openimsdk/openim-server:v3.0.1 container_name: openim-server volumes: - ./logs:/Open-IM-Server/logs diff --git a/internal/api/group.go b/internal/api/group.go index 519c70004..00cdebeab 100644 --- a/internal/api/group.go +++ b/internal/api/group.go @@ -131,6 +131,7 @@ func (o *GroupApi) GetSuperGroupsInfo(c *gin.Context) { func (o *GroupApi) GroupCreateCount(c *gin.Context) { a2r.Call(group.GroupClient.GroupCreateCount, o.Client, c) } + func (o *GroupApi) GetGroups(c *gin.Context) { a2r.Call(group.GroupClient.GetGroups, o.Client, c) } diff --git a/internal/api/route.go b/internal/api/route.go index 421b33b47..2dfb9f6c4 100644 --- a/internal/api/route.go +++ b/internal/api/route.go @@ -72,7 +72,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive userRouterGroup.POST("/get_users_online_status", ParseToken, u.GetUsersOnlineStatus) userRouterGroup.POST("/get_users_online_token_detail", ParseToken, u.GetUsersOnlineTokenDetail) } - //friend routing group + // friend routing group friendRouterGroup := r.Group("/friend", ParseToken) { f := NewFriendApi(*friendRpc) @@ -120,7 +120,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive superGroupRouterGroup.POST("/get_joined_group_list", g.GetJoinedSuperGroupList) superGroupRouterGroup.POST("/get_groups_info", g.GetSuperGroupsInfo) } - //certificate + // certificate authRouterGroup := r.Group("/auth") { a := NewAuthApi(*authRpc) @@ -128,7 +128,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive authRouterGroup.POST("/parse_token", a.ParseToken) authRouterGroup.POST("/force_logout", ParseToken, a.ForceLogout) } - //Third service + // Third service thirdGroup := r.Group("/third", ParseToken) { t := NewThirdApi(*thirdRpc) @@ -145,7 +145,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive objectGroup.POST("/access_url", t.AccessURL) objectGroup.GET("/*name", t.ObjectRedirect) } - //Message + // Message msgGroup := r.Group("/msg", ParseToken) { msgGroup.POST("/newest_seq", m.GetSeq) @@ -167,7 +167,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive msgGroup.POST("/batch_send_msg", m.BatchSendMsg) msgGroup.POST("/check_msg_is_send_success", m.CheckMsgIsSendSuccess) } - //Conversation + // Conversation conversationGroup := r.Group("/conversation", ParseToken) { c := NewConversationApi(*conversationRpc) diff --git a/internal/api/user.go b/internal/api/user.go index 4218e6c70..28cb74509 100644 --- a/internal/api/user.go +++ b/internal/api/user.go @@ -78,7 +78,7 @@ func (u *UserApi) GetUsersOnlineStatus(c *gin.Context) { var respResult []*msggateway.GetUsersOnlineStatusResp_SuccessResult flag := false - //Online push message + // Online push message for _, v := range conns { msgClient := msggateway.NewMsgGatewayClient(v) reply, err := msgClient.GetUsersOnlineStatus(c, &req) @@ -131,7 +131,7 @@ func (u *UserApi) GetUsersOnlineTokenDetail(c *gin.Context) { apiresp.GinError(c, err) return } - //Online push message + // Online push message for _, v := range conns { msgClient := msggateway.NewMsgGatewayClient(v) reply, err := msgClient.GetUsersOnlineStatus(c, &req) @@ -160,7 +160,6 @@ func (u *UserApi) GetUsersOnlineTokenDetail(c *gin.Context) { } } } - } for p, tokens := range m { t := new(msggateway.SinglePlatformToken) @@ -176,5 +175,4 @@ func (u *UserApi) GetUsersOnlineTokenDetail(c *gin.Context) { } apiresp.GinSuccess(c, respResult) - } diff --git a/internal/msggateway/client.go b/internal/msggateway/client.go index 34f9cf47d..03e37fcc6 100644 --- a/internal/msggateway/client.go +++ b/internal/msggateway/client.go @@ -31,10 +31,12 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) -var ErrConnClosed = errors.New("conn has closed") -var ErrNotSupportMessageProtocol = errors.New("not support message protocol") -var ErrClientClosed = errors.New("client actively close the connection") -var ErrPanic = errors.New("panic error") +var ( + ErrConnClosed = errors.New("conn has closed") + ErrNotSupportMessageProtocol = errors.New("not support message protocol") + ErrClientClosed = errors.New("client actively close the connection") + ErrPanic = errors.New("panic error") +) const ( // MessageText is for UTF-8 encoded text messages like JSON. @@ -102,10 +104,12 @@ func (c *Client) ResetClient( c.closedErr = nil c.token = token } + func (c *Client) pongHandler(_ string) error { c.conn.SetReadDeadline(pongWait) return nil } + func (c *Client) readMessage() { defer func() { if r := recover(); r != nil { @@ -124,7 +128,7 @@ func (c *Client) readMessage() { return } log.ZDebug(c.ctx, "readMessage", "messageType", messageType) - if c.closed == true { //连接刚置位已经关闭,但是协程还没退出的场景 + if c.closed == true { // 连接刚置位已经关闭,但是协程还没退出的场景 c.closedErr = ErrConnClosed return } @@ -148,8 +152,8 @@ func (c *Client) readMessage() { default: } } - } + func (c *Client) handleMessage(message []byte) error { if c.IsCompress { var decompressErr error @@ -198,26 +202,26 @@ func (c *Client) handleMessage(message []byte) error { } c.replyMessage(ctx, &binaryReq, messageErr, resp) return nil - } + func (c *Client) setAppBackgroundStatus(ctx context.Context, req Req) ([]byte, error) { resp, isBackground, messageErr := c.longConnServer.SetUserDeviceBackground(ctx, req) if messageErr != nil { return nil, messageErr } c.IsBackground = isBackground - //todo callback + // todo callback return resp, nil - } + func (c *Client) close() { c.w.Lock() defer c.w.Unlock() c.closed = true c.conn.Close() c.longConnServer.UnRegister(c) - } + func (c *Client) replyMessage(ctx context.Context, binaryReq *Req, err error, resp []byte) { errResp := apiresp.ParseError(err) mReply := Resp{ @@ -234,6 +238,7 @@ func (c *Client) replyMessage(ctx context.Context, binaryReq *Req, err error, re log.ZWarn(ctx, "wireBinaryMsg replyMessage", err, "resp", mReply.String()) } } + func (c *Client) PushMessage(ctx context.Context, msgData *sdkws.MsgData) error { var msg sdkws.PushMessages conversationID := utils.GetConversationIDByMsg(msgData) @@ -296,5 +301,4 @@ func (c *Client) writePongMsg() error { } _ = c.conn.SetWriteDeadline(writeWait) return c.conn.WriteMessage(PongMessage, nil) - } diff --git a/internal/msggateway/compressor.go b/internal/msggateway/compressor.go index 97a9b1eff..99b827454 100644 --- a/internal/msggateway/compressor.go +++ b/internal/msggateway/compressor.go @@ -33,6 +33,7 @@ type GzipCompressor struct { func NewGzipCompressor() *GzipCompressor { return &GzipCompressor{compressProtocol: "gzip"} } + func (g *GzipCompressor) Compress(rawData []byte) ([]byte, error) { gzipBuffer := bytes.Buffer{} gz := gzip.NewWriter(&gzipBuffer) diff --git a/internal/msggateway/constant.go b/internal/msggateway/constant.go index 043c9d688..fe5f09bdc 100644 --- a/internal/msggateway/constant.go +++ b/internal/msggateway/constant.go @@ -27,11 +27,13 @@ const ( GzipCompressionProtocol = "gzip" BackgroundStatus = "isBackground" ) + const ( WebSocket = iota + 1 ) + const ( - //Websocket Protocol + // Websocket Protocol. WSGetNewestSeq = 1001 WSPullMsgBySeqList = 1002 WSSendMsg = 1003 diff --git a/internal/msggateway/context.go b/internal/msggateway/context.go index e5ccc00f4..e1d066467 100644 --- a/internal/msggateway/context.go +++ b/internal/msggateway/context.go @@ -71,9 +71,11 @@ func newContext(respWriter http.ResponseWriter, req *http.Request) *UserConnCont ConnID: utils.Md5(req.RemoteAddr + "_" + strconv.Itoa(int(utils.GetCurrentTimestampByMill()))), } } + func (c *UserConnContext) GetRemoteAddr() string { return c.RemoteAddr } + func (c *UserConnContext) Query(key string) (string, bool) { var value string if value = c.Req.URL.Query().Get(key); value == "" { @@ -81,6 +83,7 @@ func (c *UserConnContext) Query(key string) (string, bool) { } return value, true } + func (c *UserConnContext) GetHeader(key string) (string, bool) { var value string if value = c.Req.Header.Get(key); value == "" { @@ -88,27 +91,35 @@ func (c *UserConnContext) GetHeader(key string) (string, bool) { } return value, true } + func (c *UserConnContext) SetHeader(key, value string) { c.RespWriter.Header().Set(key, value) } + func (c *UserConnContext) ErrReturn(error string, code int) { http.Error(c.RespWriter, error, code) } + func (c *UserConnContext) GetConnID() string { return c.ConnID } + func (c *UserConnContext) GetUserID() string { return c.Req.URL.Query().Get(WsUserID) } + func (c *UserConnContext) GetPlatformID() string { return c.Req.URL.Query().Get(PlatformID) } + func (c *UserConnContext) GetOperationID() string { return c.Req.URL.Query().Get(OperationID) } + func (c *UserConnContext) GetToken() string { return c.Req.URL.Query().Get(Token) } + func (c *UserConnContext) GetBackground() bool { b, err := strconv.ParseBool(c.Req.URL.Query().Get(BackgroundStatus)) if err != nil { diff --git a/internal/msggateway/encoder.go b/internal/msggateway/encoder.go index a34a66e66..41ab02d0c 100644 --- a/internal/msggateway/encoder.go +++ b/internal/msggateway/encoder.go @@ -26,12 +26,12 @@ type Encoder interface { Decode(encodeData []byte, decodeData interface{}) error } -type GobEncoder struct { -} +type GobEncoder struct{} func NewGobEncoder() *GobEncoder { return &GobEncoder{} } + func (g *GobEncoder) Encode(data interface{}) ([]byte, error) { buff := bytes.Buffer{} enc := gob.NewEncoder(&buff) @@ -41,6 +41,7 @@ func (g *GobEncoder) Encode(data interface{}) ([]byte, error) { } return buff.Bytes(), nil } + func (g *GobEncoder) Decode(encodeData []byte, decodeData interface{}) error { buff := bytes.NewBuffer(encodeData) dec := gob.NewDecoder(buff) diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index ea7b9fd8d..81aade1cb 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -197,6 +197,6 @@ func (s *Server) MultiTerminalLoginCheck( ctx context.Context, req *msggateway.MultiTerminalLoginCheckReq, ) (*msggateway.MultiTerminalLoginCheckResp, error) { - //TODO implement me + // TODO implement me panic("implement me") } diff --git a/internal/msggateway/long_conn.go b/internal/msggateway/long_conn.go index 309ec2d8b..59e4d5b45 100644 --- a/internal/msggateway/long_conn.go +++ b/internal/msggateway/long_conn.go @@ -22,14 +22,14 @@ import ( ) type LongConn interface { - //Close this connection + // Close this connection Close() error // WriteMessage Write message to connection,messageType means data type,can be set binary(2) and text(1). WriteMessage(messageType int, message []byte) error // ReadMessage Read message from connection. ReadMessage() (int, []byte, error) // SetReadDeadline sets the read deadline on the underlying network connection, - //after a read has timed out, will return an error. + // after a read has timed out, will return an error. SetReadDeadline(timeout time.Duration) error // SetWriteDeadline sets to write deadline when send message,when read has timed out,will return error. SetWriteDeadline(timeout time.Duration) error @@ -58,6 +58,7 @@ func newGWebSocket(protocolType int, handshakeTimeout time.Duration) *GWebSocket func (d *GWebSocket) Close() error { return d.conn.Close() } + func (d *GWebSocket) GenerateLongConn(w http.ResponseWriter, r *http.Request) error { upgrader := &websocket.Upgrader{ HandshakeTimeout: d.handshakeTimeout, @@ -69,10 +70,10 @@ func (d *GWebSocket) GenerateLongConn(w http.ResponseWriter, r *http.Request) er } d.conn = conn return nil - } + func (d *GWebSocket) WriteMessage(messageType int, message []byte) error { - //d.setSendConn(d.conn) + // d.setSendConn(d.conn) return d.conn.WriteMessage(messageType, message) } @@ -83,6 +84,7 @@ func (d *GWebSocket) WriteMessage(messageType int, message []byte) error { func (d *GWebSocket) ReadMessage() (int, []byte, error) { return d.conn.ReadMessage() } + func (d *GWebSocket) SetReadDeadline(timeout time.Duration) error { return d.conn.SetReadDeadline(time.Now().Add(timeout)) } @@ -97,7 +99,6 @@ func (d *GWebSocket) Dial(urlStr string, requestHeader http.Header) (*http.Respo d.conn = conn } return httpResp, err - } func (d *GWebSocket) IsNil() bool { @@ -110,9 +111,11 @@ func (d *GWebSocket) IsNil() bool { func (d *GWebSocket) SetConnNil() { d.conn = nil } + func (d *GWebSocket) SetReadLimit(limit int64) { d.conn.SetReadLimit(limit) } + func (d *GWebSocket) SetPongHandler(handler PongHandler) { d.conn.SetPongHandler(handler) } diff --git a/internal/msggateway/message_handler.go b/internal/msggateway/message_handler.go index 874101a05..bc650aae6 100644 --- a/internal/msggateway/message_handler.go +++ b/internal/msggateway/message_handler.go @@ -75,8 +75,10 @@ type GrpcHandler struct { func NewGrpcHandler(validate *validator.Validate, client discoveryregistry.SvcDiscoveryRegistry) *GrpcHandler { msgRpcClient := rpcclient.NewMessageRpcClient(client) pushRpcClient := rpcclient.NewPushRpcClient(client) - return &GrpcHandler{msgRpcClient: &msgRpcClient, - pushClient: &pushRpcClient, validate: validate} + return &GrpcHandler{ + msgRpcClient: &msgRpcClient, + pushClient: &pushRpcClient, validate: validate, + } } func (g GrpcHandler) GetSeq(context context.Context, data Req) ([]byte, error) { @@ -164,6 +166,7 @@ func (g GrpcHandler) UserLogout(context context.Context, data Req) ([]byte, erro } return c, nil } + func (g GrpcHandler) SetUserDeviceBackground(_ context.Context, data Req) ([]byte, bool, error) { req := sdkws.SetAppBackgroundStatusReq{} if err := proto.Unmarshal(data.Data, &req); err != nil { diff --git a/internal/msggateway/n_ws_server.go b/internal/msggateway/n_ws_server.go index c204dc115..2988e2c08 100644 --- a/internal/msggateway/n_ws_server.go +++ b/internal/msggateway/n_ws_server.go @@ -86,6 +86,7 @@ type kickHandler struct { func (ws *WsServer) SetDiscoveryRegistry(client discoveryregistry.SvcDiscoveryRegistry) { ws.MessageHandler = NewGrpcHandler(ws.validate, client) } + func (ws *WsServer) SetCacheHandler(cache cache.MsgModel) { ws.cache = cache } @@ -113,7 +114,6 @@ func NewWsServer(opts ...Option) (*WsServer, error) { } if config.port < 1024 { return nil, errors.New("port not allow to listen") - } v := validator.New() return &WsServer{ @@ -134,6 +134,7 @@ func NewWsServer(opts ...Option) (*WsServer, error) { Encoder: NewGobEncoder(), }, nil } + func (ws *WsServer) Run() error { var client *Client go func() { @@ -150,7 +151,7 @@ func (ws *WsServer) Run() error { }() http.HandleFunc("/", ws.wsHandler) // http.HandleFunc("/metrics", func(w http.ResponseWriter, r *http.Request) {}) - return http.ListenAndServe(":"+utils.IntToString(ws.port), nil) //Start listening + return http.ListenAndServe(":"+utils.IntToString(ws.port), nil) // Start listening } func (ws *WsServer) registerClient(client *Client) { @@ -165,7 +166,6 @@ func (ws *WsServer) registerClient(client *Client) { log.ZDebug(client.ctx, "user not exist", "userID", client.UserID, "platformID", client.PlatformID) atomic.AddInt64(&ws.onlineUserNum, 1) atomic.AddInt64(&ws.onlineUserConnNum, 1) - } else { i := &kickHandler{ clientOK: clientOK, @@ -176,7 +176,7 @@ func (ws *WsServer) registerClient(client *Client) { log.ZDebug(client.ctx, "user exist", "userID", client.UserID, "platformID", client.PlatformID) if clientOK { ws.clients.Set(client.UserID, client) - //已经有同平台的连接存在 + // 已经有同平台的连接存在 log.ZInfo(client.ctx, "repeat login", "userID", client.UserID, "platformID", client.PlatformID, "old remote addr", getRemoteAdders(oldClients)) atomic.AddInt64(&ws.onlineUserConnNum, 1) } else { @@ -194,6 +194,7 @@ func (ws *WsServer) registerClient(client *Client) { ws.onlineUserConnNum, ) } + func getRemoteAdders(client []*Client) string { var ret string for i, c := range client { @@ -284,8 +285,8 @@ func (ws *WsServer) multiTerminalLoginChecker(info *kickHandler) { } } } - } + func (ws *WsServer) unregisterClient(client *Client) { defer ws.clientPool.Put(client) isDeleteUser := ws.clients.delete(client.UserID, client.ctx.GetRemoteAddr()) diff --git a/internal/msggateway/options.go b/internal/msggateway/options.go index cee415f99..24cbbe43f 100644 --- a/internal/msggateway/options.go +++ b/internal/msggateway/options.go @@ -16,33 +16,38 @@ package msggateway import "time" -type Option func(opt *configs) -type configs struct { - //长连接监听端口 - port int - //长连接允许最大链接数 - maxConnNum int64 - //连接握手超时时间 - handshakeTimeout time.Duration - //允许消息最大长度 - messageMaxMsgLength int -} +type ( + Option func(opt *configs) + configs struct { + // 长连接监听端口 + port int + // 长连接允许最大链接数 + maxConnNum int64 + // 连接握手超时时间 + handshakeTimeout time.Duration + // 允许消息最大长度 + messageMaxMsgLength int + } +) func WithPort(port int) Option { return func(opt *configs) { opt.port = port } } + func WithMaxConnNum(num int64) Option { return func(opt *configs) { opt.maxConnNum = num } } + func WithHandshakeTimeout(t time.Duration) Option { return func(opt *configs) { opt.handshakeTimeout = t } } + func WithMessageMaxMsgLength(length int) Option { return func(opt *configs) { opt.messageMaxMsgLength = length diff --git a/internal/msggateway/user_map.go b/internal/msggateway/user_map.go index 9e6757731..7e62557b2 100644 --- a/internal/msggateway/user_map.go +++ b/internal/msggateway/user_map.go @@ -29,6 +29,7 @@ type UserMap struct { func newUserMap() *UserMap { return &UserMap{} } + func (u *UserMap) GetAll(key string) ([]*Client, bool) { allClients, ok := u.m.Load(key) if ok { @@ -36,6 +37,7 @@ func (u *UserMap) GetAll(key string) ([]*Client, bool) { } return nil, ok } + func (u *UserMap) Get(key string, platformID int) ([]*Client, bool, bool) { allClients, userExisted := u.m.Load(key) if userExisted { @@ -47,12 +49,12 @@ func (u *UserMap) Get(key string, platformID int) ([]*Client, bool, bool) { } if len(clients) > 0 { return clients, userExisted, true - } return clients, userExisted, false } return nil, userExisted, false } + func (u *UserMap) Set(key string, v *Client) { allClients, existed := u.m.Load(key) if existed { @@ -67,6 +69,7 @@ func (u *UserMap) Set(key string, v *Client) { u.m.Store(key, clients) } } + func (u *UserMap) delete(key string, connRemoteAddr string) (isDeleteUser bool) { allClients, existed := u.m.Load(key) if existed { @@ -87,6 +90,7 @@ func (u *UserMap) delete(key string, connRemoteAddr string) (isDeleteUser bool) } return existed } + func (u *UserMap) deleteClients(key string, clients []*Client) (isDeleteUser bool) { m := utils.SliceToMapAny(clients, func(c *Client) (string, struct{}) { return c.ctx.GetRemoteAddr(), struct{}{} @@ -110,6 +114,7 @@ func (u *UserMap) deleteClients(key string, clients []*Client) (isDeleteUser boo } return existed } + func (u *UserMap) DeleteAll(key string) { u.m.Delete(key) } diff --git a/internal/msgtransfer/init.go b/internal/msgtransfer/init.go index 0a52dea96..13b22b334 100644 --- a/internal/msgtransfer/init.go +++ b/internal/msgtransfer/init.go @@ -19,6 +19,9 @@ import ( "sync" "time" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" @@ -30,8 +33,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" openKeeper "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry/zookeeper" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" ) type MsgTransfer struct { @@ -84,9 +85,12 @@ func StartTransfer(prometheusPort int) error { func NewMsgTransfer(chatLogDatabase controller.ChatLogDatabase, msgDatabase controller.CommonMsgDatabase, - conversationRpcClient *rpcclient.ConversationRpcClient, groupRpcClient *rpcclient.GroupRpcClient) *MsgTransfer { - return &MsgTransfer{persistentCH: NewPersistentConsumerHandler(chatLogDatabase), historyCH: NewOnlineHistoryRedisConsumerHandler(msgDatabase, conversationRpcClient, groupRpcClient), - historyMongoCH: NewOnlineHistoryMongoConsumerHandler(msgDatabase)} + conversationRpcClient *rpcclient.ConversationRpcClient, groupRpcClient *rpcclient.GroupRpcClient, +) *MsgTransfer { + return &MsgTransfer{ + persistentCH: NewPersistentConsumerHandler(chatLogDatabase), historyCH: NewOnlineHistoryRedisConsumerHandler(msgDatabase, conversationRpcClient, groupRpcClient), + historyMongoCH: NewOnlineHistoryMongoConsumerHandler(msgDatabase), + } } func (m *MsgTransfer) initPrometheus() { diff --git a/internal/msgtransfer/online_history_msg_handler.go b/internal/msgtransfer/online_history_msg_handler.go index 574288de0..2a6f69f1a 100644 --- a/internal/msgtransfer/online_history_msg_handler.go +++ b/internal/msgtransfer/online_history_msg_handler.go @@ -38,10 +38,12 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) -const ConsumerMsgs = 3 -const SourceMessages = 4 -const MongoMessages = 5 -const ChannelNum = 100 +const ( + ConsumerMsgs = 3 + SourceMessages = 4 + MongoMessages = 5 + ChannelNum = 100 +) type MsgChannelValue struct { uniqueKey string @@ -85,7 +87,7 @@ func NewOnlineHistoryRedisConsumerHandler( ) *OnlineHistoryRedisConsumerHandler { var och OnlineHistoryRedisConsumerHandler och.msgDatabase = database - och.msgDistributionCh = make(chan Cmd2Value) //no buffer channel + och.msgDistributionCh = make(chan Cmd2Value) // no buffer channel go och.MessagesDistributionHandle() for i := 0; i < ChannelNum; i++ { och.chArrays[i] = make(chan Cmd2Value, 50) @@ -93,8 +95,10 @@ func NewOnlineHistoryRedisConsumerHandler( } och.conversationRpcClient = conversationRpcClient och.groupRpcClient = groupRpcClient - och.historyConsumerGroup = kafka.NewMConsumerGroup(&kafka.MConsumerGroupConfig{KafkaVersion: sarama.V2_0_0_0, - OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false}, []string{config.Config.Kafka.LatestMsgToRedis.Topic}, + och.historyConsumerGroup = kafka.NewMConsumerGroup(&kafka.MConsumerGroupConfig{ + KafkaVersion: sarama.V2_0_0_0, + OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false, + }, []string{config.Config.Kafka.LatestMsgToRedis.Topic}, config.Config.Kafka.Addr, config.Config.Kafka.ConsumerGroupID.MsgToRedis) // statistics.NewStatistics(&och.singleMsgSuccessCount, config.Config.ModuleName.MsgTransferName, fmt.Sprintf("%d // second singleMsgCount insert to mongo", constant.StatisticsTimeInterval), constant.StatisticsTimeInterval) @@ -163,7 +167,7 @@ func (och *OnlineHistoryRedisConsumerHandler) Run(channelID int) { } } -// 获取消息/通知 存储的消息列表, 不存储并且推送的消息列表, +// 获取消息/通知 存储的消息列表, 不存储并且推送的消息列表,. func (och *OnlineHistoryRedisConsumerHandler) getPushStorageMsgList( totalMsgs []*ContextMsg, ) (storageMsgList, notStorageMsgList, storageNotificatoinList, notStorageNotificationList, modifyMsgList []*sdkws.MsgData) { @@ -312,7 +316,7 @@ func (och *OnlineHistoryRedisConsumerHandler) MessagesDistributionHandle() { triggerChannelValue := cmd.Value.(TriggerChannelValue) ctx := triggerChannelValue.ctx consumerMessages := triggerChannelValue.cMsgList - //Aggregation map[userid]message list + // Aggregation map[userid]message list log.ZDebug(ctx, "batch messages come to distribution center", "length", len(consumerMessages)) for i := 0; i < len(consumerMessages); i++ { ctxMsg := &ContextMsg{} @@ -378,13 +382,13 @@ func (och *OnlineHistoryRedisConsumerHandler) MessagesDistributionHandle() { } } } + func withAggregationCtx(ctx context.Context, values []*ContextMsg) context.Context { var allMessageOperationID string for i, v := range values { if opid := mcontext.GetOperationID(v.ctx); opid != "" { if i == 0 { allMessageOperationID += opid - } else { allMessageOperationID += "$" + opid } @@ -431,13 +435,15 @@ func (och *OnlineHistoryRedisConsumerHandler) ConsumeClaim( ctx := mcontext.WithTriggerIDContext(context.Background(), utils.OperationIDGenerator()) log.ZDebug(ctx, "timer trigger msg consumer start", "length", len(ccMsg)) for i := 0; i < len(ccMsg)/split; i++ { - //log.Debug() + // log.Debug() och.msgDistributionCh <- Cmd2Value{Cmd: ConsumerMsgs, Value: TriggerChannelValue{ - ctx: ctx, cMsgList: ccMsg[i*split : (i+1)*split]}} + ctx: ctx, cMsgList: ccMsg[i*split : (i+1)*split], + }} } if (len(ccMsg) % split) > 0 { och.msgDistributionCh <- Cmd2Value{Cmd: ConsumerMsgs, Value: TriggerChannelValue{ - ctx: ctx, cMsgList: ccMsg[split*(len(ccMsg)/split):]}} + ctx: ctx, cMsgList: ccMsg[split*(len(ccMsg)/split):], + }} } log.ZDebug(ctx, "timer trigger msg consumer end", "length", len(ccMsg)) } diff --git a/internal/msgtransfer/online_msg_to_mongo_handler.go b/internal/msgtransfer/online_msg_to_mongo_handler.go index a7bfa3c8f..f2f14f0ed 100644 --- a/internal/msgtransfer/online_msg_to_mongo_handler.go +++ b/internal/msgtransfer/online_msg_to_mongo_handler.go @@ -34,8 +34,10 @@ type OnlineHistoryMongoConsumerHandler struct { func NewOnlineHistoryMongoConsumerHandler(database controller.CommonMsgDatabase) *OnlineHistoryMongoConsumerHandler { mc := &OnlineHistoryMongoConsumerHandler{ - historyConsumerGroup: kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{KafkaVersion: sarama.V2_0_0_0, - OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false}, []string{config.Config.Kafka.MsgToMongo.Topic}, + historyConsumerGroup: kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{ + KafkaVersion: sarama.V2_0_0_0, + OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false, + }, []string{config.Config.Kafka.MsgToMongo.Topic}, config.Config.Kafka.Addr, config.Config.Kafka.ConsumerGroupID.MsgToMongo), msgDatabase: database, } diff --git a/internal/msgtransfer/persistent_msg_handler.go b/internal/msgtransfer/persistent_msg_handler.go index 9ee0f5393..debc4905f 100644 --- a/internal/msgtransfer/persistent_msg_handler.go +++ b/internal/msgtransfer/persistent_msg_handler.go @@ -36,8 +36,10 @@ type PersistentConsumerHandler struct { func NewPersistentConsumerHandler(database controller.ChatLogDatabase) *PersistentConsumerHandler { return &PersistentConsumerHandler{ - persistentConsumerGroup: kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{KafkaVersion: sarama.V2_0_0_0, - OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false}, []string{config.Config.Kafka.LatestMsgToRedis.Topic}, + persistentConsumerGroup: kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{ + KafkaVersion: sarama.V2_0_0_0, + OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false, + }, []string{config.Config.Kafka.LatestMsgToRedis.Topic}, config.Config.Kafka.Addr, config.Config.Kafka.ConsumerGroupID.MsgToMySql), chatLogDatabase: database, } @@ -59,9 +61,9 @@ func (pc *PersistentConsumerHandler) handleChatWs2Mysql( } return log.ZDebug(ctx, "handleChatWs2Mysql", "msg", msgFromMQ.MsgData) - //Control whether to store history messages (mysql) + // Control whether to store history messages (mysql) isPersist := utils.GetSwitchFromOptions(msgFromMQ.MsgData.Options, constant.IsPersistent) - //Only process receiver data + // Only process receiver data if isPersist { switch msgFromMQ.MsgData.SessionType { case constant.SingleChatType, constant.NotificationChatType: diff --git a/internal/push/offlinepush/fcm/push.go b/internal/push/offlinepush/fcm/push.go index 8b880ae1f..a5294961d 100644 --- a/internal/push/offlinepush/fcm/push.go +++ b/internal/push/offlinepush/fcm/push.go @@ -95,7 +95,7 @@ func (f *Fcm) Push(ctx context.Context, userIDs []string, title, content string, if err == nil { apns.Payload.Aps.Badge = &unreadCountSum } else { - //log.Error(operationID, "IncrUserBadgeUnreadCountSum redis err", err.Error(), uid) + // log.Error(operationID, "IncrUserBadgeUnreadCountSum redis err", err.Error(), uid) Fail++ continue } @@ -107,7 +107,7 @@ func (f *Fcm) Push(ctx context.Context, userIDs []string, title, content string, zero := 1 apns.Payload.Aps.Badge = &zero } else { - //log.Error(operationID, "GetUserBadgeUnreadCountSum redis err", err.Error(), uid) + // log.Error(operationID, "GetUserBadgeUnreadCountSum redis err", err.Error(), uid) Fail++ continue } @@ -127,7 +127,7 @@ func (f *Fcm) Push(ctx context.Context, userIDs []string, title, content string, response, err := f.fcmMsgCli.SendAll(ctx, messages) if err != nil { Fail = Fail + messageCount - //log.Info(operationID, "some token push err", err.Error(), messageCount) + // log.Info(operationID, "some token push err", err.Error(), messageCount) } else { Success = Success + response.SuccessCount Fail = Fail + response.FailureCount diff --git a/internal/push/offlinepush/getui/body.go b/internal/push/offlinepush/getui/body.go index bd0f7b07f..915c6f603 100644 --- a/internal/push/offlinepush/getui/body.go +++ b/internal/push/offlinepush/getui/body.go @@ -145,7 +145,7 @@ func newPushReq(title, content string) PushReq { } func newBatchPushReq(userIDs []string, taskID string) PushReq { - var IsAsync = true + IsAsync := true return PushReq{Audience: &Audience{Alias: userIDs}, IsAsync: &IsAsync, TaskID: &taskID} } diff --git a/internal/push/offlinepush/getui/push.go b/internal/push/offlinepush/getui/push.go index 2681aede6..ada5ac8b6 100644 --- a/internal/push/offlinepush/getui/push.go +++ b/internal/push/offlinepush/getui/push.go @@ -15,17 +15,16 @@ package getui import ( - "sync" - - "github.com/go-redis/redis" - "context" "crypto/sha256" "encoding/hex" "errors" "strconv" + "sync" "time" + "github.com/go-redis/redis" + "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" @@ -49,7 +48,7 @@ const ( taskURL = "/push/list/message" batchPushURL = "/push/list/alias" - // codes + // codes. tokenExpireCode = 10001 tokenExpireTime = 60 * 60 * 23 taskIDTTL = 1000 * 60 * 60 * 24 @@ -142,7 +141,7 @@ func (g *Client) GetTaskID(ctx context.Context, token string, pushReq PushReq) ( return respTask.TaskID, nil } -// max num is 999 +// max num is 999. func (g *Client) batchPush(ctx context.Context, token string, userIDs []string, pushReq PushReq) error { taskID, err := g.GetTaskID(ctx, token, pushReq) if err != nil { diff --git a/internal/push/offlinepush/jpush/body/platform.go b/internal/push/offlinepush/jpush/body/platform.go index eae782c63..a4bc1526c 100644 --- a/internal/push/offlinepush/jpush/body/platform.go +++ b/internal/push/offlinepush/jpush/body/platform.go @@ -66,6 +66,7 @@ func (p *Platform) Set(os string) error { return nil } + func (p *Platform) SetPlatform(platform string) error { switch platform { case constant.AndroidPlatformStr: @@ -75,8 +76,8 @@ func (p *Platform) SetPlatform(platform string) error { default: return errors.New("platform err") } - } + func (p *Platform) SetIOS() error { return p.Set(IOS) } diff --git a/internal/push/offlinepush/jpush/body/pushobj.go b/internal/push/offlinepush/jpush/body/pushobj.go index 950f93777..c8c112f69 100644 --- a/internal/push/offlinepush/jpush/body/pushobj.go +++ b/internal/push/offlinepush/jpush/body/pushobj.go @@ -37,6 +37,7 @@ func (p *PushObj) SetNotification(no *Notification) { func (p *PushObj) SetMessage(m *Message) { p.Message = m } + func (p *PushObj) SetOptions(o *Options) { p.Options = o } diff --git a/internal/push/push_handler.go b/internal/push/push_handler.go index 86db1c762..d8c04ccb0 100644 --- a/internal/push/push_handler.go +++ b/internal/push/push_handler.go @@ -37,8 +37,10 @@ type ConsumerHandler struct { func NewConsumerHandler(pusher *Pusher) *ConsumerHandler { var consumerHandler ConsumerHandler consumerHandler.pusher = pusher - consumerHandler.pushConsumerGroup = kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{KafkaVersion: sarama.V2_0_0_0, - OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false}, []string{config.Config.Kafka.MsgToPush.Topic}, config.Config.Kafka.Addr, + consumerHandler.pushConsumerGroup = kfk.NewMConsumerGroup(&kfk.MConsumerGroupConfig{ + KafkaVersion: sarama.V2_0_0_0, + OffsetsInitial: sarama.OffsetNewest, IsReturnErr: false, + }, []string{config.Config.Kafka.MsgToPush.Topic}, config.Config.Kafka.Addr, config.Config.Kafka.ConsumerGroupID.MsgToPush) return &consumerHandler } @@ -76,7 +78,8 @@ func (c *ConsumerHandler) handleMs2PsChat(ctx context.Context, msg []byte) { func (ConsumerHandler) Setup(_ sarama.ConsumerGroupSession) error { return nil } func (ConsumerHandler) Cleanup(_ sarama.ConsumerGroupSession) error { return nil } func (c *ConsumerHandler) ConsumeClaim(sess sarama.ConsumerGroupSession, - claim sarama.ConsumerGroupClaim) error { + claim sarama.ConsumerGroupClaim, +) error { for msg := range claim.Messages() { ctx := c.pushConsumerGroup.GetContextFromMsg(msg) c.handleMs2PsChat(ctx, msg.Value) diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index f12b4b4c8..0583b453d 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -54,7 +54,8 @@ var errNoOfflinePusher = errors.New("no offlinePusher is configured") func NewPusher(discov discoveryregistry.SvcDiscoveryRegistry, offlinePusher offlinepush.OfflinePusher, database controller.PushDatabase, groupLocalCache *localcache.GroupLocalCache, conversationLocalCache *localcache.ConversationLocalCache, - conversationRpcClient *rpcclient.ConversationRpcClient, groupRpcClient *rpcclient.GroupRpcClient, msgRpcClient *rpcclient.MessageRpcClient) *Pusher { + conversationRpcClient *rpcclient.ConversationRpcClient, groupRpcClient *rpcclient.GroupRpcClient, msgRpcClient *rpcclient.MessageRpcClient, +) *Pusher { return &Pusher{ discov: discov, database: database, @@ -223,7 +224,7 @@ func (p *Pusher) Push2SuperGroup(ctx context.Context, groupID string, msg *sdkws } needOfflinePushUserIDs = utils.DifferenceString(notNotificationUserIDs, needOfflinePushUserIDs) } - //Use offline push messaging + // Use offline push messaging if len(needOfflinePushUserIDs) > 0 { var offlinePushUserIDs []string err = callbackOfflinePush(ctx, needOfflinePushUserIDs, msg, &offlinePushUserIDs) @@ -254,7 +255,7 @@ func (p *Pusher) GetConnsAndOnlinePush(ctx context.Context, msg *sdkws.MsgData, if err != nil { return nil, err } - //Online push message + // Online push message for _, v := range conns { msgClient := msggateway.NewMsgGatewayClient(v) reply, err := msgClient.SuperGroupOnlineBatchPushOneMsg(ctx, &msggateway.OnlineBatchPushOneMsgReq{MsgData: msg, PushToUserIDs: pushToUserIDs}) @@ -265,7 +266,6 @@ func (p *Pusher) GetConnsAndOnlinePush(ctx context.Context, msg *sdkws.MsgData, if reply != nil && reply.SinglePushResult != nil { wsResults = append(wsResults, reply.SinglePushResult...) } - } return wsResults, nil } diff --git a/internal/rpc/conversation/conversaion.go b/internal/rpc/conversation/conversaion.go index 5372d4220..f3745ace1 100644 --- a/internal/rpc/conversation/conversaion.go +++ b/internal/rpc/conversation/conversaion.go @@ -17,6 +17,8 @@ package conversation import ( "context" + "google.golang.org/grpc" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" @@ -31,7 +33,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "google.golang.org/grpc" ) type conversationServer struct { @@ -184,7 +185,7 @@ func (c *conversationServer) SetConversations(ctx context.Context, req *pbConver return &pbConversation.SetConversationsResp{}, nil } -// 获取超级大群开启免打扰的用户ID +// 获取超级大群开启免打扰的用户ID. func (c *conversationServer) GetRecvMsgNotNotifyUserIDs(ctx context.Context, req *pbConversation.GetRecvMsgNotNotifyUserIDsReq) (*pbConversation.GetRecvMsgNotNotifyUserIDsResp, error) { userIDs, err := c.conversationDatabase.FindRecvMsgNotNotifyUserIDs(ctx, req.GroupID) if err != nil { @@ -193,7 +194,7 @@ func (c *conversationServer) GetRecvMsgNotNotifyUserIDs(ctx context.Context, req return &pbConversation.GetRecvMsgNotNotifyUserIDsResp{UserIDs: userIDs}, nil } -// create conversation without notification for msg redis transfer +// create conversation without notification for msg redis transfer. func (c *conversationServer) CreateSingleChatConversations(ctx context.Context, req *pbConversation.CreateSingleChatConversationsReq) (*pbConversation.CreateSingleChatConversationsResp, error) { var conversation tableRelation.ConversationModel conversation.ConversationID = utils.GetConversationIDBySessionType(constant.SingleChatType, req.RecvID, req.SendID) @@ -247,7 +248,10 @@ func (c *conversationServer) GetUserConversationIDsHash(ctx context.Context, req return &pbConversation.GetUserConversationIDsHashResp{Hash: hash}, nil } -func (c *conversationServer) GetConversationsByConversationID(ctx context.Context, req *pbConversation.GetConversationsByConversationIDReq) (*pbConversation.GetConversationsByConversationIDResp, error) { +func (c *conversationServer) GetConversationsByConversationID( + ctx context.Context, + req *pbConversation.GetConversationsByConversationIDReq, +) (*pbConversation.GetConversationsByConversationIDResp, error) { conversations, err := c.conversationDatabase.GetConversationsByConversationID(ctx, req.ConversationIDs) if err != nil { return nil, err diff --git a/internal/rpc/friend/friend.go b/internal/rpc/friend/friend.go index 4c528d1d1..f511305a4 100644 --- a/internal/rpc/friend/friend.go +++ b/internal/rpc/friend/friend.go @@ -83,7 +83,7 @@ func Start(client registry.SvcDiscoveryRegistry, server *grpc.Server) error { return nil } -// ok +// ok. func (s *friendServer) ApplyToAddFriend( ctx context.Context, req *pbfriend.ApplyToAddFriendReq, @@ -116,7 +116,7 @@ func (s *friendServer) ApplyToAddFriend( return resp, nil } -// ok +// ok. func (s *friendServer) ImportFriends( ctx context.Context, req *pbfriend.ImportFriendReq, @@ -142,7 +142,7 @@ func (s *friendServer) ImportFriends( return &pbfriend.ImportFriendResp{}, nil } -// ok +// ok. func (s *friendServer) RespondFriendApply( ctx context.Context, req *pbfriend.RespondFriendApplyReq, @@ -178,7 +178,7 @@ func (s *friendServer) RespondFriendApply( return nil, errs.ErrArgs.Wrap("req.HandleResult != -1/1") } -// ok +// ok. func (s *friendServer) DeleteFriend( ctx context.Context, req *pbfriend.DeleteFriendReq, @@ -199,7 +199,7 @@ func (s *friendServer) DeleteFriend( return resp, nil } -// ok +// ok. func (s *friendServer) SetFriendRemark( ctx context.Context, req *pbfriend.SetFriendRemarkReq, @@ -220,7 +220,7 @@ func (s *friendServer) SetFriendRemark( return resp, nil } -// ok +// ok. func (s *friendServer) GetDesignatedFriends( ctx context.Context, req *pbfriend.GetDesignatedFriendsReq, @@ -240,7 +240,7 @@ func (s *friendServer) GetDesignatedFriends( return resp, nil } -// ok 获取接收到的好友申请(即别人主动申请的) +// ok 获取接收到的好友申请(即别人主动申请的). func (s *friendServer) GetPaginationFriendsApplyTo( ctx context.Context, req *pbfriend.GetPaginationFriendsApplyToReq, @@ -263,7 +263,7 @@ func (s *friendServer) GetPaginationFriendsApplyTo( return resp, nil } -// ok 获取主动发出去的好友申请列表 +// ok 获取主动发出去的好友申请列表. func (s *friendServer) GetPaginationFriendsApplyFrom( ctx context.Context, req *pbfriend.GetPaginationFriendsApplyFromReq, @@ -286,7 +286,7 @@ func (s *friendServer) GetPaginationFriendsApplyFrom( return resp, nil } -// ok +// ok. func (s *friendServer) IsFriend( ctx context.Context, req *pbfriend.IsFriendReq, @@ -300,7 +300,7 @@ func (s *friendServer) IsFriend( return resp, nil } -// ok +// ok. func (s *friendServer) GetPaginationFriends( ctx context.Context, req *pbfriend.GetPaginationFriendsReq, diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 161e8b8f8..b61170558 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -17,20 +17,23 @@ package group import ( "context" "fmt" - pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" "math/big" "math/rand" "strconv" "strings" "time" + pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" + "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "google.golang.org/grpc" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" @@ -45,7 +48,6 @@ import ( pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "google.golang.org/grpc" ) func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error { @@ -229,7 +231,7 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR } }() } else { - //s.Notification.GroupCreatedNotification(ctx, group, groupMembers, userMap) + // s.Notification.GroupCreatedNotification(ctx, group, groupMembers, userMap) tips := &sdkws.GroupCreatedTips{ Group: resp.GroupInfo, OperationTime: group.CreateTime.UnixMilli(), @@ -258,7 +260,7 @@ func (s *groupServer) GetJoinedGroupList(ctx context.Context, req *pbGroup.GetJo pageNumber = req.Pagination.PageNumber showNumber = req.Pagination.ShowNumber } - //total, members, err := s.GroupDatabase.PageGroupMember(ctx, nil, []string{req.FromUserID}, nil, pageNumber, showNumber) + // total, members, err := s.GroupDatabase.PageGroupMember(ctx, nil, []string{req.FromUserID}, nil, pageNumber, showNumber) total, members, err := s.GroupDatabase.PageGetJoinGroup(ctx, req.FromUserID, pageNumber, showNumber) if err != nil { return nil, err @@ -515,7 +517,7 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou Notification: group.Notification, Introduction: group.Introduction, FaceURL: group.FaceURL, - //OwnerUserID: owner[0].UserID, + // OwnerUserID: owner[0].UserID, CreateTime: group.CreateTime.UnixMilli(), MemberCount: num, Ex: group.Ex, @@ -900,7 +902,6 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf }() num++ s.Notification.GroupInfoSetAnnouncementNotification(ctx, &sdkws.GroupInfoSetAnnouncementTips{Group: tips.Group, OpUser: tips.OpUser}) - } switch len(data) - num { case 0: @@ -1104,7 +1105,7 @@ func (s *groupServer) DismissGroup(ctx context.Context, req *pbGroup.DismissGrou if err != nil { return nil, err } - //s.Notification.GroupDismissedNotification(ctx, req) + // s.Notification.GroupDismissedNotification(ctx, req) tips := &sdkws.GroupDismissedTips{ Group: s.groupDB2PB(group, owner.UserID, num), OpUser: &sdkws.GroupMemberFullInfo{}, diff --git a/internal/rpc/group/statistics.go b/internal/rpc/group/statistics.go index 9b83a5ead..d638cb6fd 100644 --- a/internal/rpc/group/statistics.go +++ b/internal/rpc/group/statistics.go @@ -16,9 +16,10 @@ package group import ( "context" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "time" ) func (s *groupServer) GroupCreateCount(ctx context.Context, req *group.GroupCreateCountReq) (*group.GroupCreateCountResp, error) { diff --git a/internal/rpc/msg/as_read.go b/internal/rpc/msg/as_read.go index 1176924d5..f83c2ad80 100644 --- a/internal/rpc/msg/as_read.go +++ b/internal/rpc/msg/as_read.go @@ -39,7 +39,7 @@ func (m *msgServer) GetConversationsHasReadAndMaxSeq(ctx context.Context, req *m if err != nil { return nil, err } - var conversationMaxSeqMap = make(map[string]int64) + conversationMaxSeqMap := make(map[string]int64) for _, conversation := range conversations { if conversation.MaxSeq != 0 { conversationMaxSeqMap[conversation.ConversationID] = conversation.MaxSeq diff --git a/internal/rpc/msg/lock.go b/internal/rpc/msg/lock.go index 50224c6a3..154a5b181 100644 --- a/internal/rpc/msg/lock.go +++ b/internal/rpc/msg/lock.go @@ -36,6 +36,7 @@ type LockerMessage struct { func NewLockerMessage(cache cache.MsgModel) *LockerMessage { return &LockerMessage{cache: cache} } + func (l *LockerMessage) LockMessageTypeKey(ctx context.Context, clientMsgID, typeKey string) (err error) { for i := 0; i < 3; i++ { err = l.cache.LockMessageTypeKey(ctx, clientMsgID, typeKey) @@ -47,8 +48,8 @@ func (l *LockerMessage) LockMessageTypeKey(ctx context.Context, clientMsgID, typ } } return err - } + func (l *LockerMessage) LockGlobalMessage(ctx context.Context, clientMsgID string) (err error) { for i := 0; i < 3; i++ { err = l.cache.LockMessageTypeKey(ctx, clientMsgID, GlOBALLOCK) @@ -60,11 +61,12 @@ func (l *LockerMessage) LockGlobalMessage(ctx context.Context, clientMsgID strin } } return err - } + func (l *LockerMessage) UnLockMessageTypeKey(ctx context.Context, clientMsgID string, typeKey string) error { return l.cache.UnLockMessageTypeKey(ctx, clientMsgID, typeKey) } + func (l *LockerMessage) UnLockGlobalMessage(ctx context.Context, clientMsgID string) error { return l.cache.UnLockMessageTypeKey(ctx, clientMsgID, GlOBALLOCK) } diff --git a/internal/rpc/msg/send.go b/internal/rpc/msg/send.go index 671450eee..66d8eb1ae 100644 --- a/internal/rpc/msg/send.go +++ b/internal/rpc/msg/send.go @@ -84,6 +84,7 @@ func (m *msgServer) sendMsgSuperGroupChat( resp.ClientMsgID = req.MsgData.ClientMsgID return resp, nil } + func (m *msgServer) setConversationAtInfo(nctx context.Context, msg *sdkws.MsgData) { log.ZDebug(nctx, "setConversationAtInfo", "msg", msg) ctx := mcontext.NewCtx("@@@" + mcontext.GetOperationID(nctx)) @@ -101,7 +102,7 @@ func (m *msgServer) setConversationAtInfo(nctx context.Context, msg *sdkws.MsgDa return } atUserID = utils.DifferenceString([]string{constant.AtAllString}, msg.AtUserIDList) - if len(atUserID) == 0 { //just @everyone + if len(atUserID) == 0 { // just @everyone conversation.GroupAtType = &wrapperspb.Int32Value{Value: constant.AtAll} } else { //@Everyone and @other people conversation.GroupAtType = &wrapperspb.Int32Value{Value: constant.AtAllAtMe} @@ -123,7 +124,6 @@ func (m *msgServer) setConversationAtInfo(nctx context.Context, msg *sdkws.MsgDa log.ZWarn(ctx, "SetConversations", err, msg.AtUserIDList, conversation) } } - } func (m *msgServer) sendMsgNotification( diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index cf50dfb9f..08cff738b 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -16,6 +16,7 @@ package msg import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" "google.golang.org/grpc" @@ -32,20 +33,22 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" ) -type MessageInterceptorChain []MessageInterceptorFunc -type msgServer struct { - RegisterCenter discoveryregistry.SvcDiscoveryRegistry - MsgDatabase controller.CommonMsgDatabase - Group *rpcclient.GroupRpcClient - User *rpcclient.UserRpcClient - Conversation *rpcclient.ConversationRpcClient - friend *rpcclient.FriendRpcClient - GroupLocalCache *localcache.GroupLocalCache - ConversationLocalCache *localcache.ConversationLocalCache - MessageLocker MessageLocker - Handlers MessageInterceptorChain - notificationSender *rpcclient.NotificationSender -} +type ( + MessageInterceptorChain []MessageInterceptorFunc + msgServer struct { + RegisterCenter discoveryregistry.SvcDiscoveryRegistry + MsgDatabase controller.CommonMsgDatabase + Group *rpcclient.GroupRpcClient + User *rpcclient.UserRpcClient + Conversation *rpcclient.ConversationRpcClient + friend *rpcclient.FriendRpcClient + GroupLocalCache *localcache.GroupLocalCache + ConversationLocalCache *localcache.ConversationLocalCache + MessageLocker MessageLocker + Handlers MessageInterceptorChain + notificationSender *rpcclient.NotificationSender + } +) func (m *msgServer) addInterceptorHandler(interceptorFunc ...MessageInterceptorFunc) { m.Handlers = append(m.Handlers, interceptorFunc...) diff --git a/internal/rpc/msg/statistics.go b/internal/rpc/msg/statistics.go index 309534507..c7d04f5ef 100644 --- a/internal/rpc/msg/statistics.go +++ b/internal/rpc/msg/statistics.go @@ -16,15 +16,24 @@ package msg import ( "context" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "time" ) func (m *msgServer) GetActiveUser(ctx context.Context, req *msg.GetActiveUserReq) (*msg.GetActiveUserResp, error) { - msgCount, userCount, users, dateCount, err := m.MsgDatabase.RangeUserSendCount(ctx, time.UnixMilli(req.Start), time.UnixMilli(req.End), req.Group, req.Ase, req.Pagination.PageNumber, req.Pagination.ShowNumber) + msgCount, userCount, users, dateCount, err := m.MsgDatabase.RangeUserSendCount( + ctx, + time.UnixMilli(req.Start), + time.UnixMilli(req.End), + req.Group, + req.Ase, + req.Pagination.PageNumber, + req.Pagination.ShowNumber, + ) if err != nil { return nil, err } @@ -59,7 +68,14 @@ func (m *msgServer) GetActiveUser(ctx context.Context, req *msg.GetActiveUserReq } func (m *msgServer) GetActiveGroup(ctx context.Context, req *msg.GetActiveGroupReq) (*msg.GetActiveGroupResp, error) { - msgCount, groupCount, groups, dateCount, err := m.MsgDatabase.RangeGroupSendCount(ctx, time.UnixMilli(req.Start), time.UnixMilli(req.End), req.Ase, req.Pagination.PageNumber, req.Pagination.ShowNumber) + msgCount, groupCount, groups, dateCount, err := m.MsgDatabase.RangeGroupSendCount( + ctx, + time.UnixMilli(req.Start), + time.UnixMilli(req.End), + req.Ase, + req.Pagination.PageNumber, + req.Pagination.ShowNumber, + ) if err != nil { return nil, err } diff --git a/internal/rpc/msg/sync_msg.go b/internal/rpc/msg/sync_msg.go index 01510ffef..59b23dda5 100644 --- a/internal/rpc/msg/sync_msg.go +++ b/internal/rpc/msg/sync_msg.go @@ -16,6 +16,7 @@ package msg import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" diff --git a/internal/rpc/msg/verify.go b/internal/rpc/msg/verify.go index be2945182..3a0276e28 100644 --- a/internal/rpc/msg/verify.go +++ b/internal/rpc/msg/verify.go @@ -28,9 +28,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) -var ( - ExcludeContentType = []int{constant.HasReadReceipt} -) +var ExcludeContentType = []int{constant.HasReadReceipt} type Validator interface { validate(pb *msg.SendMsgReq) (bool, int32, string) @@ -126,6 +124,7 @@ func (m *msgServer) messageVerification(ctx context.Context, data *msg.SendMsgRe return nil } } + func (m *msgServer) encapsulateMsgData(msg *sdkws.MsgData) { msg.ServerMsgID = GetMsgID(msg.SendID) msg.SendTime = utils.GetCurrentTimestampByMill() diff --git a/internal/rpc/third/s3.go b/internal/rpc/third/s3.go index 984fca94f..7873d4c54 100644 --- a/internal/rpc/third/s3.go +++ b/internal/rpc/third/s3.go @@ -16,6 +16,8 @@ package third import ( "context" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/cont" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" @@ -23,7 +25,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "time" ) func (t *thirdServer) PartLimit(ctx context.Context, req *third.PartLimitReq) (*third.PartLimitResp, error) { diff --git a/internal/rpc/third/third.go b/internal/rpc/third/third.go index 99ddcb342..e991be195 100644 --- a/internal/rpc/third/third.go +++ b/internal/rpc/third/third.go @@ -17,12 +17,15 @@ package third import ( "context" "fmt" + "net/url" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/cos" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/minio" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/oss" - "net/url" - "time" + + "google.golang.org/grpc" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" @@ -32,7 +35,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "google.golang.org/grpc" ) func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error { diff --git a/internal/rpc/third/tool.go b/internal/rpc/third/tool.go index 247f3e21d..e6b1f7e17 100644 --- a/internal/rpc/third/tool.go +++ b/internal/rpc/third/tool.go @@ -18,12 +18,13 @@ import ( "context" "errors" "fmt" + "strings" + "unicode/utf8" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" - "strings" - "unicode/utf8" ) func toPbMapArray(m map[string][]string) []*third.KeyValues { diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 3b0b67691..93783c8fd 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -38,8 +38,9 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "google.golang.org/grpc" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) type userServer struct { diff --git a/internal/tools/conversation.go b/internal/tools/conversation.go index 8efa77be8..837f7f90a 100644 --- a/internal/tools/conversation.go +++ b/internal/tools/conversation.go @@ -33,7 +33,18 @@ func (c *MsgTool) ConversationsDestructMsgs() { } log.ZDebug(context.Background(), "nums conversations need destruct", "nums", len(conversations)) for _, conversation := range conversations { - log.ZDebug(ctx, "UserMsgsDestruct", "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID, "msgDestructTime", conversation.MsgDestructTime, "lastMsgDestructTime", conversation.LatestMsgDestructTime) + log.ZDebug( + ctx, + "UserMsgsDestruct", + "conversationID", + conversation.ConversationID, + "ownerUserID", + conversation.OwnerUserID, + "msgDestructTime", + conversation.MsgDestructTime, + "lastMsgDestructTime", + conversation.LatestMsgDestructTime, + ) seqs, err := c.msgDatabase.UserMsgsDestruct(ctx, conversation.OwnerUserID, conversation.ConversationID, conversation.MsgDestructTime, conversation.LatestMsgDestructTime) if err != nil { log.ZError(ctx, "user msg destruct failed", err, "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID) diff --git a/internal/tools/msg.go b/internal/tools/msg.go index 40539c757..3cd9dcb3f 100644 --- a/internal/tools/msg.go +++ b/internal/tools/msg.go @@ -20,6 +20,10 @@ import ( "math" "time" + "github.com/redis/go-redis/v9" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" @@ -34,9 +38,6 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "github.com/redis/go-redis/v9" - "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" ) type MsgTool struct { @@ -48,7 +49,8 @@ type MsgTool struct { } func NewMsgTool(msgDatabase controller.CommonMsgDatabase, userDatabase controller.UserDatabase, - groupDatabase controller.GroupDatabase, conversationDatabase controller.ConversationDatabase, msgNotificationSender *notification.MsgNotificationSender) *MsgTool { + groupDatabase controller.GroupDatabase, conversationDatabase controller.ConversationDatabase, msgNotificationSender *notification.MsgNotificationSender, +) *MsgTool { return &MsgTool{ msgDatabase: msgDatabase, userDatabase: userDatabase, @@ -86,7 +88,11 @@ func InitMsgTool() (*MsgTool, error) { tx.NewGorm(db), ) groupDatabase := controller.InitGroupDatabase(db, rdb, mongo.GetDatabase()) - conversationDatabase := controller.NewConversationDatabase(relation.NewConversationGorm(db), cache.NewConversationRedis(rdb, cache.GetDefaultOpt(), relation.NewConversationGorm(db)), tx.NewGorm(db)) + conversationDatabase := controller.NewConversationDatabase( + relation.NewConversationGorm(db), + cache.NewConversationRedis(rdb, cache.GetDefaultOpt(), relation.NewConversationGorm(db)), + tx.NewGorm(db), + ) msgRpcClient := rpcclient.NewMessageRpcClient(discov) msgNotificationSender := notification.NewMsgNotificationSender(rpcclient.WithRpcClient(&msgRpcClient)) msgTool := NewMsgTool(msgDatabase, userDatabase, groupDatabase, conversationDatabase, msgNotificationSender) diff --git a/pkg/common/cmd/msg_gateway.go b/pkg/common/cmd/msg_gateway.go index f3547d649..6629b2d2c 100644 --- a/pkg/common/cmd/msg_gateway.go +++ b/pkg/common/cmd/msg_gateway.go @@ -16,7 +16,7 @@ package cmd import ( "github.com/OpenIMSDK/Open-IM-Server/internal/msggateway" - //"github.com/OpenIMSDK/Open-IM-Server/internal/msggateway" + //"github.com/OpenIMSDK/Open-IM-Server/internal/msggateway". "github.com/spf13/cobra" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go index ae5599891..f9b2b9783 100644 --- a/pkg/common/config/config.go +++ b/pkg/common/config/config.go @@ -31,7 +31,7 @@ type CallBackConfig struct { type NotificationConf struct { IsSendMsg bool `yaml:"isSendMsg"` - ReliabilityLevel int `yaml:"reliabilityLevel"` // 1 online 2 presistent + ReliabilityLevel int `yaml:"reliabilityLevel"` // 1 online 2 persistent UnreadCount bool `yaml:"unreadCount"` OfflinePush POfflinePush `yaml:"offlinePush"` } diff --git a/pkg/common/config/parse.go b/pkg/common/config/parse.go index 38f033ab4..60c4802a4 100644 --- a/pkg/common/config/parse.go +++ b/pkg/common/config/parse.go @@ -30,7 +30,7 @@ import ( var ( _, b, _, _ = runtime.Caller(0) - // Root folder of this project + // Root folder of this project. Root = filepath.Join(filepath.Dir(b), "../../..") ) diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index c9652984f..78a9435bf 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -45,7 +45,7 @@ const ( SignalMsg = 202 CustomNotification = 203 - //SysRelated. + // SysRelated. NotificationBegin = 1000 FriendApplicationApprovedNotification = 1201 // add_friend_response @@ -113,37 +113,37 @@ const ( NotificationEnd = 5000 - //status. + // status. MsgNormal = 1 MsgDeleted = 4 - //MsgFrom. + // MsgFrom. UserMsgType = 100 SysMsgType = 200 - //SessionType. + // SessionType. SingleChatType = 1 GroupChatType = 2 SuperGroupChatType = 3 NotificationChatType = 4 - //token. + // token. NormalToken = 0 InValidToken = 1 KickedToken = 2 ExpiredToken = 3 - //MultiTerminalLogin. + // MultiTerminalLogin. DefalutNotKick = 0 - //Full-end login, but the same end is mutually exclusive. + // Full-end login, but the same end is mutually exclusive. AllLoginButSameTermKick = 1 - //Only one of the endpoints can log in. + // Only one of the endpoints can log in. SingleTerminalLogin = 2 - //The web side can be online at the same time, and the other side can only log in at one end. + // The web side can be online at the same time, and the other side can only log in at one end. WebAndOther = 3 // The PC side is mutually exclusive, and the mobile side is mutually exclusive, but the web side can be online at // the same time. PcMobileAndWeb = 4 - //The PC terminal can be online at the same time,but other terminal only one of the endpoints can login. + // The PC terminal can be online at the same time,but other terminal only one of the endpoints can login. PCAndOther = 5 OnlineStatus = "online" @@ -151,12 +151,12 @@ const ( Registered = "registered" UnRegistered = "unregistered" - //MsgReceiveOpt. + // MsgReceiveOpt. ReceiveMessage = 0 NotReceiveMessage = 1 ReceiveNotNotifyMessage = 2 - //OptionsKey. + // OptionsKey. IsHistory = "history" IsPersistent = "persistent" IsOfflinePush = "offlinePush" @@ -170,13 +170,13 @@ const ( IsNotNotification = "isNotNotification" IsSendMsg = "isSendMsg" - //GroupStatus. + // GroupStatus. GroupOk = 0 GroupBanChat = 1 GroupStatusDismissed = 2 GroupStatusMuted = 3 - //GroupType. + // GroupType. NormalGroup = 0 SuperGroup = 1 WorkingGroup = 2 @@ -184,19 +184,19 @@ const ( GroupBaned = 3 GroupBanPrivateChat = 4 - //UserJoinGroupSource. + // UserJoinGroupSource. JoinByAdmin = 1 JoinByInvitation = 2 JoinBySearch = 3 JoinByQRCode = 4 - //Minio. + // Minio. MinioDurationTimes = 3600 - //Aws. + // Aws. AwsDurationTimes = 3600 - //callbackCommand. + // callbackCommand. CallbackBeforeSendSingleMsgCommand = "callbackBeforeSendSingleMsgCommand" CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand" CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand" @@ -217,10 +217,10 @@ const ( CallbackGetMessageListReactionExtensionsCommand = "callbackGetMessageListReactionExtensionsCommand" CallbackAddMessageListReactionExtensionsCommand = "callbackAddMessageListReactionExtensionsCommand" - //callback actionCode. + // callback actionCode. ActionAllow = 0 ActionForbidden = 1 - //callback callbackHandleCode. + // callback callbackHandleCode. CallbackHandleSuccess = 0 CallbackHandleFailed = 1 diff --git a/pkg/common/constant/platform_id_to_name.go b/pkg/common/constant/platform_id_to_name.go index 169e1e758..3bc819ed9 100644 --- a/pkg/common/constant/platform_id_to_name.go +++ b/pkg/common/constant/platform_id_to_name.go @@ -15,9 +15,9 @@ package constant // fixme 1<--->IOS 2<--->Android 3<--->Windows -// fixme 4<--->OSX 5<--->Web 6<--->MiniWeb 7<--->Linux +// fixme 4<--->OSX 5<--->Web 6<--->MiniWeb 7<--->Linux. const ( - //Platform ID. + // Platform ID. IOSPlatformID = 1 AndroidPlatformID = 2 WindowsPlatformID = 3 @@ -29,7 +29,7 @@ const ( IPadPlatformID = 9 AdminPlatformID = 10 - //Platform string match to Platform ID. + // Platform string match to Platform ID. IOSPlatformStr = "IOS" AndroidPlatformStr = "Android" WindowsPlatformStr = "Windows" @@ -41,7 +41,7 @@ const ( IPadPlatformStr = "IPad" AdminPlatformStr = "Admin" - //terminal types. + // terminal types. TerminalPC = "PC" TerminalMobile = "Mobile" ) diff --git a/pkg/common/convert/group.go b/pkg/common/convert/group.go index e8808d199..9ec812574 100644 --- a/pkg/common/convert/group.go +++ b/pkg/common/convert/group.go @@ -76,7 +76,7 @@ func Db2PbGroupMember(m *relation.GroupMemberModel) *sdkws.GroupMemberFullInfo { JoinTime: m.JoinTime.UnixMilli(), Nickname: m.Nickname, FaceURL: m.FaceURL, - //AppMangerLevel: m.AppMangerLevel, + // AppMangerLevel: m.AppMangerLevel, JoinSource: m.JoinSource, OperatorUserID: m.OperatorUserID, Ex: m.Ex, diff --git a/pkg/common/convert/msg.go b/pkg/common/convert/msg.go index 59215bb86..b937369d5 100644 --- a/pkg/common/convert/msg.go +++ b/pkg/common/convert/msg.go @@ -54,7 +54,6 @@ func MsgPb2DB(msg *sdkws.MsgData) *unrelation.MsgDataModel { msgDataModel.AttachedInfo = msg.AttachedInfo msgDataModel.Ex = msg.Ex return &msgDataModel - } func MsgDB2Pb(msgModel *unrelation.MsgDataModel) *sdkws.MsgData { diff --git a/pkg/common/db/cache/black.go b/pkg/common/db/cache/black.go index d6b82ef33..bd990a4e0 100644 --- a/pkg/common/db/cache/black.go +++ b/pkg/common/db/cache/black.go @@ -29,13 +29,13 @@ const ( blackExpireTime = time.Second * 60 * 60 * 12 ) -// args fn will exec when no data in msgCache +// args fn will exec when no data in msgCache. type BlackCache interface { - //get blackIDs from msgCache + // get blackIDs from msgCache metaCache NewCache() BlackCache GetBlackIDs(ctx context.Context, userID string) (blackIDs []string, err error) - //del user's blackIDs msgCache, exec when a user's black list changed + // del user's blackIDs msgCache, exec when a user's black list changed DelBlackIDs(ctx context.Context, userID string) BlackCache } diff --git a/pkg/common/db/cache/conversation.go b/pkg/common/db/cache/conversation.go index c35f0c240..d3a9d44aa 100644 --- a/pkg/common/db/cache/conversation.go +++ b/pkg/common/db/cache/conversation.go @@ -41,7 +41,7 @@ const ( conversationExpireTime = time.Second * 60 * 60 * 12 ) -// arg fn will exec when no data in msgCache +// arg fn will exec when no data in msgCache. type ConversationCache interface { metaCache NewCache() ConversationCache diff --git a/pkg/common/db/cache/friend.go b/pkg/common/db/cache/friend.go index 4695987dd..b15ed95d1 100644 --- a/pkg/common/db/cache/friend.go +++ b/pkg/common/db/cache/friend.go @@ -32,7 +32,7 @@ const ( friendKey = "FRIEND_INFO:" ) -// args fn will exec when no data in msgCache +// args fn will exec when no data in msgCache. type FriendCache interface { metaCache NewCache() FriendCache @@ -109,7 +109,7 @@ func (f *FriendCacheRedis) DelFriendIDs(ownerUserID ...string) FriendCache { return new } -// todo +// todo. func (f *FriendCacheRedis) GetTwoWayFriendIDs( ctx context.Context, ownerUserID string, diff --git a/pkg/common/db/cache/group.go b/pkg/common/db/cache/group.go index 86adc2d0a..44ae04ecf 100644 --- a/pkg/common/db/cache/group.go +++ b/pkg/common/db/cache/group.go @@ -106,7 +106,8 @@ func NewGroupCacheRedis( opts rockscache.Options, ) GroupCache { rcClient := rockscache.NewClient(rdb, opts) - return &GroupCacheRedis{rcClient: rcClient, expireTime: groupExpireTime, + return &GroupCacheRedis{ + rcClient: rcClient, expireTime: groupExpireTime, groupDB: groupDB, groupMemberDB: groupMemberDB, groupRequestDB: groupRequestDB, mongoDB: mongoClient, metaCache: NewMetaCacheRedis(rcClient), } @@ -176,7 +177,7 @@ func (g *GroupCacheRedis) GetGroupMemberIndex(groupMember *relationTb.GroupMembe return 0, errIndex } -// / groupInfo +// / groupInfo. func (g *GroupCacheRedis) GetGroupsInfo( ctx context.Context, groupIDs []string, @@ -265,7 +266,7 @@ func (g *GroupCacheRedis) GetSuperGroupMemberIDs( ) } -// userJoinSuperGroup +// userJoinSuperGroup. func (g *GroupCacheRedis) DelJoinedSuperGroupIDs(userIDs ...string) GroupCache { new := g.NewCache() var keys []string @@ -286,7 +287,7 @@ func (g *GroupCacheRedis) DelSuperGroupMemberIDs(groupIDs ...string) GroupCache return new } -// groupMembersHash +// groupMembersHash. func (g *GroupCacheRedis) GetGroupMembersHash(ctx context.Context, groupID string) (hashCode uint64, err error) { return getCache( ctx, @@ -331,7 +332,7 @@ func (g *GroupCacheRedis) DelGroupMembersHash(groupID string) GroupCache { return cache } -// groupMemberIDs +// groupMemberIDs. func (g *GroupCacheRedis) GetGroupMemberIDs(ctx context.Context, groupID string) (groupMemberIDs []string, err error) { return getCache( ctx, diff --git a/pkg/common/db/cache/init_redis.go b/pkg/common/db/cache/init_redis.go index be0431adf..104d48ffd 100644 --- a/pkg/common/db/cache/init_redis.go +++ b/pkg/common/db/cache/init_redis.go @@ -28,10 +28,10 @@ import ( ) const ( - maxRetry = 10 //number of retries + maxRetry = 10 // number of retries ) -// NewRedis Initialize redis connection +// NewRedis Initialize redis connection. func NewRedis() (redis.UniversalClient, error) { if len(config.Config.Redis.Address) == 0 { return nil, errors.New("redis address is empty") diff --git a/pkg/common/db/cache/init_redis_test.go b/pkg/common/db/cache/init_redis_test.go index 7bf1a4a7d..4b3f57066 100644 --- a/pkg/common/db/cache/init_redis_test.go +++ b/pkg/common/db/cache/init_redis_test.go @@ -16,11 +16,12 @@ package cache import ( "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "testing" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" ) -//TestNewRedis Test redis connection +// TestNewRedis Test redis connection func TestNewRedis(t *testing.T) { err := config.InitConfig("config_folder_path") if err != nil { diff --git a/pkg/common/db/cache/msg.go b/pkg/common/db/cache/msg.go index 5f57103b0..179a0ee61 100644 --- a/pkg/common/db/cache/msg.go +++ b/pkg/common/db/cache/msg.go @@ -212,6 +212,7 @@ func (c *msgCache) GetMaxSeqs(ctx context.Context, conversationIDs []string) (m func (c *msgCache) GetMaxSeq(ctx context.Context, conversationID string) (int64, error) { return c.getSeq(ctx, conversationID, c.getMaxSeqKey) } + func (c *msgCache) SetMinSeq(ctx context.Context, conversationID string, minSeq int64) error { return c.setSeq(ctx, conversationID, minSeq, c.getMinSeqKey) } @@ -235,6 +236,7 @@ func (c *msgCache) SetMinSeqs(ctx context.Context, seqs map[string]int64) error func (c *msgCache) GetMinSeqs(ctx context.Context, conversationIDs []string) (map[string]int64, error) { return c.getSeqs(ctx, conversationIDs, c.getMinSeqKey) } + func (c *msgCache) GetMinSeq(ctx context.Context, conversationID string) (int64, error) { return c.getSeq(ctx, conversationID, c.getMinSeqKey) } @@ -359,7 +361,7 @@ func (c *msgCache) GetMessagesBySeq( ) (seqMsgs []*sdkws.MsgData, failedSeqs []int64, err error) { pipe := c.rdb.Pipeline() for _, v := range seqs { - //MESSAGE_CACHE:169.254.225.224_reliability1653387820_0_1 + // MESSAGE_CACHE:169.254.225.224_reliability1653387820_0_1 key := c.getMessageCacheKey(conversationID, v) if err := pipe.Get(ctx, key).Err(); err != nil && err != redis.Nil { return nil, nil, err diff --git a/pkg/common/db/controller/auth.go b/pkg/common/db/controller/auth.go index 454d9707f..678d98b11 100644 --- a/pkg/common/db/controller/auth.go +++ b/pkg/common/db/controller/auth.go @@ -26,9 +26,9 @@ import ( ) type AuthDatabase interface { - //结果为空 不返回错误 + // 结果为空 不返回错误 GetTokensWithoutError(ctx context.Context, userID string, platformID int) (map[string]int, error) - //创建token + // 创建token CreateToken(ctx context.Context, userID string, platformID int) (string, error) } @@ -43,7 +43,7 @@ func NewAuthDatabase(cache cache.MsgModel, accessSecret string, accessExpire int return &authDatabase{cache: cache, accessSecret: accessSecret, accessExpire: accessExpire} } -// 结果为空 不返回错误 +// 结果为空 不返回错误. func (a *authDatabase) GetTokensWithoutError( ctx context.Context, userID string, @@ -52,7 +52,7 @@ func (a *authDatabase) GetTokensWithoutError( return a.cache.GetTokensWithoutError(ctx, userID, platformID) } -// 创建token +// 创建token. func (a *authDatabase) CreateToken(ctx context.Context, userID string, platformID int) (string, error) { tokens, err := a.cache.GetTokensWithoutError(ctx, userID, platformID) if err != nil { diff --git a/pkg/common/db/controller/black.go b/pkg/common/db/controller/black.go index 13b375787..99cf25ebd 100644 --- a/pkg/common/db/controller/black.go +++ b/pkg/common/db/controller/black.go @@ -48,7 +48,7 @@ func NewBlackDatabase(black relation.BlackModelInterface, cache cache.BlackCache return &blackDatabase{black, cache} } -// Create 增加黑名单 +// Create 增加黑名单. func (b *blackDatabase) Create(ctx context.Context, blacks []*relation.BlackModel) (err error) { if err := b.black.Create(ctx, blacks); err != nil { return err @@ -56,7 +56,7 @@ func (b *blackDatabase) Create(ctx context.Context, blacks []*relation.BlackMode return b.deleteBlackIDsCache(ctx, blacks) } -// Delete 删除黑名单 +// Delete 删除黑名单. func (b *blackDatabase) Delete(ctx context.Context, blacks []*relation.BlackModel) (err error) { if err := b.black.Delete(ctx, blacks); err != nil { return err @@ -72,7 +72,7 @@ func (b *blackDatabase) deleteBlackIDsCache(ctx context.Context, blacks []*relat return cache.ExecDel(ctx) } -// FindOwnerBlacks 获取黑名单列表 +// FindOwnerBlacks 获取黑名单列表. func (b *blackDatabase) FindOwnerBlacks( ctx context.Context, ownerUserID string, @@ -81,7 +81,7 @@ func (b *blackDatabase) FindOwnerBlacks( return b.black.FindOwnerBlacks(ctx, ownerUserID, pageNumber, showNumber) } -// CheckIn 检查user2是否在user1的黑名单列表中(inUser1Blacks==true) 检查user1是否在user2的黑名单列表中(inUser2Blacks==true) +// CheckIn 检查user2是否在user1的黑名单列表中(inUser1Blacks==true) 检查user1是否在user2的黑名单列表中(inUser2Blacks==true). func (b *blackDatabase) CheckIn( ctx context.Context, userID1, userID2 string, diff --git a/pkg/common/db/controller/conversation.go b/pkg/common/db/controller/conversation.go index 659d250c6..3cb4d1055 100644 --- a/pkg/common/db/controller/conversation.go +++ b/pkg/common/db/controller/conversation.go @@ -27,21 +27,21 @@ import ( ) type ConversationDatabase interface { - //UpdateUserConversationFiled 更新用户该会话的属性信息 + // UpdateUserConversationFiled 更新用户该会话的属性信息 UpdateUsersConversationFiled(ctx context.Context, userIDs []string, conversationID string, args map[string]interface{}) error - //CreateConversation 创建一批新的会话 + // CreateConversation 创建一批新的会话 CreateConversation(ctx context.Context, conversations []*relationTb.ConversationModel) error - //SyncPeerUserPrivateConversation 同步对端私聊会话内部保证事务操作 + // SyncPeerUserPrivateConversation 同步对端私聊会话内部保证事务操作 SyncPeerUserPrivateConversationTx(ctx context.Context, conversation []*relationTb.ConversationModel) error - //FindConversations 根据会话ID获取某个用户的多个会话 + // FindConversations 根据会话ID获取某个用户的多个会话 FindConversations(ctx context.Context, ownerUserID string, conversationIDs []string) ([]*relationTb.ConversationModel, error) - //FindRecvMsgNotNotifyUserIDs 获取超级大群开启免打扰的用户ID + // FindRecvMsgNotNotifyUserIDs 获取超级大群开启免打扰的用户ID FindRecvMsgNotNotifyUserIDs(ctx context.Context, groupID string) ([]string, error) - //GetUserAllConversation 获取一个用户在服务器上所有的会话 + // GetUserAllConversation 获取一个用户在服务器上所有的会话 GetUserAllConversation(ctx context.Context, ownerUserID string) ([]*relationTb.ConversationModel, error) - //SetUserConversations 设置用户多个会话属性,如果会话不存在则创建,否则更新,内部保证原子性 + // SetUserConversations 设置用户多个会话属性,如果会话不存在则创建,否则更新,内部保证原子性 SetUserConversations(ctx context.Context, ownerUserID string, conversations []*relationTb.ConversationModel) error - //SetUsersConversationFiledTx 设置多个用户会话关于某个字段的更新操作,如果会话不存在则创建,否则更新,内部保证事务操作 + // SetUsersConversationFiledTx 设置多个用户会话关于某个字段的更新操作,如果会话不存在则创建,否则更新,内部保证事务操作 SetUsersConversationFiledTx(ctx context.Context, userIDs []string, conversation *relationTb.ConversationModel, filedMap map[string]interface{}) error CreateGroupChatConversation(ctx context.Context, groupID string, userIDs []string) error GetConversationIDs(ctx context.Context, userID string) ([]string, error) @@ -98,7 +98,6 @@ func (c *conversationDatabase) SetUsersConversationFiledTx(ctx context.Context, temp.OwnerUserID = v temp.CreateTime = now conversations = append(conversations, temp) - } if len(conversations) > 0 { err = conversationTx.Create(ctx, conversations) diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 4d549efcf..6b41b87f2 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -93,7 +93,7 @@ func NewFriendDatabase( return &friendDatabase{friend: friend, friendRequest: friendRequest, cache: cache, tx: tx} } -// ok 检查user2是否在user1的好友列表中(inUser1Friends==true) 检查user1是否在user2的好友列表中(inUser2Friends==true) +// ok 检查user2是否在user1的好友列表中(inUser1Friends==true) 检查user1是否在user2的好友列表中(inUser2Friends==true). func (f *friendDatabase) CheckIn( ctx context.Context, userID1, userID2 string, @@ -109,7 +109,7 @@ func (f *friendDatabase) CheckIn( return utils.IsContain(userID2, userID1FriendIDs), utils.IsContain(userID1, userID2FriendIDs), nil } -// 增加或者更新好友申请 如果之前有记录则更新,没有记录则新增 +// 增加或者更新好友申请 如果之前有记录则更新,没有记录则新增. func (f *friendDatabase) AddFriendRequest( ctx context.Context, fromUserID, toUserID string, @@ -118,11 +118,11 @@ func (f *friendDatabase) AddFriendRequest( ) (err error) { return f.tx.Transaction(func(tx any) error { _, err := f.friendRequest.NewTx(tx).Take(ctx, fromUserID, toUserID) - //有db错误 + // 有db错误 if err != nil && errs.Unwrap(err) != gorm.ErrRecordNotFound { return err } - //无错误 则更新 + // 无错误 则更新 if err == nil { m := make(map[string]interface{}, 1) m["handle_result"] = 0 @@ -135,7 +135,7 @@ func (f *friendDatabase) AddFriendRequest( } return nil } - //gorm.ErrRecordNotFound 错误,则新增 + // gorm.ErrRecordNotFound 错误,则新增 if err := f.friendRequest.NewTx(tx).Create(ctx, []*relation.FriendRequestModel{{FromUserID: fromUserID, ToUserID: toUserID, ReqMsg: reqMsg, Ex: ex, CreateTime: time.Now(), HandleTime: time.Unix(0, 0)}}); err != nil { return err } @@ -143,7 +143,7 @@ func (f *friendDatabase) AddFriendRequest( }) } -// (1)先判断是否在好友表 (在不在都不返回错误) (2)对于不在好友列表的 插入即可 +// (1)先判断是否在好友表 (在不在都不返回错误) (2)对于不在好友列表的 插入即可. func (f *friendDatabase) BecomeFriends( ctx context.Context, ownerUserID string, @@ -152,7 +152,7 @@ func (f *friendDatabase) BecomeFriends( ) (err error) { cache := f.cache.NewCache() if err := f.tx.Transaction(func(tx any) error { - //先find 找出重复的 去掉重复的 + // 先find 找出重复的 去掉重复的 fs1, err := f.friend.NewTx(tx).FindFriends(ctx, ownerUserID, friendUserIDs) if err != nil { return err @@ -194,7 +194,7 @@ func (f *friendDatabase) BecomeFriends( return cache.ExecDel(ctx) } -// 拒绝好友申请 (1)检查是否有申请记录且为未处理状态 (没有记录返回错误) (2)修改申请记录 已拒绝 +// 拒绝好友申请 (1)检查是否有申请记录且为未处理状态 (没有记录返回错误) (2)修改申请记录 已拒绝. func (f *friendDatabase) RefuseFriendRequest( ctx context.Context, friendRequest *relation.FriendRequestModel, @@ -215,7 +215,7 @@ func (f *friendDatabase) RefuseFriendRequest( return nil } -// AgreeFriendRequest 同意好友申请 (1)检查是否有申请记录且为未处理状态 (没有记录返回错误) (2)检查是否好友(不返回错误) (3) 建立双向好友关系(存在的忽略) +// AgreeFriendRequest 同意好友申请 (1)检查是否有申请记录且为未处理状态 (没有记录返回错误) (2)检查是否好友(不返回错误) (3) 建立双向好友关系(存在的忽略). func (f *friendDatabase) AgreeFriendRequest( ctx context.Context, friendRequest *relation.FriendRequestModel, @@ -289,7 +289,7 @@ func (f *friendDatabase) AgreeFriendRequest( }) } -// 删除好友 外部判断是否好友关系 +// 删除好友 外部判断是否好友关系. func (f *friendDatabase) Delete(ctx context.Context, ownerUserID string, friendUserIDs []string) (err error) { if err := f.friend.Delete(ctx, ownerUserID, friendUserIDs); err != nil { return err @@ -297,7 +297,7 @@ func (f *friendDatabase) Delete(ctx context.Context, ownerUserID string, friendU return f.cache.DelFriendIDs(append(friendUserIDs, ownerUserID)...).ExecDel(ctx) } -// 更新好友备注 零值也支持 +// 更新好友备注 零值也支持. func (f *friendDatabase) UpdateRemark(ctx context.Context, ownerUserID, friendUserID, remark string) (err error) { if err := f.friend.UpdateRemark(ctx, ownerUserID, friendUserID, remark); err != nil { return err @@ -305,7 +305,7 @@ func (f *friendDatabase) UpdateRemark(ctx context.Context, ownerUserID, friendUs return f.cache.DelFriend(ownerUserID, friendUserID).ExecDel(ctx) } -// 获取ownerUserID的好友列表 无结果不返回错误 +// 获取ownerUserID的好友列表 无结果不返回错误. func (f *friendDatabase) PageOwnerFriends( ctx context.Context, ownerUserID string, @@ -314,7 +314,7 @@ func (f *friendDatabase) PageOwnerFriends( return f.friend.FindOwnerFriends(ctx, ownerUserID, pageNumber, showNumber) } -// friendUserID在哪些人的好友列表中 +// friendUserID在哪些人的好友列表中. func (f *friendDatabase) PageInWhoseFriends( ctx context.Context, friendUserID string, @@ -323,7 +323,7 @@ func (f *friendDatabase) PageInWhoseFriends( return f.friend.FindInWhoseFriends(ctx, friendUserID, pageNumber, showNumber) } -// 获取我发出去的好友申请 无结果不返回错误 +// 获取我发出去的好友申请 无结果不返回错误. func (f *friendDatabase) PageFriendRequestFromMe( ctx context.Context, userID string, @@ -332,7 +332,7 @@ func (f *friendDatabase) PageFriendRequestFromMe( return f.friendRequest.FindFromUserID(ctx, userID, pageNumber, showNumber) } -// 获取我收到的的好友申请 无结果不返回错误 +// 获取我收到的的好友申请 无结果不返回错误. func (f *friendDatabase) PageFriendRequestToMe( ctx context.Context, userID string, @@ -341,7 +341,7 @@ func (f *friendDatabase) PageFriendRequestToMe( return f.friendRequest.FindToUserID(ctx, userID, pageNumber, showNumber) } -// 获取某人指定好友的信息 如果有好友不存在,也返回错误 +// 获取某人指定好友的信息 如果有好友不存在,也返回错误. func (f *friendDatabase) FindFriendsWithError( ctx context.Context, ownerUserID string, diff --git a/pkg/common/db/controller/group.go b/pkg/common/db/controller/group.go index 9010e3350..dff427580 100644 --- a/pkg/common/db/controller/group.go +++ b/pkg/common/db/controller/group.go @@ -203,7 +203,7 @@ func (g *groupDatabase) CreateGroup( groups []*relationTb.GroupModel, groupMembers []*relationTb.GroupMemberModel, ) error { - var cache = g.cache.NewCache() + cache := g.cache.NewCache() if err := g.tx.Transaction(func(tx any) error { if len(groups) > 0 { if err := g.groupDB.NewTx(tx).Create(ctx, groups); err != nil { @@ -473,7 +473,7 @@ func (g *groupDatabase) UpdateGroupMember( } func (g *groupDatabase) UpdateGroupMembers(ctx context.Context, data []*relationTb.BatchUpdateGroupMember) error { - var cache = g.cache.NewCache() + cache := g.cache.NewCache() if err := g.tx.Transaction(func(tx any) error { for _, item := range data { if err := g.groupMemberDB.NewTx(tx).Update(ctx, item.GroupID, item.UserID, item.Map); err != nil { diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 2e5699db3..3be9b334a 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -15,10 +15,14 @@ package controller import ( + "context" + "errors" + "time" + + "gorm.io/gorm" + relation2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "gorm.io/gorm" - "time" "github.com/redis/go-redis/v9" @@ -32,13 +36,11 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "context" - "errors" + "go.mongodb.org/mongo-driver/mongo" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "go.mongodb.org/mongo-driver/mongo" ) const ( @@ -103,8 +105,23 @@ type CommonMsgDatabase interface { MsgToPushMQ(ctx context.Context, key, conversarionID string, msg2mq *sdkws.MsgData) (int32, int64, error) MsgToMongoMQ(ctx context.Context, key, conversarionID string, msgs []*sdkws.MsgData, lastSeq int64) error - RangeUserSendCount(ctx context.Context, start time.Time, end time.Time, group bool, ase bool, pageNumber int32, showNumber int32) (msgCount int64, userCount int64, users []*unRelationTb.UserCount, dateCount map[string]int64, err error) - RangeGroupSendCount(ctx context.Context, start time.Time, end time.Time, ase bool, pageNumber int32, showNumber int32) (msgCount int64, userCount int64, groups []*unRelationTb.GroupCount, dateCount map[string]int64, err error) + RangeUserSendCount( + ctx context.Context, + start time.Time, + end time.Time, + group bool, + ase bool, + pageNumber int32, + showNumber int32, + ) (msgCount int64, userCount int64, users []*unRelationTb.UserCount, dateCount map[string]int64, err error) + RangeGroupSendCount( + ctx context.Context, + start time.Time, + end time.Time, + ase bool, + pageNumber int32, + showNumber int32, + ) (msgCount int64, userCount int64, groups []*unRelationTb.GroupCount, dateCount map[string]int64, err error) } func NewCommonMsgDatabase(msgDocModel unRelationTb.MsgDocModelInterface, cacheModel cache.MsgModel, msgMyqModel relation.ChatLogModelInterface) CommonMsgDatabase { @@ -172,7 +189,7 @@ func (db *commonMsgDatabase) BatchInsertBlock(ctx context.Context, conversationI return nil } num := db.msg.GetSingleGocMsgNum() - //num = 100 + // num = 100 for i, field := range fields { // 检查类型 var ok bool switch key { @@ -390,7 +407,7 @@ func (db *commonMsgDatabase) BatchInsertChat2Cache(ctx context.Context, conversa func (db *commonMsgDatabase) getMsgBySeqs(ctx context.Context, userID, conversationID string, seqs []int64) (totalMsgs []*sdkws.MsgData, err error) { for docID, seqs := range db.msg.GetDocIDSeqsMap(conversationID, seqs) { - //log.ZDebug(ctx, "getMsgBySeqs", "docID", docID, "seqs", seqs) + // log.ZDebug(ctx, "getMsgBySeqs", "docID", docID, "seqs", seqs) msgs, err := db.findMsgInfoBySeq(ctx, userID, docID, seqs) if err != nil { return nil, err @@ -575,7 +592,22 @@ func (db *commonMsgDatabase) GetMsgBySeqs(ctx context.Context, userID string, co log.ZError(ctx, "get message from redis exception", err, "failedSeqs", failedSeqs, "conversationID", conversationID) } } - log.ZInfo(ctx, "db.cache.GetMessagesBySeq", "userID", userID, "conversationID", conversationID, "seqs", seqs, "successMsgs", len(successMsgs), "failedSeqs", failedSeqs, "conversationID", conversationID) + log.ZInfo( + ctx, + "db.cache.GetMessagesBySeq", + "userID", + userID, + "conversationID", + conversationID, + "seqs", + seqs, + "successMsgs", + len(successMsgs), + "failedSeqs", + failedSeqs, + "conversationID", + conversationID, + ) prome.Add(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) if len(failedSeqs) > 0 { mongoMsgs, err := db.getMsgBySeqs(ctx, userID, conversationID, failedSeqs) @@ -637,7 +669,6 @@ func (db *commonMsgDatabase) UserMsgsDestruct(ctx context.Context, userID string log.ZDebug(ctx, "deleteMsgRecursion finished", "conversationID", conversationID, "userID", userID, "index", index) break } - } } } @@ -652,7 +683,7 @@ func (db *commonMsgDatabase) UserMsgsDestruct(ctx context.Context, userID string return seqs, nil } -// this is struct for recursion +// this is struct for recursion. type delMsgRecursionStruct struct { minSeq int64 delDocIDs []string @@ -665,7 +696,7 @@ func (d *delMsgRecursionStruct) getSetMinSeq() int64 { // index 0....19(del) 20...69 // seq 70 // set minSeq 21 -// recursion 删除list并且返回设置的最小seq +// recursion 删除list并且返回设置的最小seq. func (db *commonMsgDatabase) deleteMsgRecursion(ctx context.Context, conversationID string, index int64, delStruct *delMsgRecursionStruct, remainTime int64) (int64, error) { // find from oldest list msgDocModel, err := db.msgDocDatabase.GetMsgDocModelByIndex(ctx, conversationID, index, 1) @@ -791,15 +822,19 @@ func (db *commonMsgDatabase) CleanUpUserConversationsMsgs(ctx context.Context, u func (db *commonMsgDatabase) SetMaxSeq(ctx context.Context, conversationID string, maxSeq int64) error { return db.cache.SetMaxSeq(ctx, conversationID, maxSeq) } + func (db *commonMsgDatabase) GetMaxSeqs(ctx context.Context, conversationIDs []string) (map[string]int64, error) { return db.cache.GetMaxSeqs(ctx, conversationIDs) } + func (db *commonMsgDatabase) GetMaxSeq(ctx context.Context, conversationID string) (int64, error) { return db.cache.GetMaxSeq(ctx, conversationID) } + func (db *commonMsgDatabase) SetMinSeq(ctx context.Context, conversationID string, minSeq int64) error { return db.cache.SetMinSeq(ctx, conversationID, minSeq) } + func (db *commonMsgDatabase) SetMinSeqs(ctx context.Context, seqs map[string]int64) error { return db.cache.SetMinSeqs(ctx, seqs) } @@ -807,18 +842,23 @@ func (db *commonMsgDatabase) SetMinSeqs(ctx context.Context, seqs map[string]int func (db *commonMsgDatabase) GetMinSeqs(ctx context.Context, conversationIDs []string) (map[string]int64, error) { return db.cache.GetMinSeqs(ctx, conversationIDs) } + func (db *commonMsgDatabase) GetMinSeq(ctx context.Context, conversationID string) (int64, error) { return db.cache.GetMinSeq(ctx, conversationID) } + func (db *commonMsgDatabase) GetConversationUserMinSeq(ctx context.Context, conversationID string, userID string) (int64, error) { return db.cache.GetConversationUserMinSeq(ctx, conversationID, userID) } + func (db *commonMsgDatabase) GetConversationUserMinSeqs(ctx context.Context, conversationID string, userIDs []string) (map[string]int64, error) { return db.cache.GetConversationUserMinSeqs(ctx, conversationID, userIDs) } + func (db *commonMsgDatabase) SetConversationUserMinSeq(ctx context.Context, conversationID string, userID string, minSeq int64) error { return db.cache.SetConversationUserMinSeq(ctx, conversationID, userID, minSeq) } + func (db *commonMsgDatabase) SetConversationUserMinSeqs(ctx context.Context, conversationID string, seqs map[string]int64) (err error) { return db.cache.SetConversationUserMinSeqs(ctx, conversationID, seqs) } @@ -834,6 +874,7 @@ func (db *commonMsgDatabase) UserSetHasReadSeqs(ctx context.Context, userID stri func (db *commonMsgDatabase) SetHasReadSeq(ctx context.Context, userID string, conversationID string, hasReadSeq int64) error { return db.cache.SetHasReadSeq(ctx, userID, conversationID, hasReadSeq) } + func (db *commonMsgDatabase) GetHasReadSeqs(ctx context.Context, userID string, conversationIDs []string) (map[string]int64, error) { return db.cache.GetHasReadSeqs(ctx, userID, conversationIDs) } @@ -884,11 +925,26 @@ func (db *commonMsgDatabase) GetMinMaxSeqMongo(ctx context.Context, conversation return } -func (db *commonMsgDatabase) RangeUserSendCount(ctx context.Context, start time.Time, end time.Time, group bool, ase bool, pageNumber int32, showNumber int32) (msgCount int64, userCount int64, users []*unRelationTb.UserCount, dateCount map[string]int64, err error) { +func (db *commonMsgDatabase) RangeUserSendCount( + ctx context.Context, + start time.Time, + end time.Time, + group bool, + ase bool, + pageNumber int32, + showNumber int32, +) (msgCount int64, userCount int64, users []*unRelationTb.UserCount, dateCount map[string]int64, err error) { return db.msgDocDatabase.RangeUserSendCount(ctx, start, end, group, ase, pageNumber, showNumber) } -func (db *commonMsgDatabase) RangeGroupSendCount(ctx context.Context, start time.Time, end time.Time, ase bool, pageNumber int32, showNumber int32) (msgCount int64, userCount int64, groups []*unRelationTb.GroupCount, dateCount map[string]int64, err error) { +func (db *commonMsgDatabase) RangeGroupSendCount( + ctx context.Context, + start time.Time, + end time.Time, + ase bool, + pageNumber int32, + showNumber int32, +) (msgCount int64, userCount int64, groups []*unRelationTb.GroupCount, dateCount map[string]int64, err error) { return db.msgDocDatabase.RangeGroupSendCount(ctx, start, end, ase, pageNumber, showNumber) } diff --git a/pkg/common/db/controller/s3.go b/pkg/common/db/controller/s3.go index ecc438ef2..cdd1ac4c2 100644 --- a/pkg/common/db/controller/s3.go +++ b/pkg/common/db/controller/s3.go @@ -16,11 +16,12 @@ package controller import ( "context" + "path/filepath" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/cont" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "path/filepath" - "time" ) type S3Database interface { diff --git a/pkg/common/db/controller/user.go b/pkg/common/db/controller/user.go index fe14f0a1c..e15033a62 100644 --- a/pkg/common/db/controller/user.go +++ b/pkg/common/db/controller/user.go @@ -26,19 +26,19 @@ import ( ) type UserDatabase interface { - //获取指定用户的信息 如有userID未找到 也返回错误 + // 获取指定用户的信息 如有userID未找到 也返回错误 FindWithError(ctx context.Context, userIDs []string) (users []*relation.UserModel, err error) - //获取指定用户的信息 如有userID未找到 不返回错误 + // 获取指定用户的信息 如有userID未找到 不返回错误 Find(ctx context.Context, userIDs []string) (users []*relation.UserModel, err error) - //插入多条 外部保证userID 不重复 且在db中不存在 + // 插入多条 外部保证userID 不重复 且在db中不存在 Create(ctx context.Context, users []*relation.UserModel) (err error) - //更新(非零值) 外部保证userID存在 + // 更新(非零值) 外部保证userID存在 Update(ctx context.Context, user *relation.UserModel) (err error) - //更新(零值) 外部保证userID存在 + // 更新(零值) 外部保证userID存在 UpdateByMap(ctx context.Context, userID string, args map[string]interface{}) (err error) - //如果没找到,不返回错误 + // 如果没找到,不返回错误 Page(ctx context.Context, pageNumber, showNumber int32) (users []*relation.UserModel, count int64, err error) - //只要有一个存在就为true + // 只要有一个存在就为true IsExist(ctx context.Context, userIDs []string) (exist bool, err error) //获取所有用户ID GetAllUserID(ctx context.Context, pageNumber, showNumber int32) ([]string, error) @@ -75,7 +75,7 @@ func (u *userDatabase) InitOnce(ctx context.Context, users []*relation.UserModel return nil } -// 获取指定用户的信息 如有userID未找到 也返回错误 +// 获取指定用户的信息 如有userID未找到 也返回错误. func (u *userDatabase) FindWithError(ctx context.Context, userIDs []string) (users []*relation.UserModel, err error) { users, err = u.cache.GetUsersInfo(ctx, userIDs) if err != nil { @@ -87,13 +87,13 @@ func (u *userDatabase) FindWithError(ctx context.Context, userIDs []string) (use return } -// 获取指定用户的信息 如有userID未找到 不返回错误 +// 获取指定用户的信息 如有userID未找到 不返回错误. func (u *userDatabase) Find(ctx context.Context, userIDs []string) (users []*relation.UserModel, err error) { users, err = u.cache.GetUsersInfo(ctx, userIDs) return } -// 插入多条 外部保证userID 不重复 且在db中不存在 +// 插入多条 外部保证userID 不重复 且在db中不存在. func (u *userDatabase) Create(ctx context.Context, users []*relation.UserModel) (err error) { if err := u.tx.Transaction(func(tx any) error { err = u.userDB.Create(ctx, users) @@ -111,7 +111,7 @@ func (u *userDatabase) Create(ctx context.Context, users []*relation.UserModel) return u.cache.DelUsersInfo(userIDs...).ExecDel(ctx) } -// 更新(非零值) 外部保证userID存在 +// 更新(非零值) 外部保证userID存在. func (u *userDatabase) Update(ctx context.Context, user *relation.UserModel) (err error) { if err := u.userDB.Update(ctx, user); err != nil { return err @@ -119,7 +119,7 @@ func (u *userDatabase) Update(ctx context.Context, user *relation.UserModel) (er return u.cache.DelUsersInfo(user.UserID).ExecDel(ctx) } -// 更新(零值) 外部保证userID存在 +// 更新(零值) 外部保证userID存在. func (u *userDatabase) UpdateByMap(ctx context.Context, userID string, args map[string]interface{}) (err error) { if err := u.userDB.UpdateByMap(ctx, userID, args); err != nil { return err @@ -127,7 +127,7 @@ func (u *userDatabase) UpdateByMap(ctx context.Context, userID string, args map[ return u.cache.DelUsersInfo(userID).ExecDel(ctx) } -// 获取,如果没找到,不返回错误 +// 获取,如果没找到,不返回错误. func (u *userDatabase) Page( ctx context.Context, pageNumber, showNumber int32, @@ -135,7 +135,7 @@ func (u *userDatabase) Page( return u.userDB.Page(ctx, pageNumber, showNumber) } -// userIDs是否存在 只要有一个存在就为true +// userIDs是否存在 只要有一个存在就为true. func (u *userDatabase) IsExist(ctx context.Context, userIDs []string) (exist bool, err error) { users, err := u.userDB.Find(ctx, userIDs) if err != nil { diff --git a/pkg/common/db/localcache/conversation.go b/pkg/common/db/localcache/conversation.go index de9f0401d..36f82b93e 100644 --- a/pkg/common/db/localcache/conversation.go +++ b/pkg/common/db/localcache/conversation.go @@ -76,5 +76,4 @@ func (g *ConversationLocalCache) GetConversationIDs(ctx context.Context, userID return conversationIDsResp.ConversationIDs, nil } return hash.ids, nil - } diff --git a/pkg/common/db/relation/friend_model.go b/pkg/common/db/relation/friend_model.go index 5a54f9b7c..10daf8e80 100644 --- a/pkg/common/db/relation/friend_model.go +++ b/pkg/common/db/relation/friend_model.go @@ -35,12 +35,12 @@ func (f *FriendGorm) NewTx(tx any) relation.FriendModelInterface { return &FriendGorm{NewMetaDB(tx.(*gorm.DB), &relation.FriendModel{})} } -// 插入多条记录 +// 插入多条记录. func (f *FriendGorm) Create(ctx context.Context, friends []*relation.FriendModel) (err error) { return utils.Wrap(f.db(ctx).Create(&friends).Error, "") } -// 删除ownerUserID指定的好友 +// 删除ownerUserID指定的好友. func (f *FriendGorm) Delete(ctx context.Context, ownerUserID string, friendUserIDs []string) (err error) { err = utils.Wrap( f.db(ctx). @@ -52,7 +52,7 @@ func (f *FriendGorm) Delete(ctx context.Context, ownerUserID string, friendUserI return err } -// 更新ownerUserID单个好友信息 更新零值 +// 更新ownerUserID单个好友信息 更新零值. func (f *FriendGorm) UpdateByMap( ctx context.Context, ownerUserID string, @@ -65,12 +65,12 @@ func (f *FriendGorm) UpdateByMap( ) } -// 更新好友信息的非零值 +// 更新好友信息的非零值. func (f *FriendGorm) Update(ctx context.Context, friends []*relation.FriendModel) (err error) { return utils.Wrap(f.db(ctx).Updates(&friends).Error, "") } -// 更新好友备注(也支持零值 ) +// 更新好友备注(也支持零值 ). func (f *FriendGorm) UpdateRemark(ctx context.Context, ownerUserID, friendUserID, remark string) (err error) { if remark != "" { return utils.Wrap( @@ -86,7 +86,7 @@ func (f *FriendGorm) UpdateRemark(ctx context.Context, ownerUserID, friendUserID return utils.Wrap(f.db(ctx).Where("owner_user_id = ?", ownerUserID).Updates(m).Error, "") } -// 获取单个好友信息,如没找到 返回错误 +// 获取单个好友信息,如没找到 返回错误. func (f *FriendGorm) Take( ctx context.Context, ownerUserID, friendUserID string, @@ -98,7 +98,7 @@ func (f *FriendGorm) Take( ) } -// 查找好友关系,如果是双向关系,则都返回 +// 查找好友关系,如果是双向关系,则都返回. func (f *FriendGorm) FindUserState( ctx context.Context, userID1, userID2 string, @@ -112,7 +112,7 @@ func (f *FriendGorm) FindUserState( ) } -// 获取 owner指定的好友列表 如果有friendUserIDs不存在,也不返回错误 +// 获取 owner指定的好友列表 如果有friendUserIDs不存在,也不返回错误. func (f *FriendGorm) FindFriends( ctx context.Context, ownerUserID string, @@ -124,7 +124,7 @@ func (f *FriendGorm) FindFriends( ) } -// 获取哪些人添加了friendUserID 如果有ownerUserIDs不存在,也不返回错误 +// 获取哪些人添加了friendUserID 如果有ownerUserIDs不存在,也不返回错误. func (f *FriendGorm) FindReversalFriends( ctx context.Context, friendUserID string, @@ -136,7 +136,7 @@ func (f *FriendGorm) FindReversalFriends( ) } -// 获取ownerUserID好友列表 支持翻页 +// 获取ownerUserID好友列表 支持翻页. func (f *FriendGorm) FindOwnerFriends( ctx context.Context, ownerUserID string, @@ -158,7 +158,7 @@ func (f *FriendGorm) FindOwnerFriends( return } -// 获取哪些人添加了friendUserID 支持翻页 +// 获取哪些人添加了friendUserID 支持翻页. func (f *FriendGorm) FindInWhoseFriends( ctx context.Context, friendUserID string, diff --git a/pkg/common/db/relation/friend_request_model.go b/pkg/common/db/relation/friend_request_model.go index 06fd08ff6..fe08ac06c 100644 --- a/pkg/common/db/relation/friend_request_model.go +++ b/pkg/common/db/relation/friend_request_model.go @@ -35,12 +35,12 @@ func (f *FriendRequestGorm) NewTx(tx any) relation.FriendRequestModelInterface { return &FriendRequestGorm{NewMetaDB(tx.(*gorm.DB), &relation.FriendRequestModel{})} } -// 插入多条记录 +// 插入多条记录. func (f *FriendRequestGorm) Create(ctx context.Context, friendRequests []*relation.FriendRequestModel) (err error) { return utils.Wrap(f.db(ctx).Create(&friendRequests).Error, "") } -// 删除记录 +// 删除记录. func (f *FriendRequestGorm) Delete(ctx context.Context, fromUserID, toUserID string) (err error) { return utils.Wrap( f.db(ctx). @@ -51,7 +51,7 @@ func (f *FriendRequestGorm) Delete(ctx context.Context, fromUserID, toUserID str ) } -// 更新零值 +// 更新零值. func (f *FriendRequestGorm) UpdateByMap( ctx context.Context, fromUserID string, @@ -68,7 +68,7 @@ func (f *FriendRequestGorm) UpdateByMap( ) } -// 更新记录 (非零值) +// 更新记录 (非零值). func (f *FriendRequestGorm) Update(ctx context.Context, friendRequest *relation.FriendRequestModel) (err error) { return utils.Wrap( f.db(ctx). @@ -79,7 +79,7 @@ func (f *FriendRequestGorm) Update(ctx context.Context, friendRequest *relation. ) } -// 获取来指定用户的好友申请 未找到 不返回错误 +// 获取来指定用户的好友申请 未找到 不返回错误. func (f *FriendRequestGorm) Find( ctx context.Context, fromUserID, toUserID string, @@ -104,7 +104,7 @@ func (f *FriendRequestGorm) Take( return friendRequest, err } -// 获取toUserID收到的好友申请列表 +// 获取toUserID收到的好友申请列表. func (f *FriendRequestGorm) FindToUserID( ctx context.Context, toUserID string, @@ -126,7 +126,7 @@ func (f *FriendRequestGorm) FindToUserID( return } -// 获取fromUserID发出去的好友申请列表 +// 获取fromUserID发出去的好友申请列表. func (f *FriendRequestGorm) FindFromUserID( ctx context.Context, fromUserID string, diff --git a/pkg/common/db/relation/group_model.go b/pkg/common/db/relation/group_model.go index 767f7db84..3a782e02a 100644 --- a/pkg/common/db/relation/group_model.go +++ b/pkg/common/db/relation/group_model.go @@ -16,9 +16,10 @@ package relation import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/ormutil" @@ -67,6 +68,7 @@ func (g *GroupGorm) Search(ctx context.Context, keyword string, pageNumber, show db = db.WithContext(ctx).Where("status!=?", constant.GroupStatusDismissed) return ormutil.GormSearch[relation.GroupModel](db, []string{"name"}, keyword, pageNumber, showNumber) } + func (g *GroupGorm) GetGroupIDsByGroupType(ctx context.Context, groupType int) (groupIDs []string, err error) { return groupIDs, utils.Wrap(g.DB.Model(&relation.GroupModel{}).Where("group_type = ? ", groupType).Pluck("group_id", &groupIDs).Error, "") } diff --git a/pkg/common/db/relation/mysql_init.go b/pkg/common/db/relation/mysql_init.go index 4a6758cba..267acce74 100644 --- a/pkg/common/db/relation/mysql_init.go +++ b/pkg/common/db/relation/mysql_init.go @@ -31,10 +31,10 @@ import ( ) const ( - maxRetry = 100 //number of retries + maxRetry = 100 // number of retries ) -// newMysqlGormDB Initialize the database connection +// newMysqlGormDB Initialize the database connection. func newMysqlGormDB() (*gorm.DB, error) { dsn := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=true&loc=Local", config.Config.Mysql.Username, config.Config.Mysql.Password, config.Config.Mysql.Address[0], "mysql") @@ -84,7 +84,7 @@ func newMysqlGormDB() (*gorm.DB, error) { return db, nil } -// connectToDatabase Connection retry for mysql +// connectToDatabase Connection retry for mysql. func connectToDatabase(dsn string, maxRetry int) (*gorm.DB, error) { var db *gorm.DB var err error @@ -101,7 +101,7 @@ func connectToDatabase(dsn string, maxRetry int) (*gorm.DB, error) { return nil, err } -// NewGormDB gorm mysql +// NewGormDB gorm mysql. func NewGormDB() (*gorm.DB, error) { specialerror.AddReplace(gorm.ErrRecordNotFound, errs.ErrRecordNotFound) specialerror.AddErrHandler(replaceDuplicateKey) diff --git a/pkg/common/db/relation/user_model.go b/pkg/common/db/relation/user_model.go index 3da877c19..6e095f55f 100644 --- a/pkg/common/db/relation/user_model.go +++ b/pkg/common/db/relation/user_model.go @@ -34,35 +34,35 @@ func NewUserGorm(db *gorm.DB) relation.UserModelInterface { return &UserGorm{NewMetaDB(db, &relation.UserModel{})} } -// 插入多条 +// 插入多条. func (u *UserGorm) Create(ctx context.Context, users []*relation.UserModel) (err error) { return utils.Wrap(u.db(ctx).Create(&users).Error, "") } -// 更新用户信息 零值 +// 更新用户信息 零值. func (u *UserGorm) UpdateByMap(ctx context.Context, userID string, args map[string]interface{}) (err error) { return utils.Wrap(u.db(ctx).Model(&relation.UserModel{}).Where("user_id = ?", userID).Updates(args).Error, "") } -// 更新多个用户信息 非零值 +// 更新多个用户信息 非零值. func (u *UserGorm) Update(ctx context.Context, user *relation.UserModel) (err error) { return utils.Wrap(u.db(ctx).Model(user).Updates(user).Error, "") } -// 获取指定用户信息 不存在,也不返回错误 +// 获取指定用户信息 不存在,也不返回错误. func (u *UserGorm) Find(ctx context.Context, userIDs []string) (users []*relation.UserModel, err error) { err = utils.Wrap(u.db(ctx).Where("user_id in (?)", userIDs).Find(&users).Error, "") return users, err } -// 获取某个用户信息 不存在,则返回错误 +// 获取某个用户信息 不存在,则返回错误. func (u *UserGorm) Take(ctx context.Context, userID string) (user *relation.UserModel, err error) { user = &relation.UserModel{} err = utils.Wrap(u.db(ctx).Where("user_id = ?", userID).Take(&user).Error, "") return user, err } -// 获取用户信息 不存在,不返回错误 +// 获取用户信息 不存在,不返回错误. func (u *UserGorm) Page( ctx context.Context, pageNumber, showNumber int32, diff --git a/pkg/common/db/s3/cont/controller.go b/pkg/common/db/s3/cont/controller.go index 0ab700e21..07eacc63b 100644 --- a/pkg/common/db/s3/cont/controller.go +++ b/pkg/common/db/s3/cont/controller.go @@ -20,13 +20,15 @@ import ( "encoding/hex" "errors" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/google/uuid" "path" "strings" "time" + + "github.com/google/uuid" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" ) func New(impl s3.Interface) *Controller { diff --git a/pkg/common/db/s3/cont/error.go b/pkg/common/db/s3/cont/error.go index af09779ee..be77bcb9e 100644 --- a/pkg/common/db/s3/cont/error.go +++ b/pkg/common/db/s3/cont/error.go @@ -16,6 +16,7 @@ package cont import ( "fmt" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" ) diff --git a/pkg/common/db/s3/cos/cos.go b/pkg/common/db/s3/cos/cos.go index c3a2b104c..799766bbe 100644 --- a/pkg/common/db/s3/cos/cos.go +++ b/pkg/common/db/s3/cos/cos.go @@ -18,14 +18,16 @@ import ( "context" "errors" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" - "github.com/tencentyun/cos-go-sdk-v5" "net/http" "net/url" "strconv" "strings" "time" + + "github.com/tencentyun/cos-go-sdk-v5" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" ) const ( diff --git a/pkg/common/db/s3/minio/minio.go b/pkg/common/db/s3/minio/minio.go index 48d192420..2f0a59a2e 100644 --- a/pkg/common/db/s3/minio/minio.go +++ b/pkg/common/db/s3/minio/minio.go @@ -18,16 +18,18 @@ import ( "context" "errors" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" - "github.com/minio/minio-go/v7" - "github.com/minio/minio-go/v7/pkg/credentials" - "github.com/minio/minio-go/v7/pkg/signer" "net/http" "net/url" "strconv" "strings" "time" + + "github.com/minio/minio-go/v7" + "github.com/minio/minio-go/v7/pkg/credentials" + "github.com/minio/minio-go/v7/pkg/signer" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" ) const ( diff --git a/pkg/common/db/s3/oss/oss.go b/pkg/common/db/s3/oss/oss.go index 1b5745fe1..572b665e6 100644 --- a/pkg/common/db/s3/oss/oss.go +++ b/pkg/common/db/s3/oss/oss.go @@ -18,14 +18,16 @@ import ( "context" "errors" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" - "github.com/aliyun/aliyun-oss-go-sdk/oss" "net/http" "net/url" "strconv" "strings" "time" + + "github.com/aliyun/aliyun-oss-go-sdk/oss" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" ) const ( @@ -146,7 +148,11 @@ func (o *OSS) AuthSign(ctx context.Context, uploadID string, name string, expire } request.Header.Set(oss.HTTPHeaderHost, request.Host) request.Header.Set(oss.HTTPHeaderDate, time.Now().UTC().Format(http.TimeFormat)) - authorization := fmt.Sprintf(`OSS %s:%s`, o.credentials.GetAccessKeyID(), o.getSignedStr(request, fmt.Sprintf(`/%s/%s?partNumber=%d&uploadId=%s`, o.bucket.BucketName, name, partNumber, uploadID), o.credentials.GetAccessKeySecret())) + authorization := fmt.Sprintf( + `OSS %s:%s`, + o.credentials.GetAccessKeyID(), + o.getSignedStr(request, fmt.Sprintf(`/%s/%s?partNumber=%d&uploadId=%s`, o.bucket.BucketName, name, partNumber, uploadID), o.credentials.GetAccessKeySecret()), + ) request.Header.Set(oss.HTTPHeaderAuthorization, authorization) result.Parts[i] = s3.SignPart{ PartNumber: partNumber, diff --git a/pkg/common/db/s3/oss/sign.go b/pkg/common/db/s3/oss/sign.go index a272a64c5..9811ac476 100644 --- a/pkg/common/db/s3/oss/sign.go +++ b/pkg/common/db/s3/oss/sign.go @@ -19,12 +19,13 @@ import ( "crypto/sha1" "crypto/sha256" "encoding/base64" - "github.com/aliyun/aliyun-oss-go-sdk/oss" "hash" "io" "net/http" "sort" "strings" + + "github.com/aliyun/aliyun-oss-go-sdk/oss" ) func (o *OSS) getAdditionalHeaderKeys(req *http.Request) ([]string, map[string]string) { diff --git a/pkg/common/db/table/relation/conversation.go b/pkg/common/db/table/relation/conversation.go index 3e095238f..99c01e5b7 100644 --- a/pkg/common/db/table/relation/conversation.go +++ b/pkg/common/db/table/relation/conversation.go @@ -24,20 +24,20 @@ const ( ) type ConversationModel struct { - OwnerUserID string `gorm:"column:owner_user_id;primary_key;type:char(128)" json:"OwnerUserID"` - ConversationID string `gorm:"column:conversation_id;primary_key;type:char(128)" json:"conversationID"` - ConversationType int32 `gorm:"column:conversation_type" json:"conversationType"` - UserID string `gorm:"column:user_id;type:char(64)" json:"userID"` - GroupID string `gorm:"column:group_id;type:char(128)" json:"groupID"` - RecvMsgOpt int32 `gorm:"column:recv_msg_opt" json:"recvMsgOpt"` - IsPinned bool `gorm:"column:is_pinned" json:"isPinned"` - IsPrivateChat bool `gorm:"column:is_private_chat" json:"isPrivateChat"` - BurnDuration int32 `gorm:"column:burn_duration;default:30" json:"burnDuration"` - GroupAtType int32 `gorm:"column:group_at_type" json:"groupAtType"` - AttachedInfo string `gorm:"column:attached_info;type:varchar(1024)" json:"attachedInfo"` - Ex string `gorm:"column:ex;type:varchar(1024)" json:"ex"` - MaxSeq int64 `gorm:"column:max_seq" json:"maxSeq"` - MinSeq int64 `gorm:"column:min_seq" json:"minSeq"` + OwnerUserID string `gorm:"column:owner_user_id;primary_key;type:char(128)" json:"OwnerUserID"` + ConversationID string `gorm:"column:conversation_id;primary_key;type:char(128)" json:"conversationID"` + ConversationType int32 `gorm:"column:conversation_type" json:"conversationType"` + UserID string `gorm:"column:user_id;type:char(64)" json:"userID"` + GroupID string `gorm:"column:group_id;type:char(128)" json:"groupID"` + RecvMsgOpt int32 `gorm:"column:recv_msg_opt" json:"recvMsgOpt"` + IsPinned bool `gorm:"column:is_pinned" json:"isPinned"` + IsPrivateChat bool `gorm:"column:is_private_chat" json:"isPrivateChat"` + BurnDuration int32 `gorm:"column:burn_duration;default:30" json:"burnDuration"` + GroupAtType int32 `gorm:"column:group_at_type" json:"groupAtType"` + AttachedInfo string `gorm:"column:attached_info;type:varchar(1024)" json:"attachedInfo"` + Ex string `gorm:"column:ex;type:varchar(1024)" json:"ex"` + MaxSeq int64 `gorm:"column:max_seq" json:"maxSeq"` + MinSeq int64 `gorm:"column:min_seq" json:"minSeq"` CreateTime time.Time `gorm:"column:create_time;index:create_time;autoCreateTime"` IsMsgDestruct bool `gorm:"column:is_msg_destruct;default:false"` MsgDestructTime int64 `gorm:"column:msg_destruct_time;default:604800"` diff --git a/pkg/common/db/table/unrelation/msg.go b/pkg/common/db/table/unrelation/msg.go index 3a8725f36..ac4602d35 100644 --- a/pkg/common/db/table/unrelation/msg.go +++ b/pkg/common/db/table/unrelation/msg.go @@ -16,10 +16,11 @@ package unrelation import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "strconv" "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + "go.mongodb.org/mongo-driver/mongo" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" diff --git a/pkg/common/db/unrelation/mongo.go b/pkg/common/db/unrelation/mongo.go index 9ce9929c5..9c9f7db3b 100644 --- a/pkg/common/db/unrelation/mongo.go +++ b/pkg/common/db/unrelation/mongo.go @@ -32,14 +32,14 @@ import ( ) const ( - maxRetry = 10 //number of retries + maxRetry = 10 // number of retries ) type Mongo struct { db *mongo.Client } -// NewMongo Initialize MongoDB connection +// NewMongo Initialize MongoDB connection. func NewMongo() (*Mongo, error) { specialerror.AddReplace(mongo.ErrNoDocuments, errs.ErrRecordNotFound) uri := "mongodb://sample.host:27017/?maxPoolSize=20&w=majority" diff --git a/pkg/common/db/unrelation/msg.go b/pkg/common/db/unrelation/msg.go index 5d26d45b2..f9e9a7132 100644 --- a/pkg/common/db/unrelation/msg.go +++ b/pkg/common/db/unrelation/msg.go @@ -19,9 +19,10 @@ import ( "encoding/json" "errors" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "go.mongodb.org/mongo-driver/bson" @@ -80,7 +81,7 @@ func (m *MsgMongoDriver) UpdateMsg( return res, nil } -// PushUnique value must slice +// PushUnique value must slice. func (m *MsgMongoDriver) PushUnique( ctx context.Context, docID string, @@ -555,7 +556,7 @@ func (m *MsgMongoDriver) MarkSingleChatMsgsAsRead( // } // } // -// ]) +// ]). func (m *MsgMongoDriver) RangeUserSendCount( ctx context.Context, start time.Time, @@ -1081,21 +1082,21 @@ func (m *MsgMongoDriver) SearchMessage(ctx context.Context, req *msg.SearchMessa func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessageReq) ([]*table.MsgInfoModel, error) { var pipe mongo.Pipeline - conditon := bson.A{} + condition := bson.A{} if req.SendTime != "" { - conditon = append(conditon, bson.M{"$eq": bson.A{bson.M{"$dateToString": bson.M{"format": "%Y-%m-%d", "date": bson.M{"$toDate": "$$item.msg.send_time"}}}, req.SendTime}}) + condition = append(condition, bson.M{"$eq": bson.A{bson.M{"$dateToString": bson.M{"format": "%Y-%m-%d", "date": bson.M{"$toDate": "$$item.msg.send_time"}}}, req.SendTime}}) } if req.MsgType != 0 { - conditon = append(conditon, bson.M{"$eq": bson.A{"$$item.msg.content_type", req.MsgType}}) + condition = append(condition, bson.M{"$eq": bson.A{"$$item.msg.content_type", req.MsgType}}) } if req.SessionType != 0 { - conditon = append(conditon, bson.M{"$eq": bson.A{"$$item.msg.session_type", req.SessionType}}) + condition = append(condition, bson.M{"$eq": bson.A{"$$item.msg.session_type", req.SessionType}}) } if req.RecvID != "" { - conditon = append(conditon, bson.M{"$regexFind": bson.M{"input": "$$item.msg.recv_id", "regex": req.RecvID}}) + condition = append(condition, bson.M{"$regexFind": bson.M{"input": "$$item.msg.recv_id", "regex": req.RecvID}}) } if req.SendID != "" { - conditon = append(conditon, bson.M{"$regexFind": bson.M{"input": "$$item.msg.send_id", "regex": req.SendID}}) + condition = append(condition, bson.M{"$regexFind": bson.M{"input": "$$item.msg.send_id", "regex": req.SendID}}) } or := bson.A{ @@ -1131,15 +1132,20 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa }, { {"$project", bson.D{ - {"msgs", bson.D{ - {"$filter", bson.D{ - {"input", "$msgs"}, - {"as", "item"}, - {"cond", bson.D{ - {"$and", conditon}, + { + "msgs", bson.D{ + { + "$filter", bson.D{ + {"input", "$msgs"}, + {"as", "item"}, + { + "cond", bson.D{ + {"$and", condition}, + }, + }, + }, }, - }}, - }}, + }, }, {"doc_id", 1}, }}, @@ -1159,7 +1165,7 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa return nil, errs.Wrap(mongo.ErrNoDocuments) } msgs := make([]*table.MsgInfoModel, 0) - for index, _ := range msgsDocs { + for index := range msgsDocs { for i := range msgsDocs[index].Msg { msg := msgsDocs[index].Msg[i] if msg == nil || msg.Msg == nil { diff --git a/pkg/common/kafka/consumer_group.go b/pkg/common/kafka/consumer_group.go index 0f801e8b2..60e69d4a6 100644 --- a/pkg/common/kafka/consumer_group.go +++ b/pkg/common/kafka/consumer_group.go @@ -52,7 +52,6 @@ func NewMConsumerGroup(consumerConfig *MConsumerGroupConfig, topics, addrs []str func (mc *MConsumerGroup) GetContextFromMsg(cMsg *sarama.ConsumerMessage) context.Context { return GetContextWithMQHeader(cMsg.Headers) - } func (mc *MConsumerGroup) RegisterHandleAndConsumer(handler sarama.ConsumerGroupHandler) { diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index a749c76f8..d52d76817 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -17,12 +17,13 @@ package kafka import ( "context" "errors" + "time" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" log "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "time" "github.com/Shopify/sarama" "google.golang.org/protobuf/proto" @@ -31,7 +32,7 @@ import ( ) const ( - maxRetry = 10 //number of retries + maxRetry = 10 // number of retries ) var errEmptyMsg = errors.New("binary msg is empty") @@ -43,14 +44,14 @@ type Producer struct { producer sarama.SyncProducer } -// NewKafkaProducer Initialize kafka producer +// NewKafkaProducer Initialize kafka producer. func NewKafkaProducer(addr []string, topic string) *Producer { p := Producer{} - p.config = sarama.NewConfig() //Instantiate a sarama Config - p.config.Producer.Return.Successes = true //Whether to enable the successes channel to be notified after the message is sent successfully + p.config = sarama.NewConfig() // Instantiate a sarama Config + p.config.Producer.Return.Successes = true // Whether to enable the successes channel to be notified after the message is sent successfully p.config.Producer.Return.Errors = true - p.config.Producer.RequiredAcks = sarama.WaitForAll //Set producer Message Reply level 0 1 all - p.config.Producer.Partitioner = sarama.NewHashPartitioner //Set the hash-key automatic hash partition. When sending a message, you must specify the key value of the message. If there is no key, the partition will be selected randomly + p.config.Producer.RequiredAcks = sarama.WaitForAll // Set producer Message Reply level 0 1 all + p.config.Producer.Partitioner = sarama.NewHashPartitioner // Set the hash-key automatic hash partition. When sending a message, you must specify the key value of the message. If there is no key, the partition will be selected randomly if config.Config.Kafka.Username != "" && config.Config.Kafka.Password != "" { p.config.Net.SASL.Enable = true p.config.Net.SASL.User = config.Config.Kafka.Username @@ -61,7 +62,7 @@ func NewKafkaProducer(addr []string, topic string) *Producer { var producer sarama.SyncProducer var err error for i := 0; i <= maxRetry; i++ { - producer, err = sarama.NewSyncProducer(p.addr, p.config) //Initialize the client + producer, err = sarama.NewSyncProducer(p.addr, p.config) // Initialize the client if err == nil { p.producer = producer return &p @@ -92,7 +93,8 @@ func GetMQHeaderWithContext(ctx context.Context) ([]sarama.RecordHeader, error) {Key: []byte(constant.OperationID), Value: []byte(operationID)}, {Key: []byte(constant.OpUserID), Value: []byte(opUserID)}, {Key: []byte(constant.OpUserPlatform), Value: []byte(platform)}, - {Key: []byte(constant.ConnID), Value: []byte(connID)}}, err + {Key: []byte(constant.ConnID), Value: []byte(connID)}, + }, err } func GetContextWithMQHeader(header []*sarama.RecordHeader) context.Context { diff --git a/pkg/common/log/zap.go b/pkg/common/log/zap.go index 9cf3fe144..9d57acf85 100644 --- a/pkg/common/log/zap.go +++ b/pkg/common/log/zap.go @@ -45,7 +45,7 @@ var ( } ) -// InitFromConfig initializes a Zap-based logger +// InitFromConfig initializes a Zap-based logger. func InitFromConfig( loggerPrefixName, moduleName string, logLevel int, @@ -183,7 +183,6 @@ func (l *ZapLogger) customCallerEncoder(caller zapcore.EntryCaller, enc zapcore. // color = _levelToColor[zapcore.ErrorLevel] // } enc.AppendString(s) - } func (l *ZapLogger) timeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder) { diff --git a/pkg/common/mw/gin.go b/pkg/common/mw/gin.go index a544c2a25..287cd5f53 100644 --- a/pkg/common/mw/gin.go +++ b/pkg/common/mw/gin.go @@ -53,7 +53,7 @@ func CorsHandler() gin.HandlerFunc { "content-type", "application/json", ) // Set the return format to json. - //Release all option pre-requests + // Release all option pre-requests if c.Request.Method == http.MethodOptions { c.JSON(http.StatusOK, "Options Request!") c.Abort() diff --git a/pkg/common/prome/gather.go b/pkg/common/prome/gather.go index 910df71d9..eb4bc6c3b 100644 --- a/pkg/common/prome/gather.go +++ b/pkg/common/prome/gather.go @@ -20,17 +20,17 @@ import ( ) var ( - //auth rpc + // auth rpc. UserLoginCounter prometheus.Counter UserRegisterCounter prometheus.Counter - //seg + // seg. SeqGetSuccessCounter prometheus.Counter SeqGetFailedCounter prometheus.Counter SeqSetSuccessCounter prometheus.Counter SeqSetFailedCounter prometheus.Counter - //msg-db + // msg-db. MsgInsertRedisSuccessCounter prometheus.Counter MsgInsertRedisFailedCounter prometheus.Counter MsgInsertMongoSuccessCounter prometheus.Counter @@ -40,7 +40,7 @@ var ( MsgPullFromMongoSuccessCounter prometheus.Counter MsgPullFromMongoFailedCounter prometheus.Counter - //msg-ws + // msg-ws. MsgRecvTotalCounter prometheus.Counter GetNewestSeqTotalCounter prometheus.Counter PullMsgBySeqListTotalCounter prometheus.Counter @@ -50,7 +50,7 @@ var ( WorkSuperGroupChatMsgRecvSuccessCounter prometheus.Counter OnlineUserGauge prometheus.Gauge - //msg-msg + // msg-msg. SingleChatMsgProcessSuccessCounter prometheus.Counter SingleChatMsgProcessFailedCounter prometheus.Counter GroupChatMsgProcessSuccessCounter prometheus.Counter @@ -58,23 +58,23 @@ var ( WorkSuperGroupChatMsgProcessSuccessCounter prometheus.Counter WorkSuperGroupChatMsgProcessFailedCounter prometheus.Counter - //msg-push + // msg-push. MsgOnlinePushSuccessCounter prometheus.Counter MsgOfflinePushSuccessCounter prometheus.Counter MsgOfflinePushFailedCounter prometheus.Counter - // api + // api. ApiRequestCounter prometheus.Counter ApiRequestSuccessCounter prometheus.Counter ApiRequestFailedCounter prometheus.Counter - // grpc + // grpc. GrpcRequestCounter prometheus.Counter GrpcRequestSuccessCounter prometheus.Counter GrpcRequestFailedCounter prometheus.Counter SendMsgCounter prometheus.Counter - // conversation + // conversation. ConversationCreateSuccessCounter prometheus.Counter ConversationCreateFailedCounter prometheus.Counter ) @@ -88,6 +88,7 @@ func NewUserLoginCounter() { Help: "The number of user login", }) } + func NewUserRegisterCounter() { if UserRegisterCounter != nil { return @@ -107,6 +108,7 @@ func NewSeqGetSuccessCounter() { Help: "The number of successful get seq", }) } + func NewSeqGetFailedCounter() { if SeqGetFailedCounter != nil { return @@ -126,6 +128,7 @@ func NewSeqSetSuccessCounter() { Help: "The number of successful set seq", }) } + func NewSeqSetFailedCounter() { if SeqSetFailedCounter != nil { return @@ -305,6 +308,7 @@ func NewGetNewestSeqTotalCounter() { Help: "the number of get newest seq", }) } + func NewPullMsgBySeqListTotalCounter() { if PullMsgBySeqListTotalCounter != nil { return @@ -404,6 +408,7 @@ func NewWorkSuperGroupChatMsgProcessSuccessCounter() { Help: "The number of work/super group chat msg successful processed", }) } + func NewWorkSuperGroupChatMsgProcessFailedCounter() { if WorkSuperGroupChatMsgProcessFailedCounter != nil { return @@ -433,6 +438,7 @@ func NewMsgOfflinePushSuccessCounter() { Help: "The number of msg successful offline pushed", }) } + func NewMsgOfflinePushFailedCounter() { if MsgOfflinePushFailedCounter != nil { return diff --git a/pkg/common/tokenverify/jwt_token.go b/pkg/common/tokenverify/jwt_token.go index 68fee2602..317347b1d 100644 --- a/pkg/common/tokenverify/jwt_token.go +++ b/pkg/common/tokenverify/jwt_token.go @@ -29,7 +29,7 @@ import ( type Claims struct { UserID string - PlatformID int //login platform + PlatformID int // login platform jwt.RegisteredClaims } @@ -40,10 +40,11 @@ func BuildClaims(uid string, platformID int, ttl int64) Claims { UserID: uid, PlatformID: platformID, RegisteredClaims: jwt.RegisteredClaims{ - ExpiresAt: jwt.NewNumericDate(now.Add(time.Duration(ttl*24) * time.Hour)), //Expiration time - IssuedAt: jwt.NewNumericDate(now), //Issuing time - NotBefore: jwt.NewNumericDate(before), //Begin Effective time - }} + ExpiresAt: jwt.NewNumericDate(now.Add(time.Duration(ttl*24) * time.Hour)), // Expiration time + IssuedAt: jwt.NewNumericDate(now), // Issuing time + NotBefore: jwt.NewNumericDate(before), // Begin Effective time + }, + } } func secret() jwt.Keyfunc { @@ -101,9 +102,11 @@ func CheckAdmin(ctx context.Context) error { func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) { return GetClaimFromToken(string(redisToken.([]uint8))) } + func IsManagerUserID(opUserID string) bool { return utils.IsContain(opUserID, config.Config.Manager.UserID) } + func WsVerifyToken(token, userID string, platformID int) error { claim, err := GetClaimFromToken(token) if err != nil { diff --git a/pkg/discoveryregistry/zookeeper/discover.go b/pkg/discoveryregistry/zookeeper/discover.go index 089d34afe..b56999911 100644 --- a/pkg/discoveryregistry/zookeeper/discover.go +++ b/pkg/discoveryregistry/zookeeper/discover.go @@ -20,17 +20,20 @@ import ( "io" "strings" + "github.com/pkg/errors" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/pkg/errors" "github.com/go-zookeeper/zk" "google.golang.org/grpc" "google.golang.org/grpc/resolver" ) -var ErrConnIsNil = errors.New("conn is nil") -var ErrConnIsNilButLocalNotNil = errors.New("conn is nil, but local is not nil") +var ( + ErrConnIsNil = errors.New("conn is nil") + ErrConnIsNilButLocalNotNil = errors.New("conn is nil, but local is not nil") +) func (s *ZkClient) watch() { for { @@ -54,7 +57,6 @@ func (s *ZkClient) watch() { case zk.EventNotWatching: } } - } func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) { diff --git a/pkg/errs/code.go b/pkg/errs/code.go index 4b7193824..9f70ab5e6 100644 --- a/pkg/errs/code.go +++ b/pkg/errs/code.go @@ -43,10 +43,10 @@ const ( CallbackError = 80000 - //通用错误码. - ServerInternalError = 500 //服务器内部错误 - ArgsError = 1001 //输入参数错误 - NoPermissionError = 1002 //权限不足 + // 通用错误码. + ServerInternalError = 500 // 服务器内部错误 + ArgsError = 1001 // 输入参数错误 + NoPermissionError = 1002 // 权限不足 DuplicateKeyError = 1003 RecordNotFoundError = 1004 // 记录不存在 diff --git a/pkg/proto/auth/auth.pb.go b/pkg/proto/auth/auth.pb.go index 2d1e0493c..238d12975 100644 --- a/pkg/proto/auth/auth.pb.go +++ b/pkg/proto/auth/auth.pb.go @@ -22,13 +22,14 @@ package auth import ( context "context" + reflect "reflect" + sync "sync" + 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 ( @@ -43,9 +44,9 @@ type UserTokenReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` + Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *UserTokenReq) Reset() { @@ -106,7 +107,7 @@ type UserTokenResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token"` ExpireTimeSeconds int64 `protobuf:"varint,3,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` } @@ -162,7 +163,7 @@ type ForceLogoutReq struct { unknownFields protoimpl.UnknownFields PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *ForceLogoutReq) Reset() { @@ -301,8 +302,8 @@ type ParseTokenResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform"` ExpireTimeSeconds int64 `protobuf:"varint,4,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` } diff --git a/pkg/proto/conversation/conversation.pb.go b/pkg/proto/conversation/conversation.pb.go index cf5de48a7..568948379 100644 --- a/pkg/proto/conversation/conversation.pb.go +++ b/pkg/proto/conversation/conversation.pb.go @@ -22,14 +22,16 @@ package conversation import ( context "context" - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + reflect "reflect" + sync "sync" + 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" + + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" ) const ( @@ -44,23 +46,23 @@ type Conversation struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - ConversationType int32 `protobuf:"varint,4,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,5,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,6,opt,name=groupID,proto3" json:"groupID"` - IsPinned bool `protobuf:"varint,7,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo string `protobuf:"bytes,8,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat bool `protobuf:"varint,9,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - GroupAtType int32 `protobuf:"varint,10,opt,name=groupAtType,proto3" json:"groupAtType"` - Ex string `protobuf:"bytes,11,opt,name=ex,proto3" json:"ex"` - BurnDuration int32 `protobuf:"varint,12,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq int64 `protobuf:"varint,13,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq int64 `protobuf:"varint,14,opt,name=maxSeq,proto3" json:"maxSeq"` - MsgDestructTime int64 `protobuf:"varint,15,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + ConversationType int32 `protobuf:"varint,4,opt,name=conversationType,proto3" json:"conversationType"` + UserID string `protobuf:"bytes,5,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,6,opt,name=groupID,proto3" json:"groupID"` + IsPinned bool `protobuf:"varint,7,opt,name=isPinned,proto3" json:"isPinned"` + AttachedInfo string `protobuf:"bytes,8,opt,name=attachedInfo,proto3" json:"attachedInfo"` + IsPrivateChat bool `protobuf:"varint,9,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` + GroupAtType int32 `protobuf:"varint,10,opt,name=groupAtType,proto3" json:"groupAtType"` + Ex string `protobuf:"bytes,11,opt,name=ex,proto3" json:"ex"` + BurnDuration int32 `protobuf:"varint,12,opt,name=burnDuration,proto3" json:"burnDuration"` + MinSeq int64 `protobuf:"varint,13,opt,name=minSeq,proto3" json:"minSeq"` + MaxSeq int64 `protobuf:"varint,14,opt,name=maxSeq,proto3" json:"maxSeq"` + MsgDestructTime int64 `protobuf:"varint,15,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` LatestMsgDestructTime int64 `protobuf:"varint,16,opt,name=latestMsgDestructTime,proto3" json:"latestMsgDestructTime"` - IsMsgDestruct bool `protobuf:"varint,17,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` + IsMsgDestruct bool `protobuf:"varint,17,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` } func (x *Conversation) Reset() { @@ -219,21 +221,21 @@ type ConversationReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` + ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` ConversationType int32 `protobuf:"varint,2,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID"` - RecvMsgOpt *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - IsPinned *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - Ex *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - BurnDuration *wrapperspb.Int32Value `protobuf:"bytes,10,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=maxSeq,proto3" json:"maxSeq"` - GroupAtType *wrapperspb.Int32Value `protobuf:"bytes,13,opt,name=groupAtType,proto3" json:"groupAtType"` - MsgDestructTime *wrapperspb.Int64Value `protobuf:"bytes,14,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` - IsMsgDestruct *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID"` + RecvMsgOpt *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + IsPinned *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=isPinned,proto3" json:"isPinned"` + AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=attachedInfo,proto3" json:"attachedInfo"` + IsPrivateChat *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` + Ex *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + BurnDuration *wrapperspb.Int32Value `protobuf:"bytes,10,opt,name=burnDuration,proto3" json:"burnDuration"` + MinSeq *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=minSeq,proto3" json:"minSeq"` + MaxSeq *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=maxSeq,proto3" json:"maxSeq"` + GroupAtType *wrapperspb.Int32Value `protobuf:"bytes,13,opt,name=groupAtType,proto3" json:"groupAtType"` + MsgDestructTime *wrapperspb.Int64Value `protobuf:"bytes,14,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` + IsMsgDestruct *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` } func (x *ConversationReq) Reset() { @@ -464,7 +466,7 @@ type GetConversationReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` } func (x *GetConversationReq) Reset() { @@ -565,7 +567,7 @@ type GetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` } @@ -1042,8 +1044,8 @@ type SetConversationMaxSeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID []string `protobuf:"bytes,2,rep,name=ownerUserID,proto3" json:"ownerUserID"` - MaxSeq int64 `protobuf:"varint,3,opt,name=maxSeq,proto3" json:"maxSeq"` + OwnerUserID []string `protobuf:"bytes,2,rep,name=ownerUserID,proto3" json:"ownerUserID"` + MaxSeq int64 `protobuf:"varint,3,opt,name=maxSeq,proto3" json:"maxSeq"` } func (x *SetConversationMaxSeqReq) Reset() { @@ -1236,7 +1238,7 @@ type SetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` + UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` Conversation *ConversationReq `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation"` } diff --git a/pkg/proto/errinfo/errinfo.pb.go b/pkg/proto/errinfo/errinfo.pb.go index 44f906d86..1beca5842 100644 --- a/pkg/proto/errinfo/errinfo.pb.go +++ b/pkg/proto/errinfo/errinfo.pb.go @@ -21,10 +21,11 @@ package errinfo import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" ) const ( @@ -39,11 +40,11 @@ type ErrorInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path"` + Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path"` Line uint32 `protobuf:"varint,2,opt,name=line,proto3" json:"line"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` Cause string `protobuf:"bytes,4,opt,name=cause,proto3" json:"cause"` - Warp []string `protobuf:"bytes,5,rep,name=warp,proto3" json:"warp"` + Warp []string `protobuf:"bytes,5,rep,name=warp,proto3" json:"warp"` } func (x *ErrorInfo) Reset() { diff --git a/pkg/proto/friend/friend.pb.go b/pkg/proto/friend/friend.pb.go index 5745fcd3c..7439a475a 100644 --- a/pkg/proto/friend/friend.pb.go +++ b/pkg/proto/friend/friend.pb.go @@ -22,14 +22,16 @@ package friend import ( context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" + 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" + + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) const ( @@ -45,7 +47,7 @@ type GetPaginationFriendsReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *GetPaginationFriendsReq) Reset() { @@ -100,7 +102,7 @@ type GetPaginationFriendsResp struct { unknownFields protoimpl.UnknownFields FriendsInfo []*sdkws.FriendInfo `protobuf:"bytes,1,rep,name=friendsInfo,proto3" json:"friendsInfo"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsResp) Reset() { @@ -155,9 +157,9 @@ type ApplyToAddFriendReq struct { unknownFields protoimpl.UnknownFields FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` + ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` } func (x *ApplyToAddFriendReq) Reset() { @@ -263,7 +265,7 @@ type ImportFriendReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` } @@ -356,7 +358,7 @@ type GetPaginationFriendsApplyToReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -412,7 +414,7 @@ type GetPaginationFriendsApplyToResp struct { unknownFields protoimpl.UnknownFields FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=FriendRequests,proto3" json:"FriendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsApplyToResp) Reset() { @@ -466,7 +468,7 @@ type GetDesignatedFriendsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` } @@ -754,7 +756,7 @@ type GetPaginationBlacksReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -1084,7 +1086,7 @@ type DeleteFriendReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` } @@ -1178,10 +1180,10 @@ type RespondFriendApplyReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` //主动发起的申请者 - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` //被动添加者 + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` //主动发起的申请者 + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` //被动添加者 HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *RespondFriendApplyReq) Reset() { @@ -1287,9 +1289,9 @@ type SetFriendRemarkReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` - Remark string `protobuf:"bytes,3,opt,name=remark,proto3" json:"remark"` + Remark string `protobuf:"bytes,3,opt,name=remark,proto3" json:"remark"` } func (x *SetFriendRemarkReq) Reset() { @@ -1388,7 +1390,7 @@ type GetPaginationFriendsApplyFromReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -1444,7 +1446,7 @@ type GetPaginationFriendsApplyFromResp struct { unknownFields protoimpl.UnknownFields FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=friendRequests,proto3" json:"friendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsApplyFromResp) Reset() { diff --git a/pkg/proto/group/group.pb.go b/pkg/proto/group/group.pb.go index f4230c794..32261fc7c 100644 --- a/pkg/proto/group/group.pb.go +++ b/pkg/proto/group/group.pb.go @@ -22,15 +22,17 @@ package group import ( context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + reflect "reflect" + sync "sync" + 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" + + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" ) const ( @@ -46,9 +48,9 @@ type CreateGroupReq struct { unknownFields protoimpl.UnknownFields MemberUserIDs []string `protobuf:"bytes,1,rep,name=memberUserIDs,proto3" json:"memberUserIDs"` - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - AdminUserIDs []string `protobuf:"bytes,3,rep,name=adminUserIDs,proto3" json:"adminUserIDs"` - OwnerUserID string `protobuf:"bytes,4,opt,name=ownerUserID,proto3" json:"ownerUserID"` //owner + GroupInfo *sdkws.GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` + AdminUserIDs []string `protobuf:"bytes,3,rep,name=adminUserIDs,proto3" json:"adminUserIDs"` + OwnerUserID string `protobuf:"bytes,4,opt,name=ownerUserID,proto3" json:"ownerUserID"` //owner } func (x *CreateGroupReq) Reset() { @@ -397,7 +399,7 @@ type GetGroupApplicationListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` } @@ -453,7 +455,7 @@ type GetUserReqApplicationListReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *GetUserReqApplicationListReq) Reset() { @@ -507,7 +509,7 @@ type GetUserReqApplicationListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` } @@ -562,7 +564,7 @@ type TransferGroupOwnerReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` OldOwnerUserID string `protobuf:"bytes,2,opt,name=oldOwnerUserID,proto3" json:"oldOwnerUserID"` NewOwnerUserID string `protobuf:"bytes,3,opt,name=newOwnerUserID,proto3" json:"newOwnerUserID"` } @@ -663,9 +665,9 @@ type JoinGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - ReqMessage string `protobuf:"bytes,2,opt,name=reqMessage,proto3" json:"reqMessage"` - JoinSource int32 `protobuf:"varint,3,opt,name=joinSource,proto3" json:"joinSource"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + ReqMessage string `protobuf:"bytes,2,opt,name=reqMessage,proto3" json:"reqMessage"` + JoinSource int32 `protobuf:"varint,3,opt,name=joinSource,proto3" json:"joinSource"` InviterUserID string `protobuf:"bytes,4,opt,name=inviterUserID,proto3" json:"inviterUserID"` } @@ -772,9 +774,9 @@ type GroupApplicationResponseReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` // - HandledMsg string `protobuf:"bytes,3,opt,name=handledMsg,proto3" json:"handledMsg"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` // + HandledMsg string `protobuf:"bytes,3,opt,name=handledMsg,proto3" json:"handledMsg"` HandleResult int32 `protobuf:"varint,4,opt,name=handleResult,proto3" json:"handleResult"` } @@ -967,8 +969,8 @@ type GetGroupMemberListReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - Filter int32 `protobuf:"varint,3,opt,name=filter,proto3" json:"filter"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + Filter int32 `protobuf:"varint,3,opt,name=filter,proto3" json:"filter"` } func (x *GetGroupMemberListReq) Reset() { @@ -1029,7 +1031,7 @@ type GetGroupMemberListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` } @@ -1186,9 +1188,9 @@ type KickGroupMemberReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` KickedUserIDs []string `protobuf:"bytes,2,rep,name=kickedUserIDs,proto3" json:"kickedUserIDs"` - Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason"` + Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason"` } func (x *KickGroupMemberReq) Reset() { @@ -1397,8 +1399,8 @@ type InviteUserToGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason"` InvitedUserIDs []string `protobuf:"bytes,3,rep,name=invitedUserIDs,proto3" json:"invitedUserIDs"` } @@ -1499,7 +1501,7 @@ type GetGroupAllMemberReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` } func (x *GetGroupAllMemberReq) Reset() { @@ -1600,9 +1602,9 @@ type CMSGroup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` + GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` GroupOwnerUserName string `protobuf:"bytes,2,opt,name=groupOwnerUserName,proto3" json:"groupOwnerUserName"` - GroupOwnerUserID string `protobuf:"bytes,3,opt,name=groupOwnerUserID,proto3" json:"groupOwnerUserID"` + GroupOwnerUserID string `protobuf:"bytes,3,opt,name=groupOwnerUserID,proto3" json:"groupOwnerUserID"` } func (x *CMSGroup) Reset() { @@ -1664,8 +1666,8 @@ type GetGroupsReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` } func (x *GetGroupsReq) Reset() { @@ -1829,8 +1831,8 @@ type GetGroupMembersCMSReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName"` } func (x *GetGroupMembersCMSReq) Reset() { @@ -1891,7 +1893,7 @@ type GetGroupMembersCMSResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` } @@ -1946,7 +1948,7 @@ type DismissGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` DeleteMember bool `protobuf:"varint,2,opt,name=deleteMember,proto3" json:"deleteMember"` } @@ -2039,8 +2041,8 @@ type MuteGroupMemberReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` MutedSeconds uint32 `protobuf:"varint,3,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` } @@ -2141,7 +2143,7 @@ type CancelMuteGroupMemberReq struct { unknownFields protoimpl.UnknownFields GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *CancelMuteGroupMemberReq) Reset() { @@ -2591,12 +2593,12 @@ type SetGroupMemberInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - Nickname *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname"` - FaceURL *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=faceURL,proto3" json:"faceURL"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + Nickname *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname"` + FaceURL *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=faceURL,proto3" json:"faceURL"` RoleLevel *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=roleLevel,proto3" json:"roleLevel"` - Ex *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + Ex *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` } func (x *SetGroupMemberInfo) Reset() { @@ -2810,8 +2812,8 @@ type GroupAbstractInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupMemberNumber uint32 `protobuf:"varint,2,opt,name=groupMemberNumber,proto3" json:"groupMemberNumber"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupMemberNumber uint32 `protobuf:"varint,2,opt,name=groupMemberNumber,proto3" json:"groupMemberNumber"` GroupMemberListHash uint64 `protobuf:"varint,3,opt,name=groupMemberListHash,proto3" json:"groupMemberListHash"` } @@ -2920,7 +2922,7 @@ type GetUserInGroupMembersReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` GroupIDs []string `protobuf:"bytes,2,rep,name=groupIDs,proto3" json:"groupIDs"` } @@ -3116,7 +3118,7 @@ type GetGroupMemberRoleLevelReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` RoleLevels []int32 `protobuf:"varint,2,rep,packed,name=roleLevels,proto3" json:"roleLevels"` } @@ -3312,7 +3314,7 @@ type GetGroupMemberCacheReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` GroupMemberID string `protobuf:"bytes,2,opt,name=groupMemberID,proto3" json:"groupMemberID"` } @@ -3415,7 +3417,7 @@ type GroupCreateCountReq struct { unknownFields protoimpl.UnknownFields Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` } func (x *GroupCreateCountReq) Reset() { @@ -3469,9 +3471,9 @@ type GroupCreateCountResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } func (x *GroupCreateCountResp) Reset() { diff --git a/pkg/proto/msg/msg.pb.go b/pkg/proto/msg/msg.pb.go index 019d10ef8..b8b8efd6e 100644 --- a/pkg/proto/msg/msg.pb.go +++ b/pkg/proto/msg/msg.pb.go @@ -22,14 +22,16 @@ package msg import ( context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" + 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" + + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) const ( @@ -44,7 +46,7 @@ type MsgDataToMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` MsgData *sdkws.MsgData `protobuf:"bytes,2,opt,name=msgData,proto3" json:"msgData"` } @@ -146,7 +148,7 @@ type PushMsgDataToMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -201,9 +203,9 @@ type MsgDataToMongoByMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LastSeq int64 `protobuf:"varint,1,opt,name=lastSeq,proto3" json:"lastSeq"` + LastSeq int64 `protobuf:"varint,1,opt,name=lastSeq,proto3" json:"lastSeq"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - MsgData []*sdkws.MsgData `protobuf:"bytes,3,rep,name=msgData,proto3" json:"msgData"` + MsgData []*sdkws.MsgData `protobuf:"bytes,3,rep,name=msgData,proto3" json:"msgData"` } func (x *MsgDataToMongoByMQ) Reset() { @@ -415,7 +417,7 @@ type SendMsgResp struct { ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` } func (x *SendMsgResp) Reset() { @@ -646,7 +648,7 @@ type MsgDataToModifyByMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Messages []*sdkws.MsgData `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages"` + Messages []*sdkws.MsgData `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -778,8 +780,8 @@ type RevokeMsgReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seq int64 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + Seq int64 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *RevokeMsgReq) Reset() { @@ -879,8 +881,8 @@ type MarkMsgsAsReadReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *MarkMsgsAsReadReq) Reset() { @@ -980,9 +982,9 @@ type MarkConversationAsReadReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` - Seqs []int64 `protobuf:"varint,4,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + Seqs []int64 `protobuf:"varint,4,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *MarkConversationAsReadReq) Reset() { @@ -1089,8 +1091,8 @@ type SetConversationHasReadSeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } func (x *SetConversationHasReadSeqReq) Reset() { @@ -1189,7 +1191,7 @@ type DeleteSyncOpt struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsSyncSelf bool `protobuf:"varint,3,opt,name=IsSyncSelf,proto3" json:"IsSyncSelf"` + IsSyncSelf bool `protobuf:"varint,3,opt,name=IsSyncSelf,proto3" json:"IsSyncSelf"` IsSyncOther bool `protobuf:"varint,4,opt,name=IsSyncOther,proto3" json:"IsSyncOther"` } @@ -1245,8 +1247,8 @@ type ClearConversationsMsgReq struct { unknownFields protoimpl.UnknownFields ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } func (x *ClearConversationsMsgReq) Reset() { @@ -1345,7 +1347,7 @@ type UserClearAllMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } @@ -1439,9 +1441,9 @@ type DeleteMsgsReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,4,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,4,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } func (x *DeleteMsgsReq) Reset() { @@ -1548,7 +1550,7 @@ type DeleteMsgPhysicalReq struct { unknownFields protoimpl.UnknownFields ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp"` + Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp"` } func (x *DeleteMsgPhysicalReq) Reset() { @@ -1641,7 +1643,7 @@ type DeleteMsgPhysicalBySeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *DeleteMsgPhysicalBySeqReq) Reset() { @@ -1874,7 +1876,7 @@ type Seqs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` + MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` HasReadSeq int64 `protobuf:"varint,2,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } @@ -1976,10 +1978,10 @@ type GetActiveUserReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` - Group bool `protobuf:"varint,4,opt,name=group,proto3" json:"group"` + Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` + Group bool `protobuf:"varint,4,opt,name=group,proto3" json:"group"` Pagination *sdkws.RequestPagination `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination"` } @@ -2055,7 +2057,7 @@ type ActiveUser struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - User *sdkws.UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user"` + User *sdkws.UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user"` Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } @@ -2110,10 +2112,10 @@ type GetActiveUserResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` + MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` UserCount int64 `protobuf:"varint,2,opt,name=userCount,proto3" json:"userCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Users []*ActiveUser `protobuf:"bytes,4,rep,name=users,proto3" json:"users"` + DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Users []*ActiveUser `protobuf:"bytes,4,rep,name=users,proto3" json:"users"` } func (x *GetActiveUserResp) Reset() { @@ -2181,9 +2183,9 @@ type GetActiveGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` + Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` Pagination *sdkws.RequestPagination `protobuf:"bytes,4,opt,name=pagination,proto3" json:"pagination"` } @@ -2252,7 +2254,7 @@ type ActiveGroup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + Group *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } @@ -2307,10 +2309,10 @@ type GetActiveGroupResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` + MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` GroupCount int64 `protobuf:"varint,2,opt,name=groupCount,proto3" json:"groupCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Groups []*ActiveGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups"` + DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Groups []*ActiveGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups"` } func (x *GetActiveGroupResp) Reset() { @@ -2378,12 +2380,12 @@ type SearchMessageReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` //发送者ID - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` //接收者ID - MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType"` - SendTime string `protobuf:"bytes,4,opt,name=sendTime,proto3" json:"sendTime"` + SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` //发送者ID + RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` //接收者ID + MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType"` + SendTime string `protobuf:"bytes,4,opt,name=sendTime,proto3" json:"sendTime"` SessionType int32 `protobuf:"varint,5,opt,name=sessionType,proto3" json:"sessionType"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,6,opt,name=pagination,proto3" json:"pagination"` + Pagination *sdkws.RequestPagination `protobuf:"bytes,6,opt,name=pagination,proto3" json:"pagination"` } func (x *SearchMessageReq) Reset() { @@ -2465,7 +2467,7 @@ type SearchMessageResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ChatLogs []*ChatLog `protobuf:"bytes,1,rep,name=chatLogs,proto3" json:"chatLogs"` + ChatLogs []*ChatLog `protobuf:"bytes,1,rep,name=chatLogs,proto3" json:"chatLogs"` ChatLogsNum int32 `protobuf:"varint,2,opt,name=chatLogsNum,proto3" json:"chatLogsNum"` } @@ -2520,29 +2522,29 @@ type ChatLog struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendID string `protobuf:"bytes,3,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,4,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,5,opt,name=groupID,proto3" json:"groupID"` - RecvNickname string `protobuf:"bytes,6,opt,name=recvNickname,proto3" json:"recvNickname"` - SenderPlatformID int32 `protobuf:"varint,7,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,8,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,9,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - GroupName string `protobuf:"bytes,10,opt,name=groupName,proto3" json:"groupName"` - SessionType int32 `protobuf:"varint,11,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,12,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,13,opt,name=contentType,proto3" json:"contentType"` - Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content"` - Status int32 `protobuf:"varint,15,opt,name=status,proto3" json:"status"` - SendTime int64 `protobuf:"varint,16,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,17,opt,name=createTime,proto3" json:"createTime"` - Ex string `protobuf:"bytes,18,opt,name=ex,proto3" json:"ex"` - GroupFaceURL string `protobuf:"bytes,19,opt,name=groupFaceURL,proto3" json:"groupFaceURL"` + ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` + ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` + SendID string `protobuf:"bytes,3,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,4,opt,name=recvID,proto3" json:"recvID"` + GroupID string `protobuf:"bytes,5,opt,name=groupID,proto3" json:"groupID"` + RecvNickname string `protobuf:"bytes,6,opt,name=recvNickname,proto3" json:"recvNickname"` + SenderPlatformID int32 `protobuf:"varint,7,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` + SenderNickname string `protobuf:"bytes,8,opt,name=senderNickname,proto3" json:"senderNickname"` + SenderFaceURL string `protobuf:"bytes,9,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` + GroupName string `protobuf:"bytes,10,opt,name=groupName,proto3" json:"groupName"` + SessionType int32 `protobuf:"varint,11,opt,name=sessionType,proto3" json:"sessionType"` + MsgFrom int32 `protobuf:"varint,12,opt,name=msgFrom,proto3" json:"msgFrom"` + ContentType int32 `protobuf:"varint,13,opt,name=contentType,proto3" json:"contentType"` + Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content"` + Status int32 `protobuf:"varint,15,opt,name=status,proto3" json:"status"` + SendTime int64 `protobuf:"varint,16,opt,name=sendTime,proto3" json:"sendTime"` + CreateTime int64 `protobuf:"varint,17,opt,name=createTime,proto3" json:"createTime"` + Ex string `protobuf:"bytes,18,opt,name=ex,proto3" json:"ex"` + GroupFaceURL string `protobuf:"bytes,19,opt,name=groupFaceURL,proto3" json:"groupFaceURL"` GroupMemberCount uint32 `protobuf:"varint,20,opt,name=groupMemberCount,proto3" json:"groupMemberCount"` - Seq int64 `protobuf:"varint,21,opt,name=seq,proto3" json:"seq"` - GroupOwner string `protobuf:"bytes,22,opt,name=groupOwner,proto3" json:"groupOwner"` - GroupType int32 `protobuf:"varint,23,opt,name=groupType,proto3" json:"groupType"` + Seq int64 `protobuf:"varint,21,opt,name=seq,proto3" json:"seq"` + GroupOwner string `protobuf:"bytes,22,opt,name=groupOwner,proto3" json:"groupOwner"` + GroupType int32 `protobuf:"varint,23,opt,name=groupType,proto3" json:"groupType"` } func (x *ChatLog) Reset() { diff --git a/pkg/proto/msggateway/msggateway.pb.go b/pkg/proto/msggateway/msggateway.pb.go index d922d98b4..353524897 100644 --- a/pkg/proto/msggateway/msggateway.pb.go +++ b/pkg/proto/msggateway/msggateway.pb.go @@ -22,14 +22,16 @@ package msggateway import ( context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" + 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" + + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) const ( @@ -44,7 +46,7 @@ type OnlinePushMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` PushToUserID string `protobuf:"bytes,2,opt,name=pushToUserID,proto3" json:"pushToUserID"` } @@ -146,8 +148,8 @@ type SingleMsgToUserResults struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Resp []*SingleMsgToUserPlatform `protobuf:"bytes,2,rep,name=resp,proto3" json:"resp"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Resp []*SingleMsgToUserPlatform `protobuf:"bytes,2,rep,name=resp,proto3" json:"resp"` OnlinePush bool `protobuf:"varint,3,opt,name=onlinePush,proto3" json:"onlinePush"` } @@ -209,7 +211,7 @@ type OnlineBatchPushOneMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` PushToUserIDs []string `protobuf:"bytes,2,rep,name=pushToUserIDs,proto3" json:"pushToUserIDs"` } @@ -311,8 +313,8 @@ type SingleMsgToUserPlatform struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ResultCode int64 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode"` - RecvID string `protobuf:"bytes,2,opt,name=RecvID,proto3" json:"RecvID"` + ResultCode int64 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode"` + RecvID string `protobuf:"bytes,2,opt,name=RecvID,proto3" json:"RecvID"` RecvPlatFormID int32 `protobuf:"varint,3,opt,name=RecvPlatFormID,proto3" json:"RecvPlatFormID"` } @@ -422,7 +424,7 @@ type GetUsersOnlineStatusResp struct { unknownFields protoimpl.UnknownFields SuccessResult []*GetUsersOnlineStatusResp_SuccessResult `protobuf:"bytes,1,rep,name=successResult,proto3" json:"successResult"` - FailedResult []*GetUsersOnlineStatusResp_FailedDetail `protobuf:"bytes,2,rep,name=failedResult,proto3" json:"failedResult"` + FailedResult []*GetUsersOnlineStatusResp_FailedDetail `protobuf:"bytes,2,rep,name=failedResult,proto3" json:"failedResult"` } func (x *GetUsersOnlineStatusResp) Reset() { @@ -476,8 +478,8 @@ type SingleDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` SinglePlatformToken []*SinglePlatformToken `protobuf:"bytes,3,rep,name=singlePlatformToken,proto3" json:"singlePlatformToken"` } @@ -540,8 +542,8 @@ type SinglePlatformToken struct { unknownFields protoimpl.UnknownFields Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` - Token []string `protobuf:"bytes,3,rep,name=token,proto3" json:"token"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Token []string `protobuf:"bytes,3,rep,name=token,proto3" json:"token"` } func (x *SinglePlatformToken) Reset() { @@ -602,7 +604,7 @@ type KickUserOfflineReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` + PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` KickUserIDList []string `protobuf:"bytes,2,rep,name=kickUserIDList,proto3" json:"kickUserIDList"` } @@ -695,9 +697,9 @@ type MultiTerminalLoginCheckReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` OperationID string `protobuf:"bytes,4,opt,name=operationID,proto3" json:"operationID"` } @@ -804,11 +806,11 @@ type GetUsersOnlineStatusResp_SuccessDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` - ConnID string `protobuf:"bytes,3,opt,name=connID,proto3" json:"connID"` + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + ConnID string `protobuf:"bytes,3,opt,name=connID,proto3" json:"connID"` IsBackground bool `protobuf:"varint,4,opt,name=isBackground,proto3" json:"isBackground"` - Token string `protobuf:"bytes,5,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,5,opt,name=token,proto3" json:"token"` } func (x *GetUsersOnlineStatusResp_SuccessDetail) Reset() { @@ -930,8 +932,8 @@ type GetUsersOnlineStatusResp_SuccessResult struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` DetailPlatformStatus []*GetUsersOnlineStatusResp_SuccessDetail `protobuf:"bytes,3,rep,name=detailPlatformStatus,proto3" json:"detailPlatformStatus"` } diff --git a/pkg/proto/push/push.pb.go b/pkg/proto/push/push.pb.go index 1dc9d2ab9..7ef946b60 100644 --- a/pkg/proto/push/push.pb.go +++ b/pkg/proto/push/push.pb.go @@ -22,14 +22,16 @@ package push import ( context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" + 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" + + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) const ( @@ -44,7 +46,7 @@ type PushMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -137,7 +139,7 @@ type DelUserPushTokenReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` } diff --git a/pkg/proto/sdkws/sdkws.pb.go b/pkg/proto/sdkws/sdkws.pb.go index b45d46d4c..ca6e6135a 100644 --- a/pkg/proto/sdkws/sdkws.pb.go +++ b/pkg/proto/sdkws/sdkws.pb.go @@ -21,11 +21,13 @@ package sdkws import ( - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" ) const ( @@ -87,23 +89,23 @@ type GroupInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime"` - MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` - CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID"` - GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType"` - NeedVerification int32 `protobuf:"varint,13,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo int32 `protobuf:"varint,14,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` - ApplyMemberFriend int32 `protobuf:"varint,15,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` + Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` + OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID"` + CreateTime int64 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime"` + MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount"` + Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` + CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID"` + GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType"` + NeedVerification int32 `protobuf:"varint,13,opt,name=needVerification,proto3" json:"needVerification"` + LookMemberInfo int32 `protobuf:"varint,14,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` + ApplyMemberFriend int32 `protobuf:"varint,15,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` NotificationUpdateTime int64 `protobuf:"varint,16,opt,name=notificationUpdateTime,proto3" json:"notificationUpdateTime"` - NotificationUserID string `protobuf:"bytes,17,opt,name=notificationUserID,proto3" json:"notificationUserID"` + NotificationUserID string `protobuf:"bytes,17,opt,name=notificationUserID,proto3" json:"notificationUserID"` } func (x *GroupInfo) Reset() { @@ -262,14 +264,14 @@ type GroupInfoForSet struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` - NeedVerification *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo *wrapperspb.Int32Value `protobuf:"bytes,8,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` + Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + NeedVerification *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification,proto3" json:"needVerification"` + LookMemberInfo *wrapperspb.Int32Value `protobuf:"bytes,8,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` ApplyMemberFriend *wrapperspb.Int32Value `protobuf:"bytes,9,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` } @@ -373,18 +375,18 @@ type GroupMemberFullInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel"` - JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime"` - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel"` + JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime"` + Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` + FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL"` AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` //if >0 - JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource"` - OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex"` - MuteEndTime int64 `protobuf:"varint,11,opt,name=muteEndTime,proto3" json:"muteEndTime"` - InviterUserID string `protobuf:"bytes,12,opt,name=inviterUserID,proto3" json:"inviterUserID"` + JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource"` + OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID"` + Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex"` + MuteEndTime int64 `protobuf:"varint,11,opt,name=muteEndTime,proto3" json:"muteEndTime"` + InviterUserID string `protobuf:"bytes,12,opt,name=inviterUserID,proto3" json:"inviterUserID"` } func (x *GroupMemberFullInfo) Reset() { @@ -508,10 +510,10 @@ type PublicUserInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` } func (x *PublicUserInfo) Reset() { @@ -579,12 +581,12 @@ type UserInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` - CreateTime int64 `protobuf:"varint,5,opt,name=createTime,proto3" json:"createTime"` - AppMangerLevel int32 `protobuf:"varint,6,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + CreateTime int64 `protobuf:"varint,5,opt,name=createTime,proto3" json:"createTime"` + AppMangerLevel int32 `protobuf:"varint,6,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` GlobalRecvMsgOpt int32 `protobuf:"varint,7,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` } @@ -674,13 +676,13 @@ type FriendInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark"` - CreateTime int64 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime"` - FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser"` - AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark"` + CreateTime int64 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime"` + FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser"` + AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource"` OperatorUserID string `protobuf:"bytes,6,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex"` + Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex"` } func (x *FriendInfo) Reset() { @@ -769,12 +771,12 @@ type BlackInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime"` - BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo"` - AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + CreateTime int64 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime"` + BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo"` + AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource"` OperatorUserID string `protobuf:"bytes,5,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` } func (x *BlackInfo) Reset() { @@ -856,16 +858,16 @@ type GroupRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` - GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg"` - HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg"` - ReqTime int64 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime"` - HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID"` - HandleTime int64 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - JoinSource int32 `protobuf:"varint,10,opt,name=joinSource,proto3" json:"joinSource"` + UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` + GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` + HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` + ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg"` + HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg"` + ReqTime int64 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime"` + HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID"` + HandleTime int64 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime"` + Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + JoinSource int32 `protobuf:"varint,10,opt,name=joinSource,proto3" json:"joinSource"` InviterUserID string `protobuf:"bytes,11,opt,name=inviterUserID,proto3" json:"inviterUserID"` } @@ -983,19 +985,19 @@ type FriendRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname"` - FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL"` - ToUserID string `protobuf:"bytes,4,opt,name=toUserID,proto3" json:"toUserID"` - ToNickname string `protobuf:"bytes,5,opt,name=toNickname,proto3" json:"toNickname"` - ToFaceURL string `protobuf:"bytes,6,opt,name=toFaceURL,proto3" json:"toFaceURL"` - HandleResult int32 `protobuf:"varint,7,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,8,opt,name=reqMsg,proto3" json:"reqMsg"` - CreateTime int64 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime"` + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` + FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname"` + FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL"` + ToUserID string `protobuf:"bytes,4,opt,name=toUserID,proto3" json:"toUserID"` + ToNickname string `protobuf:"bytes,5,opt,name=toNickname,proto3" json:"toNickname"` + ToFaceURL string `protobuf:"bytes,6,opt,name=toFaceURL,proto3" json:"toFaceURL"` + HandleResult int32 `protobuf:"varint,7,opt,name=handleResult,proto3" json:"handleResult"` + ReqMsg string `protobuf:"bytes,8,opt,name=reqMsg,proto3" json:"reqMsg"` + CreateTime int64 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime"` HandlerUserID string `protobuf:"bytes,10,opt,name=handlerUserID,proto3" json:"handlerUserID"` - HandleMsg string `protobuf:"bytes,11,opt,name=handleMsg,proto3" json:"handleMsg"` - HandleTime int64 `protobuf:"varint,12,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,13,opt,name=ex,proto3" json:"ex"` + HandleMsg string `protobuf:"bytes,11,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleTime int64 `protobuf:"varint,12,opt,name=handleTime,proto3" json:"handleTime"` + Ex string `protobuf:"bytes,13,opt,name=ex,proto3" json:"ex"` } func (x *FriendRequest) Reset() { @@ -1126,8 +1128,8 @@ type PullMessageBySeqsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - SeqRanges []*SeqRange `protobuf:"bytes,2,rep,name=seqRanges,proto3" json:"seqRanges"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + SeqRanges []*SeqRange `protobuf:"bytes,2,rep,name=seqRanges,proto3" json:"seqRanges"` Order PullOrder `protobuf:"varint,3,opt,name=order,proto3,enum=OpenIMServer.sdkws.PullOrder" json:"order"` } @@ -1190,9 +1192,9 @@ type SeqRange struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Begin int64 `protobuf:"varint,2,opt,name=begin,proto3" json:"begin"` - End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end"` - Num int64 `protobuf:"varint,4,opt,name=num,proto3" json:"num"` + Begin int64 `protobuf:"varint,2,opt,name=begin,proto3" json:"begin"` + End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end"` + Num int64 `protobuf:"varint,4,opt,name=num,proto3" json:"num"` } func (x *SeqRange) Reset() { @@ -1260,7 +1262,7 @@ type PullMsgs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs []*MsgData `protobuf:"bytes,1,rep,name=Msgs,proto3" json:"Msgs"` + Msgs []*MsgData `protobuf:"bytes,1,rep,name=Msgs,proto3" json:"Msgs"` IsEnd bool `protobuf:"varint,2,opt,name=isEnd,proto3" json:"isEnd"` } @@ -1315,7 +1317,7 @@ type PullMessageBySeqsResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -1474,7 +1476,7 @@ type UserSendMsgResp struct { ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` } func (x *UserSendMsgResp) Reset() { @@ -1535,28 +1537,28 @@ type MsgData struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` - ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID"` - ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID"` + SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` + GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` + ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID"` + ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID"` SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType"` - Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content"` - Seq int64 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq"` - SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime"` - Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status"` - IsRead bool `protobuf:"varint,18,opt,name=isRead,proto3" json:"isRead"` - Options map[string]bool `protobuf:"bytes,19,rep,name=options,proto3" json:"options" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,20,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo"` - AtUserIDList []string `protobuf:"bytes,21,rep,name=atUserIDList,proto3" json:"atUserIDList"` - AttachedInfo string `protobuf:"bytes,22,opt,name=attachedInfo,proto3" json:"attachedInfo"` - Ex string `protobuf:"bytes,23,opt,name=ex,proto3" json:"ex"` + SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname"` + SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` + SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType"` + MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom"` + ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType"` + Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content"` + Seq int64 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq"` + SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime"` + CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime"` + Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status"` + IsRead bool `protobuf:"varint,18,opt,name=isRead,proto3" json:"isRead"` + Options map[string]bool `protobuf:"bytes,19,rep,name=options,proto3" json:"options" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,20,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo"` + AtUserIDList []string `protobuf:"bytes,21,rep,name=atUserIDList,proto3" json:"atUserIDList"` + AttachedInfo string `protobuf:"bytes,22,opt,name=attachedInfo,proto3" json:"attachedInfo"` + Ex string `protobuf:"bytes,23,opt,name=ex,proto3" json:"ex"` } func (x *MsgData) Reset() { @@ -1750,7 +1752,7 @@ type PushMessages struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -1805,12 +1807,12 @@ type OfflinePushInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc"` - Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex"` - IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound"` + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc"` + Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex"` + IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound"` IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount,proto3" json:"iOSBadgeCount"` - SignalInfo string `protobuf:"bytes,6,opt,name=signalInfo,proto3" json:"signalInfo"` + SignalInfo string `protobuf:"bytes,6,opt,name=signalInfo,proto3" json:"signalInfo"` } func (x *OfflinePushInfo) Reset() { @@ -1892,9 +1894,9 @@ type TipsComm struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` + Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` DefaultTips string `protobuf:"bytes,2,opt,name=defaultTips,proto3" json:"defaultTips"` - JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail"` + JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail"` } func (x *TipsComm) Reset() { @@ -1956,9 +1958,9 @@ type GroupCreatedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` GroupOwnerUser *GroupMemberFullInfo `protobuf:"bytes,5,opt,name=groupOwnerUser,proto3" json:"groupOwnerUser"` } @@ -2036,9 +2038,9 @@ type GroupInfoSetTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this + OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this MuteTime int64 `protobuf:"varint,2,opt,name=muteTime,proto3" json:"muteTime"` - Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetTips) Reset() { @@ -2100,7 +2102,7 @@ type GroupInfoSetNameTips struct { unknownFields protoimpl.UnknownFields OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetNameTips) Reset() { @@ -2155,7 +2157,7 @@ type GroupInfoSetAnnouncementTips struct { unknownFields protoimpl.UnknownFields OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetAnnouncementTips) Reset() { @@ -2210,9 +2212,9 @@ type JoinGroupApplicationTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` Applicant *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant,proto3" json:"applicant"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` + ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` } func (x *JoinGroupApplicationTips) Reset() { @@ -2276,8 +2278,8 @@ type MemberQuitTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2340,9 +2342,9 @@ type GroupApplicationAcceptedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) } @@ -2412,9 +2414,9 @@ type GroupApplicationRejectedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) } @@ -2484,9 +2486,9 @@ type GroupOwnerTransferredTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2556,8 +2558,8 @@ type MemberKickedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` KickedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList,proto3" json:"kickedUserList"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2628,10 +2630,10 @@ type MemberInvitedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` InvitedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList,proto3" json:"invitedUserList"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } func (x *MemberInvitedTips) Reset() { @@ -2700,8 +2702,8 @@ type MemberEnterTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2763,8 +2765,8 @@ type GroupDismissedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2826,11 +2828,11 @@ type GroupMemberMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` - MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` + MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` } func (x *GroupMemberMutedTips) Reset() { @@ -2905,10 +2907,10 @@ type GroupMemberCancelMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` } func (x *GroupMemberCancelMutedTips) Reset() { @@ -2976,8 +2978,8 @@ type GroupMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -3039,8 +3041,8 @@ type GroupCancelMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -3102,10 +3104,10 @@ type GroupMemberInfoSetTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - ChangedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser,proto3" json:"changedUser"` + ChangedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser,proto3" json:"changedUser"` } func (x *GroupMemberInfoSetTips) Reset() { @@ -3173,8 +3175,8 @@ type FriendApplication struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime"` - AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource"` + AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime"` + AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource"` AddWording string `protobuf:"bytes,3,opt,name=addWording,proto3" json:"addWording"` } @@ -3237,7 +3239,7 @@ type FromToUserID struct { unknownFields protoimpl.UnknownFields FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` } func (x *FromToUserID) Reset() { @@ -3341,7 +3343,7 @@ type FriendApplicationApprovedTips struct { unknownFields protoimpl.UnknownFields FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:同意者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *FriendApplicationApprovedTips) Reset() { @@ -3397,7 +3399,7 @@ type FriendApplicationRejectedTips struct { unknownFields protoimpl.UnknownFields FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:拒绝者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *FriendApplicationRejectedTips) Reset() { @@ -3452,9 +3454,9 @@ type FriendAddedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` + Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` OperationTime int64 `protobuf:"varint,2,opt,name=operationTime,proto3" json:"operationTime"` - OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser"` //who do this + OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser"` //who do this } func (x *FriendAddedTips) Reset() { @@ -3753,7 +3755,7 @@ type ConversationUpdateTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationIDList []string `protobuf:"bytes,2,rep,name=conversationIDList,proto3" json:"conversationIDList"` } @@ -3808,8 +3810,8 @@ type ConversationSetPrivateTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` - SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` + SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` IsPrivate bool `protobuf:"varint,3,opt,name=isPrivate,proto3" json:"isPrivate"` } @@ -3871,9 +3873,9 @@ type ConversationHasReadTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` UnreadCountTime int64 `protobuf:"varint,4,opt,name=unreadCountTime,proto3" json:"unreadCountTime"` } @@ -4037,8 +4039,8 @@ type DeleteMessageTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` } @@ -4100,11 +4102,11 @@ type RevokeMsgTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RevokerUserID string `protobuf:"bytes,1,opt,name=revokerUserID,proto3" json:"revokerUserID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokeTime int64 `protobuf:"varint,3,opt,name=revokeTime,proto3" json:"revokeTime"` - SesstionType int32 `protobuf:"varint,5,opt,name=sesstionType,proto3" json:"sesstionType"` - Seq int64 `protobuf:"varint,6,opt,name=seq,proto3" json:"seq"` + RevokerUserID string `protobuf:"bytes,1,opt,name=revokerUserID,proto3" json:"revokerUserID"` + ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` + RevokeTime int64 `protobuf:"varint,3,opt,name=revokeTime,proto3" json:"revokeTime"` + SesstionType int32 `protobuf:"varint,5,opt,name=sesstionType,proto3" json:"sesstionType"` + Seq int64 `protobuf:"varint,6,opt,name=seq,proto3" json:"seq"` ConversationID string `protobuf:"bytes,7,opt,name=conversationID,proto3" json:"conversationID"` } @@ -4187,17 +4189,17 @@ type MessageRevokedContent struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RevokerID string `protobuf:"bytes,1,opt,name=revokerID,proto3" json:"revokerID"` - RevokerRole int32 `protobuf:"varint,2,opt,name=revokerRole,proto3" json:"revokerRole"` - ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokerNickname string `protobuf:"bytes,4,opt,name=revokerNickname,proto3" json:"revokerNickname"` - RevokeTime int64 `protobuf:"varint,5,opt,name=revokeTime,proto3" json:"revokeTime"` - SourceMessageSendTime int64 `protobuf:"varint,6,opt,name=sourceMessageSendTime,proto3" json:"sourceMessageSendTime"` - SourceMessageSendID string `protobuf:"bytes,7,opt,name=sourceMessageSendID,proto3" json:"sourceMessageSendID"` + RevokerID string `protobuf:"bytes,1,opt,name=revokerID,proto3" json:"revokerID"` + RevokerRole int32 `protobuf:"varint,2,opt,name=revokerRole,proto3" json:"revokerRole"` + ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID,proto3" json:"clientMsgID"` + RevokerNickname string `protobuf:"bytes,4,opt,name=revokerNickname,proto3" json:"revokerNickname"` + RevokeTime int64 `protobuf:"varint,5,opt,name=revokeTime,proto3" json:"revokeTime"` + SourceMessageSendTime int64 `protobuf:"varint,6,opt,name=sourceMessageSendTime,proto3" json:"sourceMessageSendTime"` + SourceMessageSendID string `protobuf:"bytes,7,opt,name=sourceMessageSendID,proto3" json:"sourceMessageSendID"` SourceMessageSenderNickname string `protobuf:"bytes,8,opt,name=sourceMessageSenderNickname,proto3" json:"sourceMessageSenderNickname"` - SessionType int32 `protobuf:"varint,10,opt,name=sessionType,proto3" json:"sessionType"` - Seq int64 `protobuf:"varint,11,opt,name=seq,proto3" json:"seq"` - Ex string `protobuf:"bytes,12,opt,name=ex,proto3" json:"ex"` + SessionType int32 `protobuf:"varint,10,opt,name=sessionType,proto3" json:"sessionType"` + Seq int64 `protobuf:"varint,11,opt,name=seq,proto3" json:"seq"` + Ex string `protobuf:"bytes,12,opt,name=ex,proto3" json:"ex"` } func (x *MessageRevokedContent) Reset() { @@ -4314,7 +4316,7 @@ type ClearConversationTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` } @@ -4369,9 +4371,9 @@ type DeleteMsgsTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` + Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *DeleteMsgsTips) Reset() { @@ -4433,9 +4435,9 @@ type MarkAsReadTips struct { unknownFields protoimpl.UnknownFields MarkAsReadUserID string `protobuf:"bytes,1,opt,name=markAsReadUserID,proto3" json:"markAsReadUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` - HasReadSeq int64 `protobuf:"varint,4,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` + HasReadSeq int64 `protobuf:"varint,4,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } func (x *MarkAsReadTips) Reset() { @@ -4503,7 +4505,7 @@ type SetAppBackgroundStatusReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` IsBackground bool `protobuf:"varint,2,opt,name=isBackground,proto3" json:"isBackground"` } diff --git a/pkg/proto/statistics/statistics.pb.go b/pkg/proto/statistics/statistics.pb.go index 5660758f9..5e03e9797 100644 --- a/pkg/proto/statistics/statistics.pb.go +++ b/pkg/proto/statistics/statistics.pb.go @@ -21,9 +21,10 @@ package statistics import ( + reflect "reflect" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" ) const ( diff --git a/pkg/proto/third/third.pb.go b/pkg/proto/third/third.pb.go index 155b5f7cc..a098b296f 100644 --- a/pkg/proto/third/third.pb.go +++ b/pkg/proto/third/third.pb.go @@ -22,13 +22,14 @@ package third import ( context "context" + reflect "reflect" + sync "sync" + 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 ( @@ -43,7 +44,7 @@ type KeyValues struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key"` + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key"` Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values"` } @@ -99,9 +100,9 @@ type SignPart struct { unknownFields protoimpl.UnknownFields PartNumber int32 `protobuf:"varint,1,opt,name=partNumber,proto3" json:"partNumber"` - Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,3,rep,name=query,proto3" json:"query"` - Header []*KeyValues `protobuf:"bytes,4,rep,name=header,proto3" json:"header"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,3,rep,name=query,proto3" json:"query"` + Header []*KeyValues `protobuf:"bytes,4,rep,name=header,proto3" json:"header"` } func (x *SignPart) Reset() { @@ -169,10 +170,10 @@ type AuthSignParts struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` + Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` } func (x *AuthSignParts) Reset() { @@ -280,7 +281,7 @@ type PartLimitResp struct { MinPartSize int64 `protobuf:"varint,1,opt,name=minPartSize,proto3" json:"minPartSize"` MaxPartSize int64 `protobuf:"varint,2,opt,name=maxPartSize,proto3" json:"maxPartSize"` - MaxNumSize int32 `protobuf:"varint,3,opt,name=maxNumSize,proto3" json:"maxNumSize"` + MaxNumSize int32 `protobuf:"varint,3,opt,name=maxNumSize,proto3" json:"maxNumSize"` } func (x *PartLimitResp) Reset() { @@ -435,12 +436,12 @@ type InitiateMultipartUploadReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash"` - Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` - PartSize int64 `protobuf:"varint,3,opt,name=partSize,proto3" json:"partSize"` - MaxParts int32 `protobuf:"varint,4,opt,name=maxParts,proto3" json:"maxParts"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` - Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name"` + Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash"` + Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` + PartSize int64 `protobuf:"varint,3,opt,name=partSize,proto3" json:"partSize"` + MaxParts int32 `protobuf:"varint,4,opt,name=maxParts,proto3" json:"maxParts"` + Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` + Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name"` ContentType string `protobuf:"bytes,7,opt,name=contentType,proto3" json:"contentType"` } @@ -530,9 +531,9 @@ type UploadInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - PartSize int64 `protobuf:"varint,2,opt,name=partSize,proto3" json:"partSize"` - Sign *AuthSignParts `protobuf:"bytes,3,opt,name=sign,proto3" json:"sign"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + PartSize int64 `protobuf:"varint,2,opt,name=partSize,proto3" json:"partSize"` + Sign *AuthSignParts `protobuf:"bytes,3,opt,name=sign,proto3" json:"sign"` ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` } @@ -601,7 +602,7 @@ type InitiateMultipartUploadResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` Upload *UploadInfo `protobuf:"bytes,2,opt,name=upload,proto3" json:"upload"` } @@ -656,7 +657,7 @@ type AuthSignReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` PartNumbers []int32 `protobuf:"varint,2,rep,packed,name=partNumbers,proto3" json:"partNumbers"` } @@ -711,10 +712,10 @@ type AuthSignResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` + Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` } func (x *AuthSignResp) Reset() { @@ -782,11 +783,11 @@ type CompleteMultipartUploadReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - Parts []string `protobuf:"bytes,2,rep,name=parts,proto3" json:"parts"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + Parts []string `protobuf:"bytes,2,rep,name=parts,proto3" json:"parts"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` + Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` } func (x *CompleteMultipartUploadReq) Reset() { @@ -955,7 +956,7 @@ type AccessURLResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` ExpireTime int64 `protobuf:"varint,2,opt,name=expireTime,proto3" json:"expireTime"` } @@ -1011,8 +1012,8 @@ type FcmUpdateTokenReq struct { unknownFields protoimpl.UnknownFields PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - FcmToken string `protobuf:"bytes,2,opt,name=fcmToken,proto3" json:"fcmToken"` - Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account"` + FcmToken string `protobuf:"bytes,2,opt,name=fcmToken,proto3" json:"fcmToken"` + Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account"` ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` } @@ -1119,7 +1120,7 @@ type SetAppBadgeReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` AppUnreadCount int32 `protobuf:"varint,2,opt,name=appUnreadCount,proto3" json:"appUnreadCount"` } diff --git a/pkg/proto/user/user.pb.go b/pkg/proto/user/user.pb.go index 5046505db..12a1bd2c8 100644 --- a/pkg/proto/user/user.pb.go +++ b/pkg/proto/user/user.pb.go @@ -22,15 +22,17 @@ package user import ( context "context" - conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" + 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" + + conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" ) const ( @@ -92,7 +94,7 @@ type GetAllUserIDResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` UserIDs []string `protobuf:"bytes,2,rep,name=userIDs,proto3" json:"userIDs"` } @@ -420,7 +422,7 @@ type SetGlobalRecvMessageOptReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` GlobalRecvMsgOpt int32 `protobuf:"varint,3,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` } @@ -513,9 +515,9 @@ type SetConversationReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conversation *conversation.Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` + Conversation *conversation.Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` NotificationType int32 `protobuf:"varint,2,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *SetConversationReq) Reset() { @@ -614,11 +616,11 @@ type SetRecvMsgOptReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` NotificationType int32 `protobuf:"varint,4,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,5,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,5,opt,name=operationID,proto3" json:"operationID"` } func (x *SetRecvMsgOptReq) Reset() { @@ -732,8 +734,8 @@ type GetConversationReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *GetConversationReq) Reset() { @@ -841,9 +843,9 @@ type GetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *GetConversationsReq) Reset() { @@ -1053,10 +1055,10 @@ type BatchSetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conversations []*conversation.Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` - OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID"` + Conversations []*conversation.Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` + OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID"` NotificationType int32 `protobuf:"varint,3,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID"` + OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID"` } func (x *BatchSetConversationsReq) Reset() { @@ -1125,7 +1127,7 @@ type BatchSetConversationsResp struct { unknownFields protoimpl.UnknownFields Success []string `protobuf:"bytes,2,rep,name=Success,proto3" json:"Success"` - Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed"` + Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed"` } func (x *BatchSetConversationsResp) Reset() { @@ -1227,7 +1229,7 @@ type GetPaginationUsersResp struct { unknownFields protoimpl.UnknownFields Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` + Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` } func (x *GetPaginationUsersResp) Reset() { @@ -1282,7 +1284,7 @@ type UserRegisterReq struct { unknownFields protoimpl.UnknownFields Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` + Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` } func (x *UserRegisterReq) Reset() { @@ -1469,7 +1471,7 @@ type UserRegisterCountReq struct { unknownFields protoimpl.UnknownFields Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` } func (x *UserRegisterCountReq) Reset() { @@ -1523,9 +1525,9 @@ type UserRegisterCountResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } func (x *UserRegisterCountResp) Reset() { @@ -1586,7 +1588,7 @@ type AccountCheckRespSingleUserStatus struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` AccountStatus string `protobuf:"bytes,2,opt,name=accountStatus,proto3" json:"accountStatus"` } diff --git a/pkg/proto/wrapperspb/wrapperspb.pb.go b/pkg/proto/wrapperspb/wrapperspb.pb.go index 9678bb2a0..c08a87822 100644 --- a/pkg/proto/wrapperspb/wrapperspb.pb.go +++ b/pkg/proto/wrapperspb/wrapperspb.pb.go @@ -21,10 +21,11 @@ package wrapperspb import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" ) const ( diff --git a/pkg/rpcclient/conversation.go b/pkg/rpcclient/conversation.go index c3648a050..71867620d 100644 --- a/pkg/rpcclient/conversation.go +++ b/pkg/rpcclient/conversation.go @@ -18,11 +18,12 @@ import ( "context" "fmt" + "google.golang.org/grpc" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "google.golang.org/grpc" ) type Conversation struct { @@ -71,6 +72,7 @@ func (c *ConversationRpcClient) SetConversationMaxSeq(ctx context.Context, owner _, err := c.Client.SetConversationMaxSeq(ctx, &pbConversation.SetConversationMaxSeqReq{OwnerUserID: ownerUserIDs, ConversationID: conversationID, MaxSeq: maxSeq}) return err } + func (c *ConversationRpcClient) SetConversations(ctx context.Context, userIDs []string, conversation *pbConversation.ConversationReq) error { _, err := c.Client.SetConversations(ctx, &pbConversation.SetConversationsReq{UserIDs: userIDs, Conversation: conversation}) return err diff --git a/pkg/rpcclient/friend.go b/pkg/rpcclient/friend.go index 51b63700c..5a8ac0633 100644 --- a/pkg/rpcclient/friend.go +++ b/pkg/rpcclient/friend.go @@ -61,14 +61,13 @@ func (f *FriendRpcClient) GetFriendsInfo( return } -// possibleFriendUserID是否在userID的好友中 +// possibleFriendUserID是否在userID的好友中. func (f *FriendRpcClient) IsFriend(ctx context.Context, possibleFriendUserID, userID string) (bool, error) { resp, err := f.Client.IsFriend(ctx, &friend.IsFriendReq{UserID1: userID, UserID2: possibleFriendUserID}) if err != nil { return false, err } return resp.InUser1Friends, nil - } func (f *FriendRpcClient) GetFriendIDs(ctx context.Context, ownerUserID string) (friendIDs []string, err error) { diff --git a/pkg/rpcclient/msg.go b/pkg/rpcclient/msg.go index 09e44884f..1fd6846d1 100644 --- a/pkg/rpcclient/msg.go +++ b/pkg/rpcclient/msg.go @@ -18,6 +18,9 @@ import ( "context" "encoding/json" + "google.golang.org/grpc" + "google.golang.org/protobuf/proto" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" @@ -25,9 +28,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" - "google.golang.org/grpc" - "google.golang.org/protobuf/proto" - // "google.golang.org/protobuf/proto" + // "google.golang.org/protobuf/proto". ) func newContentTypeConf() map[int32]config.NotificationConf { diff --git a/pkg/rpcclient/notification/conevrsation.go b/pkg/rpcclient/notification/conevrsation.go index 12e851375..d2995df3d 100644 --- a/pkg/rpcclient/notification/conevrsation.go +++ b/pkg/rpcclient/notification/conevrsation.go @@ -30,7 +30,7 @@ func NewConversationNotificationSender(msgRpcClient *rpcclient.MessageRpcClient) return &ConversationNotificationSender{rpcclient.NewNotificationSender(rpcclient.WithRpcClient(msgRpcClient))} } -// SetPrivate调用 +// SetPrivate调用. func (c *ConversationNotificationSender) ConversationSetPrivateNotification( ctx context.Context, sendID, recvID string, @@ -44,7 +44,7 @@ func (c *ConversationNotificationSender) ConversationSetPrivateNotification( return c.Notification(ctx, sendID, recvID, constant.ConversationPrivateChatNotification, tips) } -// 会话改变 +// 会话改变. func (c *ConversationNotificationSender) ConversationChangeNotification(ctx context.Context, userID string) error { tips := &sdkws.ConversationUpdateTips{ UserID: userID, @@ -52,7 +52,7 @@ func (c *ConversationNotificationSender) ConversationChangeNotification(ctx cont return c.Notification(ctx, userID, userID, constant.ConversationChangeNotification, tips) } -// 会话未读数同步 +// 会话未读数同步. func (c *ConversationNotificationSender) ConversationUnreadChangeNotification( ctx context.Context, userID, conversationID string, diff --git a/pkg/rpcclient/notification/group.go b/pkg/rpcclient/notification/group.go index 3f312c241..22aa694c7 100644 --- a/pkg/rpcclient/notification/group.go +++ b/pkg/rpcclient/notification/group.go @@ -30,7 +30,12 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) -func NewGroupNotificationSender(db controller.GroupDatabase, msgRpcClient *rpcclient.MessageRpcClient, userRpcClient *rpcclient.UserRpcClient, fn func(ctx context.Context, userIDs []string) ([]CommonUser, error)) *GroupNotificationSender { +func NewGroupNotificationSender( + db controller.GroupDatabase, + msgRpcClient *rpcclient.MessageRpcClient, + userRpcClient *rpcclient.UserRpcClient, + fn func(ctx context.Context, userIDs []string) ([]CommonUser, error), +) *GroupNotificationSender { return &GroupNotificationSender{ NotificationSender: rpcclient.NewNotificationSender(rpcclient.WithRpcClient(msgRpcClient), rpcclient.WithUserRpcClient(userRpcClient)), getUsersInfo: fn, @@ -442,8 +447,10 @@ func (g *GroupNotificationSender) GroupMemberMutedNotification(ctx context.Conte if err != nil { return err } - tips := &sdkws.GroupMemberMutedTips{Group: group, MutedSeconds: mutedSeconds, - OpUser: user[mcontext.GetOpUserID(ctx)], MutedUser: user[groupMemberUserID]} + tips := &sdkws.GroupMemberMutedTips{ + Group: group, MutedSeconds: mutedSeconds, + OpUser: user[mcontext.GetOpUserID(ctx)], MutedUser: user[groupMemberUserID], + } if err := g.fillOpUser(ctx, &tips.OpUser, tips.Group.GroupID); err != nil { return err } diff --git a/pkg/rpcclient/third.go b/pkg/rpcclient/third.go index 578586ca3..e1181b8f4 100644 --- a/pkg/rpcclient/third.go +++ b/pkg/rpcclient/third.go @@ -16,9 +16,10 @@ package rpcclient import ( "context" + "net/url" + "github.com/minio/minio-go/v7" "github.com/minio/minio-go/v7/pkg/credentials" - "net/url" "google.golang.org/grpc" @@ -54,7 +55,7 @@ func minioInit() (*minio.Client, error) { } opts := &minio.Options{ Creds: credentials.NewStaticV4(config.Config.Object.Minio.AccessKeyID, config.Config.Object.Minio.SecretAccessKey, ""), - //Region: config.Config.Credential.Minio.Location, + // Region: config.Config.Credential.Minio.Location, } if minioUrl.Scheme == "http" { opts.Secure = false diff --git a/scripts/make-rules/golang.mk b/scripts/make-rules/golang.mk index 2a6fd7f0d..adefa5085 100644 --- a/scripts/make-rules/golang.mk +++ b/scripts/make-rules/golang.mk @@ -57,10 +57,18 @@ ifeq (${BINS},) $(error Could not determine BINS, set ROOT_DIR or run in source dir) endif -ifeq (${COMMANDS},) +ifeq ($(OS),Windows_NT) + NULL := + SPACE := $(NULL) $(NULL) + ROOT_DIR := $(subst $(SPACE),\$(SPACE),$(shell cd)) +else + ROOT_DIR := $(shell pwd) +endif + +ifeq ($(strip $(COMMANDS)),) $(error Could not determine COMMANDS, set ROOT_DIR or run in source dir) endif -ifeq (${BINS},) +ifeq ($(strip $(BINS)),) $(error Could not determine BINS, set ROOT_DIR or run in source dir) endif @@ -161,7 +169,7 @@ go.format: tools.verify.golines tools.verify.goimports @echo "===========> Formating codes" @$(FIND) -type f -name '*.go' | $(XARGS) gofmt -s -w @$(FIND) -type f -name '*.go' | $(XARGS) $(TOOLS_DIR)/goimports -w -local $(ROOT_PACKAGE) - @$(FIND) -type f -name '*.go' | $(XARGS) $(TOOLS_DIR)/golines -w --max-len=120 --reformat-tags --shorten-comments --ignore-generated . + @$(FIND) -type f -name '*.go' | $(XARGS) $(TOOLS_DIR)/golines -w --max-len=200 --reformat-tags --shorten-comments --ignore-generated . @$(GO) mod edit -fmt ## imports: task to automatically handle import packages in Go files using goimports tool @@ -184,4 +192,4 @@ go.clean: ## copyright.help: Show copyright help .PHONY: go.help go.help: scripts/make-rules/golang.mk - $(call smallhelp) + $(call smallhelp) \ No newline at end of file diff --git a/scripts/make-rules/image.mk b/scripts/make-rules/image.mk index 326507d83..31448bf24 100644 --- a/scripts/make-rules/image.mk +++ b/scripts/make-rules/image.mk @@ -18,35 +18,25 @@ # ============================================================================== # Path: scripts/make-rules/image.mk # docker registry: registry.example.com/namespace/image:tag as: registry.hub.docker.com/cubxxw/: +# https://docs.docker.com/build/building/multi-platform/ # -# # If you wish built the manager image targeting other platforms you can use the --platform flag. -# # (i.e. docker build --platform linux/arm64 ). However, you must enable docker buildKit for it. -# # More info: https://docs.docker.com/develop/develop-images/build_enhancements/ -# .PHONY: docker-build -# docker-build: test ## Build docker image with the manager. -# docker build -t ${IMG} . - -# .PHONY: docker-push -# docker-push: ## Push docker image with the manager. -# docker push ${IMG} - -# # PLATFORMS defines the target platforms for the manager image be build to provide support to multiple -# # architectures. (i.e. make docker-buildx IMG=myregistry/mypoperator:0.0.1). To use this option you need to: -# # - able to use docker buildx . More info: https://docs.docker.com/build/buildx/ -# # - have enable BuildKit, More info: https://docs.docker.com/develop/develop-images/build_enhancements/ -# # - be able to push the image for your registry (i.e. if you do not inform a valid value via IMG=> then the export will fail) -# # To properly provided solutions that supports more than one platform you should use this option. -# PLATFORMS ?= linux/arm64,linux/amd64,linux/s390x,linux/ppc64le -# .PHONY: docker-buildx -# docker-buildx: test ## Build and push docker image for the manager for cross-platform support -# # copy existing Dockerfile and insert --platform=${BUILDPLATFORM} into Dockerfile.cross, and preserve the original Dockerfile -# sed -e '1 s/\(^FROM\)/FROM --platform=\$$\{BUILDPLATFORM\}/; t' -e ' 1,// s//FROM --platform=\$$\{BUILDPLATFORM\}/' Dockerfile > Dockerfile.cross -# - docker buildx create --name project-v3-builder -# docker buildx use project-v3-builder -# - docker buildx build --push --platform=$(PLATFORMS) --tag ${IMG} -f Dockerfile.cross . -# - docker buildx rm project-v3-builder -# rm Dockerfile.cross +# PLATFORMS defines the target platforms for the manager image be build to provide support to multiple +# architectures. (i.e. make docker-buildx IMG=myregistry/mypoperator:0.0.1). To use this option you need to: +# - able to use docker buildx . More info: https://docs.docker.com/build/buildx/ +# - have enable BuildKit, More info: https://docs.docker.com/develop/develop-images/build_enhancements/ +# - be able to push the image for your registry (i.e. if you do not inform a valid value via IMG=> then the export will fail) +# To properly provided solutions that supports more than one platform you should use this option. +PLATFORMS ?= linux/arm64,linux/amd64,linux/s390x,linux/ppc64le +.PHONY: docker-buildx +docker-buildx: test ## Build and push docker image for the manager for cross-platform support + # copy existing Dockerfile and insert --platform=${BUILDPLATFORM} into Dockerfile.cross, and preserve the original Dockerfile + sed -e '1 s/\(^FROM\)/FROM --platform=\$$\{BUILDPLATFORM\}/; t' -e ' 1,// s//FROM --platform=\$$\{BUILDPLATFORM\}/' Dockerfile > Dockerfile.cross + - docker buildx create --name project-v3-builder + docker buildx use project-v3-builder + - docker buildx build --push --platform=$(PLATFORMS) --tag ${IMG} -f Dockerfile.cross . + - docker buildx rm project-v3-builder + rm Dockerfile.cross DOCKER := docker DOCKER_SUPPORTED_API_VERSION ?= 1.32|1.40|1.41 @@ -98,6 +88,9 @@ image.daemon.verify: exit 1; \ fi +# If you wish built the manager image targeting other platforms you can use the --platform flag. +# (i.e. docker build --platform linux/arm64 ). However, you must enable docker buildKit for it. +# More info: https://docs.docker.com/develop/develop-images/build_enhancements/ ## image.build: Build docker images .PHONY: image.build image.build: image.verify go.build.verify $(addprefix image.build., $(addprefix $(IMAGE_PLAT)., $(IMAGES))) @@ -126,6 +119,8 @@ image.build.%: go.build.% fi @rm -rf $(TMP_DIR)/$(IMAGE) +# https://docs.docker.com/build/building/multi-platform/ +# busybox image supports amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, ppc64le, and s390x ## image.buildx.%: Build docker images with buildx .PHONY: image.buildx.% image.buildx.%: From 3aa8d2fa698808a208e4ba7da31614f0840d324f Mon Sep 17 00:00:00 2001 From: Alan <68671759+hanzhixiao@users.noreply.github.com> Date: Fri, 14 Jul 2023 18:54:56 +0800 Subject: [PATCH 03/46] fix get groups bug (#562) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix get group bug Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * bug * api Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * Delete start.bat * Delete build.cmd --------- Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> Co-authored-by: ‘hanzhixiao’ <‘709674996@qq.com’> --- internal/api/msg.go | 1 + internal/msgtransfer/init.go | 2 +- internal/rpc/msg/send.go | 5 +- internal/rpc/msg/server.go | 8 +- internal/rpc/msg/sync_msg.go | 2 +- internal/tools/msg.go | 2 +- pkg/common/constant/constant.go | 2 + pkg/common/db/controller/chatlog.go | 13 - pkg/common/db/controller/msg.go | 10 +- pkg/common/db/relation/chat_log_model.go | 43 -- pkg/common/db/table/relation/chatlog.go | 1 - pkg/common/db/unrelation/msg.go | 7 + pkg/proto/group/group.go | 3 - pkg/proto/msg/msg.pb.go | 506 ++++++++++++++--------- pkg/proto/msg/msg.proto | 7 + 15 files changed, 347 insertions(+), 265 deletions(-) diff --git a/internal/api/msg.go b/internal/api/msg.go index d1858bf8b..d8a3c292b 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -249,6 +249,7 @@ func (m *MessageApi) BatchSendMsg(c *gin.Context) { return } + var recvIDs []string var err error if req.IsSendAll { diff --git a/internal/msgtransfer/init.go b/internal/msgtransfer/init.go index 13b22b334..61e154655 100644 --- a/internal/msgtransfer/init.go +++ b/internal/msgtransfer/init.go @@ -75,7 +75,7 @@ func StartTransfer(prometheusPort int) error { msgDocModel := unrelation.NewMsgMongoDriver(mongo.GetDatabase()) msgMysModel := relation.NewChatLogGorm(db) chatLogDatabase := controller.NewChatLogDatabase(msgMysModel) - msgDatabase := controller.NewCommonMsgDatabase(msgDocModel, msgModel, msgMysModel) + msgDatabase := controller.NewCommonMsgDatabase(msgDocModel, msgModel) conversationRpcClient := rpcclient.NewConversationRpcClient(client) groupRpcClient := rpcclient.NewGroupRpcClient(client) msgTransfer := NewMsgTransfer(chatLogDatabase, msgDatabase, &conversationRpcClient, &groupRpcClient) diff --git a/internal/rpc/msg/send.go b/internal/rpc/msg/send.go index 66d8eb1ae..dd02083fa 100644 --- a/internal/rpc/msg/send.go +++ b/internal/rpc/msg/send.go @@ -16,7 +16,6 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" @@ -189,3 +188,7 @@ func (m *msgServer) sendMsgSingleChat(ctx context.Context, req *pbMsg.SendMsgReq return resp, nil } } + +func (m *msgServer) BatchSendMsg(ctx context.Context, in *pbMsg.BatchSendMessageReq) (*pbMsg.BatchSendMessageResp, error) { + return nil, nil +} diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index 08cff738b..1a152b7be 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -17,6 +17,7 @@ package msg import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" "google.golang.org/grpc" @@ -83,12 +84,7 @@ func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) e userRpcClient := rpcclient.NewUserRpcClient(client) groupRpcClient := rpcclient.NewGroupRpcClient(client) friendRpcClient := rpcclient.NewFriendRpcClient(client) - mysql, err := relation.NewGormDB() - if err != nil { - return err - } - msgMysModel := relation.NewChatLogGorm(mysql) - msgDatabase := controller.NewCommonMsgDatabase(msgDocModel, cacheModel, msgMysModel) + msgDatabase := controller.NewCommonMsgDatabase(msgDocModel, cacheModel) s := &msgServer{ Conversation: &conversationClient, User: &userRpcClient, diff --git a/internal/rpc/msg/sync_msg.go b/internal/rpc/msg/sync_msg.go index 59b23dda5..8cfac93bd 100644 --- a/internal/rpc/msg/sync_msg.go +++ b/internal/rpc/msg/sync_msg.go @@ -131,7 +131,7 @@ func (m *msgServer) SearchMessage(ctx context.Context, req *msg.SearchMessageReq if err != nil { return nil, err } - pbChatLog.SenderNickname = recvUser.Nickname + pbChatLog.RecvNickname = recvUser.Nickname case constant.GroupChatType, constant.SuperGroupChatType: group, err := m.Group.GetGroupInfo(ctx, chatLog.GroupID) diff --git a/internal/tools/msg.go b/internal/tools/msg.go index 3cd9dcb3f..76299b6ac 100644 --- a/internal/tools/msg.go +++ b/internal/tools/msg.go @@ -81,7 +81,7 @@ func InitMsgTool() (*MsgTool, error) { } discov.AddOption(mw.GrpcClient(), grpc.WithTransportCredentials(insecure.NewCredentials())) userDB := relation.NewUserGorm(db) - msgDatabase := controller.InitCommonMsgDatabase(rdb, mongo.GetDatabase(), db) + msgDatabase := controller.InitCommonMsgDatabase(rdb, mongo.GetDatabase()) userDatabase := controller.NewUserDatabase( userDB, cache.NewUserCacheRedis(rdb, relation.NewUserGorm(db), cache.GetDefaultOpt()), diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index 78a9435bf..3f34b9734 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -359,3 +359,5 @@ const ( const OpenIMCommonConfigKey = "OpenIMServerConfig" const CallbackCommand = "command" + +const BatchNum = 100 diff --git a/pkg/common/db/controller/chatlog.go b/pkg/common/db/controller/chatlog.go index 5385fdfec..deca63697 100644 --- a/pkg/common/db/controller/chatlog.go +++ b/pkg/common/db/controller/chatlog.go @@ -21,11 +21,6 @@ import ( type ChatLogDatabase interface { CreateChatLog(msg *pbMsg.MsgDataToMQ) error - GetChatLog( - chatLog *relationTb.ChatLogModel, - pageNumber, showNumber int32, - contentTypes []int32, - ) (int64, []relationTb.ChatLogModel, error) } func NewChatLogDatabase(chatLogModelInterface relationTb.ChatLogModelInterface) ChatLogDatabase { @@ -39,11 +34,3 @@ type chatLogDatabase struct { func (c *chatLogDatabase) CreateChatLog(msg *pbMsg.MsgDataToMQ) error { return c.chatLogModel.Create(msg) } - -func (c *chatLogDatabase) GetChatLog( - chatLog *relationTb.ChatLogModel, - pageNumber, showNumber int32, - contentTypes []int32, -) (int64, []relationTb.ChatLogModel, error) { - return c.chatLogModel.GetChatLog(chatLog, pageNumber, showNumber, contentTypes) -} diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 3be9b334a..fe72396ce 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -15,6 +15,7 @@ package controller import ( + "context" "errors" "time" @@ -124,9 +125,8 @@ type CommonMsgDatabase interface { ) (msgCount int64, userCount int64, groups []*unRelationTb.GroupCount, dateCount map[string]int64, err error) } -func NewCommonMsgDatabase(msgDocModel unRelationTb.MsgDocModelInterface, cacheModel cache.MsgModel, msgMyqModel relation.ChatLogModelInterface) CommonMsgDatabase { +func NewCommonMsgDatabase(msgDocModel unRelationTb.MsgDocModelInterface, cacheModel cache.MsgModel) CommonMsgDatabase { return &commonMsgDatabase{ - msgMyq: msgMyqModel, msgDocDatabase: msgDocModel, cache: cacheModel, producer: kafka.NewKafkaProducer(config.Config.Kafka.Addr, config.Config.Kafka.LatestMsgToRedis.Topic), @@ -135,18 +135,16 @@ func NewCommonMsgDatabase(msgDocModel unRelationTb.MsgDocModelInterface, cacheMo } } -func InitCommonMsgDatabase(rdb redis.UniversalClient, database *mongo.Database, dbGrom *gorm.DB) CommonMsgDatabase { +func InitCommonMsgDatabase(rdb redis.UniversalClient, database *mongo.Database) CommonMsgDatabase { cacheModel := cache.NewMsgCacheModel(rdb) msgDocModel := unrelation.NewMsgMongoDriver(database) - msgMyqModel := relation2.NewChatLogGorm(dbGrom) - CommonMsgDatabase := NewCommonMsgDatabase(msgDocModel, cacheModel, msgMyqModel) + CommonMsgDatabase := NewCommonMsgDatabase(msgDocModel, cacheModel) return CommonMsgDatabase } type commonMsgDatabase struct { msgDocDatabase unRelationTb.MsgDocModelInterface msg unRelationTb.MsgDocModel - msgMyq relation.ChatLogModelInterface cache cache.MsgModel producer *kafka.Producer producerToMongo *kafka.Producer diff --git a/pkg/common/db/relation/chat_log_model.go b/pkg/common/db/relation/chat_log_model.go index c4068e3f7..b0c88b608 100644 --- a/pkg/common/db/relation/chat_log_model.go +++ b/pkg/common/db/relation/chat_log_model.go @@ -15,8 +15,6 @@ package relation import ( - "fmt" - "github.com/golang/protobuf/jsonpb" "github.com/jinzhu/copier" "google.golang.org/protobuf/proto" @@ -62,44 +60,3 @@ func (c *ChatLogGorm) Create(msg *pbMsg.MsgDataToMQ) error { chatLog.SendTime = utils.UnixMillSecondToTime(msg.MsgData.SendTime) return c.DB.Create(chatLog).Error } - -func (c *ChatLogGorm) GetChatLog( - chatLog *relation.ChatLogModel, - pageNumber, showNumber int32, - contentTypeList []int32, -) (int64, []relation.ChatLogModel, error) { - mdb := c.DB.Model(chatLog) - if chatLog.SendTime.Unix() > 0 { - mdb = mdb.Where("send_time > ? and send_time < ?", chatLog.SendTime, chatLog.SendTime.AddDate(0, 0, 1)) - } - if chatLog.Content != "" { - mdb = mdb.Where(" content like ? ", fmt.Sprintf("%%%s%%", chatLog.Content)) - } - if chatLog.SessionType == 1 { - mdb = mdb.Where("session_type = ?", chatLog.SessionType) - } else if chatLog.SessionType == 2 { - mdb = mdb.Where("session_type in (?)", []int{constant.GroupChatType, constant.SuperGroupChatType}) - } - if chatLog.ContentType != 0 { - mdb = mdb.Where("content_type = ?", chatLog.ContentType) - } - if chatLog.SendID != "" { - mdb = mdb.Where("send_id = ?", chatLog.SendID) - } - if chatLog.RecvID != "" { - mdb = mdb.Where("recv_id = ?", chatLog.RecvID) - } - if len(contentTypeList) > 0 { - mdb = mdb.Where("content_type in (?)", contentTypeList) - } - var count int64 - if err := mdb.Count(&count).Error; err != nil { - return 0, nil, err - } - var chatLogs []relation.ChatLogModel - mdb = mdb.Limit(int(showNumber)).Offset(int(showNumber * (pageNumber - 1))) - if err := mdb.Find(&chatLogs).Error; err != nil { - return 0, nil, err - } - return count, chatLogs, nil -} diff --git a/pkg/common/db/table/relation/chatlog.go b/pkg/common/db/table/relation/chatlog.go index c67edb1fe..8d4429362 100644 --- a/pkg/common/db/table/relation/chatlog.go +++ b/pkg/common/db/table/relation/chatlog.go @@ -48,5 +48,4 @@ func (ChatLogModel) TableName() string { type ChatLogModelInterface interface { Create(msg *pbMsg.MsgDataToMQ) error - GetChatLog(chatLog *ChatLogModel, pageNumber, showNumber int32, contentTypes []int32) (int64, []ChatLogModel, error) } diff --git a/pkg/common/db/unrelation/msg.go b/pkg/common/db/unrelation/msg.go index f9e9a7132..222b70190 100644 --- a/pkg/common/db/unrelation/msg.go +++ b/pkg/common/db/unrelation/msg.go @@ -1202,5 +1202,12 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa msgs = append(msgs, msg) } } + start := (req.Pagination.PageNumber - 1) * req.Pagination.ShowNumber + n := int32(len(msgs)) + if start+req.Pagination.ShowNumber < n { + msgs = msgs[start : start+req.Pagination.ShowNumber] + } else { + msgs = msgs[start:] + } return msgs, nil } diff --git a/pkg/proto/group/group.go b/pkg/proto/group/group.go index 5b387cb3a..2cebc0df0 100644 --- a/pkg/proto/group/group.go +++ b/pkg/proto/group/group.go @@ -196,9 +196,6 @@ func (x *GetGroupAllMemberReq) Check() error { } func (x *GetGroupsReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } if x.Pagination == nil { return errs.ErrArgs.Wrap("pagination is empty") } diff --git a/pkg/proto/msg/msg.pb.go b/pkg/proto/msg/msg.pb.go index b8b8efd6e..e5a8156d6 100644 --- a/pkg/proto/msg/msg.pb.go +++ b/pkg/proto/msg/msg.pb.go @@ -2740,6 +2740,99 @@ func (x *ChatLog) GetGroupType() int32 { return 0 } +type BatchSendMessageReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RecvIDList []string `protobuf:"bytes,1,rep,name=recvIDList,proto3" json:"recvIDList"` + MsgData *sdkws.MsgData `protobuf:"bytes,2,opt,name=msgData,proto3" json:"msgData"` +} + +func (x *BatchSendMessageReq) Reset() { + *x = BatchSendMessageReq{} + if protoimpl.UnsafeEnabled { + mi := &file_msg_msg_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BatchSendMessageReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BatchSendMessageReq) ProtoMessage() {} + +func (x *BatchSendMessageReq) ProtoReflect() protoreflect.Message { + mi := &file_msg_msg_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) +} + +// Deprecated: Use BatchSendMessageReq.ProtoReflect.Descriptor instead. +func (*BatchSendMessageReq) Descriptor() ([]byte, []int) { + return file_msg_msg_proto_rawDescGZIP(), []int{48} +} + +func (x *BatchSendMessageReq) GetRecvIDList() []string { + if x != nil { + return x.RecvIDList + } + return nil +} + +func (x *BatchSendMessageReq) GetMsgData() *sdkws.MsgData { + if x != nil { + return x.MsgData + } + return nil +} + +type BatchSendMessageResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *BatchSendMessageResp) Reset() { + *x = BatchSendMessageResp{} + if protoimpl.UnsafeEnabled { + mi := &file_msg_msg_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BatchSendMessageResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BatchSendMessageResp) ProtoMessage() {} + +func (x *BatchSendMessageResp) ProtoReflect() protoreflect.Message { + mi := &file_msg_msg_proto_msgTypes[49] + 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 BatchSendMessageResp.ProtoReflect.Descriptor instead. +func (*BatchSendMessageResp) Descriptor() ([]byte, []int) { + return file_msg_msg_proto_rawDescGZIP(), []int{49} +} + var File_msg_msg_proto protoreflect.FileDescriptor var file_msg_msg_proto_rawDesc = []byte{ @@ -3059,131 +3152,139 @@ var file_msg_msg_proto_rawDesc = []byte{ 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x32, 0x82, 0x0f, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x50, - 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x20, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, + 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x22, 0x6c, 0x0a, 0x13, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, + 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, + 0x0a, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, + 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, + 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, + 0x44, 0x61, 0x74, 0x61, 0x22, 0x16, 0x0a, 0x14, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x6e, + 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x32, 0x82, 0x0f, 0x0a, + 0x03, 0x6d, 0x73, 0x67, 0x12, 0x50, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, + 0x71, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, + 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, + 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, + 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, + 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, + 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, + 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x11, 0x50, 0x75, 0x6c, 0x6c, + 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x12, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x70, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x68, 0x0a, 0x11, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x12, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, + 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, + 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, - 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, - 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x2e, + 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x07, + 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, 0x15, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x07, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, - 0x67, 0x12, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, - 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, - 0x0a, 0x15, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x5e, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, - 0x4d, 0x73, 0x67, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x43, 0x6c, 0x65, + 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5e, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, + 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x55, 0x73, 0x65, - 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x4f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x12, 0x1f, + 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, + 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, + 0x73, 0x67, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x4d, 0x73, 0x67, 0x73, 0x12, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, + 0x67, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, + 0x73, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, + 0x71, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, + 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, - 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x65, 0x71, 0x1a, - 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x73, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, - 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x12, 0x2b, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, - 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x64, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x26, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, - 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, - 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x61, 0x0a, 0x10, - 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, - 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x61, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, - 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x4c, 0x0a, 0x09, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x12, - 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, - 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x5b, 0x0a, 0x0e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, - 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, - 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, - 0x16, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, - 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x7c, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x12, - 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, - 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x91, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x35, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, - 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x36, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, + 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x64, 0x0a, 0x11, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, + 0x6c, 0x12, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, + 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, + 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x61, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, + 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, + 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, + 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x61, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, - 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x42, 0x33, 0x5a, 0x31, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x73, 0x67, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, + 0x1a, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, + 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4c, 0x0a, 0x09, 0x52, 0x65, 0x76, 0x6f, + 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x0e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, + 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, + 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, + 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, + 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, + 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x16, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x2e, + 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, + 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, + 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, + 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, + 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7c, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x43, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, + 0x61, 0x64, 0x53, 0x65, 0x71, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, + 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, + 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, + 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, + 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x91, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, + 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x35, 0x2e, 0x4f, 0x70, + 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, + 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, + 0x65, 0x71, 0x1a, 0x36, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, + 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, 0x47, 0x65, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x2e, 0x4f, 0x70, + 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, + 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, + 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, + 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, + 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, + 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, + 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x2f, 0x6d, 0x73, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -3198,7 +3299,7 @@ func file_msg_msg_proto_rawDescGZIP() []byte { return file_msg_msg_proto_rawDescData } -var file_msg_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 51) +var file_msg_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 53) var file_msg_msg_proto_goTypes = []interface{}{ (*MsgDataToMQ)(nil), // 0: OpenIMServer.msg.MsgDataToMQ (*MsgDataToDB)(nil), // 1: OpenIMServer.msg.MsgDataToDB @@ -3248,83 +3349,86 @@ var file_msg_msg_proto_goTypes = []interface{}{ (*SearchMessageReq)(nil), // 45: OpenIMServer.msg.SearchMessageReq (*SearchMessageResp)(nil), // 46: OpenIMServer.msg.SearchMessageResp (*ChatLog)(nil), // 47: OpenIMServer.msg.ChatLog - nil, // 48: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry - nil, // 49: OpenIMServer.msg.GetActiveUserResp.DateCountEntry - nil, // 50: OpenIMServer.msg.GetActiveGroupResp.DateCountEntry - (*sdkws.MsgData)(nil), // 51: OpenIMServer.sdkws.MsgData - (*sdkws.RequestPagination)(nil), // 52: OpenIMServer.sdkws.RequestPagination - (*sdkws.UserInfo)(nil), // 53: OpenIMServer.sdkws.UserInfo - (*sdkws.GroupInfo)(nil), // 54: OpenIMServer.sdkws.GroupInfo - (*sdkws.GetMaxSeqReq)(nil), // 55: OpenIMServer.sdkws.GetMaxSeqReq - (*sdkws.PullMessageBySeqsReq)(nil), // 56: OpenIMServer.sdkws.PullMessageBySeqsReq - (*sdkws.GetMaxSeqResp)(nil), // 57: OpenIMServer.sdkws.GetMaxSeqResp - (*sdkws.PullMessageBySeqsResp)(nil), // 58: OpenIMServer.sdkws.PullMessageBySeqsResp + (*BatchSendMessageReq)(nil), // 48: OpenIMServer.msg.batchSendMessageReq + (*BatchSendMessageResp)(nil), // 49: OpenIMServer.msg.batchSendMessageResp + nil, // 50: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry + nil, // 51: OpenIMServer.msg.GetActiveUserResp.DateCountEntry + nil, // 52: OpenIMServer.msg.GetActiveGroupResp.DateCountEntry + (*sdkws.MsgData)(nil), // 53: OpenIMServer.sdkws.MsgData + (*sdkws.RequestPagination)(nil), // 54: OpenIMServer.sdkws.RequestPagination + (*sdkws.UserInfo)(nil), // 55: OpenIMServer.sdkws.UserInfo + (*sdkws.GroupInfo)(nil), // 56: OpenIMServer.sdkws.GroupInfo + (*sdkws.GetMaxSeqReq)(nil), // 57: OpenIMServer.sdkws.GetMaxSeqReq + (*sdkws.PullMessageBySeqsReq)(nil), // 58: OpenIMServer.sdkws.PullMessageBySeqsReq + (*sdkws.GetMaxSeqResp)(nil), // 59: OpenIMServer.sdkws.GetMaxSeqResp + (*sdkws.PullMessageBySeqsResp)(nil), // 60: OpenIMServer.sdkws.PullMessageBySeqsResp } var file_msg_msg_proto_depIdxs = []int32{ - 51, // 0: OpenIMServer.msg.MsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 51, // 1: OpenIMServer.msg.MsgDataToDB.msgData:type_name -> OpenIMServer.sdkws.MsgData - 51, // 2: OpenIMServer.msg.PushMsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 51, // 3: OpenIMServer.msg.MsgDataToMongoByMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 51, // 4: OpenIMServer.msg.SendMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 51, // 5: OpenIMServer.msg.MsgDataToModifyByMQ.messages:type_name -> OpenIMServer.sdkws.MsgData + 53, // 0: OpenIMServer.msg.MsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData + 53, // 1: OpenIMServer.msg.MsgDataToDB.msgData:type_name -> OpenIMServer.sdkws.MsgData + 53, // 2: OpenIMServer.msg.PushMsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData + 53, // 3: OpenIMServer.msg.MsgDataToMongoByMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData + 53, // 4: OpenIMServer.msg.SendMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData + 53, // 5: OpenIMServer.msg.MsgDataToModifyByMQ.messages:type_name -> OpenIMServer.sdkws.MsgData 23, // 6: OpenIMServer.msg.ClearConversationsMsgReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt 23, // 7: OpenIMServer.msg.UserClearAllMsgReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt 23, // 8: OpenIMServer.msg.DeleteMsgsReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt - 48, // 9: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.seqs:type_name -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry - 52, // 10: OpenIMServer.msg.GetActiveUserReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 53, // 11: OpenIMServer.msg.ActiveUser.user:type_name -> OpenIMServer.sdkws.UserInfo - 49, // 12: OpenIMServer.msg.GetActiveUserResp.dateCount:type_name -> OpenIMServer.msg.GetActiveUserResp.DateCountEntry + 50, // 9: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.seqs:type_name -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry + 54, // 10: OpenIMServer.msg.GetActiveUserReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination + 55, // 11: OpenIMServer.msg.ActiveUser.user:type_name -> OpenIMServer.sdkws.UserInfo + 51, // 12: OpenIMServer.msg.GetActiveUserResp.dateCount:type_name -> OpenIMServer.msg.GetActiveUserResp.DateCountEntry 40, // 13: OpenIMServer.msg.GetActiveUserResp.users:type_name -> OpenIMServer.msg.ActiveUser - 52, // 14: OpenIMServer.msg.GetActiveGroupReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 54, // 15: OpenIMServer.msg.ActiveGroup.group:type_name -> OpenIMServer.sdkws.GroupInfo - 50, // 16: OpenIMServer.msg.GetActiveGroupResp.dateCount:type_name -> OpenIMServer.msg.GetActiveGroupResp.DateCountEntry + 54, // 14: OpenIMServer.msg.GetActiveGroupReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination + 56, // 15: OpenIMServer.msg.ActiveGroup.group:type_name -> OpenIMServer.sdkws.GroupInfo + 52, // 16: OpenIMServer.msg.GetActiveGroupResp.dateCount:type_name -> OpenIMServer.msg.GetActiveGroupResp.DateCountEntry 43, // 17: OpenIMServer.msg.GetActiveGroupResp.groups:type_name -> OpenIMServer.msg.ActiveGroup - 52, // 18: OpenIMServer.msg.SearchMessageReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination + 54, // 18: OpenIMServer.msg.SearchMessageReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination 47, // 19: OpenIMServer.msg.SearchMessageResp.chatLogs:type_name -> OpenIMServer.msg.ChatLog - 37, // 20: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry.value:type_name -> OpenIMServer.msg.Seqs - 55, // 21: OpenIMServer.msg.msg.GetMaxSeq:input_type -> OpenIMServer.sdkws.GetMaxSeqReq - 34, // 22: OpenIMServer.msg.msg.GetConversationMaxSeq:input_type -> OpenIMServer.msg.GetConversationMaxSeqReq - 56, // 23: OpenIMServer.msg.msg.PullMessageBySeqs:input_type -> OpenIMServer.sdkws.PullMessageBySeqsReq - 45, // 24: OpenIMServer.msg.msg.SearchMessage:input_type -> OpenIMServer.msg.SearchMessageReq - 6, // 25: OpenIMServer.msg.msg.SendMsg:input_type -> OpenIMServer.msg.SendMsgReq - 24, // 26: OpenIMServer.msg.msg.ClearConversationsMsg:input_type -> OpenIMServer.msg.ClearConversationsMsgReq - 26, // 27: OpenIMServer.msg.msg.UserClearAllMsg:input_type -> OpenIMServer.msg.UserClearAllMsgReq - 28, // 28: OpenIMServer.msg.msg.DeleteMsgs:input_type -> OpenIMServer.msg.DeleteMsgsReq - 32, // 29: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:input_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqReq - 30, // 30: OpenIMServer.msg.msg.DeleteMsgPhysical:input_type -> OpenIMServer.msg.DeleteMsgPhysicalReq - 8, // 31: OpenIMServer.msg.msg.SetSendMsgStatus:input_type -> OpenIMServer.msg.SetSendMsgStatusReq - 10, // 32: OpenIMServer.msg.msg.GetSendMsgStatus:input_type -> OpenIMServer.msg.GetSendMsgStatusReq - 15, // 33: OpenIMServer.msg.msg.RevokeMsg:input_type -> OpenIMServer.msg.RevokeMsgReq - 17, // 34: OpenIMServer.msg.msg.MarkMsgsAsRead:input_type -> OpenIMServer.msg.MarkMsgsAsReadReq - 19, // 35: OpenIMServer.msg.msg.MarkConversationAsRead:input_type -> OpenIMServer.msg.MarkConversationAsReadReq - 21, // 36: OpenIMServer.msg.msg.SetConversationHasReadSeq:input_type -> OpenIMServer.msg.SetConversationHasReadSeqReq - 36, // 37: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:input_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqReq - 39, // 38: OpenIMServer.msg.msg.GetActiveUser:input_type -> OpenIMServer.msg.GetActiveUserReq - 42, // 39: OpenIMServer.msg.msg.GetActiveGroup:input_type -> OpenIMServer.msg.GetActiveGroupReq - 57, // 40: OpenIMServer.msg.msg.GetMaxSeq:output_type -> OpenIMServer.sdkws.GetMaxSeqResp - 35, // 41: OpenIMServer.msg.msg.GetConversationMaxSeq:output_type -> OpenIMServer.msg.GetConversationMaxSeqResp - 58, // 42: OpenIMServer.msg.msg.PullMessageBySeqs:output_type -> OpenIMServer.sdkws.PullMessageBySeqsResp - 46, // 43: OpenIMServer.msg.msg.SearchMessage:output_type -> OpenIMServer.msg.SearchMessageResp - 7, // 44: OpenIMServer.msg.msg.SendMsg:output_type -> OpenIMServer.msg.SendMsgResp - 25, // 45: OpenIMServer.msg.msg.ClearConversationsMsg:output_type -> OpenIMServer.msg.ClearConversationsMsgResp - 27, // 46: OpenIMServer.msg.msg.UserClearAllMsg:output_type -> OpenIMServer.msg.UserClearAllMsgResp - 29, // 47: OpenIMServer.msg.msg.DeleteMsgs:output_type -> OpenIMServer.msg.DeleteMsgsResp - 33, // 48: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:output_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqResp - 31, // 49: OpenIMServer.msg.msg.DeleteMsgPhysical:output_type -> OpenIMServer.msg.DeleteMsgPhysicalResp - 9, // 50: OpenIMServer.msg.msg.SetSendMsgStatus:output_type -> OpenIMServer.msg.SetSendMsgStatusResp - 11, // 51: OpenIMServer.msg.msg.GetSendMsgStatus:output_type -> OpenIMServer.msg.GetSendMsgStatusResp - 16, // 52: OpenIMServer.msg.msg.RevokeMsg:output_type -> OpenIMServer.msg.RevokeMsgResp - 18, // 53: OpenIMServer.msg.msg.MarkMsgsAsRead:output_type -> OpenIMServer.msg.MarkMsgsAsReadResp - 20, // 54: OpenIMServer.msg.msg.MarkConversationAsRead:output_type -> OpenIMServer.msg.MarkConversationAsReadResp - 22, // 55: OpenIMServer.msg.msg.SetConversationHasReadSeq:output_type -> OpenIMServer.msg.SetConversationHasReadSeqResp - 38, // 56: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:output_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp - 41, // 57: OpenIMServer.msg.msg.GetActiveUser:output_type -> OpenIMServer.msg.GetActiveUserResp - 44, // 58: OpenIMServer.msg.msg.GetActiveGroup:output_type -> OpenIMServer.msg.GetActiveGroupResp - 40, // [40:59] is the sub-list for method output_type - 21, // [21:40] is the sub-list for method input_type - 21, // [21:21] is the sub-list for extension type_name - 21, // [21:21] is the sub-list for extension extendee - 0, // [0:21] is the sub-list for field type_name + 53, // 20: OpenIMServer.msg.batchSendMessageReq.msgData:type_name -> OpenIMServer.sdkws.MsgData + 37, // 21: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry.value:type_name -> OpenIMServer.msg.Seqs + 57, // 22: OpenIMServer.msg.msg.GetMaxSeq:input_type -> OpenIMServer.sdkws.GetMaxSeqReq + 34, // 23: OpenIMServer.msg.msg.GetConversationMaxSeq:input_type -> OpenIMServer.msg.GetConversationMaxSeqReq + 58, // 24: OpenIMServer.msg.msg.PullMessageBySeqs:input_type -> OpenIMServer.sdkws.PullMessageBySeqsReq + 45, // 25: OpenIMServer.msg.msg.SearchMessage:input_type -> OpenIMServer.msg.SearchMessageReq + 6, // 26: OpenIMServer.msg.msg.SendMsg:input_type -> OpenIMServer.msg.SendMsgReq + 24, // 27: OpenIMServer.msg.msg.ClearConversationsMsg:input_type -> OpenIMServer.msg.ClearConversationsMsgReq + 26, // 28: OpenIMServer.msg.msg.UserClearAllMsg:input_type -> OpenIMServer.msg.UserClearAllMsgReq + 28, // 29: OpenIMServer.msg.msg.DeleteMsgs:input_type -> OpenIMServer.msg.DeleteMsgsReq + 32, // 30: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:input_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqReq + 30, // 31: OpenIMServer.msg.msg.DeleteMsgPhysical:input_type -> OpenIMServer.msg.DeleteMsgPhysicalReq + 8, // 32: OpenIMServer.msg.msg.SetSendMsgStatus:input_type -> OpenIMServer.msg.SetSendMsgStatusReq + 10, // 33: OpenIMServer.msg.msg.GetSendMsgStatus:input_type -> OpenIMServer.msg.GetSendMsgStatusReq + 15, // 34: OpenIMServer.msg.msg.RevokeMsg:input_type -> OpenIMServer.msg.RevokeMsgReq + 17, // 35: OpenIMServer.msg.msg.MarkMsgsAsRead:input_type -> OpenIMServer.msg.MarkMsgsAsReadReq + 19, // 36: OpenIMServer.msg.msg.MarkConversationAsRead:input_type -> OpenIMServer.msg.MarkConversationAsReadReq + 21, // 37: OpenIMServer.msg.msg.SetConversationHasReadSeq:input_type -> OpenIMServer.msg.SetConversationHasReadSeqReq + 36, // 38: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:input_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqReq + 39, // 39: OpenIMServer.msg.msg.GetActiveUser:input_type -> OpenIMServer.msg.GetActiveUserReq + 42, // 40: OpenIMServer.msg.msg.GetActiveGroup:input_type -> OpenIMServer.msg.GetActiveGroupReq + 59, // 41: OpenIMServer.msg.msg.GetMaxSeq:output_type -> OpenIMServer.sdkws.GetMaxSeqResp + 35, // 42: OpenIMServer.msg.msg.GetConversationMaxSeq:output_type -> OpenIMServer.msg.GetConversationMaxSeqResp + 60, // 43: OpenIMServer.msg.msg.PullMessageBySeqs:output_type -> OpenIMServer.sdkws.PullMessageBySeqsResp + 46, // 44: OpenIMServer.msg.msg.SearchMessage:output_type -> OpenIMServer.msg.SearchMessageResp + 7, // 45: OpenIMServer.msg.msg.SendMsg:output_type -> OpenIMServer.msg.SendMsgResp + 25, // 46: OpenIMServer.msg.msg.ClearConversationsMsg:output_type -> OpenIMServer.msg.ClearConversationsMsgResp + 27, // 47: OpenIMServer.msg.msg.UserClearAllMsg:output_type -> OpenIMServer.msg.UserClearAllMsgResp + 29, // 48: OpenIMServer.msg.msg.DeleteMsgs:output_type -> OpenIMServer.msg.DeleteMsgsResp + 33, // 49: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:output_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqResp + 31, // 50: OpenIMServer.msg.msg.DeleteMsgPhysical:output_type -> OpenIMServer.msg.DeleteMsgPhysicalResp + 9, // 51: OpenIMServer.msg.msg.SetSendMsgStatus:output_type -> OpenIMServer.msg.SetSendMsgStatusResp + 11, // 52: OpenIMServer.msg.msg.GetSendMsgStatus:output_type -> OpenIMServer.msg.GetSendMsgStatusResp + 16, // 53: OpenIMServer.msg.msg.RevokeMsg:output_type -> OpenIMServer.msg.RevokeMsgResp + 18, // 54: OpenIMServer.msg.msg.MarkMsgsAsRead:output_type -> OpenIMServer.msg.MarkMsgsAsReadResp + 20, // 55: OpenIMServer.msg.msg.MarkConversationAsRead:output_type -> OpenIMServer.msg.MarkConversationAsReadResp + 22, // 56: OpenIMServer.msg.msg.SetConversationHasReadSeq:output_type -> OpenIMServer.msg.SetConversationHasReadSeqResp + 38, // 57: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:output_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp + 41, // 58: OpenIMServer.msg.msg.GetActiveUser:output_type -> OpenIMServer.msg.GetActiveUserResp + 44, // 59: OpenIMServer.msg.msg.GetActiveGroup:output_type -> OpenIMServer.msg.GetActiveGroupResp + 41, // [41:60] is the sub-list for method output_type + 22, // [22:41] is the sub-list for method input_type + 22, // [22:22] is the sub-list for extension type_name + 22, // [22:22] is the sub-list for extension extendee + 0, // [0:22] is the sub-list for field type_name } func init() { file_msg_msg_proto_init() } @@ -3909,6 +4013,30 @@ func file_msg_msg_proto_init() { return nil } } + file_msg_msg_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BatchSendMessageReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_msg_msg_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BatchSendMessageResp); 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{ @@ -3916,7 +4044,7 @@ func file_msg_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_msg_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 51, + NumMessages: 53, NumExtensions: 0, NumServices: 1, }, diff --git a/pkg/proto/msg/msg.proto b/pkg/proto/msg/msg.proto index 33e29e1f2..af1d137b9 100644 --- a/pkg/proto/msg/msg.proto +++ b/pkg/proto/msg/msg.proto @@ -273,6 +273,13 @@ message ChatLog { int32 groupType=23; } +message batchSendMessageReq{ + repeated string recvIDList=1; + sdkws.MsgData msgData = 2; +} + +message batchSendMessageResp{ +} service msg { //获取最小最大seq(包括用户的,以及指定群组的) From 887267e62d99d22a01905ff765a48c7b628e00e9 Mon Sep 17 00:00:00 2001 From: pluto <83957921+plutoyty@users.noreply.github.com> Date: Fri, 14 Jul 2023 18:59:28 +0800 Subject: [PATCH 05/46] fix bug #545 (#555) --- go.mod | 4 +--- internal/push/offlinepush/offlinepush_interface.go | 3 +++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 8a7fd7153..21e6e2241 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.18 require ( firebase.google.com/go v3.13.0+incompatible github.com/OpenIMSDK/open_utils v1.0.8 - github.com/Shopify/sarama v1.32.0 + github.com/Shopify/sarama v1.29.0 github.com/bwmarrin/snowflake v0.3.0 github.com/dtm-labs/rockscache v0.1.1 github.com/gin-gonic/gin v1.9.1 @@ -141,5 +141,3 @@ require ( google.golang.org/genproto v0.0.0-20230525234025-438c736192d0 // indirect gopkg.in/ini.v1 v1.67.0 // indirect ) - -replace github.com/Shopify/sarama => github.com/Shopify/sarama v1.29.0 diff --git a/internal/push/offlinepush/offlinepush_interface.go b/internal/push/offlinepush/offlinepush_interface.go index 44dfce2b8..5aa7e089f 100644 --- a/internal/push/offlinepush/offlinepush_interface.go +++ b/internal/push/offlinepush/offlinepush_interface.go @@ -18,10 +18,12 @@ import ( "context" ) +// OfflinePusher Offline Pusher type OfflinePusher interface { Push(ctx context.Context, userIDs []string, title, content string, opts *Opts) error } +// Opts opts type Opts struct { Signal *Signal IOSPushSound string @@ -29,6 +31,7 @@ type Opts struct { Ex string } +// Signal message id type Signal struct { ClientMsgID string } From 16a851d9515e701e457cdb5efee2be7c58a3928e Mon Sep 17 00:00:00 2001 From: Alan <68671759+hanzhixiao@users.noreply.github.com> Date: Fri, 14 Jul 2023 19:14:18 +0800 Subject: [PATCH 06/46] message for your changes (#565) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> Co-authored-by: ‘hanzhixiao’ <‘709674996@qq.com’> --- build.cmd | 1 + internal/rpc/msg/server.go | 3 --- pkg/common/db/controller/msg.go | 6 ------ 3 files changed, 1 insertion(+), 9 deletions(-) create mode 100644 build.cmd diff --git a/build.cmd b/build.cmd new file mode 100644 index 000000000..4c53576c0 --- /dev/null +++ b/build.cmd @@ -0,0 +1 @@ +go build -o \ No newline at end of file diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index 1a152b7be..5e2cf925f 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -17,9 +17,6 @@ package msg import ( "context" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" - "google.golang.org/grpc" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index fe72396ce..fdda23ac9 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -15,16 +15,10 @@ package controller import ( - "context" "errors" "time" - "gorm.io/gorm" - - relation2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/redis/go-redis/v9" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" From 0c23b3a4434b0a5c3331d653c1100dc1860c278c Mon Sep 17 00:00:00 2001 From: Alan <68671759+hanzhixiao@users.noreply.github.com> Date: Fri, 14 Jul 2023 20:40:41 +0800 Subject: [PATCH 07/46] debug (#566) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * message for your changes Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * debug Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * Delete start.bat * Delete build.cmd --------- Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> Co-authored-by: ‘hanzhixiao’ <‘709674996@qq.com’> --- build.cmd | 1 - internal/rpc/msg/sync_msg.go | 7 +++---- pkg/common/db/controller/msg.go | 10 +++++----- pkg/common/db/table/unrelation/msg.go | 2 +- pkg/common/db/unrelation/msg.go | 22 +++++++++++----------- 5 files changed, 20 insertions(+), 22 deletions(-) delete mode 100644 build.cmd diff --git a/build.cmd b/build.cmd deleted file mode 100644 index 4c53576c0..000000000 --- a/build.cmd +++ /dev/null @@ -1 +0,0 @@ -go build -o \ No newline at end of file diff --git a/internal/rpc/msg/sync_msg.go b/internal/rpc/msg/sync_msg.go index 8cfac93bd..70967a1ba 100644 --- a/internal/rpc/msg/sync_msg.go +++ b/internal/rpc/msg/sync_msg.go @@ -108,11 +108,11 @@ func (m *msgServer) GetMaxSeq(ctx context.Context, req *sdkws.GetMaxSeqReq) (*sd func (m *msgServer) SearchMessage(ctx context.Context, req *msg.SearchMessageReq) (resp *msg.SearchMessageResp, err error) { var chatLogs []*sdkws.MsgData + var total int32 resp = &msg.SearchMessageResp{} - if chatLogs, err = m.MsgDatabase.SearchMessage(ctx, req); err != nil { + if total, chatLogs, err = m.MsgDatabase.SearchMessage(ctx, req); err != nil { return nil, err } - var num int for _, chatLog := range chatLogs { pbChatLog := &msg.ChatLog{} utils.CopyStructFields(pbChatLog, chatLog) @@ -146,9 +146,8 @@ func (m *msgServer) SearchMessage(ctx context.Context, req *msg.SearchMessageReq pbChatLog.GroupType = group.GroupType } resp.ChatLogs = append(resp.ChatLogs, pbChatLog) - num++ } - resp.ChatLogsNum = int32(num) + resp.ChatLogsNum = total return resp, nil } diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index fdda23ac9..37a71bafa 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -92,7 +92,7 @@ type CommonMsgDatabase interface { GetConversationMinMaxSeqInMongoAndCache(ctx context.Context, conversationID string) (minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache int64, err error) SetSendMsgStatus(ctx context.Context, id string, status int32) error GetSendMsgStatus(ctx context.Context, id string) (int32, error) - SearchMessage(ctx context.Context, req *pbMsg.SearchMessageReq) (msgData []*sdkws.MsgData, err error) + SearchMessage(ctx context.Context, req *pbMsg.SearchMessageReq) (total int32, msgData []*sdkws.MsgData, err error) // to mq MsgToMQ(ctx context.Context, key string, msg2mq *sdkws.MsgData) error @@ -940,14 +940,14 @@ func (db *commonMsgDatabase) RangeGroupSendCount( return db.msgDocDatabase.RangeGroupSendCount(ctx, start, end, ase, pageNumber, showNumber) } -func (db *commonMsgDatabase) SearchMessage(ctx context.Context, req *pbMsg.SearchMessageReq) (msgData []*sdkws.MsgData, err error) { +func (db *commonMsgDatabase) SearchMessage(ctx context.Context, req *pbMsg.SearchMessageReq) (total int32, msgData []*sdkws.MsgData, err error) { var totalMsgs []*sdkws.MsgData - msgs, err := db.msgDocDatabase.SearchMessage(ctx, req) + total, msgs, err := db.msgDocDatabase.SearchMessage(ctx, req) if err != nil { - return nil, err + return 0, nil, err } for _, msg := range msgs { totalMsgs = append(totalMsgs, convert.MsgDB2Pb(msg.Msg)) } - return totalMsgs, nil + return total, totalMsgs, nil } diff --git a/pkg/common/db/table/unrelation/msg.go b/pkg/common/db/table/unrelation/msg.go index ac4602d35..dc16613ed 100644 --- a/pkg/common/db/table/unrelation/msg.go +++ b/pkg/common/db/table/unrelation/msg.go @@ -110,7 +110,7 @@ type MsgDocModelInterface interface { GetMsgDocModelByIndex(ctx context.Context, conversationID string, index, sort int64) (*MsgDocModel, error) DeleteMsgsInOneDocByIndex(ctx context.Context, docID string, indexes []int) error MarkSingleChatMsgsAsRead(ctx context.Context, userID string, docID string, indexes []int64) error - SearchMessage(ctx context.Context, req *msg.SearchMessageReq) ([]*MsgInfoModel, error) + SearchMessage(ctx context.Context, req *msg.SearchMessageReq) (int32, []*MsgInfoModel, error) RangeUserSendCount( ctx context.Context, start time.Time, diff --git a/pkg/common/db/unrelation/msg.go b/pkg/common/db/unrelation/msg.go index 222b70190..b7403ebde 100644 --- a/pkg/common/db/unrelation/msg.go +++ b/pkg/common/db/unrelation/msg.go @@ -1067,20 +1067,20 @@ func (m *MsgMongoDriver) RangeGroupSendCount( return result[0].MsgCount, result[0].UserCount, groups, dateCount, nil } -func (m *MsgMongoDriver) SearchMessage(ctx context.Context, req *msg.SearchMessageReq) ([]*table.MsgInfoModel, error) { - msgs, err := m.searchMessage(ctx, req) +func (m *MsgMongoDriver) SearchMessage(ctx context.Context, req *msg.SearchMessageReq) (int32, []*table.MsgInfoModel, error) { + total, msgs, err := m.searchMessage(ctx, req) if err != nil { - return nil, err + return 0, nil, err } for _, msg1 := range msgs { if msg1.IsRead { msg1.Msg.IsRead = true } } - return msgs, nil + return total, msgs, nil } -func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessageReq) ([]*table.MsgInfoModel, error) { +func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessageReq) (int32, []*table.MsgInfoModel, error) { var pipe mongo.Pipeline condition := bson.A{} if req.SendTime != "" { @@ -1153,16 +1153,16 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa } cursor, err := m.MsgCollection.Aggregate(ctx, pipe) if err != nil { - return nil, err + return 0, nil, err } var msgsDocs []table.MsgDocModel err = cursor.All(ctx, &msgsDocs) if err != nil { - return nil, err + return 0, nil, err } if len(msgsDocs) == 0 { - return nil, errs.Wrap(mongo.ErrNoDocuments) + return 0, nil, errs.Wrap(mongo.ErrNoDocuments) } msgs := make([]*table.MsgInfoModel, 0) for index := range msgsDocs { @@ -1187,14 +1187,14 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa } data, err := json.Marshal(&revokeContent) if err != nil { - return nil, err + return 0, nil, err } elem := sdkws.NotificationElem{ Detail: string(data), } content, err := json.Marshal(&elem) if err != nil { - return nil, err + return 0, nil, err } msg.Msg.ContentType = constant.MsgRevokeNotification msg.Msg.Content = string(content) @@ -1209,5 +1209,5 @@ func (m *MsgMongoDriver) searchMessage(ctx context.Context, req *msg.SearchMessa } else { msgs = msgs[start:] } - return msgs, nil + return n, msgs, nil } From 2f59be98d13aafd55443de3bb1b758d9a22f722d Mon Sep 17 00:00:00 2001 From: WangchuXiao Date: Fri, 14 Jul 2023 20:46:25 +0800 Subject: [PATCH 08/46] fix bug: multiple gateway kick user (#568) * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user --- internal/api/msg.go | 3 ++ internal/msggateway/hub_server.go | 7 ++-- internal/msggateway/n_ws_server.go | 58 +++++++++++++++--------------- internal/rpc/auth/auth.go | 8 ++++- internal/tools/cron_task.go | 10 +++--- pkg/proto/msg/msg.go | 10 ++++++ 6 files changed, 56 insertions(+), 40 deletions(-) diff --git a/internal/api/msg.go b/internal/api/msg.go index d8a3c292b..8ad7943e9 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -214,6 +214,7 @@ func (m *MessageApi) SendMessage(c *gin.Context) { if err != nil { log.ZError(c, "decodeData failed", err) apiresp.GinError(c, err) + return } sendMsgReq.MsgData.RecvID = req.RecvID var status int @@ -260,6 +261,7 @@ func (m *MessageApi) BatchSendMsg(c *gin.Context) { if err != nil { log.ZError(c, "GetAllUserIDs failed", err) apiresp.GinError(c, err) + return } if len(recvIDsPart) < showNumber { recvIDs = append(recvIDs, recvIDsPart...) @@ -275,6 +277,7 @@ func (m *MessageApi) BatchSendMsg(c *gin.Context) { if err != nil { log.ZError(c, "decodeData failed", err) apiresp.GinError(c, err) + return } for _, recvID := range recvIDs { sendMsgReq.MsgData.RecvID = recvID diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index 81aade1cb..746780c03 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -181,13 +181,12 @@ func (s *Server) KickUserOffline( if clients, _, ok := s.LongConnServer.GetUserPlatformCons(v, int(req.PlatformID)); ok { for _, client := range clients { log.ZDebug(ctx, "kick user offline", "userID", v, "platformID", req.PlatformID, "client", client) - err := client.KickOnlineMessage() - if err != nil { - return nil, err + if err := client.longConnServer.KickUserConn(client); err != nil { + log.ZWarn(ctx, "kick user offline failed", err, "userID", v, "platformID", req.PlatformID) } } } else { - log.ZWarn(ctx, "conn not exist", nil, "userID", v, "platformID", req.PlatformID) + log.ZInfo(ctx, "conn not exist", "userID", v, "platformID", req.PlatformID) } } return &msggateway.KickUserOfflineResp{}, nil diff --git a/internal/msggateway/n_ws_server.go b/internal/msggateway/n_ws_server.go index 2988e2c08..c2b46cf1f 100644 --- a/internal/msggateway/n_ws_server.go +++ b/internal/msggateway/n_ws_server.go @@ -47,6 +47,7 @@ type LongConnServer interface { Validate(s interface{}) error SetCacheHandler(cache cache.MsgModel) SetDiscoveryRegistry(client discoveryregistry.SvcDiscoveryRegistry) + KickUserConn(client *Client) error UnRegister(c *Client) Compressor Encoder @@ -145,7 +146,7 @@ func (ws *WsServer) Run() error { case client = <-ws.unregisterChan: ws.unregisterClient(client) case onlineInfo := <-ws.kickHandlerChan: - ws.multiTerminalLoginChecker(onlineInfo) + ws.multiTerminalLoginChecker(onlineInfo.clientOK, onlineInfo.oldClients, onlineInfo.newClient) } } }() @@ -207,80 +208,77 @@ func getRemoteAdders(client []*Client) string { return ret } -func (ws *WsServer) multiTerminalLoginChecker(info *kickHandler) { +func (ws *WsServer) KickUserConn(client *Client) error { + ws.clients.deleteClients(client.UserID, []*Client{client}) + return client.KickOnlineMessage() +} + +func (ws *WsServer) multiTerminalLoginChecker(clientOK bool, oldClients []*Client, newClient *Client) { switch config.Config.MultiLoginPolicy { case constant.DefalutNotKick: case constant.PCAndOther: - if constant.PlatformIDToClass(info.newClient.PlatformID) == constant.TerminalPC { + if constant.PlatformIDToClass(newClient.PlatformID) == constant.TerminalPC { return } fallthrough case constant.AllLoginButSameTermKick: - if info.clientOK { - ws.clients.deleteClients(info.newClient.UserID, info.oldClients) - for _, c := range info.oldClients { + if clientOK { + ws.clients.deleteClients(newClient.UserID, oldClients) + for _, c := range oldClients { err := c.KickOnlineMessage() if err != nil { log.ZWarn(c.ctx, "KickOnlineMessage", err) } } m, err := ws.cache.GetTokensWithoutError( - info.newClient.ctx, - info.newClient.UserID, - info.newClient.PlatformID, + newClient.ctx, + newClient.UserID, + newClient.PlatformID, ) if err != nil && err != redis.Nil { log.ZWarn( - info.newClient.ctx, + newClient.ctx, "get token from redis err", err, "userID", - info.newClient.UserID, + newClient.UserID, "platformID", - info.newClient.PlatformID, + newClient.PlatformID, ) return } if m == nil { log.ZWarn( - info.newClient.ctx, + newClient.ctx, "m is nil", errors.New("m is nil"), "userID", - info.newClient.UserID, + newClient.UserID, "platformID", - info.newClient.PlatformID, + newClient.PlatformID, ) return } log.ZDebug( - info.newClient.ctx, + newClient.ctx, "get token from redis", "userID", - info.newClient.UserID, + newClient.UserID, "platformID", - info.newClient.PlatformID, + newClient.PlatformID, "tokenMap", m, ) for k := range m { - if k != info.newClient.ctx.GetToken() { + if k != newClient.ctx.GetToken() { m[k] = constant.KickedToken } } - log.ZDebug(info.newClient.ctx, "set token map is ", "token map", m, "userID", info.newClient.UserID) - err = ws.cache.SetTokenMapByUidPid(info.newClient.ctx, info.newClient.UserID, info.newClient.PlatformID, m) + log.ZDebug(newClient.ctx, "set token map is ", "token map", m, "userID", newClient.UserID) + err = ws.cache.SetTokenMapByUidPid(newClient.ctx, newClient.UserID, newClient.PlatformID, m) if err != nil { - log.ZWarn( - info.newClient.ctx, - "SetTokenMapByUidPid err", - err, - "userID", - info.newClient.UserID, - "platformID", - info.newClient.PlatformID, - ) + log.ZWarn(newClient.ctx, "SetTokenMapByUidPid err", err, "userID", newClient.UserID, "platformID", newClient.PlatformID) return } } diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index 48e21fbce..317754743 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -23,6 +23,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" @@ -129,11 +130,16 @@ func (s *authServer) forceKickOff(ctx context.Context, userID string, platformID if err != nil { return err } + for _, v := range conns { + log.ZDebug(ctx, "forceKickOff", "conn", v.(*grpc.ClientConn).Target()) + } for _, v := range conns { client := msggateway.NewMsgGatewayClient(v) kickReq := &msggateway.KickUserOfflineReq{KickUserIDList: []string{userID}, PlatformID: platformID} _, err := client.KickUserOffline(ctx, kickReq) - return utils.Wrap(err, "") + if err != nil { + log.ZError(ctx, "forceKickOff", err, "kickReq", kickReq) + } } return nil } diff --git a/internal/tools/cron_task.go b/internal/tools/cron_task.go index 5e4183615..82343157b 100644 --- a/internal/tools/cron_task.go +++ b/internal/tools/cron_task.go @@ -41,11 +41,11 @@ func StartCronTask() error { panic(err) } log.ZInfo(context.Background(), "start msgDestruct cron task", "cron config", config.Config.MsgDestructTime) - _, err = c.AddFunc(config.Config.MsgDestructTime, msgTool.ConversationsDestructMsgs) - if err != nil { - fmt.Println("start conversationsDestructMsgs cron failed", err.Error(), config.Config.ChatRecordsClearTime) - panic(err) - } + // _, err = c.AddFunc(config.Config.MsgDestructTime, msgTool.ConversationsDestructMsgs) + // if err != nil { + // fmt.Println("start conversationsDestructMsgs cron failed", err.Error(), config.Config.ChatRecordsClearTime) + // panic(err) + // } c.Start() wg.Wait() return nil diff --git a/pkg/proto/msg/msg.go b/pkg/proto/msg/msg.go index 62b776856..03c9da915 100644 --- a/pkg/proto/msg/msg.go +++ b/pkg/proto/msg/msg.go @@ -126,6 +126,11 @@ func (x *MarkMsgsAsReadReq) Check() error { if x.UserID == "" { return errs.ErrArgs.Wrap("userID is empty") } + for _, seq := range x.Seqs { + if seq == 0 { + return errs.ErrArgs.Wrap("seqs has 0 value is invalid") + } + } return nil } @@ -139,6 +144,11 @@ func (x *MarkConversationAsReadReq) Check() error { if x.HasReadSeq < 1 { return errs.ErrArgs.Wrap("hasReadSeq is invalid") } + for _, seq := range x.Seqs { + if seq == 0 { + return errs.ErrArgs.Wrap("seqs has 0 value is invalid") + } + } return nil } From 9d6acf41f9d977be380849735a483110622c7f06 Mon Sep 17 00:00:00 2001 From: BanTanger <88583317+BanTanger@users.noreply.github.com> Date: Fri, 14 Jul 2023 20:54:24 +0800 Subject: [PATCH 09/46] fix: implement of GetUsersOnlineStatus (#567) (#569) --- internal/api/user.go | 2 +- internal/msggateway/hub_server.go | 5 ----- pkg/common/db/cache/conversation.go | 6 +++--- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/internal/api/user.go b/internal/api/user.go index 28cb74509..baea8fed3 100644 --- a/internal/api/user.go +++ b/internal/api/user.go @@ -83,7 +83,7 @@ func (u *UserApi) GetUsersOnlineStatus(c *gin.Context) { msgClient := msggateway.NewMsgGatewayClient(v) reply, err := msgClient.GetUsersOnlineStatus(c, &req) if err != nil { - log.ZWarn(c, "GetUsersOnlineStatus rpc err", err) + log.ZWarn(c, "GetUsersOnlineStatus rpc err", err) continue } else { wsResult = append(wsResult, reply.SuccessResult...) diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index 746780c03..6d852515c 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -25,9 +25,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" "github.com/OpenIMSDK/Open-IM-Server/pkg/startrpc" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -84,9 +82,6 @@ func (s *Server) GetUsersOnlineStatus( ctx context.Context, req *msggateway.GetUsersOnlineStatusReq, ) (*msggateway.GetUsersOnlineStatusResp, error) { - if !tokenverify.IsAppManagerUid(ctx) { - return nil, errs.ErrNoPermission.Wrap("only app manager") - } var resp msggateway.GetUsersOnlineStatusResp for _, userID := range req.UserIDs { clients, ok := s.LongConnServer.GetUserAllCons(userID) diff --git a/pkg/common/db/cache/conversation.go b/pkg/common/db/cache/conversation.go index d3a9d44aa..119967c70 100644 --- a/pkg/common/db/cache/conversation.go +++ b/pkg/common/db/cache/conversation.go @@ -54,7 +54,7 @@ type ConversationCache interface { // get one conversation from msgCache GetConversation(ctx context.Context, ownerUserID, conversationID string) (*relationTb.ConversationModel, error) - DelConvsersations(ownerUserID string, conversationIDs ...string) ConversationCache + DelConversations(ownerUserID string, conversationIDs ...string) ConversationCache DelUsersConversation(conversationID string, ownerUserIDs ...string) ConversationCache // get one conversation from msgCache GetConversations( @@ -225,9 +225,9 @@ func (c *ConversationRedisCache) GetConversation( ) } -func (c *ConversationRedisCache) DelConvsersations(ownerUserID string, convsersationIDs ...string) ConversationCache { +func (c *ConversationRedisCache) DelConversations(ownerUserID string, conversationIDs ...string) ConversationCache { var keys []string - for _, conversationID := range convsersationIDs { + for _, conversationID := range conversationIDs { keys = append(keys, c.getConversationKey(ownerUserID, conversationID)) } cache := c.NewCache() From 4ca0a4b861cd8f535ed77cd1b77713be16ad51bd Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Fri, 14 Jul 2023 21:07:30 +0800 Subject: [PATCH 10/46] fix bug: DelConvsersations->DelConversations --- pkg/common/db/controller/conversation.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkg/common/db/controller/conversation.go b/pkg/common/db/controller/conversation.go index 3cb4d1055..d65315918 100644 --- a/pkg/common/db/controller/conversation.go +++ b/pkg/common/db/controller/conversation.go @@ -104,7 +104,7 @@ func (c *conversationDatabase) SetUsersConversationFiledTx(ctx context.Context, if err != nil { return err } - cache = cache.DelConversationIDs(NotUserIDs...).DelUserConversationIDsHash(NotUserIDs...).DelConvsersations(conversation.ConversationID, NotUserIDs...) + cache = cache.DelConversationIDs(NotUserIDs...).DelUserConversationIDsHash(NotUserIDs...).DelConversations(conversation.ConversationID, NotUserIDs...) } return nil }); err != nil { @@ -128,7 +128,7 @@ func (c *conversationDatabase) CreateConversation(ctx context.Context, conversat var userIDs []string cache := c.cache.NewCache() for _, conversation := range conversations { - cache = cache.DelConvsersations(conversation.OwnerUserID, conversation.ConversationID) + cache = cache.DelConversations(conversation.OwnerUserID, conversation.ConversationID) userIDs = append(userIDs, conversation.OwnerUserID) } return cache.DelConversationIDs(userIDs...).DelUserConversationIDsHash(userIDs...).ExecDel(ctx) @@ -190,7 +190,7 @@ func (c *conversationDatabase) SetUserConversations(ctx context.Context, ownerUs var conversationIDs []string for _, conversation := range conversations { conversationIDs = append(conversationIDs, conversation.ConversationID) - cache = cache.DelConvsersations(conversation.OwnerUserID, conversation.ConversationID) + cache = cache.DelConversations(conversation.OwnerUserID, conversation.ConversationID) } conversationTx := c.conversationDB.NewTx(tx) existConversations, err := conversationTx.Find(ctx, ownerUserID, conversationIDs) @@ -247,7 +247,7 @@ func (c *conversationDatabase) CreateGroupChatConversation(ctx context.Context, for _, v := range notExistUserIDs { conversation := relationTb.ConversationModel{ConversationType: constant.SuperGroupChatType, GroupID: groupID, OwnerUserID: v, ConversationID: conversationID} conversations = append(conversations, &conversation) - cache = cache.DelConvsersations(v, conversationID) + cache = cache.DelConversations(v, conversationID) } cache = cache.DelConversationIDs(notExistUserIDs...).DelUserConversationIDsHash(notExistUserIDs...) if len(conversations) > 0 { @@ -261,7 +261,7 @@ func (c *conversationDatabase) CreateGroupChatConversation(ctx context.Context, return err } for _, v := range existConversationUserIDs { - cache = cache.DelConvsersations(v, conversationID) + cache = cache.DelConversations(v, conversationID) } return nil }); err != nil { From 0001573af7c982c1be68f5aacc63f49da6f88b70 Mon Sep 17 00:00:00 2001 From: kubbot <3293172751ysy@gmail.com> Date: Fri, 14 Jul 2023 21:14:22 +0800 Subject: [PATCH 11/46] release: v3.0 release Signed-off-by: kubbot <3293172751ysy@gmail.com> --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 0b32d2d50..c78e4a63b 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -100,7 +100,7 @@ services: openim_server: - image: ghcr.io/openimsdk/openim-server:v3.0.1 + image: ghcr.io/openimsdk/openim-server:v3.0.0 container_name: openim-server volumes: - ./logs:/Open-IM-Server/logs From bc6e0e8f0147b39447786a2ae211477f8db90de1 Mon Sep 17 00:00:00 2001 From: kubbot <3293172751ysy@gmail.com> Date: Fri, 14 Jul 2023 21:39:30 +0800 Subject: [PATCH 12/46] fix: script v3.0 Signed-off-by: kubbot <3293172751ysy@gmail.com> --- init_docker.sh | 7 ++++++- install_guide.sh | 0 install_im_compose.sh | 0 install_im_server.sh | 0 4 files changed, 6 insertions(+), 1 deletion(-) mode change 100644 => 100755 init_docker.sh mode change 100644 => 100755 install_guide.sh mode change 100644 => 100755 install_im_compose.sh mode change 100644 => 100755 install_im_server.sh diff --git a/init_docker.sh b/init_docker.sh old mode 100644 new mode 100755 index 09213bf50..9815fe871 --- a/init_docker.sh +++ b/init_docker.sh @@ -21,7 +21,12 @@ if ! command -v docker >/dev/null 2>&1; then fi # Start Docker services using docker-compose -docker-compose up -d +if command -v docker-compose &> /dev/null +then + docker-compose up -d +else + docker compose up -d +fi # Move back to the 'scripts' folder cd scripts diff --git a/install_guide.sh b/install_guide.sh old mode 100644 new mode 100755 diff --git a/install_im_compose.sh b/install_im_compose.sh old mode 100644 new mode 100755 diff --git a/install_im_server.sh b/install_im_server.sh old mode 100644 new mode 100755 From 4ea62d6fd02199d18ebc41116e0e6d0165cdbbe6 Mon Sep 17 00:00:00 2001 From: kubbot <3293172751ysy@gmail.com> Date: Fri, 14 Jul 2023 21:54:23 +0800 Subject: [PATCH 13/46] build: fix chat docker images Signed-off-by: kubbot <3293172751ysy@gmail.com> --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index c78e4a63b..1f7d09f82 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -123,7 +123,7 @@ services: max-file: "2" openim_chat: - image: openim/openim_chat:v1.1.0 + image: ghcr.io/openimsdk/openim-chat:v1.0.0 container_name: openim_chat restart: always depends_on: From b47d2c5c34d8616ff4f28b8723956cca2d400f6b Mon Sep 17 00:00:00 2001 From: kubbot <3293172751ysy@gmail.com> Date: Fri, 14 Jul 2023 22:10:01 +0800 Subject: [PATCH 14/46] fix: release 3.0 Signed-off-by: kubbot <3293172751ysy@gmail.com> --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 1f7d09f82..23565c23a 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -100,7 +100,7 @@ services: openim_server: - image: ghcr.io/openimsdk/openim-server:v3.0.0 + image: ghcr.io/openimsdk/openim-server:v3.0 container_name: openim-server volumes: - ./logs:/Open-IM-Server/logs From cb59f0573458edade2c3bedc757f85509c04a3f6 Mon Sep 17 00:00:00 2001 From: skiffer-git <72860476+skiffer-git@users.noreply.github.com> Date: Sat, 15 Jul 2023 11:58:35 +0800 Subject: [PATCH 15/46] Replace WeChat image links with COS (Cloud Object Storage) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b180f4438..dcf7230c1 100644 --- a/README.md +++ b/README.md @@ -182,7 +182,7 @@ We take notes of each [biweekly meeting](https://github.com/OpenIMSDK/Open-IM-Se ## Who are using Open-IM-Server The [user case studies](https://github.com/OpenIMSDK/community/blob/main/ADOPTERS.md) page includes the user list of the project. You can leave a [📝comment](https://github.com/OpenIMSDK/Open-IM-Server/issues/379) to let us know your use case. -![avatar](https://github.com/OpenIMSDK/OpenIM-Docs/blob/main/docs/images/WechatIMG20.jpeg) +![avatar](https://openim-1253691595.cos.ap-nanjing.myqcloud.com/WechatIMG20.jpeg) ## License From b95420ef8e9ad87d6af5873ef9bc306c93ab31e6 Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Mon, 17 Jul 2023 17:23:39 +0800 Subject: [PATCH 16/46] fix: s3 browser preview (#580) --- config/config.yaml | 2 +- pkg/common/db/controller/s3.go | 4 +--- pkg/common/db/s3/cos/cos.go | 26 ++++++++++++++++---------- pkg/common/db/s3/minio/minio.go | 20 ++++++++++---------- pkg/common/db/s3/oss/oss.go | 18 +++++++++--------- pkg/common/db/s3/s3.go | 4 ++-- 6 files changed, 39 insertions(+), 35 deletions(-) diff --git a/config/config.yaml b/config/config.yaml index 45f3b7179..1c01031dc 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -74,7 +74,7 @@ api: object: enable: "minio" #使用minio - apiURL: "http://127.0.0.1:10002/object/" + apiURL: "http://127.0.0.1:10002/object/" #地址需要app能访问到 minio: bucket: "openim" #不建议修改 endpoint: "http://127.0.0.1:10005" #minio对外服务的ip和端口,app要能访问此ip和端口 diff --git a/pkg/common/db/controller/s3.go b/pkg/common/db/controller/s3.go index cdd1ac4c2..220e8e070 100644 --- a/pkg/common/db/controller/s3.go +++ b/pkg/common/db/controller/s3.go @@ -77,9 +77,7 @@ func (s *s3Database) AccessURL(ctx context.Context, name string, expire time.Dur } opt := &s3.AccessURLOption{ ContentType: obj.ContentType, - } - if filename := filepath.Base(obj.Name); filename != "" { - opt.ContentDisposition = `attachment; filename=` + filename + Filename: filepath.Base(obj.Name), } expireTime := time.Now().Add(expire) rawURL, err := s.s3.AccessURL(ctx, obj.Key, expire, opt) diff --git a/pkg/common/db/s3/cos/cos.go b/pkg/common/db/s3/cos/cos.go index 799766bbe..cfdaaa5e4 100644 --- a/pkg/common/db/s3/cos/cos.go +++ b/pkg/common/db/s3/cos/cos.go @@ -248,21 +248,27 @@ func (c *Cos) ListUploadedParts(ctx context.Context, uploadID string, name strin } func (c *Cos) AccessURL(ctx context.Context, name string, expire time.Duration, opt *s3.AccessURLOption) (string, error) { - //reqParams := make(url.Values) - //if opt != nil { - // if opt.ContentType != "" { - // reqParams.Set("Content-Type", opt.ContentType) - // } - // if opt.ContentDisposition != "" { - // reqParams.Set("Content-Disposition", opt.ContentDisposition) - // } - //} + var option *cos.PresignedURLOptions + if opt != nil { + query := make(url.Values) + if opt.ContentType != "" { + query.Set("response-content-type", opt.ContentType) + } + if opt.Filename != "" { + query.Set("response-content-disposition", `attachment; filename="`+opt.Filename+`"`) + } + if len(query) > 0 { + option = &cos.PresignedURLOptions{ + Query: &query, + } + } + } if expire <= 0 { expire = time.Hour * 24 * 365 * 99 // 99 years } else if expire < time.Second { expire = time.Second } - rawURL, err := c.client.Object.GetPresignedURL(ctx, http.MethodGet, name, c.credential.SecretID, c.credential.SecretKey, expire, nil) + rawURL, err := c.client.Object.GetPresignedURL(ctx, http.MethodGet, name, c.credential.SecretID, c.credential.SecretKey, expire, option) if err != nil { return "", err } diff --git a/pkg/common/db/s3/minio/minio.go b/pkg/common/db/s3/minio/minio.go index 2f0a59a2e..baf9b64e6 100644 --- a/pkg/common/db/s3/minio/minio.go +++ b/pkg/common/db/s3/minio/minio.go @@ -253,21 +253,21 @@ func (m *Minio) ListUploadedParts(ctx context.Context, uploadID string, name str } func (m *Minio) AccessURL(ctx context.Context, name string, expire time.Duration, opt *s3.AccessURLOption) (string, error) { - //reqParams := make(url.Values) - //if opt != nil { - // if opt.ContentType != "" { - // reqParams.Set("Content-Type", opt.ContentType) - // } - // if opt.ContentDisposition != "" { - // reqParams.Set("Content-Disposition", opt.ContentDisposition) - // } - //} + reqParams := make(url.Values) + if opt != nil { + if opt.ContentType != "" { + reqParams.Set("response-content-type", opt.ContentType) + } + if opt.Filename != "" { + reqParams.Set("response-content-disposition", `attachment; filename="`+opt.Filename+`"`) + } + } if expire <= 0 { expire = time.Hour * 24 * 365 * 99 // 99 years } else if expire < time.Second { expire = time.Second } - u, err := m.core.Client.PresignedGetObject(ctx, m.bucket, name, expire, nil) + u, err := m.core.Client.PresignedGetObject(ctx, m.bucket, name, expire, reqParams) if err != nil { return "", err } diff --git a/pkg/common/db/s3/oss/oss.go b/pkg/common/db/s3/oss/oss.go index 572b665e6..f689836c6 100644 --- a/pkg/common/db/s3/oss/oss.go +++ b/pkg/common/db/s3/oss/oss.go @@ -261,15 +261,15 @@ func (o *OSS) ListUploadedParts(ctx context.Context, uploadID string, name strin } func (o *OSS) AccessURL(ctx context.Context, name string, expire time.Duration, opt *s3.AccessURLOption) (string, error) { - //var opts []oss.Option - //if opt != nil { - // if opt.ContentType != "" { - // opts = append(opts, oss.ContentType(opt.ContentType)) - // } - // if opt.ContentDisposition != "" { - // opts = append(opts, oss.ContentDisposition(opt.ContentDisposition)) - // } - //} + var opts []oss.Option + if opt != nil { + if opt.ContentType != "" { + opts = append(opts, oss.ResponseContentType(opt.ContentType)) + } + if opt.Filename != "" { + opts = append(opts, oss.ResponseContentDisposition(`attachment; filename="`+opt.Filename+`"`)) + } + } if expire <= 0 { expire = time.Hour * 24 * 365 * 99 // 99 years } else if expire < time.Second { diff --git a/pkg/common/db/s3/s3.go b/pkg/common/db/s3/s3.go index 55adc313c..fadb09a0b 100644 --- a/pkg/common/db/s3/s3.go +++ b/pkg/common/db/s3/s3.go @@ -117,8 +117,8 @@ type ListUploadedPartsResult struct { } type AccessURLOption struct { - ContentType string `json:"contentType"` - ContentDisposition string `json:"contentDisposition"` + ContentType string `json:"contentType"` + Filename string `json:"filename"` } type Interface interface { From 459c68b85d175d86bd43ee1d82bb624fc001e58b Mon Sep 17 00:00:00 2001 From: skiffer-git <72860476+skiffer-git@users.noreply.github.com> Date: Mon, 17 Jul 2023 20:43:20 +0800 Subject: [PATCH 17/46] Add files via upload --- docs/images/build.png | Bin 0 -> 62555 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/build.png diff --git a/docs/images/build.png b/docs/images/build.png new file mode 100644 index 0000000000000000000000000000000000000000..7c5914c82597681eaeedbec895967d8794eada01 GIT binary patch literal 62555 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 literal 0 HcmV?d00001 From 94dfea5b11e698d7337cacbd18bd461df18b6f67 Mon Sep 17 00:00:00 2001 From: skiffer-git <72860476+skiffer-git@users.noreply.github.com> Date: Mon, 17 Jul 2023 20:56:17 +0800 Subject: [PATCH 18/46] Add files via upload --- docs/images/docker_build.png | Bin 0 -> 67121 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/docker_build.png diff --git a/docs/images/docker_build.png b/docs/images/docker_build.png new file mode 100644 index 0000000000000000000000000000000000000000..dca7f32e0012451e7f539a09c5aafefacfb5b015 GIT binary patch literal 67121 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%0A5h=FR=&aCIjGY0zuLE0GPXLA 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 Date: Mon, 17 Jul 2023 20:59:25 +0800 Subject: [PATCH 19/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README-zh_CN.md | 230 ++++++++++++++++++++++++++++++------------------ 1 file changed, 144 insertions(+), 86 deletions(-) diff --git a/README-zh_CN.md b/README-zh_CN.md index 1cdd0a52e..c2bf90472 100644 --- a/README-zh_CN.md +++ b/README-zh_CN.md @@ -26,12 +26,14 @@ ## Open-IM-Server 是什么 -Open-IM-Server 是一款即时通讯服务器,使用纯 Golang 开发,采用 JSON over WebSocket 传输协议。在 Open-IM-Server 中,所有东西都是消息,因此您可以轻松扩展自定义消息,而无需修改服务器代码。使用微服务架构,Open-IM-Server 可以使用集群进行部署。通过在客户端服务器上部署 Open-IM-Server,开发人员可以免费快速地将即时通讯和实时网络功能集成到自己的应用程序中,并确保业务数据的安全性和隐私性。 +Open-IM-Server 是一款即时通讯服务器,使用纯 Golang 开发,采用 JSON over WebSocket 传输协议。在 Open-IM-Server 中,所有东西都是消息,因此您可以轻松扩展自定义消息,而无需修改服务器代码。使用微服务架构,Open-IM-Server 可以使用集群进行部署。通过在服务器上部署 Open-IM-Server,开发人员可以快速地将即时通讯和实时网络功能集成到自己的应用程序中,并确保业务数据的安全性和隐私性。 + +Open-IM-Server并不是一个独立的产品,本身不包含账号的注册和登录服务。 +为方便大家测试,我们开源了包括登录注册功能的 [chat 仓库](https://github.com/OpenIMSDK/chat),chat 业务服务端和 Open-IM-Server 一起部署,即可搭建一个聊天产品。 ## 特点 -+ 免费 -+ 可扩展架构 ++ 开源 + 易于集成 + 良好的可扩展性 + 高性能 @@ -40,137 +42,193 @@ Open-IM-Server 是一款即时通讯服务器,使用纯 Golang 开发,采用 ## 社区 -+ 访问中文官方网站:[Open-IM中文开发文档](https://doc.rentsoft.cn/) ++ 访问中文官方网站:[OpenIM中文开发文档](https://doc.rentsoft.cn/) ## 快速开始 ### 安装Open-IM-Server -> Open-IM 依赖于五个开源高性能组件:ETCD、MySQL、MongoDB、Redis 和 Kafka。在部署 Open-IM-Server 之前,请确保已安装上述五个组件。如果您的服务器没有上述组件,则必须首先安装缺失组件。如果您已经拥有上述组件,则建议直接使用它们。如果没有,则建议使用 Docker-compose,无需安装依赖项,一键部署,更快更方便。 +> Open-IM-Server依赖于五个开源组件:Zookeeper、MySQL、MongoDB、Redis 和 Kafka。在部署 Open-IM-Server 之前,请确保已安装上述五个组件。如果没有,则建议使用 docker-compose,一键部署,方便快捷。 + +### 使用 docker-compose 部署 + +1. 隆项目 -### 使用 Docker 部署 +``` +git clone https://github.com/OpenIMSDK/Open-IM-Server +cd Open-IM-Server +git checkout release-v3.0 #or other release branch +``` -1. 安装 [Go 环境](https://golang.org/doc/install)。确保 Go 版本至少为 1.17。 +2. 修改 env -2. 克隆 Open-IM 项目到您的服务器 +``` +此处主要修改相关组件密码 +USER=root #不用修改 +PASSWORD=openIM123 #8位以上的数字和字母组合密码,密码对redis mysql mongo生效,以及config/config.yaml中的accessSecret +ENDPOINT=http://127.0.0.1:10005 #minio对外服务的ip和端口,或用域名storage.xx.xx,app要能访问到此ip和端口或域名, +API_URL=http://127.0.0.1:10002/object/ #app要能访问到此ip和端口或域名, +DATA_DIR=./ #指定大磁盘目录 +``` - `git clone --recursive` +3. 部署和启动 -3. 部署 +注意:此命令只能执行一次,它会根据.env 中的 PASSWORD 变量修改 docker-compose 中组件密码,并修改 config/config.yaml 中的组件密码 +如果.env 中的密码变了,需要先 docker-compose down ; rm components -rf 后再执行此命令。 - 1. 修改 env +``` +chmod +x install_im_server.sh; +./install_im_server.sh; +``` - ``` - #cd Open-IM-server - USER=root - PASSWORD=openIM123 #密码至少8位数字,不包括特殊字符 - ENDPOINT=http://127.0.0.1:10005 #请用互联网IP替换127.0.0.1 - DATA_DIR=./ - ``` +4. 检查服务 - 2. 部署和启动 +``` +cd scripts; +./docker_check_service.sh +``` - ``` - chmod +x install_im_server.sh; - ./install_im_server.sh; - ``` +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png) - 3. 检查服务 +5. 开放 IM 端口 - ``` - cd scripts; - ./docker_check_service.sh - ./check_all.sh - ``` +| TCP 端口 | 说明 | 操作 | +| --------- | ----------------------------------------------------- | --------------------------------------- | +| TCP:10001 | ws 协议,消息端口,如消息发送、推送等,用于客户端 SDK | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10002 | api 端口,如用户、好友、群组、消息等接口。 | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10005 | 选择 minio 存储时需要(openIM 默认使用 minio 存储) | 端口放行或 nginx 反向代理,并关闭防火墙 | - ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Open-IM-Servers-on-System.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Open-IM-Servers-on-System.png) +6. 开放 Chat 端口 + +| TCP 端口 | 说明 | 操作 | +| --------- | ------------------------ | --------------------------------------- | +| TCP:10008 | 业务系统,如注册、登录等 | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10009 | 管理后台,如统计、封号等 | 端口放行或 nginx 反向代理,并关闭防火墙 | ### 使用源代码部署 -1. Go 1.17 或更高版本。 +1. Go 1.18或更高版本。 2. 克隆 ``` - git clone --recursive - cd cmd/openim-sdk-core - git checkout main + git clone https://github.com/OpenIMSDK/Open-IM-Server + cd Open-IM-Server + git checkout release-v3.0 #or other release branch ``` -3. 设置可执行权限 +3. 编译 ``` - cd ../../scripts/ + cd Open-IM-server/scripts chmod +x *.sh + ./build_all_service.sh ``` -4. 构建 +所有服务已成功构建如图所示 - ``` - ./batch_build_all_service.sh - ``` +![编译成功](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/build.png) -所有服务已成功构建 +> -### 配置说明 +### 组件配置说明 -> Open-IM 配置分为基本组件配置和业务内部服务配置。当使用产品时,开发人员需要将每个组件的地址填写为其服务器组件的地址,并确保业务内部服务端口未被占用。 +config/config.yaml中针对存储组件有详细的配置说明 -### 基本组件配置说明 - -+ ETCD - + Etcd 用于 RPC 服务的发现和注册,Etcd Schema 是注册名称的前缀,建议将其修改为公司名称,Etcd 地址(ip+port)支持集群部署,可以填写多个 ETCD 地址,也可以只有一个 etcd 地址。 ++ Zookeeper + + 用于RPC 服务发现和注册,支持集群。 + + ```` + ``` + zookeeper: + schema: openim #不建议修改 + address: [ 127.0.0.1:2181 ] #地址 + username: #用户名 + password: #密码 + ``` + ```` + + + + MySQL - + MySQL 用于消息和用户关系的全存储,暂时不支持集群部署。修改地址、用户、密码和数据库名称。 + + + 用于存储用户、关系链、群组,支持数据库主备。 + + ``` + mysql: + address: [ 127.0.0.1:13306 ] #地址 + username: root #用户名 + password: openIM123 #密码 + database: openIM_v2 #不建议修改 + maxOpenConn: 1000 #最大连接数 + maxIdleConn: 100 #最大空闲连接数 + maxLifeTime: 60 #连接可以重复使用的最长时间(秒) + logLevel: 4 #日志级别 1=slient 2=error 3=warn 4=info + slowThreshold: 500 #慢语句阈值 (毫秒) + ``` + + + + Mongo - + Mongo 用于消息的离线存储,默认存储 7 天。暂时不支持集群部署。只需修改地址和数据库名称即可。 + + 用于存储离线消息,支持mongo分片集群。 + + ``` + mongo: + uri: #不为空则直接使用该值 + address: [ 127.0.0.1:37017 ] #地址 + database: openIM #mongo db 默认即可 + username: root #用户名 + password: openIM123 #密码 + maxPoolSize: 100 #最大连接数 + ``` + + Redis - + Redis 目前主要用于消息序列号存储和用户令牌信息存储。暂时不支持集群部署。只需修改相应的 Redis 地址和密码即可。 + + 用于存储消息序列号、最新消息、用户token及mysql缓存,支持集群部署。 + + ``` + redis: + address: [ 127.0.0.1:16379 ] #地址 + username: #用户名 + password: openIM123 #密码 + ``` + + Kafka - + Kafka 用作消息传输存储队列,支持集群部署,只需修改相应的地址。 - -### 内部服务配置说明 - -+ credential&&push - + Open-IM 需要使用三方离线推送功能。目前使用的是腾讯的三方推送,支持 IOS、Android 和 OSX 推送。这些信息是腾讯推送的一些注册信息,开发人员需要去腾讯云移动推送注册相应的信息。如果您没有填写相应的信息,则无法使用离线消息推送功能。 -+ api&&rpcport&&longconnsvr&&rpcregistername - + API 端口是 HTTP 接口,longconnsvr 是 WebSocket 监听端口,rpcport 是内部服务启动端口。两者都支持集群部署。请确保这些端口未被使用。如果要为单个服务打开多个服务,请填写多个以逗号分隔的端口。rpcregistername 是每个服务在注册表 Etcd 中注册的服务名称,无需修改。 -+ log&&modulename - + 日志配置包括日志文件的存储路径,日志发送到 Elasticsearch 进行日志查看。目前不支持将日志发送到 Elasticsearch。暂时不需要修改配置。modulename 用于根据服务模块的名称拆分日志。默认配置可以。 - -### 脚本说明 - -> Open-IM 脚本提供服务编译、启动和停止脚本。有四个 Open-IM 脚本启动模块,一个是 http+rpc 服务启动模块,第二个是 WebSocket 服务启动模块,然后是 msg_transfer 模块,最后是 push 模块。 - -+ path_info.sh&&style_info.sh&& - - functions.sh - - + 包含每个模块的路径信息,包括源代码所在的路径、服务启动名称、shell 打印字体样式以及一些用于处理 shell 字符串的函数。 - -+ build_all_service.sh - - + 编译模块,将 Open-IM 的所有源代码编译为二进制文件并放入 bin 目录。 - -+ start_rpc_api_service.sh&&msg_gateway_start.sh&&msg_transfer_start.sh&&push_start.sh - - + 独立脚本启动模块,后跟 API 和 RPC 模块、消息网关模块、消息传输模块和推送模块。 - -+ start_all.sh&&stop_all.sh - - + 总脚本,启动所有服务和关闭所有服务。 - -## 认证流程图 + + 用于消息队列,用于消息解耦,支持集群部署。 + + ``` + kafka: + username: #用户名 + password: #密码 + addr: [ 127.0.0.1:9092 ] #地址 + latestMsgToRedis: + topic: "latestMsgToRedis" + offlineMsgToMongo: + topic: "offlineMsgToMongoMysql" + msgToPush: + topic: "msqToPush" + msgToModify: + topic: "msgToModify" + consumerGroupID: + msgToRedis: redis + msgToMongo: mongo + msgToMySql: mysql + msgToPush: push + msgToModify: modify + ``` + +## APP和OpenIM关系 + +OpenIM 是开源的即时通讯组件,它并不是一个独立的产品,此图展示了AppServer、AppClient、Open-IM-Server以及Open-IM-SDK之间的关系 ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png) -## 架构 +## 整体架构 ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg) ## 开始开发 OpenIM -[社区存储库](https://github.com/OpenIMSDK/community)包含有关从源代码构建 Kubernetes、如何贡献代码和文档、有关什么的联系人等所有信息。 +[社区存储库](https://github.com/OpenIMSDK/community)包含有关从源代码构建 Kubernetes、如何贡献代码和文档。 ## 贡献 From 1f4aefab93688223e083807aab2c02a959c8375e Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Mon, 17 Jul 2023 21:03:42 +0800 Subject: [PATCH 20/46] update readme: With the release of the new system, the readme is also updated accordingly. --- docs/images/docker_build.png | Bin 67121 -> 58699 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/docker_build.png b/docs/images/docker_build.png index dca7f32e0012451e7f539a09c5aafefacfb5b015..f4be10f6894b79a586b725cb463b5333690b5e48 100644 GIT binary patch literal 58699 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 literal 67121 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%0A5h=FR=&aCIjGY0zuLE0GPXLA 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 Date: Mon, 17 Jul 2023 21:04:40 +0800 Subject: [PATCH 21/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README-zh_CN.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README-zh_CN.md b/README-zh_CN.md index c2bf90472..4307d2bea 100644 --- a/README-zh_CN.md +++ b/README-zh_CN.md @@ -220,11 +220,11 @@ config/config.yaml中针对存储组件有详细的配置说明 OpenIM 是开源的即时通讯组件,它并不是一个独立的产品,此图展示了AppServer、AppClient、Open-IM-Server以及Open-IM-SDK之间的关系 -![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png) +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/open-im-server.png) ## 整体架构 -![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg) +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/Architecture.jpg) ## 开始开发 OpenIM From 1552a773e913e1b04692a19cc50b0463c1f42c9b Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Mon, 17 Jul 2023 21:18:34 +0800 Subject: [PATCH 22/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README-zh_CN.md | 62 ++++++++++++++++++++++++++++++------------------- 1 file changed, 38 insertions(+), 24 deletions(-) diff --git a/README-zh_CN.md b/README-zh_CN.md index 4307d2bea..b9b58deec 100644 --- a/README-zh_CN.md +++ b/README-zh_CN.md @@ -46,13 +46,9 @@ Open-IM-Server并不是一个独立的产品,本身不包含账号的注册和 ## 快速开始 -### 安装Open-IM-Server - -> Open-IM-Server依赖于五个开源组件:Zookeeper、MySQL、MongoDB、Redis 和 Kafka。在部署 Open-IM-Server 之前,请确保已安装上述五个组件。如果没有,则建议使用 docker-compose,一键部署,方便快捷。 - ### 使用 docker-compose 部署 -1. 隆项目 +1. 克隆项目 ``` git clone https://github.com/OpenIMSDK/Open-IM-Server @@ -60,7 +56,7 @@ cd Open-IM-Server git checkout release-v3.0 #or other release branch ``` -2. 修改 env +2. 修改 .env ``` 此处主要修改相关组件密码 @@ -90,22 +86,7 @@ cd scripts; ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png) -5. 开放 IM 端口 - -| TCP 端口 | 说明 | 操作 | -| --------- | ----------------------------------------------------- | --------------------------------------- | -| TCP:10001 | ws 协议,消息端口,如消息发送、推送等,用于客户端 SDK | 端口放行或 nginx 反向代理,并关闭防火墙 | -| TCP:10002 | api 端口,如用户、好友、群组、消息等接口。 | 端口放行或 nginx 反向代理,并关闭防火墙 | -| TCP:10005 | 选择 minio 存储时需要(openIM 默认使用 minio 存储) | 端口放行或 nginx 反向代理,并关闭防火墙 | - -6. 开放 Chat 端口 - -| TCP 端口 | 说明 | 操作 | -| --------- | ------------------------ | --------------------------------------- | -| TCP:10008 | 业务系统,如注册、登录等 | 端口放行或 nginx 反向代理,并关闭防火墙 | -| TCP:10009 | 管理后台,如统计、封号等 | 端口放行或 nginx 反向代理,并关闭防火墙 | - -### 使用源代码部署 +### 使用源码编译 1. Go 1.18或更高版本。 @@ -129,8 +110,6 @@ cd scripts; ![编译成功](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/build.png) -> - ### 组件配置说明 config/config.yaml中针对存储组件有详细的配置说明 @@ -216,6 +195,41 @@ config/config.yaml中针对存储组件有详细的配置说明 msgToModify: modify ``` +### 启停服务 + +启动服务 + +``` +./start_all.sh; +``` + +检查服务 + +``` +./check_all.sh +``` + +停止服务 + +``` +./stop_all.sh +``` + +### 开放 IM 端口 + +| TCP 端口 | 说明 | 操作 | +| --------- | ----------------------------------------------------- | --------------------------------------- | +| TCP:10001 | ws 协议,消息端口,如消息发送、推送等,用于客户端 SDK | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10002 | api 端口,如用户、好友、群组、消息等接口。 | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10005 | 选择 minio 存储时需要(openIM 默认使用 minio 存储) | 端口放行或 nginx 反向代理,并关闭防火墙 | + +### 开放 Chat 端口 + +| TCP 端口 | 说明 | 操作 | +| --------- | ------------------------ | --------------------------------------- | +| TCP:10008 | 业务系统,如注册、登录等 | 端口放行或 nginx 反向代理,并关闭防火墙 | +| TCP:10009 | 管理后台,如统计、封号等 | 端口放行或 nginx 反向代理,并关闭防火墙 | + ## APP和OpenIM关系 OpenIM 是开源的即时通讯组件,它并不是一个独立的产品,此图展示了AppServer、AppClient、Open-IM-Server以及Open-IM-SDK之间的关系 From 159c81a053aec85e5dac458ba7442a835192b547 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Mon, 17 Jul 2023 21:42:49 +0800 Subject: [PATCH 23/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README.md | 271 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 174 insertions(+), 97 deletions(-) diff --git a/README.md b/README.md index dcf7230c1..9e0242424 100644 --- a/README.md +++ b/README.md @@ -28,142 +28,219 @@ ## What is Open-IM-Server -Instant messaging server. Backend in pure Golang, wire transport protocol is JSON over websocket. -Everything is a message in Open-IM-Server, so you can extend custom messages easily, there is no need to modify the server code. -Using microservice architectures, Open-IM-Server can be deployed using clusters. -By deployment of the Open-IM-Server on the customer's server, developers can integrate instant messaging and real-time network capabilities into their own applications free of charge and quickly, and ensure the security and privacy of business data. +Open-IM-Server is an instant messaging server developed using pure Golang, adopting JSON over WebSocket as the communication protocol. In Open-IM-Server, everything is a message, so you can easily extend custom messages without modifying the server code. With a microservice architecture, Open-IM-Server can be deployed using clusters. By deploying Open-IM-Server on a server, developers can quickly integrate instant messaging and real-time networking features into their applications, ensuring the security and privacy of business data. + +Open-IM-Server is not a standalone product and does not include account registration and login services. For your convenience, we have open-sourced the [chat repository](https://github.com/OpenIMSDK/chat) which includes login and registration functionality. By deploying the chat business server alongside Open-IM-Server, a chat product can be set up. ## Features -- Everything in Free -- Scalable architecture -- Easy integration -- Good scalability +- Open source +- Easy to integrate +- Excellent scalability - High performance - Lightweight - Supports multiple protocols ## Community -- Visit the Chinese official website here: [📚 Open-IM docs](https://www.openim.online/zh) +- Visit the official Chinese website: [OpenIM Chinese Developer Documentation](https://doc.rentsoft.cn/) ## Quick start -### Installing Open-IM-Server - -> Open-IM relies on five open source high-performance components: ETCD, MySQL, MongoDB, Redis, and Kafka. Privatization deployment Before Open-IM-Server, please make sure that the above five components have been installed. If your server does not have the above components, you must first install Missing components. If you have the above components, it is recommended to use them directly. If not, it is recommended to use Docker-compose, no To install dependencies, one-click deployment, faster and more convenient. +### Deploying with docker-compose + + + +> 1. Clone the project +> +> ``` +> +> ``` +> +> 1. Modify .env +> +> ``` +> makefileCopy codeHere you mainly modify the passwords for related components +> USER=root #no need to modify +> PASSWORD=openIM123 #A combination of 8 or more numbers and letters, this password applies to redis, mysql, mongo, as well as accessSecret in config/config.yaml +> ENDPOINT=http://127.0.0.1:10005 #minio's external service IP and port, or use the domain name storage.xx.xx, the app must be able to access this IP and port or domain, +> API_URL=http://127.0.0.1:10002/object/ #the app must be able to access this IP and port or domain, +> DATA_DIR=./ #designate large disk directory +> ``` +> +> 1. Deploy and start +> +> Note: This command can only be executed once. It will modify the component passwords in docker-compose based on the PASSWORD variable in .env, and modify the component passwords in config/config.yaml. If the password in .env changes, you need to first execute docker-compose down; rm components -rf and then execute this command. +> +> ``` +> bashCopy codechmod +x install_im_server.sh; +> ./install_im_server.sh; +> ``` +> +> 1. Check the service +> +> ``` +> bashCopy codecd scripts; +> ./docker_check_service.sh +> ``` +> +> ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png) + +### Compile from source + +1. Go 1.18 or higher version. -#### Deploy using Docker +2. Clone -1. Install [Go environment](https://golang.org/doc/install). Make sure Go version is at least 1.17 + ``` + arduinoCopy codegit clone https://github.com/OpenIMSDK/Open-IM-Server + cd Open-IM-Server + git checkout release-v3.0 #or other release branch + ``` -2. Clone the Open-IM project to your server +3. Compile ``` - git clone https://github.com/OpenIMSDK/Open-IM-Server.git --recursive + bashCopy codecd Open-IM-server/scripts + chmod +x *.sh + ./build_all_service.sh ``` -3. Deploy - - 1. Modify env - - ``` - #cd Open-IM-server - USER=root - PASSWORD=openIM123 #Password with more than 8 digits, excluding special characters - ENDPOINT=http://127.0.0.1:10005 #Replace 127.0.0.1 with Internet IP - DATA_DIR=./ - ``` - - 2. Deploy && Start - - ``` - chmod +x install_im_server.sh; - ./install_im_server.sh; - ``` - - 4. Check service - - ``` - cd scripts; - ./docker_check_service.sh./check_all.sh - ``` - - ![OpenIMServersonSystempng](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/Open-IM-Servers-on-System.png) - -#### Deploy using source code - -1. Go 1.17 or above. -2. Clone +All services have been successfully built as shown in the figure -```shell -git clone https://github.com/OpenIMSDK/Open-IM-Server.git --recursive -cd cmd/openim-sdk-core -git checkout main -``` +![Successful Compilation](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/build.png) -1. Set executable permissions +### Component Configuration Instructions -```shell -cd ../../scripts/ -chmod +x *.sh -``` +The config/config.yaml file has detailed configuration instructions for the storage components. -1. build +- Zookeeper -```shell -./batch_build_all_service.sh -``` - -all services build success + - Used for RPC service discovery and registration, cluster support. -### CONFIGURATION INSTRUCTIONS + ```` + yamlCopy code``` + zookeeper: + schema: openim #Not recommended to modify + address: [ 127.0.0.1:2181 ] #address + username: #username + password: #password + ``` + ```` -> Open-IM configuration is divided into basic component configuration and business internal service configuration. Developers need to fill in the address of each component as the address of their server component when using the product, and ensure that the internal service port of the business is not occupied +- MySQL -#### Basic Component Configuration Instructions + - Used for storing users, relationships, and groups, supports master-slave database. + + ``` + yamlCopy codemysql: + address: [ 127.0.0.1:13306 ] #address + username: root #username + password: openIM123 #password + database: openIM_v2 #Not recommended to modify + maxOpenConn: 1000 #maximum connection + maxIdleConn: 100 #maximum idle connection + maxLifeTime: 60 #maximum time a connection can be reused (seconds) + logLevel: 4 #log level 1=slient 2=error 3=warn 4=info + slowThreshold: 500 #slow statement threshold (milliseconds) + ``` -- ETCD - - Etcd is used for the discovery and registration of rpc services, etcd Schema is the prefix of the registered name, it is recommended to modify it to your company name, etcd address (ip+port) supports clustered deployment, you can fill in multiple ETCD addresses separated by commas, and also only one etcd address. -- MySQL - - mysql is used for full storage of messages and user relationships. Cluster deployment is not supported for the time being. Modify addresses and users, passwords, and database names. - Mongo - - Mongo is used for offline storage of messages. The default storage is 7 days. Cluster deployment is temporarily not supported. Just modify the address and database name. + + - Used for storing offline messages, supports mongo sharded clusters. + + ``` + yamlCopy codemongo: + uri: #Use this value directly if not empty + address: [ 127.0.0.1:37017 ] #address + database: openIM #default mongo db + username: root #username + password: openIM123 #password + maxPoolSize: 100 #maximum connections + ``` + - Redis - - Redis is currently mainly used for message serial number storage and user token information storage. Cluster deployment is temporarily not supported. Just modify the corresponding redis address and password. + + - Used for storing message sequence numbers, latest messages, user tokens, and mysql cache, supports cluster deployment. + + ``` + yamlCopy coderedis: + address: [ 127.0.0.1:16379 ] #address + username: #username + password: openIM123 #password + ``` + - Kafka - - Kafka is used as a message transfer storage queue to support cluster deployment, just modify the corresponding address -#### Internal Service Configuration Instructions + - Used for message queues, for message decoupling, supports cluster deployment. + + ``` + yamlCopy codekafka: + username: #username + password: #password + addr: [ 127.0.0.1:9092 ] #address + latestMsgToRedis: + topic: "latestMsgToRedis" + offlineMsgToMongo: + topic: "offlineMsgToMongoMysql" + msgToPush: + topic: "msqToPush" + msgToModify: + topic: "msgToModify" + consumerGroupID: + msgToRedis: redis + msgToMongo: mongo + msgToMySql: mysql + msgToPush: push + msgToModify: modify + ``` + +### Start and Stop Services + +Start services + +``` +bashCopy code +./start_all.sh; +``` + +Check services + +``` +bashCopy code +./check_all.sh +``` + +Stop services + +``` +bashCopy code +./stop_all.sh +``` + +### Open IM Ports -- credential&&push - - The Open-IM needs to use the three-party offline push function. Currently, Tencent's three-party push is used. It supports IOS, Android and OSX push. This information is some registration information pushed by Tencent. Developers need to go to Tencent Cloud Mobile Push to register the corresponding information. If you do not fill in the corresponding information, you cannot use the offline message push function -- api&&rpcport&&longconnsvr&&rpcregistername - - The api port is the http interface, longconnsvr is the websocket listening port, and rpcport is the internal service startup port. Both support cluster deployment. Make sure that these ports are not used. If you want to open multiple services for a single service, fill in multiple ports separated by commas. rpcregistername is the service name registered by each service to the registry etcd, no need to modify -- log&&modulename - - The log configuration includes the storage path of the log file, and the log is sent to elasticsearch for log viewing. Currently, the log is not supported to be sent to elasticsearch. The configuration does not need to be modified for the time being. The modulename is used to split the log according to the name of the service module. The default configuration is fine. -- multiloginpolicy&&tokenpolicy - - Open-IM supports multi-terminal login. Currently, there are three multi-terminal login policies. The PC terminal and the mobile terminal are online at the same time by default. When multiple policies are configured to be true, the first policy with true is used by default, and the token policy is the generated token policy. , The developer can customize the expiration time of the token +| TCP Port | Description | Operation | +| --------- | ------------------------------------------------------------ | ----------------------------------------------------- | +| TCP:10001 | ws protocol, message port such as message sending, pushing etc, used for client SDK | Port release or nginx reverse proxy, and firewall off | +| TCP:10002 | api port, such as user, friend, group, message interfaces. | Port release or nginx reverse proxy, and firewall off | +| TCP:10005 | Required when choosing minio storage (openIM uses minio storage by default) | Port release or nginx reverse proxy, and firewall off | -### scripts DESCRIPTION +### Open Chat Ports -> Open-IM scripts provides service compilation, start, and stop scripts. There are four Open-IM scripts start modules, one is the http+rpc service start module, the second is the websocket service start module, then the msg_transfer module, and the last is the push module +| TCP Port | Description | Operation | +| --------- | --------------------------------------------------- | ----------------------------------------------------- | +| TCP:10008 | Business system, such as registration, login etc | Port release or nginx reverse proxy, and firewall off | +| TCP:10009 | Management backend, such as statistics, banning etc | Port release or nginx reverse proxy, and firewall off | -- path_info.sh&&style_info.sh&&functions.sh - - Contains the path information of each module, including the path where the source code is located, the name of the service startup, the shell print font style, and some functions for processing shell strings -- build_all_service.sh - - Compile the module, compile all the source code of Open-IM into a binary file and put it into the bin directory -- start_rpc_api_service.sh&&msg_gateway_start.sh&&msg_transfer_start.sh&&push_start.sh - - Independent scripts startup module, followed by api and rpc modules, message gateway module, message transfer module, and push module -- start_all.sh&&stop_all.sh - - Total scripts, start all services and close all services +## Relationship Between APP and OpenIM -## Authentication Clow Chart +OpenIM is an open source instant messaging component, it is not an independent product. This image shows the relationship between AppServer, AppClient, Open-IM-Server and Open-IM-SDK. -![avatar](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/open-im-server.png) +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/open-im-server.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/open-im-server.png) -## Architecture +## Overall Architecture -![avatar](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/Architecture.jpg) +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/Architecture.jpg](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/Architecture.jpg) ## To start developing OpenIM The [community repository](https://github.com/OpenIMSDK/community) hosts all information about building Kubernetes from source, how to contribute code and documentation, who to contact about what, etc. From f80e2e3036abee72c00a1db2f35b6f80e3ba738f Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Mon, 17 Jul 2023 21:45:16 +0800 Subject: [PATCH 24/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README.md | 72 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 37 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 9e0242424..a7e5aa133 100644 --- a/README.md +++ b/README.md @@ -44,46 +44,48 @@ Open-IM-Server is not a standalone product and does not include account registra ## Community - Visit the official Chinese website: [OpenIM Chinese Developer Documentation](https://doc.rentsoft.cn/) -## Quick start +## Quick Start ### Deploying with docker-compose +1. Clone the project + +``` +clone https://github.com/OpenIMSDK/Open-IM-Server +cd Open-IM-Server +git checkout release-v3.0 #or other release branch +``` + +1. Modify .env + +``` +makefileCopy codeHere you mainly modify the passwords for related components +USER=root #no need to modify +PASSWORD=openIM123 #A combination of 8 or more numbers and letters, this password applies to redis, mysql, mongo, as well as accessSecret in config/config.yaml +ENDPOINT=http://127.0.0.1:10005 #minio's external service IP and port, or use the domain name storage.xx.xx, the app must be able to access this IP and port or domain, +API_URL=http://127.0.0.1:10002/object/ #the app must be able to access this IP and port or domain, +DATA_DIR=./ #designate large disk directory +``` + +1. Deploy and start + +Note: This command can only be executed once. It will modify the component passwords in docker-compose based on the PASSWORD variable in .env, and modify the component passwords in config/config.yaml. If the password in .env changes, you need to first execute docker-compose down; rm components -rf and then execute this command. + +``` +bashCopy codechmod +x install_im_server.sh; +./install_im_server.sh; +``` + +1. Check the service + +``` +bashCopy codecd scripts; +./docker_check_service.sh +``` + +![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png) -> 1. Clone the project -> -> ``` -> -> ``` -> -> 1. Modify .env -> -> ``` -> makefileCopy codeHere you mainly modify the passwords for related components -> USER=root #no need to modify -> PASSWORD=openIM123 #A combination of 8 or more numbers and letters, this password applies to redis, mysql, mongo, as well as accessSecret in config/config.yaml -> ENDPOINT=http://127.0.0.1:10005 #minio's external service IP and port, or use the domain name storage.xx.xx, the app must be able to access this IP and port or domain, -> API_URL=http://127.0.0.1:10002/object/ #the app must be able to access this IP and port or domain, -> DATA_DIR=./ #designate large disk directory -> ``` -> -> 1. Deploy and start -> -> Note: This command can only be executed once. It will modify the component passwords in docker-compose based on the PASSWORD variable in .env, and modify the component passwords in config/config.yaml. If the password in .env changes, you need to first execute docker-compose down; rm components -rf and then execute this command. -> -> ``` -> bashCopy codechmod +x install_im_server.sh; -> ./install_im_server.sh; -> ``` -> -> 1. Check the service -> -> ``` -> bashCopy codecd scripts; -> ./docker_check_service.sh -> ``` -> -> ![https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/docs/images/docker_build.png) ### Compile from source From c2a848a89e08f4b4666e1d0a60c41b449f3c1f00 Mon Sep 17 00:00:00 2001 From: skiffer-git <44203734@qq.com> Date: Mon, 17 Jul 2023 21:50:46 +0800 Subject: [PATCH 25/46] update readme: With the release of the new system, the readme is also updated accordingly. --- README.md | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index a7e5aa133..1079b5b86 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ Open-IM-Server is not a standalone product and does not include account registra - Supports multiple protocols ## Community -- Visit the official Chinese website: [OpenIM Chinese Developer Documentation](https://doc.rentsoft.cn/) +- Visit the official website: [OpenIM Developer Documentation](https://www.openim.online/) ## Quick Start @@ -59,7 +59,6 @@ git checkout release-v3.0 #or other release branch 1. Modify .env ``` -makefileCopy codeHere you mainly modify the passwords for related components USER=root #no need to modify PASSWORD=openIM123 #A combination of 8 or more numbers and letters, this password applies to redis, mysql, mongo, as well as accessSecret in config/config.yaml ENDPOINT=http://127.0.0.1:10005 #minio's external service IP and port, or use the domain name storage.xx.xx, the app must be able to access this IP and port or domain, @@ -72,14 +71,14 @@ DATA_DIR=./ #designate large disk directory Note: This command can only be executed once. It will modify the component passwords in docker-compose based on the PASSWORD variable in .env, and modify the component passwords in config/config.yaml. If the password in .env changes, you need to first execute docker-compose down; rm components -rf and then execute this command. ``` -bashCopy codechmod +x install_im_server.sh; +chmod +x install_im_server.sh; ./install_im_server.sh; ``` 1. Check the service ``` -bashCopy codecd scripts; +cd scripts; ./docker_check_service.sh ``` @@ -94,7 +93,7 @@ bashCopy codecd scripts; 2. Clone ``` - arduinoCopy codegit clone https://github.com/OpenIMSDK/Open-IM-Server + git clone https://github.com/OpenIMSDK/Open-IM-Server cd Open-IM-Server git checkout release-v3.0 #or other release branch ``` @@ -102,7 +101,7 @@ bashCopy codecd scripts; 3. Compile ``` - bashCopy codecd Open-IM-server/scripts + cd Open-IM-server/scripts chmod +x *.sh ./build_all_service.sh ``` @@ -119,22 +118,20 @@ The config/config.yaml file has detailed configuration instructions for the stor - Used for RPC service discovery and registration, cluster support. - ```` - yamlCopy code``` + ``` zookeeper: schema: openim #Not recommended to modify address: [ 127.0.0.1:2181 ] #address username: #username password: #password ``` - ```` - MySQL - Used for storing users, relationships, and groups, supports master-slave database. ``` - yamlCopy codemysql: + mysql: address: [ 127.0.0.1:13306 ] #address username: root #username password: openIM123 #password @@ -151,7 +148,7 @@ The config/config.yaml file has detailed configuration instructions for the stor - Used for storing offline messages, supports mongo sharded clusters. ``` - yamlCopy codemongo: + mongo: uri: #Use this value directly if not empty address: [ 127.0.0.1:37017 ] #address database: openIM #default mongo db @@ -165,7 +162,7 @@ The config/config.yaml file has detailed configuration instructions for the stor - Used for storing message sequence numbers, latest messages, user tokens, and mysql cache, supports cluster deployment. ``` - yamlCopy coderedis: + redis: address: [ 127.0.0.1:16379 ] #address username: #username password: openIM123 #password @@ -176,7 +173,7 @@ The config/config.yaml file has detailed configuration instructions for the stor - Used for message queues, for message decoupling, supports cluster deployment. ``` - yamlCopy codekafka: + kafka: username: #username password: #password addr: [ 127.0.0.1:9092 ] #address @@ -201,21 +198,18 @@ The config/config.yaml file has detailed configuration instructions for the stor Start services ``` -bashCopy code ./start_all.sh; ``` Check services ``` -bashCopy code ./check_all.sh ``` Stop services ``` -bashCopy code ./stop_all.sh ``` From 5cb5de4970c34152593556c8d1c478c8946d6853 Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Wed, 19 Jul 2023 09:55:53 +0800 Subject: [PATCH 26/46] fix: user app_manger_level (#584) Signed-off-by: withchao <993506633@qq.com> --- internal/rpc/user/user.go | 2 +- pkg/common/db/table/relation/user.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 93783c8fd..3b54d73eb 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -67,7 +67,7 @@ func Start(client registry.SvcDiscoveryRegistry, server *grpc.Server) error { return errors.New("len(config.Config.Manager.AppManagerUid) != len(config.Config.Manager.Nickname)") } for k, v := range config.Config.Manager.UserID { - users = append(users, &tablerelation.UserModel{UserID: v, Nickname: config.Config.Manager.Nickname[k]}) + users = append(users, &tablerelation.UserModel{UserID: v, Nickname: config.Config.Manager.Nickname[k], AppMangerLevel: constant.AppAdmin}) } userDB := relation.NewUserGorm(db) cache := cache.NewUserCacheRedis(rdb, userDB, cache.GetDefaultOpt()) diff --git a/pkg/common/db/table/relation/user.go b/pkg/common/db/table/relation/user.go index c840f7070..10a715bda 100644 --- a/pkg/common/db/table/relation/user.go +++ b/pkg/common/db/table/relation/user.go @@ -29,7 +29,7 @@ type UserModel struct { FaceURL string `gorm:"column:face_url;size:255"` Ex string `gorm:"column:ex;size:1024"` CreateTime time.Time `gorm:"column:create_time;index:create_time;autoCreateTime"` - AppMangerLevel int32 `gorm:"column:app_manger_level;default:18"` + AppMangerLevel int32 `gorm:"column:app_manger_level;default:1"` GlobalRecvMsgOpt int32 `gorm:"column:global_recv_msg_opt"` } From 222d061dcd7d93d646052c27228748a607c3f529 Mon Sep 17 00:00:00 2001 From: WangchuXiao Date: Wed, 19 Jul 2023 10:47:28 +0800 Subject: [PATCH 27/46] fix: msg destruct not effect and notification self 2 self push twice (#596) * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * MsgDestructTime * fix bug: msg destruct sql * fix bug: msg destruct * fix bug: msg destruct * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * debug: print stack * debug: print stack * debug: print stack * fix bug: msg destruct sql Signed-off-by: wangchuxiao * fix bug: msg notification self 2 self push twice * fix bug: heartbeat get self notification --------- Signed-off-by: wangchuxiao --- internal/push/push_handler.go | 8 +++++- internal/rpc/msg/server.go | 2 -- internal/rpc/msg/sync_msg.go | 1 + internal/tools/conversation.go | 10 +++++--- internal/tools/cron_task.go | 10 ++++---- pkg/common/db/controller/msg.go | 25 ++++++++++++++----- pkg/common/db/relation/conversation_model.go | 2 +- .../common/locker/message_locker.go | 2 +- pkg/rpcclient/msg.go | 7 +++--- pkg/rpcclient/notification/msg.go | 2 +- pkg/utils/utils.go | 4 +++ 11 files changed, 49 insertions(+), 24 deletions(-) rename internal/rpc/msg/lock.go => pkg/common/locker/message_locker.go (99%) diff --git a/internal/push/push_handler.go b/internal/push/push_handler.go index d8c04ccb0..0822c3505 100644 --- a/internal/push/push_handler.go +++ b/internal/push/push_handler.go @@ -65,7 +65,13 @@ func (c *ConsumerHandler) handleMs2PsChat(ctx context.Context, msg []byte) { case constant.SuperGroupChatType: err = c.pusher.Push2SuperGroup(ctx, pbData.MsgData.GroupID, pbData.MsgData) default: - err = c.pusher.Push2User(ctx, []string{pbData.MsgData.SendID, pbData.MsgData.RecvID}, pbData.MsgData) + var pushUserIDs []string + if pbData.MsgData.SendID != pbData.MsgData.RecvID { + pushUserIDs = []string{pbData.MsgData.SendID, pbData.MsgData.RecvID} + } else { + pushUserIDs = []string{pbData.MsgData.SendID} + } + err = c.pusher.Push2User(ctx, pushUserIDs, pbData.MsgData) } if err != nil { if err == errNoOfflinePusher { diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index 5e2cf925f..e88d55bd1 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -42,7 +42,6 @@ type ( friend *rpcclient.FriendRpcClient GroupLocalCache *localcache.GroupLocalCache ConversationLocalCache *localcache.ConversationLocalCache - MessageLocker MessageLocker Handlers MessageInterceptorChain notificationSender *rpcclient.NotificationSender } @@ -91,7 +90,6 @@ func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) e GroupLocalCache: localcache.NewGroupLocalCache(&groupRpcClient), ConversationLocalCache: localcache.NewConversationLocalCache(&conversationClient), friend: &friendRpcClient, - MessageLocker: NewLockerMessage(cacheModel), } s.notificationSender = rpcclient.NewNotificationSender(rpcclient.WithLocalSendMsg(s.SendMsg)) s.addInterceptorHandler(MessageHasReadEnabled) diff --git a/internal/rpc/msg/sync_msg.go b/internal/rpc/msg/sync_msg.go index 70967a1ba..e05bd5644 100644 --- a/internal/rpc/msg/sync_msg.go +++ b/internal/rpc/msg/sync_msg.go @@ -95,6 +95,7 @@ func (m *msgServer) GetMaxSeq(ctx context.Context, req *sdkws.GetMaxSeqReq) (*sd for _, conversationID := range conversationIDs { conversationIDs = append(conversationIDs, utils.GetNotificationConversationIDByConversationID(conversationID)) } + conversationIDs = append(conversationIDs, utils.GetSelfNotificationConversationID(req.UserID)) log.ZDebug(ctx, "GetMaxSeq", "conversationIDs", conversationIDs) maxSeqs, err := m.MsgDatabase.GetMaxSeqs(ctx, conversationIDs) if err != nil { diff --git a/internal/tools/conversation.go b/internal/tools/conversation.go index 837f7f90a..2651cf10e 100644 --- a/internal/tools/conversation.go +++ b/internal/tools/conversation.go @@ -33,6 +33,7 @@ func (c *MsgTool) ConversationsDestructMsgs() { } log.ZDebug(context.Background(), "nums conversations need destruct", "nums", len(conversations)) for _, conversation := range conversations { + ctx = mcontext.NewCtx(utils.GetSelfFuncName() + "-" + utils.OperationIDGenerator() + "-" + conversation.ConversationID + "-" + conversation.OwnerUserID) log.ZDebug( ctx, "UserMsgsDestruct", @@ -45,16 +46,17 @@ func (c *MsgTool) ConversationsDestructMsgs() { "lastMsgDestructTime", conversation.LatestMsgDestructTime, ) + now := time.Now() seqs, err := c.msgDatabase.UserMsgsDestruct(ctx, conversation.OwnerUserID, conversation.ConversationID, conversation.MsgDestructTime, conversation.LatestMsgDestructTime) if err != nil { log.ZError(ctx, "user msg destruct failed", err, "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID) continue } - if err := c.conversationDatabase.UpdateUsersConversationFiled(ctx, []string{conversation.OwnerUserID}, conversation.ConversationID, map[string]interface{}{"latest_msg_destruct_time": time.Now()}); err != nil { - log.ZError(ctx, "updateUsersConversationFiled failed", err, "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID) - continue - } if len(seqs) > 0 { + if err := c.conversationDatabase.UpdateUsersConversationFiled(ctx, []string{conversation.OwnerUserID}, conversation.ConversationID, map[string]interface{}{"latest_msg_destruct_time": now}); err != nil { + log.ZError(ctx, "updateUsersConversationFiled failed", err, "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID) + continue + } if err := c.msgNotificationSender.UserDeleteMsgsNotification(ctx, conversation.OwnerUserID, conversation.ConversationID, seqs); err != nil { log.ZError(ctx, "userDeleteMsgsNotification failed", err, "conversationID", conversation.ConversationID, "ownerUserID", conversation.OwnerUserID) } diff --git a/internal/tools/cron_task.go b/internal/tools/cron_task.go index 82343157b..5e4183615 100644 --- a/internal/tools/cron_task.go +++ b/internal/tools/cron_task.go @@ -41,11 +41,11 @@ func StartCronTask() error { panic(err) } log.ZInfo(context.Background(), "start msgDestruct cron task", "cron config", config.Config.MsgDestructTime) - // _, err = c.AddFunc(config.Config.MsgDestructTime, msgTool.ConversationsDestructMsgs) - // if err != nil { - // fmt.Println("start conversationsDestructMsgs cron failed", err.Error(), config.Config.ChatRecordsClearTime) - // panic(err) - // } + _, err = c.AddFunc(config.Config.MsgDestructTime, msgTool.ConversationsDestructMsgs) + if err != nil { + fmt.Println("start conversationsDestructMsgs cron failed", err.Error(), config.Config.ChatRecordsClearTime) + panic(err) + } c.Start() wg.Wait() return nil diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 37a71bafa..34e895765 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -63,7 +63,7 @@ type CommonMsgDatabase interface { // 删除会话消息重置最小seq, remainTime为消息保留的时间单位秒,超时消息删除, 传0删除所有消息(此方法不删除redis cache) DeleteConversationMsgsAndSetMinSeq(ctx context.Context, conversationID string, remainTime int64) error // 用户标记删除过期消息返回标记删除的seq列表 - UserMsgsDestruct(cte context.Context, userID string, conversationID string, destructTime int64, lastMsgDestructTime time.Time) (seqs []int64, err error) + UserMsgsDestruct(ctx context.Context, userID string, conversationID string, destructTime int64, lastMsgDestructTime time.Time) (seqs []int64, err error) // 用户根据seq删除消息 DeleteUserMsgsBySeqs(ctx context.Context, userID string, conversationID string, seqs []int64) error @@ -641,7 +641,7 @@ func (db *commonMsgDatabase) UserMsgsDestruct(ctx context.Context, userID string if err != nil || msgDocModel.DocID == "" { if err != nil { if err == unrelation.ErrMsgListNotExist { - log.ZDebug(ctx, "deleteMsgRecursion finished", "conversationID", conversationID, "userID", userID, "index", index) + log.ZDebug(ctx, "not doc find", "conversationID", conversationID, "userID", userID, "index", index) } else { log.ZError(ctx, "deleteMsgRecursion GetUserMsgListByIndex failed", err, "conversationID", conversationID, "index", index) } @@ -652,25 +652,38 @@ func (db *commonMsgDatabase) UserMsgsDestruct(ctx context.Context, userID string index++ //&& msgDocModel.Msg[0].Msg.SendTime > lastMsgDestructTime.UnixMilli() if len(msgDocModel.Msg) > 0 { + i := 0 + var over bool for _, msg := range msgDocModel.Msg { + i++ if msg != nil && msg.Msg != nil && msg.Msg.SendTime+destructTime*1000 <= time.Now().UnixMilli() { - if msg.Msg.SendTime > lastMsgDestructTime.UnixMilli() && !utils.Contain(userID, msg.DelList...) { + if msg.Msg.SendTime+destructTime*1000 > lastMsgDestructTime.UnixMilli() && !utils.Contain(userID, msg.DelList...) { seqs = append(seqs, msg.Msg.Seq) } } else { - log.ZDebug(ctx, "deleteMsgRecursion finished", "conversationID", conversationID, "userID", userID, "index", index) + log.ZDebug(ctx, "all msg need destruct is found", "conversationID", conversationID, "userID", userID, "index", index, "stop index", i) + over = true break } } + if over { + break + } } } log.ZDebug(ctx, "UserMsgsDestruct", "conversationID", conversationID, "userID", userID, "seqs", seqs) if len(seqs) > 0 { - latestSeq := seqs[len(seqs)-1] - if err := db.cache.SetConversationUserMinSeq(ctx, conversationID, userID, latestSeq); err != nil { + userMinSeq := seqs[len(seqs)-1] + 1 + currentUserMinSeq, err := db.cache.GetConversationUserMinSeq(ctx, conversationID, userID) + if err != nil && errs.Unwrap(err) != redis.Nil { return nil, err } + if currentUserMinSeq < userMinSeq { + if err := db.cache.SetConversationUserMinSeq(ctx, conversationID, userID, userMinSeq); err != nil { + return nil, err + } + } } return seqs, nil } diff --git a/pkg/common/db/relation/conversation_model.go b/pkg/common/db/relation/conversation_model.go index 10b82ef7c..fb88b8305 100644 --- a/pkg/common/db/relation/conversation_model.go +++ b/pkg/common/db/relation/conversation_model.go @@ -207,7 +207,7 @@ func (c *ConversationGorm) GetConversationIDsNeedDestruct( ) (conversations []*relation.ConversationModel, err error) { return conversations, utils.Wrap( c.db(ctx). - Where("is_msg_destruct = 1 && UNIX_TIMESTAMP(NOW()) > (msg_destruct_time + UNIX_TIMESTAMP(latest_msg_destruct_time)) && msg_destruct_time != 0"). + Where("is_msg_destruct = 1 && msg_destruct_time != 0 && (UNIX_TIMESTAMP(NOW()) > (msg_destruct_time + UNIX_TIMESTAMP(latest_msg_destruct_time)) || latest_msg_destruct_time is NULL)"). Find(&conversations). Error, "", diff --git a/internal/rpc/msg/lock.go b/pkg/common/locker/message_locker.go similarity index 99% rename from internal/rpc/msg/lock.go rename to pkg/common/locker/message_locker.go index 154a5b181..2631f19b1 100644 --- a/internal/rpc/msg/lock.go +++ b/pkg/common/locker/message_locker.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package msg +package locker import ( "context" diff --git a/pkg/rpcclient/msg.go b/pkg/rpcclient/msg.go index 1fd6846d1..a012a5a5f 100644 --- a/pkg/rpcclient/msg.go +++ b/pkg/rpcclient/msg.go @@ -71,8 +71,9 @@ func newContentTypeConf() map[int32]config.NotificationConf { constant.ConversationUnreadNotification: config.Config.Notification.ConversationChanged, constant.ConversationPrivateChatNotification: config.Config.Notification.ConversationSetPrivate, // msg - constant.MsgRevokeNotification: {IsSendMsg: false, ReliabilityLevel: constant.ReliableNotificationNoMsg}, - constant.HasReadReceipt: {IsSendMsg: false, ReliabilityLevel: constant.ReliableNotificationNoMsg}, + constant.MsgRevokeNotification: {IsSendMsg: false, ReliabilityLevel: constant.ReliableNotificationNoMsg}, + constant.HasReadReceipt: {IsSendMsg: false, ReliabilityLevel: constant.ReliableNotificationNoMsg}, + constant.DeleteMsgsNotification: {IsSendMsg: false, ReliabilityLevel: constant.ReliableNotificationNoMsg}, } } @@ -116,7 +117,7 @@ func newSessionTypeConf() map[int32]int32 { constant.ConversationUnreadNotification: constant.SingleChatType, constant.ConversationPrivateChatNotification: constant.SingleChatType, // delete - constant.MsgDeleteNotification: constant.SingleChatType, + constant.DeleteMsgsNotification: constant.SingleChatType, } } diff --git a/pkg/rpcclient/notification/msg.go b/pkg/rpcclient/notification/msg.go index c475291d2..bcc6865b1 100644 --- a/pkg/rpcclient/notification/msg.go +++ b/pkg/rpcclient/notification/msg.go @@ -36,7 +36,7 @@ func (m *MsgNotificationSender) UserDeleteMsgsNotification(ctx context.Context, ConversationID: conversationID, Seqs: seqs, } - return m.Notification(ctx, userID, userID, constant.MsgDeleteNotification, &tips) + return m.Notification(ctx, userID, userID, constant.DeleteMsgsNotification, &tips) } func (m *MsgNotificationSender) MarkAsReadNotification(ctx context.Context, conversationID string, sesstionType int32, sendID, recvID string, seqs []int64, hasReadSeq int64) error { diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go index 418e65d34..2662e0a61 100644 --- a/pkg/utils/utils.go +++ b/pkg/utils/utils.go @@ -367,6 +367,10 @@ func GetNotificationConversationIDByConversationID(conversationID string) string return "" } +func GetSelfNotificationConversationID(userID string) string { + return "n_" + userID + "_" + userID +} + func GetSeqsBeginEnd(seqs []int64) (int64, int64) { if len(seqs) == 0 { return 0, 0 From 4629b03272dadb074e2472edad08fb205ddd4c4b Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Wed, 19 Jul 2023 16:17:46 +0800 Subject: [PATCH 28/46] fix: optimize minio initialization (#602) --- pkg/common/db/s3/minio/minio.go | 76 ++++++++++++++++++++++++++++----- 1 file changed, 65 insertions(+), 11 deletions(-) diff --git a/pkg/common/db/s3/minio/minio.go b/pkg/common/db/s3/minio/minio.go index baf9b64e6..bb6e6ce24 100644 --- a/pkg/common/db/s3/minio/minio.go +++ b/pkg/common/db/s3/minio/minio.go @@ -22,6 +22,7 @@ import ( "net/url" "strconv" "strings" + "sync" "time" "github.com/minio/minio-go/v7" @@ -56,21 +57,20 @@ func NewMinio() (s3.Interface, error) { if err != nil { return nil, err } - exists, err := client.BucketExists(context.Background(), conf.Bucket) - if err != nil { - return nil, err - } - if !exists { - if err := client.MakeBucket(context.Background(), conf.Bucket, minio.MakeBucketOptions{}); err != nil { - return nil, err - } - } - return &Minio{ + m := &Minio{ bucket: conf.Bucket, bucketURL: conf.Endpoint + "/" + conf.Bucket + "/", opts: opts, core: &minio.Core{Client: client}, - }, nil + lock: &sync.Mutex{}, + init: false, + } + ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) + defer cancel() + if err := m.initMinio(ctx); err != nil { + fmt.Println("init minio error:", err) + } + return m, nil } type Minio struct { @@ -78,6 +78,30 @@ type Minio struct { bucketURL string opts *minio.Options core *minio.Core + lock sync.Locker + init bool +} + +func (m *Minio) initMinio(ctx context.Context) error { + if m.init { + return nil + } + m.lock.Lock() + defer m.lock.Unlock() + if m.init { + return nil + } + exists, err := m.core.Client.BucketExists(ctx, config.Config.Object.Minio.Bucket) + if err != nil { + return fmt.Errorf("check bucket exists error: %w", err) + } + if !exists { + if err := m.core.Client.MakeBucket(ctx, config.Config.Object.Minio.Bucket, minio.MakeBucketOptions{}); err != nil { + return fmt.Errorf("make bucket error: %w", err) + } + } + m.init = true + return nil } func (m *Minio) Engine() string { @@ -93,6 +117,9 @@ func (m *Minio) PartLimit() *s3.PartLimit { } func (m *Minio) InitiateMultipartUpload(ctx context.Context, name string) (*s3.InitiateMultipartUploadResult, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } uploadID, err := m.core.NewMultipartUpload(ctx, m.bucket, name, minio.PutObjectOptions{}) if err != nil { return nil, err @@ -105,6 +132,9 @@ func (m *Minio) InitiateMultipartUpload(ctx context.Context, name string) (*s3.I } func (m *Minio) CompleteMultipartUpload(ctx context.Context, uploadID string, name string, parts []s3.Part) (*s3.CompleteMultipartUploadResult, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } minioParts := make([]minio.CompletePart, len(parts)) for i, part := range parts { minioParts[i] = minio.CompletePart{ @@ -142,6 +172,9 @@ func (m *Minio) PartSize(ctx context.Context, size int64) (int64, error) { } func (m *Minio) AuthSign(ctx context.Context, uploadID string, name string, expire time.Duration, partNumbers []int) (*s3.AuthSignResult, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } creds, err := m.opts.Creds.Get() if err != nil { return nil, err @@ -170,6 +203,9 @@ func (m *Minio) AuthSign(ctx context.Context, uploadID string, name string, expi } func (m *Minio) PresignedPutObject(ctx context.Context, name string, expire time.Duration) (string, error) { + if err := m.initMinio(ctx); err != nil { + return "", err + } rawURL, err := m.core.Client.PresignedPutObject(ctx, m.bucket, name, expire) if err != nil { return "", err @@ -178,10 +214,16 @@ func (m *Minio) PresignedPutObject(ctx context.Context, name string, expire time } func (m *Minio) DeleteObject(ctx context.Context, name string) error { + if err := m.initMinio(ctx); err != nil { + return err + } return m.core.Client.RemoveObject(ctx, m.bucket, name, minio.RemoveObjectOptions{}) } func (m *Minio) StatObject(ctx context.Context, name string) (*s3.ObjectInfo, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } info, err := m.core.Client.StatObject(ctx, m.bucket, name, minio.StatObjectOptions{}) if err != nil { return nil, err @@ -195,6 +237,9 @@ func (m *Minio) StatObject(ctx context.Context, name string) (*s3.ObjectInfo, er } func (m *Minio) CopyObject(ctx context.Context, src string, dst string) (*s3.CopyObjectInfo, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } result, err := m.core.Client.CopyObject(ctx, minio.CopyDestOptions{ Bucket: m.bucket, Object: dst, @@ -226,10 +271,16 @@ func (m *Minio) IsNotFound(err error) bool { } func (m *Minio) AbortMultipartUpload(ctx context.Context, uploadID string, name string) error { + if err := m.initMinio(ctx); err != nil { + return err + } return m.core.AbortMultipartUpload(ctx, m.bucket, name, uploadID) } func (m *Minio) ListUploadedParts(ctx context.Context, uploadID string, name string, partNumberMarker int, maxParts int) (*s3.ListUploadedPartsResult, error) { + if err := m.initMinio(ctx); err != nil { + return nil, err + } result, err := m.core.ListObjectParts(ctx, m.bucket, name, uploadID, partNumberMarker, maxParts) if err != nil { return nil, err @@ -253,6 +304,9 @@ func (m *Minio) ListUploadedParts(ctx context.Context, uploadID string, name str } func (m *Minio) AccessURL(ctx context.Context, name string, expire time.Duration, opt *s3.AccessURLOption) (string, error) { + if err := m.initMinio(ctx); err != nil { + return "", err + } reqParams := make(url.Values) if opt != nil { if opt.ContentType != "" { From 7ee40bd485d131a03a5f85ed40ed182bdf6cf2fd Mon Sep 17 00:00:00 2001 From: WangchuXiao Date: Thu, 20 Jul 2023 16:28:58 +0800 Subject: [PATCH 29/46] fix: init grpc conn multiple in one process will cause zero address when rpc is called (#604) * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * MsgDestructTime * fix bug: msg destruct sql * fix bug: msg destruct * fix bug: msg destruct * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * debug: print stack * debug: print stack * debug: print stack * fix bug: msg destruct sql Signed-off-by: wangchuxiao * fix bug: msg notification self 2 self push twice * fix bug: heartbeat get self notification * fix bug: init grpc conn in one process * fix bug: grpc conn Signed-off-by: wangchuxiao * fix bug: zk client recreate node when reconn * fix bug: set friend mark args error --------- Signed-off-by: wangchuxiao --- pkg/discoveryregistry/zookeeper/discover.go | 12 +++++++++++- pkg/discoveryregistry/zookeeper/register.go | 20 +++++++++++++++----- pkg/discoveryregistry/zookeeper/resolver.go | 9 +++++---- pkg/discoveryregistry/zookeeper/zk.go | 6 +++++- pkg/proto/friend/friend.go | 3 --- 5 files changed, 36 insertions(+), 14 deletions(-) diff --git a/pkg/discoveryregistry/zookeeper/discover.go b/pkg/discoveryregistry/zookeeper/discover.go index b56999911..f83331943 100644 --- a/pkg/discoveryregistry/zookeeper/discover.go +++ b/pkg/discoveryregistry/zookeeper/discover.go @@ -40,7 +40,17 @@ func (s *ZkClient) watch() { event := <-s.eventChan switch event.Type { case zk.EventSession: - s.logger.Printf("zk session event: %+v", event) + if event.State == zk.StateHasSession && s.isRegistered { + s.logger.Printf("zk session event stateHasSession: %+v, client prepare to create new temp node", event) + node, err := s.CreateTempNode(s.rpcRegisterName, s.rpcRegisterAddr) + if err != nil { + s.logger.Printf("zk session event stateHasSession: %+v, create temp node error: %v", event, err) + } else { + s.node = node + } + } else { + s.logger.Printf("zk session event: %+v", event) + } case zk.EventNodeChildrenChanged: s.logger.Printf("zk event: %s", event.Path) l := strings.Split(event.Path, "/") diff --git a/pkg/discoveryregistry/zookeeper/register.go b/pkg/discoveryregistry/zookeeper/register.go index fec72538d..8fc5fa34e 100644 --- a/pkg/discoveryregistry/zookeeper/register.go +++ b/pkg/discoveryregistry/zookeeper/register.go @@ -30,6 +30,14 @@ func (s *ZkClient) CreateRpcRootNodes(serviceNames []string) error { return nil } +func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, err error) { + return s.conn.CreateProtectedEphemeralSequential( + s.getPath(rpcRegisterName)+"/"+addr+"_", + []byte(addr), + zk.WorldACL(zk.PermAll), + ) +} + func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error { if err := s.ensureName(rpcRegisterName); err != nil { return err @@ -39,15 +47,14 @@ func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc if err != nil { return err } - node, err := s.conn.CreateProtectedEphemeralSequential( - s.getPath(rpcRegisterName)+"/"+addr+"_", - []byte(addr), - zk.WorldACL(zk.PermAll), - ) + node, err := s.CreateTempNode(rpcRegisterName, addr) if err != nil { return err } + s.rpcRegisterName = rpcRegisterName + s.rpcRegisterAddr = addr s.node = node + s.isRegistered = true return nil } @@ -60,6 +67,9 @@ func (s *ZkClient) UnRegister() error { } time.Sleep(time.Second) s.node = "" + s.rpcRegisterName = "" + s.rpcRegisterAddr = "" + s.isRegistered = false s.localConns = make(map[string][]grpc.ClientConnInterface) s.resolvers = make(map[string]*Resolver) return nil diff --git a/pkg/discoveryregistry/zookeeper/resolver.go b/pkg/discoveryregistry/zookeeper/resolver.go index e395a8f34..7e9c8c125 100644 --- a/pkg/discoveryregistry/zookeeper/resolver.go +++ b/pkg/discoveryregistry/zookeeper/resolver.go @@ -73,7 +73,11 @@ func (s *ZkClient) Build( opts resolver.BuildOptions, ) (resolver.Resolver, error) { s.logger.Printf("build resolver: %+v, cc: %+v", target, cc.UpdateState) - // log.ZDebug(context.Background(), "build resolver start", "target", target, "cc", cc.UpdateState) + serviceName := strings.TrimLeft(target.URL.Path, "/") + if oldResolver, ok := s.resolvers[serviceName]; ok { + s.logger.Printf("rpc resolver exist: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName) + return oldResolver, nil + } r := &Resolver{} r.target = target r.cc = cc @@ -81,11 +85,8 @@ func (s *ZkClient) Build( r.ResolveNowZK(resolver.ResolveNowOptions{}) s.lock.Lock() defer s.lock.Unlock() - serviceName := strings.TrimLeft(target.URL.Path, "/") s.resolvers[serviceName] = r s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName) - // log.ZDebug(context.Background(), "build resolver finished", "target", target, "cc", cc.UpdateState, - // "serviceName", serviceName) return r, nil } diff --git a/pkg/discoveryregistry/zookeeper/zk.go b/pkg/discoveryregistry/zookeeper/zk.go index a3b02b12e..cc333c4b6 100644 --- a/pkg/discoveryregistry/zookeeper/zk.go +++ b/pkg/discoveryregistry/zookeeper/zk.go @@ -40,7 +40,10 @@ type ZkClient struct { userName string password string - scheme string + rpcRegisterName string + rpcRegisterAddr string + isRegistered bool + scheme string timeout int conn *zk.Conn @@ -136,6 +139,7 @@ func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClien resolver.Register(client) go client.refresh() go client.watch() + time.Sleep(time.Millisecond * 50) return client, nil } diff --git a/pkg/proto/friend/friend.go b/pkg/proto/friend/friend.go index f2ad6a7a4..197fc753c 100644 --- a/pkg/proto/friend/friend.go +++ b/pkg/proto/friend/friend.go @@ -152,9 +152,6 @@ func (x *SetFriendRemarkReq) Check() error { if x.FriendUserID == "" { return errs.ErrArgs.Wrap("fromUserID is empty") } - if x.Remark == "" { - return errs.ErrArgs.Wrap("remark is empty") - } return nil } From 6de99953543c3bdc52fed64471a6b409b8e51a4a Mon Sep 17 00:00:00 2001 From: Alan <68671759+hanzhixiao@users.noreply.github.com> Date: Thu, 20 Jul 2023 16:31:41 +0800 Subject: [PATCH 30/46] parameter range error (#606) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * message for your changes Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * debug Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> * Delete start.bat * Delete build.cmd * fix: parameter check Signed-off-by: hanzhixiao <709674996@qq.com> * fix: parameter check Signed-off-by: hanzhixiao <709674996@qq.com> --------- Signed-off-by: ‘hanzhixiao’ <‘709674996@qq.com’> Signed-off-by: hanzhixiao <709674996@qq.com> Co-authored-by: ‘hanzhixiao’ <‘709674996@qq.com’> --- pkg/proto/auth/auth.go | 9 +- pkg/proto/auth/auth.pb.go | 17 +- pkg/proto/conversation/conversation.pb.go | 78 +++-- pkg/proto/errinfo/errinfo.pb.go | 11 +- pkg/proto/friend/friend.pb.go | 44 ++- pkg/proto/group/group.pb.go | 100 +++--- pkg/proto/msg/msg.pb.go | 144 ++++---- pkg/proto/msggateway/msggateway.pb.go | 48 ++- pkg/proto/push/push.pb.go | 12 +- pkg/proto/sdkws/sdkws.pb.go | 396 +++++++++++----------- pkg/proto/statistics/statistics.pb.go | 3 +- pkg/proto/third/third.pb.go | 65 ++-- pkg/proto/user/user.go | 3 - pkg/proto/user/user.pb.go | 54 ++- pkg/proto/wrapperspb/wrapperspb.pb.go | 5 +- scripts/build.cmd | 11 + 16 files changed, 495 insertions(+), 505 deletions(-) create mode 100644 scripts/build.cmd diff --git a/pkg/proto/auth/auth.go b/pkg/proto/auth/auth.go index 45e935558..9b8fdd988 100644 --- a/pkg/proto/auth/auth.go +++ b/pkg/proto/auth/auth.go @@ -14,13 +14,16 @@ package auth -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" +import ( + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" +) func (x *UserTokenReq) Check() error { if x.UserID == "" { return errs.ErrArgs.Wrap("userID is empty") } - if x.PlatformID > 9 || x.PlatformID < 1 { + if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID { return errs.ErrArgs.Wrap("platform is invalidate") } return nil @@ -30,7 +33,7 @@ func (x *ForceLogoutReq) Check() error { if x.UserID == "" { return errs.ErrArgs.Wrap("userID is empty") } - if x.PlatformID > 9 || x.PlatformID < 1 { + if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID { return errs.ErrArgs.Wrap("platformID is invalidate") } return nil diff --git a/pkg/proto/auth/auth.pb.go b/pkg/proto/auth/auth.pb.go index 238d12975..2d1e0493c 100644 --- a/pkg/proto/auth/auth.pb.go +++ b/pkg/proto/auth/auth.pb.go @@ -22,14 +22,13 @@ package auth import ( context "context" - reflect "reflect" - sync "sync" - 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 ( @@ -44,9 +43,9 @@ type UserTokenReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` + Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *UserTokenReq) Reset() { @@ -107,7 +106,7 @@ type UserTokenResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token"` ExpireTimeSeconds int64 `protobuf:"varint,3,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` } @@ -163,7 +162,7 @@ type ForceLogoutReq struct { unknownFields protoimpl.UnknownFields PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *ForceLogoutReq) Reset() { @@ -302,8 +301,8 @@ type ParseTokenResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform"` ExpireTimeSeconds int64 `protobuf:"varint,4,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` } diff --git a/pkg/proto/conversation/conversation.pb.go b/pkg/proto/conversation/conversation.pb.go index 568948379..cf5de48a7 100644 --- a/pkg/proto/conversation/conversation.pb.go +++ b/pkg/proto/conversation/conversation.pb.go @@ -22,16 +22,14 @@ package conversation import ( context "context" - reflect "reflect" - sync "sync" - + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" 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" - - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + reflect "reflect" + sync "sync" ) const ( @@ -46,23 +44,23 @@ type Conversation struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - ConversationType int32 `protobuf:"varint,4,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,5,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,6,opt,name=groupID,proto3" json:"groupID"` - IsPinned bool `protobuf:"varint,7,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo string `protobuf:"bytes,8,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat bool `protobuf:"varint,9,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - GroupAtType int32 `protobuf:"varint,10,opt,name=groupAtType,proto3" json:"groupAtType"` - Ex string `protobuf:"bytes,11,opt,name=ex,proto3" json:"ex"` - BurnDuration int32 `protobuf:"varint,12,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq int64 `protobuf:"varint,13,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq int64 `protobuf:"varint,14,opt,name=maxSeq,proto3" json:"maxSeq"` - MsgDestructTime int64 `protobuf:"varint,15,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + ConversationType int32 `protobuf:"varint,4,opt,name=conversationType,proto3" json:"conversationType"` + UserID string `protobuf:"bytes,5,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,6,opt,name=groupID,proto3" json:"groupID"` + IsPinned bool `protobuf:"varint,7,opt,name=isPinned,proto3" json:"isPinned"` + AttachedInfo string `protobuf:"bytes,8,opt,name=attachedInfo,proto3" json:"attachedInfo"` + IsPrivateChat bool `protobuf:"varint,9,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` + GroupAtType int32 `protobuf:"varint,10,opt,name=groupAtType,proto3" json:"groupAtType"` + Ex string `protobuf:"bytes,11,opt,name=ex,proto3" json:"ex"` + BurnDuration int32 `protobuf:"varint,12,opt,name=burnDuration,proto3" json:"burnDuration"` + MinSeq int64 `protobuf:"varint,13,opt,name=minSeq,proto3" json:"minSeq"` + MaxSeq int64 `protobuf:"varint,14,opt,name=maxSeq,proto3" json:"maxSeq"` + MsgDestructTime int64 `protobuf:"varint,15,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` LatestMsgDestructTime int64 `protobuf:"varint,16,opt,name=latestMsgDestructTime,proto3" json:"latestMsgDestructTime"` - IsMsgDestruct bool `protobuf:"varint,17,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` + IsMsgDestruct bool `protobuf:"varint,17,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` } func (x *Conversation) Reset() { @@ -221,21 +219,21 @@ type ConversationReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` + ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` ConversationType int32 `protobuf:"varint,2,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID"` - RecvMsgOpt *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - IsPinned *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - Ex *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - BurnDuration *wrapperspb.Int32Value `protobuf:"bytes,10,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=maxSeq,proto3" json:"maxSeq"` - GroupAtType *wrapperspb.Int32Value `protobuf:"bytes,13,opt,name=groupAtType,proto3" json:"groupAtType"` - MsgDestructTime *wrapperspb.Int64Value `protobuf:"bytes,14,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` - IsMsgDestruct *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID"` + RecvMsgOpt *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + IsPinned *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=isPinned,proto3" json:"isPinned"` + AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=attachedInfo,proto3" json:"attachedInfo"` + IsPrivateChat *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` + Ex *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + BurnDuration *wrapperspb.Int32Value `protobuf:"bytes,10,opt,name=burnDuration,proto3" json:"burnDuration"` + MinSeq *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=minSeq,proto3" json:"minSeq"` + MaxSeq *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=maxSeq,proto3" json:"maxSeq"` + GroupAtType *wrapperspb.Int32Value `protobuf:"bytes,13,opt,name=groupAtType,proto3" json:"groupAtType"` + MsgDestructTime *wrapperspb.Int64Value `protobuf:"bytes,14,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` + IsMsgDestruct *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` } func (x *ConversationReq) Reset() { @@ -466,7 +464,7 @@ type GetConversationReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` } func (x *GetConversationReq) Reset() { @@ -567,7 +565,7 @@ type GetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` } @@ -1044,8 +1042,8 @@ type SetConversationMaxSeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID []string `protobuf:"bytes,2,rep,name=ownerUserID,proto3" json:"ownerUserID"` - MaxSeq int64 `protobuf:"varint,3,opt,name=maxSeq,proto3" json:"maxSeq"` + OwnerUserID []string `protobuf:"bytes,2,rep,name=ownerUserID,proto3" json:"ownerUserID"` + MaxSeq int64 `protobuf:"varint,3,opt,name=maxSeq,proto3" json:"maxSeq"` } func (x *SetConversationMaxSeqReq) Reset() { @@ -1238,7 +1236,7 @@ type SetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` + UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` Conversation *ConversationReq `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation"` } diff --git a/pkg/proto/errinfo/errinfo.pb.go b/pkg/proto/errinfo/errinfo.pb.go index 1beca5842..44f906d86 100644 --- a/pkg/proto/errinfo/errinfo.pb.go +++ b/pkg/proto/errinfo/errinfo.pb.go @@ -21,11 +21,10 @@ package errinfo import ( - reflect "reflect" - sync "sync" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" ) const ( @@ -40,11 +39,11 @@ type ErrorInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path"` + Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path"` Line uint32 `protobuf:"varint,2,opt,name=line,proto3" json:"line"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` Cause string `protobuf:"bytes,4,opt,name=cause,proto3" json:"cause"` - Warp []string `protobuf:"bytes,5,rep,name=warp,proto3" json:"warp"` + Warp []string `protobuf:"bytes,5,rep,name=warp,proto3" json:"warp"` } func (x *ErrorInfo) Reset() { diff --git a/pkg/proto/friend/friend.pb.go b/pkg/proto/friend/friend.pb.go index 7439a475a..5745fcd3c 100644 --- a/pkg/proto/friend/friend.pb.go +++ b/pkg/proto/friend/friend.pb.go @@ -22,16 +22,14 @@ package friend import ( context "context" - reflect "reflect" - sync "sync" - + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" 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" - - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" ) const ( @@ -47,7 +45,7 @@ type GetPaginationFriendsReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *GetPaginationFriendsReq) Reset() { @@ -102,7 +100,7 @@ type GetPaginationFriendsResp struct { unknownFields protoimpl.UnknownFields FriendsInfo []*sdkws.FriendInfo `protobuf:"bytes,1,rep,name=friendsInfo,proto3" json:"friendsInfo"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsResp) Reset() { @@ -157,9 +155,9 @@ type ApplyToAddFriendReq struct { unknownFields protoimpl.UnknownFields FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` + ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` } func (x *ApplyToAddFriendReq) Reset() { @@ -265,7 +263,7 @@ type ImportFriendReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` } @@ -358,7 +356,7 @@ type GetPaginationFriendsApplyToReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -414,7 +412,7 @@ type GetPaginationFriendsApplyToResp struct { unknownFields protoimpl.UnknownFields FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=FriendRequests,proto3" json:"FriendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsApplyToResp) Reset() { @@ -468,7 +466,7 @@ type GetDesignatedFriendsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` } @@ -756,7 +754,7 @@ type GetPaginationBlacksReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -1086,7 +1084,7 @@ type DeleteFriendReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` } @@ -1180,10 +1178,10 @@ type RespondFriendApplyReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` //主动发起的申请者 - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` //被动添加者 + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` //主动发起的申请者 + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` //被动添加者 HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *RespondFriendApplyReq) Reset() { @@ -1289,9 +1287,9 @@ type SetFriendRemarkReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` - Remark string `protobuf:"bytes,3,opt,name=remark,proto3" json:"remark"` + Remark string `protobuf:"bytes,3,opt,name=remark,proto3" json:"remark"` } func (x *SetFriendRemarkReq) Reset() { @@ -1390,7 +1388,7 @@ type GetPaginationFriendsApplyFromReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` } @@ -1446,7 +1444,7 @@ type GetPaginationFriendsApplyFromResp struct { unknownFields protoimpl.UnknownFields FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=friendRequests,proto3" json:"friendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` } func (x *GetPaginationFriendsApplyFromResp) Reset() { diff --git a/pkg/proto/group/group.pb.go b/pkg/proto/group/group.pb.go index 32261fc7c..f4230c794 100644 --- a/pkg/proto/group/group.pb.go +++ b/pkg/proto/group/group.pb.go @@ -22,17 +22,15 @@ package group import ( context "context" - reflect "reflect" - sync "sync" - + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" 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" - - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + reflect "reflect" + sync "sync" ) const ( @@ -48,9 +46,9 @@ type CreateGroupReq struct { unknownFields protoimpl.UnknownFields MemberUserIDs []string `protobuf:"bytes,1,rep,name=memberUserIDs,proto3" json:"memberUserIDs"` - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - AdminUserIDs []string `protobuf:"bytes,3,rep,name=adminUserIDs,proto3" json:"adminUserIDs"` - OwnerUserID string `protobuf:"bytes,4,opt,name=ownerUserID,proto3" json:"ownerUserID"` //owner + GroupInfo *sdkws.GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` + AdminUserIDs []string `protobuf:"bytes,3,rep,name=adminUserIDs,proto3" json:"adminUserIDs"` + OwnerUserID string `protobuf:"bytes,4,opt,name=ownerUserID,proto3" json:"ownerUserID"` //owner } func (x *CreateGroupReq) Reset() { @@ -399,7 +397,7 @@ type GetGroupApplicationListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` } @@ -455,7 +453,7 @@ type GetUserReqApplicationListReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *GetUserReqApplicationListReq) Reset() { @@ -509,7 +507,7 @@ type GetUserReqApplicationListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` } @@ -564,7 +562,7 @@ type TransferGroupOwnerReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` OldOwnerUserID string `protobuf:"bytes,2,opt,name=oldOwnerUserID,proto3" json:"oldOwnerUserID"` NewOwnerUserID string `protobuf:"bytes,3,opt,name=newOwnerUserID,proto3" json:"newOwnerUserID"` } @@ -665,9 +663,9 @@ type JoinGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - ReqMessage string `protobuf:"bytes,2,opt,name=reqMessage,proto3" json:"reqMessage"` - JoinSource int32 `protobuf:"varint,3,opt,name=joinSource,proto3" json:"joinSource"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + ReqMessage string `protobuf:"bytes,2,opt,name=reqMessage,proto3" json:"reqMessage"` + JoinSource int32 `protobuf:"varint,3,opt,name=joinSource,proto3" json:"joinSource"` InviterUserID string `protobuf:"bytes,4,opt,name=inviterUserID,proto3" json:"inviterUserID"` } @@ -774,9 +772,9 @@ type GroupApplicationResponseReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` // - HandledMsg string `protobuf:"bytes,3,opt,name=handledMsg,proto3" json:"handledMsg"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` // + HandledMsg string `protobuf:"bytes,3,opt,name=handledMsg,proto3" json:"handledMsg"` HandleResult int32 `protobuf:"varint,4,opt,name=handleResult,proto3" json:"handleResult"` } @@ -969,8 +967,8 @@ type GetGroupMemberListReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - Filter int32 `protobuf:"varint,3,opt,name=filter,proto3" json:"filter"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + Filter int32 `protobuf:"varint,3,opt,name=filter,proto3" json:"filter"` } func (x *GetGroupMemberListReq) Reset() { @@ -1031,7 +1029,7 @@ type GetGroupMemberListResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` } @@ -1188,9 +1186,9 @@ type KickGroupMemberReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` KickedUserIDs []string `protobuf:"bytes,2,rep,name=kickedUserIDs,proto3" json:"kickedUserIDs"` - Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason"` + Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason"` } func (x *KickGroupMemberReq) Reset() { @@ -1399,8 +1397,8 @@ type InviteUserToGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason"` InvitedUserIDs []string `protobuf:"bytes,3,rep,name=invitedUserIDs,proto3" json:"invitedUserIDs"` } @@ -1501,7 +1499,7 @@ type GetGroupAllMemberReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` } func (x *GetGroupAllMemberReq) Reset() { @@ -1602,9 +1600,9 @@ type CMSGroup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` + GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` GroupOwnerUserName string `protobuf:"bytes,2,opt,name=groupOwnerUserName,proto3" json:"groupOwnerUserName"` - GroupOwnerUserID string `protobuf:"bytes,3,opt,name=groupOwnerUserID,proto3" json:"groupOwnerUserID"` + GroupOwnerUserID string `protobuf:"bytes,3,opt,name=groupOwnerUserID,proto3" json:"groupOwnerUserID"` } func (x *CMSGroup) Reset() { @@ -1666,8 +1664,8 @@ type GetGroupsReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` } func (x *GetGroupsReq) Reset() { @@ -1831,8 +1829,8 @@ type GetGroupMembersCMSReq struct { unknownFields protoimpl.UnknownFields Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName"` + GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` + UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName"` } func (x *GetGroupMembersCMSReq) Reset() { @@ -1893,7 +1891,7 @@ type GetGroupMembersCMSResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` } @@ -1948,7 +1946,7 @@ type DismissGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` DeleteMember bool `protobuf:"varint,2,opt,name=deleteMember,proto3" json:"deleteMember"` } @@ -2041,8 +2039,8 @@ type MuteGroupMemberReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` MutedSeconds uint32 `protobuf:"varint,3,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` } @@ -2143,7 +2141,7 @@ type CancelMuteGroupMemberReq struct { unknownFields protoimpl.UnknownFields GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` } func (x *CancelMuteGroupMemberReq) Reset() { @@ -2593,12 +2591,12 @@ type SetGroupMemberInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - Nickname *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname"` - FaceURL *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=faceURL,proto3" json:"faceURL"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + Nickname *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname"` + FaceURL *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=faceURL,proto3" json:"faceURL"` RoleLevel *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=roleLevel,proto3" json:"roleLevel"` - Ex *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + Ex *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` } func (x *SetGroupMemberInfo) Reset() { @@ -2812,8 +2810,8 @@ type GroupAbstractInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupMemberNumber uint32 `protobuf:"varint,2,opt,name=groupMemberNumber,proto3" json:"groupMemberNumber"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupMemberNumber uint32 `protobuf:"varint,2,opt,name=groupMemberNumber,proto3" json:"groupMemberNumber"` GroupMemberListHash uint64 `protobuf:"varint,3,opt,name=groupMemberListHash,proto3" json:"groupMemberListHash"` } @@ -2922,7 +2920,7 @@ type GetUserInGroupMembersReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` GroupIDs []string `protobuf:"bytes,2,rep,name=groupIDs,proto3" json:"groupIDs"` } @@ -3118,7 +3116,7 @@ type GetGroupMemberRoleLevelReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` RoleLevels []int32 `protobuf:"varint,2,rep,packed,name=roleLevels,proto3" json:"roleLevels"` } @@ -3314,7 +3312,7 @@ type GetGroupMemberCacheReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` GroupMemberID string `protobuf:"bytes,2,opt,name=groupMemberID,proto3" json:"groupMemberID"` } @@ -3417,7 +3415,7 @@ type GroupCreateCountReq struct { unknownFields protoimpl.UnknownFields Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` } func (x *GroupCreateCountReq) Reset() { @@ -3471,9 +3469,9 @@ type GroupCreateCountResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } func (x *GroupCreateCountResp) Reset() { diff --git a/pkg/proto/msg/msg.pb.go b/pkg/proto/msg/msg.pb.go index e5a8156d6..db1f019c2 100644 --- a/pkg/proto/msg/msg.pb.go +++ b/pkg/proto/msg/msg.pb.go @@ -22,16 +22,14 @@ package msg import ( context "context" - reflect "reflect" - sync "sync" - + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" 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" - - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" ) const ( @@ -46,7 +44,7 @@ type MsgDataToMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` MsgData *sdkws.MsgData `protobuf:"bytes,2,opt,name=msgData,proto3" json:"msgData"` } @@ -148,7 +146,7 @@ type PushMsgDataToMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -203,9 +201,9 @@ type MsgDataToMongoByMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - LastSeq int64 `protobuf:"varint,1,opt,name=lastSeq,proto3" json:"lastSeq"` + LastSeq int64 `protobuf:"varint,1,opt,name=lastSeq,proto3" json:"lastSeq"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - MsgData []*sdkws.MsgData `protobuf:"bytes,3,rep,name=msgData,proto3" json:"msgData"` + MsgData []*sdkws.MsgData `protobuf:"bytes,3,rep,name=msgData,proto3" json:"msgData"` } func (x *MsgDataToMongoByMQ) Reset() { @@ -417,7 +415,7 @@ type SendMsgResp struct { ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` } func (x *SendMsgResp) Reset() { @@ -648,7 +646,7 @@ type MsgDataToModifyByMQ struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Messages []*sdkws.MsgData `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages"` + Messages []*sdkws.MsgData `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -780,8 +778,8 @@ type RevokeMsgReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seq int64 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + Seq int64 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *RevokeMsgReq) Reset() { @@ -881,8 +879,8 @@ type MarkMsgsAsReadReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *MarkMsgsAsReadReq) Reset() { @@ -982,9 +980,9 @@ type MarkConversationAsReadReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` - Seqs []int64 `protobuf:"varint,4,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + Seqs []int64 `protobuf:"varint,4,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *MarkConversationAsReadReq) Reset() { @@ -1091,8 +1089,8 @@ type SetConversationHasReadSeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } func (x *SetConversationHasReadSeqReq) Reset() { @@ -1191,7 +1189,7 @@ type DeleteSyncOpt struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsSyncSelf bool `protobuf:"varint,3,opt,name=IsSyncSelf,proto3" json:"IsSyncSelf"` + IsSyncSelf bool `protobuf:"varint,3,opt,name=IsSyncSelf,proto3" json:"IsSyncSelf"` IsSyncOther bool `protobuf:"varint,4,opt,name=IsSyncOther,proto3" json:"IsSyncOther"` } @@ -1247,8 +1245,8 @@ type ClearConversationsMsgReq struct { unknownFields protoimpl.UnknownFields ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } func (x *ClearConversationsMsgReq) Reset() { @@ -1347,7 +1345,7 @@ type UserClearAllMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } @@ -1441,9 +1439,9 @@ type DeleteMsgsReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,4,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` + DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,4,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` } func (x *DeleteMsgsReq) Reset() { @@ -1550,7 +1548,7 @@ type DeleteMsgPhysicalReq struct { unknownFields protoimpl.UnknownFields ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp"` + Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp"` } func (x *DeleteMsgPhysicalReq) Reset() { @@ -1643,7 +1641,7 @@ type DeleteMsgPhysicalBySeqReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` + Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *DeleteMsgPhysicalBySeqReq) Reset() { @@ -1876,7 +1874,7 @@ type Seqs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` + MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` HasReadSeq int64 `protobuf:"varint,2,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } @@ -1978,10 +1976,10 @@ type GetActiveUserReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` - Group bool `protobuf:"varint,4,opt,name=group,proto3" json:"group"` + Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` + Group bool `protobuf:"varint,4,opt,name=group,proto3" json:"group"` Pagination *sdkws.RequestPagination `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination"` } @@ -2057,7 +2055,7 @@ type ActiveUser struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - User *sdkws.UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user"` + User *sdkws.UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user"` Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } @@ -2112,10 +2110,10 @@ type GetActiveUserResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` + MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` UserCount int64 `protobuf:"varint,2,opt,name=userCount,proto3" json:"userCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Users []*ActiveUser `protobuf:"bytes,4,rep,name=users,proto3" json:"users"` + DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Users []*ActiveUser `protobuf:"bytes,4,rep,name=users,proto3" json:"users"` } func (x *GetActiveUserResp) Reset() { @@ -2183,9 +2181,9 @@ type GetActiveGroupReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` + Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` Pagination *sdkws.RequestPagination `protobuf:"bytes,4,opt,name=pagination,proto3" json:"pagination"` } @@ -2254,7 +2252,7 @@ type ActiveGroup struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + Group *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } @@ -2309,10 +2307,10 @@ type GetActiveGroupResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` + MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` GroupCount int64 `protobuf:"varint,2,opt,name=groupCount,proto3" json:"groupCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Groups []*ActiveGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups"` + DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Groups []*ActiveGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups"` } func (x *GetActiveGroupResp) Reset() { @@ -2380,12 +2378,12 @@ type SearchMessageReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` //发送者ID - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` //接收者ID - MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType"` - SendTime string `protobuf:"bytes,4,opt,name=sendTime,proto3" json:"sendTime"` + SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` //发送者ID + RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` //接收者ID + MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType"` + SendTime string `protobuf:"bytes,4,opt,name=sendTime,proto3" json:"sendTime"` SessionType int32 `protobuf:"varint,5,opt,name=sessionType,proto3" json:"sessionType"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,6,opt,name=pagination,proto3" json:"pagination"` + Pagination *sdkws.RequestPagination `protobuf:"bytes,6,opt,name=pagination,proto3" json:"pagination"` } func (x *SearchMessageReq) Reset() { @@ -2467,7 +2465,7 @@ type SearchMessageResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ChatLogs []*ChatLog `protobuf:"bytes,1,rep,name=chatLogs,proto3" json:"chatLogs"` + ChatLogs []*ChatLog `protobuf:"bytes,1,rep,name=chatLogs,proto3" json:"chatLogs"` ChatLogsNum int32 `protobuf:"varint,2,opt,name=chatLogsNum,proto3" json:"chatLogsNum"` } @@ -2522,29 +2520,29 @@ type ChatLog struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendID string `protobuf:"bytes,3,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,4,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,5,opt,name=groupID,proto3" json:"groupID"` - RecvNickname string `protobuf:"bytes,6,opt,name=recvNickname,proto3" json:"recvNickname"` - SenderPlatformID int32 `protobuf:"varint,7,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,8,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,9,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - GroupName string `protobuf:"bytes,10,opt,name=groupName,proto3" json:"groupName"` - SessionType int32 `protobuf:"varint,11,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,12,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,13,opt,name=contentType,proto3" json:"contentType"` - Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content"` - Status int32 `protobuf:"varint,15,opt,name=status,proto3" json:"status"` - SendTime int64 `protobuf:"varint,16,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,17,opt,name=createTime,proto3" json:"createTime"` - Ex string `protobuf:"bytes,18,opt,name=ex,proto3" json:"ex"` - GroupFaceURL string `protobuf:"bytes,19,opt,name=groupFaceURL,proto3" json:"groupFaceURL"` + ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` + ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` + SendID string `protobuf:"bytes,3,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,4,opt,name=recvID,proto3" json:"recvID"` + GroupID string `protobuf:"bytes,5,opt,name=groupID,proto3" json:"groupID"` + RecvNickname string `protobuf:"bytes,6,opt,name=recvNickname,proto3" json:"recvNickname"` + SenderPlatformID int32 `protobuf:"varint,7,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` + SenderNickname string `protobuf:"bytes,8,opt,name=senderNickname,proto3" json:"senderNickname"` + SenderFaceURL string `protobuf:"bytes,9,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` + GroupName string `protobuf:"bytes,10,opt,name=groupName,proto3" json:"groupName"` + SessionType int32 `protobuf:"varint,11,opt,name=sessionType,proto3" json:"sessionType"` + MsgFrom int32 `protobuf:"varint,12,opt,name=msgFrom,proto3" json:"msgFrom"` + ContentType int32 `protobuf:"varint,13,opt,name=contentType,proto3" json:"contentType"` + Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content"` + Status int32 `protobuf:"varint,15,opt,name=status,proto3" json:"status"` + SendTime int64 `protobuf:"varint,16,opt,name=sendTime,proto3" json:"sendTime"` + CreateTime int64 `protobuf:"varint,17,opt,name=createTime,proto3" json:"createTime"` + Ex string `protobuf:"bytes,18,opt,name=ex,proto3" json:"ex"` + GroupFaceURL string `protobuf:"bytes,19,opt,name=groupFaceURL,proto3" json:"groupFaceURL"` GroupMemberCount uint32 `protobuf:"varint,20,opt,name=groupMemberCount,proto3" json:"groupMemberCount"` - Seq int64 `protobuf:"varint,21,opt,name=seq,proto3" json:"seq"` - GroupOwner string `protobuf:"bytes,22,opt,name=groupOwner,proto3" json:"groupOwner"` - GroupType int32 `protobuf:"varint,23,opt,name=groupType,proto3" json:"groupType"` + Seq int64 `protobuf:"varint,21,opt,name=seq,proto3" json:"seq"` + GroupOwner string `protobuf:"bytes,22,opt,name=groupOwner,proto3" json:"groupOwner"` + GroupType int32 `protobuf:"varint,23,opt,name=groupType,proto3" json:"groupType"` } func (x *ChatLog) Reset() { diff --git a/pkg/proto/msggateway/msggateway.pb.go b/pkg/proto/msggateway/msggateway.pb.go index 353524897..d922d98b4 100644 --- a/pkg/proto/msggateway/msggateway.pb.go +++ b/pkg/proto/msggateway/msggateway.pb.go @@ -22,16 +22,14 @@ package msggateway import ( context "context" - reflect "reflect" - sync "sync" - + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" 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" - - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" ) const ( @@ -46,7 +44,7 @@ type OnlinePushMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` PushToUserID string `protobuf:"bytes,2,opt,name=pushToUserID,proto3" json:"pushToUserID"` } @@ -148,8 +146,8 @@ type SingleMsgToUserResults struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Resp []*SingleMsgToUserPlatform `protobuf:"bytes,2,rep,name=resp,proto3" json:"resp"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Resp []*SingleMsgToUserPlatform `protobuf:"bytes,2,rep,name=resp,proto3" json:"resp"` OnlinePush bool `protobuf:"varint,3,opt,name=onlinePush,proto3" json:"onlinePush"` } @@ -211,7 +209,7 @@ type OnlineBatchPushOneMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` PushToUserIDs []string `protobuf:"bytes,2,rep,name=pushToUserIDs,proto3" json:"pushToUserIDs"` } @@ -313,8 +311,8 @@ type SingleMsgToUserPlatform struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ResultCode int64 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode"` - RecvID string `protobuf:"bytes,2,opt,name=RecvID,proto3" json:"RecvID"` + ResultCode int64 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode"` + RecvID string `protobuf:"bytes,2,opt,name=RecvID,proto3" json:"RecvID"` RecvPlatFormID int32 `protobuf:"varint,3,opt,name=RecvPlatFormID,proto3" json:"RecvPlatFormID"` } @@ -424,7 +422,7 @@ type GetUsersOnlineStatusResp struct { unknownFields protoimpl.UnknownFields SuccessResult []*GetUsersOnlineStatusResp_SuccessResult `protobuf:"bytes,1,rep,name=successResult,proto3" json:"successResult"` - FailedResult []*GetUsersOnlineStatusResp_FailedDetail `protobuf:"bytes,2,rep,name=failedResult,proto3" json:"failedResult"` + FailedResult []*GetUsersOnlineStatusResp_FailedDetail `protobuf:"bytes,2,rep,name=failedResult,proto3" json:"failedResult"` } func (x *GetUsersOnlineStatusResp) Reset() { @@ -478,8 +476,8 @@ type SingleDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` SinglePlatformToken []*SinglePlatformToken `protobuf:"bytes,3,rep,name=singlePlatformToken,proto3" json:"singlePlatformToken"` } @@ -542,8 +540,8 @@ type SinglePlatformToken struct { unknownFields protoimpl.UnknownFields Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` - Token []string `protobuf:"bytes,3,rep,name=token,proto3" json:"token"` + Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` + Token []string `protobuf:"bytes,3,rep,name=token,proto3" json:"token"` } func (x *SinglePlatformToken) Reset() { @@ -604,7 +602,7 @@ type KickUserOfflineReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` + PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` KickUserIDList []string `protobuf:"bytes,2,rep,name=kickUserIDList,proto3" json:"kickUserIDList"` } @@ -697,9 +695,9 @@ type MultiTerminalLoginCheckReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` OperationID string `protobuf:"bytes,4,opt,name=operationID,proto3" json:"operationID"` } @@ -806,11 +804,11 @@ type GetUsersOnlineStatusResp_SuccessDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` - ConnID string `protobuf:"bytes,3,opt,name=connID,proto3" json:"connID"` + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + ConnID string `protobuf:"bytes,3,opt,name=connID,proto3" json:"connID"` IsBackground bool `protobuf:"varint,4,opt,name=isBackground,proto3" json:"isBackground"` - Token string `protobuf:"bytes,5,opt,name=token,proto3" json:"token"` + Token string `protobuf:"bytes,5,opt,name=token,proto3" json:"token"` } func (x *GetUsersOnlineStatusResp_SuccessDetail) Reset() { @@ -932,8 +930,8 @@ type GetUsersOnlineStatusResp_SuccessResult struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` DetailPlatformStatus []*GetUsersOnlineStatusResp_SuccessDetail `protobuf:"bytes,3,rep,name=detailPlatformStatus,proto3" json:"detailPlatformStatus"` } diff --git a/pkg/proto/push/push.pb.go b/pkg/proto/push/push.pb.go index 7ef946b60..1dc9d2ab9 100644 --- a/pkg/proto/push/push.pb.go +++ b/pkg/proto/push/push.pb.go @@ -22,16 +22,14 @@ package push import ( context "context" - reflect "reflect" - sync "sync" - + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" 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" - - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" ) const ( @@ -46,7 +44,7 @@ type PushMsgReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` + MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` } @@ -139,7 +137,7 @@ type DelUserPushTokenReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` } diff --git a/pkg/proto/sdkws/sdkws.pb.go b/pkg/proto/sdkws/sdkws.pb.go index ca6e6135a..b45d46d4c 100644 --- a/pkg/proto/sdkws/sdkws.pb.go +++ b/pkg/proto/sdkws/sdkws.pb.go @@ -21,13 +21,11 @@ package sdkws import ( - reflect "reflect" - sync "sync" - + wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" - - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + reflect "reflect" + sync "sync" ) const ( @@ -89,23 +87,23 @@ type GroupInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime"` - MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` - CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID"` - GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType"` - NeedVerification int32 `protobuf:"varint,13,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo int32 `protobuf:"varint,14,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` - ApplyMemberFriend int32 `protobuf:"varint,15,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` + Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` + OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID"` + CreateTime int64 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime"` + MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount"` + Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` + CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID"` + GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType"` + NeedVerification int32 `protobuf:"varint,13,opt,name=needVerification,proto3" json:"needVerification"` + LookMemberInfo int32 `protobuf:"varint,14,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` + ApplyMemberFriend int32 `protobuf:"varint,15,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` NotificationUpdateTime int64 `protobuf:"varint,16,opt,name=notificationUpdateTime,proto3" json:"notificationUpdateTime"` - NotificationUserID string `protobuf:"bytes,17,opt,name=notificationUserID,proto3" json:"notificationUserID"` + NotificationUserID string `protobuf:"bytes,17,opt,name=notificationUserID,proto3" json:"notificationUserID"` } func (x *GroupInfo) Reset() { @@ -264,14 +262,14 @@ type GroupInfoForSet struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` - NeedVerification *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo *wrapperspb.Int32Value `protobuf:"bytes,8,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` + Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` + Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + NeedVerification *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification,proto3" json:"needVerification"` + LookMemberInfo *wrapperspb.Int32Value `protobuf:"bytes,8,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` ApplyMemberFriend *wrapperspb.Int32Value `protobuf:"bytes,9,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` } @@ -375,18 +373,18 @@ type GroupMemberFullInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel"` - JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime"` - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL"` + GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel"` + JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime"` + Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` + FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL"` AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` //if >0 - JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource"` - OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex"` - MuteEndTime int64 `protobuf:"varint,11,opt,name=muteEndTime,proto3" json:"muteEndTime"` - InviterUserID string `protobuf:"bytes,12,opt,name=inviterUserID,proto3" json:"inviterUserID"` + JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource"` + OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID"` + Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex"` + MuteEndTime int64 `protobuf:"varint,11,opt,name=muteEndTime,proto3" json:"muteEndTime"` + InviterUserID string `protobuf:"bytes,12,opt,name=inviterUserID,proto3" json:"inviterUserID"` } func (x *GroupMemberFullInfo) Reset() { @@ -510,10 +508,10 @@ type PublicUserInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` } func (x *PublicUserInfo) Reset() { @@ -581,12 +579,12 @@ type UserInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` - CreateTime int64 `protobuf:"varint,5,opt,name=createTime,proto3" json:"createTime"` - AppMangerLevel int32 `protobuf:"varint,6,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` + Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` + CreateTime int64 `protobuf:"varint,5,opt,name=createTime,proto3" json:"createTime"` + AppMangerLevel int32 `protobuf:"varint,6,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` GlobalRecvMsgOpt int32 `protobuf:"varint,7,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` } @@ -676,13 +674,13 @@ type FriendInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark"` - CreateTime int64 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime"` - FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser"` - AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark"` + CreateTime int64 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime"` + FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser"` + AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource"` OperatorUserID string `protobuf:"bytes,6,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex"` + Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex"` } func (x *FriendInfo) Reset() { @@ -771,12 +769,12 @@ type BlackInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime"` - BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo"` - AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + CreateTime int64 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime"` + BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo"` + AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource"` OperatorUserID string `protobuf:"bytes,5,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` + Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` } func (x *BlackInfo) Reset() { @@ -858,16 +856,16 @@ type GroupRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` - GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg"` - HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg"` - ReqTime int64 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime"` - HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID"` - HandleTime int64 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - JoinSource int32 `protobuf:"varint,10,opt,name=joinSource,proto3" json:"joinSource"` + UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` + GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` + HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` + ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg"` + HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg"` + ReqTime int64 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime"` + HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID"` + HandleTime int64 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime"` + Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` + JoinSource int32 `protobuf:"varint,10,opt,name=joinSource,proto3" json:"joinSource"` InviterUserID string `protobuf:"bytes,11,opt,name=inviterUserID,proto3" json:"inviterUserID"` } @@ -985,19 +983,19 @@ type FriendRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname"` - FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL"` - ToUserID string `protobuf:"bytes,4,opt,name=toUserID,proto3" json:"toUserID"` - ToNickname string `protobuf:"bytes,5,opt,name=toNickname,proto3" json:"toNickname"` - ToFaceURL string `protobuf:"bytes,6,opt,name=toFaceURL,proto3" json:"toFaceURL"` - HandleResult int32 `protobuf:"varint,7,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,8,opt,name=reqMsg,proto3" json:"reqMsg"` - CreateTime int64 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime"` + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` + FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname"` + FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL"` + ToUserID string `protobuf:"bytes,4,opt,name=toUserID,proto3" json:"toUserID"` + ToNickname string `protobuf:"bytes,5,opt,name=toNickname,proto3" json:"toNickname"` + ToFaceURL string `protobuf:"bytes,6,opt,name=toFaceURL,proto3" json:"toFaceURL"` + HandleResult int32 `protobuf:"varint,7,opt,name=handleResult,proto3" json:"handleResult"` + ReqMsg string `protobuf:"bytes,8,opt,name=reqMsg,proto3" json:"reqMsg"` + CreateTime int64 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime"` HandlerUserID string `protobuf:"bytes,10,opt,name=handlerUserID,proto3" json:"handlerUserID"` - HandleMsg string `protobuf:"bytes,11,opt,name=handleMsg,proto3" json:"handleMsg"` - HandleTime int64 `protobuf:"varint,12,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,13,opt,name=ex,proto3" json:"ex"` + HandleMsg string `protobuf:"bytes,11,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleTime int64 `protobuf:"varint,12,opt,name=handleTime,proto3" json:"handleTime"` + Ex string `protobuf:"bytes,13,opt,name=ex,proto3" json:"ex"` } func (x *FriendRequest) Reset() { @@ -1128,8 +1126,8 @@ type PullMessageBySeqsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - SeqRanges []*SeqRange `protobuf:"bytes,2,rep,name=seqRanges,proto3" json:"seqRanges"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + SeqRanges []*SeqRange `protobuf:"bytes,2,rep,name=seqRanges,proto3" json:"seqRanges"` Order PullOrder `protobuf:"varint,3,opt,name=order,proto3,enum=OpenIMServer.sdkws.PullOrder" json:"order"` } @@ -1192,9 +1190,9 @@ type SeqRange struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Begin int64 `protobuf:"varint,2,opt,name=begin,proto3" json:"begin"` - End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end"` - Num int64 `protobuf:"varint,4,opt,name=num,proto3" json:"num"` + Begin int64 `protobuf:"varint,2,opt,name=begin,proto3" json:"begin"` + End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end"` + Num int64 `protobuf:"varint,4,opt,name=num,proto3" json:"num"` } func (x *SeqRange) Reset() { @@ -1262,7 +1260,7 @@ type PullMsgs struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs []*MsgData `protobuf:"bytes,1,rep,name=Msgs,proto3" json:"Msgs"` + Msgs []*MsgData `protobuf:"bytes,1,rep,name=Msgs,proto3" json:"Msgs"` IsEnd bool `protobuf:"varint,2,opt,name=isEnd,proto3" json:"isEnd"` } @@ -1317,7 +1315,7 @@ type PullMessageBySeqsResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -1476,7 +1474,7 @@ type UserSendMsgResp struct { ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` } func (x *UserSendMsgResp) Reset() { @@ -1537,28 +1535,28 @@ type MsgData struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` - ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID"` - ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID"` + SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` + GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` + ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID"` + ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID"` SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType"` - Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content"` - Seq int64 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq"` - SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime"` - Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status"` - IsRead bool `protobuf:"varint,18,opt,name=isRead,proto3" json:"isRead"` - Options map[string]bool `protobuf:"bytes,19,rep,name=options,proto3" json:"options" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,20,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo"` - AtUserIDList []string `protobuf:"bytes,21,rep,name=atUserIDList,proto3" json:"atUserIDList"` - AttachedInfo string `protobuf:"bytes,22,opt,name=attachedInfo,proto3" json:"attachedInfo"` - Ex string `protobuf:"bytes,23,opt,name=ex,proto3" json:"ex"` + SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname"` + SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` + SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType"` + MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom"` + ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType"` + Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content"` + Seq int64 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq"` + SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime"` + CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime"` + Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status"` + IsRead bool `protobuf:"varint,18,opt,name=isRead,proto3" json:"isRead"` + Options map[string]bool `protobuf:"bytes,19,rep,name=options,proto3" json:"options" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,20,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo"` + AtUserIDList []string `protobuf:"bytes,21,rep,name=atUserIDList,proto3" json:"atUserIDList"` + AttachedInfo string `protobuf:"bytes,22,opt,name=attachedInfo,proto3" json:"attachedInfo"` + Ex string `protobuf:"bytes,23,opt,name=ex,proto3" json:"ex"` } func (x *MsgData) Reset() { @@ -1752,7 +1750,7 @@ type PushMessages struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } @@ -1807,12 +1805,12 @@ type OfflinePushInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc"` - Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex"` - IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound"` + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc"` + Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex"` + IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound"` IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount,proto3" json:"iOSBadgeCount"` - SignalInfo string `protobuf:"bytes,6,opt,name=signalInfo,proto3" json:"signalInfo"` + SignalInfo string `protobuf:"bytes,6,opt,name=signalInfo,proto3" json:"signalInfo"` } func (x *OfflinePushInfo) Reset() { @@ -1894,9 +1892,9 @@ type TipsComm struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` + Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` DefaultTips string `protobuf:"bytes,2,opt,name=defaultTips,proto3" json:"defaultTips"` - JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail"` + JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail"` } func (x *TipsComm) Reset() { @@ -1958,9 +1956,9 @@ type GroupCreatedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` GroupOwnerUser *GroupMemberFullInfo `protobuf:"bytes,5,opt,name=groupOwnerUser,proto3" json:"groupOwnerUser"` } @@ -2038,9 +2036,9 @@ type GroupInfoSetTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this + OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this MuteTime int64 `protobuf:"varint,2,opt,name=muteTime,proto3" json:"muteTime"` - Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetTips) Reset() { @@ -2102,7 +2100,7 @@ type GroupInfoSetNameTips struct { unknownFields protoimpl.UnknownFields OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetNameTips) Reset() { @@ -2157,7 +2155,7 @@ type GroupInfoSetAnnouncementTips struct { unknownFields protoimpl.UnknownFields OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` } func (x *GroupInfoSetAnnouncementTips) Reset() { @@ -2212,9 +2210,9 @@ type JoinGroupApplicationTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` Applicant *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant,proto3" json:"applicant"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` + ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` } func (x *JoinGroupApplicationTips) Reset() { @@ -2278,8 +2276,8 @@ type MemberQuitTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2342,9 +2340,9 @@ type GroupApplicationAcceptedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) } @@ -2414,9 +2412,9 @@ type GroupApplicationRejectedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) } @@ -2486,9 +2484,9 @@ type GroupOwnerTransferredTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2558,8 +2556,8 @@ type MemberKickedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` KickedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList,proto3" json:"kickedUserList"` OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2630,10 +2628,10 @@ type MemberInvitedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` InvitedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList,proto3" json:"invitedUserList"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` } func (x *MemberInvitedTips) Reset() { @@ -2702,8 +2700,8 @@ type MemberEnterTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2765,8 +2763,8 @@ type GroupDismissedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -2828,11 +2826,11 @@ type GroupMemberMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` - MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` + MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` } func (x *GroupMemberMutedTips) Reset() { @@ -2907,10 +2905,10 @@ type GroupMemberCancelMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` + MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` } func (x *GroupMemberCancelMutedTips) Reset() { @@ -2978,8 +2976,8 @@ type GroupMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -3041,8 +3039,8 @@ type GroupCancelMutedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` } @@ -3104,10 +3102,10 @@ type GroupMemberInfoSetTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - ChangedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser,proto3" json:"changedUser"` + ChangedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser,proto3" json:"changedUser"` } func (x *GroupMemberInfoSetTips) Reset() { @@ -3175,8 +3173,8 @@ type FriendApplication struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime"` - AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource"` + AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime"` + AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource"` AddWording string `protobuf:"bytes,3,opt,name=addWording,proto3" json:"addWording"` } @@ -3239,7 +3237,7 @@ type FromToUserID struct { unknownFields protoimpl.UnknownFields FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` + ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` } func (x *FromToUserID) Reset() { @@ -3343,7 +3341,7 @@ type FriendApplicationApprovedTips struct { unknownFields protoimpl.UnknownFields FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:同意者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *FriendApplicationApprovedTips) Reset() { @@ -3399,7 +3397,7 @@ type FriendApplicationRejectedTips struct { unknownFields protoimpl.UnknownFields FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:拒绝者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` } func (x *FriendApplicationRejectedTips) Reset() { @@ -3454,9 +3452,9 @@ type FriendAddedTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` + Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` OperationTime int64 `protobuf:"varint,2,opt,name=operationTime,proto3" json:"operationTime"` - OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser"` //who do this + OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser"` //who do this } func (x *FriendAddedTips) Reset() { @@ -3755,7 +3753,7 @@ type ConversationUpdateTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationIDList []string `protobuf:"bytes,2,rep,name=conversationIDList,proto3" json:"conversationIDList"` } @@ -3810,8 +3808,8 @@ type ConversationSetPrivateTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` - SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` + RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` + SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` IsPrivate bool `protobuf:"varint,3,opt,name=isPrivate,proto3" json:"isPrivate"` } @@ -3873,9 +3871,9 @@ type ConversationHasReadTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` UnreadCountTime int64 `protobuf:"varint,4,opt,name=unreadCountTime,proto3" json:"unreadCountTime"` } @@ -4039,8 +4037,8 @@ type DeleteMessageTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` } @@ -4102,11 +4100,11 @@ type RevokeMsgTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RevokerUserID string `protobuf:"bytes,1,opt,name=revokerUserID,proto3" json:"revokerUserID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokeTime int64 `protobuf:"varint,3,opt,name=revokeTime,proto3" json:"revokeTime"` - SesstionType int32 `protobuf:"varint,5,opt,name=sesstionType,proto3" json:"sesstionType"` - Seq int64 `protobuf:"varint,6,opt,name=seq,proto3" json:"seq"` + RevokerUserID string `protobuf:"bytes,1,opt,name=revokerUserID,proto3" json:"revokerUserID"` + ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` + RevokeTime int64 `protobuf:"varint,3,opt,name=revokeTime,proto3" json:"revokeTime"` + SesstionType int32 `protobuf:"varint,5,opt,name=sesstionType,proto3" json:"sesstionType"` + Seq int64 `protobuf:"varint,6,opt,name=seq,proto3" json:"seq"` ConversationID string `protobuf:"bytes,7,opt,name=conversationID,proto3" json:"conversationID"` } @@ -4189,17 +4187,17 @@ type MessageRevokedContent struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RevokerID string `protobuf:"bytes,1,opt,name=revokerID,proto3" json:"revokerID"` - RevokerRole int32 `protobuf:"varint,2,opt,name=revokerRole,proto3" json:"revokerRole"` - ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokerNickname string `protobuf:"bytes,4,opt,name=revokerNickname,proto3" json:"revokerNickname"` - RevokeTime int64 `protobuf:"varint,5,opt,name=revokeTime,proto3" json:"revokeTime"` - SourceMessageSendTime int64 `protobuf:"varint,6,opt,name=sourceMessageSendTime,proto3" json:"sourceMessageSendTime"` - SourceMessageSendID string `protobuf:"bytes,7,opt,name=sourceMessageSendID,proto3" json:"sourceMessageSendID"` + RevokerID string `protobuf:"bytes,1,opt,name=revokerID,proto3" json:"revokerID"` + RevokerRole int32 `protobuf:"varint,2,opt,name=revokerRole,proto3" json:"revokerRole"` + ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID,proto3" json:"clientMsgID"` + RevokerNickname string `protobuf:"bytes,4,opt,name=revokerNickname,proto3" json:"revokerNickname"` + RevokeTime int64 `protobuf:"varint,5,opt,name=revokeTime,proto3" json:"revokeTime"` + SourceMessageSendTime int64 `protobuf:"varint,6,opt,name=sourceMessageSendTime,proto3" json:"sourceMessageSendTime"` + SourceMessageSendID string `protobuf:"bytes,7,opt,name=sourceMessageSendID,proto3" json:"sourceMessageSendID"` SourceMessageSenderNickname string `protobuf:"bytes,8,opt,name=sourceMessageSenderNickname,proto3" json:"sourceMessageSenderNickname"` - SessionType int32 `protobuf:"varint,10,opt,name=sessionType,proto3" json:"sessionType"` - Seq int64 `protobuf:"varint,11,opt,name=seq,proto3" json:"seq"` - Ex string `protobuf:"bytes,12,opt,name=ex,proto3" json:"ex"` + SessionType int32 `protobuf:"varint,10,opt,name=sessionType,proto3" json:"sessionType"` + Seq int64 `protobuf:"varint,11,opt,name=seq,proto3" json:"seq"` + Ex string `protobuf:"bytes,12,opt,name=ex,proto3" json:"ex"` } func (x *MessageRevokedContent) Reset() { @@ -4316,7 +4314,7 @@ type ClearConversationTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` } @@ -4371,9 +4369,9 @@ type DeleteMsgsTips struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` + Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` } func (x *DeleteMsgsTips) Reset() { @@ -4435,9 +4433,9 @@ type MarkAsReadTips struct { unknownFields protoimpl.UnknownFields MarkAsReadUserID string `protobuf:"bytes,1,opt,name=markAsReadUserID,proto3" json:"markAsReadUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` - HasReadSeq int64 `protobuf:"varint,4,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` + HasReadSeq int64 `protobuf:"varint,4,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` } func (x *MarkAsReadTips) Reset() { @@ -4505,7 +4503,7 @@ type SetAppBackgroundStatusReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` IsBackground bool `protobuf:"varint,2,opt,name=isBackground,proto3" json:"isBackground"` } diff --git a/pkg/proto/statistics/statistics.pb.go b/pkg/proto/statistics/statistics.pb.go index 5e03e9797..5660758f9 100644 --- a/pkg/proto/statistics/statistics.pb.go +++ b/pkg/proto/statistics/statistics.pb.go @@ -21,10 +21,9 @@ package statistics import ( - reflect "reflect" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" ) const ( diff --git a/pkg/proto/third/third.pb.go b/pkg/proto/third/third.pb.go index a098b296f..155b5f7cc 100644 --- a/pkg/proto/third/third.pb.go +++ b/pkg/proto/third/third.pb.go @@ -22,14 +22,13 @@ package third import ( context "context" - reflect "reflect" - sync "sync" - 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 ( @@ -44,7 +43,7 @@ type KeyValues struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key"` + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key"` Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values"` } @@ -100,9 +99,9 @@ type SignPart struct { unknownFields protoimpl.UnknownFields PartNumber int32 `protobuf:"varint,1,opt,name=partNumber,proto3" json:"partNumber"` - Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,3,rep,name=query,proto3" json:"query"` - Header []*KeyValues `protobuf:"bytes,4,rep,name=header,proto3" json:"header"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,3,rep,name=query,proto3" json:"query"` + Header []*KeyValues `protobuf:"bytes,4,rep,name=header,proto3" json:"header"` } func (x *SignPart) Reset() { @@ -170,10 +169,10 @@ type AuthSignParts struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` + Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` } func (x *AuthSignParts) Reset() { @@ -281,7 +280,7 @@ type PartLimitResp struct { MinPartSize int64 `protobuf:"varint,1,opt,name=minPartSize,proto3" json:"minPartSize"` MaxPartSize int64 `protobuf:"varint,2,opt,name=maxPartSize,proto3" json:"maxPartSize"` - MaxNumSize int32 `protobuf:"varint,3,opt,name=maxNumSize,proto3" json:"maxNumSize"` + MaxNumSize int32 `protobuf:"varint,3,opt,name=maxNumSize,proto3" json:"maxNumSize"` } func (x *PartLimitResp) Reset() { @@ -436,12 +435,12 @@ type InitiateMultipartUploadReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash"` - Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` - PartSize int64 `protobuf:"varint,3,opt,name=partSize,proto3" json:"partSize"` - MaxParts int32 `protobuf:"varint,4,opt,name=maxParts,proto3" json:"maxParts"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` - Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name"` + Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash"` + Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` + PartSize int64 `protobuf:"varint,3,opt,name=partSize,proto3" json:"partSize"` + MaxParts int32 `protobuf:"varint,4,opt,name=maxParts,proto3" json:"maxParts"` + Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` + Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name"` ContentType string `protobuf:"bytes,7,opt,name=contentType,proto3" json:"contentType"` } @@ -531,9 +530,9 @@ type UploadInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - PartSize int64 `protobuf:"varint,2,opt,name=partSize,proto3" json:"partSize"` - Sign *AuthSignParts `protobuf:"bytes,3,opt,name=sign,proto3" json:"sign"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + PartSize int64 `protobuf:"varint,2,opt,name=partSize,proto3" json:"partSize"` + Sign *AuthSignParts `protobuf:"bytes,3,opt,name=sign,proto3" json:"sign"` ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` } @@ -602,7 +601,7 @@ type InitiateMultipartUploadResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` Upload *UploadInfo `protobuf:"bytes,2,opt,name=upload,proto3" json:"upload"` } @@ -657,7 +656,7 @@ type AuthSignReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` PartNumbers []int32 `protobuf:"varint,2,rep,packed,name=partNumbers,proto3" json:"partNumbers"` } @@ -712,10 +711,10 @@ type AuthSignResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` + Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` } func (x *AuthSignResp) Reset() { @@ -783,11 +782,11 @@ type CompleteMultipartUploadReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - Parts []string `protobuf:"bytes,2,rep,name=parts,proto3" json:"parts"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` + UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` + Parts []string `protobuf:"bytes,2,rep,name=parts,proto3" json:"parts"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` + Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` } func (x *CompleteMultipartUploadReq) Reset() { @@ -956,7 +955,7 @@ type AccessURLResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` ExpireTime int64 `protobuf:"varint,2,opt,name=expireTime,proto3" json:"expireTime"` } @@ -1012,8 +1011,8 @@ type FcmUpdateTokenReq struct { unknownFields protoimpl.UnknownFields PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - FcmToken string `protobuf:"bytes,2,opt,name=fcmToken,proto3" json:"fcmToken"` - Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account"` + FcmToken string `protobuf:"bytes,2,opt,name=fcmToken,proto3" json:"fcmToken"` + Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account"` ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` } @@ -1120,7 +1119,7 @@ type SetAppBadgeReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` AppUnreadCount int32 `protobuf:"varint,2,opt,name=appUnreadCount,proto3" json:"appUnreadCount"` } diff --git a/pkg/proto/user/user.go b/pkg/proto/user/user.go index 09ae39c7e..06f07cb6e 100644 --- a/pkg/proto/user/user.go +++ b/pkg/proto/user/user.go @@ -137,9 +137,6 @@ func (x *GetPaginationUsersReq) Check() error { } func (x *UserRegisterReq) Check() error { - if x.Secret == "" { - return errs.ErrArgs.Wrap("Secret is empty") - } if x.Users == nil { return errs.ErrArgs.Wrap("Users is empty") } diff --git a/pkg/proto/user/user.pb.go b/pkg/proto/user/user.pb.go index 12a1bd2c8..5046505db 100644 --- a/pkg/proto/user/user.pb.go +++ b/pkg/proto/user/user.pb.go @@ -22,17 +22,15 @@ package user import ( context "context" - reflect "reflect" - sync "sync" - + conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" + sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" 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" - - conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + reflect "reflect" + sync "sync" ) const ( @@ -94,7 +92,7 @@ type GetAllUserIDResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` UserIDs []string `protobuf:"bytes,2,rep,name=userIDs,proto3" json:"userIDs"` } @@ -422,7 +420,7 @@ type SetGlobalRecvMessageOptReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` GlobalRecvMsgOpt int32 `protobuf:"varint,3,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` } @@ -515,9 +513,9 @@ type SetConversationReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conversation *conversation.Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` + Conversation *conversation.Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` NotificationType int32 `protobuf:"varint,2,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *SetConversationReq) Reset() { @@ -616,11 +614,11 @@ type SetRecvMsgOptReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` + RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` NotificationType int32 `protobuf:"varint,4,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,5,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,5,opt,name=operationID,proto3" json:"operationID"` } func (x *SetRecvMsgOptReq) Reset() { @@ -734,8 +732,8 @@ type GetConversationReq struct { unknownFields protoimpl.UnknownFields ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *GetConversationReq) Reset() { @@ -843,9 +841,9 @@ type GetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` + OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` } func (x *GetConversationsReq) Reset() { @@ -1055,10 +1053,10 @@ type BatchSetConversationsReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Conversations []*conversation.Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` - OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID"` + Conversations []*conversation.Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` + OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID"` NotificationType int32 `protobuf:"varint,3,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID"` + OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID"` } func (x *BatchSetConversationsReq) Reset() { @@ -1127,7 +1125,7 @@ type BatchSetConversationsResp struct { unknownFields protoimpl.UnknownFields Success []string `protobuf:"bytes,2,rep,name=Success,proto3" json:"Success"` - Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed"` + Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed"` } func (x *BatchSetConversationsResp) Reset() { @@ -1229,7 +1227,7 @@ type GetPaginationUsersResp struct { unknownFields protoimpl.UnknownFields Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` + Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` } func (x *GetPaginationUsersResp) Reset() { @@ -1284,7 +1282,7 @@ type UserRegisterReq struct { unknownFields protoimpl.UnknownFields Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` + Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` } func (x *UserRegisterReq) Reset() { @@ -1471,7 +1469,7 @@ type UserRegisterCountReq struct { unknownFields protoimpl.UnknownFields Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` + End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` } func (x *UserRegisterCountReq) Reset() { @@ -1525,9 +1523,9 @@ type UserRegisterCountResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` + Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } func (x *UserRegisterCountResp) Reset() { @@ -1588,7 +1586,7 @@ type AccountCheckRespSingleUserStatus struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` AccountStatus string `protobuf:"bytes,2,opt,name=accountStatus,proto3" json:"accountStatus"` } diff --git a/pkg/proto/wrapperspb/wrapperspb.pb.go b/pkg/proto/wrapperspb/wrapperspb.pb.go index c08a87822..9678bb2a0 100644 --- a/pkg/proto/wrapperspb/wrapperspb.pb.go +++ b/pkg/proto/wrapperspb/wrapperspb.pb.go @@ -21,11 +21,10 @@ package wrapperspb import ( - reflect "reflect" - sync "sync" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" ) const ( diff --git a/scripts/build.cmd b/scripts/build.cmd new file mode 100644 index 000000000..f0d5475b4 --- /dev/null +++ b/scripts/build.cmd @@ -0,0 +1,11 @@ +go build -o api.exe ../cmd/openim-api/main.go +go build -o auth.exe ../cmd/openim-rpc/openim-rpc-auth/main.go +go build -o conversation.exe ../cmd/openim-rpc/openim-rpc-conversation/main.go +go build -o friend.exe ../cmd/openim-rpc/openim-rpc-friend/main.go +go build -o group.exe ../cmd/openim-rpc/openim-rpc-group/main.go +go build -o msg.exe ../cmd/openim-rpc/openim-rpc-msg/main.go +go build -o third.exe ../cmd/openim-rpc/openim-rpc-third/main.go +go build -o user.exe ../cmd/openim-rpc/openim-rpc-user/main.go +go build -o push.exe ../cmd/openim-push/main.go +go build -o msgtransfer.exe ../cmd/openim-msgtransfer/main.go +go build -o msggateway.exe ../cmd/openim-msggateway/main.go From 81785648a77b39a20f4f31f05bb482066698918e Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <86140903+cubxxw@users.noreply.github.com> Date: Fri, 21 Jul 2023 21:20:23 +0800 Subject: [PATCH 31/46] fix: delete batch build all file (#561) * fix: delete batch build all file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add cicd sacript feature Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: docker scripts Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add openim fix scripts Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: fix scripts show Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cicd: add ci workflow Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: about the distribution of the strategy Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: github release fix Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: build bing file: Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add openim server Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add more cicd auto Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add before module Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add copyright dispose Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add tools user Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: More support Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: signing commit Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add release Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add release Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add cicd actions Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test login Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add release copyright Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add release copyright Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add release copyright Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: go release quest Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * cide: add ca Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: cicd action about lock issue Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: cicd action about lock issue Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add comment remark Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: cicd about gosec Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: cicd about gosec Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .env | 4 +- .github/workflows/auto-release.yml | 26 + .github/workflows/bot-auto-cherry-pick.yml | 53 ++ .github/workflows/bot-cherry-pick.yml | 19 + .github/workflows/build-docker-image.yml | 17 +- .github/workflows/cla.yml | 48 ++ .github/workflows/deploy.yml | 45 + .github/workflows/depsreview.yaml | 18 + .github/workflows/e2e-test.yml | 2 + .github/workflows/golangci-link.yml | 2 +- .github/workflows/gosec.yml | 57 +- .github/workflows/image.yml | 14 + .github/workflows/lock-issue.yml | 51 ++ .github/workflows/opencommit.yml | 2 +- .github/workflows/openim-ci.yml | 134 --- .github/workflows/openimci.yml | 168 ++++ .github/workflows/project-progress.yml | 14 + .github/workflows/release.yml | 33 +- .github/workflows/scripts-test.yml | 1 - .gitignore | 4 +- .goreleaser.yaml | 448 ++++++++++ Makefile | 5 + README.md | 1 + assets/logo-gif/openim-logo.gif | Bin 1729731 -> 2682640 bytes config/config.yaml | 20 +- golangci.yaml | 933 --------------------- init_docker.sh | 9 + install_im_compose.sh | 21 - install_im_server.sh | 43 - pkg/common/db/controller/user.go | 4 +- pkg/common/db/relation/user_model.go | 2 +- scripts/batch_build_all_service.sh | 80 -- scripts/docker_check_service.sh | 91 +- scripts/env_check.sh | 14 +- scripts/init_pwd.sh | 27 +- scripts/install_im_compose.sh | 122 +++ scripts/install_im_server.sh | 82 ++ scripts/make-rules/golang.mk | 6 + scripts/make-rules/image.mk | 79 +- scripts/make-rules/tools.mk | 10 + scripts/push_start.sh | 2 + test/common.sh | 14 + 42 files changed, 1405 insertions(+), 1320 deletions(-) create mode 100644 .github/workflows/auto-release.yml create mode 100644 .github/workflows/bot-auto-cherry-pick.yml create mode 100644 .github/workflows/bot-cherry-pick.yml create mode 100644 .github/workflows/cla.yml create mode 100644 .github/workflows/deploy.yml create mode 100644 .github/workflows/depsreview.yaml create mode 100644 .github/workflows/lock-issue.yml delete mode 100644 .github/workflows/openim-ci.yml create mode 100644 .github/workflows/openimci.yml create mode 100644 .goreleaser.yaml delete mode 100644 golangci.yaml delete mode 100755 install_im_compose.sh delete mode 100755 install_im_server.sh delete mode 100755 scripts/batch_build_all_service.sh create mode 100755 scripts/install_im_compose.sh create mode 100755 scripts/install_im_server.sh diff --git a/.env b/.env index 048662d97..e7971a07a 100644 --- a/.env +++ b/.env @@ -1,5 +1,5 @@ USER=root PASSWORD=openIM123 -MINIO_ENDPOINT=http://127.0.0.1:10005 -API_URL=http://127.0.0.1:10002/object/ +MINIO_ENDPOINT=http://116.30.3.80:10005 +API_URL=http://116.30.3.80:10002/object/ DATA_DIR=./ diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml new file mode 100644 index 000000000..15a77da9f --- /dev/null +++ b/.github/workflows/auto-release.yml @@ -0,0 +1,26 @@ +name: Automatic Rebase +on: + issue_comment: + types: [created] +jobs: + rebase: + name: Rebase + runs-on: ubuntu-latest + if: >- + github.event.issue.pull_request != '' && + ( + contains(github.event.comment.body, '/rebase') || + contains(github.event.comment.body, '/autosquash') + ) + steps: + - name: Checkout the latest code + uses: actions/checkout@v3 + with: + token: ${{ secrets.BOT_GITHUB_TOKEN }} + fetch-depth: 0 # otherwise, you will fail to push refs to dest repo + - name: Automatic Rebase + uses: cirrus-actions/rebase@1.8 + with: + autosquash: ${{ contains(github.event.comment.body, '/autosquash') || contains(github.event.comment.body, '/rebase-autosquash') }} + env: + GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/bot-auto-cherry-pick.yml b/.github/workflows/bot-auto-cherry-pick.yml new file mode 100644 index 000000000..4cb2cf0ec --- /dev/null +++ b/.github/workflows/bot-auto-cherry-pick.yml @@ -0,0 +1,53 @@ +name: 'Github Rebot for Cherry Pick when PR is merged' +on: + pull_request_target: + types: + - closed + +jobs: + comment: + runs-on: ubuntu-latest + steps: + - name: Comment cherry-pick command + uses: actions/github-script@v5 + with: + script: | + const pr = context.payload.pull_request; + if (!pr.merged) { + console.log("PR is not merged. Skipping..."); + return; + } + if (!pr.milestone || !pr.milestone.title) { + console.log("Milestone is not set. Skipping..."); + return; + } + const milestone = pr.milestone.title; + const ref = `heads/release-${milestone}`; + let branchExists; + try { + await github.rest.git.getRef({ + owner: context.repo.owner, + repo: context.repo.repo, + ref: ref + }); + branchExists = true; + } catch (error) { + if (error.status === 404) { + console.log(`Branch ${ref} does not exist. Skipping...`); + branchExists = false; + } else { + throw error; // Rethrow if it's another error + } + } + if (!branchExists) { + return; + } + const cherryPickCmd = `/cherry-pick release-${milestone}`; + console.log(`Adding comment: ${cherryPickCmd}`); + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: pr.number, + body: cherryPickCmd + }); + github-token: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/bot-cherry-pick.yml b/.github/workflows/bot-cherry-pick.yml new file mode 100644 index 000000000..9b5ff49bb --- /dev/null +++ b/.github/workflows/bot-cherry-pick.yml @@ -0,0 +1,19 @@ +name: Github Rebot for Cherry Pick On Comment +on: + issue_comment: + types: [created] +jobs: + cherry-pick: + name: Cherry Pick + if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/cherry-pick') && github.event.comment.user.login=='kubbot' + runs-on: ubuntu-latest + steps: + - name: Checkout the latest code + uses: actions/checkout@v2 + with: + token: ${{ secrets.BOT_GITHUB_TOKEN }} + fetch-depth: 0 # otherwise, you will fail to push refs to dest repo + - name: Automatic Cherry Pick + uses: vendoo/gha-cherry-pick@v1 + env: + GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 553ae5d10..31e0a5b65 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -1,3 +1,17 @@ +# Copyright © 2023 OpenIM open source community. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + name: OpenIM Build Docker Images on: push: @@ -9,8 +23,7 @@ jobs: strategy: matrix: bin: - - ssserver - - sslocal + - openim-server steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml new file mode 100644 index 000000000..b8129e76f --- /dev/null +++ b/.github/workflows/cla.yml @@ -0,0 +1,48 @@ +name: "OpenIM CLA Assistant" +on: + issue_comment: + types: [created] + pull_request_target: + types: [opened,closed,synchronize] + +# explicitly configure permissions, in case your GITHUB_TOKEN workflow permissions are set to read-only in repository settings +permissions: + actions: write + contents: write + pull-requests: write + statuses: write + +env: + # Define Open-IM-Server variables here + REMOTE_ORGANIZATION: open-im-server + REMOTE_REPOSITORY: cla + + OPEN_IM_SERVER_CLA_DOCUMENT: https://github.com/openim-sigs/cla/blob/main/README.md + OPEN_IM_SERVER_SIGNATURES_PATH: signatures/openkf/cla.json + OPEN_IM_SERVER_ALLOWLIST: kubbot,bot* + OPEN_IM_SERVER_REMOTE_ORGANIZATION: openim-sigs + +jobs: + CLAAssistant: + runs-on: ubuntu-latest + steps: + - name: "CLA Assistant" + if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target' + uses: contributor-assistant/github-action@v2.3.0 + env: + GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} + PERSONAL_ACCESS_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} + with: + path-to-signatures: ${{ env.OPEN_IM_SERVER_SIGNATURES_PATH }} + path-to-document: ${{ env.OPEN_IM_SERVER_CLA_DOCUMENT }} + branch: 'main' + allowlist: ${{ env.OPEN_IM_SERVER_ALLOWLIST }} + + remote-organization-name: ${{ env.OPEN_IM_SERVER_REMOTE_ORGANIZATION }} + remote-repository-name: ${{ env.REMOTE_REPOSITORY }} + create-file-commit-message: '📚 Docs: Creating file for storing ${{ env.REMOTE_ORGANIZATION }} CLA Signatures' + custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md)' + custom-pr-sign-comment: 'The signature to be committed in order to sign the CLA' + custom-allsigned-prcomment: '🤖 All Contributors have signed the ${{ env.REMOTE_ORGANIZATION }} [CLA](https://github.com/openim-sigs/cla/blob/main/README.md).' + # lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true) + # use-dco-flag: true - If you are using DCO instead of CLA diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 000000000..3fbad1e5f --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,45 @@ +name: deploy for dev + +on: + push: + branches: + - 'devops' # Only for the dev branch + paths: + - '.github/workflows/*' + # - '__test__/**' # dev No immediate testing is required + - 'src/**' + - 'Dockerfile' + - 'docker-compose.yml' + - 'bin/*' + +jobs: + deploy-dev: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: set ssh key # Temporarily set up ssh key + run: | + mkdir -p ~/.ssh/ + # secrets.WFP_ID_RSA set in GitHub + echo "${{secrets.WFP_ID_RSA}}" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + ssh-keyscan "182.92.xxx.xxx" >> ~/.ssh/known_hosts + - name: deploy # Deployment + run: | + ssh work@182.92.xxx.xxx " + # 【Attention】Log in with the 'work' account, manually create /home/work/imooc-lego directory + # Then git clone https://username:password@github.com/imooc-lego/biz-editor-server.git -b dev (private repository, use GitHub username and password) + # Remember to delete origin to avoid exposing GitHub password + + cd /home/work/imooc-lego/biz-editor-server; + git remote add origin https://openimbot:${{secrets.WFP_PASSWORD}}@github.com/OpenIMSDK/open-im-server.git; + git checkout dev; + git pull origin dev; # Download the latest code again + git remote remove origin; # Remove origin to avoid exposing GitHub password + # Start docker + docker-compose build editor-server; # Same as the service name in docker-compose.yml + docker-compose up -d; + " + - name: delete ssh key # Delete ssh key + run: rm -rf ~/.ssh/id_rsa diff --git a/.github/workflows/depsreview.yaml b/.github/workflows/depsreview.yaml new file mode 100644 index 000000000..c95afb845 --- /dev/null +++ b/.github/workflows/depsreview.yaml @@ -0,0 +1,18 @@ +# Copyright © 2023 KubeCub open source community. All rights reserved. +# Licensed under the MIT License (the "License"); +# you may not use this file except in compliance with the License. + +name: Dependency Review +on: [pull_request] + +permissions: + contents: read + +jobs: + dependency-review: + runs-on: ubuntu-latest + steps: + - name: 'Checkout Repository' + uses: actions/checkout@v3 + - name: 'Dependency Review' + uses: actions/dependency-review-action@v3 \ No newline at end of file diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index e69de29bb..6b9f79d51 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -0,0 +1,2 @@ + +# name: OpenIM e2e Test \ No newline at end of file diff --git a/.github/workflows/golangci-link.yml b/.github/workflows/golangci-link.yml index f3664c1bc..c740afff7 100644 --- a/.github/workflows/golangci-link.yml +++ b/.github/workflows/golangci-link.yml @@ -13,7 +13,7 @@ # limitations under the License. -name: OpenKF golangci-lint +name: OpenIM golangci-lint on: push: branches: [main] diff --git a/.github/workflows/gosec.yml b/.github/workflows/gosec.yml index 60f42ae1e..43fba5c0c 100644 --- a/.github/workflows/gosec.yml +++ b/.github/workflows/gosec.yml @@ -1,30 +1,31 @@ -# name: Run gosec +name: OpenIM Run Gosec -# # gosec is a source code security audit tool for the Go language. It performs a static -# # analysis of the Go code, looking for potential security problems. The main functions of gosec are: -# # 1. Find common security vulnerabilities, such as SQL injection, command injection, and cross-site scripting (XSS). -# # 2. Audit codes according to common security standards and find non-standard codes. -# # 3. Assist the Go language engineer to write safe and reliable code. +# gosec is a source code security audit tool for the Go language. It performs a static +# analysis of the Go code, looking for potential security problems. The main functions of gosec are: +# 1. Find common security vulnerabilities, such as SQL injection, command injection, and cross-site scripting (XSS). +# 2. Audit codes according to common security standards and find non-standard codes. +# 3. Assist the Go language engineer to write safe and reliable code. +# https://github.com/securego/gosec/ +on: + push: + branches: "*" + pull_request: + branches: "*" + paths-ignore: + - '*.md' + - '*.yml' + - '.github' -# on: -# push: -# branches: "*" -# pull_request: -# branches: "*" -# paths-ignore: -# - '*.md' -# - '*.yml' -# - '.github' - -# jobs: -# golang-security-action: -# runs-on: ubuntu-latest -# env: -# GO111MODULE: on -# steps: -# - name: Check out code -# uses: actions/checkout@v3 -# - name: Run Gosec Security Scanner -# uses: securego/gosec@master -# with: -# args: ./... \ No newline at end of file +jobs: + golang-security-action: + runs-on: ubuntu-latest + env: + GO111MODULE: on + steps: + - name: Check out code + uses: actions/checkout@v3 + - name: Run Gosec Security Scanner + uses: securego/gosec@master + with: + args: ./... + continue-on-error: true \ No newline at end of file diff --git a/.github/workflows/image.yml b/.github/workflows/image.yml index f6d02cf63..2ecfad6ea 100644 --- a/.github/workflows/image.yml +++ b/.github/workflows/image.yml @@ -1,3 +1,17 @@ +# Copyright © 2023 OpenIM open source community. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + name: Build Image on: diff --git a/.github/workflows/lock-issue.yml b/.github/workflows/lock-issue.yml new file mode 100644 index 000000000..8cf0433d6 --- /dev/null +++ b/.github/workflows/lock-issue.yml @@ -0,0 +1,51 @@ +name: 'Lock Threads' + +on: + schedule: + - cron: '0 * * * *' + workflow_dispatch: + +permissions: + issues: write + pull-requests: write + +concurrency: + group: lock + +jobs: + action: + runs-on: ubuntu-latest + steps: + - uses: dessant/lock-threads@v4 + with: + github-token: ${{ secrets.BOT_GITHUB_TOKEN }} + issue-inactive-days: '365' + exclude-issue-created-before: '' + exclude-issue-created-after: '' + exclude-issue-created-between: '' + exclude-issue-closed-before: '' + exclude-issue-closed-after: '' + exclude-issue-closed-between: '' + include-any-issue-labels: '' + include-all-issue-labels: '' + exclude-any-issue-labels: '' + add-issue-labels: '' + remove-issue-labels: '' + issue-comment: '' + issue-lock-reason: 'resolved' + pr-inactive-days: '365' + exclude-pr-created-before: '' + exclude-pr-created-after: '' + exclude-pr-created-between: '' + exclude-pr-closed-before: '' + exclude-pr-closed-after: '' + exclude-pr-closed-between: '' + include-any-pr-labels: '' + include-all-pr-labels: '' + exclude-any-pr-labels: '' + add-pr-labels: '' + remove-pr-labels: '' + pr-comment: '' + pr-lock-reason: 'resolved' + process-only: '' + log-output: false \ No newline at end of file diff --git a/.github/workflows/opencommit.yml b/.github/workflows/opencommit.yml index 80fc9e302..69f7d7f23 100644 --- a/.github/workflows/opencommit.yml +++ b/.github/workflows/opencommit.yml @@ -1,4 +1,4 @@ -name: 'OpenCommit Action' +name: 'OpenIM Commit Action' on: push: diff --git a/.github/workflows/openim-ci.yml b/.github/workflows/openim-ci.yml deleted file mode 100644 index 6460a43b1..000000000 --- a/.github/workflows/openim-ci.yml +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright © 2023 OpenIM open source community. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -name: OpenIM CI - -on: - push: - branches: - - main - paths-ignore: - - "docs/**" - - "README.md" - - "README_zh-CN.md" - - "CONTRIBUTING.md" - pull_request: - branches: - - main - paths-ignore: - - "README.md" - - "README_zh-CN.md" - - "CONTRIBUTING.md" - - "docs/**" - -env: - GO_VERSION: "1.19" - GOLANGCI_VERSION: "v1.50.1" - -jobs: - openim: - name: Test with go ${{ matrix.go_version }} on ${{ matrix.os }} - runs-on: ${{ matrix.os }} - environment: - name: openim - - strategy: - matrix: - go_version: ["1.18","1.19","1.20"] - os: [ubuntu-latest] - - steps: - - name: Set up Go ${{ matrix.go_version }} - uses: actions/setup-go@v2 - with: - go-version: ${{ matrix.go_version }} - id: go - - - name: Check out code into the Go module directory - uses: actions/checkout@v2 - - - name: Run go modules tidy - run: | - make tidy - - - name: Run go format - run: | - make format - echo "Run go format successfully" - continue-on-error: true - - # - name: Generate all necessary files, such as error code files - # run: | - # make generate - - # - name: Check syntax and styling of go sources - # run: | - # set -e - # make lint - - # - name: Run unit test and get test coverage - # run: | - # make cover - - - name: Build source code for host platform - run: | - make build - echo "Build source code for host platform successfully" - - # - name: Collect Test Coverage File - # uses: actions/upload-artifact@v1.0.0 - # with: - # name: main-output - # path: _output/tmp/coverage.out - - # - name: Set up Docker Buildx - # uses: docker/setup-buildx-action@v1 - -# lint: -# runs-on: ubuntu-20.04 -# steps: -# - name: Checkout -# uses: actions/checkout@v3 -# with: -# fetch-depth: 0 - -# - name: Set up Go -# uses: actions/setup-go@v3 -# with: -# go-version: ${{ env.GO_VERSION }} - -# - name: golangci-lint -# uses: golangci/golangci-lint-action@v3 -# with: -# version: ${{ env.GOLANGCI_VERSION }} - -# docker-image-tests: -# runs-on: ubuntu-20.04 -# steps: -# - name: Checkout -# uses: actions/checkout@v3 -# with: -# fetch-depth: 0 - -# - name: Set up Go -# uses: actions/setup-go@v3 -# with: -# go-version: ${{ env.GO_VERSION }} - -# - name: Run tests -# run: make build - -# - name: Test docker image -# run: | -# docker build -t openim:ci-build . diff --git a/.github/workflows/openimci.yml b/.github/workflows/openimci.yml new file mode 100644 index 000000000..e0546515e --- /dev/null +++ b/.github/workflows/openimci.yml @@ -0,0 +1,168 @@ +# Copyright © 2023 OpenIM open source community. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name: OpenIM CI Aotu Build and Install + +on: + push: + branches: + - main + paths-ignore: + - "docs/**" + - "README.md" + - "README_zh-CN.md" + - "CONTRIBUTING.md" + pull_request: + branches: + - main + paths-ignore: + - "README.md" + - "README_zh-CN.md" + - "CONTRIBUTING.md" + - "docs/**" + +env: + GO_VERSION: "1.19" + GOLANGCI_VERSION: "v1.50.1" + +jobs: + openim: + name: Test with go ${{ matrix.go_version }} on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + permissions: + # Give the default GITHUB_TOKEN write permission to commit and push the changed files back to the repository. + contents: write + environment: + name: openim + + strategy: + matrix: + go_version: ["1.18","1.19","1.20"] + os: [ubuntu-latest] + + steps: + - name: Set up Go ${{ matrix.go_version }} + uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go_version }} + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v3 + + - name: Install Task + uses: arduino/setup-task@v1 + with: + version: 2.x + + - name: Run go modules tidy + run: | + sudo make tidy + sudo make tools.verify.go-gitlint + echo "Run go modules tidy successfully" + + - name: Run go format + run: | + sudo make format + echo "Run go format successfully" + continue-on-error: true + + - name: Generate all necessary files, such as error code files + run: | + make generate + echo "Generate all necessary files successfully" + continue-on-error: true + + - name: Run unit test and get test coverage + run: | + make cover + echo "Run unit test and get test coverage successfully" + continue-on-error: true + + - name: Build source code for host platform + run: | + sudo make build + echo "Build source code for host platform successfully" + + - name: OpenIM verify copyright + run: | + sudo make verify-copyright + sudo make add-copyright + echo "OpenIM verify successfully" + continue-on-error: true + + - name: Clean all build + run: | + sudo make clean + echo "Clean all build successfully" + + - name: push OpenIM + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: "cicd: robot automated Change" + # commit_options: '--no-verify --signoff' + branch: main + # create_branch: true + # # Optional commit user and author settings + # commit_user_name: kubbot # defaults to "github-actions[bot]" + # commit_user_email: 3293172751ysy@gmail.com # defaults to "41898282+github-actions[bot]@users.noreply.github.com" + # commit_author: Kubbot # defaults to author of the commit that triggered the run + continue-on-error: true + + - name: Set Current Directory + id: set_directory + run: | + echo "::set-output name=directory::$(pwd)" + continue-on-error: true + + - name: Collect Test Coverage File + id: collect_coverage + run: | + cd ${{ steps.set_directory.outputs.directory }} + make cover + echo "::set-output name=coverage_file::./_output/tmp/coverage.out" + continue-on-error: true + + - name: Display Test Coverage + run: | + echo "Test Coverage:" + cat ${{ steps.collect_coverage.outputs.coverage_file }} + continue-on-error: true + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + continue-on-error: true + + openim-start: + name: Teat OpenIM make install start on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + environment: + name: openim + strategy: + matrix: + go_version: ["1.20"] + os: ["ubuntu-latest"] + steps: + - name: Set up Go ${{ matrix.go_version }} + uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go_version }} + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v2 + + - name: Run OpenIM make install start + run: | + sudo make install \ No newline at end of file diff --git a/.github/workflows/project-progress.yml b/.github/workflows/project-progress.yml index ad721a361..12e8615f4 100644 --- a/.github/workflows/project-progress.yml +++ b/.github/workflows/project-progress.yml @@ -1,3 +1,17 @@ +# Copyright © 2023 OpenIM open source community. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + # GitHub recommends pinning actions to a commit SHA. # To get a newer version, you will need to update the SHA. # You can also reference a tag or branch, but the action may change without warning. diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 280804c94..c4f190766 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: goreleaser +name: OpenIM Server Release on: push: @@ -8,8 +8,8 @@ on: permissions: contents: write - # packages: write - # issues: write + packages: write + issues: write jobs: goreleaser: @@ -35,3 +35,30 @@ jobs: # Your GoReleaser Pro key, if you are using the 'goreleaser-pro' # distribution: # GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }} + + goreleaser-check-pkgs: + runs-on: ubuntu-latest + env: + DOCKER_CLI_EXPERIMENTAL: "enabled" + needs: [ goreleaser ] + if: github.ref == 'refs/heads/main' + strategy: + matrix: + format: [ deb, rpm, apk ] + steps: + - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3 + with: + fetch-depth: 0 + - uses: arduino/setup-task@e26d8975574116b0097a1161e0fe16ba75d84c1c # v1 + with: + version: 3.x + repo-token: ${{ secrets.GITHUB_TOKEN }} + - uses: docker/setup-qemu-action@2b82ce82d56a2a04d2637cd93a637ae1b359c0a7 # v2 + - uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3 + with: + path: | + ./_output/dist/*.deb + ./_output/dist/*.rpm + ./_output/dist/*.apk + key: ${{ github.ref }} + - run: task goreleaser:test:${{ matrix.format }} \ No newline at end of file diff --git a/.github/workflows/scripts-test.yml b/.github/workflows/scripts-test.yml index 4b0dc03b4..badb33012 100644 --- a/.github/workflows/scripts-test.yml +++ b/.github/workflows/scripts-test.yml @@ -48,7 +48,6 @@ jobs: sudo ./scripts/build_all_service.sh sudo cat logs/openIM.log 2>/dev/null shell: bash - continue-on-error: true - name: Start all services run: | diff --git a/.gitignore b/.gitignore index e870d0a42..e6808d57e 100644 --- a/.gitignore +++ b/.gitignore @@ -22,6 +22,7 @@ logs .devcontainer components out-test +Dockerfile.cross ### Makefile ### tmp/ @@ -389,4 +390,5 @@ Sessionx.vim [._]*.un~ # End of https://www.toptal.com/developers/gitignore/api/go,git,vim,tags,test,emacs,backup,jetbrains -.idea \ No newline at end of file +.idea +dist/ diff --git a/.goreleaser.yaml b/.goreleaser.yaml new file mode 100644 index 000000000..f9ca78474 --- /dev/null +++ b/.goreleaser.yaml @@ -0,0 +1,448 @@ +# This is an example .goreleaser.yml file with some sensible defaults. +# Make sure to check the documentation at https://goreleaser.com + +before: + hooks: + # You may remove this if you don't use go modules. + - make tidy + - make copyright.add + # you may remove this if you don't need go generate + - go generate ./... + +snapshot: + name_template: "{{ incpatch .Version }}-next" + +# gomod: +# proxy: true + +report_sizes: true + +# metadata: +# mod_timestamp: "{{ .CommitTimestamp }}" + +builds: + - binary: openim-api + id: openim-api + main: ./cmd/openim-api/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-cmdutils + id: openim-cmdutils + main: ./cmd/openim-cmdutils/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-crontask + id: openim-crontask + main: ./cmd/openim-crontask/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-msggateway + id: openim-msggateway + main: ./cmd/openim-msggateway/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-msgtransfer + id: openim-msgtransfer + main: ./cmd/openim-msgtransfer/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-push + id: openim-push + main: ./cmd/openim-push/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-auth + id: openim-rpc-auth + main: ./cmd/openim-rpc/openim-rpc-auth/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-conversation + id: openim-rpc-conversation + main: ./cmd/openim-rpc/openim-rpc-conversation/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-friend + id: openim-rpc-friend + main: ./cmd/openim-rpc/openim-rpc-friend/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-group + id: openim-rpc-group + main: ./cmd/openim-rpc/openim-rpc-group/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-msg + id: openim-rpc-msg + main: ./cmd/openim-rpc/openim-rpc-msg/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-third + id: openim-rpc-third + main: ./cmd/openim-rpc/openim-rpc-third/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + - binary: openim-rpc-user + id: openim-rpc-user + main: ./cmd/openim-rpc/openim-rpc-user/main.go + goos: + - darwin + - windows + - linux + goarch: + - s390x + - mips64 + - mips64le + - amd64 + - ppc64le + - arm64 + goarm: + - 6 + - 7 + +archives: + - format: tar.gz + # this name template makes the OS and Arch compatible with the results of uname. + name_template: >- + {{ .ProjectName }}_ + {{- title .Os }}_ + {{- if eq .Arch "amd64" }}x86_64 + {{- else if eq .Arch "386" }}i386 + {{- else }}{{ .Arch }}{{ end }} + {{- if .Arm }}v{{ .Arm }}{{ end }} + # use zip for windows archives + files: + - LICENSE + - README.md + - CHANGELOG/* + - CONTRIBUTING.md + - docs/* + - src: "*.md" + dst: docs + + # Strip parent folders when adding files to the archive. + strip_parent: true + + # File info. + # Not all fields are supported by all formats available formats. + # + # Default: copied from the source file + info: + # Templates: allowed (since v1.14) + owner: root + + # Templates: allowed (since v1.14) + group: root + + # Must be in time.RFC3339Nano format. + # + # Templates: allowed (since v1.14) + mtime: "{{ .CommitDate }}" + + # File mode. + mode: 0644 + + format_overrides: + - goos: windows + format: zip + +changelog: + sort: asc + use: github + filters: + exclude: + - "^test:" + - "^chore" + - "merge conflict" + - Merge pull request + - Merge remote-tracking branch + - Merge branch + - go mod tidy + groups: + - title: Dependency updates + regexp: '^.*?(feat|fix)\(deps\)!?:.+$' + order: 300 + - title: "New Features" + regexp: '^.*?feat(\([[:word:]]+\))??!?:.+$' + order: 100 + - title: "Security updates" + regexp: '^.*?sec(\([[:word:]]+\))??!?:.+$' + order: 150 + - title: "Bug fixes" + regexp: '^.*?fix(\([[:word:]]+\))??!?:.+$' + order: 200 + - title: "Documentation updates" + regexp: ^.*?doc(\([[:word:]]+\))??!?:.+$ + order: 400 + - title: "Build process updates" + regexp: ^.*?build(\([[:word:]]+\))??!?:.+$ + order: 400 + - title: Other work + order: 9999 + + +nfpms: + - id: packages + builds: + - openim-api + - openim-cmdutils + - openim-crontask + - openim-msggateway + - openim-msgtransfer + - openim-push + - openim-rpc-auth + - openim-rpc-conversation + - openim-rpc-friend + - openim-rpc-group + - openim-rpc-msg + - openim-rpc-third + - openim-rpc-user + # Your app's vendor. + vendor: OpenIMSDK + homepage: https://github.com/OpenIMSDK/Open-IM-Server + maintainer: kubbot + description: |- + Auto sync github labels + kubbot && openimbot + license: MIT + formats: + - apk + - deb + - rpm + - termux.deb # Since: v1.11 + - archlinux # Since: v1.13 + dependencies: + - git + recommends: + - golang + + +# The lines beneath this are called `modelines`. See `:help modeline` +# Feel free to remove those if you don't want/use them. +# yaml-language-server: $schema=https://goreleaser.com/static/schema.json +# vim: set ts=2 sw=2 tw=0 fo=cnqoj + +# Default: './dist' +dist: ./_output/dist + +# .goreleaser.yaml +milestones: + # You can have multiple milestone configs + - + # Repository for the milestone + # Default is extracted from the origin remote URL + repo: + owner: user + name: repo + + # Whether to close the milestone + close: true + + # Fail release on errors, such as missing milestone. + fail_on_error: false + + # Name of the milestone + # + # Default: '{{ .Tag }}' + name_template: "Current Release" + +# publishers: +# - name: "fury.io" +# ids: +# - packages +# dir: "{{ dir .ArtifactPath }}" +# cmd: | +# bash -c ' +# if [[ "{{ .Tag }}" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then +# curl -F package=@{{ .ArtifactName }} https://{{ .Env.FURY_TOKEN }}@push.fury.io/{{ .Env.USERNAME }}/ +# else +# echo "Skipping deployment: Non-production release detected" +# fi' + +checksum: + name_template: "{{ .ProjectName }}_checksums.txt" + algorithm: sha256 + +release: + footer: | + **Full Changelog**: https://github.com/OpenIMSDK/Open-IM-Server/compare/{{ .PreviousTag }}...{{ .Tag }} + + ## Helping out + + This release is only possible thanks to **all** the support of some **awesome people**! + + Want to be one of them? + Contributions to this project are welcome! Please see [CONTRIBUTING.md](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/CONTRIBUTING.md) for details. + +

+ + + + + + + + + +

+ + + ## Contact Us + + We value close connections with our users, developers, and contributors here at OpenIMSDK. With a large community and maintainer team, we're always here to help and support you. Whether you're looking to join our community or have any questions or suggestions, we welcome you to get in touch with us. + + Our most recommended way to get in touch is through [Slack](https://join.slack.com/t/openimsdk/shared_invite/zt-1tmoj26uf-_FDy3dowVHBiGvLk9e5Xkg). Even if you're in China, Slack is usually not blocked by firewalls, making it an easy way to connect with us. Our Slack community is the ideal place to discuss and share ideas and suggestions with other users and developers of OpenIMSDK. You can ask technical questions, seek help, or share your experiences with other users of OpenIMSDK. + + In [OpenIM community is recruiting new members! discussion](https://github.com/orgs/OpenIMSDK/discussions/426) please leave your information, convenient we will better developers around the small gift to send to your hands. + + In addition to Slack, we also offer the following ways to get in touch: + + + : We also have Slack channels for you to communicate and discuss. To join, visit https://slack.com/ and join our [👀 Open-IM-Server slack](https://join.slack.com/t/openimsdk/shared_invite/zt-1tmoj26uf-_FDy3dowVHBiGvLk9e5Xkg) team channel. + + : Get in touch with us on [Gmail](winxu81@gmail.com). If you have any questions or issues that need resolving, or any suggestions and feedback for our open source projects, please feel free to contact us via email. + + : Read our [blog](https://doc.rentsoft.cn/). Our blog is a great place to stay up-to-date with Open-IM-Server projects and trends. On the blog, we share our latest developments, tech trends, and other interesting information. + + : Add [Wechat](https://github.com/OpenIMSDK/OpenIM-Docs/blob/main/docs/images/WechatIMG20.jpeg) and indicate that you are a user or developer of Open-IM-Server. We will process your request as soon as possible. + + Whether you're looking to join our community or have any questions or suggestions, we welcome you to get in touch with us. diff --git a/Makefile b/Makefile index d1c733717..74e183543 100644 --- a/Makefile +++ b/Makefile @@ -63,6 +63,11 @@ build: multiarch: @$(MAKE) go.build.multiarch +## install: Install deployment openim ✨ +.PHONY: install +install: + @$(MAKE) go.install + ## tidy: tidy go.mod ✨ .PHONY: tidy tidy: diff --git a/README.md b/README.md index 1079b5b86..c4a4318b2 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@

+

⭐️ Open source Instant Messaging Server ⭐️

diff --git a/assets/logo-gif/openim-logo.gif b/assets/logo-gif/openim-logo.gif index 42d7d65363d62829395b3ed25fce7fdd83a46c34..f4b4817c424b9b9fb8ff7d2479b26b56562a842f 100644 GIT binary patch delta 2552856 zcmcG#cUTi&xA#3WnS@XR@n-=6C87cfNK{l%)KCQMQITE(QbG?!I!x#tqaYoLC`Cn# zbfp*sDIyRN0Rbh76vYw+>5wPC`<(l}&-1*`xvuxUuJeXJ$jt1r_ROBWzw5JBnme2s zAMSvN!AX4$O%PbA_er zlyZJqS7c$!^pBqpn+Gx;RKFdaPJQ_DL`E~;Iv4po`Q6hi*6v1i;{CQu0d+42J_lwL z*3>m;wteUt7>U1ATi!POqP;t`p!sHbCx2ivJ|&O;tMkR151+>;dxj^8O60iuL2^P_ zU}c}tI4`TP^g&}^!>cz#qn|38`v%6QyLtyS==b=EHQ(o!gP08ocOFV}OJ8GynUnd-l^uGmD<7RY^bQ z_^UI{=})z8G@AQ_@?VU2FxqZaym-{q5p%y)`$prfr#*UFl%C3HkgZv4cx1 zX0ds_6_=U0k9ceRTTkD#%`dObFF(k+sA6@WKZg9cSzvh$6+p0SIQ_4Cl7!L-B~@*&>Ybka;cS`M@MiSp!+!qE zLeKEGu$&G}!qudrH?5{A2Fd03i)!q%tD1X8Yaet@KG91nj(<`aeP(~S`H3XXz$Y)( zoBEf2Naw)xo$Btwrz1ghi|V%FAnNVm0d7eayY0=_+fQ55Yr77_rusjA#pm;F;~K^$ zXEZG7wz&;W!xIIaV}1qM@4wCTPVyYmtAGCa9#hcM-}CAHVExIm`VFx+#WRYQmzO6$ zy;Lu3j411P)zfqBQN!fyGVjO7twC`I2VM`g)+`}>{^;b-x#d60%Y4O~6=%}#4Uh3= z<^`WcyQZN{MbEx3&z6ogXI2#^6uh39nV*@Nnf(4)^=8qFU%#ftCdQZMM<>4wk4?7@ zkEGVM@RtR4E^C}b z@c^3b6;}sef}Mktv&T{SpLNgV3C{LM0oQF&X$-qX(Eu;AeD^J?;hf0XfcJu0vL_XWb=o$7je zI}kMY>{Y!&B<>{~(%fUKVXuDZz=PgeQAf))cpPZ_xSJMw@pM-U zu%)T(-9!9)SpO_|_U!*&6!|~Py1W0YxR38ehkslAe{I>vD3Io$cG1Dd^Q!k12SM@e zfA>W@tn2My>+9)lD-5|m7wJ?uUG5uaWEsB!k};gcRd zzP27$98T&Tl^3+J$JyEbu)gNOy$5yns_#3ftFw3Si4!^+g1@~7G>H56>hIM&sPWIb zdY)IVx;uFI{;w&{>A(GypmH@&YpJ>6Zekj|GK z?QN|uTAH6Xv7a?I)YmG-juT1O6RY8*OvKz;wd zy+pM=sw&F6cPS|lRrV>CIA-n>KD(|JORagg8!2R74mngh9h7NU%_B zTZGXtzz0+WYX0riMvXDlGgtauL!dz!7oMCMuEt&D~03-tDWYA5dX&FifAtj_- z3jgm8pP^(R2!H?pD+D;~BIv6S{(Y?xB@Mvv&ZlDzw3N9&-!^TdV+Ml% zE?AF}f`kC9px|MEznZ%9bT~V_C832y;APiH>ZQppOeO=BqUV?$5ypTJ5~JG^X9ZlK z7(Q|3mpRk*A6Q04qJ=Q<-|Y$i<1RcwZG>=uxS+i}!ChEUd_dT1hFbqpJ{=fBZ^8Zb zmp!&i2QMv^u%l8xiM>%sTZ^{K-kn?H3h$|>UTKM3p9~#ms!MhaiR?M*E4IQ5r)#dm ziAQ@~JjX1R(7Ym^IlN)}iOi!d*n=#FP6A$N<3*)iOV7c$Fv{Aia@}8d z+n?%j4qC5vXl|Pd?{NT2|j$J=iU8)qgtrHW2{;wwg4?Z{=hz#0mJDcHk!4^jJ z-OkI-Xm$Fg38e^4Y37%+k)6FQwXI+RC43hQ!k6$(2hMy~wHsWLhKaG_vH&D@myLR4 z8V*sr9=cjaN(ocxWr4}zx=P!`qVd}I;zL!<0-B}Uw?5xI#CDUw62#7x&<~U(tJ>j# zVPU1%b@nuji6Qb)OpSX&A_bK2wwacetBrw-+*6#m%cvGMAfmvG7abfnAK=grF+u?! zDp#&$p%tA*kJzdajuU#cX|FdgJoJ#I(84(Yr}P1Jc8C1fTYfJaU$**7(y|%sF4K@c zM)!6JZHDCt?6xf|$VNF_G7b;zb=j(Fr%uP^1T-N4^YJ(9BRP_eOwHH%4jxo4fI5ZM z78PMZj>RNl%Ydf7+tIF6QvhX2M6KI|r=v5qMauBcH;WzfbFvzfacraSDq~^}e7*x} z9|&lFiLue8AADCvCm3Hb$+L?E0=N8k*n{Qs!ylG^1(>U;^Y1U2iCpRtM-Lzi3N!grk zr)IE!OU~OUMW>)pANe>Ed+f?8c3G6Bnc^VwAYE#lFy|o_vKg5 zg0F5zo;?G?+JLqg;dUg3HuUy`$kmcZACt|d*^oFv2Ti2KZQu~Fn>5&u!XK)dS?UfB z5U#FE`A(NoS;lWAKNqtG5n-J(IYR?aW1hy}rrTv?55IKut9=3h(j(7hrn)!nt+!2f zRi*<%rcv11@9u#p!Sv=vNGH&Kgq)t19_8tmtmh`{sZc=oLA~;fJZKY(Bz$hFNvw#1 zi?x`R!SNSbi`SFrxZK<5ZH(to1O+3dqAh~vk=pZ^7+hwqIa0pB7Ak%G+pglHj2tln z-^~KHNi}Ub!PRM3q$P>s$0mD4o??vlxcF!25?ToKLow%)bP4rB>&eeG%TlgVJ9JPM z5`Uga0Lh|w3ZaEVSCM5#Rmj=m8D!G%oj>8SA(T%)4jw2zKuW^gW&XS*2a69L3vgOT z!7A_$u}?Q3P=4^3Obb@0w&xfKu)=@ebm~74LyYpYjQr#~dQcq8^j}Ap`At2quPJ>i z$i72f2-OaP_NyME8@ST_CG77#DRCkp%=w-r%*1iR+@M??ZhSDR{wCqiR;7>VlGsN6 z&quexW`qsnSjWmm8$%Q+AH|MIJ}Zy=6|UzNfkoW$(d#hGH4h|s)|7yj!H4}eP^+}j&b`{9de2c2$SjUI%55dFkw@W%0-`I0T&sA}_Kcx6v?Y9#BRL+GDEHUmY&Q38!*F9RdQo@I>60 zpbQT(iVIxCyTByh6NV}Vg8;UK9?QX~QNWD=u#w}EKPT41qT(15c22l{ma_#`rF|Z} zT1-A;LZdS=_q$%aPm}K^hT~ZoCrCRfz35S?i`E^LqwN| zmLmiCai|g{2yRcPh2q1fa4-*2W_allVGRJc=p^1Xm=qg_dPEhMqlibuCN&mN`J4dS zfVVUW&>jF_k{E{rNCG%{cJkMf@CVowgQo>l+j(aZ8g4lNSffIf0FFZgR;!)=P_Nbf z<*E|vyf(<-4+6qWKq#IuUwiFNDFnldDg~ z9y=vSx$d#-@Z+t^j|np6@<+;dSd=RSmn-Fz@2)FX87|+mTuzj!*mtBt-J;^)$<%Or z$y55lm4-Q$r|K%t3|F38t|ZG;T|81{WKm@tTxFV5WnNchIb3DETt$(owmVX7-+Avp zG{^t=x@H6-(J5j2Syy>UZ0P@(TvWABx$zkleR5WV%j zDl2|h3wub4*|d$rh%hl?gYpDmZ%db|x6PfANd-1Yy%2S^X8HZbxcO~bMAS~^$Bi)@ zuy*mGs-5ZBXtMsH`zP4bk`K8EQuaFv^Q5MSTE# z;yyu`^G}~2Wy05w!HU6*`;ilIfLfo-s;DSIo01@AJ{#%M}K{DnCVD%O9JZ8JVvVgDL12w}_I zPSH}eCei&vuAtNe;@~ce4zX;p-a^{^H=3MCVG4v}5a_=%_#h6UQl?Y)EP<~chldVl z1JX)uf>k~|s2!3%MGPB11fHT`<7&cQ%8SY|P(Ou&e;0emk@58YplW@Tqe0ku8k`M4 z(u@GCsftJ~s7b*kZwmZUjdf#$plorP0Cf}Fx5Xch#KY2b3As3xZMEQ1D^(%RrGPB{ zQD01x;E&*FSYlkbbO1(y8-7SbWt0fZ@Ia}7$b0&sDDChT0NSQVUrz*!2ExwEH-lcPY= z>;P%NU%$-grhjYLl;9;C(+)}~_sCMKf9?NvXu;$RBkjLeJ4N}34Bos;M%1LO1?@eJ&^V3Q zf*seKfYxS#&hIeWd4L`PmZOL$GeJid1hc?(Lx3*RUxx&5;s7QIg|FsP9}Wmcg3<`W z6mc+)EMXZwyI74;q9Jg&`Z?G739#2w@!zfv5jP(6VAt(^ zFN2hcumU|GkqP!PupAPgz{1KClgBBLb}<+xa=+rYUvdp{btut$-Y-YNKfNDFB*Q{9 zFcHAD3;`k(uW{j0`r(vIlg{M?+#LlP2VeHdMf~FsAdJv(Z(rsOx+uTGQ12T8U6?cl zLfNcznGmIHYPZX@OV(#&m(C$Tu-(syxMuk|E09EmxQRpxO|z$Pe&R*TQp7tH%{d=eywZ#Hr)7QxsfOH?Dvspvlh?hf}btqJX@-J zwle%|ZTT4j$g&|VHf+hpgs`!>Y>|4l*a%yEg^ibO`b(>6gJsjEkS3|zCh7Vn*^#EL zD@_F1=ki+5cUV4G2zjoQ`+Rr(bCr?jdsdzkWt;bDHLF`T9}H>M$ZbAc->fy#d~Bte zB-^5+)uLzFq94*?nA>uyzU9nF%ej>nvh0hCS}%+c%NNEWFHCb^nAg9s9C=~A@`57U zYNyp|Z`tY?(n`&3b*XQ48)@}eX{E`wd26-#TDJLxv<2k01=Y8OjI@QVw9#eTBedG1 zEZbv3+T(KD6ZrM*Nh9qkEA0%~jvHDXX_g)7Asv~y9oh9Axg#C7RyvrnFAKC@-nD#L z6!NkJ$$fdh{$=UN%d(Z1EZNR-tw6W&NvHBd@wwUU6i*dbPUxEW7$cx(0K*hU&XUM!G(%ba7?7KWTM;w(On=>7L5% z{#xJtZKV6hN;glo=eJhRtYyz!NY6rU&r*HQ$_Uc4w$cM^;Xp?@uoVXr%E9JwL>f3^ z?>XYD9Q>Boe;s|j!Rqy<(AQFVucaGa%f5fTb@er2ORxOV-W^uG3ZcD9dA++EdR5-{ z?pf_6Zh5os=o@tdt2YNj-)Q8$Io$9@>;0Q!t8YkK`gD%==~?yZhxQrf^_^ zMa8Z8q{)!)Pr6&Ml~CMXs$Jico#|I6$g?lD1{aRGBM%t?_D^ zDjg+cDg$em(4~naPcb6^-aB+{f(D^6LWe#rD%> zv^1Ge%qcD;2{51oXPUl9UOQYBXPaDIHzu8EOowjaye&~%K3b_gec2>VC-NdhsbtiS z1i&Aux^#L>;NuTJT=Sy3u5y1W1ids7r#H?#7p6a=qt$_{&AN$F9}KnLb{*wC<%dk` z^elf~+=|(t5stFdz+ioOzCF69$K>#r%<@DRiaUy#JQ)BS(NfE`TqX^xN>0mxzrox)?V8lWsa>@eFCAE(kYiA8=ox#hG5 zn<~QFIFKpSlk_>5Q>3t?L~uQe&ftM3Ic_2ZoU=*f zGl6Jhf*MLl)Pz_6A=pWvPFP?&2Ok6uK5BGQ>oQ;tf0;fkq#XjXnwhQ-H7; zOLQ{>6h;U*JHC>NeI`np2fk6n%{YY$(a`aDYCjXyrJ*HQLLF?#l#Y%hqS_b&eMpri zq9OvK4S>jMGFFQV)soShnZPwEl>w$eLPHPQ-MmeLYUUuAfKTj?XVAp5Nw{-(bTtX5 z!E)Zn@i&f(HlV@XQfM+4wTB&7hhSA21mc^O5aSrHCFR1Qfx65@)NMeX3tb>V&Lk*_ zCYDizGMrCX&q#h3C;SJC-op}=kV<*FFJ)ZG)vGwB`k;#%6O_yV>bMY@d@YGCjNc^+ z)3CNqA(4aE-nCSPN_q=K?C-XqBT=PYxG?TSfF|au$gpyt{p8xbUML+O8t`wS;@`} z3?!Ul@I<+VDNyII0zixCr)Fxn6#1d$=*}X<>l@>RPY|63n3yynfD{NLylc9ej31`y zPjq6OpCI5LwwJSE5^Wb$z{a#1XZ(&6enfK0Vfk+f43yiPW=Faa<(&CcM+_#y&L@E+ z;nc=2DpOuF(|%WWjlAdwBCJmYnUP ze~qXXQ+Sf)OyFHL90*cdxVfHqW2YITQBxV&?F{R)zy!V%E~6ynWjsof1k~|FGBlke zNg-ihZmzXsZOv{dzRRnL$ZXCE{=jj0n~_`W1ft2}HDv52MNu3Xd{C1$5D2qq@T_ol z9VKnSOu3wg)1`~)lT$`X!2QKcc8#z=&>dzui!=R0JFX38=KV2DYcRWA*_(*y)5TEq zNIBBglzX`i{TNX^&Ig0DF3#!?$n(M{+Tj_uh3{1T4%vJdU@wGuINt(KdF!wP`|&94 z>;mIKlovgE_Fcir`*$nk!!?PpCJ#4CiMctEb}i7~ora#~0;9!QmfY(CC&!e70t6U# zF?oJh5v$x8W}q~=SQ%s($x*89_G;^7`YTI4B1tI7p}>;F_!MTECZSLs zUtsBfzj|~2{ikpTUHmcWn(eOJBPSo+xsfFBv*L;Fmq_qNgyN}3N9l5f+If%+4LDkS zM|(2VOvLZ1G$!Ca98JcOxuu3KH+mCx_uUt$d~rz%D9(tg`U0N8!XO7yKkSlZUg~qd zFpgeK#y|RfIJ1tN`RCMbw*kN*!1Yc4BayG*DK0va6qQ9}p;_1oVxfE{%c=u3HH1_w z?%|b@$LnQw$2mQ|QS@kqF9NxcP*hGtBop3-2Yj%wC;^rvSC&j7O6GyT0;4l|g*S(a z)ub!(ZzLt$PuV>ENVZc{765{IfWSrCx)8Z66gZUtiVFdzoWeM^s1mbWez9^!`r*X~ zyQB?(EeTf-K6tFosFLLhMh5I3g0eVB_(6dKM!`7IqkcJxs58V)5wUT2A%yrOb-2(J zTk}VgQE|8?Pd>b#R>SeDl6e4|cY?t@NP`UM5a50IC|!-HyK!g_ywDAq%*TV3s|!LZ zFUx1!>xMg?FrWMRSyTxzYD`Z*t!D}8u!Q&GJ)LOiQ<}g&Ue!ew?0f`7(i5@gNVsZ> z=mlQGd;T0H#8?g1VYhOjv>pm~b9R@n{>FCA7 za5PN}P7>E*qporxfnXJ?XN%XfFEd4n4;r(c`{f_G-&*&0D-EO1gG^Y$1Ug6sfc*e8 zp(MJ1$KhC_h#BX3yeV9VZ{8~=VFonUkzqC2<^z`SW~OMeVN;%6(8BrHYSVp}rg!~I+z zOOr%5kI=MfXaO4Fupk{GT8fRfP|hOPIJY6y)Cd*)00Zk$02VPBgC?DUQAUk zR)OoXKm#S%m?>j%Ng8^p15>~R&F*#9sdP;FJ&kSebl*ntByP~1>#rEAdi zC@fDFw<~Smp8+^fy~b2`C(gZJRK1_yiK$X)jUGsp2Atpc--$97S74S*5W4J2U({$( z^Bt*(=&^?yLNoyl6HpFV+apsUoMY@VK`xhPy5P7tVY)}UzF2zZu;RIzHox@CNlCVb zVmPA90qe1Q{hxP;;uzIqZGleODZAYae9CDa35suV9?<>tM`x_d3mskV>5KkQ9yc=^ zzu)UD%pUA_x^=($vyBI9G23N==zO!^g@lw%oob-Qlrfl)>6gef^+kYyVuizZu z;T+sOnX}JHD=z-C3xo*FTiQ+FR348>j0(OgFAgv$uYGe(YO|^|#irZ|%3fy=?sU>ch8g zWbGSg>-XMc-}|h;_lJESy!Cyk@%zY!?;qB_bGQEZbnM4x>mL(gKc;T|_}cj6+lL=N z)_(A|{``IH=dAV5xv-xLw|*`){#^O+b8YP>AjgA_^I#hu2H|1zc_PnvVxv59J`XSV z>#yU#HrV{yg#41q|0VtGm+a`Tt^8jEx!>}~k>5LPek&lqmGXb@e)d~s^!FbAZ=&4H zKK}6;b(@)k$c#q*%;9GsG}f6nFEoZIM}2Y-$xH}8FX-q&W{ z4?*Sw^5=t|&4-N6hwatjg17ouzyVvvQn{Dp*P3rV93Df|V7+~SSni)l8C>BwSc z{$lpC#oW=wTl__)+)}~urMosuMaWV~{?h$tOQoYrW&9Hfs~e+Eo79*Jo?rM%RAu*LZUL-^cm0HvBn+zmU&gdd6Ro!1LjZ zcTAKl=JVj|F#|?M=myk|44YlhI;7-6;kiQdw_h)pnpJs>551i>VcEV&*=f=L&8*V- zZJEPx|96X8ukr3ei-8|j^?`qWj1Ld|v|)#%B@`?NdA2R_8`T^~27g^?zrOQ)k>$JJ z4zIEfcutJGn{ndYK5jbjN!uQt+sViw-`qHkIzw~8&`n(Lb2G9O7AVhBP zHk40P|82M<)yVs#LXPk6lS+5eyie_ZQ2G0mN=2Xd={kZ z>GSrgiFNRwKPHsOjee$fi3jFP?NcxNnK|ZMoin4}x#?%_@}O$Y+^yoRpM^)=pE(O! z^G1J5@6H4BmcDN;`&;=9U!AuK7`y3j9W-5q%v*=dy!E#UTmCa|Lq}~2phSosT%bg) zHx96kk?~uwjoY3cV3(j=y;6ePn*chodVQ>f3wz(5i3WC6myr z{TBYKR|l_Tg!&D+)~x!C_zZ;le+Zsm_2(jyl3@X#5)Z8fd`>k93!KRDUkjYNlMxp5 z^+C;A(6@?#u;3qc^J~GpW=SOEcjqB~$m|;vBy?`rpC7s~mVtyVP1o?lR%QkeWNmp~ zFby$eI%)?6#08LG1#-BkJq5L8frQm3N36d~L8}I6i#d`bWj<4cjxN+{<73E3)b<^= z!e;|?HWZPgmF;astrm2oTFEi{@7m(r19W94$gxL0+e(Bk=n^m&;&gY|txFEj+o5nF z{C*-#qmO-#b-OohJ_Qvm&HOB>fYu6#7vgw${`966L5}#}kjD6-#gcNb7L#ETo=~I_s<@C;di<>$^^%ytb5b`!}`! z5%FcB)*&0hH{ojanHN^~T%HWQEuPwbYAphBn zC}|7tCp9Za0K!{jxzm(^^udQ8#c$LseG@heD$RNLyU6p?7XquM&)Ir@Gr;}5Unxqu zh#4sX9ODhh#~ctO%RJ6l9f^)PpxXB#AiYlZ$KL$lakU=w9wiW$^K)fV`?zWZa%c96 zXBAWy{^jnYTfffu*Sxuh`y*0fJ7ILb33;n30qltimjpP=8}^Xs%$YFr76O}pDD3?2 zeG>fMtYd3Kn}5t@wB7pTo3SQV;u*SuNf)j4C#}Qcc|Ube&werhu9!HMr3ZXz3+fo4 zy_ye8Q$%JZF-lzc93621ggG?a>Lk+TjT_~GpM*RnOsG>%A=q}m??S=eLI_e}5{jRK zWr^X@0Hh4~N>8bjQ*d%T+^5)ZgIJFb${0TEvQQJXTNRNFyWcGP|*Mi4lyI~4uGJJNV6{11s=dSQ&0lnCm?$6bW{#2PBdj=3lZQ?j9h9HGDcV;11f3$iJ}1T)b@HWZ2%5+e!;JoJkIs&o(~ z0Ar_kB9lzfehSqUoAOjXNP&SGZ;vcJ7>gMM5((%R3xFyBL-^zwCA2mPfoC=aF4w{; zbTp?OAQ4dQM8KT^T``Rj=4*oIXfX^1x{f7!lIZqVhw{e^)TTvnViPsEC^~Bn5amId zWN{P^*v7l&#Swy-=rW2(Fz1@U{r2Kw1ekCe5l-QRqX9rDi(x<)K1Y#=7BE7Z05t*^ zHPUJXu#$y<27$Czzp&19=LsI5%aCYcNQ@KUHaeQ33C0OXBRi9Y7fLyaiz8xX$TXOQ zii%4W1nUimU>`-4%tqC+M1|=Ybvm@*j*L-m#;JQL7VQ`{Hd2s*b^*|Rbm8@YsPLkY z0Z&LcUbtRZICTn82}pjpki`sylPIFd92cs?U%#)Z{7C~2`GR9*xkYcv+!25tX99da z12E%4a{}_n#yaz|ggdaA1kCgo5HN5Q;({GtB5u9Q?T!~F)3WcG<<)ve3V5O}12su? zn^eg8;snX_Aj5k=9p%d5asnTG%(%Frn$CV?5) znkch5Dt8XjrQlAoL~Cic)@NfhvhUatK?225nUX&rpG*+R&cx@Hm=)A`M`{uQbWqCY zbmp0R0p*xmF#h&r)*aJ?J4tM`-$_Rt5jw@a{W6~MN;ubD7~SifVQ8)l9R^U0g7Z%k z8w?}5{6GOHHACp4WD;~Jq3}l*7M4P7CB)^OELsXIat_LH{kr=U|7(#9FWc)r)Av42 z5W}t^-w92)Gu450p*RYVr=MccX=({mI9ERCZlX(`0Q%~)@4h#nhA0%P?v9cq0}R6L ztW!`Q5hWB9=|T*xY!e;G%x^k*mwGraA^U!5`F#|^xo>!q>QIxG9zbu8MG?qCf-rB$ zOY{VZp2MXVn8(~TFO|@$WqM%( zQc~i=dZZ)vLBPo=ur3c*aEQ*!_V}F;QjdYM*~OatueTT!$HOFlDp0z1xD*u4cBb5Q zIaQwIg43kH`{UDokb}NR75-HhHc3Qf(kha;VCtYCQ3E-4I<9kbxd92+X3o-g-95kq zQ37z!$m-|eJ}^>L%wsKUz4wxlD)S+fOc3o7himy>(&AbW}9+mgLYK2V;2m;G<}f0(J*>2j#B)>DoI5ciVY@sD%W~NTe^;>T00R zv9ar!!VNAs0@>^JKnTeJQKdvk66H1wTZ zIq+cjt0iC`tGuQJymIJa>fxw%LwFw{5k7=YZL6A*EVCJY;*5V*;@t2@d3Q=C3q^qj z=#`p0@Z<6`VJe8c>&J+@;0^;ZH973#qOA2ip`Qils_)tWC$QA?eoOSG(wbO#*N$NTB#RM_cO0 zplRUs+SZ5W;zld2x24*)PQ!NbSTEi!&6mY<+h^2TU1ACa~F*6skQ4%I- z0qqDORi7m;#BAQO5+JG+$f;>mBBq}vV*40{l-#1)(p`4*Z32vzH_;&u_-`cn7#G7o z{=s?$_)(Vvb%-YXm~8e|DPjZ$S2GGLwF+wLyOIhzmt|Z}@H(#vK|PXj)?BoTAYX+c z4B`P7WtTkT7v1$q-I85qvf-ux0#xJCgCozkPxqvGdu$0vbT)xMo#~z^6~x^|tx4BN z_%~lyfC4^6d~7eXO4F+|=S?A{gVDMiE1b!6@y8A9mTTk(T8b4!wNyX+>z-B%)Azc=lE zIP^9aI!YH7weU|@8&PQ zCOmAbTI~s28SGTx7@mC>In);uhtc6dIRsco0E2l@VI4qXLtaG8ZY>ODaTH;^AKH>F zDN+tCzo{i2OZjY97(%DzJ#eJ9lLVLuO;u>!;?oUQ=uMmA>a0$9Tn zsb=NWZ_ZxN&QZ0l3OPK!_2{^9*m#IEI$dilL5KPx(ODv;cb#?j`V@==4Nd*vjrl&j z6%o*9hQ#HskQPOPOrE@YF5BwKmHc4NbEZW>_d8|*?)P>4V9{bWTCZN|3 zmmoFfgbQ;>H5tR;hS$;Vd4GX&KYYnc5zXoT!rc1x*14~DQbc_g+0kW62i8Cw_p4%8 zzx@x;kpQ0&`BK2~)+T*9#}wX3f!vXm)aPrdCrIC(Tf@hkztu6&W;8IK`%RMU`l>8e zlJm`s3`>)qJ@8P1VbLx*x=S%8KhuZjrdrB92K!L95M(PV+{zb*iTf5Lvw zo%=ag2H^gY>?F+u$I0S?{9auq7{$uK^1tHnvBP0X?^nKpxQ}CJkaxj&nCby%>OV%) zQI{Cdw`7bif&OvAF*M1E&vj%4)juo()yP1C60eM(lJ|QL4_2d(&+|sCqm4_zTntXM zcmzR84P3gSA9vkrq7FOHlm;E`EC<`#50TTkCDv15oL+SwFD4@bbSdin~ zMcwFF>+#2K7erSGA{7%IdNfQ9OBjg-P&$Bc0TC8pc1e<`2m>p~rGl=Z&`gvxK@=qj z`B2^jsY3k(dy~=F-DKL&iDQC`Q4kz^Gxk%@tx*Obf@QoOQ?C68_CSl|$0L_|O#5Zb`~ocPcHjiFQJ_VE@H4+Nt{>R5RLq z_XaW#irHm8u!k*mJ5s6xS4Pp`kj^ymF>UTNEmKmnQI7lv@BW?tJx5bKm6TcK8Pu62 z^LzrG0-?+5DOc`xLHo63O$mSLbc#tWUaF@eJX_G!M~AMRh=$jq2w>r@l*mmaKorr_7 zSO_CgIjGBCS4O-oE3}ux7TbAld&KR7ueMD@cpK)K8S5aCvXL_Z+(86ucpmmt zmy$QyCNgLrY28^zsB#roa$4s@s`UHcIa+{{8EdEhXKC~%2lQo|S_%q>s58LWtAlv( z6G~r!&?owrS(_}b^ou`04RPGH)BTWX3)QDTd;(<9OD zKbK(cYJ)4Ys*Aww2bE+lx^Cc{++=rPffFCqYu#-Z+wO%f(*zE*zR`I9(>*{cnIC~ku@rn-ry1uDF0sOha zQ`YA{K-xbznuD0;=j*!Fj@bJTe{|=dn7az%MD=R9OJ5U-vFY{epS{l>c0b)1@LxDu z;?p9h$!Pf)z&rupgam!N%0ZCT6U5@}`vSLv!@X9^V*dtds6To4uXi75Vd$T?w@qGp zuZFCQjf%|r^TSV&nyA!Ha(r@QB^$LDIR3Bc0;d<;8rUL3eVxNhIu!80* z^8d{Fhs$SDqKuk_#s10Bkh}6fQ;Jm$8qT3cuH*?P#2wwC6Peg=2yFiKsbnf^3_11c z3kQ1b*ZqX~dhOsIO1%-1Ix6)827^-r^amHSU@SamSa+6Z%{D`j>KsKRX_3SnQJA@+gg@ zxkIBX@SJbarMzi-rz7td&jqwzx;1mx>FD>s^C1(L@|Qn59ba8MPsbQBQ9G&HxFB+r zg3)bJ#DS{2Wr-Z8Z&a|pka|Kj=t7dC(H)s_s=?8v3yc_}yW4jV)8#^PkkMU*%lA$@xLnFxGAhx( zeE(9R%jJhbmrETlKd=~gF=<%3%!;{OdS$1pSyzxTQdxBQp{s+d#rq}W+SbcuK83DU z--Ar*CoVq<9(T1_T@rYG#;nMlZnn5!(-sBe$B7PZSGFvhw(A@7%To*898`nNUO5_9 zc@6^ z26hEo&lZ_9Ognf6zhAaqXfp0DK^iIuNu~#xMdwHqI z`{u(C2Nfr?PKycejD{5lVyxM#D+)eYT_KL@#b#Zujy^f>R~$9k%({JweDc1BIB89q z^#mgmKKZLFP9!07PNahGZCof-Ptp8!qN89YuTl*S%zIOdd<#`WozFO#zsZ^KEk3&H zOpZ10yQ6UR-q}zWqhj;74;-&Puv&F7Z8Pt$D7yO4J=E25(tMz9;_9Q&Rac6T#bC37 z-{a&^H+w~kcb$%Y6?v;}R0E5lH${F`4@2D%Hz$kX;R(N*hE;c3ti{Nfg8!4QP!Hc? zi}%xx{&nwHJp$S+KFk#PH+&EE44JeTU7qlNwz}#`7qaA{6a)B8xG-9jqUA?Xr-0@y zYqU56%TMcz174_xc_lenj>$|0v>jdZV#Hd0-mVzfaW>35t=Mv0*(tEoYRx;d&2nNt zQXJUj9_EufX*qdhGO#Cf&4(#uHKnT<^g21r_pYMVm(xx`Z}QfBOAM^OUMdcH`!MWk zsgu>T#bnSx!`f9=tkt(Giox%?!u%?Wt-iZD1rNVp^Q&#M`r%U?{Qi5GfBmG@&)~`6 z(bYA7wvaV1QZeKs4hd*cwEmUo6f(AjAAqzQSpQBf4jETP0$({<&*V&oOdjP2a$>D# z?6v!1Ic4*l+q1dmKw&(}?c{tV^wgSkRB3(bmQzmk!V z&x$sSolaphdHj$m1DmBc#bJLQBB9@$Y?g;7!{!_Kp}bg|l`%zRu?q>CEw)*mMx2o4 z_x!MhHk-AXVr2C@f~-v1@RuhM{;D9dAw~jaNstN&rA30zkkFPSj2lTPgd|8}6V4@x zl#)d2Nn)@57j5tT)zqTzU9a>&5{RPo60p&U4MB>bqf&w(1PB;<=%GjxSc~2f6%}bl zRHPfR(G7@56Qd#`BF2V@fNZy0QPI51z0W=OJa^ppmuHOUFAy0Jk~Qc2d}*XQK+FWA*3xh%n!%B+tiwjF!>6qy7OW#ztvN)SC`FrSZJQWln^-%W!ywZp zF3cuA*(RaTCb7~csmbO@mre4hP0F-Q>VgfpY6B5%(-dvfwQVzuZ8Pm`vzWHoVYWHR zwz-A2d6l;LO|}JHwty3R*vqin%-Nzu=lLx>Rv8!-#Nv7HQM{m8}GYdx9=izUv1dFOUe7{ z3is7l?rUh;*VwhMX>>S%`2U6h$sxdGLwClvVaC|DliN?d)ja~ggk?{jzH1lgo_WTn zm112!GCHe!_Nj>F>UyYes6uJ`s+iwkqM7Pl4uj_&yL>*x63W0^MEn$fgi zBz|hNYT(H^Gn02(&*bhOt=-Y!){P{DA=gU4Fz8fs7%r?2ZZCK4fUTmP@5;S9XLr_I zPJV|*E6CTUUcYkEBuf?o&}O#r7|oIhaz9JFga=7*qkvF#;K`FXw{pb24^~?I2c;76 zSMD}1xRfcNKeWL9GzcN&sZ7#(pm&}AxeT=(Lizr|_|7jRc46eR;pf>qbh4j^5Xi~m zSkaz%@u-C(uP2HxwIdBk-qpw* z39xw0r(uXbh&75r`TK+I?ehx~p`Vk-`_&I$bk;$-7CZyzaEIFaGxd!)m-KI`r{IRrB0;u8Ra7XSdIQyBd#aU|NN>@?2rLz>Q|hk`pZu- zZYaDqJ+tCt)yHR_e(dUc`Bx}pf|wz@eQ&w%w^RJ07w&=7{Qqk0; z^t<6cGO;D6QgdwLM&G4g{+b*rlkyoCKb`~nz+NE82Sccss&^?UI6(gb!ym*8Zu~$z zX@UlAI9#Vys^lAYs`i##)kFcG4G zW$_YNjgrkD-j)kLn@~^4<$eK!j@0JUWz*R45yvjY#qPm2L^&APAUD-W& z?LaoNZ;te9BD{Vu*HJbj0GD%I_DI;*!q(ip#7We0omdtNKg)@E#@2orgfyfS_A`Rw zvxDqyi#Ozi%r561kj-${7?~hZzy|H?F!2q2!?`5seLgozw~}L;aXbjLOb^ z)s{W zR!FR%ARkHHkV3v05Kk1bOawD{%y?b8y2m3iu!~{zJs-M z!6~q#1kF`1y}m8ikW~t{vE%fQ>#|`39_P1w+Nb?@Id=a>;T$&Qh~OlQmi#!#0~!F5 zi(XN^SJoo-$uLBGWUtbxf?LH zEJ4B6xy<{}+*7CPY>&U+f(~Ng+k_}5NUV&5-n9F?6d9*2L{Ll4ZvT$sanK+c7q$#r z=ky>n866PJl@gxE=ZghXFHGb~)&yT@giUiEV*k_y+4-aLQ{}Z^09OzEZxdexTquON z+mp~yQ0=k#^HMClm@QF_ii#Spj7>rZ0~k|Ql^Flh)z+%C@^VMbYNz?k%^XCK5NQfv z3d^xK=IaWnmzcw6gTybCErWH+oLrdf#oHEqoIHOvUo4>ukO?#2n}aDW_z}D>aDiZipp*m%N|4|Kc2nuMme_o;8`Op; z?U%lKXnyOs{P25l$YxSwUNfmKwStSjL2tyv^}A6Ez&U5+hBz%!FN&T&4=$g#*mwEf z_bUx+TYqcz!pl)u-s`efzpvus!q%+{S7}oyD{6=qD{=jgl0osy@*`I+ieGCsFGWE_ zOCz@O7Q*Hu&7eZVwM#dUH~4tR3hYMm%|gwa!Bj-ZGLaDn><|5Z=(!y6}Zo)$swD1#*aaB>`$B$nE@_(iK-t#oI29 zT+b}%sIKXN3EG{zZE8;&o_3^WQ`+(Sk#y>1cR}}VKr9=sZ`~(=5PHro&o1|ZTAPxt z3msjfBN~C~+(91V0fB9!(D}F^L572uAhb9Mk?vfgSP7cML0HoYE2t^&IxA%fZTB?V z{sQNFJ~nDx)VO8A%GYjdD1MgvVGGhgh`tfpXg-YUECKpCr0-Lg8CcQ=I!I9L=n%hb zL&hlnxGH6=nYtT>O(@iI6^4=eIR8fW_srZ&A;%Q@&WZCkuac(U$4rpX#BY6pa<>-} z(VqJob`@&cb|3~}631;bvPp{0zJ~k&W{=#(?i1YF!0da$LZWC_`*}#2mG(RN*JTT8 zd3^jx!zK4HO&ES#FP~N520kfC_ba@0l#sStM8znwI;RMHc>e-bf^v@oLa291?%Y(* zJ5sdUjOn|SBP7G`fU$PAZAk7T1>PXLxc`gzaiczWRyj%-BTmIEsNXTD2OH0a-WdtG z&7JP5X}T@RLR%dfejM1GJKAey7gj;VM`&Hp<)WbZ+ir0PSs=!V*x}rC)u^%Qc7 z>@+>KVE}^42+MpyVf%Lt=WAze6`&$IyG!^TuNBZ&a!0C%hvFN$UK(p+@Pj(b017Id z;H1lL>2G~Db|;P~#kmAtX5saOG5tKT%k;c6g;xhX?r^6@)=u9)vG$gv06EA)Zb?p` z0WLN$yPLWaw5XVJ!O&d})~d7bxF~*PDy-|E;)Ri^>&i-+o`pmm0TNYoVKrCqtx>S~ z61I#+Ql|7U0!dqig=K~JaSab5Mjn`ix2YQgL6nCZf0By12yoZU-nT2+uj0bC3s4nC zA-kzLF?L;X#+McnYs;v8XDc6bkKcZyJr33(e#o++Q#XbS#|N-Th5%`s7=RF@^+rENO$cKNKQ;R4lJew1wMD$`{4o-3A~3nQc@F;fP{rhK2~Nh>w6i*mdCiq%Z;$HuvSm(|U!>6iYPfp!?d30?M zG?BiA4eJAFBjX`;+oZqv{T7`P7RFQ4i}~M7UPh+$sIv-WOcAzWufOEKR`L#_*#NL+ zqQC(WaD#41oi&G0D4s;0LF#ei=QD}pIuT_aazggkwsiSa(?{hPN{?=$$w3?bSv^zEHu^+o&n zUISj8cf^v*$Qle#cV`@=Q4nI17m^&i&2 zgMwF*u0@^Y72L zNbc(S1eptiCV?;mo(z8hT>Q1P{yrhm0IxCyFUg@xf>HXw-?dH2qVCL_H;b`f-LB+9 z_;RjTlu`S<{a;{f6>4rXW2{SLUmA@wYcQIw&hm> zKV*)H9+sErG+~Qy+fV-K<2kZ;c5Bpk9$k&A3rK&S?$6tvz4&5}O)=GXhZ$AaTli2r zu&c~+oicfwddXjp{{OA%jv7$g_X(c7iL=8@l!3iAnkTs8`>0gbrP=rK@O2wWAe^%r z@o0daCX?-rn1go?n)gIrLCyY>nK&kvc}GT?Sz(Q3?WDiZHDR{@X-$K_wdnxO{pCA`&Ib>6%M$)iYdUH@4`JE-hqcpYkg(+R>OcZN zx3#6M4{3L~9AR$X#={&u2wT%rySGyU2blk9O@pVWy^1zc>Mu%r2_C#OUS_3fVP#)o zHn{SA^0l24q%jg`}??1&Te%Xst{yzIGlK*4IbNQA? zdbLcP;*=a^TbppP#GK>Qg;e%_u%#f{Zbew${NL8J$)0s#ypz+-yL`?X`y&)VEcI1B zcCCQ2#z|Mui;(~ImpC9p6WFNWbM=&wZ;rYtC%!(pB{hLO&VN}MjprC0Q)?B<9JiDg zysgxTcwY^KHsy81{@a@V`Q3Q-AnN;jl^=%r%NYuQP2Jm(ZrV22-#HhnoL$Ha~b1< zM;7V1Ghpf;WxDeAzpZK0jq0d|L$h{3Q7x~<|Mp&MjPf!h!#IzqnMAJ{6J!%;e&TqS zK4oK0w&l8u`eLwvww43c2y4};JNyjif{-9dnC%v@`ZzBx-NWLU!14$FM5%3P4@U)zBiFW5%Ei6x=_3X7CNi zm(xib`xI3eGGRMd65mf|gn!-ugy~WIw(f`D zZA@x=9#Z80K>lv2KTLb{a?LEIn9*zU7@14uJDOg`4iU{|kvkOYGVCE% z_3UKL+Dw)N(iQQO?!51P*x}rizbh%GHL6ypy743HCW<;Dn^5P zM-E$uQd%BBT2gPzX#+@Ebyc!u3PPb}8Bk-;aALB3a*8};4DqEnJh`-)!y#eTahqiX zG{a1Cx&{LX!64ovzwpG^oFx@>0%%5-7H)GUr{M`yD}{U-;5+B?Z`!ls^eME1sOf&n z&!wSEt)4*cLm|yFyXGSrj=)2X@E=v_G6dSPjV7`74?x2O!sFUP$>|VE5#LLsQZaZ_ zT4ARv3-hKEHuPch;u`M40mzK3%PLAIPY{pLo3xTcvqAqdUkol+JMh0~&!V*BE+e~h z-l}bzuBok=q5~U@S%^TYm8L5fMd+uX$Nu6I8QiQjE-cgwHXs2(EVed))sXF#BN{P( zg#hhTK{{$3SAv}hU^leU5-$-T69!-5X-Y3AgO!Ff77_ymeaea~iKDG;9>}t6Q=_WI0{LIlhRW074(Py0doV?n%I(1DJB=NE_>8_EURpU7Obx`to4trJrRz+twKm^PV- zZ}CCu=l0>(-Hb%!)~68|V$Dw|132+-NT=9qZ~mb@U%vDXRI0h{By!56VRV*AUaYar#M+hP<(QE4vFliowAl={Br8CVk)|%~bW4WWi^h?} zkL_`U6mNUMum^-`kKPr90q-wc+*Yub#|}fHR>fD+$VF+PyytI(h1o=bnGj zo(o4K{0vV@>HDr^BUiSyS{N#p8?7DP6RfWH>U^hP5>2MbXnkoXZle)9znl19v}Y{0 z8&leOA_*Y{X&0AZFeNou0|-S;+vH+CZ40#J%O6eaLnrVRUYY#^dqCYVvCv6Ka(Pc7 z)%+r(YCT007LsM1eMqKr>iA7|jg%KAvi+^4fo_rGXQCW}AciFa=!vFAv2lbP@` zie)T-%N4gS6j#hukKtzR=p!NPEI$2d@i*-0|Le~(F@O9d8;D7$uqe#8inX+6-Z^-o zRsYR-5XG}J=(lkEhxTl2S6HiWMC2d+lx@CI)6%kkhp~lH8?eUK`Vv_)MQ%V8ZQ+r7 z=REfg^B>y7)N{A(eP(OE$rvyQGlRdUYbctEkoe9~wG1_t?dIZ|mga211p)&d!|FTi z)Eo8>>{;Ec(uJLdoq@rPF<|Z;EEN$$wTvB4OCQ}C;*#ri4T~%}k1efF?Xng9raep* z72`_~(|qH$94p%aHQBw+cDK_*_;e;-C3&#uAKEio=Cv_9!Wc3|?mcEX;2(QQv@K`K zedx?Tum^td^(QvJ%Q7zvs^y5!km0e9bQIKc9)>;O=)UGKy~&c>`!mhOhEzS8?>=%KkoM zyM8;nJ50NQFuS|Sc7ug>LzQ;JO?D$)cB7+q_onT}7VPe?+6jpE4;1YmYTG|DwjZ~% zf6TO>2m|e(B->9G+CQzdpK7vy)@46EYX5xNerCb`#j3rK=pcHj=MB$MJKTjV5H z>?4yYF$(5O0~ z*?a)h>OP=-?|{zp1GrXXAU$CeNKs7oGR~bf%G9%#>WrbzCe=TrBNfth`*T!(D7rTx^S6_Ex#YzvSLC@}k z%zFpDo*(pHJb38mK^Do?N6FP!$JNio)!*JVz{@o-+%+i0m0jc-T;&?l>>Aqb8g|b$ z{JCqyqHE+&R}RT7O35u+$1TRhE!N)cu$Nn0xLbURTSAdrVwGD`v)hqwx8!?nDbL+f z7u{eT$PFSf(v%qKI*bexMy5R@%Zrg6&d5n&k07BY9p? z@@&=dylUck&EE66m*?DeeMYxnMd)|xBy_XifKmPPyCLQ`i>Ch*gLw}ka`fPvb zFRw#i!Vi5-IkZxA=v&pH@6CsPbRSy1cj)JH@X)WtL!zIDV8Ium%tGq2P^K)j0}JEL z!bY%gsVsakORSnD-ohgEu!v(U(hN&ti6!}qMV9bcqwKR**GJ0KXPtx3dT$@;2p^eL zAK79bxoRKz79WKkAH^{rr5PXPB_EYvJ`@RGRb^i_UEd9+z8f8UH+lPRj_}=*>IMr@}{qm(s_-$48+otQc-PCV~gP&-px1WB5->y_YgJM6! zYQNnrenvfh#$$daGk&H^etUlT(IouMl>N)pDq#Lq#OVq&<$`l4RCP?IOrYV8WG@@8o($HaIX&VXbJG_ z31E%|c+CWOF9jU>6~K}R^idA<)eZDB4fJ;i4Db#Nj0g-$h2I+m23H4$v;>Cs1cr?T zhR*~>ECojX3gk!xMJWeG>juS`2E{rA9rg~2iwKHO4N52uN~{h_Y6&{h6O;^&1*Oac zr7i`5zk(nMcA7FfU6-9<%Fc9PXL+-;BiK2q?A&5@UNw6(zlB}U!!8_S7tOGXm)J*t zu}dU^k0}Qq*9|^l8eHlSe9}AkR7CLU)Znt>;4{_1{$9oHm#Y~~dA%RpUwnU3 zH}==8s5kt^I))dd=^#bw(Nn>%bv2(Qv!fkvk*= z5PH0P2Knr-otwQE4i*?8eq?9gLiFU>!;8efi`QHr{kW9b8)p%RzgZ%p7)7Q%jmb2) ze_wy0bzdx8#K7wT7_*e zS&!*Md%g;HMXaQqPTy~QtS|d*heR+Ambdm^*C z;+XcG+Y@(GtNMHEt<*Qy@Bfs8TiX|I2xl%zr3B~=N_~}{Izt1%7yQ(Vv+-}F6PCAt z%{d7HHYr7yz^Cy?lm#jK004ly&Sh~5FY#aw^k!`+VFm8YlMUS>)($5BaX0Dn*Q7`B zalu~`CSmpLN!l-5I+L89Lr0VVqzQVeI$n3jSA=##X61 zxSOVo&-5W@vf(#75-bTcl(~0Or=LZ#TOqv=Cf1&cT%(>PWt#yT6JK*OuHMX8eV3tv z2bg>eY)mkP2w0f#XJ-eM>CAm4g|bPPMDZkoY|hrn9=n@XO`4ehMD*XHx!gMhn)XI*y#>hIHkR@A|*VUF&g)ijhA{F@rxL_<{A#Lgk zAGe0xo5QOJb0rg^9;)X#+veSvOZpO@vFT<((qPt}xx8N3#~>GHwjt#yk#lAF{mUR} zGZ!JhTb+sT%>RiffPf^(BpApI>9RlLwYFGLI>OsM!FIHnaO-d~pVEG^xeSGq|hnBPhFZUy?H#l zn1_ICH7&7_mlMZFr3>8Li#&pJcGVx1e_vqy?I_|YDtGUxz38J{3aP)l{Jk=B; zcDnmhsUZ)snR+r(Hi9g7bnD(@JA(6Mo}T>Cc8n!g=$lt2B}50fBfbL&u+^~Q+8Im- z3p&-V6i{EH`Tl7b_bDKth#%l1Vbw#GjK{sJ z{^C~tM|+m?JT`)SAqBQb$fqb`rQ_~3HmsW6F6NqGh@{>=?luptE3mXdKd-VJ{yZ>T z(xVbil_Thc2oHiEA9(;CbE0Ro$(AW5;rH*xUgsc*ER;SUsVzA1Ag}C8;zc)DgIG5A z6n(F`>CQdWpgH#yUf%;0XaF40y2_wF>zG;_r- znRftr@yEXXt&zaO2e{mDy@Y@eAYsM|7il*%YaS-n=`V$mgBQ$54gh zK{9ArF6MdC6&VGbBo+O78S$rpU?>#N++A~UH)3(VWqBTK{Bxe8d4&6fR&Py3t1Lr9 z-!Jd>sFbInT{`PRDz4g)n$ zR>{2%%!H2xG+L+=5Q|Vn!H8yX8Oj=HpAm2e8|t~i5%N5w;&O{&rkTMA-i6R16WRv* zIcJ}t@|GcKF8Xs`qjTfc+~Ia7GU1kZ{dEORF;P3B-3Yxj+1cvaeyX$johxF@v&%5^ z>d;7++kDquSo&BFm*?Q`zd!Mzp)tI(5#(uIzWSs4#(sFCoLF+?^!j&~4}R;Mt&Q48 z>$>y7QZ7?0f8VXj3iyjhm&u1bA){3o-5L8^CmXvNA17YDU)kf_t$g`6Z1OiiZnad2Ye|Gv$btIcIV3bL4r{S^wG~Bu| zaai@BOX$H9_JO4Jf}+Z>x?dy2wdCPH=Iib)jGk-llZ3SmdXKvs2phULD&)(z<)R#x zTmI}K3=fn(JyrUI23YX!Kiofh$L{Wiu)8lhMz=8Ud?9KwRsj^B8$6fYPjBC0H;C*` zT2C2yR*8|fC*SV4{E;34$KXby_FGK_qc*_(Y^^(2_Fq=e(NqdYD`_Vkd~zos^qy25 zYE7ZovqAyRpnm6fFkB2kvgwc1w5z1;J2o5Lr+$BQKK(MBU+X}`fc&QO@jW8r!PB9Y zQV9rWYS%`7ccjWvuPb>5_&7aYEP1uEeiX-0Uzxp3UQ z9(9CM!`%I(_htnOn&cEB>W2Co^B#paK9=o&oMb#%WljWVpw71)h+hjN35~(v`N_|0 z1QQaY3z1gz`?gQ7Oa2TO7XpWd`kVIm3FPlM6G?6MQ?=7=)~ps3Q2&j|<$ zA5ktuYKN0o%26otjf)~z^p53cKRnO=(n1V(J(jZ{9#qnpgOw;&i?#51D?fLMay$6v z)I*aKpcWl}V_E#5FcF=`EoRkkRSF>i$Z3NI_LYs*#?#=v$EdEEs=n4)O;qn{@X|7( zAbcEgZ^GR@p@fUh;t=2ni1bqsFBd9JLy4K*Rr7pMz4|og2kpJi%ZrPGL2Ap~YOvRj z!WOUFTTD&>IOJVGOho{Pgq=S^LIhmwZg6NU`{~eP(gPb#E7IH<~5QyE^7_nt$J6Qe&_Yn^p#VR3yd%TT;!*^ zA9bb!gLU!Ki}>0&z>Hd!6h6vW9CC^1(`bBO?mK13!RQF#U92{Fp~P3x8|9hm=9^;S zd@Ow9rL;r*MI1?ja`s9~i-XF+@^yFve<+fCfBfn;LFC}^%sea%!3u>TeHF}Qk zCt58h@RZ-_nSMAthJUI%#h3vXk0WO-N?s#q6IZY&F?;7`y^sAaikI79+s#sVvLgIZ zsl&VLsn?$se=Iv*vY9vivO4=U5AlK(PFfhQaZgi5-fx%GxcLLw zJ%a=ldss&E6w%8)AAvN8h!6!&2mx!o_piO~O3`>m_Zss)e0Kb(eu>#4Pk!`7h_~P& zW|sfp>AZ=XhgV5}M%L-MODHp5>_drl2_F<%r?lFK#APCam{y-j>sZ^YhPFvTO3&8t<_72%nooZ7%vY=ne*K zL03>Q2JN37^#~uef0k3^>&d@t`S|79gy2;ux|kF8ky4vVMWZ?6S-(zC=H@9TebyEA zl>avV4t0%Ae;>NPWpMs-(z}^K!Ee~h__gOS6>tw!JP44vp%BcS%@79v!d zygFw~Cv&0(3(J;gi-0sNNuuc@hE(3JW@X6~ob$UQPLS3&6dG+hNF-Cz(e-pQ5|+4w zU1(6MmW7kt9;gn(9l~j97u_JL@0^XI0J&wIF~dXkHc`x9BjA5-x`F>1b^E>Pc5AY9 z@;ZA0pS;5D&3uew#3ZkL3IDJ&UIjZyt$C^KaXsvL-^u+?biKQeD6L==+ju_x`Eo|t z+Gkn=M#~LjXzP;t*jx8m%t~P_1lD5$SDI5p0e>~Y{J>p z#n@<)R)u3m%M-h~%{O0_H@0+sIuO}?3#rh=yS>)4>B?QTil)|)Z59a3uW1hI+5=lD zYEh=O*`g}xf7x_9UYL>JPR?m#VH77eq*HHeQeNe&+HsdEB%^781K0XGql}gAeGqL0 zyZ@Rb5Hr8#mr4$OKh=MK?-ug0R!MDgZ~w5Clt&#Oo$K@G|J-ydn`TP%lcd-5>Jk<* zcWfPC<7*(2$2hBUQF%^RM(V^99%L|gyr|5msAua2u z;yS9fMXvvBx`F>1b=&3o`oec^rQ&d6s9V=WK^m`L!VJ~wKgw1GvQ=cSVKz)`9e-+> zXc;N>m*U~0gDb@s9EX0Ck4qMCP8beIueGH8T)2TmO*X}`0sU=tI8P&!h>QP_`EI^G%i?@c!_e&+CxXXUf2{-;izliVdAeDNfo zi19uJDSo<}Hh5v)YI;g>$_gBxoZ?+=-ti{lOpZ^Q>^$qoUps`ZU->itz3KKx#Be!w zhd|WSS0I^?pLUST!Z|DJZQGekrfNs)&t;I5aaYusj!rToWlzlGoA;)Kd7hS+BZ6Zr z5nhJYdpIK0-J;E9&wsS2!qs~U-#1i7kDD9UeA@@*d&@F=KAj zWJ&IPE$6)e`h*1G5rkq!fd|D2Ai!htJeyu?cj^I`jYmvI1OE!Z}Ze!5S@)=+kpU)V^4-KnVD^oiKXuMcu=J<_p`38!aof z#O7{~tp<@PvU~#Z3T_hxDGg3;(nEb4q2UpJg*6lBrQLb{tpMRbw1tY|JYAdha<4kS zk8=Ev{C&mriu1>n4F8>?)>~I1jeqWhwC4NI{o&z$7dZgNAQfqM30OePO)*2pM7U*p z$V+GNd$d>}16VT!Ur@6>MuneMV6C}!(sp7yxKS2XxUIQa4%hdr*Rj;*mTc3jB@}M@ zr$xP1yFPWG{Uo+0iiD|iF19+qL6U&KD6$jEy77WA;ywgBJ0U(}v3}1HLu^ns0jmm` zZ39`$lQ#Pfi-@b0VT!CZI74YJQL(!ZtjPG7*q1EK$JQMXT5x^`-Vhz?V(`N>L3quXO8x z2hZGoj$~|CPUfSC3y=$?469Mr>#*md4^AtdH~oCe9RoYSNelOF@y7mR@zm|>SO8Xqzuq-9jWDi(msP)k5TX9aJ712zqHcLVWhq9t zYf;wZD>Q7tl2mr#lbt8;H0=3Tih5}1XPufs-yfjl=)lNf@%|K!f9Y%OFm0qnIwx07 z_Qy+u`-W!?m&KJ};|RX0sFq)ns{w~MHy|V9wdb&&mM>*XAREIa2cY5a7IpR2)owj0 zVhf^hV)48Ul)Vn!`_`Ilj)HFs=?jI(sOkQw$1@qdA#ICCY6mF9w2T-s4bi~^HiDFM zN6kxUQX#fzrM03GjLNdoTC^>+4gd1$i7WSSIe3gZ86QNMMlgpZ_=)Nvku1;ZA~cNu_c-PZd?Kx}9Rh6>M3 zLs$*~kC-IcW}67p&1gA%ewG`%N`0{RYXL?XKrjJ>4Bk{J`IcKkmR~Mr=Zcw(dZy~A znI{jUZGbXYM=B@mDa}Lba)+Z006_Ez{ht+XX zb*5Wmh;H~>S`<^ZI#P)Ts8Jf!Y}41w?r*N5c2n+8zO3>PY6K$sif2 z-v$v4Ov~IY{%%nRwtcTkNxaQ`3dGFO+&;m=R|bXw$xt#4URe;zknqBcz5!&0hR9T$ zM*?CEgtj23ub;fF!9mE-aQmijuP;k~q99LU+Q=H*g->YNmLXNih?q8jNw-m^-!-Qr zx7QWO(rpe~<^;t8iWCs31|JGGK%HNkz8A{gm_QTx{?npfQzG=Q&rm?FDUoWCYP)Nj zjY$9$$!Tpu3m;F&pN(3>f!4`pZepZ)sUqFz877=8a}NYwkmJU+QW~@&PiBzI;I9jf zhag#7Y)n)4EAyeQwyfG~`|v>8Ks00zW!8ob%T9tQ4TB5~12YQ_L}38VcqBm`i7d%3 zF5KT<3GeKmNp>%eX0;Q@7=1Ekx4UF7XVYB+l$=3^{v?{f8ZwQA#AQ`*076H-U!QR_ zIx`c4Ps5ZUaRP)QG~iN(RD{r~Z5PS8X*r{iCq9j0n{{s#N#JB{!lyqPg^27NkO-kQ zpfqvYto3Z17x!LF9VE&`Ae?Q>dZ`)k|3ZU|K=KDW{;?B`Pj(s)5M-gAWJF;Uq|e^u z%xWmrhH&(e$4o?MEQEm&8g&4?t)xc=oCQ+)P&SH%a>FCwpZPKZ+=ybF*%=xPgMoQR zeOqKqN%|UU2B<+nBPp3k2%*D=>?u9yg!7gq$W4NDOdGVZj*evG)F8S^RF(;)aC$tQ zB1oI9bokp&c%VBZL(A)l_CsYh?oefCEG0ww-r_>WLbnW2l9G<^7DB5Izjq1 zKZFkLL3CM{qyY*+f4H8Ue)kigBl~cTEmjAF($;YiP82L@&|VTiJf>vJkYz-Y94My* z>rRKFIT&er`Wi9@!+=FZ2nQhmE_{A4O*tIpOyBIxK=fxg{cR_V%O>St6`Une4HQz+ z4!zc@P`jzhLdj840T0u2n0C$#BtS=QVm~~vGb?&BADaM3s~^l|BK1HnaXS^|R`>XN zW%}WgtZi8vo!hcO3RWLNB+=o+f2zJ^&NAcaGLW2iIBJg)LUHhHbOJ&RkJvPsVb2C^ z{;?CR#3j=5-?Al0$+t@s(~0PE^44_tI3H{hI@9bF%aGd>4(b8UYUvxd+oFFygts9P zddrYn0>bw%@Sv(Xv_1i$SmyXx00Gp;he)nYlp2wo!33Dlql$+d*Qej~6(^CA1KTp} z)lY`1<5Wx1@z;R}lH1>Q!qd}K2@E8D_8a+G$azUNRP_^5WuwBf5ZkE@E_mcX4O)kq zv7G^Jf)J7=u7*3(rFLSF>NpL~0n*NN0v&WSG&A-lL0dKP}8m9ArSGblM~u#BdoJ_{p$%226 z*_3QFD8L23oCP3NiPhw!%Oi>5Q&T3bMd~%nuiv zrRz@-P( zr>eGS5oq}O>9H)d0J1E5r3hg?9_i)spOIDotzS7O?9rq_XSo^3l7aTOw7&A11^-~| znH3iP^+Nv@>)p8TZ#%)kqLvON37<+nb^kCa9@+-sR%YwIC1X*JSi~0n0qs@ zc=pxup|CT_NnosV9|KEu3$FSjRFzq_>G z^~KJ&4bDKMx}wq=1o$N=h6~=ua)J&Q<70Lc;ukU?BKWtR(4v<=lWPzTskII86^Z0!aBisbl<&SQBUR#)s&xB0 zt1anRDRq9HcgSx$q4;uy^1D0=7Re26t_@M6+5Jgmvju>H*!+!>f{XoICsyYPgr@32tz;kmo*%OlSv<_y;%d^%6G_W&N8h2!kmH@_m5B|biXN&a90Jn_=ccF#XaqeL_2aYDj#2H ztV7BMht6C+Q+=Yd&MIcP>xDOm^nxRCOJ-N_yJqO!jUMcE^8C=V*Ak9V>kma88H$|m z4*WF6kvrMr-fZcOD5V!s${(XtL{SvUXjPSHHNEH!d!jcwMsGS4y*V;^3mC0_ zG+F~Z8?AXcTI*J{_Wfv`7ty*OqxD45RLPjFDlyyiVz%#z5$$k{*?A~NKQd+)7-MiW z#_(*+?#nSow_=R%$C$i`G5r{`M-)Soj5SkE>aZ7k&KU0iI3KckJ%F+>llCdP<&iud^{MRa5O&gY<$w?_#?Oe zKhoYisHry4*Ig@(KnR2?O$Z1`Cra<3h%_;ZO0z^kML>*Tp(li1!~jZHL+=oZ(jg!s zB4`v91ceBqh%Jf*5zJkF-`@M|d-pwmoH>6o%rHzCCU4gJ{GR7x^uvoWbJUBmpD$AR z7ips5aZ2HI{qT63@PysriATbd&V(mZ!&5GY^HXnxr!|GA_lIXZ48JrNp7}ZaGC!Ol z8j+;pL=-kf6!k|GKa99G7jgY_#0`D~Q#7(f zDY8^Qvdkv3e0OBUk;uw3kyTV`WcB69nj4X|O_6o|k@XKF8|ES#KSwt4BUz$R%}P-% z`cbVmQEj`UZXSucbtbBv8r5+*s`ExvS5s7Xe^k%IsNT7#zRywp{3y0)^ng?@_%dHvW0o7mU8 zV;7IazBv>7mKwWsIriO+*yX0!_x-US9>#v0i~aOD_A@`0CrbUIME$ByU9q8l+fDs` zg!Jj$%3tWfFB9KF+PhRaWCb822bM;uKv>ZQQ;oQ}Cs#4qU5D~~%VA)QmqeS`3R-10n+J0)S6S1>1l%X$1tHIMXM z;)MJ)8QlN1CSRW#)6$|r9Q(nQaLw3`TjknI2_-cBX>3s?C5oz+E89pW)Ssa?2rbRq zNq+sQPerwK+yH#l(p6s!Dt=ix!vCC{yICVg$Q5)Uu8pupdrN#It8JPp$gN>2+XCq`ziGxX?Fg z%iMOP+I`KAZ~+iL)eeeFDwp$x)ruua$f$3Gq%L-{hNoj*XNlc|-eTzckL zzjCcp_wF0sD;3(euhgmqfB&$Ygqt(*wNe=+T~%SFz&{&_pg6-0no1N-2}^7{$RzHz z-crO}&(;ZfWT&yuHszJu*1T*I^5BcoxaEwu$lNYZw}`wFg3SIr<{>%5mVcX2+vK&ZRZ4 z%aJ#AjTOaWVNfkzfR<#IhKK!Svnc(<8K?nFl~AAo-bW%Qm4BRPL4K&MXCh%}3gA<} z`I9t@t*$^w9IjG9ZFAbOu$d(Yfm{fVDa|C?dZl-3{pZ*@^U-VW;XXurgt?dP{HBMi zcO^gs9&LxyBL1F^r=hP*#+iwbFEvE{As=Z+J!=wMDcZ{Yz|k0-+20>2K!_E(e3=S< zIJrB@h|FCxWP+$CxP*Pgc^C(MjDL@6LpXNOe)aa{&WWst7do0~ztS%DE%@=)rY2*5 z%ZylKMFyxJWL@#EIH=) zMKrX~4Pd|wNg#m6&Jtpg)%rRosgT7VTU13;tO90f(ITs~8Ubp(3HAHMxYa7^`ed9U zFJ6%dhaUKuGr{7E^q-+&b3_2`6s=(rjwMIFA;h0~8!H|j&k=}__KK3tr^+wI+nB;# zxL_j0Op!&f+$bjv{WmAEN-Vm2K&TKU8cT+8m>2df#Tsi+z4PO#KTpP3j>KsK3CF4t zeyc(bq=cOvNuO0PlMs!o#7jDh4t<||;bKa1@XmO#sc6aS#Fo2>lW!BPOjC{qq(C&6 z3j-!agL61hns-wc=2PZysdI!>r7GYVo~`80u2u5vMdoQcBeb z5+J}03CL6ejmoOlb6JHx3evU;#GgpMaO!S)L_lJ(DfRKs)Tf)$o|~j41f&6M+gMs|W#E_iPUHGf}%&s2r zzUpOmHGzT1MC1${i-krjzLe$T8qbA*8$ivHNiBrZ5>PWRMiyhqxTeR3&pf~O;@34uKg{Ao7!^0a z=a=^OU!Xj(;P|QN0`Fpr=LP#aQYFw=UZ=#pSuNfndo9xJngZ{J0#ooHS+tBG)J$d~ zBbn$frcl~7J*Mb>j^o>3+F1o~c_#P?7cR&1$fn)hRC-mue^3#YDx zKfmz=BF#8(NO5orhcxslGmb1X7D7(dh`!czl$h2Y;$h_oh%1`KyMJC+3@i>dyK%!i z?x$JdT0!Z0K_UNFDFjkMebRJ<{lV#q!$NX##6`M6>9_*YP(cG_zrCpz2C4J%9C2ST#r9j*(F|X2H6N8<-qflf}L7b zN|D7@f|*;E%S#JxL`CK~y}O||4W~sSB-rRQ!|HU&NS~{z)G{{Q(&u_Znzn5q3}U_*%au3H zYdUJnzrM@4C{$>hdc)p3>vu$Z>+P#$wAA<^k zY*@+r(&5OKi$yI}uN!e)MRhY;+uxxft&BaN($s=E*Vf&DA)v-cn0G~eT{9hi_*WOWiKC=X))?erTy01(0&SoXz0Arnabv7IIi832?4KsCMb zd{hgI(q84WQ|CPk+oPpZbsZ`!s55DH7sD2Pi%+r#tX|yS31Ae)`nu%@b;u}NGFsI< z$`FA6o*CHuVX%{M+nyjIZ4R6uu`S$ssk9cs4{cPE#Zc|zuI*%m9BIJ(;=sWuAeh}R zSX7Zg0QVidgSSM50PsdWC5q+w*TbYeHlU|7OyvlS5JV97=yL=>6W4nh%E_WFc}G*as6LX}U5Fa@AG(d{0DzvEm2TIfyyF| z(BuR>A&!nDYWf!Iz{)h!>AFzYb|$#jrJS7-I9jceL(_)C$yof`QJu*l=SU!xfZoZh zFf3&LAd3P7bRi81B~78wI@Cy6cOCP?30UC-An8R90S(5WZlc3?aKTXDmh+fViq5F5 z+i30m@!Y{`BTJw)vfwOrWQcXJJ5fMTflF@*0y0ctAyStCRhlF=tlqwy?Yk&?q8 z!0lg_KDOvW{~j)Jb1oaJb=TFpunyQWY2=FqUcC*u)$n*WT9w@*Rx9jGL?f8OSRy)s z33dUZsch6+5&%^@85CqN3DFH)m1jd#$P``xn@p&1z)r=*v?tV#pEi7yyjgR5(dc$O zbw+V=D(}>Tbvd{K5ev0jAgR!?1W`h=C_R~B=q)10gHBY@$4$!h`Q(CU01RO~--MqRc7U$=IBLxwk#J+JwLSlz*DL(9y8f zl+mG&X9ajd*Ii~&!Q(9EljjPLrt4nGe@gn&F!h-j`g-iq+VZ0yZ-gxyX$c4>Fy}>; zTjj}!6~Y4#4p$_z%_5pThM$s}ZL9XZ-Z#GBD~X-ehAX;>=%2}_#WV5Pp(yP)*Rm`3{|0n<^O}6Gxu6FPI{?9Z0E|Z(6^=9P zO*#bw81FC*x8IBpP?;gG#IQGyx-X}Et^M*6=E!)I*%6W1yYwX@{3IY~bgB~O++fC~ zLlEBL^m|<6;z7O9(m$+Wcg;%0IgpIV3CGsOzG#S@v-Ae+{-V~egpS7A7cS#B&2~R{ zA6&dxj`?t?vHiLByG3iw0bMvq6K>W{pI6{=`kI3;f=DU_xk$_v7Ax2@%QJ3=4bOZG z&X~E@w>a==5fjZTICd9;Z?O+Q%?E{v?XD8#YaoK5=u{8R*5{@?`JD`@(4g<_j?GiA zVtdU)cp6GOhM3p4<8I3nL$U19rh~5=^;W8r;SiQ&yKi@c1>i9|>OnzoeEMt{G7EJv zg?}%;hODg&@p5?*u+0+iY3BIHx@+oK z7rVh`Blg%`u>P}xr|4wI-E*Qi&RBuAiro-$v-tt82BUhw$eXV!URQOL4IFDRq=u;C z;)hG@HTQ<&&FoXf0ic5-cpHNh+N$9HBcBvDC{|28r+8FVeSA05#@QkDj{OlSJ3-a| zLtp>@=w2GTewaaR(S?mrS8sipP8P+big^%q25uq*d&KY@_6o@1IEdc=;WtakSSKlXfAt@|s(WPkH7EYWu41!`+mA^aE^+qgeLMc>DqiL2 z|F(N+6?N>Hj#fzXs~-Xq&$jQS-pcScIQdWx_y{~gsEptf+;7{WjSV|a^q&cpVO!4_ znloW?7bH?uMcwS2)p8HgPpK~iySQ)l3J?8cR+>@j9{2Ou|8MtFTzAS^WiYcTc_=jh~cghDIE$j_lZ2b{^NCPby>DJb>H6qZ}@U9O+R@PLm1d{ zss5~g{Ik`fuQuAqp~vjU;tsk`cgZ{f`oW}dfpHX(ymDa9TG-uT-o@dQ=k;$dB+TDc zd(`^;zq^;OR0J5x0A4ZWYQCpY{s#{&uqT_XGhubp6*H}ipQWbD)$!yoPoTRthVhuE zr`hlClMk-#lQh0mlCop8EA_vJFU?PFm2l1W-D<+)J02wMFwXNow`+0x(5J^%T$!k1%4?y=5>U(nZh#YAr0Z=H^=s{h`->>+sS4zI?!9ld`PeVJ;j?)fCl z^`-d!3p1u=NZESZ9Ga&8Vfi_e?=R20FGOGRGrJKhGF@GA*(&2Ab0uM^ zSvjf02OJ|{&in7Zxo^{P4E`)P1IP#%H-4doyLNh(k{EX6@H@k^-)%w$EzZ~+c^&g# z-Akp5w{`5O+ZU#VpI`ZYD5;P?wwgS><&yR#o4B zvE}HboMP?xc#KNCz( zL*;B%jrrwDMtS7lRy`3OV&E(*GZ5CEirbDN((0R=Lmybkf;-F-_wk4DsK3uzk~;39 zRlb~VdQzYx%La7tbUB-Q6?(q=>f@#Um#^Qv!nv==EjW~TOPTP_INu@Z%QGjlM(r%{3v;93G`j2E^;aVP)7Ss8&`|c+!G+8@ zjT~Wr2E1VK$;Fk`D&c3ZuQcfUYYS-d@*_|!*UDpJn$ut5>- z>Jm;f(xK|l*;Kjna7->E!;h%U7xG!mxls#LxBRECKj?bi=oMftfatr6XS(eczA=+F zX40oT5j18G_cs_k{M&pNC~cHk=AdQLYvxedvX@TXq*moN&+)={3`!-YAO%}$pH2=; z)ZO?`U;ifU^&Uqsp4PJ_Yh>dK4%=yEFLsgTFsK=;Bopg0zt|-@%u-BIJu=U+To1bGAkGQ6Tj;p+o&GO z6Yda&p$FiNj1(pP{1z&4Lf%uU2Up)5;(S{62Kbp*ov?( zfNCNhv7L8Y21BO1cV$(dy0DayCuI97ZKcL^7>2Qoso}~mgD6Ks{$rECo;BA(F))x)Duay1*{FL;93dH$^36e1u?*c z0D2Gd;8N#6%mWy+@_o?1zW(;e!r}mlXfDu3OKSG`5g?#7qY9wmeCc9S)U}MGg1W@L zm?ZAx@8tum>2DuvexbShSMEO*CBtI`OW+3)zdCQlR;?|^{Ojv~oBnw=h>i{58c^4b zjj!f3$UBQ#3TqG(B={uEwILAg95^5~HSoCvW;`SE@`r=xsfCPwgqV&~5>6c4b=-dd zIllRqllH;A^UvXPA&!xcXd z)UbCLJ(03dkahyy&Z{{{KR!eaYEt_8@Z`U~{=?nH4Q2!oG~R-5*B*KU=0Qiu!=+uX zHbjM40~`zsy+_-sfBH?+1ix1SPsOwm1G`+t1>cgoLpqByjh6PFbbR?9(# zijt-uyX`IgMI1Ty*YI{KSJ>N3L7Rhs3JxYP)v&kD^kY_ml?*6D1GW5t%+Puq19tKX zUCj%oH3SQk1YBOw^n-i2@_owM_Iv*I^dWyR5-7aPp z2@CZ@C4@t5pt-?c%qnEBmL~yeFct4l15fqX9rt&Dhb0=|==u>f14<&!i@x(9%#%34 z4`L4?-qTr(O zz&ZKbAqkuPl$~4uF}Oqp-Oh{?N0NYdt~)j5d(924K6%jhq=6sJ5@b0EK7~6Rm%v@7 zD9@$402;)v-t$*=8CD%VE=db`GHO5#r|p-ehlb}x^Mu>w=-N0~iX>foiZ((5E-vwvWxS8m<9RPmKf}J$|IYiMyIl)_Lv^a`s)@iL&7KJ7>u~|!K|~;p?ny|{ z?x4eHBS;D|gky+LaU4k)3&?P5@OK)Ogej2YA>!^39`Pj@`0@l9PQ`)7Y*4{eU^DO# zMM51y-(L^gdMrZB;M}f%6)p`Fv%+awbeV9+mD_&4ce|qR*vcflEC$rrpi@45t~}0J z-rZLv&MO>wkhe|AAVJ17UWlZ3ZVG*t*=ejWK8yzj5U1xw^dUkzPVzFNGmBg#1^AJp_}>@yTG;_fZ}{g^KT68^V}uRi$(|59G;x`N8!Q`GxK~-yWb;sF5_`$xqVzw zoPUbbxfG=PdAdx>b<)#Id$68`_(^^itT1cADI{7X#UKI=3bv$*tDW` zpRF|Cj`Q@a$B4rm#MW>X@(w8RUue+(|OSHDh*h8N%50u1YV!S@>*;@j`(LPTM50Ewo`6Mnz}6iD$8 zE4(aZ4?W)H6G)wc2jFSt;rEx-=7hPRI2TZ(Ax_io`_f=;`Jg>Mp}ijVYKxG&8x4O_rK5*;=ojGRI$GL!shRK&JDzLx1#Q=<81 z^+sOBuAnXi-r`{{ZuFC;fI>h#o-%A4Kttd_VZc)d{Zf#Lf{0q^LVKIEU)0N)w?Yei zjj5MXvL0L6Fq!I1Ux4Ka*s9gKpGn`Zqkj!9C#c(VPuKBa zQ}F8X+;cCGZlGsCJklx2f#w>v#M*^U@Ml0w98DAr6NO-3Lj2+~Xb8mhL?^Cq0bggt z?b!|?wDiW?34SE_%kRLZeAuS*i&FP$6=`6&6X3)ddK-9D84rY!;dc2ig~;(3jbzlw zQI(lj4u1_UZ+^z@qDp8e(v0HZl~3{<;0C5}NL`4nwxM&tzi2HQRCc1N=F|5craPF@ zc6reP)DT}^CTh~?Z>OLSNx*U5NjpXMc?n~K0W_Mep0iN6LHV+HE2qjjMvdCJn*3jr@?9N?ldAlf=! zI?MtC@vq@GcU}NQd2}^GGO7azGfkG3ih~CT9CUgk>lIg%l#m=sQ(-2C<%3L0fR6?p z7JgEN0*KL)E>y$)K7!KhIF%G|0wL!nlVAWP_@>}0=u-$^nt@lGWq2B`wREd^C4&&=CEXk z!GRc#!&WpbAsnf}n-Mz<8Mflz+Cde86u#z&_bxWf0PWCeJpD8Tj;RKG1FE`=;SiVW zX2ir(68#DB5EmPTmU~B)**mu*_%j4a{V^KF>$Z2HjR_SPBKks>|EMv1+$??<`{RgW zpb9MxM*%QsM4dRzSOc$y_jKa|I$i+WJjoFEs#OGbZ5P~)m|$H^dw=1jAu$10-D1a} zh%l3p9iKY?2s$tYJn(e8{P*AQz;w}cPg6k;R-VHXm~b<7QG*9YW6wa4l)PsyX5xi1 zIeyd9mrY)1t?oWC?#^aGzyMF*$D*yg55}QE88l2~YTg!V5VAG}PBBqOU}v`T6iIYs zHBFKW1XAd_AK(~e<7)dS(y8*y9M7iRe#gZI=I_}zDb4# z&oGg!SO@g@qG)AbN@6HQq=t)ujB~fQV>8bBMH_t~prM^6` z7r08{U-b%y5Gwr)V;XjMT4{@N?84iqtr^>AC6W z^ERI`z}tCEKoe~XaA12bo-9p@OZo|m`Ux{(3Pd`cK7SJ_xde~o(FqrL>1QGj%OrH4 z7BsT<)Cq{Jf~;@-;o-f`IvwG9xP|jK6YD(%TaNg(o>^_a4AbEJ&|1>E`j?UV{eicc zdOl)Y>edi)N}aN`&cH7~lD3}|v_!Vd@N0x4o!!aKMF@s2H4 z1VjeGK;>wO73%T;I!^hqc05uulaQ$FXM1q17UzP0uQYl^%QJ6}2&kGzKnWuAnq-B9 z@)VC_g{T(C@2Q+PFkloE*bw2@{cQSX+cQHhQNS-LR}4c(Y(I{ICy8kaNx2NqpWzDG z9_0UOAlK6SWCA%Xr!S@>1$aCW@u+^cQltOgRr+fEZmh7U191pA1R}Bw;-qoTPt|c* z#DcTEF1OeNk`v4$&StHe9jDOkElV!=A7;e>X>8 z^tw)S%ZVmUymWi-^VUalDFlCYZ?s2rDo=FZz*E_x&K3uGk+yAeVn}JzJG%S*K|%CA zHrWw>Iyh8WM0TFBLyD2#OhZcRc;3+!L$%OF_Mh__kd>Qf!7}tyLI;qhS2U1fn^IUX ziDdID9Yk;}-rx<+lAV)9z&t6TEUpp2%V#Qb zGI1E5H!+EMIPNyGEx60BaFYUFLpgq#MAJa1+Kzw?ErkiNL(5&-O}%St+N=SpkcCe3 z9l0o-7N@Ko2V9SP+ozz6gg|EynK3$yS|pamp*(dcG?)@A4lZvf{fGz?DlcN!@93f3 z#wk(}Q5p%wf>u9+v8}c? zWi%t}-@&^g`HZVHpLf?(G1it6OtwLbrG17GR;Ks6(N?k679(}djfazN`r6|Yeq}wz zGpD;Zj9;9+Z)NiG{0vqi^3$D)0|!5Mnhe1Z)$R4edSZ462)r?}e;s^a;n>wXVO{q#tt~#@oQbvg)cL;8 z;r1uz@jR&C>gUU-CbeyHJ*)u% zXZi0&pg=w+6Ronuv%X|bErjoaV_B2tE*4P}d^Y&lgKq`EHQ1myi-xkq!@O0}5fn^- zL&PkY#-i^kryD5#!eDXn;0A60lgJQGqlgQ3NKIP(kBDvqlFk8_=EqyyRHy-}swQU}`CuYtHCn@Ai`Jvmz56aElpTam zz3THHL^E%lg$~~2OqGLV2?w+rjyMfKwa^N^7)>`nEsrtX`&RGXzg2lN>F~Y4Uh>lG z-CC~$gf`laB8BW1-EwN5RBXRl<9>Co@zbl;A%VmomGx;OIaZ2Pc(%>WvosCnt4m(z zt#8(!u+sLKsD0MJSd`=Nf3s`R3|hF>M>zqnA>=t0{dgg{F=#`Z4A-6-5I+#N zxiamS@AkHLJ?quG&|3HMV`zK#?1oSn*UwD*3B(T`rxp8NH< zz3(slxl%W`k>j+WNY!~I=+QAK-A70=sDFhG>$t7>hmc~gGcT6YF{Ez2ji2UGKQGnV zaYrw9TZW&`g6u@cuyNnE%&_`}%_|*ut^aIe#Ou6PmgpRDwBDYbQ~z4cp!1%4?Di{V zI*Xbfoudc(w&%9iFY1PM-aq_jd;V>mH`{VL$4*!q6i(E?F>39kj)%k=6ffw!HJj*s zaG}rO`bzy1Tb$w^|!Mo(}7tnf+tjahtFE z>1d`YV-ETT<(D>z2SkHnY-*m)Y?`u|0kMC=B8?#Z5#;;df zdlvPmW@CPOD+LohZ;boR9)vZnTwCdRYt1*~#Or-4k?37=v@w62)A+5zp!c0S)%;1B z-uD`h-sJ=R=FeIizc+;SzCX-2pSrF0qdBMd!wH+bnMw%2^!dLg z`v3gsxB0Wu#NSxy=l|i`04OFPf(NCUpduco&V=dV;l@n3H6G!}M7ZOT2bjpic+?3d zDg-ZZfhiD+M<+4SnRvlmrr>qFP$g5S(GZWh#l-aCg@>8K5AfJ$OzbRPyL#Dny)6dDWd_z;3?0i1 z-M1JWC^I^|#rQ;-amW^v3uPv;TTGM6Of$Eb<(8RU-(p@_X5P5P;#QeO-xkZ^GRp^B zte%xw%|bu2Mk0z@u~$#c!??o3T5X?W#Xfhn{Rb-cA67eXqT)b^n&*WI&sa6DqzbQ0 zHSgRC@9Szll@&gXYQDEBeEZZ64p$s}pmyk4#i3cX!*41Me^NX0qvFUPH8QG_ETVo? zy7H)^`Z4v&V|wa-#+827>i&+E{_g6>4^$pMtbXD|<%tmWlNTy2PR6PSBps~`$W%X- zTY2ibdSGQ`V554_t;(Q2_2A*k;0NlbpH-foRS$Vn8S+W}%#X@5f7B_cDvHR~vw7sF zXbpw8Ye>ZZ6>7d2r2e_4BQ&D2_RdgZ#SPX)&#AlFTUvm;SC* zK(s|?NQ2=ZW$9o`|8&ambF`!oTEBPrjzp;I*ZUSty+16S3^sm>L+|a|N3``(pJ%Fe z(?z>zpZ^TrQMw$n_D%ncsGh7Uu>N};;}$9IO#vnIciMc+qT+?hXn?XLF=ONV=eP|O zsOMR7`GpiEO5odo?zt==+7w5}4|#qZZSTey>&LfyaRuy01|ywGn_y2~{&JH+DwdPL z*`N}U_iC7E#zTQU6vZ|EQZf-uAw*iZmG;zDT?Pwz2_*Irm`l}=R-db!V8^wu*Tad5 z{&9d}TPaoM`3~V<$VUl3;%VEfO^1z3F-q8Kx@e1ugRtWO@<=dK{-=}Pyc!4#dtGYv zt(ka?_k}U9lC&L95PI`;Pt+cstyDJK(ZMI%H?3!f4%(|s-1@N!LRN(nnpl$Xz3#Y7^1U(W zXbruyF8&Ctp`A2bDZIBA5Ps;zwm89+8yKoIjX>V_^v0op4R0bjSCzd(+|<>FD0Uk;<5y?odf&(T z-n=v_(N0QddU~4w=3RJ)Q_1Oz-CG|!=jN2`wx%A=qrK|=c&RDL-!=|ysSGn=G{tU3 zB*{6;3Kl45(z@ff$RK5*vmKSq| zm?&E0Wg{!S4e1g+FFm(&vsf+x8N&13G}B?Zv7sL;8@-@-KUv5me_MKt+v`=@tIcFk zBhN-qR40$U8O&@|a+n3FXoD68U8{qx6Ha%`p<^ZEhYaF%yyCT&=$7#KA$ws;4BP>L;c*CC61ZNCT9-lKAtMtL{)P-opaAn4ncUS&!kr9}=M3C0hDZSdbNtfX zuWktp(3_Q|@H|Vg0J)!pY-hr$J2=2vS;Dc^_{9S*v$bdauUR! z0Bx-7n^W2C9fE|;bOTxVYW3xfYLt0rPBJgokeic4Kr)!3`=FIqctKudXI_Li(wlk3 zX!y#_uWnroB#tTC!N^bR%#REQn29&E&~k_Vdo&?wqq4o+HJ` zkzwT+@^Ur*nMj=V1{v@2Gi3jRWKTbp=gqc_)68$nzLfMl-x60mXjVM%ONhY{*(#d= zdF^Oa)06_)+~Qx^D*?H^`MJNnz(98H>D0p7ci?Pi;a%MIA->u5*WTCPL|h+y2kU?w zp@RE+oOKd@6ASI3kVc1jrhT#ihhMrKm6qv~kz`&92>uxLgvE zQ+}%OMJj663@&XBcL9(j#*LrPOBB~i@Km`{6?36xF5HrJy))JRvzd;&=8ZD4=pJ0z zwm{4tGNzd+3YEElS|Cj(h3?#+twIQuUobC^aJd#xaCx%enzMOHTrGkm^w*N>&IXGk?Rv}Vx+dzn zM=ks0>if;>Q{-wigz~QnQFTrTfgNmk8Ke3X8=XPM=rKX(YM?nFQ-D}&BUgSipBcVf zVDOF^ot6_TROhZ$y~n4nhl|K()a{mR`kGdKB(1copuS%PJN>%UUA5sB2{e;S5W+L5 zrnTn+YXyX^y&7dYj@CMLU2~nj_D-wry-Rfu4fc5y{k5xk)4qCYc3S=FvUc8R{e!L@ z8EmkLfiw?{pQ=qkb~gyTZ@4&JAlzM5$}cFVYBldRue&LSI!c4NLrVi@vx09Ms;wk@ z)K>Yu_L@(=YEg|U8=X%PZU<`Jr;_#R8eaHR3I1-t)K%5h=1$dIt0-vQ)zvEXzLogC z(LSin(X~m*wT9}Nu6=*H{^44q3q*%{$HQHLy44onbQZdnIUm>><8$kTe4V9hwGF1N zL#rXgw@tvm{zF7lSe^D4=N3Ym;1d`0ayXO-SC9lzTtZN#FB;M-N@(qUB8CF*-? zDeV?Z9`!7$PJ!6{+_i1S*G6Dp)6unFuDtgBWmqB^G9|;5@T~DA?8my4QB41#nH~q1 zYaD2VDQ?~?(cQ78-MtPi3+35M2}I|*Qh{jgyjoE`90n2rr!x8|(-|MMyCmJZUdr_! zsjJ;-eyeGDV0EVT_e}qW1?W`Ys~&Ba^S)O*TKh|lXcI*^!nMG7B)&ppz*M;7e$>F% z-#tdMy(v-sO|C;K!9!NGUbUVflq3>SOf5D0HuS0p5TIbzNN8vXvjbq>@w+WZ7&sU_ zV7GS1`U8t7+)P^=c*>6&-Y6P&ibl8u4|e*pyEX5Y*yXnautbJ11911O2ZR`RXa@%@ zKHRZ-!8|%PP+v4+uh8A<+8t;KGKAT#mh9PXpIilP@h2kfBrt#k^4ND{im7*e-9`^u zj8wf~9eZD!Qr~*~!|0X|BThQ^+Z5P2FRouLzVERELL3E~7{Yd}_7Wex|yXctEdva4)#y z(~E(6g@=;Z`xE?V#7@?5cJafj@2_wEs3pV$-?D&43TXHu5jCD{Qrz>#sp{Q_o7jzl zZ&4#Zw1--R1`T#Syle>;*Va7W(z&bWk(JfnXCx8Rzt}oV9Xl%S|A49)1EiAx5Rb%= z5#|)Ia{b9d;i!J^=u5#09ge^^VjaM3_1t{l*b21bB8+NFNUR-a(g)YZ9vwZc33h>Y zTp=X+4rMx?nel{L{P;Z!fEFGo66Wvhg9SSp(Y5mX_L${UO(qiHqWmbZ15o%Hm^xwk zFfe+;oQ8iIhkXOa1A?cFU&5iWSrZpFU`7;6bPV~>o89mt z8`{J{s5=F9k|g38o$%xm=T0=}Ncq6OB1`V`b@9^1(DOLtWhXpK5*c9uo@DIu?-Z>2SY0@DMtU8?LhR*JP@+8GY%jtXSQLK% zz{n^E&a~onVFE`WhA|_|hV6a;BmOf!fwP3_@bD9asl?tl#tnjvctjF$VdG`f zx_p9(gt6WgKKMHhA`(A=#N`EO;>Hq&)?FtUZ@f-V?Bu}j5fRObZx5Yb;BS839_xX$ zMm)4e^ouNA`^dfLiV>sGiPG( zpP*>wUi_q=HL$=0dwE#WDz=mh^7!s^$qk4`0M^8Y8}&7t^gY~Y)C2>$q7;-IP#e(^ zKltF8%OM1Yf`WkeId=Rc5358HvFE|Ib6{s1=3(5|3yQExC|C}B+Vb!~Zl}a`jqQrauQsS?`ls0K8a@l|!wV5hwAf$R>+^0`eX%ri=hd5Gz z#5^b#3r!qP3RN}|-j?mh9S_1^0l0%|!upaL#T5K>*dT5}&8b z`)gI5AjloQDM2SeeB`m$vk%^Fr=B(*pLzDtx8v;MgNpw_va27Q;vJ<9rAq0acro?G zZzM}?cjdw7{}CgtKk&>5X3x-N9Q{}c*|kyP+SN3#LBy=IakPxsG(QoRDp&333W@fE zunrE3LIC9g8VQ347{MoQ*b#1k_tdmmyCyF%10409)-(DjlLofxl|d@i_WIPN{`JwJ8lr&z=pnDS+!gW#63 z6bP|z5B*xFGruL>jbtx%e&1eKqwoJ^`@Gp6Bo|GvTPD|Yn3$tEt+(LIh%brS#sNfX z-0qqA5tA15nq&OZGll9D`zxHYk3L3!6B)r5WEpN!JCUN|?ACNF)Ppso^<)3JiTxK3 z{j2-@$M(69eWw#tq;a0xct&|l9x`jgI*4T&yebV_T!uWA8LMnZZ*(;obxP`KH~wM5tF;W8ZB*q0n5f3}AM=h)F?_?vf*n@ky^K1!pZ8V+q@#jc?i>FOZksp| z_3`584g4Iy*oNKe`_d5oUAAJrsvaJhFbL=<8oO|qQvT^Q-hspgDF-rMS%%DE+2|Hmwj1TwlFXJk? z7gMH?4bAT*7r7IEOFgN2^IY?EM)S4k8bQ>6!oBg{XWyK|_D{w}ed_-CCyIA_6V(9Kw*$y<4LRRJA@+AL3$_jUZi(J5m69AQ$#R@B3%%qqjc%gyAXw50zz0X?b{ptJ%$y%9Nllgx3-ik-buTSmvI|Qd52;Kqnxn?iO z7H~{}#AZF;(HPf5T%_<*E~DWb<;_4T+>P{m;(##NU9p87MXhx zUw&2U<{dM)_cl5EHC}+OEMP4+#(fx?dMZra-^VJDk}XMuGmd1(&B46rV7fHMT|=X! zOAPoLw+n1MFdZSjCQX*LtE$s?EW;{oi$0b!_$kS9Az6^QP0a#FxLZ>);w^D%P6Hf2 zb~tq|PbFb06@_y z&S|gPou;I>%!k?2y zlT8vt=?cG?Y3$HY`Pbq3$E!hi*H1lq5W)&_=>z~gi+dvpPrmq~AfVTH*|ab+?l3s+jz^Z6MNw39MEYHN|sVCyT)36XJOURz;^L^*D*+ncc+d zVq=EW#J{%BfU&{oFpwDx`_3V@uub{0WpJLN ztbf9nLPniKE;b^rs7>AHQv+L-wuWw84lYfXXK36|UobMb*3a$VCA*@Gb~Ii-7Dpi& zfj8-I!m~3&9evpH^ZW~a;ZDUs*A}+U=r@%)pj!qeA3tR<*X;Gsn2e7v4M{{HAC<>T zW_KKg_pF}>MvV5D6|SMU%ZXrRNp#@Jqz=8g_W|iuXWY#0HBzgxKrDN1G3c#dI^m{1 zP7GZO#s6Qd)xyFN6>uZy5Phl}xhgLN0(LZ?$@Ml=p+>)n4g~-FvT*Tf?caBD3`VB^9=1x|3tCltWR#2Jh9cwS zab(u>xKm%9{cGL7woh#Dc;XzuTL_|yPJn2}6B&bc(6B6zcAtXjSJ(E|HVYzfh;)G% zW7|=XzRbz`^YwN6`xoh>vk3yUTZB+;_v*{nZoG>ok?w9%ktT+bu`sgNmu*;pUV!-d zT5cPtHHY)N@?u!4KvSYpD;g96DTav?BYU)++Ss(^BE)$JSa}XFniv_4D>{MxTccP0 zetX*QDdYe(?k(M&kO7*sG-E*#mtu-leQ0F&2ud+AP%0-JP$h6p6=zq4>wc%SSlbDc z=y&i2Qt#qIaZtCh=V9=i@Q+#FYqXg)bXd%F+#bdW|7+>wAQH3_VthDy208EVbjClS zu6W){)Fq8S1b10=tv*x z%ADz5d`K3##km4_Zw}~gXxu@C)@?h6yp?5B^i8mZ`lk9tmn4UDQF`Rx=$pp)U|9m_n9|rr z`rz9@8?&Ywxm=n{P(o4qn59B;30ig#5rytAJ;a-WH5Z(462`H&to03}nt#PSG?g^; z)-d#m&0Cy}6DP*$0yq^M$PZZ!LQyiKO3av5Km~dNb}z)x20}P$vU3x;ucsY=eU6HK zo}3J!{N1BB5BQ#;!r-m+W`=irjiRPT?VU$LXYZTq$I5dgpG|?bOvU@=1Ic$ja+FjYK2E z;X(5|`b?50kH{_3HPeQG6z?wzvltzD;Rhkd3Yilc+Ua<@V@kd?6I(muB5&j36g&rV zBC+s=OC72rR`-?<=(}ERp>V7(t)UC^IMbo&|FlSZG0Y3bbXb2R4q_a8rUzle#4%v* z&nIMzX0dXrF+!sN*(8q+1hre!`BUxvpFb)d?Aqy3WiqxLy}@J!t) zS6okNK5-+rNatjHm>PixK3hS@1zJhrC9j=h>b zdCGM2r6J3J=XVzQe`BN%^=$Wk1Ao_mezDrZ)mRlN(?o8NzZ%rGiXZX@n4Zkhk}^QO znW2fc={cL}HJ^XdY~!9q0GmmqCfE(0b;_n%S^U!?UC`CDjmOyM8jD_C(^os*ckW-ZwTglI!Cxq4B_2ED(V+5OpM>c1K*Euh8CHqzkvWh-C6; zO(+*wU4?SGw3ucxy3YRFBBiHcIp2B7ke-UYU%cw)?qvIBwJOp5(>`dm&Ap-xgaioW z;rClb$B{Od(MPY2lihX<@b3DxSeM$n;V&f>%zFLh=3tRI>lbS3WjD$UsHeW@!z`g(~C9irUaWFw1`oz@uJ?LSAY ziM=u79iUGRC7fT~Xo>J_VdVskc>dcW4a|F)F!iJ*VIB=jh}bN2b*Bz(Uodaf?nNNm&aB^_^8_Jx{q=lWdagHQql3L>7hs?VS~_SswZcB3W@?2L@SYrO{t{A)%7{{`{>R8+#rv+GYd$PmEMzZj0`B5j?|t{sPyV zRJ1nFismQp3N+Mkvxgc5^?=DBoxt3kyUb&|?$XaKoOZebd~Ow~JSKqH(tS*QK_Dk^ z92?HFj7oB!akuFG-?l|k^Bc#RAHM&zNE;r`M7`rEv9PDyc91p|+;Dx20+qs;jDxR{ zDHuQnOG)0%KcxVJI_Y9G6kVVE6oWSwqFQVdn zz4HAfkyy#}QGbsI@*95twn!ORmN&>$!K{kATDC)2;QHd5cS7x(d!Dh>L}+I_g{W~n z4Fb%W4vMA*ke$~k$M)Rfz33NI$Sz$h4Otb9p|F*W(IjuQH=7BD?@Jx_bA73EyUD9~ zocyLkCA|#s-P>}3ceOvcI2YbGNZ)*|b#pkvHJ&kBDk=5z)mCUl?9Xxfq`!KB#AP%5~(cX zH#pc7tfhmPwS!su;Ya6P)SK~A*M$tdE;!JTpRctf75z)e1OxO*W@1Q$ zz0i`=5ga(8$0MrtE>vB6VN+N3_)tFK(>o3V;T#v$2}5Ntp1av9HHK)rFE=B-kK_AU z{~CsXAE`$c ziZTPop5tkq@mkJd@v`pcEI*=-DLGVcy=`PC;n8pe z|5Q|}2h$VhP_pgQ(VOf>q&V*qh^VuR|8mUg#q|`+A>FyTw}lhi|8ZsSc1bR%l`A~x zR~SKgvggud0za)S)u#FQhcvS8)9T$f-;9j@gy6Jq9Jhni7rj|>d5rN{I=I-V2Y>q7 zY!r=ScgKcifSZw7-KAvPr!x8tUm}la20LlXIp?M;6|fS0?e=?hg^1gU!;x8^KmZXG z_c{bS@+#%Q(;KzYp_ioY4r!mYv$|V7`pKXI`+4hjOXat)O0;zDN!JtLMiq`b6u9x` zHrnWbdLNH8hSGGzLnG+m!E|p%9|bDIqO8vs9dU~?2}?oI3s$%$Usx>J_Q`Q4`hg1I zeoU-x-Ph8MBHKO-!hhs(+_@Zfv;9G^3%{4ItMZBv#=oPIQmT`%kB$NRK?I3+KdTVD ziFi1fBmwT}8vj@K`C~Ee)+|2t`Ny7nz-j+S_$-Ax0ArN#(THd)Mr4T!1I2id9(AGu z(?uI$9YIq`zD}f%Ko)ADKgVjAmLtcV9>nqA2|KpV>MCQ;PYb;+0d6ffv(0*)7|3if zYge&%90irF4IX9#8meU!)0o=C#Lm5?j-gR7E=Gd38A?&4*`?Z8I1N3shziIP_Nw01 zUMcj`VV7z4%MzXBzfqH4??V^rE;LoDU3mzFhS}lmwoGH*#D3QiD4~v(Uh0m}FZU~i zvS9CWseU-A`avGD|KE4)K}8=G{rLy!#ePjou0UF++M@kEUuSWIfA&%d8;fB|fGUB2 zMA2dt6BQ9+;Yl3;5WLfaXNMSbdA^zQN_XPm_jx0K3nU06?U%sg4l~9;RDS4OaI7B+ zmeR5L)s$CGA5jcwQTs3^GXp5EX?!f=nwtT8YO|Zs%>VA##e=WXfw%%>Nkjx!gdPAA zYp~~c3z@shPI+E|i)Ui7#Kej?>X!i^8N^l+%QaMJF8y6Vbj!y`)YD3m^A8bHo?%LJ zQ1-y`Ms-DogPItF)@;{(&bzV2L!K&~+euuVokTrJ)51BTC(Yq@jMOM?uy?XFi&440 zq2Mx)vHO2_?BoB(K_XJ})WZo9Pz(ZnnI3%~{paW!4c%YR(ohkzFvK6s9w4ZXv>{?B z1!$sx!4gk2eyqrnHe`ynX$fMW3o>GClxpI6y-y2<^vVLXLOjWXz^Yu6h*K-RSiltJ zIXT!)`}GExmg#GfNJCv4wluwm>H1|BqrfbZPvhK#hWxbRYLxtp>c?LBmzt-COpe1i zvG>5j4aD30z&6#zdl3f|#aEbzJ;(5L377$z0w^PxHb5g2N)JSWh9K7>a0wFWjU_|Z zn?%DHC)=km%c^RdWJ6`U==XN!aSpIJ$Y0_ZW2OoA?IqSrF)vZ2h!Qk;TzZJ*l5`kudPhfR~@9s7jkDV}_UWBAUHFg?GPV)q!}yHbeX=barbuMjr_t{S%`CFW*4);FGI_z?cM{*mTF0`i5Arc%w@`9nD45?qnnoW3Bo%umxc>=~ zQkew_SE6B;TOnM6$M^|hUDQdHK#os*hzQ&O}*j%wV9m(17g(bCAx&{_jcltoC2LF#U)uV7MS%0 z8Hf^KUb80p5dtKris+!Q2P32Tu@{YFCxeC$Ohw608`9`MpJeT52luVdo!uQ)MEJWj{Tz6x9XSC zUtf#AzConEa!e>q+`RDc&HPB_t$m8L+XqkAe?|mH#Ag8 zb`ByLi)Jop6rqkRh6*?V&~|GP!G~J_6^m}3P40DyfF?72NdZ>dD)Q=oUYnzw02{@W zU5o(;dI)Byeigt)$q4QtUqEG$@`J4Tm-QiSwI1iwtd|61vjd>v5!Y>WaFpid zAm&^r9`6`g@YTU$Fsn+9oHII!W_B|_HvvLx?wQ1id_>_}jHikiATWNX0)~0`0R2UY zh!Fk9-q>>~OpL_Z7E?#($Rm2{`@V!rbVQh=ESSEbk(#QNELiJ=)4dnZ6XNkKuU4dh zIm|i=k`00!vT>ZiJXN?Cnlj;PtUg&|D3$98ZRZfDL&I@80PYchAi@kcLG;E@M!;jY zK?O%41zSozFEgT{EEu7>OC(2y06}tY8|x=X;ES3&IMu(;v+EQ7cvSPhllUuA{*J_0 z^`E`OE(%c`BB2rB3T9%=-TYLPhM$gJ&=GJNB5s9&rgpkKh=( zO&`M?W~TK@V7x>6zms?cAy0)FLJwU48U{fR!D)`|!e&jFc~FN%9G5tii=C-;I*Fp^ zG!Qmx-66J0BYv_ml?AO!du*Y{U`z+d(5BBv{M6;J#$EG>08xl;8Wh8M{AGmI`}z#= zG3z)AtVS8CDggs|3@JkE4|B~5umy+QBZcc2{hvvEU_J3S*TEl3)PPNzX$y!+Kf*x3 z%M*U1m%ThQaj5m+5*XfjL0Yr7rH~(jxncV=acSh6^3x-V$m6`XPu~A((2v}6w)H6w zdH*BWQsP>g?PMCSJZ^TuOY5yO=FtyFB(lod2RcW#zd zkkN2y<;dH+Q4FjTO9E7u#{pzcdI66ogZUJ-C<2ISYxJcpy9c#;Phd8E30Dif1yw-b zjk@Na#BykQ#SN{KX|E2Br1e7d67}^pR9(nm;jXQsL6FOgYc6Zwf9CknMZp*RXfPd$ zT)+d@eQ*1pSSNV{7BdEpSyUU``pC~>3q-@K*``w^6Zs3BL;)qgV-&R{Au`Ej8OEg- zeqDp-!Ixp>y5h1|xG*>-4IIP{Wo@5btxC52%y+9G7*YBpW4s9~VZu6w9Xb#_OeoH< z>U^~Hv+aN9_-RxryF3D|dTi$SKPG$z30V9p2qj007RMBmf^k*6?k3Jeu-^cVP`m?C#@46<%{~fc;*u&}R|I zdmIs3UG69pJBxNa*UQpntzVrB?=e{l*idfT`YQSN%D}W^^To~dz z)bXYzT)p5xlEhK+-~?z1Oe_ShssV}p)sAY$_)EhQ5!u(CgSqlJ0hYnpt2}JQI(-HM zr^ifOc7ihb#uwPY4BtntUe~4BDNq&z(K`)E?{5Vk7ahQC1pY%0yrZ4a1&azoH^B^N z$@ccySAzk?V`mW&2P~H?fz-(jT>?|3n5WH6NnX>3!6{dOsR?r}za&j{u-4gyJqY2WKGzhjIfCVZ&^0C8j~akawbo4+0f= zqEdxyaM?Q1;Y5?;C7qXjYssMC~w2R!q$`(*7Oxx zo@BGHFvABnbEZU6v9R#rgw3mRyPunO4i%^RAci$vh{ldGeZKt9Y<{Nyg%%oS3~vcD zLGmr~t>h2NSm#hBizFn6i&aM*Qyh|?ST#Lyb7Hym-X zpHP2>gxD7&MQ%zSB9_W4geP-P#JR$yb)}$VHBu9+l;$}E9r};()%D3q_Ok^%EGeN+Kv7225t$B&N_G8Ax&b`m&-)~&M(U=- znXs3T@zdEardI-HJ_LX_>t;?4X9Nu)xqvIjJcT49Xy;II?IT4wm`-IG7R#;>!SK?d z{*BAguP7_<@W>kvsacnLFk)ybO=>y2emQVfpwiOWWN78@&`SH!>I7k>?`UnJew7LG zgoh}o@iMFp1ZgKHzw};hOFcmiiP)iH$!%c7KFYIPYHi}^U32}qTHyLj{f8q24SV-U())r;j>2RU%^Xbvfwx5Z-gkb+IwD2x5aSjKp;5ox07!}ACgU4EeUkqC z^Al!(<1YP?pc_%R2_h9m1RU%lFP-dFTVmZxXPvpd(Hj6)# zljvxc=$DfmZI*l~C$-ot^;S-LuUY!DoXoFg8IqhVRf{Zx{3Z4lvR+5-Vhh=^C9m8f zuPv`&)S_S|ujtsKctu|6T1$?mGP96Mi^fZmyyjwy=39BKy%w#{^4h;zv`O+Ps#X+( zf)0DD4!?r##a3Mz1wG|fJ#7VjqgH(@1p~*{oLWr=PW~qfrcYZ!FNlrgB%NwrZA9SC*CPBgd{sS5&jFb!7*s=G^Ye!K&uo@5+6knwQg+ z_e3@SX;=O;)q;+$f_~M)(XPUmszr-kMQ>Ff?{z)?tor0v*AtRzF;#algIWoDcL~2* z>Ba6+8MQLy?lNt)a#^G9ax1k8$L@+NYL(ZzD}&UY-tK;iRjaz+UG+e%I;Xq(iCWFm z?wV(6wH@8H(-Dx^Te%Z$d98-HK}k%Y7kP z@)e?txJE6Cv{;SUlX@um5<&Ww0;U#D*JtXs!^0W0P>dAR!ukU-(ve2efApeX7XhG& zLognmC^HkmRU9Mz55-4D`Gh+$zjo?APIv6aa?iwUC*QvpxnH^3&~v0Q_Uh#G)k$4i zE&N54G26*8+KQzunNRJY#|SGE&2`xaboRq#lJGzQcQN>ED+$|hy8k*SNc~-^k>>-3 z&cjmR=drew#(Hd!R?^J;rl23zZzzTEfh0;FYfYWZxwNiCL_qW-kogV)dS9uQqisE-h>SLL}%F58B<9MO+ zE0o_eRK8zMkK6Np%s_GjK=dM;Tr?5!pD|;@rPEfJ9-;w5DAn*c#XuGf(QVp~l>kEN zOR_;`0r+9#kl6dr_urenMYI&BbdTRmM5mO^`dm`}ysmpkqRxxtwMF1~h2Y0zl_9Z) zx^kwBSbNDLQiLp#6MG_+9+M*caz7Wi>LU=x4Bciu71d+V(tB9^o$~@U#^i1tBJyO_ zhZS~NIV$2(R^t>W?`S97+@^_;3fYu$a#l7T`I@8fje9F1*Tk+}mPTvVi1Hy${|fk9 zp6u%lMM>2j*UE=bV164^L_HnYJQXA|KYFf^Xu((aDs}C9C06aS;pkLFdeTUihidKY zh;YNV$5I7Xm}-b5h<@d(V1vU8T2$R~U5wjle_PQkhWKRK;>==%=JMODftN2bWKz?T zJ>`WaE9D^O3kDbB+a#y4PD4d zUwuBS7v-B#yVo#^Oqw5cn5(%8OxBa;g9>HP2!FRp_gkIizjrGLx!+fZLPO*AFvWc4G)|o*LH;u3v7=XfcL>$^P~a+ijz%(!JzG z3|v=-|D{wzSjVZ97dfzCje7T|u-5TYK6@86S~B$YrrX`ezn;Ih!AZLTP6q}`ki}W) zs9);!JJ=1v)2}-^Y#L*4!7*_DZ>fYECXvZ&T)zj_9vVcdo-TcyVHxC@$-eyqv`{0L zM%81CyC-k%83*i}>fpr1(Jf~(PH2UZxVNdJN#86VR7u=lv<;X!9NN1!u*ZD#+RQnc7hcPjC zaZ18j)SEQ9ZQp#lWWMKi0RS71@FoPi?PcWPOxL<#pPSn{N4`xXq(#;Qi^m`=}TIHn?WCm{^x)gD(>Nvvt1F>KLfk#A-St( zMsnoci_?yQ1(@mY%h~+zv^t? z@$Bo)*+Gff-qbmPsyQKdvTsu7-0I2+&da&&oD;#B8>N~{;LOF{$&EY+K_7^>C@81> z$xY|Xd#IX8?S;UmIeR2KORj{fPM~0P#k3W7@~ac`E64L|mh)>l3mR1mo;epZ+$m_j zUeJ|T&^lhwy~}8gOU&1)$Sp|}KhlSB9v9AX7QIp}ns+W*xKp&0SG3Yq zw6@jczIdDMk+vFG1bQjaE6w{v+Be+VK)Jj;yOUM-;PL$KTgD2&sz>M?1 z1f*=KuuG{(WT|L=sd#s(%3Rq3Tx>ElxA8(Ha>UwNauGGL|B zhpXH!sYErYV&IjfYm!RYv36wl)2NlF_fDSTxT*+hRk1Er@sU*tAD;e1z_m!}I`*b8 zN7JYMUXO3*tF#Vj1y4M&5UIXdS%HjH zDT>i*b*XKStnJLN?M|vDc{3!R)RJPVyVdH3UFt?6>qb9l*SJ)0eW>a4dfJqvven{| zXs1=>Z9t|VIlj|$T9=V|Rp)ey9z;V22A+;A)j+^ohg23_>OY+{B+hGFH`Xby)Xl6& zG=9LAy}IFe+^szuW6^Z1dwK`B8Adlei}E$m#pwZb#c%@*{C=74xmpv8gw@1{Dvn6c zUn{;9_SIXqO`R+hqd0iSEIkz6NL|n@E|L8k1&p?+GQpeWJ~n(cea1;zso_qR09NSd z)N19`H7^s5AU7L0dO^d^piE$c3_Ftn<;_kqolGxFQH_9H`WGY~cI`zXAhzV<4w{~; z7<9YUp#K}?Xmrw#Pi#ebt?YPn;$+~o_uyZ0Tb*oYlhp?VS3ckd(uuj z(;Iu9*Y*vl_v#$?eRl2VKtU8Ru>0h2834{WrI}srXHkD%ThjzKmssj~c4z)s`zCnS zy447-((Ve~IVDOU1|CfIu%7iCO7wEMfxfQ}D9D15*g`Ne1@sx-ExPthe5x*EWw1q; zDC^dgi)Kg%d^ZaKy57!|QzF8x>w($8!D$b>d9T6L0AJnk{dBMxj*^c!e76{C#r=Y$ z&=#Cj7Ulb*@#~=LU81lxObyXv1RrT7VR{UZVDG6RE%O1L-o7K(VWYDVGmTNc#&P*g zkQ;UrT2nD<{G*@K^#$(m`o?Y(C9S^KCiK}Xy;5)UuyxP>;O41kV^;(E`~n6BCr7vr zM@$OG!w$)@V~A-nw4IE&A}8Lcy$InVKAjTRsOhdfe3r5awKsG&zN^~qI@wV;sop!O zoznL~efU%DK#s;#aNYPw%9JSpJSoIdP9IK5LZ|K3r}2do3x%U|L$DOtAu8f@Gwn#C z>tuV%WSYi|X28gv`nZ4Lz<^tS?%K?YsHt&U;Oi8ehY0(bV)whS<77?TNn?y$&a=e9 z`BAgtwZH}nmgocX~Z<1+eXzC}GqetG?jr2>-ahuN_(#{u3&VMzZ=SihD zE}HMLZLyPhWmzO%z1p!TsR^V~hZn=W?$Xh&0?yI1Zc;N!yyL3TGmq9@`<}o4lrs0F zcfk`uNw!M`(koQmEssp^`<-((6E#=8|jCY&_jK{raR=>cGvl zrQyN_PR;quY51d~g`m{sr1E8D|L&qx(WBv(h@+QJhhVv~5PRztYWNafb18OuMe%4w zg?B-{Xy*9i>$dZm4wA(@xh>ay1kI+K?UQON_n#Pw7Qevz<~?K<+YV6wx!Ni{-Bl&E z1%si}ny&o{Xc5|+scX?B417^9QNnGtqeOYn3S^a9Gm`)9thKzMNu0(v)eyX>N?b#=%n9GIZuz)YkLvNAtZ8J zYt3u?-Ho2DS9Ck4(M$A2OS-*Fs}`#wk9YJe=FLCtSfx=5qu~dkHB&KbZ1A;9fxC|_ z-dXi5vLf1>3%Bs3p)Re4m6P=qgRJzVZU-oS0w4Nl zK9uu)sPy~_A#UP3W6?wCeewnCPx{8PPA`Qhl`%_CfM%ek9Y%O{Zi^Je!jeSF!+ zYRykNGjIE~#s@au52fwAc)UIK_tQk*;V1w;At#qm#Yl#){4!tn^FQb7Py9LjTtaB8 znQ{Z7$>BSoi4>4cb$axoY=3)WYv?aDojnK3&oX^OhAhlW}+}x_D z2Pm5B);Jblj9C33{zS})@8j!lU;T-{~ zeCj*Ulm#(wLiaHgi6~f|f(pg(ub7rrgoI8M-=gTtLC4QxlKjV{sa<~Ha8O`-zh1y*J*Cgc=`$b7SKbJc&CW$bx&af34W z4!45J>@Psd4?oQ+_HRHZ(Xp;^HX;);W?NaFqyrt^rOA`18ko(aOl7=JUtx?NiMh`y zpCt+caFZWpd##Hxg9Eon5BQkF_zyA;O}ns^0TzN&nBOMyoQ)MrkMXZ&Y}! zpM?Kkdo_CYC{c)0yf?p#{@r1{n2w;tCVSb%Krrx45G~Vp0ydW&q}4OOG{SRt3N$X7 zyw!{(%+?WRWPg(zGp6cNZEsvcrBarBYmeI3ZWW+1vGSC&sNyXqn&i6O8(CFdscI*p zDr|&~)n?r~R163m)%E^;ZJkkpSiO zTOaFjWY;GmP1uV`^i$_fKr7?uo|cWT&Bgx@<@e(aVI@;ei%YDAfswa6;G{_UB7k(RndFPUidookUEqW^7fq1QL6+B3S1C8TbLTCnGHoUD4 z#>p@J1`JKF`cyes%y;-Nf6V5%a@O(I}6FHUdT zUSXX&4Z+1Ib}zG4_&O8$zw1t2U5B7$IFx!mwzi#ga-*(gArkA~(DU=eUqt2>Ltp$} z0c?`m%>?D>)zHEkaTxM@ z8UT5@UH@``f?tWJpLYVoTAE|Yo#}gAAMUEB2C6mMI!1>txZXYwU-Hgzw{IAE{Ax>~ zF+~rS(cPNMaUJ`9!pXe*RJ@ph(h04DyMScR*$KiUy_i1;)Mm=%e2eXB(QHN7xlwM9 z^#m)r8p~%gifOa^O+A?P!Lxe^#|t}Wjm#g+1xdPpNH@$s#{!hrIEXNsEObOIOQi(Z zH8W+W;S%&4Z)yj9v|0lcl;wDfK@8S>i1JwyK|c2-Hdra*ag!wy5NjQXoD(dJQ!0yR zByQdv`w00OfCRpc1Ds>W5IL9P*zvsmYba)}pobtalRuyNe>cvj=;!n&*j>lYW~4DO z{=afHzh6|3-M}j_4GqnHr2@?B%x6aet> z&!SZ0(NF?W>pfH1HbC0$9rO(U}#tBcrf7@NM&Af4uS?wTCFaH zG;PLR_vSpDgddK@v%A0JTKG+*Qj!I^XUp@%njDxO9 z8V>k?&CO=szX(mT!XowKDMhND zuuc)J^Dk_RK9EhID%67nn^c@TVVzgbin0-Q$v2~q?p`^2@7RBOHHqW;-3s{;0mr^~ zqHa>6j^IBOT&1E!u}7V?kA4#JH zBPwK$vsHE!o&>j!!L{C8Kmsb})>{%Rn;>2hX>KM@LN?PTM0M<)au^)Ekn*cqYT+7V zV!XbjBTX%ZVpY_E#D8)%VI|l0-U=!or#Q)ua((NT=sc$yu=xvDkj7B-dUXlk>>W{t zSx?i^;^_i_V6%FxXR0N3GhY>50MkGUKBZwaC{zq$&_%`yC;;JQbi7eU7q2|ya#sGOv0u7ZI>UD~6SiZ`B|yikSm zqYC56n|ZeMQ-Tf0gb?A33y~G@uH~;^qEx(kHfHM~8k?V{MhaSrre86w{3y*>>Rddd zymf=&UTEQ-+n)NK>Uno5W=@rRrSGmnn*q(}_GJxOc2QjN(nlua(cYWVieME{hgiL; zO6%in#iBB7B-EG3llu7Ep0Qo^=ZoE6TkQ|;tgipP)j7I8>UVw>!ujd=%q?aI@vOM~ zl8R%6UKz|`0|l{G%}kCSg5FVRa)lwFZ;CY*BuD7#rzZ&gE{#jOFS)kgOg2C-eMl5%o=okGu08^5 zozLPKQK@4wZKvFVliU|1JKNj}=smt^@C;*fVz~y80eU3mC_R-Fy(h*h3;yl$Co$|* zMEIeUs9E>LLn8DJp7JA)g>A0CN(Va!;r1*moplVu!Qi&gGg)&jPK64}gm`@8K(v|O z>jQq(Gkt4XgUdWG2-Zq%U;BhGnpFEtw}0c{lKmzUnGn$MAX+U&2sb38F8@rcu}qF9L4KI`^+PQyVT0?1hBxX)KEyC33+k$yztC2R8S$>x zEY~dWQKIKbaq($1_tuNa?LP8Sba#ew$h?ob zX?YRglonL@p=O3W;m#~8MI&x5ee`5i?On^L8ux`qJYZl-*?g-b88@QcV}kvkUQN8| zm~AX7FeL^Sne0CcaK*ItWp;i$)l1f&fcF5oW{K6Sz;ADEzbc$Ir(vdDm$zgowNu^u z)BC>WJ=dlNUSBqw>@}a7GMAh%nQM{?lmz~Gi){{}-g1qW&QF%PrH_jDo~tA#UGCLz z(f?9FU{slUIBaU-X5NTRj(O2dsM+q-Jnbb#ev!w|o4?br+%cbtDH)=gDoQzl$jdhQ z{|1bl1|bE;&a|{HVazIG!1`&+yH_~>L0y?S5bZvqHg?#n)hJ6pw&|4aXR`U$d{(}# zEUP#^8yj@C)Mul$dlpdC4>bGkL%`x-C-U(y7 zsb|bw%E0?*8YAc#pOke-*S(V@9RaU}u<=4->V&tfRpVECRBVE)hS zpEVZ0wE+oUJ6$O|y$eYmV70TZA#H0y_n{^R6Z;@@j8ke9YEKJ~sEdwe>{RIh{T>S! zB53JYso6JWu1%0{1cc~CK@_7RQLo6}rQY7v0-KmrqX*ob)Sxvn8UuBRS(mmx zm)o83Z2~H$I;mG`JroEdF>v@Sg1*TD9c(ks8-~Y$3ueMGEgV03Or;#SH5V+>b^lPC3*nxp$=ydTrK>)-ux)$&GY_YQQRR$b zA3N;D=A5-TJ+cW+bxJI9YO}jcN@|o^tc}x&cc%oti0>>*2b+1LiH^wW3O-h0n7uQZ9*4$#mtg;T}q`^Vs>7Jxl06|#V8#! zWv>ItU1r}P8eEDCDtVbc=KwPguso^$Eo&KzYn%Ns+%Fpjv3DP_@o^fDHJL~;EQ@yS zOkKTfH)n9w4v1^?DCAJ)TA(Xmlz;95#{dExxDZ*q{at4-6#%iBnRmhFcFVGLQjLnr z(oK7Zxn`DD=1E+Z>&!op-+-k1s(M}Ax`4Gk#KCmh>|xsq#HjtU60l#``tOI z_8YLCK{^T;s&oOVQU#<)5v41TgpL$Zx*$a? zp!ANkgx-YEs}x0w^dcQH`QLlrHSf%Pnwjre$;w(MS?4^@Z|{v#%I*?1?TP%Fmx*3h z5cG0c*;F(K+x4@5G0>MKy0C0H(kdPE^u~N`$O0{w!!?4O@-*hynZ(b+J%^l=rfhhyntHY4gy&14f|&z24Yy}K25wU>E_4*(HBL}u5y$TDH#UC&|9B=H zD6d4AA0BYE0Bz+jk+%F{AN)bVQ}^L&B%SSH zF>=(aO^-Wr%U5=IJ-QeR> zQWvY7_1j7<@_}pVj(y1|ORxBKtIXVcb3FR45}jJ;$$e!-Sb%5WHpJJfIV>W{*2D-< zr=pf$8*dPl4No#B{&t`gmF1?EScDa&ZM&(w7N|=-e$IQ&Z_^M~eBDpW+pAc-T*5K0 zJ&T^6keaw>y|9qtmJB0Ztc3h?PxD%0s!ZODU61hJYIm+E^@m!IqFr6_e%5wozt(vY zH|K4i9(nD2NJ_Or19gc|f%3?KE)uFA`t$uCe9Nd>(!O_OrpXutdRtI4 z359U_YUcS(bFFP<8%ot>9DG()M4u{{%AcrI2(VW|bEPDNS~dr1Nj7UfXF&Acd90Hh^vNnR1pLwqjd z1i^U1nBlw2S5dSqWOpTUL9W18ru`>0Yhzx#6hnXc%DiWg5%+GddOom7S=?3LSQjhv z)onf0ha6m!ppn@Hy)2Kkh{1>;b-KJC_4mN2SrbO(Q6$$`(9}I3i^)>nwFAV-UW@Z? zYfkb;=z6;L@`QnJmgjQ>5Z1~HK7B;dopV^(=a1nIoNvh>!9$5g2xelfEhEfd9*q@%5xnI5wzU18xgJ1yKrXqLcWLT zm^Q1WzoeUEvd``AJ>T(_I=?OjffMaa6mVx0&9?+ClqL%~1fe%ZuEk!q1>#bA7Z!^C{a*s_;TQF1R# zb1|ygDe^tX+F(AOq$0hZ2r@WmYi{uE>th10_l3#AnMBK75#$t?7X>O;PbA>?54+Hn z9sB09YAQ5|79QQOp3!jgY^?Qsy!%9b9dtZbo(bjyd1p_Hqy4b|e!8%3I$xv&T%>j{ zEs@Rty65l5OeNAj_twHreWGthwfi}~1QgXOT znA1Sak{~tPbs9fCOjmn1t4>M;BP&1Avc^{-qHv%ZPV9|ORC;b4aijjXQSFQ4{jCkT z|I4U$jL_n_d2(yH=k3i0r5>k}D+BN3h(O?})EfT7y<{=ZGwHu$U(Kt$w$5ZWrz%}W zOFhqJx97eG9Bgl$%k557#?VzA<n$}VZ?v+@#B}pq_(sjR) z{j#bK?pFj!dMfh1dYmjV&w=Wbos%I6PU@lJ7x32ip_1Wyug+*0@kVnh z#DqutraoRxQk5q>9!8tA`j&e2y*C&F7BNKAFk_hsZ-TR6G8#trZq%5BUTDaenpy~| z3Q}E)NG+<5Pk8P>7Onz8T{Tvbo3otkXuDVd`rH90J<~r<&C+Yp22DZ;_@W zMZ7hFACH*Z!H#(|heHidnZMDCWOpOErz_E&JhPE92$%~CW+FG4E*XfRH+C(|k9iWq z!rPH@F4+8U=B0Sc>EA~2*2}YVaTFGGEF32?$znbT{bQ{LOZqCg3|H4Mi(b~O2;(yj zP}1{`V2FYlel2abr4WJKgz1Vvkky!Q=;NGB0>81&t?`sB
z?#UyZsu);=7oZZs zhj-Q)B>5FnP@5rKZ36yumPT$1_2q-XRv|JImhR0mlQu6eWu_j*HM1t7ZhJ{|kWuEb zE&B{>Y<~6AepuY$&-zpmBkTdIz)h>c>`5elRU8_p-K3p;45*VYVGRdvXDx(EZ@vM; z@rX;jWK8#b28a)@H> zbp?e3(|-pJ=--KZN5P@iyo3&jixyqmP*^RAU`C`h&D*%V?3M3S6#Pc)fAO24H*plk zp8o;?_k~Tmc*jW*wX)F_Pl6c2P5qt6IZ;;n_bJQ+K{VdGszi$w&?A5@tG`8- zk=^ax{)@iWo3uL5a{Hkl<+~wt-dia766K5ER@bJ=Tczq%DgRM{7=~*l`g>HxzB>K{ z+f8BvZgi<}C|+k9E$ou1tVr+*{>}Exi5de_c_i8A zm&hwyY!r3UTVR5R=IirA%+l6hsCeOTvRYSGw?HGChC?dx{+NMSPz4t zK5QR~Wdd1X>H8;j_SWv_7KnV3QSZrEWYxRJCV`WuC@;4h8A;Q(npFE&*?-I6M>_j| z2W@I9Yf8Kb`uy#_DdDfbdPWTUT4`rZ-eYk)M89vxyL$?*LYD_w7jmM z2DxEWzAX1`HUW7(?CA59c9K7f>+(i!eT82=<*gsbHT^oD@0Rd1ETKZVtN-Ymz1**B zy}A@fLpH@9uh;{;dd{;5e@ zjC}PdK|_@A%4oo1>${vR%u|%*5&JAmU*8}6f3|Vz*IkRqy_?>MWxVSi*J1I9q_C>? zrFFsLB9qmBqTYC;nWMCd%}mb`$9;AE);VQQEME4XD@(Ul|GV`+ahxCEqeU{k#k%Tg zKhr?bQd?0{fSen{_71HoiGLQAYv@!iEg%x0_X{MOw9mF>Gu&VgGn>*J>+Z@{KYgIkJ{Ih(fh+C46wL^KU}7Svj3}%!@a*n`f=?#%J}ZUbkJZT!{_MO z8$&#-wDN0k#4WUNH7|L^XRCToD6koIGM6iuLFyrYgSEKnPY?0_oand}(x+IdEZ6M& z!k5ESpEl5NSkp`WKW&_w-#OUr!Lp1*+E z7p`yul-j7pQ!n0!kg=?;GvNW%6nfqc9wa-$kOqa5@+bG4LN8Vsp4j&L8=d(n9u|mS zu0O~v>6-&+V$k7`0V7-{s-6tM25H(aQGU6Pg>u=G{#deCpqT35b>j4@bZmoP4D1I} zAbi7`Bezt68%&W%Iz`CY(kK-NazF{q$iwX;fPU75g-9c}1=0JRET3d@)lGB%6Xrn? z%RC?GmSvC%+2OpfhY(nL5iViOjb&9IfJtK~QXw=Rs=GKW{UUZhuySB#&c|mvbVY(;>l)4ozW=<~2c6h>?tiEKmx8Ry#4g zd>|hY@O=v;dqx|5hRO^a33JV0jz9|MgAnArt}+iBr1L2j8HH?2X_kRo5=$~CKkkKK zyX95spCF}f@ji>UWiJQVUFq>{J?kylsu0Mo@|=@~&ji|DA~cGm1g zf*Y1KCwB)&Fo$F(kiwBlIZK7;v4`b9AsxmL78M0)B>jn_s$RZT4;VxaqAEtJx*`Q7 z^Tl*W2v%LuDJqqj98E~_Ew9T98V{?|mE)kUe?Ys*4+m_47%a-C39W!^H(&&bN|1nM`F1G)zD0EfljRs0 zEF=P;LAFChknD^Yx@sJ>7|p1Nq+`U1iY!3C@->xz)cc=&(TXEnFA>=;%0dWZ<7kI* zsKM3%1NHZE&s8{JVT{&j*~(YO@4^5QudZ ze9F{~b{ zhQSDF7>;#}_V*%oUJwh_Qen@Cg^GlcX0$U!0I-WSeh#b@oDePzZ-4tLA22~0#e~U7 z7l~jw?W1&s^l+>ZNccx^25H*~9A`A=lKE)y095!6RVtWOyN>^qCFX?F|DYx^6-Ko4 zF>m4+s|Ui(Mq#_Ev;bgC2l{P|^d0zo@-YmOjX`KVCiid?;(JS;(oQLYy&hHsg@f6( zFsvM%{8RIwY6y)Mu{^A5Oq5>1+o&SYf+Qev3$)nBCv^2~^wmP-F-TQ@OexJ8YdMyS z1cebK2dN?+)5DQ>@(Niq!nlceUPf5u2Ul`?B&P{F^UC_*R$o~|QLUG7o&UG2d`jLP zL9wQ`TT|iudK~<&U^WvZEU))X;H>YZ;4~*lr=0NhTPgaf&?jL59KA%OU<9`k7F|h- z;YGGlI^h)H80y=?97~P| z{U9x4N@v6V9ho`B!=6Mc15X466goeZ1rIXzII^~tS~vC6rs** z;?9z3Ikxg25D>LvmLehm5K+b92|)^b@O6o{!;d9zD-8F!K$B6wNe*#lJ!GI4#fbOk-z<7>k`y z3G(Q2a!34*ERx7h(vGd&I*ir$ zyx9gMuFFYY|5n2KyDTW@I$Z>ox?fzpUWJ>uK1E`bkRZmxMGgp3Alg6+-_DaH$yg{U zFx!69MU)YOh1Kuhq-|R@R{cAIsuX^?&r^@N5WR8k0H93i;FrfG?E z)#V+y^1m2GpU)SilJH99F%1y`_;r!W>(K{$%CW4!D-i;T!SBK(!^MB{sM7MNaz~Vz zxe`vpwB~{p_+kYQ*!{Rbe>&f%wM}*A@ko*<9QTVKDU6pc^p28bIl$TU(V}9vW zkh!YbCIK?_7!<1sT5td`HTUDL{wj#Xnd@3e5@Thgsyym08*OOwa2YBQq!0BfJPpz zv>C}@kB-0Upo~!!jA?sL=-^t0k}dW@7Xd47O8#;rk4P9fW0*Fh}`msxg zG%wXF{T-{vRVl1+6?Qz?lTl>#u*5YjjKCVYZ5#L6_#UVAv8|z+ogfaZ2cnUvyN?W` zMJXnDk%5U}`A1~+%+(kuQdMLVdMyKoX~o`;0Y~2nP;UzJtwORd&I%ktWdQW43_u%v ztiAfI_FY~4kbFW`o#U4P{rj>W4YJqD8K-PJc@B}+ueX7-^Pn(77(@9(BJIsM1y3mH>_Yi@!j4ejK%$``>`CWQ+9^z4fA2*@+Wm)ngJ>FfxL9@I z$SbCI51kYKLy#)SI7%hz%Ia*heg*C0AlkZ!z*@xN2;5I~V%ZPmcSQS?g zH~s-7lWt|hrhZ$-g42Sa@lo!~HU>md4=AYuj3(b72^WxUH2eo3Juc-rMxDMG3SyJL zeLV(5wIO|f1A0vnc;*C(tUrkaqAF(3D!6qlR6u-uXt8>rVxd%WCaBoFvBvHWdS5~R zJm}H&^AhI1vVL8r;<&Fb&$H7TH;D3q>TqpUOkK2GZ8xE@X{b>TEMBrv-(ViYkc~~by%dvCq73ddcdcMf!9jjMHTMQFPl4SX&&=Q{8d;wZl#a&2oNG-DuTvKvH2xL8 zdmu-Us0iM;cfR4%tofVbDh(vAr}UYs=~H)$2t*5CEA*hJX~XBT`p(_6FRf=)!+4+b z!}}Lvk+?q)?6Uja$z-&sujEQsTP8%Ek=~6QAsq;Rq>73l#v(Ak!pX$QO(g{$@NC#= zCa^2`AD+-TX}!7r|Aqg3SIG$PGlYW0xRmqAO-}xc|0QA7tbjuMEUjRzlFMK;J@DdD zHjLwCdL9d^)?@F;W)1#9{Z)jRj?DiJ0RBJuU+zy|H=j(D*boP&qO~3(Tz*Ir3gdhl zYH33qcD_ecSlA66VE1bXTcGzC`no}}MZM4elm9(h%bk5R-Z%cud(SDq>D7|`C_fqM z!3><2zJrle+MRX2_EQHWzW!0@>*KpE`O&Y~<5}XX@BBacU%9VB)jL|}LuF@L=rA%e zGYedpAhNI^$%90ujK+^7i6DTH&dS3omXLxv1t=@cpWHzrb+mQx1=feo-cieNM@q(j#f1~b$H5UIo@ za8?t;kmA3&jEQ1%9IhGB!f zw?0@HIYY{rvAz=1xQVGv>bTjB;7Y^Yll_!D0UqK$5lyO$)+Dpu%=F8bW~uBHp^f~+ zWEt5|}f=IxyS&k*MM zz&{Cf_in%GM=S*Y`t*rSF`=*gH|kVd#yUA zL~^}b`;ef_w*E2S7@4`PKHC>v_$lYz->)StY#YTj^Y1oFo3Ge5zXg%|nSA=8%)V7U zZkx50^q4nlw%D2_Yy10F3;Ryfzxk}4mdh*lT`UT^GaKo=+*2iF8A^%|8n3fY&kdg>TIi(n{e@OA(wDKs?_#AhkLIo2)iCG~(`vkW_O5i0H} z9#y=40bAz26zEZ8d;9t&$ucife# ze+0BGbsprj$yt4R4H;%2F9HBX=3F!o0*Xj<3qiarC!xFQj2sprVW zklAapBAGd@=c3H;Za8H{y2w)B-IgJ1dTd3uVOsxbC`0xVh-nQ;@z5}wi!qzHL=P-T}G+o!RoH0&sVf=h6bzRTx;e)Js z#xDxv>jptH4|1;<3sso@8pb{}Dd1u%(l-4|FwUGY`J&A9)hP9^Nzp^oZ?;U|P?qC= z%^GG*%R-roA2DrM^gcAJ%3&&TGu?PNJ!4ka!c_V!b;El7p?TvxQ(4gXhVAK$dFvHZ zIfiM|p2EtaoeNPBYr5&cI&0CbjHrB*y6GfnW!Z0wsLCAQbXJ(P912BL=QC}&YFj-V z%|X-@nQlF?oP9Xif~c)X-STj=LRrnuBkCH)x4eR8tro5j^*E+&?^rAA-(1WMy{6mG zGiQkeG4uD~)NS7)E1L~l=EmvqZU2T@o1IYRrX{AGz+NlcgB<4Ob<>>})3dh6EzB)@ zsXM{zR(9v}%&n*6JE5nuc7!WtEC{iSrXX0`L%3OR6lS|&taJ8ccUjs{bZNU0g4U0y z>{!}aCw8M0<{r_aSUPwSdokM94h*?0oq}e2uPo;rm|I!8Zl&$TyIDK3FR*kgOzb5F z%{g)tSb9_t`$@6ZPS?3vd$rAo7uTHA&AY69Mrr#gMb?jn?O6LQC-&1C<{pcqSO*>< z4l;VJouzVFf4G?)yqlgwIm@-O4n9je$X>U0xwF7J6f|*=b2{g8m%xh0AP(~=Y+Tj2 z*@k1y4nMH|biH?%ZRAbb;YUFmH(fin(aed%&k8@??xWbo@)7?EwQZg}$YmQZGW++{ z^5+xtRLMFYcRTjk>4~G-hM%5KQS5U|h~xTR8!w++_Mhu!$KR)adIhwy&+nxjH?7+| zeYwECa5{0^a{BWriom`IVkR2;Y`w#|IhH8QPuf`Ly`%4P{Gv-g=@7Ji7H7xtn|1P} zOJV-mYZM3Zhk4qgZHs!IoXhb?(EPN|a{hUGE62*M^wR-1Tc4~2j#Y)p)4`y5pIidR znhNt7KGxQ^fSYq&+x%=KbKdvMUCzHo>1Sg_wtnC2I5#XO&n6n?{mM|Bn~#{!r+RJu zt8zKF+|18srsw_ZS~<6$rJv8O+Xgf)5IA>&CeP^oVzFt^Ti^CU0^#m*Iumo z#V^){!0x+T`)|@OmIdvC`t7(5GAA!q6c&PpP+W)k%$IB0b}vSAx&9TIU;edRcrn?^ zbySglx#?#2a(031xMA{gJ80qM0)guU$9%OLYZv^RoBOoa{AxdQA$avJ_t|jz)nSoc z$c7#F`Sj$~QNsc%WCz84vBXR`>9q?z$mPCVHz%A;FN7Yqa$oJG6E4>6Q0EKWgwsjF z)#(C?K;Q--h5%U-K!pcr;UFUE!<+< zYKA2Dl1Oy%B=_Oa2Zm7dBq+fO54D4nIvSF?B%w&%@uW}TWIl#u0ZC*p@nk4CIkDdx zokSjoCw~p6NH(NMPol`eQ{=)a3k)g0BvF3DQ+Ffsud1vH-vR3!TRyA zAvpD@A@yVu^(>xx0Z#MVkY+WBW&=;N1E)POq&-feJ;&1$;Bbf$oa_ypY8XySM~7lC zqGNtT$39HQO-Fy-i2mjqdf{PuaXJPmBL=xQ40nbZ?$R-;5xu8x7ODVSYKxjG|)+H)4r?!xA^l@|un{*@!j$4Qtjg zYc3sIff3u6H*DXA+33pX*sF}#>)x>QG!C=3?tKG;|9@#w`cN%>*J`JRQuGI;T)re6 z&A8~Q!IV9^ZE8haUsE6b47B2lo1r`;lpw*Vn>_W4+W&E-knrS?@P6NXtHDG>+g>Zz z*V`-5X1L@u&}JVjhOcJ1d!4S;uQ8m8nmWC~i1qQ61};U@5(nC$zkeUiRW6sD4>>jd zJl+iFE`{;3qD)j2R+Oh8o%=@8_uCHe$w^&@W9Cmo{*73PM;(pEEj1s_+KFHN8@{^` ze9-@TUx8LEBPUX&!45uVyDgm?Fc7z_0nEHnOC5F{(_r_pE&HSS`|!sj;$^N69uV z{^L4n7keT>{fDZ6rJJQ|{qazo>+&Ob0T5}l3o!F2TGPi2cifyYvUEM*1_D6DKb%E0 zUiUYOwmn8!V5%UT%U5OHFg?sgXHR1%*z+(?*{gy|wcfy=k|zpW zIxP2idyBP}!RmgG<~>27(WgYg#}fS)n2i$(1Wx_UA!HiVWosZ#*;sg8baMS`^OB=? zL{FGRuMV?vje)8d;n4}Q-3df-WaHf>4A3x{ZGhhk#Y_;0Pb4tKJcAf~Jfm)`CgvR(}bSr*Tu z1jsSNIsQ+cw(5q7oyk**{HlsuvEn-S%BSKRN&Hl*@JO;IvtCHZn7L!O$n2&@d;%L$ zeUrB;*0`!cFFnNdG`?VSK5hKhl;<~ZeMSQKOPp1GUXB9ivSm;n?e)I0r`~bj?7xsc zNOVSWqawJN@7-3Z(!`MwO>YmN-Fjg(sG~|F$k!#scNQPtjVHXlfs{>-ogUHIdMB+R z!uY(;g5ox!($bK0G24yULRT#*k86Y~9lTRJ=xl>(4)8O0>RNyKk@~qlCekRt)l6U) zT@=}9_v}l5^$mU`t7ZL$h2M$gBG)aDOF?O1D(NT*oTu@~-V@qr1yuzGLw_gipoULe z=4}?iNpp{{)6Qf8&b1~j!1nZX#H*>T=X7Dt|1ipuNhAc)6P)Vr1)1`!{-p0|B!j6Q z^nZ`-$X`x5yXd0D4vog<9Rgdo^_`>d4mf1uq$$>v9NkL-ehKxMfreZw5`9R=_)IWl zvz{J|fjpMjlE7{)=S)e8{MkR>QL>Z;SPfF=m&<%sr%pqLXvt9Pc1Y{<9!=lf)b0z( z$7d`(h@%@6o4k*AS273#-pS@Gf#FOyL$v^*9po1_uxxJ~&9X!rXI4zJorw%5ZH|2(&;D)9(8*0yKqz-i7*HQ3DbMd~j>aB`(8-724!kMq8eVxE5?~*AM?S*8 zEkwL0=$2N5PT-9jYvK2I(ZA{*^CKy`(sxL6%N`=O5Hy%$;Cb8$2S{OYgpZHIO4BL}Xbpo+L#*6LIjJmui z)=J!u;Y2USuT8=1u!&-z#7mdhgOk?>`M_*Uq8&hfYbi07B?xFp+RX>nP9WYq2_pG4 zs40}cPfrrdDc6bpYjQknLyMu_H2`xG%WC;{V>td~EkSlEk=FIC*fiG=l8j!EVd>sm z@t|aRLT2*qhGfO*Waa<&wjO)dGzWz=C(AVFpfuM^(zGWHX&%$*PuHn!tHc~;K&U4r zFMaNKRh8O|mu{YwZnKr`P?jAEl^s!*4H=f5y(l~WUbgwJ?BZ`3Xx0>LRenTSPMSpw z7F(_Ai2Q-xDZj3r%~wHprvffqAr)DH$f{trs$lA`VEk6WC0xmOr;?wll9RpiW>zKp zY$f+br4W0SNL(e)%V*RCVUf@Y{diPW)pu-_@@y6Iyh@e5TK!J7rd74p%W9phYQ4s4 zgV}1s^J-)E8WZ8_%1AG{bKy=+#l+w8mb*2!8#R{jTDv>7_AhH)g^BgI+Q*Hx&gZpH zzty_3*Ln8W`s>yOY}CHEQ}>dp&Rw`Jw7)Kly*`4fKI;6wPf880vZm1xYKlhPPCBoD z%ifT3ry(DkyR3%n#)h2PhP?BJ5A5GR-ueF7>U-gx2FGtyi=XPTlHPkH3U8$p zs;wGpUpCffHGXewY?^IsId8#B;URlQB&F|Y?TGA0}N6bnqNsb6Rj!} zy3LbuRMWc6ud16TvYO`!am{m7sFvUCE#r4u{$#bRxVQZL*0T1pW#hbM|64QMn=15E zQ-79l`jLE!8uHyiE5LyTD`H8kv82IR@@y<+6BagyrHNN4kkUKOYHc2As`FONJ5XTD z#<9=gII?j$zj4<@+IZ#^IQ80YTDRR$Y!k|E6X0kQo@?X2XyaFGm$Yt23Fx&8U1-v0 zH!%(fpSvr{rYc68bZ7>5Xk~ZkG<6VR8H0-sLyk^k#ZD9JPD2i=+$ya`yvfOVdyNCG zJ6Z92ijI?YmveBJYj)R@rY?`UF0YF&Z;tNg7hSlH_M?q<+v3)1U9GaF_hlk9P#((8 zH+sUYdoYSUXpf!9G4FWp}g++UmBU!UDyJ=fm|)2zSfuiWf!F7B@+ z`dDEDO~nJ9@dJGq1MLF?BOE`v^#*!5)IT?AF%3 z(xfk=;D=DcSjlrYIOotJY~1?iI2RdIy?M~=Qiw-%$TnocH9<-3{Ya7GL@|BG!>v&_ zrAcJMqjT#q&#j5C#uF8qlcAhrD?XF3lF1_D39HM=7#q}xKj(zC-qg2|k-fReSf%Of z?@b>3Y!BL+`s^_ETz@(zVJI%7FQH_*5Iij_Go1T=hMaRMK4J7@^YopPan3I@)t*De zKPIj&W^x>6z#&t<`kL=;W^GJH6$ge(OJ)n&ru8pJZ$x&&H^F|3twjG*A>&-zPb-0v zPR)e5Pi?a(2SU>vf5@O(1l7?j&F=MwhmN-G$smp0rqKkuNquAEgxNWLp}wEvM!Qx? zNlWo5Aq-FlLV9~T;fSuRfj{0B%oR4#MjWU;eknS>hCBt zRT!b`k2L9HN}82N27(Qr$H2{h5Tc|8<#r_HD;@>_nIQ=?&#HVm181-HLT5MMKBDWwC-N2M`91o zDTN5zgGR*u7TEs%lDPVH`|lGJ8Z>7Bk;ZN@NkE0m$@QH#S3ERJn=*zLMFUn6i7orD>35oC=b|Dyvy+dW3@KFLk1F7ht@6!D_^yT_$u;Z&3E@EH z{_42xVNv3twjGG}H3~E@wigZjb6o^+d6SowlX;U9Ls}hfeYSbfS_V)=c&px0KCb53)hH)d+&Lgc?W!&uPlg_9w{F1~4)5ol zyt)e^s-*-C$v-%rU1eSLv|fB!xaixt_PlSp6|od0j}Uts>pYG___J$ zihj0&-}dtKC~Eb7o=POmjfZ1vMjy3P#U9U$tv~qR+$}X;e`dxv%*!8jCf>06UxoIK zR111lOD~0GTsv1!(#?O{`UUhl{ZVi)iYTCHH-#l?Mlfl7YVUW~B(Wi4Hl5vY?V7rE zeV$r3B_5&v^ts`Sz7&&NF=%_vk8LP-85XC}Jf&ZFLO!Fb;wD$2It6gUb!_n+IA3B3 z*ZW4?d_Md10GG6OcG5HXy*I_s;`>;Dd%9k*XXopicJmiOhwI~IE(`OQFHiRV{CA=K z;{L+l85w3~+P`^P>$kxguYQR$A7X&dBL2PC;)J{~BxDRcRfY%$de=n&^-!p)IA%ch zV6%!zy~>_pghO7mhUKBpRt=?7RzlRQx9%f34EY%~Am(i7_{z#RupCFm$+xd{Jz3lzjU)8O7=K^hWm5~sR3bFt9w`H9xXPlxzfn0`%DdycPH*54Cv#-s zlx*s6>73ic8KEw1=VaLu{=}8nIz4^0k1MeMHd_Rxxlft@8dVc zAe8@|YM4~u@AqRJjNEB@S3L-_u~z9#H$GyX zcKMOG`7-gK*FP&okV0gOtz7aEp-0~^XK_?~p zQBOb5)h(r(5~YZ~2wE#h4}J0XTiw-*&4rEz%J+M!p?s|lMm@6-WxRb1N2&Hhx2Kv5 zNk(7pN57CNGQT@){IX)+#68sg{KeR8LW%vOMJS~q0Kj4SpkZ=b6Q_zg>jvy~qZ1U@ zi53vqO1^z(u-}$U>4cyHk1~w7&i9CdGx{~jKOC{G*9LYDzyUxZmfaBCb zo1$dq@rT{lm~pOlQv2y!9nL~r>w{*v0SVqqNp585+=3NmLHZxxo}7*{ zeyN?PF~o@4gH5hcW@FWFhGN;MeJPo)*ME~e(zs(iXWxfE(Kd`SPATAfEU4dGd3pHd zrN~7N6|^c06fEY(`Xra@I1ue05);k0pYLYPtj^L~YF9&LRrLHG_QrEGBzzae$tc*% zs5{>lXmK&0s)s1fBxDET z7hFs-K@{|;jFDX4^HmumCWZhfwa?d6dqKd7fv2%=-)^P7hF}-=$Nf=~OV20+tu+8fU9(<-RCPFlm$h$Ouk8Eo&>PWOuIlov=*F~te4jw_y?_rf zMnU!mO%`ED11>Ck3s3n>^;vqP)ly1V;!UiE(hJjKXVY(1f1a3ks~gx<(7k63PT-9K zzEdsT%8}1@;m##3I$LM>lG(@Rah0hBaP65SaD0_~NjyK>1Qd0YqlAn(D2-aReUrn! z6`FINTl8p}5h{~E6^FjfYb&QD|BAX}C=$3!=}V4F+|fho+P%=t{6J&-m0_872Rbmh zTOD&(;}<~XYS?-N&^@saC*|+Oe^mFm&M>#x^Rdq&#nh~!|FM_P`|~-kuo^L5;nLc+ z0JxL~z`bLF)V1lGKq-AU4fXzUbNnc%Ms1du3|amVAfDCN(IREX zQ?fS83{)=?LhO_-wdRrU0!lAUb~b^pJpj!>ZSTMq2|pI2)P#hP1b#M(c&Py;qp^5D z_AKk?g|mFO<)B+c|8l%}gDfd4rA{Fda*d|ks?fx-UkY{PHgJxTv z^R(Q^LGurKgHYO60RrtCQ{6d2Mt^uG<9zu2iu6OCn9K&g{8lVhX5tX1f?cG%7dkKl z=r4_qNTnZtvgLA*8 zA`uVas^j^t!Q+->CD0A>rC4EEscIV$PhZ>78M@V=p^z(|ydfAaQ>OkK9SD$Bm+#f- zl1Ub~UPHlJU$*aU?;31ujlLxNH`VazkR%aJZr+3?aU$I|B+Xg)U{0~bsPBdUFL#U0 zw)5NVn$UPfJ$o>n1bR1;{2My)L10PkSj}SuZ!|Kn~cc)aHK0mZ-1f{UTx`2eo=il4tq+#WqLBIPZ|00@F1 zz-f*B8SU>mzOJwCaP^rs#2(4LhJ%*W&Hb?@yqN00rHxT*T+FmS-#=6t_xNmk@%tv~ z^oL!__XX%`T6oB&xVHcmjzJAWkWW6l>I_M#1v4fZclO^@2C zZ`fll?|?|l!KALr;ymn-Hqn0F+Ur`t~ zh$%^`?CSnIU|V^}t@akw2iJ=G{ZdaLt&tB@Bt_Ju6xHOCqiz>4_&9tbCj>X0G0}| zb}VcYB&c<(azmB8Pn<6P7WG>SH>BDFMGX@@4Zu<5%~zhOJ7Fk!9`H=~7dGqf6z#a< z1~4cFNsQxaGXm_3DoE=vBpl2rs61s1d4NSL;lT*|7GmmEnAkcdM5AfrrK!k&4PcmvVYNg%Ia@zTb&>uVS%c-X=oR{tB~{>zFd^cpLy&AEDdoz{9? z@j0dkx8%kUEQ(=7g-GhFyP=2ote3C55v>9A)k(X<)SPYcNiPrV~33)P#Nkm8VTm~|K#R{H;7@2;Yv z0N+R7Pr%H;5JPu&cZx7{E8PtW0@5Yn%+TFPcXue#I&_Gn(y54ulnRQ7&YAyjpZ!1k z>~(I=I=AO??zosWi}!io=ktYd5{nVs&6b??{Lwx!c<*HP-sxbWjDh&-kA4-Mc*ZLA zP!qkaKt(&oXhL}~7qZE#H{N3^fgF&)5e9U_&a_YioFcU{NPw1pX?Mj@Z(tg4Fk^48 zl%~Ax2uZKwJ*=2U`XRCx0719uFQ#)`^aLVv6}n<0sg3gUA)(oXCfeY=J52m>}Ux7g&8_)TGM24`rk00LH1JXWAhI}q@6iZd@7 zEP@t7#y2yg$s3>}0VF6F4}eVKE5Q@R{8^;u+8F7PMkP}F%ZrkaHd0@ujb-djak7t> ze_p&~1sYd`iQ}*tGFGUAtDxh#|{J zLSovnXA1A(@~GPwqP5r;dU`(whqr9yWS!~*W{HHN=6%@#no%oScc-9;Xq-MvbO6jS z@h%(J8erpjJTZN-&x?_R7e*vQAat>LvHWw((z)0_=@)M-3rnqwhAi#P7X^Q>%7t&JOVEh2SlqCF$tzkt8k) z7>0$eEE#k7c=YZan<{{+^k)0GqCt48b#Iz&-(v$>=D3xwg(SBzc$n%1<9%iOnK~+I zzL;Q+ZxD!Rpj87llE2tYn9^*0W!vHG)ZyKx<+AB9Drl-n8>Qv71keaigD%yRt9VpL`@$`0mO9 z;^PDr9ZI5VuB@4jOnu$lz0E*st6%_Fh{%i|5fHo0d)7)B_1>llQ@3Ful61|ONzQml}UxW$>4r+=?&4i2=Ta(KsIi; z1~a9gzi94AoT|AX=w?cx8WIWW3qmw?Mzjw1EPFwuryoK^mY1W}rSH1pe^+!_J1S0A zbDWHa#xd7_Ag@K%xU}ZECrFx^K`2rWODQU6N-b&-45YnmLi|_Dj~ar08%OBmA_+IJ zi&D+M0Pl-wn+QpAp3e%g&%GB)7JUzo`R3isy?oZ}d_J4TZ0*`Ej z>@iFfZn$8FPr2xzJP_|sGtG2%f;rA7n#(;j|FK)r+s?QZSKn-^u!9s)2X2>yc6O19 z4PW+lh~>TJY!tifrqB?QseZhILWGF_M6hg2n@m>9i*sE`k-A$LlJ1_iGw%{!3Tzf=x>LeB5qbrK+CdWczy zngg^fMdFXj+c=XgwE2%7j2U?Lm3j5Ymt{D(*3+V21*T?~jXr$#5#`-w|EHRUAB|?+ zt|8r@mI3+2rBcaOQ9B%|l>vZ9k6y?)%@q#FFB=96W@zR^>1B%9Y(8ZM-5lYcC*u zeCXrzIpo=@W|_ldS8gi9n%`e@C$>HQRm1tc3pGw|KDlx=Ks5wFBv{E39|vK`^&l=%V9oWy+oUDJM_A*%0xO@ttp1c@-)?%nem-{>ICA?V1N=UbS^m~X zamVMopf_)wLn*r6H__#BItjdj;xhfD1hQ8}01~-u-MD9iVj%O({@{Hf?$4hQAdr#s zCVAP*`Iv@qUd0JB@#-+=-{uc$yR}0OyyLYq^AVRvy5IiHCUrIQZ=t&oFN)# z-Dj@23-SY?Hi*7svb{NXzaZH6JkN-3lVu451CV?{mZ)GW?PR@wWvk$MdHOGt4GBI& zXO}V;MsZQw7{DYtIdSnC!6@CpL?|rtX9kR#> z_Qi$xy(V&bwpUhoCSe2$ZIEd-XFFMOI%V}9x5Y@JRJPE8e(5qtlV}K{w`-6x;OgQ2 zK4g0r=sW&inb+5?G~&R|F)ZHw+PXe?c2o%`M-OU$Z__2@$Ibeq0Zhtg{{HJLNbBiZ zR1l!;(F^$=KfoEdUE?4z{`{W$87*kB*C(u~{kJOHFZ(om+l&}mr&E@Eo;yLm7!pDw ziEAWLbi$I&!+%)NL9Y>k1uS`iFI2T;0cH4$+aGixtNJbnWqlr1FQ0UfM+oG{Q+EYC z4IclwyvftCg_y%!emiLT>F(q%qHcGgJ9BCFDigvE(t6%Q{MrSO9%IKJ955K9Irm^G zq}wQP(}X%=5_S8htT#F5>}N`hydU_1?7JVGsOk#T;YHQAs`4U9cNbmCePE`G;tPN& zvSunL+_?S+mlGhG#6DW=diL-}+~M=_NeFK0JZcy9x%MzHyCL{ZMhs2Q(zJ+kD)d1b zo3h?I0S7{O(eB4>w@DxjbPyBhn*9SeJ|<5;Wy30bPxSbQjMo zkq?2+6L#@~(ctG@)C4TazxmzEiF&E=eJ&0f^Bc3QI8h?+EBYK3JjHTt;r7=$zVM+A z>9vbVfuGSvB$L~(VL^2}s$$UCngx?jzloRY`*VIlViiC=2>^x4bWn*666G78O*3PK(-Xz#85+GP?)jSg$StWbtEF z$`0EsEeId8zdrA0?%a99J}hYJq@Y%Y%y0Ems8e!1g|=H&=wY~L+mkT@l3BB5!`Sq0 zN0i1msG`1{5!Mh*qUa&e|D|a_bl|lAkLcjHnLA=bSF%M_Mnd1Qs7LktvgQ@MF(hhD z0C2-Z5k>Q!wC&@bPqJU}D*^%~*^@HA-2!R7yQZn(1mak^RS69P3L50Wc0R51Sj&?K zbqP4$2%)}r*~OPc{*F&?z9rO`Y5)FejWIT)IT9uP;3~GHD>Nj%YqM~vjGYKAbXJXrneRil$^Xd61!9Ru@5zQR3JO6%veT`GW z{r!Ve0f0ROA|EAd+H4k`Ryn0ug&~Rbtwsdt1JcMzfDABW+ZNUp*-yhFmVto|x$OQu zW=ebP*C>t&84V=CFzK9r+?}lgYPweweUm&ZHY1=maXvyPG7;puW|@2fvJL-W{*tNm zB|*a&k7Q@ky+}^#YJSa?X;HX&#rDJaYbmfM2d$LO1Z54nHVz;L)j~pm)C(OSRfV7U zRu^m)O$zZpngxagA(>(?qM7mc1$2q3KVKwBq8N=d9=Pb0ys6L}l_}&+J$hqdv+-HP zZ~VSMg}%|>Aph3_0bMy|x7_^d0{DnowirQ8>55=qF2BYndR8>%TuXMCW6B8!SV7Y; z$z5yNjc54;Z56Q8i^rK6I8({{0bn43UeP`y>jZo`ke*JeFz7}?94q>;!|91oD1%HUTWCTp`7oloJdU;pd!`4{d<$T?L0w`sConfxpVY6@q_V3)?nUWB zjnJ+awW3i12Cjn3g*$|7LN zi9bUuu=78Un?M9gx>5)5(0PdQ8e;3{4YE{$|ZD+N-N>kJW4hym*Qlyep`M>ZVo!fG@BaNxCt5!^`)cG%->zg8HWiV^D~*Zc zq2C9S{hRRL#*BD%JOoI33?l}!026xNPcnnc+{*hG;(4i_Z*F?yehJv{ERIDLa9It?$R4-Kd@@z6WmRHK|*Bm@^I<4VINUamdG7BvxD7u4{BXA#tC&YZOZ?$hrRNS`&E+Io6hA}Oh$rCkY4CWj7;zY_h3{Ef6M2M%&*YaKcZC9Er?Nq*SW z^n1WNVrX*kIs~V-F z5Lin&zmXmf(fjAFk9h)1OweqDM_MY1OF7CXZl81aABl_edILce2Q#|CC2HM$Tv_4* z!{CPntdedQXcXht;qV(avP?iDnkU`BC4l3X)hAmF{@y_sZ{Sy{k8%l!+bbb5zGXi})#SWkk z`N*XESi)4B=zSi~w>MCRAC_F%hkUAI#k3cT-dEe_+o%s)4!=rttE66CPpBw=&%uqU zyFXsn6V;%Itmd9Iwf$i`IYol}Kq!3SLskJ*gO9MH7k?Qydj5J4qB-buKEtvj$SU@+ z_kIpti`=fyex34l+KPYLkJURC$^b|OfQ%ieN2=s(e4s%1jzygUq2>#i{A65GXuZ|B z0Qj6lK#X$2002NlSoANTDj;$DdK$}_S~Szis#d%C)tT5td%8XYA9kBOsLsG7gHeM8o}D;BY=hVy{I9=SbjSzw$)4z>N(OfQ=>uKtZZU zg{-t{bka4Y(AMp~J{Gf9$1RHVKf^ZL)9jq6*sKz1K-(~3Pj247Mico)nhu&u)-w*a zpOtKaS|cKM?(_vBThTsB?9xikhxR3eF0tBX9MCXTSSlMdJet(oiPy;)Ruq$vx53<5 zLYz(yCpOV|%SzH!KqXv2Jw;SHtLfQF+kRD{_m@LtrAlOnQ?!b3nWvJLhF%7Zj+a4I zW*L+dxRhSWa6YM+)NLUk5k|s|s%SUR(sMv)IxAmtA^kr}h5*Z=&dh{VDtc$o$oJtebN^>6(l8&e1I9m)0Sb8m9T&)6Tv`cNYcc@S$sd$gP z7nGODOsmBO*7*o|iRMql5)8jm%LBFrTedJ&lBaGZu{>mlI2)q|ynkJDH2BfBuFkWK*K5SwVCSO=H9hYb z64XH9pt!F>>q_n5D5+M3(ythX8%zQQ0g|v`DVKfYGAzAt{qGk5vI@t-(seUYQ*%$C zg(UisIH2(o2)_j0okb|LaeBXO(1(a%Hx)gY9&+QfCTX1YtWIRQx! zpGh|HxzYld2)*W{dfT@jHlaCxy5Ugxke3I$h~-P2Xh@yo$Bl7QGb2oeIXK3&9v>Xs z)0+3;>yjFj`1Q6()>Xy9Cnuv6XbVFn=$JXr$%&Rv}Nrn)b7?{GUL@t7XHx zWd=TJ-c>OcTMtxtU3?tuQ4Z``0q87RH9s;;t;2B;J%%E2TT08-MVUWV_J9(g3M&`} z8R6H%&_V^#0w=04ZZJtAKRmNBL60oFZ-l{Yn#K;L3RJ=}=wPUoGS@0rWj?8w_G>1C z%FDKoBHy}HC=0#NYJQ=WeD?#t;mku4Z2aS!22P9eZlXu3Gb9ET7z#TenH@<(FMv zbIwaZjAV^Tv|wO%V@NhGIb=zwH974dQ?STl8s0Gs$yHZiKEhKwU|~RUJaXr5cIh;s z?jg$2`dEOq>hOg{%eaH^gv%80(EK%$gh^4P)C!BN&oRnL=L9s?~ICf3mv zY_WN1eVi>R;6H<9AixeJd$@cMGI0=il`atals_E!m7xTKumduYs4B=?DMx~Vkw^vZ z5x5-&!7Q?Loaqu*cTPlToNM;FF^~MAFzUbZ>}97;W?v1IS-AYL#Q4?H!}@z6%@R+W z@4K+;U8qSOcmm&1us^cbBmiQ+XF;fa6s!c9sOz0ULQv7+&)>+7qF58Nj|;25EE1~% z`9+o$3*eo&qA$xH%S_$GW&u4mmdFL{C@RPRqto6KW2V zwDiy|(3arw)Y5774G;Renv{ud-e3z@Ja;8&lH>$~@J2%-?dlci<#T=B&!C4{AH!<| zit4_AoKC?o)un&UwX|)=A2fE42)3#+pJD9wJpsT5G5f(P-3_vR(o(A(QQXgVoXZIX zWz$_Np(x2{Dl6>y&xWzvh8~nBOK4AsHTPCzLIy#1F+u`UU7kA+Kw(7VD3DiA(Qvpo z8LS0cgeIyuhe{)rx0V6~G_0_X|BRg4=el1=eDzZJioi**LnR|#@dBTpV#bjf-d{n> zk27z$0nE{D4j2jpf8d}u(xHR4JQli#g~MrCawv|PjPI_AyYZ+lk!2T(^D|7NYL#H;(`;dstiJhDtGiglR% zL~ZKu^Haqp@jIN1xklMGg28r}9Gz)p*AA)Y8XP+3x0FFu-coBJKgObesQ;%l-?{F= z!6eCRp!!%)+y~^wCZ(7DH5myR#m1s!F~ZLb7z zF&2R$D9hbPdvTAC_%DSwUs#vR*!-fyCx$hcz7tSK+usCeiMbHot90tRFn)t3DLI2* zda_FgOZ|wZ8cg6gKp%g&a72tk*=eU`Ub^NmOFB&xNXV{}4&OPMgkBG?Wo^sH;vROr zk|qxiOnK#DlmGHjx$M(*8p?-S_kqT@q-jW^@(<&p>164x34`Sq|MxZ+11ND@b|a@bEDRqwJ_ zT^DKhyennH>wCgq=Y6DEkGv<%OFaUdk`eck=8D%PJ~Gak0ffGR01;~7nk*0kz~qG1 zMZsnDnSqQtzTkIY@+ZOe2z7-LRUjTvJJ5POqeW?@PH9Ac&)^yi>ut6gMFbT#^JAsZ zp*^>D7oA6IZE~rTy{YY{qVu)D`{G)j)23PAE};WjNaT>45h3K)*-r6vrS&Av(hhiD4isb?_b*?3U9U8EWab91$mC z(`Ifx-&-=TP>Q>M#>lWhqPuqlX$6Ph+* z*y;5c381CUxzLg=_0C?b`>uqgJA=z}F(7wzAMr4#1IaX{rEt>3PfxSOi;B*wrvNfz zn{(Ck_yJSXTFHTNe~bA3eee9Y($_(Lr}NkSwE0gIV?7GJQbueaIot@iZCk0G`ao7O zu*8u!l*6z+BUv6SwTHxAES8cV$csgakgAeh7<*pEs(GwuA0po};$$nQM%E1y{1?5k zHrBh9$ubBu1cm`1RG)>SI%Fx-ISG&jLTE_Ga6BoN!AaqGCcY?;uy{c7-!r*!+JOmQ zrAci=jrP-S$q|Z6G~)~Pi@6Xa@sF<5^L9_PH#3qz5y_54!i@e9*C3_DfNVU`lrOM` zvs&-w3WTjjp~8*F{d(`(M!imAK_sfcvG$?W!}vx~GP1uk2I;8BTN?N2l?qTuO5`Y* z8342!22J@IB9N5a=;R2I6tU*D8~@44p{@C$!M#g4fpr2Sb;5$t`(Jr8BCsH4Z@@x0 zWdT~@wtAu_nn4&ywx&hF98Ia?0_H|TV#BEPEH~V#{$%5NUsnE&qaxa%!a@qLhfLn+ z;uwk(2wDz+LbGA}f5pn|VGk}R6s<;Aior$S{}KwL`I(VGf|30QYCi-zdEhL}QAud1 z?_}xj54qPrCg=AC$#)`k71w?PHs6ul1L~e`tN|`U1b8R=OkTd>w`& ze*e7sL+9r-979AW`@f(plCCbgL8tw-k zi1E;qpi_k^7a=3Lp2?JzpO!{9=R!rRL+7Jp0eX`lYHJBKq9Gn3JqLbvjVUm_et-i) z6=?zHfD0d?2F1tvb9qesa&0;>&M{D+a7)MiZ^_L(2XFX}ijdq=vct|)ph(V#6jEvh zAG!%^`~WWv6W7Sq0>h7q`70BbNCf7U|6E8>>Lj`}HMPwM0^2xkv&L!dBPk~6ACzQG zFg_lnm}Cy#%EC>uM%_|Ov41KuP@k24&PPn4YM}lC#l>5I&bOQyK+CK;r8vLb@P6|a zEMh0&0{o{ZQ7^xeDfJ);!Q4?ndUQmAR$XwvN~ z2yCtZGvZUx1uKk$MpN@Tet}L6jY%|P_NZvie6|n`vjX(;X4^Hgfx=XoU0y(95nGNN5Fu zKdgvj=l(zOGn&`-e{sy&Mv?2nbmV60If_S+9H7G{v4$ zq&ic7q@T9Zl2Z2a-d0>%uWNXD+4>mtm?@Sr9g{8v+b0Cmj{w%#2?RVcfh`{&LvA`7%9Y~Hmm~^lsSXifu zQq)gfn4bbtpUa?c_JvS{8OzA#0RY0-hYchblT@eG+U)#Z2#D%x%#XTQqz7yL-%u7Q z+eh4NOGT3~-byj)0&J{^w|}Zy!!SZ#XACmaiQz!&0t(+nlUaN$GApQjhEll1k`Q2Z zc<|AgRrdI>4~-fK4>XMM3Urs%uk@?aXW}FPxjGC117errNEVR@Vns014FOXAT@7s* z|8vb-;{-1GN?|KSUHT4mJefz8rH{EZD|1}&WYEl#o^*?g3{~;}in7RX;Up+4QiRQh zb(D~lKhjY|b423Nj4wO1S^R-X@Z4$)9>7M3=c^k+)TkeVRAEj{y1Rw@84p=75KdhZ zss^KS`3p0$JY*6riF5w$9uH9C_Xwl`k=3K|U_`MYj+5lAsqpn4Oz$SE@ajIiPJ98* zrz^kt*d;}b`Y=AV(Ns|KaiI-StI7X~vY`H>vNY2@K5mMvvrm@O%z;q;m$&SP;qWmg zASL+;W(*r}DCB%ATOQ`5PX<>p)bV+5N23uXDoXj)2azSZSFdasj^+GQ9_XRuGZz0LeWtnvuNCskp!H8QmOG=O%76*NT+~TQiL;Q%!yE?J#$I% zlWMze>y=hdAgVCHS)Gz2map6ysOq6En0WC(>M578@7c$Wi@G zaKd0;;Ie?hh30=jSvCpT3|V$lY736s(m&9Mq5N7E}d$DSRdrXJ|yA z6!JH~MpHEl9?7)D*^7lHN)SNpohTx2l4OVxAO^(e*tl06ZHl=^wHKGk%I`na{x`}J zX6zd={yjK+)VxJPR4WQiuopv5p?w7v#Vh(HO{CGhh!Elm?G7KbFRIE4I#RO$VGgo| z(pe?QiE_ieNcKsh?x+KW_ewbu*(pvC*6I^n#DSTA;@HB_3~e14h;){lyS#djfF!^d z6#<@1bDO3W2iQ3za;$`57~(6?iLNY9szr$J;T;Jl37c;4|An$FQkFA@zAx+&!qp~^ zFv@UHq87ZZHI(w*NOJ~XZ7nDiR$!)S)BwtUq`n=hU&4g|OtZ#o<=hp_VjiO)P-Tx$ zWEts`r_LbALVS{p=W8+iS#=F@E<{%`*Nh8bBHmpfl}_HU?EQ!kKF{*<-ouyAA^OAr zaw=wRM;|x_dDhZ~{x`~^Qo~K1w2XqSKHjlkc<*xcHx9)IX_DESgI{E=7~`-X3I1Tl z<@B-{`4fl^cLDFn)9CwZRQ`T$$AC4!Um4Z#yH-r;eE;wdHbvbkezr3owgZ2i_x64` zXLJG(Ii=XOeXGILVyo&Bs|paOXH_GkU9g6x`TvQsTrA=aeTs7rP-j)_R!y8KgXtXc z=M0?b^i|FsFsu_RGyw9zh|>eOcg{!+_`se{UskzJAARj3{vkV)ez1+mS`W%|L6oFQ zRJcG?Z3J&OA{t7EC-@R4WN?%$%nag>Fdf9tjZU)Xcb?4)mhpNrrxE@)$}&*DHyhui zWC(Gs{DWe5qD$2TQnFLfWKmFI8N(5jL_$P^!+${)tpCnn48}lN35q*eR5ahH?)p>7 zNKmW#Q)^Pt=zgO%?4+{JqNYOUx2ZB(;Ng~UH}Oe3pvC1}-Cey7^8ZFz;>HM{pPwxu zA#rh5l4wL39%acw1YrzvZva%oB4cAG3ke5cuN_!p%siRJ{AQ7Po`Plm8-NTA zpxnEelK>}A@E;rg)*2f<>iC^(%=Rmb?av|`Zts-_xO&Ku{SkJcI+z z_??60I|pAjr_gtfVD`h6uZ$Z&&O0WYDw3S)OI(_i+}car`jkAnCOjNnunp8cV8ox! zq>HOu?}=VB>yvL9HBk1@Y`%ykK9mVtMwYtbD7&E-gCPNkeUCObTOfZ)Am=-NoFI@x z2@=GTEa^g<*ahnYga)#OUM~q1W(!UR2-hwN&6_|g_5l^n1#!+Y_IosHh7xR4l3Y}h_E^H>3Ni=$ zj9pdAbPutBlp@E!zFQ^~bQ0%T7M$VYOdOFWUnYFU$B^@gfa$TAdycHvvaIj(?tht5 z$xHn13lnV(GBH2o;!NdH%kn8dXwn1a^K;}2mlcYi%d|Hj(w*gkbWllcra8GVfV6Ic z20!7ffC45*K@|&ZP=~Su6w8a=1?AC;%9VFHwU(=y)}jvk^yHaZM{)&HJ2Y22;+-~%S|`R#C*hqo z3-z5oG#miX?E?@OJ@(x19Je38udz1=*G{j!X5ZKYP01jDX* z{ZWwZIJJfjmIy%u;CH^$^Il*K>lmd;(!g)IeMz<<=F$__Mteq}N=d7ac}T1Tb=Pd1Ub@XToXshk-M#XSIcAJ?$R5Y|pco zF4btL3%h-$x{qK5=*0`Xcne-|g7DJ-9#-hfC&CM8yml=#E#Ez=c=(`k#pj&X_lN9D zw`VA`{S|)P*LTo5_D?|-`i>m5%E1$4K=9OxJsAff$rKoXb_B2Z3gxT#XA`_J_m#^J zyt5iOI_2s6E+8X`KueXa4#~#8&pxXP_1mWpNDipxB=o?Nv|XaP?$3~Q|4Q_OP+UbWOgLxYByA};_Ql_*#p7OJ#z;?1F3{LVPbGNO<+5WgJwnl5tG zGP0g0D9|!g7faX$V%$(AV8=iMhzq@gBRX*7?i%m@T}ouU9sxD!aHUvD55 z%CSm1eHodwmQ+svK-(xGzaY7JEqOW5SA;&fXDy)knO!@5>Zn!f`*)uE`6=`Am?v~> zGNGxPYiYaJ&YQt$4RmQ=uOsQgl2Q9s8NUiL{&c2xucdt^!^Teb%Mt42W zk>S}ReYr>Sd0u@k->x6ITIYur=4U0xZohvPqY#(Yn-{TOkik$m?ePp~T~LhrZRyun zkYinht1m3-{G9*sUEyk43a1$?6n%vcFkto+R&OKwrR%}~W4bQGtvBAGXu&K#^SfjmBt#4C9RQQ`UyvlZ?*6~K1e%!u;CzagopzP!IN#-=H+s3DHAsePld z)h0QRp>ANK`E|cIyDaSqrsd5>%RFQ2vQ6u1QS0VL>n>y4N1L|KMQvXhQEgtc8YB!Y zzlz#%e;CD*S2e)49nj(q_+|$=Qzw;eC+Q1=^VN1XrYgBF+Qw6C%T{2A1 z2lSwe3JX(?GB-2g|_A zQQN`aMfQDhf;1*<3rwR%mP7aDh9pRaHf>)?cn@tB4}G~a^x5|HSEkqJe}-^)P$%N` z_P}c#(<>%LZ!i=RV8D=SYy}0?B+ztzk9C;tXff96{EFQfxSd01-!0)3vrd=}D zj1u-%4myFpeO}LkgTicDBMviOZhk%0?R^^r}A$nQ?{m~ZYSdG#+kk+-rbsMXD&(N26Iz#vMjw(|Ndrl@Xe&%>}zH`8u9i` za>6w7Md_F78mdeYEJ zdFgu`P3N^n=|=P2EKD?g&G5|2yPE^0o3FPwNB?dHBDUVxZ_WSRd~3hG$g(|My4@4C z{qgVi^X=_V+dD&lcYbVdZbxmjZsWznJ+Q+bv}_N)vq#RlPvx*rSGLczv(Lu*fy?0o zU)cwtoeyHHAEg{V%Av|W-r4!6!g`?YaG+gwpucl)pY@Ze!zatKPqsUs99a)t9S+^g z4!w2`eOW&TI(!Z-`y8?J8O3@O<8YKvc9gPnl)?HX$KgwU*_Yy-FXgQN5edqUn|F@e zS-(Da_}WwUbztY~Yu1xdhm*;&lQ%mj^Q@=K4yUVSr<*&cyR4|Qj}B*_%g(;;oSn0t z|8O|R{VF^EvvZDPy#PC2K+7-SyBFka->4kF(UpH=+Wp4H_MOY|J74*Cq22FdY(JzN zf5?^pxU>61h3!(^@lw0|QXjvu&vs?%cx73BWxIRj$oA9K@uz$FPp{pdzHGk&9e;(E z|BBfCg<`voalB3_x4urhckB(v!kO|xnut=Ub1daO9cNsAohITp^l{J5Q@9WQgBHRW^_nDbR&w4T@U84_ zYT%sW`E204GL9r@L5}}BUJr&a6cP94@gWp>?rUkFq_`VHZbwH7Z zthrGPU2bSq%qFmyX)H!XB0{QPa`?o%9T*j_aGy|Ddww)C(M z$zpS1AJbLHo*ZP~zsLUM(=*5PCx=D8b5A~(p~%9Isxt0{f2k`^4?k{dp9{zTmD-3r zN<^|>EVpna(fz~`>L$N9VeiU(LmdP+YK&XZKgqzmimDto&ada6Y}Qgm)1Ejk?CGCk zcTz?78a5%G?4Rl;T+J|_I3eBSpXTjdjbqw{P0G*srw6rEvz#YRDjoZ0M4nW$;b2op z;(*Lp;TjI|q$v%-fUH#S8ZI`XX&t?Q?A(?b98qBmAE0nc8v)Qb2fy|FtE$R9kZ6+;otIuQpJj0x9CWF*bH2?iF< zde=#n6TS7&3oLrqQYX`%^w!%muz2gFPVP0)oL_Qa$$@aa!hF(PP*Y&(iFf^-U84E0 znZUBkmioKrN%N7%f#tU+^(r_b{H_jhPz8ZVgDQFQLabm=CCTFkbvEL~M7^LY>edEL zvE;>6&!B4N(*|u7;-$>wpc-zGM&0|V$xFFSLAAn<8}%KDmkVZs>ZDs64SkcBOOAu; zl};P)qln*C5C=DCh%^~zB)_W>3~n@d++H2?P&$0n*Wo=OqMF)<`cLxVlEk$m+N>!MyCQe<^*S?*nP_U9AnIX z9vNp)!OoR9{H?JwrngrULdniygF-dvh(J1b4rTM7)ZUF~&MsB%O@M$}F3xF~F2 zaosv5B#J9u`muHo)z4V(v9(PpY9z_cZ`3&oPYH;20WdTEXSryS8u8Bhap?kbVr4%d zfn-JMZ)2(a>yvjo7ZNymH8)i@rH+Ij^g2eWMZRg1k**L{>uHaN%SFBvwzByRXs^pt zMxu_1{lrjsU=>yPSLTNt)eBlt^u|w#tz4*nOq-~EyU&QSwWD>ro)i`okBMP^go19m zYuFIaRV`5$yKxJ`U-JN}F5Ih z2uS$wSAT=4+=y|Aua}VD&);_l2T|hj(}9B4t?sX6XH1@2(X@D!kG;lz`9Ld*I5Lf( z9~&yVOzdvim3qnbvKPll+Z{qE;85SACHIh{HOlpaM*_U2YC;-(bHSxk?Kzw^K?S-1 z+sSdvuqMyVHJcx~8oqxt41JbGa4|NnTPtM!p@>e?PG(EguhOoIwkvI+`xs>d95Z); z-D8L#;itCPv_HYDLT@VgP9H|>fKUy^&otWt-cH$(-g{5@Ixz6<0C?cW(VhHBT-W|$f21@` z`%6@p*r=V`#rHiNtyo#dv(HLpRWny_es(;HnU*^wA1#nWQRLkrEa($b<$BF9MoV~^-L)>)u2%T=tq3=Hh@Fa|%FVk0g<_Ot&YQ!#rtO)4 zIV7c|2rnNMXk6y5bd@$H#s1y%#Rf82AL_jajwX!JW~{;4`loeO4j;$7lz(1Hu5H2s zP1n}q(?IMUyUhLT^IOs~#r*=Squ;R$EhLUz`@-Aa1An9$5~G{nc&rG%Go6dcCd?l? z0g(n?Z?aGP8i2lHur@;h*Nu&2_r_TG{}G)vf41lp8g4!!xGdPCFHaTKGQOMrffIZ% zZuY2MHSy%ka$^rCRC71H)y>KM_EVxUHr#&j!Z_;=QCK>NkPhZ`w8DId6r0_#(e!!x zxj%aPpUCr=xuAme^&`qv)|RVI?|8Yt$7~-xr_=7LmZ<|r^mrk78uOK;I~52Nr={Rd zMFvDTmYn$UF{G^uEwm+w5qH8a=0DE;%2c>rv2*{_e7XWu4;ec3VYIp4S7Q+l@+rPb2g680!7Vh1IuU(benIfwv{H*KLB1jD@6}uQ z?T_AHZ$AuQq)+Cf%7_~*qX?|--+o}i5m9Fq%i1KUdFl}5$a#8G6*;Y#T=g6y7az^XKonQ6$@BVsyA9vI9529A36!29v?1=8^ z`3W65%|B|$GW=Ul_|JUwC0}GiC^*!K8&yy492X=64G`r+qv)sT&Jv=W{J`}IXkz;4 z7QRRdB#>2yFyj{)e?hc?i@T!?hU!wOdLbksA0x|8mkLF($)h+uP))1o+E8dlDD<4& z%x1*ApBmCwgq(eLKD~y#Nb@wQS$0OPd8GF7EF__OQ%8%i%_c7iB4fs7+ zri=5mqBcb}L^X!S?M|XuVGz5uxDS?mH=$3AEwuo3aD4L7i#}0q|7m7VjNe+6iVmS{?r2|FG8ccc*+SeGr`UoeLs9^+8dVW87@X8Ymojlp@f;S(4ogru!l+rr z*1-gBbAh7Bq-8DN-U_%(Sn8GzMTt&$d|2Y!-o&9_f(P}<`uOWQzNqcBbYc$pV0~0M zfAq&G{9r<8J`>y`Zc1EE7{4JVb8;L*gtRJqU{jJ;~*Imfc;D zMX`smhe6Ic;RKn4pLxT+77)0&=dD9f8QACnQfgcMO-sr!wwN)_Xnk2kRRF7}-GFi5>oJudUO1@C6sM?nk9)#~C;16E_sEmIFH8w}2v07(? zSIHCVhz8s{u5qjYNB}c#iAs~@OLdEC-M^FgT@b##sByXhOZHQy^Hp)78WMS$YCVa0 z@${+v1=xwP9(F!p7pFCd-lPjGM-2PpC-| zWoSRzqp9ho4UgS%Z8<6#pyC8YBOAFWs=_>@t-_lpHn^V>*S9G))Yvqk7!s)2V<#0` z?|rD7A#NN}Y>K-ny>yR$tJk{M&zXKxnR;a)7^v}wK#?@;E1qiot@7@GxEQ5_3Yq@C;p-@EtCCc*Brj2aj_*(Q&H?F5xX7g-3X3Kqp#f_a894_7tVrB3eIwmn0i=2uvOx^=;Mxn;vVxVfb*Z4n5G`I z7yecE3qSVfn2288X!6w!5}%abbS55U!3MRP-ds4(1J~ZX;=ZDRzLL$pvOj$lO#M}N z`fF_a>mvFaiu;=e`dc>p+y3--Fb#Cw8TcQTD(e3cQ=NzyoGKoi85o@19Gv?zxWF{D zbZ6+D?a)fZ&|2}(#=y|l=FrZcp*{TE=);{?2ez*cBVHX9zd9axb+Y;D?9ZzUrq}-m zU3cNubo}>^{<96n=mDcUrMm?j-H0>@I8sVlMFh72B2pq{5fcy<5NT0rq)1Ckj+6!| z0fC);@B4Soxvz8G=MUI+?R|ar+4hRZbN_0~;mwxghb<>>TFx3;&Zk>0|NSqPD*8W| z>Ny_H)yk;Rig0daiE3rbY2|2a<(g^bIdA3TY7@|C6LM}7iE0zgX%la3lbmUjK5vud zYM0k&S9ESyj%ruUX;*J-*O+P7I&VjEb?9hx=sExYTB>$YoenvjPK}+;Go7yIohUR{ zm%B#S|Bk6@d=Gd2elO~KM9%lf#_v%x-yfZS$8dGWXmrOpcgII{C**V|5*xddXS!3* zyVJOSq-*@hbpDYY_2XsEkJpVqa%O(yo&Ugb^%Q9I6gl@4NA-Nj=_zUKDVymjKkupF z>aEh~twB5Y)TA>J>u~Ptit6jm>Fa6i>znBtIPV+c>L1qV zA9d~@kLsVy>7Q!spPA{OJMSlO{U1wpHELijXJDgoU~6Vz=X_v~Yj9s<@V_n9lbpe` z#=-NM!OQbOfO`n6IYj32A4?UMiyoqC8lssUqPrM^bN^)2{E7H4OqDJ7Cr8syuGybF z7eD#9hXwu%Qx%CG7R?&0o)=$2}XyaA50@!(TY=sRGTZBA2P+=&296 zQzcDPWwTS|7gH77)9BJ%tDHNMCl#vS(x$&PO*hU?H(yNSxo6rmXF6PFx}s;gb7y** zX8LAl+M@MD9H%=%r}Hz($4OtixwBJEvoo`^bHs~T0{7ga=G?N&+-mgPTJGG&>}+WU z*-xq2HXRz*Bh@be=qP&rICuV}Y5r_>{`_M8lA8c%5x}klG}$8pG>-slCQ!{0Xf6qK zJPYtg^U0Z>8}bc@Fq zS|;%etpz~`QfgTW>Kb!PT9->mo@E^pIpDf%@Mzg6Z`q`I*=%mvVs0r(ZznhkT8$UU8mValKqY@vORQt$MnydOuqA$y@bnUJV#n$zIaxHCVw5%r6P4ISr^q z<`_biZ49{AO)>@qFTKuE61Y+J=V)NR|5v?zLE1{PXqtPpnWi@Dx#>>3* z*UjrWbL)AR>o}f`01#8+`TqGn16Uc5BDXb;}>!mB521^GD~|-4lU>=&>NG2(>p2XSr^hRos>|X6l8-4U*IIS{9fkJN(~5>h$y`8rx zi;!FDN~IF`>^(bmnVj!l~i!;{2+EC88Qi0za-y~!}5;c1|Gzz1^x^!0$_u8BG-u7wqDTeLo zA*>O!TIdnQZ<~T}kIWDQ4*!}z23%pIa)+wQ zb);ZMrwLnIAhk zC0!^@dgZ3DI1I4dl~cECI6A%=+)kRVEQt)aR#i1D^qH-k^7`v?f9dgk*9V*L(0^SY z9(3Nn75#7J?=3XMRi*nUpWeQHD3e`;TRi7IRp&73$752%1r;am$qM5U9;sK4Pdw6e zSsr+%n<}#}TTBe!(_-Vjck1=hBm03jx0l@gk?`r5!Mqz0$6s&b&@Adc1y7W}`4l~~ zQ}-=?aqpY&hx}~yjpA(vqD10fnmPsaH$&g!GyjTqmWKfwQ<HK_UTaYGQE$fB{=>`|%iRcqIr5%3=&HH37~Jt~AbAqyALEje1j zftLNou%T|*X=d$j@#dFx;uI68h6&ySM ztr08k=HZcT^LnuQ=KkgX6jG}v9z9%bS#0G=s!l2GJl&(Yj5-{#M@I*J>iBgp*SLFz zg4H6H@aX(t0*$`>_m^}TLM<^6Ary!<0vSyZct8+*IZ&f4-dJ%xhN%ceF6AR)pL^Rq z@W##kU=R^|)8;LjO8tWli-AKM)9bW2alHj9>k}Q;u8PMBo^G^mM(vzamhtKx3v^*8 zy1dZJC%QEYQhXR{))U-42Wxv@e8(qhgByv~MefWJ;R?MQ2Y+hnnf4U6=;5_SkvLXP3mi z6Q_KeL}Rm%V62hDKUh$osw$q=F61qj^1!UrM?9%nBdOCsyG6zu$xexX0xtWA@gus9 zph<~v#mWsI0e9z&H;acN%Aa2Whb-RxFlI@ik34vnph) zeJ_>eYn`z%nyJP7uEWwm`u=*X>oney-ub{?`=N?L&l-!e+-79Y=y)b3cA7s3ULVzqs4Z$rO~hcWk3BYZ7}jF{m9sI*4MFr z)$WUgm)Y%8r|(ZLl|rzzO#UekotH(v*tCxj94Cgg^>ysngJz8_KP}Mu_uc(+f6UjS z>EW;3vl_WP@;i(#PJW)e%+~7h3VJw;{x>IoW5CecOC+rRgIygXz+2P*16Lk0yA}BN zeTNYM;s9vF5|9)U6?hT81r)UdikuY_59J`x_Qtd6YW> zo$xh@Hbf78>R@2;<;rDkmr8R8E$IF+2ZeN7j7lXXg(`~bV}dpfGI*Jf>@65=LWF`C ziYuN{`(S`y{p;}%U00X*<3a&a6~35ER0W(i@CMebf z562LS>`2Nj@GsTT+2)WPTKM; zXf@+ETX#D@fmYn_(A z>w-tp?MfQ%idf)*?N}UqIEkw~a=h^G+;s&Mf{xNt$;*q$COehO!|4ZYgpf45V9QW4iI4 zuG&_qQg(ao3$(8MtADkxO`G;Tnhqd<@FXeM83@8@mex1zw~33&Hs9jNzmkYMf2hrt zterBYZ1G(EyyV-I1SQcApzX#+CNy(j#gOM{^;b7jvo&lbsZ{G;eF(Xx*Ndbz!;T$b z4y?gIy$(GrM(?FO?oCe9X6cjthS?0!)^u$Wkg9lyF1%sg_^d~jXcJ3GJR|)R#zOie z$rF_Lx!R!18nE+5N<@>3gyyZnuhB_uVmVkkGC-OD25=zd6AVyFB`Np~q4!yOGvSG; zuKA3f1r5(cqWaRQ@-HfU7F*^I1uPdvt4{z5>DASgY^%812D8!GDOIV3v_zTK{IS+N z&_%aM*yu^aVr7w#28DVq#Y7W`u2};&UZUJ0%D^Ytpv$pR@_9=H)vNge*3Chog#&UaLtF&aUL zQJBQMZZt05`+l3L9iyQx!)fxZ%(Q_l^SY##zjMMQ)5?8QkBBk6$wHFgQY)U^e}pLW{GjuUAgDN=BD2ooXy7r z%;g+)SvF|`MoH(~NzWF;Z>e977L@HUGb8 zc&q?3e{=q0D%A96Om88=C@#c&XUk%@gMp)uJ@-#*_< zo0ikLEol71xj|RgSa(ZbBHVa&+3X4dpd*0cY%#S(19>Mpxi;FPLhak=a|>9CC1owV zs|C4wwHlVFTGQ#Qo-!hX>GK;dU_VDxea+(fmA-&!iq_|LTWWWHx zYzfGc)h-(jcTmhMy+bq(#Suzqb1elmt%Q!~7E4>dAhmuCci|7A@40~4veMwhD}VLO zPBdH^NnWz&FQH|T2e6~-|urfnm{itgae8;gfM_qaOln^`yE8`^q7Q#LQ_raGE*Zy2i*-~!?Z1bBeNWpJTjMl ztS`g-Ls;_156`Qj2-C}ReWkkt7TX}YU~=WOrk_Go>M1Q|VM7{^Z3DOMf|!#pJjyVL z(ej`XH7w6dz?B5_ z=2#TLzcGzAq3avPHgnFBGM(se0*pX))Y@KYvaQFlc95%F?Yf+_xks^ zz8xm(Tcv#$9es)y*KgB0V7IaCq8M&3+th|}**=at(UVU}(|@#6`I!DB>QQ2b9Jdfu zj2jS?#oCg+zwcs$x@&WaurPKpG*PmknXxz9o_H}kihjvFN%<0>n~b#-#`w`vZEA3t z2DF+Xoc<%EN_Eb^{Om~EIT_k5pf8qsG|9Ux?JppEi~H9J!p>3SmwVIoE2GyRX^vcy z8B~yZ0^HNuvJQTli8;=yHq4cI=F?v__&TUe?4)?r9#rt~Z)gn=|r-VGeg_TvqSQ1)6vNeFc-l zPjg0f-`Tn;C>tZb{gE^|cK2*d>YYo9_5|8FN+g-D5^`|m zXCe2}nHVdF^Gi0Wu9bSw+Yk51^xp_=)SHM{q2Hge45ZV|pL`lsoN zi{7D&Mb@v%T#VpLQtT{vy~FX9sw<|?;%kQ<(Z!8rXC#sNdQIEp#%z6By{&E*h}LH! zcxvGT`MkknRK~^dcQfa#{z1=er|({NFSDFaG{L8u(`V5Nxh`FD0bL`0Zju9wyEOLv z+~{GNcm2=#;)}V!?8tbRl{xZbSK`NLRAe-Ade&q{Sd)6rg}t9}d@*}_8$}Ow<5zWH zWWm?cT1oqBkBz$PYAt_rwqkoE&0aqCoGtTd6o{P-;C?hK5pB=AYUE@TM?q@Q!!Y0> z?111cS@T~vxvYNxD(%K?im5xtF_v7Crk>@kdxMg*<$5Bkk;K|ud~EtW}sN42Gmxk&?8{s zHAsLrAYpmiKG05Nhd^Jq;<@IL_HQX$)YfFinbmr%yy~|5)Zq55j_4*BJM>nFokf{JN1V z$?M{vZQ=Um=yu+Kf74FQp3qu?>{>9>Q?EI|(+3+ess1f;ErQYU0dpIG0-$RUkf=YX z0#w=T!|4F^p7Vj8ol;Acn+;cR;uj zUF${`HhvMm%=#1Pb^;)%kbaBMcMEYM9=Gq!?xe34XWNt0V6{*nzO)!}AFP58sJae2 z-0Z`r8v6jEr>5MbcQsC!6piHV)m?|Z9*C7Uh#$)Wi2;D4>*lXIFFm}MOP4<>d&b&p zTHEgPJenmCEVC!~(5=NnVLwMIjSUfWGDHyp#2<^@FDT=VUo&HAW5EU5M*xDT*fA*# z1q=}T5CByLC9wbsd@;(hUKwUJaAZ(-ULecMEn(4379`Y@1dVrNd2T%>#|8b3wsSg0 zP3>SG*qL&aTf8oI*Qj#OR|*!(-(L_E>a0eu$I80A3)rI*-l9kYb&QweLU)vue}Wuh zh^3FPv;ax_rbtu-v!m`@U)@RPiDg2OkW@gR+sU2{dmwU$1%(wxhKY%W^Qmrx1jpHx zRtB-fFj)H2-SeHYit-loL3uoC}f|dVgQa#Qb&3!^ZETi;wQd z4(*5LmJ};)uyngg?5F9H(+F*W%fg=i{^aQPZz<8R-+^qUeC$^<6(}0V*l-@W<7p}j2DNK^i?l-n3B$@n-ckNy@!4yi_}cDH|T>&y9Wn9S&vNzckv>dA-0tt(Y^ zJ87I`XRp-yOW&TdNmF>QqQOA0hG=smsTGr)|LCZZtv%r|wbWP0hKi6jaG|`4d;Ln6 z<}cd;$Y@x;wE$N^+|A%0`Y&7}LU0qVQ6Q)Ty%kJO4?=%gjFD##ev)K>K7MJ)^PJ8R zL5`@5D;|_`%sl3~cf&+YILp@QfpE5?-&f%mE|I6gFWnN=h$64NUaP&co@S3r)1hHD zUVhGgXY{8be+ptAExa91|DjacD%~wnSR5Y-J7;aE$=q& zseu#Y@MNS&)erFo$?AUff08vnO|DASjyXM)s%!N%w7d_)eoy<{66nnnxuK2EduZ;c zo1G_h7&>2c_Ct@!oG1)OUB5=2^+8PrevC~mGgi;Amd~nb1$1#)XcoD&2%O$W@q($v zlCpu52{KcSy_mx9`(1_4GRP^*>vJ9y7x|cLy^`vcYB(p#_sR8YDD*2$M=1=bnTo-+ z{Y4P2Ki+hHWH96rE5sNHRlZ@&|M!^O$6RHl#=4n&=PE)`AA!fk@_aWKR^gyQ#Wnub z&H#U8$nPmAk*V5vfi5-ljOwBm5n6d8Nwuu*==I_$YmJ`aqdK9=_v=xri%%t*RhLq( zUaBrXH{Frcn!fwbC1L^WI`?4x(*)13;HNjYfumM`^Iz%5w`H0k8`L%hj;u;?g>qvC zeQO4)U~v#%AF||Tarw)VB-!J;e{Px9hd!n}WgECTr+KLwig<&z4&P4~zk(fHo_$Ev zJXuJ(rgggV2Hl*Q^>@qV&Fh;%%le@#7YvzIWml06=DnUovC$X{7oRcsW2G=5Fopdj zGPQB_wec$V-x-TxL+tCaRITZ#=McZ#b zKbDT-r|}SNXCJOWlcLnqJtTkU23_>Wv0!5~HSU)mPyTqsi=PMEfMqWG{qM&5&Au&H zMuZ{UZUhWr+z|B~@8QS*hy&$QGaQt@$ox)w;mc{s_(talIF^4j#iQtoJP+*S6D>W) zo|iQ`)3X)N9-RyFLBzVX8LQG{rtP#RU#KzZbZG1sj{F=&*VX`0;!+bR_c*Yyk`DXE zT?!5qgC0R<%F9GK;|y;c3Y661u*pn_xsIt~RvLk4#8_n=)LNB7TTimPQF0t_x|NZn zD0|h*E)5a+jE{X@^3|`*pU2ZRk=NY12Tjn?vu7~85(|(4T+wYs8yiO*7EZMHaAk|* zR7@4)7+SQRZZO5ugb)x%1ST0yok!A(8y)LRV$p8cl+-rEwFTW&WP#w14^Nviw{Ij3 zM2YGNivN6SRa3x1%OnszuH|t&vi`=s(~^nMSOy&$@OFCz9imy-n@@2s#;koRU|)3HU2970n#Ap@ zOU6EhX5F6owIF~#ZRdMU?ebQ^J z!+t0!ha}`>KaaVcDSS;~ZLna`CpVbv*CE{R`(G)WXYYPW*ejI&>JP1}&b!!JY%KZd zYc+y?&Z{)#_^0SSzy@;V4K5X-s2vu4ol!0T$I{h}^L^hrO6TLi=M%_jIclo%TK@TJ zNv$b6xdwpsJ0+~{XMAx{9(&=QvQcpio7xWj(lB=+9no$od=zc_nv%Ixsh3Lq1Q)8s zpVpdid@%L6Y3$k(4G!^EyYrhX{+4}|O;Iq~kVSA=QED8}rb_f5v;x_F?b`g!;JPw{ z`S$&79d?Urb4{yfQSPC{a$bb4a6X4f3r2hl>fXn1Xmt~Uif zVgFX8QvGeL{ExpuiE^oW+$lffC; zt=9}#rOvQ{=-mJjLM{Zy<+Wt-HRg@?PVx+~B97b{6xRZ(E{j$RYw;u8TZQMAMcxecdSb&0Owja8KOaJ{k(zGLVywN)IP~< zQeEtMsa)NVn2fuTz^&6EbDvlesqj?2Dlg4?Dx<#iPa1A^+Fix?IY2=%WmYaXZ&rwb3c&I&x{`1^AqTQT< z?SmqcW(fHEAUEVOS60dl`o!%OFbNCqoDS%?(Vh8vZuUlc#H3dx;bNALZWTwjL#Ud` z`&7w8sGmI78@4i|QZ2F-A;Z^Fa)OeHx)2TWXZ)OG;+zGV+~ne~$q~rsE4Fc>uNVS= zEDwr`!2#YDNCtT9;R?w-_y%=~v&P|BFoJzqdSe`O1EW zyx(Eg5tvFGCUd1WYTavUzg)&Zk#CulW)RYOWXi6GjsP7DGy(4u)}I1!h^I(h(sns} zBJMXk%bIN;r3I3+AZJ!}>P|h%)A!}Scdxx(#nYbg%N!TTTnfmRKp&*o5#@$=X!&g~ zTtAZoaM2ra=(v9Pn&JMB@%^9K!tv?M1}=vScoDPQ!jmUTsydD~!_kU(MB0K_=p1{D z3kOx!El*3Xw7m7P#JX<&>20D5cQZFNx!|?q!fTg;G8>#kS^@scd`IpiJii-^1}j+7 zNm15jqRJ=icB30}LoYJszk2i2Fosayso6XB~t2TkgB3{bq^1|JDm7cZ!?`gk8p0 zo_3;tA?x1NpS+o0;AeHq0YQ;;ibZ+YZWSY;w`$Hd&|muAp0*?%vO=3~8R?iq{!|Dr zVgsnZ7V55C5-LZR=XclhOTvhNUS&8y>M@|N5;%iTjD;udCm%KyZ86 zkYF&5)4Fm+iY}GAz>yT87+L&2Ql80`%Kc6=6D2s7Bf`r#X2n?EfwIK2v_qToTU$zaN^nOJT1wo; z++r*;`@_>b(Zn9h>z8J7CB=q+c#I-a^0k&W1g?isj%;De}B$LHxjQ7t*{q~4^^^JivZ0NF3B>FP`RCEx4~MR)o)nj z>fO-S@x=tlkcHxwJ9W$&SKVYnc6{ISkHvxF@9&k=&Ld3Vc2K@s#PD$<*U3 z-U;FlHav2`;WWS=x-x!NTr0z@RAo1f}zFH+inyu97) z9+pn8z#;eePQEAoxRUk7VV3d*p1@&?ErSIoOGbY8GzmuplA0?=_{S3lhxYDq-yasj zp>3s~EQqa$A{|ZwphAkPBWsZ ziv2cUxxUb@YyT;P?tiq$JYI+K+Iga)8pF_y?AF44Q=gyY_|Rj4g%q_RI*>FN%-@2Y zX?M)q^1zk?&#T2Z=%$)-{ zSC4PR&AdnD$L@Q7i+7sSgB(OkHp{8D>V!UJifju=5}Ie)EF@^2RI)vjqZ{!4AitAS zLBTJCY>d-KzcVB6TBpQ0>1r-NDemh4pJ|gAXa;)^va9(&tSWx*uan>ZyzUp=A6hXJ z8O+>b#PuO)?%v|yI5Z-WotE{-O-9qPbh#_{tFBDAJRI12$YLBdr*jn^6C1v)Vn%M~ z2PE_vQb+ytkA^&%3`zYIL!*Hg$B^4h`7*xP{_VYcjOM6XZJ_RZPn%NGe0dXQQpKI~r z%S61YD%kE31T3v+}yYm-4&fFE}mN8Obmz zesUpboBixm`J83J%9mGE(27P+4qrds&$*C^4Cp{8Qfhb_JzmB`oiU<~NR>KmxFix@ zgN3uT!jpCBCKaS^#$G*Smi&#B`MjCy^!ZcXw(P?oxrqS8{a|q&F#)}BPR6Z3;{(Os z&t}6iv~zEb&`J(Zj_!Y2TgE@02tQ7ueW5Y3{|NP ze20`let_k*A-?43K>phmI;GM!=y}~~asgNXXR3&yyOQvP^k--JoQUyegkZ)098saG znN({1p9Q(U36kUoLk_VTt{_+TvXG7-skuPHc#!w~y1Tbj?p?7aT5Vl-Vxs>5l4b)7 zRkW&eP5FH%Npj`(smRQJ3=0{Sfd(%g2b1U1t*xa_J+B-gzn8|Ls3W-VY+CtuMKXyG zEFk(9HgB|Tbo}_!N;Ts)m51NG>#FF-_7S`*w-m8;dpfOhdw|oIRyAZSCD-el=s^Ec zteDRne+^@zD2OHwfOpgbiiNyzXGvZRlJiKW#oy}5j@7kFYZc!RbcGA5)p3B>GdCwQ zhsd%gRrIXkN4MZu`ZSYht@mFsAd~o0!=`RAUxQ~{oC1;HQ zu}ors#?v2aRVaG-H6CJkK19`B zr3Uu`_v7tKl>mhoy;R9cd7N$oo?fF>rT6yWD>l*5cM@3Ys7_3H{9 zyO9(db~o*A_P;c#NgaNn7>jeVFRZOE+m-6`zt(>zr)q>zBy+0B6_!k6X!}5LR5S^+ zRx_%|V^wtPZEz!=_KTnon(Wh<>Z7V&-wZQjrAqqUVyN1_uQ5B(G;2>`d~h>~yonzU zyk+kGY1la2pxl}9ZDd}bp0Dln9oZNJJ9e`P=+jBj#%Lg&ND+2O7xI>^>A^#ELr1B~$osFIgXxT- zJ~87j5fL$fgC;~4_}+^rx8X~6-x9DK%?hCtw2YPNz<>#Q*OBM%O*Iz6ZguirN`?SmN$abg@;o&#fGmL)YS)$H z0Mm<4r52EO9zwtM&^MrF2@VL|3o$7XlXJ(&vKQ%?DEY~vaDPHO-s*~3;rRcxSb@R+{YCiMe6;>(SIc3Gt)g+{BP_PI6I~IELc^K=O{V%9 z>0ud@o=``Bsai8BAo%@%#8mYEAX7s31)2kA=zlKJc7^Po{#o7EC7Upn&{R6_5IrJ1u#=aIy zE)&C1B60f!@i7vRRs*=8&E|rOFGdN{k94f6M2(aKk$L4{%RW~ zKa>qTz?#h0%@>Do$7mk2!TA7w$?k;aRAeZ!=)%Ip*DTwWF<3;{0U4~#;sEDkHFm`7 ze1JW7!nGA^_4<{TH&aO@ikf@%O4TnH^h!siMlp{&c;#k|JKbqwo^ZZ9n>FDYeNkH_ zbQ4V~q5kr_%B&*(5gW(mj$umeT}p3HP&>~{qKjP*sFD^ftb0R95FCgIOQ4O11zE7u zEJ70w*&JjBHQ&MX63jOmWLj)!wg+3N90U}|*?4Tzv_aW0ej=F|+*JoKuEc}M^&D`) zkn3_bsCK%LQ(3*Lw9aikQLD_PPCKk7ntdhH*7em&w#y^-)t6p*ue{mq{b|7>xrpAS zXCtrE8E%R^fcE;=B#)c=wUfD-8T9LoP%5=*F0v^TX7Dp%or0e&?*Hkleyc?W!_Gb1 zlc*`uB~C-)n$_=*Bx@eJWs0Irq+C9w8M;>LH)_o16E81_yciII08lz0N4s@6OnMvx z?m>mmvb;=Qs&-{1-m4iGrZpRPpW4b<#VXvD@S9nu16+rmi`BfPwTA2L_K?5dgB59P zF=8h64r`ZF-o~poy3Px|Q{fBP1?kj-IT_u+v{3|z$RzS4ZVy9lgx02_R&8gF$6@{T zEEL#>6Bi7!>M34}+NSz5$e}!u3V94EzBWr7za|Y-ntvMLI9W21$Esz(pWsxMF2N2H z?|h}+t4+Lisq>?#uqIxqT+S36h2zqVXl0HYG8NBW;*1R7eKN<|avJ?p z^4R*uj~%e#|0GkZw!BT<2^m`s>Ns-(bEFL*$4E$#a;bpbs=^PywiBV(>8CVF)0vGM z>Na#Iz1{%jl4Fgo*@o+xL*0;3!YzS7qPCgb?!iu^8 z$j8{=+4z383C$c-5sC3JT2gSL8Cz&uM0ysKgp_hDDfv2CznMe4R~uWmcp%Q~_BB4W zNLOTtjbT7jhdTE&brEsP=Zlo$V}AC#x;~l{>qh9GeEABNZTxZYUV23WCmBovjSTx} z`iB__HLrOyyJnyg2fYDfi^h&A6Kqor3LQP;5+!YxB>e*@pVF@Ru*X^JZsBS?51O{D~sJV7gR>Q+Nc=TI){{|H9Y)Lk+x1Df0u>|=!19EFm~i! zw%xw_Xc0@rUs*UY^hv4t4{enzTHZeZz7zc9U$NfkQ35X?QcJzWzVvX+@f-J*TiUwy zQi)U{()uDxHcBs8G+C+_n0F(7+;lz2V{IaK7q4x6aKLd3f(*9{H$T+c1o$S^X@%(j zr5d`$-_2L&hZpB4BMKsf2{% z)Uvlq3;V#^8|G^|<(3ipn(J;vbEVMZNyBlw%KH z^3xh!i%*Q1ghV13{u&q0LY_gdJw1Jdq?AcpVKz*ulC4I3msu%Cvu&q)+uq`w{xyDF z_w}OdX#8}nqL@)cTy|jW&)4QhJVK9d6F~fIpoqni0-)**P zy!_-7u5oYNcyTuRQR{VnmHh{qPO>b;%9!~*hFOfwed|(%PL)>@8QqvK)G2&%$jLYO zlL3qSiXr4oM#NXYUNJG?cBmk+G< zbFXzP_z5JQaDPrNEQQvl`}n6NX8#rXUsOaa8?R-RaYhiWV-$g0rlM>6RybQ$s9ZzV zU-prvq~LBen&)EOo_O|acag(mcHsVuImd^$am-{CA0KUnZCwUrAj*dBClf%*e4v15 zfFj{PFU$Iw)_`v(kit0<_cJr;M7o{B6-C-kH?8pmF`*z#sO*HdTt%WsfifVyVCTTW z|8qa~j%0^t;4mK68*is5LZ!@8%3YlbSat&{-^%v!h{#qt{Y z4@cqsBI$0AC-JZ@VNjknX_^IbdiJe5AAbCyj(?^l*VuAPzp`9uWIAB#h{U z1aaWFSY#Rgwvi`^RZ^uwZTq0SKhggoQ%7!ahY7!NN?AlCaTMTLNa?%c`bTr2*Z=gPu3gLt8p`1^Em-KFV7;mvGmDkzA`o50M-&qRdXQ+=N1 zO1i%iXo^sffX|@Dw(}^XHTBAtGJZ;FH1Zz|r$)&KO2Xpa#89gtcfe;HuSbU|7Z!GXilPN6_smI&NiRSv+Q+zmEN z!I7+ss0z*t$8qDd$+QT(aXaKXNV2{ffnXFZD{1-&$H9W#D_T60ucj4U1al$Su31yr zA<6Vw>10q$JV=Bj{(&75O_2!b5d}uPM>;zGjC9LU>ZRx_*jlS(SzmiLX7EhU^tNO` zE00eNe5jQA{`Y6B1`;~H2TsIu6=WJsP?G7OD3!Iz^f0ipLizzD#iP6A zi{jKrT_DK{!zfs~KtP&6MPwnMl=%greC9H67~n;&$B&NU0icn01^Ynnkh_kK ze6X!{7$aVRS%g_*@#z#kV2aOeZEO>+tHktjfQN9W=r4lE!IdAOjd&gz*w~yg4r3)W1IBJe9L8V zfYNejqQeQHxA#b8cKMWe+QnfSJun4{dn84FP9cRP34oukE;$Nh#m~IY?4mG2lP9R5 zIYN`o2SZ|D0|3+vdn*BO6Xzp2q}M3~t!@PqbZl)Tm{sIzQPbmh=2-$qBvgZF?nuc{ zZ7r}x5SU37AsYU2;v;i}UTY1_TOmt-vOY{6+KG=W0Vxy?c*+1~2}l$RK<198iBlpo z)3NP^|J#QKJjKBp-vT;#nzKS66p#x;0Rxx^W^cg>NXRGx=KKX5j{6NGQ1J}k<;J`G ztfh6}V|NmOH!iri5rWONVSK|hK6u2|ScEShEOJ8j*jCJI?^dpKV72|jFE1Y6L2rl~ zUNLxT{biiK87}3i?dQ7lJfBs0hEBFjrsx8`a`v4515_A>GRqD zv!`}IQd=RZYmg2j4%B@ZS`)u)wlJ$GZR%na0}Jl4CXyP3LnG-PKv5_tqa(Guiq8u? zQUk>#z0Bc?M3F!haZJR|BM=$>ibE-Au2vhsL*nID0<5V}mHm~w)`QB15anhS6yx38G z^w|u;ou7X(gf#66cH5$@9+L_nr4Sa z9lhp8UY#Z-K>oThb&8J&{NtUT1;T^=FY4~{sqJ@N^l%6Sg1Z%m;#!KdMT)z-dvPsZ zpb73yk>bT&id&($Q(TI>yGu@fYn`?Cp4sOgI4_eInM@}6CiCRJKbOU1PCFC?qzS{3 zL+>()T9Qz6Fq7BP5vXy<9o}`=?vx$@ z-E~k+04Oib4t1qKUlNx5bwqC0P}5Ef4!w50bZ>=sNx5Q`u1!Hc5FKNXV_rc;9zt^U zFS0gxGL@O`N=fgXU$cag1%YoT$N&IzG$jU`CYN`Sb>wm}v;AbXM|6@cG^XbG21qnD zL9h@pqDjERc#jm26Ta9>jMjr8v5xrT6am^9tSDMNn?z}lYL85f($S?WoReT8;jv2+ z)V1gZQ*QFiq^JJ`p$0sx^&oa)XLy7EiXs(sdc9f8ayM z(iTfTm}oFqwQ=xT6?xkV4k>_~O>5plag=Zvh}m{~B06?`I*xr1uehT>-gzOKAc;Xo zMsqNQ-*_uO1*Y@kU~D+2%^gZOBc%3YIR7O8(%|&nm6o(Xb^|;-3~zyFu8R1AVCPQ5 zaGF~@TLf+za8}^BKK0nA98!HU@WWq(fd{HBJ=30fpzs$i?pMg&@p&^um&pb*+L<%m zK8}W?U$nosFYBX}KOyBF^4BR0SLf?~&ZN`!L^Vn^2GW4T+ULVfg2%Se@~Ht~P%w}N z0Ha-AAWeZ-OLiFsJ6Z(_;S_cv?D1}sQ*TpJPrw5+I z=7G2R?jp`KZGDK>Kq8vpaDU7nd%#(LBFY)gxX(DZ-BC>))NbJ*YXJQEhhk)6bYuuVss>2p5&*SPh`Q*f z>JYfjXqEsdEMiDR>${_-xDviW1tJ7Qxjg5Im|`Nxe1KQ4pivwX7-%NAr7Pr>E9A2@ zhl*KPNiII))1(V+V}tnF>KXJO*u1+{o5K1rR5kdqpK2EV`{yeht8b6G=^$R&5AByq)N-?bV2 z=~SuE$sJCE8xV$BR~IEQ;aI#vUzK}R5CL9cxxp<3@O2XBaiT9HWiRM~IXWjzE?LZ) zja8$PCH+qRDW?8n!6teM%8*dX-ynntpmU3mws3OYmFhsrau5q2iNdE;qyNdP+7T|crG-ck zFbR7#O`y<3R=%DTjuDJV>Dszim@*&!gg;xkbst-Pnak0?)KeK#nBqB!_yr42d6F!y;?!%e6ABNrJY90rF zdkh3dn9}(U7s`#zleYB{?4x?{Udyz%l>$GJK5f8{a*c4;Q^Q;5rcvpWmHirn7)mnu zQ(Po*NFY|q7{9IDMI(Xuk=9h2}+*C6R~L@F`##DTW~nyswPRF+<5(JVue( z+tzR$pADrtT`50lPRcS@Oi#+AvZRs(3Pux8tNeQIH;)y50b9h0VaZy=OHqbfB*<|L zzSg}1-)Wl!I!NaQMDpI~SS03JEd-aCA~U2C8$r~^Y)(z~sNNv)KKIdTU{fgzRBr>h95>1ONHPl>1rFd+Srt z1g^RgI-*V;8Kl;$TNTJ!TMUh4so9#0N?frpSN^!2ij*CBGGtfP@q%Vw{ToZ(zNQb0 z)C6LziWZVn{&NxupWx;la+(E_N*K|bSAx_?;zVh302mMXw;@{LXIzigixd_eZ{JWzF69l>9 zeWb=Y;w~8^6M}_EJ z!B1{!0f*#Sv-ApHOq??Z-2q^L) zt$~S>w81ww$Bcy%*0*(@F-2B*c-V^nqobP*!y@4d@Pj~#rn*EwwGb6)HI|Bl=-^+` zLPlZ24|`XDHOalC3@iYQUM|By3MYN~IfJL&(6tjp6h<3>O6S^p5y{r2u)FnkCSr3m znseOua_l3v-_@itm0Imrn&t9y?l+1R$w`{2RNb^VxsrQVVOX7q*5)R1pyTw54pO=d z%CeIK4b45QJ5?4plS&ywYr4N}s52^tY)pga#5{Q-Zs|a?Sw+ep$Mo(~exsslLNX7q7@1#sz4*Bow?}!X?$~T?@+$f~UgRFYzy6shRzA#nB$r@2`#;%VJf-jR zo9XA}`#ko2AX-eF9yGS<@X&@_Ogv06(2EYg)88`y1G(t4U}>P;6H3-Tx6LZaeWlNk zTiL&>zgi-?PKm(4AEKOuzaj3Wp!e%~L0A$r5rhUNxI4vtv=Zx3kq48U!Sy;leHJ!>aMM;K9eZ4290ZIK zWQrx+9B>JA6(W*p{;NZ1-z|$oR1_Y<*FvtqMTy)V7!~iERL(c7<}TL*8>OD@M-Ej!iMn-p zvfo4j0nWMsFpn-AkSLx1G}ye+Q?cZKm@x<@ z!!QBDPwES%xkC6cHXztO?>ez_ZGoY(3M?8+kj}tErTgt9+s5eFe`i)7cF5+-?Yre;2)M zSVB^)o-qz}hQG|#jg7m|NvnL(t3<;cf>uE=k4(^g=6g6AYGR|0ELeROMjRVze^T$J z{<)W89@VU$+Ip?*P_|S&aNX&2F2om~kF8YR(UMQxz$6WI@%s zFdTF9vrOpN-neyX3G23TSm?x>IErgjZ2nb&!Ww&k9$KDTFywdz==qiWmnF(*!RP*p{eFAbP+sdm{;82WvG2sp|xZcm=D?2P^6X8#e{Z zzT?8TW?cUxf|wF$HxS~m7a}HRj!~rVDii8%9qJhtN|5R~GyBD9FBAd}^VcDUdI$+x zhj@pDg%^iK>V%f<+6I8b0a=&LCqv^L@rZA-aLVTjF-?r zcu8?YSy*^XaY#NmvW6)#j>KQb6Bbq;7TH`JiM1O(%NO|z9MxqVxMLO8Y8}-d76lFq zx!H>Ry%#kOj`nYKPDzcLv5uZ=5^5(=`!f)|ycZ4P_c9HN-js=H-iuJajovSgIfQ`i z>KH?}!LjG_5$#QCN7k{oVX;SqF<11l&wH_MUNL^Dv52y9AX4=y>quB}9D0fS+osRR zsPVYW@h=ilMP88@;qe&WF=+4NDfZ*3m}TpAv`A$W=)*~Rr~SxL6Icfm*hxj{X^e?% z65h%tE^WH8?IgS}NfbzXmz)~Miwa314NvgwOO&)pl1AkT3eznnNm7)J*$qpSVg9Br z`>lH;k#0Xpmo!$qL{M}8n=vXZ`2$JfM)9{#_euP4XQd?BZh;XT{>>6KWpLnI)j+bl zO^W9}6`^dh%V0`hQ@j^ysy}n;`FhOsd`f6|q-(Qh;9zR>e(L9%Sd_5T#5714!hLE= zcv>1WQSg0Y(tcW6aq4w(S{^*?iAwloFgCm7d)Qq{;r{n3)O6DI8*pQg-t09s2Q%{Z*8&}y`-tyvgutV8JSI?%Zzb-sF{BT6Xm?W4%=ihx+ktOW-bk8 zg2FR2xanl?0#{A($MCWg-eo~1)Upn}1^4!|_7}3Y-UpwTWL@ZHYlE}z@3T~8vL9`- zj?$=iZL*)=XCcT1x8G$fm%wt+Kg4m7TEA_i;G)UJm&+xz%_WY=B`wV*8_K0P$fZL2 zLBsNcPVNT<8swzbY;iD$b?C=$ri6t?k~b`QZ{_lMZS(je^4^!`2@K_>JV%kBLD2FS ztgK?Df5?{R-xR0h#rY|t6{xZlsLK^-+7@U>6zG-~=noYb9uyd(6`Gt%I4rs^r=;6N6o;cl za5uWmuNTLnmBh1@B+8Y1vn@%9NC}B1!GaGEj-=*9*p?PW1fDeE+vKp4M zpK`FWdfT$bh_dF=veu!p_JgutL#243tUtm_du_|@WXvJC*uz8RqX*^VXcd20DyHNr zW^60wA}SV2E0%^TmJcdc7t1$izxB&iZXZBrr<`62D>wTp4-YDj(W*{as?O!AE+Mv6 z*AZ2>rB(MsRgVW%&uG;!mTCm~YQ)3JHmQ`I(rWa_FVSigx_}y7)*5{I8bZ4o;>a4( zvKq4C8j8ajD)d?!)>=CGTB39Wjh<@evf8h=uY+>XInjT{^{Ndc7)Zy}Eq8rd_>uWW8=#z5Z~$ z;UTQv7`?%iwLzy0FqugklD4!-bvZjcorbzkbFtX;r^u{EC=495UkaUCQ#Mb7x zrRJE&<{+{bhxDe@vKE%_4Hbtiry#ON5cxB2YYiD0v1Dt1d@CkjYqNiA1A1H2VQc+k zYwuF)@3Ph|`L_Pyw%YWzzOvTt$F^aC_CJwrZTju=t*uolJd7klD4ihtPLwEEiWeiv zJ<3oO#&8WA{00-rPo#=T*3lGBW)d-!8QqE*{ZaVc%p`A-<{+5!DOJoQUnyoBmgl0E z7b=#QMwge5msc@Y*4bA!6<4+$R(7LP|eYluo~AUG7_#X>?Q zN;bAmak5T@wL!zNL8r7q@3_Gjv%y@s!8*3VezL)dwfTl)^R3b*uj3|v%;x*bO@XmZ zp_9#zSX-hTTjEMvl8!0!EF?_yrW`xwN;{t%cdTM|Y$|u`#&#S|cAT(wT{w1Km3G}7 zcRgcvy;JB}NvPqY*!%Gu`-w{X-yHW-V)oN2_tVGrGf(!ju?})M4)T-^3LFoLVh&0w z56Z?4Dozfnux1WxI1Ya*9o9P@HpUz_S01*G9k!nw{=z!y;yCJ7I_h;i>W?`ZtUMYX zI~qMX8pk^R!*M*NbUfpDJQs7kPQYM_z0C64tOW*h zMA5c^y8`#!Cw#OCeh>}v3tf7jN1E_tqcqC&QA=_9<-tEDGG0x;@7W=0QF%>a{*l~9 zabd4zs0fa5#c*44+=_?AAOcBuA9_ho;=+yWe`aQgxDy@xg0)y3nGHc4*#swgTeVW(qWQD4mu zBKp0K|BB{JOE4_^M;|xPt7U7OW#2}5U`?Iqt9&OfI3)-=8JCzXVf{+x{yjMV^S90N zVufD~VxRclx*$!5LUsvK)u;||e0G0Ii@P_=g^yhon=FwD1Hzg}@!b6N1o!x4tEGuW zM2N2^w(!3)FJu;zC; zSLvj|uY?{it|T$P`*Z{Z3eIow`pkC;dZ<&8svsX{;m!{^LKG{@*qF_vU9|fmPJM04 z#oj%CP#ym6Ve9tO2Jclhy212Wh^peD=JMU#6l}4<_A^BZH#bzL_M*C`w$~PD@42+0 z=1?89$&T$++I8xeTq@YqYaM9w_dp7>d3+?mF1LCf<1=UMjdPct-@ex2_eLA1M}55C zEe7)sXTE}|$B<_^pOpt9%%7;#J?xA6TIjZK;Y>)cK&ZU&<0~C&>g%Gf_lJgu1@0AJ zg{p(1kw-{a8h;XHtciJ3FM^ftxx)f)Yh`9wz3pUOdp+XWFVm+RoM>X^BLP7O%#IGgu0(4BGTsldmpO+U zcK*e1^s12Vt4%dUR>Mmt8CV(3!@lyLA&R|+jViuMpP!~dcb{(_^BB7n*ej0_+SMKR z?)#Y|z>?ne;MFX8l7*5>ZA6EUI2NZBpL2rRi;2j2kM zIah>Jz5b6QW%ER~`mT`OcQnxW&2Y-tRiVK1KDzR4kJEFEcO!k@TO}S9(o7JYzTcin zl_Dh5;p@I08Tq=3llKUn(Sc6r;<83@XwjknzTs*YJgD?oc|GQt4&T=|X%Zkj;c{qh z^_i`TdDk-a@>wI$pR<$g&5yTFhD>KUhoac6JGy~Z3Z5VKt*v~U3zQB##tl!sLOnk8 zHQ0UlmB(n3>bjt7eA%}2bjGCI*dV!j4E_sQJN%4L((b)t$nkmkFkM;L+QRgzHZbdU zjiG&?Khv{CJpG}QcsR3P>gJ0``bjqD9jt_S{9+ZGq3^g8WF^p{CKV`nITQ;sJ8L@} zCnJBDJgs}JX6&w;FHVslYSl99nE-XmA^!458Wfi6@=*Pi*Alx4@OhgaLU2bsV)Yqf zLTx+O=cP91*wSG0dFPc|pRcB;pQnlgfe5II9|FPG>eVuT&4q>|0v^)v=aV4@N;_|& zxO1b}dV1P;PC)uh`MYKVaMqwNgdp-l3@g__B^@GjPn%a^P%cK7I-;P7LOYua4EA}b zUW(8^f`*8RvQCILZm>*>tzwZQyq@aiYsL7!(bam#IIq)^*E+;2m0%>)rl!F^n$ab* z@XH84(p-VlR&5-x3E%nhE=H zhi7gD(b#jgFAg}ZhA*ozbxs4My~3<}O(Wk$G?3sG$bbZzKHGaCLZsm|XaF`Ub*LVS zutqTY(2aFtQxws8n9W`&c1pzbtyksmVA-5-We-ugFz04FeTU-=Xz}Y5kkk z!1LBv1B2nz!e~zXJ6Kx0;Y2*XYQ#=hL>^IC=N%h*c(kZx)Ek*tLDEE>?qIj-*yq$l zweWa2DDZkcsuk=4w?vl%!dpaqUqGNHk-(vWByT!QH~374;Teek{Wr%247jI|yNBz3 z6D1;R2esmO$;0UJ2=jg&f?Azq>CIyxlgPK9?0Ao82tZk9N=05zEShzmL$=ku}~@4tOK19^y`xLx9I6-UOCy6;)LmRWJuI%D=QS+Gh1>-N&J z(|Ce)6CrtNiEtYfjZ1;b)W(J>El~%XWR8=%H-$x3RD1`qu`?*9Ih}1PJ@h`E^gh-D z04_$wE4xobhK0whNJk^7CvobC%E|`L*ksZnswt;sE`|dN22(eRzsKpsZNPN_9d|4` zbd0ptE92N3=X<WK-5|A19q)DyDS}2pp1x8y`nDIqZR% zXmZ(xB3Rc=xa*_|TYPCOsaO<GZ}L8 zc70gD`QS^8xw9DZxo}FfME-*}Zgk%-b-!cEWi%CI$rSzA?8|;B;pQsERveP#o=;PS zM7$xeiFde9|GSV%SMyz>|_Qgj@XLMya4;0KW4V&*L~UNS@0XE{4@ z=C?26;0Krqwy_LQI47)Sp$H@%-%*lzomNbFj@9q&Nat-Mk_YJCDJHCo_LnUIit}$d zm;Aa18H%7VF5>EaK{R;fryrir^t0Fmk|zE)FNiv{toVR^8~`T1ProLOp;t|*vyEd0 zm&%LtD||QWBMBKoF7MJ~S05@3TgY<*6lj-3KI}Ur7MI8&sw>ZX}j%2|Ba3-Q=@kh<$Kur`gd><~~ z#kNcu#v+NfmZ8TO>+_+6?U8Lfr!en6_NEz+pX&>=OeK2|b`%=uz}vg%;peDXiRyiF z;rn711Z2bS0iM)9`wIY1ExD+Ykct|X`d>c)oC4nqQNgIKc>5-0{35jmpK8B1{X96R zw|ry<>DTAmpmfXP6HGYh+vxXnrsNMv3UY;br8lMqG(cM_s#==xX!57640j^X&3uH+ zWWl(DP4z!&kRucSmH@Kfr|Uv%-`A*2=E zdk~bm`8*WcR6rt+x};g3#dfgu9cjwyVCA?7KywXIFSND)k(sBtu>G;s+ebAu-8xPW zqzcn-PoYKcL2F)Ig8$74C}OR!4vt!3>4+EWh!yyzjs6SRRVT=35%(RmZucvK7Tt#R z8*D!3MIQ&Xy2F3~WWLZ00U0n|JSN94b-o=g&PWv!j6=w0?Sj&x6QQ;ulysrFbQYs) zTzb_|mosiJH9GkGM)CiZ78%B&lE-Gi=vJMlMw&t@*p2xo=FgIG-+TgUPPfwqh9R{5 zmF~Ary9VNdT>NxomFgl{wjR+743C^P4I2~;wq88drbehzn_Pu3q^#Fa4C}JBjhwlU z#2-6tup_Po{e4uQ{*Pp-wj3&qei9mV0()NoS+BC2w&yRcZ^--l{*IXb zZclqOgkwA-MGEX0KiPMC$@#uXlf+tp?Q4J zamGT95Or-1MiY+3jmlVV=Hknn8Q~1%Df0PJxT7&FI_Ne!&EY&#o4Is*j-d;m*v3F` zs#yAsNtMLj@Yj6K3r_t;QzESanUPCc087I{%Pr>^a+n%TB7o`k^sAN~CrtCdGcczAq$i7L6&NXZ(csBD?0(?69FQ#l46ulA(#o z2}A_Pj=h9RVl?UrSB}-htbIr>x*G*Zmuu}i<$+v0-~q7L#I^M!>)>+@x*=tt4y5v+ z+K5;du!^MxI;1#k8Y7xq+hT}5Xnr~T)U`kFy4`7XWE&5tiwV;;IT~>!x>Es}$pdLt zj;1+?T5>jLx)B46j{kNL{#-FupEI9198ymb@`8#@J7K?rIA$6-(Vh}maS=O^2U2sxE!IHx$bm1`Z8=S0f* zFDu3mU(d<2@fD4BY}OFnSI%D>I7855H^{B8G0xB$ z;)3gq-^V*x91_$?$W-~xSs4(TeN0$&rv%@{ zHzCQ7PX^h5yAH)h=#xPeMu;Mi<@8B28-dIgJ5}jfTKO>y=5)0snJ(8Bo3n_uW^!RafUFp6JSOBR=R*f=mGtdzwZL^86i`9GV|aWs-K zuXQK4WRsXR0~9*xMu&M+!4)Yg%s}dY1dYPi1R%>-l&FP{+lw=Y+SR7LG4%TXL(tHV z)0Al=5Z@p&X!HJGf(F)kGn84%(rh4}Ub)a<;o{Rs8n4sNU)^$UCT(w~GlRt|o9PnG z{|FkOpS&Q8WXgJV1+;=Lt&nCxS*loA_*ZXpz8y@F)6K<{EwjF!YKxR-PK7E_>Z6w$#XG~ zU}1^@pRSYmx1b@%qI?uz*+Ai?bgPP{+HOVI?B(zC1o#-;1rTpFS8bA1h;3d)4j%Swd*Oa*Cr zEF|EC@f6CYee=+>EvvuDwu*{8@3i}updmSGrp?&Rdu!k}Rq+-Tmxf8(&};LXr_pQr z3o zWxvGA=>Dh+w&HEm1X=Mp>i=c*xSM{O<#pZdDg1J={E_PA>eA}h*Qa6W?B}~bHYf#h3e#KdA4pKxdq&0m|7j(SP`PeG$kHO4jHoZ{F^T5#t) zDo6&H(e{s^L5V~)WZlnE>MSF{pcWr#VL?Z6FC!zRmXMflLC@|jt6-^?n7##{k7$m> zVCvTKfBlI%JU$3+Wf0+*d}1}cm(%G}Oa7VviQU0l-e5;9rFH8Qr{BH239@=>d7C65 zw+O&DNi7Yc0bnTuAo#8Q22JMg@Koq3+QW?0A?XWSJACa6iq2ovGuB`4z8lq5a?4WB z+_%{Mu)Lt;)!~`}9|=T?TIm0@lNe~CK#!C^hzLd2$U&sH7RCIc62zbZf1#|!DIQe9 zq%?lu7g$R&e^B%Z`JD8y#dP|8L75mZjY3CnBdhpDEvZnWfc2A&yy1gdYM(~o+X5R! z2gn!oj9G#ljsYfNfd}>F^UE}Z%PyuIXN`OY%@X-fw(6M=8pTqYrRoK?niXF(%Plp_ z^tTT*rPmQD&!$s$RvVLZZ-;4CVpI;#l*`O)UhLwa3lN+7c^S89i03g_1BQKo4V;8UH&C#XgBxJ zi`rtQtJeP3YALm|@1(X{+P2hgUD|f^Y=1O73n6YC)pXFo6)?QYQYyw#v9sufJR05g zX?I)}oO%wDp;MB3l#?ksK|X3P_qQ~5ATl`nWBQt$BzV^EUONQ}HLl#45qIGiItQ~G ztUc}!w>-H!hq9xr9j@H`rekmkR}?e=rQc?SUpq%K&dq}(?|R-AxQm_9co_j2si zY|h#lA}r|)h%?mss*mV>di}E>A`kN*kFp`#qLtPiQkUY0Asw+`V^ks<+GC8PSNNBp z(Jb^?8TZ>K9PGX?!XWJ_WkQD}=K6n2lKhCB_=NC^~o`b3W_%u|FH)%eO+U+N|%W zJM9+~T;hnE*IzLTjV|J@YOZL^JYo~d>x|ya+#Sa z*qT6L|0nvZTRx-VzI@eTtVhS%dql$nKA-zvWq)TYEe#L#cfZWFLtd^68)o(wqi?21 zh2Q3K-b$C$_cNKTdo=wrJaH*{{CjNV*|utU>b?88^1R~N2{SzNXM9@2H1_JD5+=H- zesIzL>M_uYu`Un`(qaGNJz`~anZE10i>Nm}z>v|LGwVD}2YE=6G`M17IA!uU0M7Rt z-TW-_J9dEh{M|LWg|zPao%;Pt&@jGhM%imIcXZh^BflPIT-b^ozpPfmC!Q+$dR+nW zJF+r{RmLKs*Br^VE zZQjSI(f~F9z0e0y0tHb*15u)&Ji~#2TwrJ4+e-gS5wbQCq!AI&bd})*NbF9O8bgeR zT#S}Yj80JOwSpMEff$3m7^ANkQ`B#&X^{9uQCy424LZkdt0+fMYMpvzeIRg-tjlmM z59wX^TMY<+$3UFVUL3}+0O0i%=ZO-3UoI|?FD@|B&DSF?bR_=ns#^d_;{BF5|7*aT z2vNadF?Mnh$3rn`iPTSdys7dcPp`T>sDqG9NNnPQ6}Kdmk9rg_B-e2zRi1iOuO!sj zBvlo9)eR)Ic_g)>B-QLC^)w_kG9-1|Bz1Zujs8L;4Sgj|o+M3qBzs;*>o-M)Ek=v_T#sJ%DM^V!IwI4CycNys_z`T69A4Jw0y&acsEy zSf)c+HKgR&+ErSlT-y4b!~0n9yS|hLa8J`>4E8zH{g&`;ao7~`RTywC`4H|ZILX>B zk2C;5AC$6)>c7^Pf_(|%5B@vg^hdgXQ`+Z2+6M#2e@n`hy#2zAJ!nfNIU|`|L%?mi zDvVqfkUL-%(0`REO<@7wJCe<|Ai^R4fLksV9u$}GdcZMgFzKo}+g{GnTb3(I*5~^m z)J`a?i=SZEtP05^U9*<^}FH9s9__2Ih&** zmYkvRIyviF84L}%ECbnQ3B zZE~4c@?Vff2A&j@&t+aA$wJx`@_73EpNjIMh6;FuCVUlDOl2gIDlz2yk)XrKvcsN` zt>J~MirPTMHH=Z1?q%)DQH4$UuWq&>l=pHo79%&V!xb1x`x*ob`GQ+*^6ou2%hMx~ z8PckBP5T(iqPU7$bc*o`BhyKu4TAl%N3!R>$|B)C&fPLg`Gc_P!S<2ClfQ#eNXmCl z${%QyceqC;HIz_Hm9E*8HZ3G9fGQ}E>%>8~fuSBH#7wmHW|c<*j38&Ds3{uR~W-cPg2nssuV(rV25GUUiktXN+OC$ zqToLyLX#xDgzY`DurjcAX~l9h}p)Q>D3p}y;#aax-+)Ks;52e4)WQs^L{&m*Cv z1~7;DlK>FDfc&Y8=QNxFnuGdZ>r{oM&c$M%>&N%mC_QK!PSB2G;@_IDokcfO)13HAJ^{ACqjG zl~vS9m&A31{8r7iXoYLrR;yZHUARGAn=F; z;(~!N@(HN&H-p*<_2(n`pU*0zhDP{llYZnH#7r8E^r-r9TLhq&OQ_je0CH6^G@Ds! zU)G5U*6zey=wkm{Ho7Q2zf5ojxD^UQ(?P&I3)w_irj{Ii!#faZ4i_|V#vDed3N#aO z4DId!(s#&H5OzINcHk-dthuCKw4WiIaD_{+OS}fx%Z5D8#@MO;q#}XTO;BWj{>C$! z#uSdmWwcTmns&o3J{jJml?jA(E|Vgrl7U@kcVruO?DmZV|7j=3xLZ? zY>?4@y>TSh9QJ_!+lDE2Lvy~H^%Ia;`!{o1j@4ozc;udu)uG3OLAR4feU^DuwsxC}m7Lap3f%+wRq zGQ&LCWJI?3M{??f62|EeZAah>8|g8;#niAc5Z=AhSz7&|#7$rlm$OAafM9l_W_E_G zC=6B9vYho>v-GgM;5Cbv+)yjDWKi0MkTzLrjahQY_$yj3h$Tnp&KkQ)S-~PKV>7nL zAIR4zDz`9G=Xn}-Eqkpj95^bZR-W{Ty*;OkZWRU0+@agPL9yMb* ztZ~_H+Urkff&V-sW0C-+2aH}rGyzW3fG)V9+i>8AwMrAROj~JE$+r!wax|+!wy4EI z{3(UNxE6rc1aJ~Q{_cE8_D$nYjN@t3bnDJY6cMV)O~?!-a86haRE@kqbQC8Hjo-28 zHrnY)UYjp45pX=JT-n5oInvCs->9@_bPf=0I@%WglXY?=;V89_b+!+oKIWFRJz6ov zoQEPuzr?&#q4SB1=3o<% zGZ75auu!oTX>wxO8Z-we67EJJcKXe*e<{3w<*`#3Z0X}*gBf~+mAoHRXupZ&g0%*s zod@9mS{)ftmQY#=cZ9gGp>e8o^n9Je~K(+|6a@HCdM)$b0;O{lrF_y5a!IV3xQIeL4iytI$y66-&tsa z4#o`5CC0C3=PxdTEI1iA*`J}9Tmj^Jjs%KOBX?(>l!KBi=R`+WbjW4JnDeTo@!H9m zMxztMsXyf!RLsjiV@It3=L+eYHDJ!&tv{OBc$dU;Hxgh8e>NcEnJGz+PoZaBL^f8^ zr^?1hXbcw++t7XW>{I)>OQBN)BOL(W9RO%z_XE7k(&!G`R`iUB#WbRt;NVozg`vp7 z!IpWz7wv9~aW~5%TgoEmzc;(fe8#qndmpeJ?X^DReDrce0f<8{bcE3ewB^V(J0f8B zGiyzsUtbw^D3Q*AO&Fl2{6J)BwJqHHxBa*098M6wo2#$L?lg@iY7l#WV!MEpd(GV& z)I9{ArT|Q@+35b07a}WRP178R&lL5U9-niJis}qyKx~ocR?V$Xwgd0#?Go}Qn||l_ zoEHIDcJ?Sf-?O2pYk*)U-B9d^Oe@8v5TD_X(UA=&Z6{&*;|O#jA>LAdPS<@BvcGgT ze(8l^eeR=l?+l$YDXEEL`PKQA}hE9tO$} zNwlC>*srXZ_Q3!EF^B2zGco_)sG&*ZU#?QuJ_D=x?1gpcZcZ7-GCp`-9PM8+D%+rf zk4u3FDd?1WITG;IM$GAAwIa0wIa;(N9k|3%oFJN}m}AzTz;1WLwpeF7SL<+i!=4gz zhKL7Q>kL4_=di!y`Zt>4cyw2z43gz0>FuQ>nkv%dcMUlpIAo&axN={XWb!X>stwbf z;zCM`x2v_BDpWjb0GgrU8OXl=`g7u|_h1rJ}os ziKe#bdZ4x8r??>Ci)tY~fcsTxViT$T@Y zxI}_1(;urXj4`qUXs{m3s>m0tAEFrdB$@USLn5R=hx@^q9Uj? z?j3D$pjmGYIu=VHb|K_^NPx5bdeMionPgt{yB`g7Z&s|i zpcpmHAIQpUPWTQJ8u;!lXxZmGJ5ezJ=bdO;M$KZ$y_5oRDMMe0VLRemqCU8<78i=Ey7P`VGun(-dSC{c3ybv70xA_ z%F9GWd^42dnpS0%VX@InO@{Ia7+sDcO9^uI^bp|xT#P4X)jh1}CH(W7#C)1N1i?I` zQw+cfPOq(5P^?)_S$%WJmPX_)qP%X-WzxILceUR8{i2zaC&PuZtBZ0CF9#YEiz+G8 zER*SAvWQx_1j*4h34azi>q7r1c-~6}5xf|jBCJ+L+|2TsMu|*5D{&$$DaGKnJ{#+i zyjb>3sN>$xM-}6mc>fTbUEPEDE=PgQBcbt#;-}e=f;bx2l?zOG!+iei7r>qxKy)?Y zCSpD)AHv5&B51-e2Oc)Rs;d*`#Z;MyG}1!b{wB^`1qq~lq6UjI{l-nG4r1s*UwG%< zS|qBhkze~~X=5jOrfvtsEh1Ic;z`!A-RHD1rIR>I0~%kC0#S97K9Ep@XzYO~Ec&F| z2FO_^A1u9k_XqJcUkys7)T^~_k~O{tFaj4m zlmGzo=XXjf1z`9AbpW^<{oH{vxRxX&qTD*wzcRKJU;qTL2zo7JAQ8NNLHlMceT1pV z0&EJ#gi=_%ewTyxK{AFrVP*Oq$$*X8PssP#HU_?*C8Jnawd&TbIp~s84UN4q>~l*1 z?vvz3+T-ZZ+6S`4?{)t4)h4KF*8VuPw@`f`TsB7f4P2ydW}4&_tjgbId+ZDdex(X% zmgob}wxE3!6hSo?TyDTC7NO@kv-Y&WXinZ|wi0#~ZOdEaQ!kzTR$EuV;m52%4@si+ zC%i~sOUj}p)EcX=?&ED8>H6^LvYj%7)4az9z(Yh0aLmXBh|BaKBb#);MWRMRVEeRA zLJeTf$fX|qVGJ6{0U^A0%azvw694(qt%+euJ`B6-a^SPIv`>#(_r1 zs4^fi-4$6TXxN@SSS#R{&G&LQKx$(A?5SIu#S#i>G9q5@VuYVZhYGDB#0)I)1|29- zz54c!p-Bv!Jb;Ypn?p-pz1Ds=Yi7@HU-A7A4}d=0 zKahZ$xtH3gcvV3+0prNV#=oOd4XswD2^3H0)sY(U(m+1hTqXI(dRm3jCX@ULwsCcg zE<*y_=UH9-hYBLqm2k1b!%vqPGBXYah8(J$vKN{?C7L%Xx?;MNG}(LJSr1uS5Z~iE zwRUb{51n)$8-pAX8j|%4wCuPh;z%+=_4;q09+0m zwigcr@VR`!B#buoO$_?2AdHcu)U{L;kg`_)iPqRDsAnPVm1HG{(6^E5jQ4SsPg9@j zyyq+qnrME0!Px=t-_ad3bvEE9m9&G#d|JUVe3^^~v@3QHUA+UkTf!i-f(T%#R7X?y z1K!%u z4+7Nh067qi#G4eu;UI=>cd(7(nw(|2DaiyAx@dIe$;OZ+Ol`EQw!fh9U6iZH*%XF9 zoOTxeRaoYcF+22ZgR;kyxvZ*&+&hxu!i{8sGWz4`pIzfql2mnSq(S3K;&#&V8$4(j z*r!_sC?h8^+{IKUZqTUE#fO7jy>;{ z&ldYnUt#3YV3Dw1v+(gFjmk{TXqVo6^>>UdPl)j575vq#Cja49JWb2?!qj9jw_?_x zWaj*iOyG$ksb+<-PnJibId4#^XG3`W{>A#!Xt)A1JbUbMe~d&w${>YDFT^)AOig$r zEm}$OBD?v|!Pw^E$;iXyXWKNdrA^*t5CgVtMv8dpUN39y6fEWj#nR^|uIW;-QT1`>vXrIBFq zJh)&^>Mob{ELUmoKx)=q!j^;mP5Vau{O6n9q(kK)Txt}c!LH-=ju$V?gXBTO*^Hb1 zCjLGN5GPX8XH$K*RFsdLNDx8(Lz9p@j;Wmal14A|wHf8~Dp;6}N*Ys6rC1JmxKm|p z?&`U5+4#h|0S~xLB0`W@&q;T~@W9h`5nijT9au0#WTVWUv3aWe;Hz(;uO&E}VL-NF ziEvr3sNL39feCreN}I5WkHhA)X4`3HwC!pndH#S}n4Lqqf=^WE0=reNSewB$unor z&<>`a*S{LkfW%vgyQ$z#C4kX2f*sp#q5DoeIq&wq{VaXDJIMTxw z3tWO;Y&w*U?3JCAfku=eXWI(_`}Vi&nGY&LPhKnkkEZdH(|~$=#<=`a`3*&b zM7y+}*MdHYok1~ChJ7qB$Kmt zQETEeYn^}JoS$>rj8@sq9#FD#a%tFqNj2pz9pMgi1fZBQyN8JFm`$-;lBJG8{eUBd z2lmy3tp^CX$tWpVSa^<0Q3)qQRb|oxWoE$vj2L&w158l}S0x3lJ!p~3tGe2&iM!`+ z{}=E;f`8h`i(SkIUQThAMeI>#vJppbunv!9H51n)`1wRJEjBW9i+sMUUJyj$6Js&> z=AClB&f=SrutU4ZYI3_L4(A-Agh{Cpv4FPfur!|Mc|0!buA!q^y<(gZGpY86ZVse} z_$*tz*h8`OSW|0oH}55v!!dZ75O0LJfR0%FY3N*uB|Fe z@Qjr3I#%<-4;jYPO%fqL2=6FhPp^k1v$g;+`vP^!;j%T__ix?m=-DmZA37XC<-Upx z9!@@l08vCacy&lp{&F`GiEY=*kwd$pSlX;DMO=W9Z3#1_t-qb!V&m5ca{^MyE!m_I zFIhc=L5fUeRJ#vOx?f591zQG7BopM@>o}e>Pj?`ku|mm9ot>7y>9DTp=l4pjFM8~y zTy}Xcdt&#Lr-j&DndPEJtWx}6@zu3@SDaV?2DDEUG| z3m9N1;c6fqB~Rn7$a5?Ez}5Ug0K0$J?=)V{j`7Um_mZrOotr=ju|@yr(2x!(%eVV( zYM>ni$C)C8C>L&PJe(yFAcdK4;0fVGs=LJ0esHeSsY!}tCTe#%Ew7pwp%3k>Y6R`~ zmkLf+H%$JEZ6>uRGUnrULS{LVi6|gsh_w}3%<~uB)uZ^@@sde>zK`#IJDOl?EyRK| zDDD97F6%?VURxpduN2RGlF!}kE03d_ykk1y0%1)JtFMIC;)JZ11PP2sH?&ncjg2mmVAaD8rUI*OG7s4XtUc7AjyL+Q_ z8;jL4vR(i{^6sjfr2F~2 z7B*%#`h55^HnZ)3Ew90X93>&z3?LJQ1B;IiDww97Xj?m(;(^LUn+?7%!E2d*?>0Wa ztN59#7LPk_byww-DTyf3;1(-DFm{WClYi}+^zSCsXAP@9E;)7>ubis0(bw<;?ue2e zwJ7&;UtXVHmYn!hk6gX9hQPj$JZ{EAVC9iyIu`RpG?B*R0~oD0WOGG874<@KT0OZuj_)_x&7Sug45n2 zpvQEE=g%`2P#xLE9w?!v*{%j=Sl2k6oge|e+z_zm7UYyULanOo~BO^Zi+C!xe=BchJH2jzy#jhL`xP5n0(E^LE=i>3;{)o_I zC^~Z!I18NVo{;MSrx7<3R(R#C)~a|25v$I`KuyGr!aG#u%p#POiG=+VZ_>`h)t{ zLxc}7l436IMHA?Nqz#wuf=aXg8Elrj9XOP`Rdh%qiKDER5!|kKVO8Iv@7zXos;MG? zxAN2T$w~laX=jMPOsHmU#@|ZyGGF`O!QOwE=_UX-ii-q_88__G+L~g2d{hP$5Lhk6 zLidn*I3-T;j=vTXP2kPj*Axwc(CeC{K5kNZ1;4$4YpOi9pL{z!$~fOrFV$ z;no`=sz4`J@c?-kR1gKCS5Am1CzaF<9Fq)E^5uGA!+fcHN_rA@981h`^?vrsK%zVC zR5txdk{w3Ues1JLCxC9f%XbMwA`WwV0X~u+!k%McOz1^8;1X0!36>lNB<&a$T3*+_ zI)D@DBc2@L{osi_C0IH;jZ6G7nGir2o7i$RN6u@RVIjV( zXXf4$dE{7N2uQes2ed?lRd#b0OC`Ul9Q_a`yw6@w;aU2jBY26EQn9@_w6_M{8((q} zT_gU|w%rD9)7naVejg_+*9d-L5kM6hrVZ}~Q`iO)<}h?_lE26*67Nk@cU8rC!rtR!iczb zX{wG$QK@l1z0GX8sTvyOdnN-WLdH=<`-rvNA!9DAHAh2yx79O!a18zAP`PM_h`P{$dSDAAFQfUEJrNY!b z$4w3&pcd-Q6X|+0^&;62Mz;Lo%QZ`3dU9#_#S6!qkE@T?^WU$Z#{7!9u`3SeFec8A zJo6=#&J1G|hl1g^qc^FNc&7dQ6gUErk5ym3bQO39$N!D9{Cgs3yHLD|@y*>-=;w9K z5Bp_*XWoU(dN=X+MvP2jNMf67e|WCQ!lnTQa6T$l1@r7aq)5bpT14Kd3{1Z9lWO=1 zS)T%*;D;x@DpYJ`Nq_fmKAe*MNtbw$@vG`E)Su`TKw#xY_R&14G4YlXO3pG`tM6u8 zB;@6jKYtL~Xw&OFst@`2@?ZAyUKQ9c7CfIC>lo;+BEcyB?!pww%ijCPx%OQ1{~oT_ zdJUJ_|0p%Q@erhzjL+EcsV^kMQpIUUkvL;PCAte|8)D`Ya1I*<&&#SvSX3rJDCnN$ zEVmA-OzI0fkS!4BdYnQJ^}r)A0oE`Q%X?lvdd916M5gLKZB&5+Gx@*ktoXGG;oXiX zrwI_7>VN92WEdaIR_BR4tftWjx58FhJL>;iX>G+;S~Kzd|I2A`QQ#(#u?R!WCXhe8 ztw)j>WJ3PX|NmaDs${xXL6tiSVI?Tq-{5XH%`J$Yq(<7dA+^y^B_;*^x_ifj)x72uLuF@lGG$cp^5 zz@e2%r&X#}87&TIpniKtxAGlFWcw@C{KpY@V}w>+U& zln)^JjIfSW=|?mi*N?W_2@GmbJ|FAY2p13*JlP1;-NWIS79FnqL$l@(`yg-4DOG`X z-6hvHZ{6*+tGSFo#1!Q!qd(3&!ow2N>FJodcX5al$pDE=;2NqNA)R1}N|7c+IU=40 zj=y^p`n_j1^D&D`HBeQo?({<%?N;+gnt#d9Fedqg?UDms;jJIzxD1*&N zt5k;hX;tREAW;Uyf$A#OF+>^+^;PE^%o1zo>;KU-4vTz0FdUTxZx6JZj=MFP0=@Qsbx|1RA^HIo#C&B!Xt3NAIMxf z*?zqUhx!%Vd$}^2i>76T7JL*P+F(I+LKi`gvhlb zmD^x-fKZ;etV{vJd^xYq`ucKFU+KZsa>Q^v!1MX-$;wo0-%2cVN9xN4zuNk*V5&fR zr)UjhLh|ak;H0w*3L8F$gr^sh>E&#HJjyY+9K!c-nKy`sjA4~gC#BC&u~&X!19;EB zJR3v_&9(%PKEyLlqL}goT(IdX-l?-Vwby&BCxeMKi=zv_Lo8un7V<~}Gc<@{4TkT> zZQb5hg1KJgLcOdF(fypaG;Q`E&I8HJWU2X3kv&S2BHg<%oZLuoA1FcX0AQjYBaagW zFcQM~v1K!|iZ9$PJy$iHJ7D{5au=!(CoZPrM1*KXDOuwVGJfXcA<8eIv4Jmi5bL>s=a>Jdra>X8d^~gf7Izf$0RPDbd-hU)@PnT|4&Vb(pr%ToN-Tqa zEJA`1@CX{Kr-dz&VhU8@q!y8?3P>%49(FG%xVG$6|!QBUK-ihrQvabiDo>c^8iK85e@Q@TI2l3h4(bT#& zDo|tE1;<0(3JiRhSK9P(+adw)*;*Zo`@CiAxH{h+tLoBx+sqyR8%LUB%L!}qccnCq zd^(5ow39~ePNJGilDyjWONghwXu$fq8=L+2nS!XG>I(M9ava|hgRnuYWCSn(At05- z?==3BncvtxaE|?uD)H45C-k2?H3ZA7vwN7ba%#-{WC#3Hqto)H>e7bw>Id4+*4z^x zfuwZ)8H$i;A8x>}@piB4OhBj*wQl*qs@8y6EW(zPE{uXkP0+D56DR5+1y-vC>;jV! zqfj;`GeZN~9MOkf`dNgn5z<#GbWgab-%Li`wnn}(SKu`l2-V%1oUL!DI(c>X*&g$c z4h2kGmw;Pic$Akn&KtFtpg*+cUZ-~D!RQhE(}TuXZS+Db6Xv(IuYy)Mt9gz79K(Z+>?m0?1g zR$p8`-2TsnboBZ~W77TY7&AGVk&?UVX<~kozZ<-u+PFN4^6kwodHPyOkWmfAG|((6 zf(`}}=O5ClHJhnub24-lVc+~LD>!8lcsWxR(NnaOuWUAvXntA2u;rmy6a2>KN{pV0 z`M~q1m>|hNJZYs2grH#oEsbK6eKwKXKvE$;QN{pxkjmB&+m>%(X_d2YNf=-8Z4;`N zaD(gfwPF}VE}TlGmp4-{jbH4Q@IQx%|y2@%9D4dDiCfT#q9fT&jzu-6sj+BfKw zma`v{Lv@9+Yx8{N16%<`-s_4*)IY466h?EFA}Av9vxF4T*ctcwtQKaU?CHZVHk$4m>{dgJ2%2enB$?L`Lm&H4D?=hOV(oA7T< zg+51^yn5S{>%eN_JiO1rVAXC7?FEJ1ypW|SxRg|ov5>!HKPnDPkD$m{@FGty06Ne2 zAL61cqqVot>gux3X||84J%D(EYjUer^Wm#6BI$-YW!KXypF)Ux_muw0G8}Ke*uk*e z4v5@YTcn}$#yU>X)wA92ougt3;F4R^b~3e}AFP#PUV=2~aejdehbDGj7;LV|G~|DH zjt9$!sH_by^BsJ_IWNL{L9a|`vJ>C;c*p%TXrK5PXlefUYJYzq+kyG?-a~&$`x85*CV?U$lp6hC1#9=o@V<+Dvm_IEJ5EE3CZ2Tw+9>bj zA+G@B0^7%HI>{e=_->Z{@;7Edee*;g$%%*NQxil^ifRw+nog&2Y)rf$AC%>gWXpkm z-XXL1C7|DF4xnqmg--%J?%wEv*Z)(6cW(|Ue$W~JA|DPG+u%o0)1s*L256?SsnY;F z9ORWx3&eP&T1AbJ77dI+6E>kBP1xoDil!2Q5qwI30JzizjCDdz3VgemGj4|GY5gha zf{f{&YcPg@yIdCFu%uH;z!Kw+bR0ukY6QK8(Uwlj)K{Y+I3pPu(JpQP03Rb=4v+@o zuOZ3alaaH+$nP3=2*vRKHbStPMz#UfRXUaJE-~yJHx9`>$%fDJ1GfncoP`k@iQ#OX z<6`9B@5yP&r3j7+ zl4=eOB!sfOt9{f2u98NOXo<1zoD+5r3Q%82Q@7kM&z6&tu=gzre54c{YLk?%o47Eb zmnSzz#@!+C10f>!q|MC+E%z0f;1U4f%Mq{%j_ytX;LvB{MX8Wr3fx)NahQMVTr>f8 zuzk1gU4kHSo`nf9i>H`tV*;y2KogWt3gz3N%rG}RP?AN`Emo{Id=fK!-4akwnuTwJ z*D$;&WltsTY$}aWW@iwkp9>fe_q|g@4@h5-`1>`NJSC+O!8Jw@WexCJ>5G6}xLDz8 znI;H`FhXAu38ZJYK@I4~AxKh?*r4i96@kD((?=sg1lgt#VF}5D^CTNCMrx3{+*i33 z7rDD({-3pOD> z#h`&MNPt7C+l}383S7JKnN~IM2BCk~Y&PV^$gyj4sSqf}Ti{B=pw+9w3nZQYcwh zHaT7v?5#3qO5KbExS$Em5f5j~G67KHgc=gQPSq>d-5!zw+*G#MU zK$2*2f-<)YM!LZM*b1JXYgOD);j-JALttEAwTPL|peK8_DV_^>wZw6danDW-FfyTz z_oL2i(_`4zb4NXXqe3vtrgrCIR6n5yx-!SlqywflUG(Aoj z<(vw`pUqYMboICv1ZYCrM(4P`I8+P{aev)tA$R09WbQMT=aY@=IJ0OXvRFCj3g(>K z%xg7erDl|Xhxqg^INQS>KZz1ir`6XD0b#5~i?2ED9`AV)t_ENvmk4D-sc)p>a`#fq zh%DaGPUQs(tOkmNYI#XG*3!sS@!cWuaN^OpUZkW?n>>u?RkF%Sa-_LGM_-Ujkkg8J zthI@|jXf_vgXtc#67Y9hrDVQHl7UqfuPwz9OK*NHd-cruqzjI-j zTmdn<7yscj=%mI?K1=6YFG)Lm%98ieI-3>pQ=(A;PJyohe7`eDTu_i+(AKMVU>uS} zkIi;fYC8=8nB7f6ON9%l(n1h%j8N9_fk)wy0P3~Kp1lVN%HS{OOyT8^w0?oRTO%1% z;85e}yteO8NiMXw^7Fe_V+`qIF{bq5l3nxF%RwLYN!HD|m5|S(-xaH5Md$*@=7c;W(p3# zj0?W4Z}BuR@EQyoWRLH0yBUKfzwd+Su#ctIF9q@D2?A33oKS9=2tZE3jR4Q0 zAU;~=TLG0iN&11X8rKe%x^GO?byOn+kldqzfzZ$)S9x|#+6FeKAe67*puQwj zs8RVM4%Oy<-)2m>p~VkeLnOT_ki+jn7~bK|pMb236X;-IN+by$Is>-|LDDhC67EVJ z90URQEWxe2uLrzOoRiY7{jNn)vlD)qQBWR_aApJl=hz+3{T5-*RVpKq4hO9v`sIb+=} zh!8<=Cqj<1#Y~D;OSmOA2XMme`l$IbAP8)^_D?qVpQiK~0SZC*xw(a8@6pe}t72IHuIIf>;1LdF* z?qi35`277viJ+H85U|C5F!id-M-#8iL2&*s;sNF@20_9o96bcd#&aN+2ZA6snj>Hd zD4gE+tVEnN*J5}k17GJ*uT%elHeO4TMgV`kcBOsaaPscELzODKZpsQnrDl zu;eNfb;>K;XE%&UOF%mSCjmebU4aKf}&8=(#Tm= z9G(?iEbBxOjV1;aQ&^yphR#Et&uKFyubWwJg6wa^;9iZX&5gEA?gvtA4bJi^THN}N zsY%?H1Hy1TP*h6iK*~&!8Wc10t1;X1BK=+Ntbs2xC~hYQz=}k4l>>p95+n%;#F}W+ z2nz7-c9Jk)mH^BmhX1epfa)oav@*&Q`zv!IBWI+KV!n+R-R&R}wMd&eC(n9b5=!MOQG=NNzodpt^Y;6fzrUE~MIP$2$~`AkNLk}C=55XRVzQBD z1hNu#rQoPW7fFFw^>UcR(XpAJN+KW1tU3}3a^~qQoDYK73Krr>RRopODRamNN^L|b+K4dv_nVSB zj&WS0yM|aEW6cET(UL`euR1vse6R{e8Tl#3)bRo7Iu${3>X!nOJ}nI^*F1_h4DO5t zEkKWoRP!Qo>q%%ag-Abn5rsSXk#bn^C3aY}T2eClCCfBgofR}K8qKHr5{8mmEeMDs z5#-&C1k-5^fB-toSWY9s%W+VNumy;tfL+N@0iF0d;1St{m8(-+lK|jgh2q7aNH~rl zFF(MGxn-Ql#{&sORD@H+R8fvfn(E6Ov{PlO35S@O=yF9arj4>B`?O68Px-u?RV4Cl zUo_D5?O4%KCw7QBhgmj%z;5DWvL35pXFH7)3ay@*m^{SsD3ADdkPmJVgY{j1K=1?X z0OVQ}*n!&;KykQoIvjuEO6(Y-D(R3~%2-nV?L)B->}$hi3OQ($KHr6qg0{uo4)PAq zQUArM`j5yOzOB`|~@$JI2Fn=K%cVPY8h$S9Y-9?kbj)i`gu*usH?Mjh=nv~6 z2q1G*8z~-y4t^{q&-~T^7+;-lV6n;I$zc+77^>E32mlPzPNCv>bKfcZKg5yrWFfyl z^brs%@FIi}9uIDrbt;i^yPRpzeJUVg%kuuYZm3ebE>jYLmToA0Pa<&tb4YHuAS=9l z7$o=S5KH^Dz$Pk1f3zZSAqaS!*N_Y~jM%#$YN7)`L6DApcmoJZ6MBTqWsI_uWbLDj z!32C03bq>*&!bE21VICj(zt{p5RZ?EI&BWTl%i6_le%?WOQ(%s>wT3wbsKq{Waazv zfOLEdIL+lhO=z$P;m+q*=EQ zkvuo$=>VTUqZo!NGsItG6(Uzc7?c@?1Fhsyu$GM`CluvYe5D4NV}Jn=Jr*B2M6q&WdI>`%t+Bn zqL4^Feuqeo4?o#WJZ1==eWl&DdTO!0R1u#<+3@9of6}y1wL}@gjE7E8(Q-qzRUHKQ zBVwjNo$(9Zn5(o{+PQe)LWEa zv{a<$TW4BE`01@qaGhCj=2gS3{2N+rA7SVdnmlTa`gWsemto?Z$wX9}orW(f@4T;E zUQ%~8x0D+BAkhyl9Oz~%38k;9?$abwq5`Dl>KY762gM=sal%b;{XwKyXe_OTO`{@WjERm`X>J@?`TVgJy{WF+qR~TED>2%hzg1V zgQA7$YG76A$=yPM7!+h)R1^4>569Tj?;YzrRJ|cHL0W5|8t%(`iun2*E89{p@hH{>Mp1=e<1AFxyR)3dk4r3(l>VzVmVbZK)N z&BBGC8DP5b7<_7U6ZbseUXuJvu*)b8uF*HvW>F_(-ZCS1H-dcDXm!z{o0&@^0VElK z%hpoT0{NK!@&9ijntnvgA=qoHH}&DgM{Mule?~D#izq20mB513joWG zbbwd27Ki})!$rcUlMt;}>ZWVjMIp~7so&WVZ|iP_4WSASdC;PZWtVTrJyawpQ{xlb zT`R)3e)x6u?U0;?*&o-bx^;-9{!nj@%I$4kY1&wWoV^SiN(sNmV*(+8JW3B2a~GgF zLnm;#1WlVSToK(PJhT4JFPz1x;ZuGQn)~b=**70+hk`Oze4=x(IM-)sj~m&G|YCyq?SMLc=8GV1G$ScC0B5=tvffwfu8G-Ad5Y~T z@kL(`HGlkjnvVJNIpQ+lWm8&!2pxBAYjIK)5FB8cTya(Et~ zE{f}h29jxsf+hH}*`dl1Kn_ZYlv1@?6gMyS2?3gf1VBRP0Hh579%noW6Jt{{eXdRu zTEGJ@>WZ?5#5wZDIgji8$q$xr4+qdoH9G^Vk+}Elverl@WdIW?oZR$P6_*+ery2od z!`{f$qNK-R?;s$}U@Ue3CL6_?CkXh5#z|;K>1)PiYbEA-B<6=niQXh^ym`5FCD|4L zC`JI~dHI9PfW-m8HcbFQ00}{Wd0{!=Q$7F(9mDQ`0s5kKMwN}8jhp1DBT{7jv}$5Y z;{3Q060w}d1pIBvlorQjT(D?DoGquY&WfaHD~MiHIjaJf2Jo^bt(7*4tRFQ;+WOFX4@zx=9r_30pLJm0J!_cOb+A z0~mGz+^94QM}|+UF?5$1F*i-w4@TS}HX8niLNX&5B5D%_BlBqqB=ldN4Fy#oEo0a4EC`J8Xdt`!AtV9Vz13`26&!WcizQH0kamhHgN*?& zKi9Jm%W0f<=1d&rgs#6_=_38WMkoL!OokC&Aa{>?lsPCkjH?7h)50qeya%~T~&GU1psix8$G9} zb^x|gU>Xtc!XjG7Nb%2-|78N^(E##b zUFPzHj)y{zE+qyFGBbNJwS!6t>ad)~Byw7!kr$0)HMLxkd^1xB>3P zOKmgcj4&jASx0htRq!NLEM%3Ahd$rp2s`y;=ZS&ojVC$tDS+h6^78Wv^D7j-zfmHr z6uCf3=Ea57mY)&08sSt7^HpSNS1A9Fsj)#T6!wyBBS(wNwsbwPOB?A?o9T5|X{J-{ z>Q(J7M>7Wl*nkVIc~W=alI3PymE`vV9Q-yO|3x)idJBd4g$*ADcO_;zcp;s1LSJA} zjk>pl{P{Z!shW9N8ia3zZ?d8BRX;pyqHq zdMvI{m!2A4OL1RqGlqF-W>L#FUTC0`-t=EwqX1Ip$X^G5^ZQ46)jcB=9vLtG_+MS) zPNuTzrn*L^&UPaKd&;w7EUmk5_>Zp9``o-p|9fG*uw3*oqkmO+-uNV&UOW;_*nH04 zY(m%A$X#wT85mSl|9PX}*Y{=&Vaprym%`%}<@XhjZ;>|DtOlBWk6Xa=y~Z zUrH*842L)76*U%ouiWJSudeagOn|XIxUMQHzUi#GNsh7l5r5l%bd4#SQ44=2f%*)> zn%myM`|#&~`2VYG=qe0Yza6p;9_?*h-LOxx#p|7_Q^|5s+v(`LZo1Mw z!vDcFn1s}(S~LV|PV(F3y;2M|Spi|rlukTKt>h@#n_)$dvm`LNc#VPkmk6=ho-jq}E3zd@Op3=`f zMa4aZzkA*g^;ReMmgx4D*Y`FS_f{PDwodi7==N0!^wlT#)ztUpCX+EF*DKV&fQN2$ z59#)g=&DN|hra5qn#=&q9QV(C?r(#dxHGAUK+^>*WFl`V)^m6&wrF8w>Us3r!h&-Z1uJdMx6{ z7@T-KQg7^D^sTp`THjrhN5gosV7tbjw|3ZUT1sk7f_CBl;<`=#tqZ;<@w9 z*<-!g9}Tm=Qs%x3&fQGU{bru~=Q9WRJA2GLkE<|$WiyAK7J7P|{@}^zI`IOL?9Qw3L_H?F>z zS&caP54#d6v=*(u7VEnfpSqUd%jru({ZnTkh-5vJq{`GbJUM@s5BrHltp8^04-i^! zJlPX$bp^uHi{oIrKxv%l_`U=vj?1|T`#;3 zuviT5>b@-&i`m{vQ#f$OVlgaUDrtvUEXK36)(?xteDHHsJbE#E#Qb?VjPz^dKWBmM zqgcPMpZDgYn!YA~uwi}m70bw+rH+%%e#J5}M(STPo4y6T+IJ5B4;WjgL-IpTWtA4g{4*Y|#dA2N!^-Yoxd zWIk0Kjr{x})O0w7b!1qi0{;D2ZQ6Tn@NF6E$ovzWNjup!*j@N}f@Nf;oKC(p{bX-C z;ePcWMus2s^Vs0jj%90{10GpFjKsoExHHQMe>5Y6Tdhe9;Jew)|29Dtx%iqz(*bMOi52 zx!A4^s1bjy5cKnM;um*hnOZE~34s~kV!8TjmWZO|x65yJ8x4HJpLss6w(as7`7ZUt zqRycwYsT8#*Sem-1&cyi{Iux}KG_~Awm7x>5b^gPF0cOc4*CeOc(htGaaRlR@AZ1*SZ;$Wssv&`;q zIOh6f>tj5t{lAy@S0_7TW%ig?|Nj2P;ETe5_?#^;FqxXDGA^A<3yU&7YmBH00Z(O% z3X#aLs49ufev2xZ5{{S}g(hcfb|-_BX^glIUrlA3jzIIUxUNvwew(hyM;r+~u`$kf zdJ=PL68ciBF7NbZc48z99v)S`Gmt+WmM~Pf*?(uKgu#(CQpV?MH&P{2mo!$Vb8R=) zWQ~#^&i5SC>uDoVrYQ10$O}ceg_{nTD)mES+1oV?1k|tWzRS zb+=Qp$f&Gys?1@xbGj1VLzhfV?jDzHLyd>7xfX6cuKD(H58Vp0AxtcK`EI?QHDz&f zUbQvVy`ML zzd7vl|A@hR6fl6#(;t8t%5I4p$PSEG0AjM6;|H??6aIUZfW1mo0Ip>>Ck_htyKu{_ zPZ(kYB&!~|@>{G=TEw})u#psZI0QHV3_uWD=>;J0WpMxy3;;ure=f+VlqZBwn2!RH zvE*lHlF@dOF%ko_p}IEtun7j<{0u|JZMcfg8`S3TBMzd?up?Vawnu6hV61{7I#3r6 zhcgof3Q|&?-U^rbDXX@422)|oF%{N0;LJdGkqHwUjPEAwaggk#=l_&dG&XCx|6XTb zs&U8(6C)(McTrB*P0)=d`&NDPs#8!{Z}$FdxViK>wec+qj1$A!g!tP3Tlnt^4jk=d zNZmr${QkhR+pquddj7-IQO~L3-#as^=yXs#k1|5|G5X8U)f&;q_t)2^um1dq-Xm4G z2jmn9x(q1JbFqQD0wT$fMj!udrH5_*Vj>I3#C7F#^gAR%;+0p+U$=@7oS8zw5;v&b z#DN#h$+l=8cUfFPzi82yMS=;tgYY3fXF76pqyiE)NZCXhTNE8dhPliHxd_V!M?{kmgZD$_6-VWlv#9Pzw(V!J z_9=S{MV2t$3x^oeO%`(JRgIxUgEWNX2Jvx0By+WKsznTl%&&Ds81Eue0nX$C%ED4U z-OmSG4vz?9 z3#AtK;_f*88kBBUQ;$@Pf+-uIUlPuz+`gp55kO&VzgJWhzGS7R*i=h&X-imr6$a)$ zi=<9XR8sV!c#7PwmNQ)$h7WyXk1r5(JVc_jIR>A;zO`X^(5#F};O|Dn@4IXf4Ae{! zU5l4N6c{A4GjQo_P9wLMO30u{qG#Nf6@;$#vSfFt=NHJR#^JYG>Kd>BX=)@Fb+p>m zt_E&pP^IX|0>HhF)avbCwei4*~I#bcNU}DReI`dip9)DOzy$rcc+qo9|?PD*m@zEfT9IN&p11uC=|Xk3k*%Amh~5o+{M{cPTbiTl)K^GU!wlF@QtUX;N7 z!r{g^DzNKX0hO=%k4`69N$Pp!Y0RM-=ZU} zv%N*XIec|$`?@#({X6}7-{Ydy5BKfWQJy?v&);fJuMgoez~`$2@f!-qrB{0vt9}N< z5rC7xn*s8)vk-WIRf0=iP08OM&v&MFNnhL!LGfCBJiR|R|D+*?f0`mD%Lm$s8kM&0 z?c=`CMKk{5O3`W%e71{p_@Q$<1|t;*y#hRrUZWney7GFi$@GO={%*o3?IPS=e&@cT zyIN9OSAIuZAO2iAcvPD7mo2Bfm0SkL!0Jp>#_F^iG;{z{%{y9WJCkh32M-%Qm#ViJ z@mdWJ`!r|Pt!jS9|235Ue*UGpWCf9}M+2eU{A=8H_YuO?+sTz#HkR|3`aX|K-53NV z8(d7{r!;GN&8FY3Ttv=HJ0Ht+&$OfkN5^lb9KTX#)`d4oRNLzwv~6G4U%@1k$X=%v zUUXESekGt67jSnjyPfA96{=d0d$Rb``hCS~fe8Fm`*w2jZs8{Ge;;0cH!JSrm#y}B zcH&^mI(5HAzVb8b<2#@;s0S6rGr@skhoiq`CsO3 ztXy|_Y1^#AH?2E9J9)ax2e6I&`;b-&6u#-vw99#{yZY%26BpX(yM-$YsA$W6jFP$l zn*X|ILfhpIw~#2Hp1oBSm)feY7=RMQA6c)i&R+ZW_y)ZFYQg&8^sPbw1v)zG&vyxJ zng5HgyZ(wg?%stz#85*FC5?2KGzd6!cc*}Kcf$-Ff*>8zh;&Lw4vlnoN=iv8QuE+_ zpYK}FS?iqhC(K%(ALf1Sy|0(`mz@37zU)08m^8s5EYVhD!KDFy{yHAl{k69L&uOUH zZxz#U>pTk4DRSJ?@xAub_d>y}jKQ{ZzeplASr#G<)H{^uDqVcuE*?vniF9s5a7EqR z8!Q=O{JyXHuxLM^CDaV9y-)e=J8Zdxlfj;{o~PG(fBj3Itc0r|ukDASrl(k081GT( z?S`w&vDlgDE~As9yN21iR}6>LR{T7){^;>L5#BXCrJ5?cG`u$1?dhs`%=i7fAhyux zHiVWt8Ia_J4oUA%=Us-YkLahh^}d6%kz-Zd{#ec3(Qb$FX{^VEO#rrUf!&!!z!zU% zTzO}O4EySX;5u|7_619pCh=#;i6heQxFy75&X0uzO86V)+SX8Z0BoP3Taf{UQOa4G zS=$ZB1wXxlOzGi$+xKVmv3_&l^{kb&pQ|hBid5&UWHee0*^#jy&r>qHty@_=#AcqEI3g|sU<`;iZ zQVvY8Xz<-itsZ=BL1kgIOSI5%A794Xh||ch;CYy^q%;lyskkn@KP~W$UlfTf#2C>M zYUXQtW8;rP6ixUlT4&1tS7ewD+%qhbmd_hq$p@wKz~XWsk|T!bHVHsh5Z?UdjRp+V zW*!=Us1h%aizOH|4sqp<_J1)Qf!-Rd@w{y^M9)R)oMjO0E2#hNCKxJn;cQ_LxZ0>x z`a8DCPE=~xMdsGUWeLbF1hMgpoh}WaYL4u)N#NBA2zvI6TVd^yAGj{CF?j-`%j6l% z@uJZa7l#GOZbQuU9XW0NzenTKW1unmg^d~5m9sE%wfcNNj9z+yWO4IhQUM#AF=|Cx z{eT(g-cKSP9ep9qLk?<(J_3`uTZ*t?jMq-rGxH7xEi)d)M2;+d7#r5V%Ov1O$YA{V z6K9_!W(Wb?PJK+Ek1z#5>(P?jwn7y8@deO7R(r?gW=1;}h5gzJDjkj|AtB;RMV+=& z!MFB{fI+4F1;_XN*bYJ!?fq#ilGMH#feh?~elqs?peyTrFo1q@f?Pzlfn5kNfW!t? z?=S^tAck{I2~JU|-$^ns-BGmlQVe8S=vh+OmNQpNGij$~BCHJv3_=cUvqG2oEKxCJ z?K2&t(o+w!Flj;Ye^UwkQKHb$619@>Vw0}-;)Q8Js7b)!V(|>=1Vun*{$Kt{7+%r$ zsQUdVpCnX^Ybb$Efum-O8Mma*Xi6Ui1j#hYg;B?HpA`JS1p=IE%c_AX%uFs{Wi}a`!FPeZ$P@UWEB1%9L^Ad>C81oa z-KWogflwGs##!_gmqL-{N`N6Np=Jf1eOpn~pBxv5SC$OLsCPi0q)aMAqrMq&X?m$3Nlxi{KfAw$ZS5|;cgdmmER!fp#vei!I4Y~^NEl%u`#+5K)q z#g@kI85}@fe(hZWDg;C{RW!>dV8ScwvN_#EE1`~ZuBmo>L1~p8gYkF)1exD*-^}HR zfzA7ks%9>+Vc_K0qe6)kpCXL%nt?CVMg$fSrT#J@Ts-fe3F7Yras!H$8+JnG{E#f+ zEOkXBGw&LDNl4oka6Y7HLjOp9Q*fLmMFt2mO7#U(1?HC zKD4)b7|RMMnxuV&JCI&m;!wds3#wWYVwn?VfTOh6)l(jGHbBtH5qH(Ftva1|+OqOB zRn|4X?(klaMJefqoQXCrX*HhwuBHPCaw&XRdZ8!QM1Td$ziBPHy{%9HJ^NP4C4bG^ zF>36tzDl$kc}D8~%C3NsS3Lu3eQix+P`XMFHVYtDg|lY>`cfux1_A0^oWzK@_;QUB zR?D*yrOa*>m)-ceFS_IoH93wznq9=fs7_M3HSI^eCxyjEQ|iGxI}M8Rz(9h2SU$Y1 zi08gJJ%>GNwOn#P)Jx-=L3nL(g_*5#DFaen>v>BB;rj^q$MVo=EK*DxX6!@(MDeeb>wD0h}x zwq}8vy|CIHc9J%XD+m;UU*hmWDocyca}Qs$dC_!$_f2ba)M<~Zt`zH~@32v63X!b4 z?vGiEVmsS0FwTyJRar~XR0#SZP>gTNYSl)-vQ>B*9cX=}Z9}-HGsOp&IX@`7p!IJD zvaCsi-xnIn9C~c4xQfOE?_dwvcJH(T2M`cESK;E=%Qwc@;MVG;{N;e%rh%u%nas#r zH=On(fU869c{RM#xIdb%w@SIi6bv^QYPB@dFZIn5#q2N5K~k<72+`_;_P3Og7-;*C zI&%E1eIYrJd|#ZY)bF&$0ITbgwm}y@3FH+SWWK{M&u$+;Xou*n32LXh4Oc6aY{f54;M;;jNF`1@3Wg@E@ zp1*5otDB}Wow1jiLhF>vbDH5eWx`4V;yo6-tj_Qws+lg=#wx?7@=a#NOqnVvfz@j% zUI3ENp;5WaZy|fyA3v*sl5mb zUXr3)il~0$S{|PnYaapKnGGaZawE(*yc!e){ zxp+NAC1IuJkuJ_zrM6?X)^wHi*_xtRRQ^2MyuQj@1OV2F%58edPt>AizJkwo^37dck%FC+Nbm>JL@D_#|&14dAJwXM$wSh^! z{qPF9ArTO_OhW4WH~OX30Y&M-Z_7@ zp)ob`j7{-!?1+A#Mg@y`o+6ia?ns4D*Ps5tlh{>IqXunkrSW04pKmHs@0EN+y#ve* zhJ*4r_lzc}f~1#qw-$}5_a`o9LMz@pI*&pv^Y*7LaA-`o7+@f9&Avw$Wrb>;A8EBAP^0VYa)Jo60B;)i;41G|R6R&VBDAvR7XXh` zacgH-2Pi^)j*&<*1322CI>1DndqJnqs)~=mZ!dg40#GNz4b3koxk;YADG4RyyRCDo zx0kksp!a4XVo7IAo0m4P&T&zJ>WH&T{bvm^k_jei4*5)H%8pVZ(PN|fPLeazop%;^`UB)meAi) z7uUF7FYPve%U%3z$wQMcKY1=gmi!2mzygw){|Q16ns%RDZ2a*~{Q39lM;P>0bJO**gRS5V!vDUhEn*{wUjEVGDdQm#@Z{9C_J#H5+^WXVz?`Y~l5*62_-FGeT z?<$M$s$SmH6oORFP?WjvTl1m#5gPXkN%vi~_Ym$sEr|PmJp5;4s&WT~+3aBq4?lBa zt$FidW)rLkd#FIUpUr+3{|@t*eIfJf>MGj@=3p-&C!&zG?K z=D(i4b>ENSAcd+U0JR`CEHFdG@SXnDmShAbF_+cS)V6dCKBHQRLB?4D3Od?^Gk5s0dI{In;Wx)O7VX!uh`rRJ%Pgb+zK!rRmzO`|kJu#X#kcoM27@ z*6+Me{)d68CyT+-L)&=pzy2=+75uBATA=&O+s&uohkpzdxAqIv?Q7byH^?CV^ZznX z8|RocERD&QZcu*guVIQTWO_w#b7Kw3L$DIZn_lDhYeuED#s zrmv=6*xq_3p7Y-NW(Uc8J!3|v-UgP>+ph-sUelT+Ryp3k4eg3g?F3$(5a}5?HO~92 zT4L6x8N2ln`>v^3D>gpA4{I2GO?_6qTU1>ogMG~cj+=ZHWv6Ej%tG#O{%jJY31G#^ zA^l^Z2)hzVUm6kW{Fi|`tl&|?rYZ@*@S5{AN#MCIph(^O)<#hKLqFi@)m zt!0{X3IAcBvY3HKUJ0<=|1eP6$-s<-3YPycP*BmLtXE9?_Wv9xqeIk^_^`UlX9nsx zG2g###kl7m19d;%tCchRkAZ4bMdqU}{qT>05)^bSE?QFg$3Q*k1d&J8ZT0+PpkxwV z5*!EVGlDLK7X^&ncC}Fe4c1vx2|d&cgCk z^Us0uRY$7!{uAu?zY(}FCCG?C;OiU_i9v6-ng$z{bX31Ww3 z*ts<0G*f{@)`bI1mh~|@GIS(gZU>mNKgR2s6q8T;$#92VK;v~Oi%B<0<#+}^#(Hw> z5dZWW;@h82fI89Bd@GX|#%)OS5VNAkv6q+I!2f8fWA)6S?|I%p;Y{BH~t!OaU@ z1ACPO>3B`jNYu<6d;Ly1?3^PM5-u7?!|?#Uucf-xj@FL+Y!+i-N|pybGNosnmjXw=|biWbWzR3m(nAQQcPu&4K9T?D<;HkLeT zFL54Elu(cbj&Exp?eFu5H!9nNUzYmm2Hj$tvbSHPkoI#@yT?0M{UF&f806`4OR$AL z><}La55Ep^BP!T>3pZ*K%14mD+{Jp>&7FSHBcZ|b-pJFM!`5)rc;6$V^Wi@X)H^26 ztnnZl{x62(j$OQ%@$tK9Wbg71TWosn~dv zu=u)S=g}309<+MZT!TDZ;Y~VE6c{=*j#`xr( z6x}h2nt0_NWyzrJYO;roIBSdK^vE1C+3zj9EeiJZsK&M0dwr16#4i4P;4i+Ub5{d}06j|RZeRiOR zRJ@Bv_sQ(Ld9}=+87RB&)T_585=Zoq1@(}pN>cPoQkC>jn$(f*_PiYHq59fGLn-xQ zSCWiFioryRwnUQANs2{GimpSFDOHO7T9Pfkmsv*==b-_5`8t8YT#S7uG@f1ZIhXmv z*GR&^4dmlR2vXJxdP$3<_6a-niAMAZmGp^qNQ?LPiF}p5LY8?$)GzVuEw4$x;gFFM zlabq%mdEawVUUpw>c33xSFnnq$jZJO{-La%&!v{L4L%h5S zS%;NZY3|k?TQXz~(Asi~E5TT+FX`&EiGJGyIsD~;$sQ|!O zk|;h$LYQXC`L8KRXLWErd}V1JY9MD%_6kiFQ%q4&Of^wVb5cwXQp|`~%>1O7Ri&8S zp_ntK_-Rcs_e3%8K{0tqE@qPWIhaL+^XC$rrf!v z+;yVd{h$oTR_UQs>E%%A6I1C|Q5i5%>4^Z;6O3MHH5SKXTMom%_VW^)hhk4Dw4A7j ze^e4EQKCMtEFVFh6;qv4QJptYU2sxe41%gI#j7rVQeCN1UF}d^8&h5PQjO_l9r_Vk z|1gZ;;!_?{fN`{{aD<1k3Cm78sl8E@F2+_2sv6~3iiEbQ!FttB$JEZ&)P9|)oj*+Y z2C#hUjT{n{-#+1uwTdsHjLdkCi~*BB_@pi&(qo1Fy@Fw!V;CT%frhMrjC`&RAcjr> z9w(8hG*B2dfT|j3vKr{(8W^Ti=xI|J&Qn;q8lcY_IO7_)0~&ap8sPOQJmP8a=@bFg zG@34&)G&H>lcW*D5c7$avG(`Hz_wV0Z;plqLKm5Jg8Xa;4PT+N)<*oHKyCM+XeJ&{zWnzE;a_f7-) zW0SO;TF4rJ1hOJ14Tj3VoN}j*Dixjb_?-IQoa*?TCb8}_YM@RvuO^@i)zzKXxY5xG zp4Uy&HA>Lc;hcX?w2YnSjZbye#&xxB=FK1HO{w(W5$oE+(Z#*THi@{UsT#S(uz^cJ zk3e-Qfo|DxJ(0hfcEqYjCan7%1S>1rS0}UAyA3yM@3Sk0r^D5aXZ8F}Qye3@<*CLM z1ZEg{Q@9<<#Ho~Q#reIVyCC2&fW&X1s4m)AVb0HVN%-5K=RB|er-?w-upmxC1jEei zWrWHb#zxox$WjB%hZv=6mhI(mn47ghDkI?(hcZE#{v*GZ(>MWeOW$T-2%0u+v@=#+ zR?guj$N3(aWEhsIYFNZb*!m#zpu-sqgVE_m**7dD&I3K>4ZcHBbu_Ptfp&65q=waD z$QT+?g`7t9I4No3;?qIPl>#YQX+|WBBhlhrUe+K(1sFEV9DK`YaVykRc)9-6m{VlM zD^>0DGp!YDl$Nkkj#H~ywPFNXt-Pf(WzpfHM+$^Jt67HK<0j0kt1hZ58NgLR!&Qzl zL(hR_jlQ)~KWG%{Qe@bvQ~|Nkc*44n`%()BOJ$G{}Uim&Uj>#Fu zb{>j5*ubK&ftWWZr%plQQqD*-vuu4!^NMc6d4aTgbI=;gQsY_GL#772?uZ1lV633J zt&xBD0cAAY5z%kl#?$s9}W{deadrhb-!)K;$w*UP`IgVFSY9sK$M5K8Mp*^?(JNwZPZya}6 zc6m2ldVO@sFw2ouhVjp@Tb-kRn@*0|sGB5}2ksk>N+5p}a1jDP-n~ z%AtOOAPudNCe5G}xOm%XTmP_bDX|{*yklWjRr$1DZDSMY7Rmu(WKunxFMc0xycGFFX$$-C`VH=0di7pyI#VB-(?sdVhIFBHpSK)l&|{0z z&F9JfCRJ?`lX>745(YqD;LK@Ra3#7+y;pE+N$;&_v)${nMnwCdiqLx?Nm*E^l$LU? z^R7+Gb9UtM{w zXqzc}d25aH+ZX8$mYGKkvRVkW&uGH{)SXaGg;Ub&9S5=tDM!QO!N?&s{W?5+Qv1xHF>TrkydIPvIF&&jY6uM()C=5t@y0_8X^-v0IrNX|;eEmI zR_agB1!@9Up&v3H9KM9oxNByEmgEPxCikZ|W_|jfMu)Uq5g*caIo^66+_yx+LqNUJ~g-)VpnyNV@ zT167wxzhX64)OaU$~FdV`(VP7nbm?T-2;8W&dv1?HLF89)t=55yAbHS_u$j4(XpBD z<{$Fq%fpkO=}~9xFx@cj+ZFJBzqdm%gI9>_t@?{U(ltH^*Os`jO^f&3e(?y8j-^w` zrdhU+UsA?L65F?m>bqpo?`a$SEDijPyKm#6{t1bo2%&B37meSs{Xf0IXY@5^BH51h zjZ1&)U+C+f$sJ%YkQV?waGpQgj~n&>!u|1M%U^%NE#gf>2J*W?p@8aW|H;h1Ubbr* z_kX{y>slJ`50H(jn+(ZR}Bp;mREAd_0r(B(_{|ps0Bk?TxmJ~WZK52GNU!S z-cv;d8c+q;sRdOr-xX(I*Fvr0C*-0g14s11enQ5=lfTLh?t8eQL9N_BoEy-P?OS6)VP9b>y4Ge`Q*iixI=ypE{jW^N1bAG9|T^+P81V%LCZIm8vLW%2Os%|jW%rKo8q+|6+RyUYx9e@gqU@i;xYVPDE{62zc{8dx(<>jJ;vv1lrQIaTKD zhyo@25G;{NpUaUuHDmGHZBBFKlW2uJ&pyG8P>hiEt5{lp()6-oQAos-Mih}_H`t=b z*8fD7cTAO4>Qb(9O*g)C`?;$aR=2$i`4_pS`u;kc`J!Fx@+kWIWTnOP*V*Ii+w&ho zDco;vTHeB;VQG!((#Ua^)UDU+0aYqU*C!2ZZwITs@xdBc+;EW4A@seF5@IW`gSK!T z*s)qu2MMj-0)i41ZEk>sAskciyaX0$Wu}je%xt12cD}0}7)2JDs-+?#OP3(9;z$2M z8KcZi_+y84bla zszdZ_D!zpB0WZ{K4+oC50<(wmLxxii)30)BLY`&^I6cRKPGPX^iljHk3+h&lwd<-;wkx)3%EgDLYHKwas`>|KvZ@C7#tI_P z9aKIJqhtD=lp!u0Em_$Ln@Ty`#Xd7I-xEL#5~87qbDs!QE&7`!+lXHs9FY#*gyjp39I0Uxj-OR zg=H(WZ;5j%@VM*sug?3Ye<0N6!g%h!lSj(MM~Am(vzn#C-EAUfhM{O$X8yCS`wmRC zSelREI(=i(yLyvA=vEVf((^JcL8J;T@=mHiwojAeyULOYZb4?m&UW8D;tc?W1&%~e z2TMMpm~i;R+9UqmEa~S7AOFu0E6rW>2SqnEsh%G-CE6nHP z7P?A7sH=en66SCLTJ56b7iVq<%q*jbULpLdkFJg+()o7_LqIMT3%n#2c@!Cb1_w+w zS!d6jC!)P-y8i`2p|B2TQC+x-5Up9JYE`g`)N?ho4t9C)4E)63i8DZ*MXNvPiO6MD zr8m*Wgsyw_#!f3nzP-;TUnE82DxpD(joCR4A$l#DFoqDu5}U)N5E(YTY{=+(V0^Bj zph6|*jy_WyBT)8!X*#m^F>W*z^I=aI=vR!SFiOKzSooFG0nY(jN};xknf3w)6uI}B z9;8i%W){(dLemO)$X=uuHF~cxl%h}V&O8=;32n@OdSHg2WG74g!1KqBNPb5X-l`i+ zgD!FlnFd%53>#hnUW}IteiJFhV;f6h2+E9XkgMm*=1Oqf?G^R!0WqRlyrZ_TdAG7~&9h=Q_wwtP4tgenl$fzRR=#v!MH3<+z_h(lIDkkTAjns)$Q5wKuXROy z3l)s&eTeI0I;5FIz*)Kkw>}FRLi=Ak( z1uZ57bcJ7shYtsoHivuA__r$bHJOmqJ|8j)WonL!Clu#eEiqH=e@jYt_hOK>HW(NI z5ebKq05njZhgV*;bclpv}$Aot&mC-X#V5iDuuw;&q*CWx3j!qlhFi zy(8R87}DdfFe*8j6Y>4mJCa!MO>PH}RYmx;G8|)sL|sYyw4}$dWv=jHll#`BbFsSz(Bfj7+8xwwH3)vq3dQ z^=3Q(_)2AP;Ecl@#khwL!@cAC8H!E(l-7PGi3%fM)ZLPgRc%XG2?fpcM-EK{U{BguD4;YFPpa=W|efDCi_Jh-V_J9L&AtKLj zqh?RMnb4yeRBDg1xQ@ltd8tlPJZNZKJkSm1DYnJo0dC7gDU_GQoY5>jZ)7?>OU_wC zk@16rYafO`I4l{hka+m88z2MRD ztx`p~UwXfdU99(gY5pX{yZwmLu>g1)VFjT>cUR%_t1y|o56u++yZiPtG^P5)ny-C% z52=FIA}15=h`w-y=aXyAMJNuoIYvU@m4FI@%68Z&bt2{TBKLLNa-vK6Bt0jUoqD#` zFTpGn@k1nT6Za3|-`M1-x(dY$G){gCuPmdz5$+|dar=?*Ei;q4qSXIznBCqSfN~3e zO=|qzE#GLOy!1-2aCN{n1p2W}DqX-Q0b38kx4iLZ9~q+`baJLcCaZq83QzGo;pFZ( zkU)q`g@+{nO*UK!r#KlK?bXl-G~S^g`Qx!ixvb*Azn-yfV)NQoimv-U2#o8T{FC!A z@DCitnI?zQxx~)sh5VL?`iGdv=Y7}N&a)(@w!T1+JCn;TXQEiu093ZxUD)@be8RLz zPTpmHE>mn_k+Z>PmUPAcU}f*QnziOFybTdjX}YvuZJ+*Uk?3Zn^Sbnn_>uMTBJXPW z3TAFHeTGX!>7uZnx{&wW_v#~0S6)y5g_8wYBc(U;nU|c*_oxBzNWS3*xhm^>wKXpN z>0hsI7P=*VH@;M{+k_J42XZ^i3|#*CXIPPwHdPQo{9Lz|&MR>J6Nxuzc=R|865rTX zGfrLxY~Ejfmk$R!!E4K@jK9q{eaeuu&+4~-`A>wB*aB2j2V`YU!Z%E4=E0;rfL6nV z^3BtP9066++`=4dMuP=TQrq#B@PXB*1XH}*e5Tg0{a|UR+sEN6|4dG*WaOxqsJ{#F zo@l^%pg&}@fh>5N7hC!dxtOV&-~z-;>(+_8ru+|~l$GCK3j5<#Ex%m!pT}BW+1*~b z=qx~}LJDz0qvm5&P?f}cbpHg8OmLcm2MZ}DXsOKNQ0egAZ_g=tyGF;N7zBJvy7Y=1N>Di~H^)5ia-ZMY^iO;k^%Mw+@@}bCQ zi^_GIcGAv>P=N4NP#*zZAE33bGAQCymbOB6o^DQwE6zlB{Oyi?;rVp-qQ3>mC=Wp; ziO14|VwHKFgh92u_K1;&oJ`HCS1e#gFQ^sGDwi_>y+$R{pqTkCYweVSPtyk$&V{vp zppnXjS$q^Rkpuydz^J{%hX71E#L_SOTo&g-TYnfq9poh{gE%br;^Hkr@dti?0b}z7 z^Y6ixZJI;x9ex{nS-lcjvl1hd>i(uz z%(_+V{Mp8Z$=0Yu?#K2YMTDY_O-Zve41X97o-(kF873UWQc~I$z>&o0-&N)XsPrNJ(3*{hMEQ2 zk5ZV~+J-RuMIHR~W;_n1&mI`42qNblhTtZZ7^BfCHSZvqgaS|*LHxF!D*%*F0FNjL z4MvYWLs6b#0=dC3HMXrf+Gpp%5&%FFAZ7ispXssS#p}obFkK_R!D$dW;hK4^!N~5(&s+{eMTN=)=P)RHT2N4?+4Gn3*%&u zn6!r&qXz{Q;EBd)#tXstBuT*$5oS1^LSUQr8ws?=9D*zfq6vSA4M&Ub6Rtw$rR>dU zGtX4}0+un{@jJu`J9Jbm(d}aW2SV|#3N~*SvS_}~Qp&A~0Oh6Jjf0qbK)r7v2)0ZnpQ z$4Llz@`cH!cx2sxmo_1sN2N7K`*Zzm7Un+-4b3qB-c+NZDp)_DE5Mmwe>j0-_n;8L z03jzkCYbRK#~>m=ab6FyLg-g6Nl#>kA6T$SWN7)0Sr4cKZci6(c{*sL(1&ggCt=Hq zY(By_M}9VM0A7cFc62fe6~U)lM}xHw6WrX9)v5{Ab?K)%Yd_H_k5S?oj9tEmY?W~a zn4n4afiNWR1a}n5;->5XmZ2-e=ci;mt{5H1?IXv?{Aa{^$c0}BuhMLGmVMYiWSfo2RJ~~ zh{jc&;f%dD`To&O{R&hfz;U&%J>k8=`NzTWobhiaVfMx1f@3}J@c;@J&4g?|d9`gQF z=080S7VhdfH+i{+u>Hw%4Q9%plw<=OoXR|CYz?CFqfX8QUomyUiQyGoIJE-MT@4<8#l=5jdG~tOMIC zlaYfDS>Y^Rby1&}8SsYl9pu>4>sdU}kosY7LipGkEB4v;P&s1R;FJdD;=s_KpLf6WI+Th-jygGzn zf$8N_ehI7J%%z9(Ym&KPuf|zbYj`mmyb-jLZ}z=rdj}dg{_q*xF3UdQk{*CSG43KN zr@bn;toddNySX%$W-A=<_kmGDfCY)#?@cK{zftSpE)y5*j_9vVL5>nbd%GGu>nSg6)Qy?=adYV2xK3Nyi{tR>^ETSoJ|YpzDYrcai%-4D1H?z=F< zl|+#VSGcEAY%JtIs(0%a3K|kJy5-^O@e(GOwE1#6)zF+DAf12owSb@q!yyI3IYf}IiMb%s7CV7+k>?JUsny(Jnd9Ag^^eJs+KIB53pH5#}% zMIaBSJ+v5;Y!KNz&%Gc`at+H`p9VyH75E`wuWdQ`R`ZlA8ii18Hobs$ge=FZc3`(> zjL^4~H-GcNzSbx}OKjZSGrlbW2N1(ei22~F<1;&U&(Qfed?G+qFQ3xx4e0BaQzJO7 z9~H>MOI}_01=t@dO7G`qC(OK3!7TMHAK{;pD12FB`QD*ffJZ3Z!~Z?V%d78Jp!4mX z2?VJF2C%$UuF4unAm=xSJOv90Pm0VX^MO8jib^y34a*oCk_D>2OhIX@><)07ZNce| z@n<8VCDecO#_qJHG$UFt6Xf@ejBYljmwpsnr-|lnO_KqQ?$`1h4<8a_P!i51{EPhZ zo6RJV>y>|t!RspD_7+d)+8WYA_LNw5Dx*<&c!U3|K;GhmGB1*^@$V3cxF#N{S#45$ zsrDX?r$+!BnY=G=1mIouWzhi9x5C-_^2ze_mA=Y-A?KR9LYnp^aLT)gW`Hmpt9$G0{TGG~Wn!UfNK?avAI@AF$2OXWA_@$C?j5i+`g^JS z0(BP}7Mbzd=M!r^XHaya#I^jJxDoMzW@@RApZ6>KbNB6w(cmIA?etZQFh2KTyr&m9 zGV}T0esiw_%3fEs`k%{(jJ;oBTm3$|~8&mRL26=f|8#NIf{@lq^B87yJYJW5ld5enxy%_BZDes>p1Yw3IB7>_f#PiL2@wnic*G>Y;W(dj$ z;U9GXI|zF2i?T2Ehf>3n>#<~HzH#`^kCCDuyiQ=@HL zGz}>`CNRd~A{++`!Vg1INGZ+3lS=?`fns~6Y8Ba=h!C^=kTtLV?|M@`VaPG#*h-c) z_K<2M%3MuyoUnrJK}uWQ-XUXmVvj|-V33;dj~^Jnkp%hurX(y&t1h7<9Owap>)|E9 z*>?9x>g>a!1PSt=C23~aKTAF7n7Ut=9~l-_w_SQdtkd~MWv7;qrJ|;H+xElV5qk;(~;X#8>^q#win1t$-P5bRu%E)g#yRRK1~AQI$V8h_b)>_Y`|;x2 zk}Nkg1V7$_sMxT`himO7UR~c){}<|Q$_sp0;9Ezet^J}fV^lsjyO%S!rP1nKpudo2#k0&Gee?8Mj55g^h)f5DtPr!yuTtk5Wl0|#m`J%F%8 zcAFzOt0EZ!wrPYcvT%Z6fK|R;w0=Q)%gkcr#A}P^Q?`C1PM2WTQLE7pJV-(qFbZe$ zK6JY%k%PlY&+)d;h#FG3;S*s267eAf(?}zHrbMlIN1Ygf66y083#quqEEFaM)Ir5r zxU49K&>EO|!tBeOCs3weQpk}>YH4Hi-@(y&ndtTK&9O+qwhZ1@UCEyl-A}Z$?xVu{ z8C&UemQux9KjxTT^ zxRjCUl-S!8d>q@CnfB!^l6(PqMo^?1jesJYPfdZL^ijCIBHEW}De{ss2aNAAzHN6n zVcNEar38uO2ihRT&1PBZ-Dizdn7wGsnm@4-SvCA4rcrokX-6c7PZQjsOfmu=((p%C zA)`4e0yIX^N73}|;yC#S1?~6#aL{TqGAGQj3-3oWk3fn~(nSX#p_y&#e}pa*1xwGB ze~cGKLQ`=u2%tz|aUbmF)51x!x;XLsZftgyN7DIoeOQ;?V1VDl8)EoSA!zY>p?={^3vtosp z-8<^VTX*POG?Pxar(b>gX=3YC@9S{3&bAQn(<0A+L-%Ihz?O&~um?4WseTNuEDdcIOA2Q<7WRDxZHqC)#gf5L+SNtt~>RX8`3-;%OMStKjeqdhU9ib(okgW!I7qCWkm z%HGt`xTQJ1W%Q^`<^2l6ug8ellXWO;gE=qJns1jAhuOI{aYw-2)`FCLW${&dcNIhVYbrM)HQIEV)O69A6c__ z-I3q18RY_311I2dgSNUGA8wfIk8 zGi0eKwHhHO(n09a!6*K1{N3>FM&!aCU1}>imvqx}B1tze%s|uy=BOf;fML=! zGAgp%Vdlb1tba|<6P5*WOwmK3${di_aoIe&D|U7Iwe+aj=yq;9(vI{GMbUUOe#ZFawncnLt!0HB|X z5saj>I8GvSX*?vd0!n2GtR$&nRUO~S=cLf0;N)zzSr4F^r1&3U$M=*p#HBQ7mH<>W zo=4HMox$>11S)6_L)n_C0DY|huWmFYuV3X;nbM`=9|e{D>^MNU21axe#``JeIM>D2 zu)!rL1`CT-l-(hp8K8%JAn;K3&I%HdhkIZ2q2w^?s15HJ&P}Xzjw%Uw>~(q6Qcv!$ zPTr~wR#S`J`hYaMvp!dq8jtt-a2(@L65jn39>T5DgLBf26$!@`SGN~4KZ#q6UY8m` z#^M~6bbv&wj+V5IlCC&ir1rx^;fgw8MKlqLstN}7am{KZ0%g@=W@>sBIQuN+TyZbN zym8Ci|J4JVgB67L>?O@xur*%=q`EmOHw~awsy5t0is+>YFI4 zs2k~#=~}%eB7iAsL5DhS?9V26J*aNUe54O}=;K7Xg^B~1+_?pCLRE4wQW${II#`w{ zyBju1kj)O>rwC?Q0W-asARlD?Y|p}Z6qrS{bM11~I=<5-!lF7(I_R}GHMTc4PUei{ zSrT&6!2n=FX&Vm-^$~3QqPKp(5x$xbb}VBjob9oHD*f#c#_*?$j~Qo+^ae-aK{oj3 z^C%=83Q2+|fngh26v5>a%r^<;#(gV#4tBJXJ)9C=SND@oy1sF#kDr<(PwIKqFcDEM zVt{vbY9+Ds;!kvq_SfGG5ozB#{AVB?ohluFf*~DCc%zpXCR*qg#z#ECL?gz}d~(A* zJpY^opZG@8ng~DQCF%?1_|nPzS#g`egOUk|(=NEIY9?Lf>vPtv=OTkC7Nn*+w z(Q_Ka0lDz>L_(Tx6agbfj2V+gOes*%C`Q9%h?4S2Qbg=2xnojL>0YwTVs|%&c2qoR z*q=hwa5OP?fWFY%mA}AzwNMKb(b!}qK}YNaCO~@cm%QSyQxz&nTRqc73@qFc_;8JO zR)t78LDuD1sy0S}8a<_vM5CE%q?_znA0o81TEhEIO!jXHi=-VZQ;{KT`|4rMPZ7MD z1C&e+;L*oHg!E>K!tmSfZprox6u)LJaToYfE%1O!P&cLY>+xT2C{!9F2~}8fh##ka;TyO4z7dMZ4*g`RmgApu>72SI86R%ms;xPj)bjC*4{Gzwidc|Kn|vf z$4r~E(>>4qZIVMB_{qTj$0R1iUOwNV2#Yq2#?30i(q1bUI&Bd}gK;w2H!u-OZBVV;?%`E;&a z8Jf\t6BRp}_&Pg>j41_~y3>!(&F)1pVxCB4I;7Ig3l6Tk)v@Q_CT^=mrZO~0eK zZGW=!F3sXU+Wm-gX%fs5;b!;_Mq8${Z3dmPFQW6JHud`LrASn(C};u{qvK)g<$HjG zpk+-|5nQ5ojZZ!#I@~);8KDIj(Ls^+NP*k#*1qlwl7PFNg4mTW52>9EUqGB2B(99l zE1--~8$<&~q^-rP?xT^CilCWNmw}>3)0Yn){;H#K$Op;^Ix?fsd z#lZ$l9Q_=LBlz9r6#)|s)_!|HA%&|AG@b3>#PjVm+mnp@zfB&!1t8{+Q_1Pr#&y_! zKPrRNYowZDh_WzOA|k|;-asl|z9tWWGpg!Y14$`|-j@#AGlp%ZCQb^HpPMxDQ0qsk z?(PZ^E zsyn3;TVcOEbxXwb*1aWg%$J~`0-#l=FG&wwcz{FrZzIPvEYtxHRG4#g#{gBbtif1- z5K3Ts=G7A#5BHbDasbI+G>-lpwN==tP*cy%6#Gy$G&(EkYA)$;A5+$N1b-3gycNhO zCYC21R^T5dKO3ej748ukj_yViV@Nt%o9Biyfed&E1C9iONf5?6S&N&PUvOD7_<2l& z0T}3(J<^xn(JAZot)8fKRsYClSMswYzwFE)nVB#%8TN9Eq%2v?cTOj^aRX1D0xW@LS3h`V(>a$N26D{dPosxPA zrcoIqX1`oKq&0|5qtRqd`DmsO;Y^=OXV5VWg&~50>>`#@cHo5Ghuv|^qaZ4;dOn?HD>PXqpXB?BXc(7K$lf=y2}*URY53;44N zgy({)nKb3_Bx7l19rN%i0HX*ayoNDh^s>m(7Z`&ji@^Arrk3kcfY0q9^$Jy2cB$XZ zt1|&`B?S^XJ7BQ_iIN>L1ogHS(?aZ9o2Fb7aKeLV3(yw8&@;DvvTS3H`4D74od4U^ zvQRATxZ*Wh(;X|TT{54|72qQuBrUG^uGQkR=;a$8LHAGD4f3)HnJCBzra2sS? z3J4ytqj&>^y~!;JYNPP(d=wc3WK)1E^zwhhH6L13PYSNf5x<8{KX^c-KxndW%I(o! z>>&`vJSL|2%xT`E)9Sr;Grn70ac(_$K^*y zJgFT5uHv8i2=%2YAXUuDS}eHAGN<#~c@@VssX#bclwJLIJT$MaS^35wYWw%l{oRu8 zizCgRe}egsSib(W`kG$aRzl10Odyc#yRBVb1TrUkI=6f{y`vxigane20En^#U@>?| zEFP`W-Y%N$4XDDz-vm8FaYOe4a-}+oD)Xw&<~#pb4znvfZVwhq*MCOMF%pRzq_Z2g z#e2k>%OA|4A8prcvdq4)o^9ai^*gME9>nnbeUkzt30b~iZ0TcV^zphbkjVnWI2Z|> z!Ie_>Bz1;lIt9^FSTZ4e)lI;iU^;&_4$W_gZPx$on4SxDQy4n4us+TiiC&m)%4?Ry zveayIaPctl)r;EVNiN@#Rq?ZPOA(bYM=x0^Oa{+V+pN%kj>Xbu(stdN{UBrhxK0;0 z%#8g8E_#+?9n>v3*6%y^0t_u&!a3Mg3cem^t_YF`klhB%NWCZ_uVeY@dV|$4qDl5h zEv$_abD1L+n$c{_-*7nIYm(-i{VqLlJ={mUkgy>;^O2$usmOJ%3|YKH2Ox z{geME;|H>M7PgcnI6F+c-Y(jfa>xHWYhZW)5MX7$#S=WQnQUdsCQ07uAvMWCND{r1 zPRWv1C;BYpvZn)ZQ%-ci9XSGw(3c%sZNcz&Ati7W`+>ZW^pmJx^6YRFW0C&D5F>xG zke(KsQ}z7QY;acYRK2Ut9{==eHUH1?t7pKsR*K7U>ZZh;EXOYhYun3)#yJQW2b2W2 z@F`X}E(IlqF2N~UeiWx<5~CbD{ga!&+#>O-qm!v{h4^m*U%noGy!hQA`b|Jk=~M0e z>){{Q;iD_ili7~)Uh^+|w(R?<*89vBKIu4Gnjd!+Rbd}ue*;0_L>jg<0K9v53_;EQ z*_umDC!-<;8Oz`7JDStr(E$%Wn)}$2i}`FYcnMVl`&p83raYRKUOufaq`>jf>m}0DwzKzN2Qt z&|-kak$g9Nj9<1+MhM?(pNe^Ix4*KHMSaVp9&Q7?h+Ar6zJKUlco*Ary0W_R^Mk>_ zY3{?yK#4n|r`K0k1PVJ0h+M-i6vh@~7e*p9U>8n)A8v0}$K7Z~cyeZ~5oUCLlZz>I zx#(?9b(OvT7A-;Ma#NJ#l{1=uS~lL5^X!g*R4#`oMo;m%IO)^^saEk3j#ijd1i&mz z?0SXkcrT{P)d{w7VO-t3W7@}FRyMj*xD>TCHdQF(_q;-3bBgtR`N4yQxIpvz-!{RT zqf&fEze}>y#asV>c$Cc@d_*fB>_cR)Qo22XhS~RG#c{|^lT&oo-{_$WyB^wgJ3jj> zUoKd3^#fPZXW-MFvcAz6u>04BONTUS(lF)p?*;MhR_*_2jIz`?&IFtLH=3NfnLI|k z`q|K=-UFOTI&}^6-pqWpv|>Drj+bT`E>(6fokofFD@GCPZJ->#6?5dos%%)#RP-7j@dN2QsA$$aOS*F@$Y)L9jU&OSlcOsKHC ziF`%Mtf4-kcS0E}f^S#n_4T^WSbO8cC?5K+M6tj2UyVD7ool3hGw5f?Q# zn}2<=OsmaPRj|$*m!ZNKP~W-3WJe?Xt*Y}}YyqNc>w@Y+%pr5=2khVwJq(yV3j?mP z2R;m(K1dS*SPGJQx}#H|z}Hh47d{kI52}E;w+Q2*qXi!Pg8|2;U^FH0P~i&<+;%|m z6xnTxqnfN~ZAv?I)On>MP)L~+^ItqFSo^2mh9K$2F%223*I2?9qecM6b>j~C+?vyX~ODJ8tp zE8I%%*b)z$4ZShn+s(l0$jGo6@v4w$#Bb>NgaX$vfWMZy-v9&rzz{9lXqRxxInPLO z-p)`a^jr_)2r>+6g}UL9alGV|Z?`=al34r|)8R+zZT?44gg<6-1O?UQ#e9?DeJ zhe8E#5c0LsqNpPb8S*65j8yMu$T}Ol6FlaXGIgJ<%y5jBPa#d^2UX!X{k)4ouSN%# zs1F(~f2_$1@9~e*Ef7?>$V>UTkMZ8Y6w0wf6XKtX_p*AH-+M%3)>H|jEadSjqpksO%iC_Iu zD$Smpf2=UvKgIrAE|^yX!hD*U1I9d56XGe_9=REehpzw)7yweKHLp2cTuBg^P#W%R3~jLjakyC* z=Y72hhvt{qQhrTCOQi($vJb$Xb~SOG(@++bB%U4@1)$1FD8lPKDU(v)X)09u2E z6C(%X?H6ZWa(6=9n*l&7#brcIEig@DER$1m=!=$qOnPs1_P2x$@s9zcF|Qt9F~p_m z4^TK|^NT%94t_u;(xh=)7DEWm(0LR&lfdTL3#LOwa&Th@E5_5n3P=zGHz!aN*~yWH zkK~CU{02bB_K2`vXv`b#P{1-niU1Q1#x?b_B#OJ|sUBpp>Nyq)R?rop-`-TES_P1q z(THMe0l*3ciFN#KKYBZu{#YU0*##_KpAgPT`U^USRR!%`XP%wwnH^YWBY`6up7BA8 zYeG#eqo%_O0rg)_sK+fJR$^pR&o!7a`V6~g6L-%y5}eUy3ILTcjCH?;riw^7z!UGx zYL&yrYf>YFJqB@ZosbSyNdn&uMG@icB+6*J7_DkCv@|Qt#s0KO3;VXTXF&}ep|l-%^XUs4l`sKEZ9L#i@MhK7r2aBP_LHD;n_*uHR+4;Ou?YFn-2U?V@7^=?)#71@-NX{Z&Xbs>j29tv%nhm<sxi))1f>9RwzE`3ML_8z$^c{=v+TCKS|mInPD)P8L^t8Gk%k(P##>Yg zXHJK-51fd^tk0i|r-o=eVd+J8!U}6xfZQ$&BA{qbIK#!wx&#>63_iqFhCG8 z_y!x|%D^ZpKt#u2uTFtv$zUY_m;(txC6m-E03J_=E9wDcJgsCz0M00YwjGI5GqC+G z1ZW4NMM4b60F=i;taNdTD9}bIg>*lN3j-`gL1gEs-Zv8Ab(s=)tklC^Jc@# zr#^+`B$LY(Pf|Me&|SgeE(+S1&P8rVURl5m8~}0Hk(4TcEwB(`7g+5a?DHgm9t8yf z;!9B=CQmf1$pt2kdwp3CD6NSX5dn$Y!N4MvJRhK3A|Mq7fLtjM0Z3pg1B-3Ni6nz8 z6d=o3D`q=uwy_i?1;~x5<%EQgBi%&sKrT;UhYBi~_ND4LLrIU6NwjE~M56X!n(lVm zBXbq}rdhC|Z*-ToN2r7G85yTNNJ=bfP?3PPke!C99044@!(OYi^eftnjHPfPA@q2^ zx)hSI_iyf)BW=crENb4UcuL&%F+q$Gxn+as^uh#i8Em*z3lVWSO=1xd@LhhAcmBzR z20$_#RUIxFgoS9~fpm6kB>1>fJES7=jnHw>j4FlAShgEpTxl$@Q;p(O1bjy?0WI63 zJn%uv)9ID@ijUs^)T282^ZcoNcVK45+y>jm4`^$J^o_}-e)_J&aBC>Bh^ufDZO8&q z061`!@huI0~FL1vOGK)7(&U*<@G}d=0m_I0xj18NnZqd#N^Oy&7nM_923}QUIwA%e z-7bWA>n&vD9`+V?$P}e&m8H9uWd<@_(yA_rsSZ4q$?7hmQM9)F1I*{}sOOTb?=I*q zaaKl|c&_~g?+2c;q}Av%t#!!`XU7?+>ZSo! z@0~>rKnLtkY4$EnLEPEX1vHig)Pl%hD4C7`sNJmMr(`i26mr`L4xCzdu~4ZjC&^K) zTN$)CAe(fsime6Yu1xwPnR7tIg!O5y8cy~#fHD>t$R(0cUJN)QhH%-zNMve2pjUgn z5$M)ft@c4ewJoC2{!XKiMPlDz*;^)q^;>1uDhnk4sRz`Y>Y&(_$FbH=P@hJr`{`jP>zSOXB$Go(O)zd(a&kHUCs7+*soFk1k1 ze|atc!pD7OqtcCoAKQnA+m}omSNsxXF7LM2H`ZHSrECmF*abL$hjF2|N)3?k zPqhS4ZB({`zYiTMeAmZ^G{&cPoP==eW=qTFJs%W`3vB3rvg@e})$=crZg2W-gMgM< z=R&l;w+rrd36pj^@uu&>4Au-n0=+tZ6m;JkNlfZ`$btLfj>G}4zbIkqna6}E0FWzZ zU??h@nuWQ-&r1$Qrc@K}g!c6L*dJgS3|tTN29DkQ7r?tdVzrzhoH%lNdX34xfOruI zXARt|9ll#b&Wn3Cd!&Itk=%%yk7kU2zJ!skk%h>ie%%)Bd#3e>p*wzLAaQSi+Bk3Q zW8_3U9|Yqoz1WytL3LM=5_ab^m2;S?)uX#uS!R(+BVH);7~mHG9XJ{VmOcU%>JdzH zy(D?D#g{bjETgCjKU1!WIQL|=%?8@{u)y$UlijI@XEYhby(0)O9wrfuyUB0}PGkaQ z3Ke0pqDnL0{a~n>ettQyBJlO6&etum?(y74(=ab-$LC9{c3k_H25H1JMLZQ@m{71vUOityfIk8J!UPE1Kdq@xvf}l3DCKr=6Q$`L{vj`;;c8 zV;~d>7!Nmoajz*t$JkhPN=0{I=P{K9mzA#kh-k*m$0ukNCs!xvG~g{@*^}VT`Bt!l z>eZl2(dn_f(0`?=x3@Nf8|Sj}rf-zJ;ioKu;m+?U|q3jwJM3zc27tjmAV`#%VO2fAP7ZC~47>k=4dli?+tdPA}4 ztM>dMuodLPC)0_G=2VKjxc-zxRK5z}`%h)Hmb-jp_W=)Ad7iI6C7X|Jk2Gm1^6+;3 z_Qw)tLoE*@<3uqBGeAnQ%(cx)rFy{o8livHmoU^%cp{r%fLyqI04g7#P%Hfrdc#kp zf6W&e%S!*(OjH5hP(bh=xqWO1+!#amztJt!{pz0SE|AT-Rei%x)sh#vC2BvfY~-2L za$JqR8mZBYi$#&=%)UMNXvuzvg@{&#-)QGHM(CRB_GpHL@~&vO)m5WN7*4 zPLNL_@{nm1)&97PM0L@T?0~rX2vPm2J|xZjpDkArU_%7TfZYbVl8|G;1^@Z#LS%NJ zgWu@ZSrSg<5$$JGzF!jok1a44z;VJuR}bPOymt(_*35 z*&r3YXfntwb?x*WM=J9Ab##DN!mZ$=MZptek2BMJGjevqD)L8RASY!)BfPqnr4S3A zdac@30!HDt(vm@nD3TS&eX&nGZjT3etgEjQ&;G+t3G17D{dHcux*zq+=Pu>4Ct$b6 zqLm)EsR3!Z1^V=Ao(y|XYPVhI?EYI;5W+r_bh#!lzZpz%Ss;9g-g&aV>$GcndisuL zAzIj{mXdi*I#iksPN#Q%)(k4MBN=%O?A#^Gi#WJly&t>xr|8jjug7(q*p|`L6Iof^ zi2QU2?$UjP+&7s2o72bpA)kkqQ=F1X=&_n*!nex5{!!ol)&D>FDP}JG6Q@Ne+b#Kd z2er>|ip;fX_oXx~Z$KgDs`MxsAo>_WW=QVCqK6{v{!oe{W4#~2puegTM=NO4!>3Po zAJkg6II$TPO%bGDSge?Bu&$NCr>PRU+8z1%cIzADa8{o+=*Hm;zYbg$Qn?&5)AS1f~~|#^7r%Qj#q>O-HJVP z`lpXF)EDNl9A4BSNsHmKzuR%T}95{I?D8Tk0%vx7b+3sNO|D0g&u`LMGj zVpk{sn}!9V3vOCYA#trDUaQ9J(IcwP>W5ydRcA*-?hbq`X8fx7$0kBwW+N~Bp)6DA zg2)h6WJFwd-F@$*Uak}!{=O@>H&I&uAE|0mg_Bv}KvBs2E^*xNomP=rf~1=mKl$tl zX+7Ph)posbD*V%<|1DK%-dajhTutCI;u&Afi63k$E=ogdL95&zabM^R)oUvoYOfCJ z*+xp3nE#ivQbqO>wAXbc$Wqm^KXyGj_M$ZfU4e{L6|F~njITZK{%_8z(Ly_MPa;t_ zGx$KsZ#0THq>+T(13i7xT>qXP< zhd#Cq*?;nKG4%hnu3VcEUkuB9*{8A76Py{fIRyMD?yrx|sMGK~6P3Kr3b)X(P~>pnXK-uGAcZlB5Bep#%q zmpK0{n)-da_pork+)2sUhJ;}=--yhk(MRof^;)OZzCH_8ckXyOYa7kFhZEg58GM~v zA$y)*(>F17;hJgXw-SBpv;WWi_4W-TsfJV`jHng*??rTQ-!Hskkg;{(e$(dXpu+{7 z&%O&}1e)W+PU;pf!O$<34JSXMAB6nb-1IpAN}O&n_jcRk1AZry)#~U%N&!SSh9N4} z`lYANG%m2|yRM8KP*}Z}Dv*5tyRscjqFIsLS5H)RC=0seEw-r`4d}UxI@6)g0W=Cf zV2iLvlR8Q(A4CefQU}`k@JiuMQ!2tzUf7?yNULztjmJC=vVgl2=rYmUq=EcK3Uw8x zQhO~T`szK8=^C1Qv%Y%4{g*r@IJf}CBcrKha#zFKiftipvxk&X z?>S-e2`z_=ns&xS+Iy9f=WrQm5zYxs{xyx6uLJir4n)$MdK`sbW;5!P#zpvdAwUmW zx_1BEjcHSHx|`mjQ^uX*Yb(b+tx+bgc3G2r>tvobyG8f8?_@5$*T!FXiRNGVT8w{Q zAsW8$X4Io`^6lZGlkoAZR?_!3A&$j(iOr%ulg`O}0^|b^aoJZw#x<4Qt-R9HF=CuN z+t52;q>BoVtcq~p>vz%dsIm%8JqCNvLU!m=4GHNn8A&fQV)sJr3n=Z(Xf+OlDitm8vW%a!lcDHPL@as~oED+5F1zljQETp}{l^ z+DC5RBMB7_CQ$zP^ELC)@vG`ryV|yY&>K=(R~^+MR|~elh1oB_f5K=WDIP54kGm4| z3?q}ngO%sLP^x)G3F_DpiCuKE+Z?^HzcOiVJu28x^@=mLN{{<`Ql77c0XYaf2_Et9 zlW433dAj{%{UO~iyK$Tpr1OM>{(HX++uh_8HwRAP?}LgVb#Dsf*0~I222Gv3(di`> z>%4|7!N_nKuH4o!ZJo>&66d%J7%FL; zDsWSKS#G?aN;iAj+ctm^a*%&!k%`e{Vq|IhiW5>Z+1Pq6Q1vm&x4uOF#~xLKd3>Y- zZCy>OOgxJ#uOF=mL;b+2`~2^|-#MbWnx2Yyx~2h1+`8ZqnkWxXB-Q){asMbnY;gq< zE#1ld`Y75^Zk43Tzwg%b<5-WypS1lK{letGqW$vLxV~I`kqG&fuFXOZK4upkxjG^7}6z1TFvgciu*Lb@)O! z7*Fxw;&f-&On9GsX$3evvU;;Q;1dd4Orbd7x@lhaJ zWI{OLh~*TBgB3^@apVaKH*>UPEQ(a83Y6lVq@;?pG@Vq}3N*orB*BVw2{?#bV^xbR zV6Btw`j%Agd))wH4!4w>gG*eA(@2Tip^MuJf#&v6;<$-0W$C(I+{K&F#hs@lcoT5i z-X*Z7!~?ncU6h2^l*Uor!aCg&EZrhT-6GuGVk4cO?uxS4ci(fn1+3urSm_?Oi+|ul z>;dd~z|wP{RONxVin2;iD`St6mCF4+Wpy7F4Ty>=K~6=BMnyGGMLR)7x4uVxtw(9E z=VocD=yUfNkgDobs2Gl@7&!DACbazP?lv#(wE}f@cJ^9L^;)m>+MM># z2%jp~;l41Rf#?Vg=RCE@;(<7EHcY}m!qh-wuv&<$Xgp*vndNQ3+Q1v}!Bn3{R+_1XkxnDQ&)372l*g6T&_X-3DVD2J{`CWEy{xJRcQMp^Vx;;F%vOtg5K zuPfYNSMx^4+(y@o9ugFCFJd}VD=Jwi)*hx?ef=f==rrrC837ZPI#bDo)Vr|iFueB- ztg80|m$e(zkxE>}u9rTBu5E%yj8n^3a~|LO{A8T&>fKqaU*`%TM+~ocB$p>eX3eYJ<+9@TTDP@T%71b$K<0&=ADfO3A z8j(|)g!Cz`k}2(mshc=a)weg7L6vF}WND}M9pe%;Fx=9{M!Fzl$7!RN)5fo+O(Lhw z)2A&Gr!7m2ts17S)~Bt{jM3K685^=0TiTh&JTp&NXB;F<993r=U(Ps1npnLwrs14+ zZI~%YhCcO=O2j9-y(NE~0(**|i5Q#l8l7?Hq4TDl^*J+nPGe~#S*?hIJ8FIdfhHYW! zwnBNg!X&rC)wUu`wj!OjqI|caqqbr)wqi@S;u^Q&`?eBhwh}kCUY~Cz!L~C~s)+c| zgpKWY=iB+P9W32W0q;(swSzU2gLS8a4c~*!sDrJHgYD9ToyLRRzJtA)gZ+(zgY$z!*x?b~;W01z@YgHJ z!xOc`QkH~)?Q4k#?>5nOI9aBjiQ>!1-m>$zQ zAJh3A(?=gOWF9lVKW1w3av))Z|6dEYO*g`=1n|u!1YI>;cqP{U`{3#jNA#mjpnI1s zzzp7-TNyEE;>a_vjb|9YItJGm?tdq{)$wEXwOLDw3Rc@fqsVVDWnFN*1HDtcuh^v+^C!qr z5dB_r)Yal7N3Y$HezaNJHZV0apLCr}O;cz6J2HFg^ecI9|NRS9!<@N<63Y0k2f(-| z%*DtjJTC?bkF0Gb^0P>{9<(s_h4rP-FmXphLxBnI(mw207m6xBp7wI}eac9oQK1+7 zKI#!@l!}`|LHA1%rD@(rDWR#~(U01b z>O0s%A%gMYAojnG(z`BQfz3#E!2}pX0uvcjN0@1RGRi2u|6cG1Fgpog_ioUDp)B`G zw5H2@Btd;LppPcylm>ENp0B@nz9F%b`zfh?j6wRPgrtBjJIA5lK$FmT%;l95J$es2 z`6(>P&*zBsSll~Ys$8@fOH*PvEjr}ftQT}waryT^&J3!qp(e_`P?u~ANBkU_<)`Z^ zqAshGN;p5OZeAY|^OrWuDQzs3+*f)y_}lDg|2fYN7Nlva5&4++@b(4DhT_=Xq~YJU z$}gkrz|>^OGczuxvk%eU)|Rt#muT8+4+2Uj|dwhfMC)CcU3dfK3dhY0r6&2f=n znXV@MDqVE<8rbs=8fl0ZqI*RmeJlJ22ZEvRD1ur*ICANOqJBNOMO`kPEZI-)WwSMSSZJ!wmK;fr9JB*Ln5a{0qN|WwY!g0TUj%N)f%2f zQ{GV^Fb#9R2rSNxa0FdsN0gMXX6aBez3=XmF5QjzBBw6ebkykd&_{1<(K4&+%_tXn zdB|C}&hp@Duy1n}=NFvw>n(Iur)ULH0FmyBNOf{x+`|T4)Pjq}jChZxf8V29m8hkX z<|YB($6|Y)RIo?Yoj*(N6a?jUZ4a7H55S0X;`5#b%s*9?>HTCW|6U7Ey83eG7VUGc#opr`c(LQ(;b!Vt?HRcCRZ0ns(k6Eqs$-0c z^l~^peai68GrXj9zu-ru2iYgt$=46pK8^cXDUCAB$?!I)BNEkBq~uB__5}r=k?i+t z?M#vrN4xK!sZ_(W?|%51&15ux_^@@XpCU{M{`NX7_t9!@2KFBzs+NApz@VZLRe3 zBo8@={F1wLT%}PgOwIlyj_q5d;03%{E--s`VIxsU6~oMMvgmqm9sPyv<=lH4w~a>d zZjsBE;**CqbsFljPPTz0dB}mL2h3vQl>;4M&aYRO;>R5_7i(zuv(ZD4%wwyX$K@<# zCG=v16*Ol&gd5d5W6N-X5;_(FC^0n>=o5d8zu5ULy{E_lq0mqO1#R6#C}oC#mF51H z`nUgve)IFE<$85Ci`I^GvXtXMTqeV4G(vAcT4XY$2Zi}tXF2j)!*N)1eSL8TJ^zZ=#H3R@WR{$xSg+4|?<&vSq*f6xFiy&km!l>A6W%8-mizj3n zk-Xv|9Z?h!7=#`+Qkf6-I2mS>1+1F2P2)7_M>K8~ak zHR!$%(dquN8+-!aJi{NU#DM7~^Jk*+90H}#n84cwfT0^(7Z;~IhrWA})L94s1(-cF zOLp##kDb##;q$xA5uNOkV7&#lGfSc?yWMK4%F*oOapJthoAf?|>aS{oJ^}EWMk6-k z!%h3c?Fp2l43E2SxYyhVwRtnD-&sjini16>NbmniHOS^9i%Ld86Am#{Jx9srE(xpX zX2dJ$^v7jftwmOabDA8C=@g-H&B>{KaA>mvd_p9{C!34ZDcxUHY52*1987a;(i^h~ zb4gYm4PwqZ zOpH3QdhYiu&J@5Hf8Hd2=B9Z*>Tw$0L22MOWt{??hd)m)8JPAoA5zXSB!*5UZpkTi zp*$kaqW%-NZic1G;V8|$CgD1yX$(K(HLC3k}7m3PnD5Fb}$Ys$lj-u>X)4t7jthMPkpr!0!DmzK>!?>F} zQ~dliianH~4Ue^ghu>(0Xz*pRjVsFiR!N&?3F~+1#gNkw5230s}u>0o@+QrTrvC6#Q)|5YCF`Mk37Z zKEwo;{Z7e?Cvn1Uy{$`zXx`3q&4FZDlwTHRQ zt{v}trsM2h|7h0v;s&OQef=lYJ#TqSD8CSw3B^ROen8-ESB&Mb(Z+>UWK-rdm0Qjg zj<;6s7bxZKXgb7E-e{Ormsq=j%B^y?Iz5UXmynPgN=#gd(1%i?oT_sRHorfWJg!L* z$wih7&>I`mKd>5tW@ecrF=%zA9E>X!zUf)8s6j5UE(fL^x>Dwo07MYx&|?ds^QH1XPe(K$RHEuD1&KEk8{YI^R#VmeYw=)uK}T;o(9G zaF%DERIZp#-&Yggqs%w2QZb8Fwyf9t$Rr(!6Ny!^h@<6bbU@TA#W#9uvyh)RoL%I4Tz!1e*3`-2D$th8d5^MAr15@y z^rU8aaBg#le$$+^fm)#4Wm92b3}Oh|oYBS{Vrj40mJxC16M0YzHi((JO|vgE-F~6v z9trS_skH)uHXDkqkqwe##MRSeMW4>MHY1pA;=}BAkt8B*VXhR$c4aM=?Ire!=`Yg} zjE&~V6zXj-<57Lzy^aX4`r@{BN?<;Zb_DQt$JA8^n$Xz{AI_#M02m|RQ8U&rBR=na zr0>~@|5z4AjH&(fr)59r%R3;fw_NizGbIFDQ6GRte2o7BNnl*f%{;#KAEmR?vJ85S z%M=YB%*`~?d!BOV(~Z@+i|Aw-p*tn|(&rq6(P|6V0tt-)So6A4M1#>++Mx@`8@h9A zp{D#}m*gS?(TEzCW6()%Z2(_;Pf)iK3j_){sc7^k^9Uxno`-G>?4)hv$D|*2 z!_YUlCgiBcLXM%X=8Ium4+#gN4f%=eUb|&*-^xdC)9-C?(Jy+~BHHGXnb#{|>+wKu-lY&^5<4$T|zAsn}2v_DtzcUwx6wAFORSq*9weEDqF zN}2+3Cg~T6LBu>8EZpm)uIPSUfuy(ULtES%s$ikBUhHx??ShL|rMUDm%4JsO4LcTm zsR>rA3r5ZWa4Y`3;ELhCYucFwwJ%o4@L{l}3x&DJ$9}m{^AvKMcC~;!WPRRew9e>q z1?|h>FK)R=O&so?Yu}H&ucr2+9eY)@dC0nCpo3N0ss?-~_?vNU+jECtlJRa|^ljV? zMXTTW^;!H7_ec-u?byQt^4V)`-r~`w5+?qd;jtP|>? zgM#;lH=n&ndXjN=Oel}{ss)1&8~ZCR5*Z026Ov>!Gr?i^f{_dD75bhC#o$RLd1`&P zp;g|=#b@7?JEo*N2ZSod31gG>=xv;i^|W|FpKUPm?|d3B%aF<6X(9b59d3b4?w_gL zDaH{qu7U|>9l7u2kVBY~Ya*ax$BZu-6}S5ktN_3;+_4lqi_xVL>iEV~iQr~|nkx*3 zlFeM^W|rPV-e{v%iHP3zxr`-BKam-azZ7jE-Tm;1OxAhU6sry$pj{ps5^UA?LSVka zy|!d;OhbT-a;ZLjX}*z_QuUR&h%PcpK7#$#0#29GJu&T207;xYZ^*hhWc|E*v@9u+ z!Z^8>8%xp9u{dLmY}p^%EkT^zW9=LGD>X zklvE7(7era1o3A)dU>9n4X8~3^pn_Z4ORYJJPNz7u$4f*C52P-wnND7fM-OuJ9VK< zv&1d79?y7wpEmu+O98@9#z}?>xd&G#_lX zlFzmO+XN z{Kz-eE>JY)+Ib0AKS?G+K`2geM}BQ(MOLDIT0E zTSK|gD406?sh03m4|3zF2%J&)R6l<#0`obi=9eApmpS`{&ZAK4M~n7fCVFbn{$}T2 zAm`52XUlV^jS8;U*XML(K#Q2@7ar%n)nmkZbpbJmVme^b(r;h~!gnr`OyReg$3?#Y z0)GF49OkHY@#1y$a4Rm38;dx^U1XxaJ^hA`lS^LJXgSIEXpg}DIoJ8~+3oUuQd^zE z8O;_*@^rq`^rG5hq|CNWA3N3f<5$ar(F^3C$5;x`cyH$VdFQvGY}-)1n%4B?^Z&ut zU3SG4w%dX(3U_yRcPE4t?(XjH?o^?{Eog8J?gWA)g}b{GoZy<^&Aa#Mv3HL?|6zT2 z#=Yj8*O=>gf8joU7CdYb2H5cL+}qZuHZ)RHZL6u_g>UO6Jr~YS0SNBCu!DO(;2dqd z2*cvqEIq(}y)Ye_Pz^1ivaP|y!iGN6X08>&k|6w#J4*weibN?arB(<7^pdKkv6K~J z9Q|MA*?~lQ!^Kl2{q|^_+AuYO$TB7Cy#FQ7E?t;HL*X$QjQpxOaHIwl*E$6bMH@@ZNg}cghpS)Jji)n z{lD^TS8YdYlU+2lEWY`_b1-yEK@;=N4I5H(9~DM(r5q~+#6^6VEzKunkf=rflS*j@F%thY*uBC^LzhA%JKX&ApivBz*B4mlq877!jw; zyP4PZ&AVLE27l|in=}1pd~b{-U)*>>gsxUBv`doix)Ue(>i5gH5(qrV@qP6_D#;89 zc$a5i15TTlLITg<<=Mc?K0Su!D3X&k#usBE`}uVrBpa?U1exVA++!E zEN*1dlQ=?g(YKEC; z1*sjJyk#jS9`#t&TnoHPKWWy{WJC@Klq0R@!-btayJ%sW&q*d%u%wn>-77)hvXeKl&sOh}84aASSuR;5Krji8C9P zT`#qhX8%g{%UV2gJEF{6^nc5<8foBituj_?dqv|%jjTbfa^8=};<&2=oFSiyB$-k8 zXnSePqA!d8BhQY7V+y(8p%@n1Yvw&_Rmf;pX_h%?*E*2v@qCFRf-CXrKVmG9*du3^ z$X5T4Jj*f^LXvJNlpUbmKB!&iS>|YbhB6l}F!yC^1mbOUIfB__qhn9+1U5(iKnhQ% zov7IDXi5I0_h0fX^TZ$J?tkUSS$6F6UBe&hn5+7tbXrOV#tpQOM%z?$TC1&{9gUx6 zyL?gs5bMeH!G|h`)by6leP`E))MeMGo7O&h7x#qf)ln9_=2`J^gP`e!SjZ(Z?wzxD zZJ==-7HuR4$k`$3$@mf+rQ78f8D`?iLas0B#f~+NL?q^@a5|{_^X4VS$8co%>Rq0F z+UJavD_lS=pQ=tE`Np%_NmDed+kbUvsfQQLAn_EBg7_~?V zUt#2iqd@+_Ei_2)O^s$$X?d$nH~<3i~z9#m#|b5;fm)dbh&KRPYa7&I4~%e`xz zgB^_y4VK!p>^%pmb)O)d|5)2%bM`$rJ9tdE_c~pA1)L%I{lhjh&rL4cAr< z?!R|$IJAHAqJYR3ct^IuLXXU9%p2 zZA)$UdcAfa`d7I(ek0E)No6NYby>Wrcdd@X6{oJn-xo5sJ2^0o%9BXqF zFBjyN+_8G#Wm*E&&jAZ1Vt49##wU7h9rFc=-gV%O6ScR;#jy~dTHlYShKzxW0~q)9 znlESWwjY*HOzt}8$j@CqKQ8~RyKgSpIQMk@u>BC?-JR2Y<|x~>0MF_7YwY7iKxWtW ziOPfe^h{!RqM*v5a}FAo5PCb)-Hb9gAnx^PLDBXREH3*SmZIO}zWH6Abp{8nADaB_ zJPf`FewSyr5l#Q~z00!+;OFhB#<_{8+xqM;aAd3qC`=N;cePU!@e)~w^v(fn7OLWx zpG}{48Nm+|;E>z;WJIq-@0-6>Wbl_}igeRgcW2-?0T#o7n!iWnvW?P4Q21aX5ReT7 zD+&U`DS_aPKnPAC#2^q-JP0`#gi-@S?E;~Vzb7^d?hF}TNqGU1lu;5G`qPNzvxv`% z;`nsbG`kg;WQ;jL5K?=jVU{>aOApCAJKH5r-Y-sB6GjTxOHL+%ge5_FDo%SUPQNG4 zK-Wv>)Jqc~L6_D`RVqPaB*ECy%T&|D2p;cct&!jqm3Z$iP?AY<;q`I#OYp7t@@q-H z36eqaNh0?hKYbkIT0i1FoNdEjmlSi#7VM}ej1Xt~_ldBfkOfL6r6eV7Bqie{B^x9q z7cV8BE2U5)rPw8uO~afccv8 z4H+(2`wfZ6jEDb!@+_N-rKpURl8m*HjE$3wZP1`8UaldMG(};_*{;~%HQvo-_?b9h zaiFvt+K}eVC%s*o!gLaysV#>Y=D!jf6Gun*HB=tY;eu{POU8D zR5lb%F03Cs^80~9=| z6->A@3;7gE-{Tr|QMPuYMQEcX&+?Ucqg6qp)iq#+QZ0pw{?W2Mg({=bcY?MSZLE-N ztOif9nUApLd9-OAzu|eb{C2doX0!uOu`FKk8(Rh)(MYNh^?h|E79GH>FCn8e*&;{& zU7nQ`=YuFR8_bWqTdOd6jCp;7f@*lcC{;Dc4k%B`Y9%OJ>#hqojFt%9$n1OB;Gjlg*Z!F_xHrJqla0q{}v zpp@zES&<@HGA(yfLrQhVFKYAj*Q2L8?MDs7N_n)}N+Ld0V>tjqEt7@c)Q*ua%~kB4(SvYGAR?W0Q~Lm&ManOttO6=qPEM zzGxq~wZ43qL?`blPK6iXm!}BU+z{oQ1Sso;(<8NOo7L(#2BXtkFRb^Epr1|iKTfmY ztNUrH@w21pPs2Zu5}y!7`dltL2J8Ce#qY2Utv}ZrC`~f5>pIh@rH+ro)`FL?jHV~3 z05StrGePry%6gF#@uh~d`d-RP3rkL;Ggup&UmbLM45J3Jl6Xi6#ud!YV`ATQj z681+~MtrsAoh5;nrIc&o(ANJFmWL-_HPurm^z-=9uDn*n*j0ljwBm~Opho4a+7-$C zaoKmF^E5Dog+KEW3@Ts1wRk5p$6Z=M+WI9H`qp(5*st^>1#cBYhCXsGS^yCSQty8P8+*XUn@%cNBx?Ok$7?z zEB5JoE1kcdI?${Y^~*XY2q5C4(d3y?m7ca_`WnN8!Oy&9@iH0k1e)=WJfj$XRIBdD z#IsMq5QC{&2{o28=lp5Osq>Myd-a%q zm*2snE7&4D!J@9vVlP-f5CU20wUlw$i?Ulrd0inQFkmkGUA(`YIbgn%5MwI`F;+8E zefmx1W2Nz4`3V=YP@-Ta(cXa}pRdEWdV5s=l#gsd1)wn5Zlxlo7!HG5w$gmHKGfDA zz2}T(x7^Cp?o!^bm)2q~kFlnPL*g>Tc{QM@2&1#JF`GOcwWGi3dR&tt|SHcd8u8Mfge zo9ogRiZ7Z9gX-uurk+k>Y6Hk`L23|$3g9kXCDZc0w3uCz&E8SBJP*cnpxEvl{UJX? z>sKa%|G2(K>cSi-OaP187rUJMoojj>rH_ZPIENY92hDe8XgkMW~;iR`-(O?`W$~^8Q>^v9Lv}297F!Jyq<8l=yAWU&TPoHQ&98y%z504rsxs)uEQHu ztPrjrm7mK)f1Z92(9fG(?JK7QQEZFdZG#JTqrLr4hY|jCAA}lG!Ho?%Ee+ap9q`?B z>-LEqxM}ZxmC$lckE|bbd?Rc?oFR2&^MUcz0elE?-ox11k#c@L+tuMvn`StLtDTHy z%E%l61aHF(b_o9Fh-D&zHyVcco}TV;xK1js3*H^%-C931uEm!9aql%h5G8<@gMbga z;Li?zoDc38Gr&2j5!_(7RhlSwBUEZ{9yebf*IA$IohxxYrav+OP8VH%uU?SqI7_@U z;+Hru7ndK(Z4XME-x3zSoP+-TY+y4R%J2zQ=ifqQ~oWQElvjWRY75wJK`UzuG z;QTRaC}sTI+WMW6J%7vbe5$*VPr7rGxj>tcSAwshi#{M&Ek-R?3JUVxWyr9N_NoSW zTYmCUX+zx%LC{!o%c2GtXUPx*&^Jz6e+?_kokx^a1z==)yDlB{TYF(oEk!Vi8{OB} z(6lejjjXQ_JNn6@C;9F!g1x>e-N%4@f@JS|w$HrneV#(@H8V@@y;zC6eQ@q>Tvh#^ z7k>3DuE}$>2IL&PeQ`)9)S6-#z5TP{9lzl?*(IE7(pt^S$^-cTaLvG^p z&FNm_(=YBv0!VZTgYe?b?E;m7X1voucs%K3nT+W_&l7?!QE5XQSlj=SW~Ls`@j#ueg5 z(I5AlX~X{3m6+by;I=22Qtz*M&LplBU_O5!IQ{7BNUDuw?G~yM?pjslQ{L(CrTZ9P zPh0UM2Gi2hGxDy>!hwO)ZY}jkHA4Zri))W3g5XtO z|7z8zs;QUdUqf$|7uiO1BhN)LKc>1uZ=m`#%(378aV!Pi1b9ojA|_lfNoU%};|HBw zSbW@c4^Q~rED&8U@Zu+WD`iV9T>9kuq0Z~uGhu4?3pNO~sRzs=)ZdGoOS2q_RsnvV z0%8w`u>g?B+YmOx;9$aj615X_xTz1pCq;_}{foB7RKSZ@v_%C^uo5wKL{Ra-iWUh$sPtoI<{Qm}LQ|Vwd;QvK`d^)^k{t5S=;u@km9^MyG z=Tr#J7y^8R@#y8p%+O0%O7J!`3=x;Z=^xile=Ok}ugmE_?)P{yqh_7c1CLEhf2vjJ zcCYM6ExWu-%z)%kEt_=ALVBwfi5NUe9W&@F)D8z2!K2kk;yyo+#N-;w!LeE@Yp5nO zaE;wa%@O=a1?teISIjUz<2m{h0+|lI_}wQtw@`-^fc*uo4gzOC3Qmh?XAz3mt0*4W zrjNNvI|i4#!=MOJDX~)jon!iT`~{x6-8dXitU-QG%P2?L8c!hmO6U>riLZZQqQ2){iCRU`Me)AQwlRX+Z9Fq%10*cd>2+ zl8921ggC}9Vi+p^@=zalV}BF2tO0gAQ^^4O;f#!Fm~BTG%=s0eFq>uNxC?7!Q8mSDTY5WP|dh4>{EodVP(Oxgoybr1U<1CpQeMqP$#Pje&JdqX~<4%(7oj8oxpx zy-QQK416vD0k(e);u&SG?)o2hmaUl$?%z>w5#>c%%13D3eHB{+Hm{3wznb@ z#B?@}WIUg$;i(r8lfjIm!*g-OCE)T8)dk9J9hXn{{ZB$zB*C;Ydf>unEYBHTDx_y*5?tJKtHMAHH<*E+(yyPkZ3@+4Rzftp$XjzOmJg z^~i50>`DGJo&Y3qqyp^TAs9`hqT4J&fm3|*KoYz638Tx-xHDA`?H?#Id!N4~hthlI zkW&4(JKGp7BT9qw1^h2*!s~#yn*=|Fh^a=09XSkZZv(F2{zGY+qu*X5ZhmT8m$DO0 z#HGA6S~TQ)OJhoc6hIu!f=dEXY6@uC3A!)DrU2^g`hF74d#aGAjcb{dRL3HQvH8|7 z&C`^U7(_=$%RC}afIunmgbgH5$6h|}lam+HuBx(=UN>*_1*-vw}$qNA(ZN^UvX(Piuw^@+)k*lRR@ zUF>2IXs(>dkne*C2~C+nY$u#Mj(og;`a z)&ameKmi~aa1{doZu;kL?|1do;yiWeq1 zNfttQquCe{HZ`F#q*0Ijn^@emfeW?c0oeHw-Vald*}@9x z;K)z@$g=-H7Ebs`>>QVq?K!fk`b`=9@ob1dXF`ar(i7~li~mI{be zsU#xW4zNV`7t77Re;EfKIRoYbSEB_|yzR&*7zU7634eGS-8+*Q&DoD$X|oGf)!4go zCX4R#C&gRevYOo>&l?jE6v`O0d1^wUkOkWs!SxkTud}Qngxjm4g1Dn6s`pS+;$X8u zUj18uX3Y+MbNc`XMj^d!=E#m;#FzYd=Xe{(E%G%T2hNwgrn-C6y1T_TA@)lZYxyz$ z`_!IcZH|b%lTc>WhaZXB;hf*pjIlwxSrq5%JnlzIrq=vlg+jQ$&ea_7H~*NZx1gzK z0atyYX1{Fh$l6I@8{GZ4c3y@jrNAQs0-n*v8>Gk*7*z;$8f@ytt_sd z`wxjt?)>xmU7&h<=Z#2AsR2?bzanFU)IkaSPxtWHlIGM&eh$^43gTa@>$sj`CO14lG-o2 zedhn;-tzRA7PU3PA2a+^``_-YW`RB|u<}5%snH=7LPyLlza`uGar5E)qQk_wyc$omD9ObS z_Qq>O$+xMwgv_~8G5^|V8#wqeIqaynvC?SJ<iZ@X|Zs5{7Vx zm{N_~un(Jhp1lC5LQYLW!&wO61Qj5%S-{JgW7~l$tj$Kv%!h_oo|EDJ)qZ8PDG_j? z73|O>-cdp{0H+!38z6l}dM?@#ETx5MDH7yL_$56-W}-%Zy|vhaN^$;{PJu#2iBqUX zOx6D}KLUAYkJ+4>f(C_*4o>1XkAn#>4LaZVsdjZmUVR!F?-FSfIvJZ%yU=3!(7A~o zg5Z(f_8Lo(jM8W71lFH4mq!JnlNRg*Yj;!|zxRt($-xC`55?Ftzd-_K;sm?mBB2Zb zC>oR1!7&KiZBue5mQQ2;QNKjTyhKK(OiP7cTO!rLKZ<~2=-qf0npr{(=@Ut%)9VQT z@Dp$Ta%rp8YWs@n_rCe;8MPR8A?2fGzj*#UI*mBauBu2VHwryo80f$lzz4F>SVf6e zP8(6*1wWUr4}+|=#Tcw)%B}uPX@`|Ch3uuY56?IJMvS1>`~JJV^sRIYnVfu*mi@Yr z{gH};z*PBs2aCZpf}Hy1Y!BzL6juo5y%@!b7KZrzo+*RycF>MFnfk)ZYGxoHsg!$g zFnS7n8*kZ&Vq#DzD#8=Ci8)#k34sa*fjHCXzzRQ02og{gtIEh9O(8I5Vl1m-0tTN* z7C#~E7|+_Mp3@`lF>nGvu0MfDeA+aAs`ss!Bl3G|{z#T}xtvb)(~v#gI!S zk~*Yk=fj*JkZoA`%fqBXfaFEWA;zMm!{8p~ES)?5igGVQ%ZLpZ1GVZOdX#krmjfF$ zZ~&CTE%%@YR-;(2212gmS8$T1zrtRTjKQ2jU>^fIgoKSVjlQYGnK8oXRrokC+I8&c zUsHVU82ORKV7N&e+Fd3#Xk9W<7Px2)8f1iBWC&jT7SGbdeJT!5^uFo|;gyjzpBz2Z zPxm5_3r)>WxvwmEWiA9F)C$`H8>w``8N1d;#Cj6;Y1iudHYo~=GM8R<869*Ey?d_I zq>dR(oFe3D1LZ3D$3Z{s;ypl^dk0hvl_4rUcs}KB#b`;f8x;Wi4*06tO_sU?2Lq6; z5DT--BzdeEW17piv=GUtub7ugEE)M@Y%a(C9s9p~=u6o30!5Z#6mmhaRdJi(@~>YV zTs(Tz{v0M8Fx4P1<#%l6|EcPzW9`H_E;J}l-d-(IIMU^LV@Vq=uv;y3+S^LcC@%|R zDyPt&O{u`5DQJByjExk~6Lx8+3-S4M#a? z>y!t!5}e}052{2JuU1Ev@9?XEkAE@8H9ejfELs}wlw?*hW^rU?8Jq-KRA*z9hzmFc zi=Fm)Ko}aBMIcbTTv*W{kk7(#HJQywHtDE4b#ZLXq6_;{zF9nWRsFNWV$~^Xlhc@3 zmA=Tt&&it4`3z8!JO_uW)YkGCfwi84Jtv2gX^-l!B+i&Z;#CA;ByKt2T$9rgwld$l zKe@uz(R#K^VjO!i9Djl>M;ua%c8p?cYF56}rZ1{YH@-QSEuNB#u};dIWU4sM&CrA1 z7gcT z`1L9f?4XEpuC`IRb|UCt0|c@%p6bP{KALDKO^aHz%^#?XLr?zEMwmm8hDqGHbLHb1 z9EdGvwE`(E{5K2zh%)VvSlQM6dnv5GM!l{!hSnyaMi?VOP|5XH=3>R?{MQE6FPD0j z842NND5{Y-3?39U2z|ZSb~14~;QF*A;rNfnI%pOa;Ma4Lz_JASOb z{gx-QS6ReLh{6f@+kp9YX&3A)iy)UUvau`^HQ@GEjvyp)D-sqNAQ^Q%iDvEktBRiQ zoyBYsM`eQoTR^0C4NO7G>lqj89)BFmIa`!h24-O2Crn8LLs48$o=DE%=G`&j_PN>E z>G000S5bBh&T7CGi7>F-)PzmcN!pLCCYlP=F^?)WB_v};JY!HFalLwG3-EsAFc$c zc*hel@fEo`vcj=Np}+_T011NL06_=<+sZVK$-i8-%8&VSZ7e7-HR;1=3e<9&&lYq4f4 zx+_5`a6Ph@r=a6uV}OgF%q4>$fE`U7h7E$p7K)C?r@96K40{6Dps+1H9|e<+|FHex z*ra?dA%H^Injxg^Jw&;HcgFlfTQgwT1ErIb>o15L%&#^H5a~LGU*<&E9L-}WKS|Gi zfwUO@;x|H752u*6&OfEH9i)|Y#W>}MHIxMZ+{8$huVTn7M~)7|if95{^1-Tki$C4s z0PcWT;-t&Xw}2v!Md$DtC`CL7Md-~N^jBOwsfS3bRduRI6*knC&_Z(PTvCz`Ko(B2 z?m`m;5!5rUwX3NKpz5IaH2VA9^-W-m%09n*VV~z1=7d!6!kZ598!W5 z#l8j5paDsaxG4?2s!I8(0;&FybGs3?hf@Bl>2f^rFE#e$v#B{Xk@dr{`z9pGat`-h z>FETJ8;XYn;&2kgatmkbY({^t&48a;0OL2n+)%3zAW{g|2ExLp>>eaKNq@v!e_LPC zHeb|Rza&lw@i0$t^LJhF9X9B#1!tLqG%fu6QLqY&@yFefJ4#bHZF{<@a7MEN4dZdH zIFqo5#}6S1VJSblPA~LL3{kPaW^H>kq97!;9!td5Bt%H`2_I}$yU&{!5;#ko8MlY+ zWnuCU4#ISMLQb0mr3fmY58$>PjS7~BD3o#-M4AO8sqpzK(vqSI4Tg20Anlb}YWQ*( zeZg{`i(escD_r%hqpBnti&F@j@NXWrkfqXuj{_884_e#SVwyw$m|M1r;)AbSg^UMM z`3zAbgyPeE;1LC(P77nTgKuJ*A^D1-%(*Z~6)7axh0IyvJj+68a!*Cze>i5X060(y zCX@xO=iNNVLIc6HhvDeGiOk^mms1MU*h#paA7W|oxy~W&xSamDn>MZ&=^^au(M8zz z@aN~@IY>o%4u+bzLi*dhA{CR*q!L!eki4pA;n@IKay`U&0MZKZ6GF?=yUX4DnFs6C zOSO$RNHLU^4Z_L)mDR0Nle9yk?Z&dt7b)5Um8uVb)*}RgO$CG%yVY^46Ldb0F=+X3&^7^? z?7P}8D1w|TtlJG3%cud3FAxxY{lWCkr>~7TOMF}xG!gh=lF@5>ikF!akVM+kp;)Z-2|8_^BTRpH9vl7j(kAW~22hpL|+D{C>KsBD4YW<~Kl*T0jzuiJ{^Jn@}? zz2}{wXJS#n-@onHSTBOf`)7LLOn4Hoqwcz-4+oSFTqjpQx9V%+MXF#fY+HZ6Y<+sI zhhKiGI03+=sf!vNb*4+}0xjN%1ib!XSxCj;GK-{1pROXxl190$n@RKuS~SU-@X4c< zvDq`>V`&zGsd`%BHgT{TRsgo)upgAWgl-@S$iO8viv%NF!~B@6I6o_nA33Ly{lIa~YT`=+e4 z!hyu0P+$`r!XLu~L?)5SDsA#jTNJY+^7v(mfxfsi`cW9CEZsl@#E@;*6a&fiT8$y_ ztOH~1M4|^2DRGqitmH&2|Ehpm#XDFv%0iW422(>XK{Zyxx=dsyO=|^0AZu4(86iQP z25i@L-Tygx>9OVuRFXvRW|N2XeqOe5 zoE_mBAp8Hgv;WP`=7PUWig3cJie4*?rA{#w6IB$3d&vXG&p0}wev%1wxQ3I7HQ30! zX^_~{XBvf#K)ge4H7U;(S(2Rr`s!;b>*-~|Ni z(r9UuM?!n$VnPq_>D~GjIe$K1yL0uT<$#8fv54W&y`qI|!@;ukF;kN<(J?rDGk!$y zu}lqnydUp6BB)R$I)e!}{r2-RHv`VP3AcjoHZr$DUIx$#E(dRV);(vG&))c$EbLXM z;T%rRr=_ksr__BTx+^N;SjZco*?h{$b1L?sHUOkC;@CBfIEmW|Ofj`|ZQV$rT{J^y z<&*^K(HT(qBUpe48V&P3p`{d|JPQV5>85f+K61jv5xZkf&^Gw1WvL|G+^J>rmj;{*G(3q0xY11 zy+V#s>t=pqS*ELG$l8Pk39Jr~e1OH7Y*X>ybS=ZnH1d3r(c4&VQbTxq=&b!k@pRg{ zmH%|!{YLS83OmW0(O95+!5@X~vHYQrf7=f5OlJN3D~*d_x-1cM9q-$iY}5e|K6-jb zlrZIu3d|y2)~Pxv($u_^a85$V12a81LusB}2$WMaNc3xC+Y&}KQ2!u-i8Yfo1Q!W- zt~BZDVkm1!855mS?8{heMQw@1{46~G8^eEDlJXTRTD&En4ekK=lQ`Z9qPexbDjQ$o zBqd4C-Ln&+jrZiNvY0dJ-z!Clwb*5AnRNqkOmUA6^O7n+vV z{08tHx%hs#-cAZZ!tYh||4pL&kn8)Cy(h|e{tb7Bj#*z`(FEs9 z_WT|LtMJdOG|s3H$*o>s>(9^bL&2X&LC;ZKzlil`LSUNkLK)gVCEux9O;7LB=rFS2 z+kg+~*qWmRshCP0f~XKdPY@9YUui^&X!!h>nO0a$(@Sp=&Q$dRK}xs+|EAG2cCVnPW5kHHx#y!1ldh!DKvAK7^{Qfl|1%n9 z&`5_gfVcmzt&qcEfs9bkm5QNruynBadRDI28LU)t#}>ZTf&ehh!gz7D%q0OMyAB^XJx z>KVMfsAe8u_28obbkgo@25gP@1?{RK_|s6>_TUo)S(c^EuY3^_#WKiW)I;kP%G+;5 z>S%__)<=1C1zKRPvPO(-cngRptOx6SBu6%G&v3gc@HolBzbi~xunm&rTm?AiD$aXo zBifEEa(dqw;G&7YALq#Uz+u~=bf5X4bT4McpQZMBu{4+>%5`bJ@y*HPPdS+nx_y;5 zcF-&!S*S!Pj=s>>%=zjUla0<9r>lSH#64N~f?X@I;%M+T{+sA04WLA=KbADDOWj9u z+f^QE8zM=kKa%3(!C%DIi)?3sHPqfRnX$L+=d53D?9wbuxniVU04Ciy*7@79(p~Rr zohiD;|E+-IX#>x2C|HR*td?9oX(}wEifq@rVB_iVeSib8dmU5319#5~1L8BG1%>C@ zKC)BHY3nY#rTms2FV0Z8R#J}p%~X#=*U`SA*yZo2{-#IfFS3JK>OWShi4^p`KMI;d zN`9V<3(IAraCGEf*@2x$rss<9w|fb;5g2yQxGnHzNSzOiK*_*3S<<@MT%YEA{C!$z zSVZ`x9}Gevo$?fF`7plkgrVnT?jYH@d*;*nF@>+{;9KDOQHOm^o}rN7tpC;(>WK6f zO$p@Cb-V4BzhROlOk$4osXkAT4YF4)2^Kj~o)j`xb#P|sECx`0 z`XKac@wgQ+Bg*z9aKqj-aBYj??|gcsRg#=}Da+mF0{1$iUt;{feaNr}^Rr={&}~2I z%hH8+7m^g!7CdL}we`esA3w+Yp*`#XX)|0k=1(3PVz0_EuZ<#e zkdWS9e_voZlVv2(#UEfzLuU%nZ?ndq5ysoPROH@vptBL%KqWJY+;ijJk-K5!dyUDc z*}=DfX+$sv|T^krRx#;zbqDYhzv|PgCUt4_yNsz$wBGLMd>jW;~L0*7mfZF zrsRV__26(w^8S-Z1N2;&@T{f=Rj4|Vsz7Wod(prgvuiLEdXMvSAfBnFM*O!si-onj zx3N5qWE&0OcD!%e&9Xox#&ZL>C_hkPf#{M^it2%lmq0J*BSHd3E9Q5d%BOM+k}3{( zu-xTM23ws>60~jv9{UtcV&AGM{_Z&zv4-yAw(ix66U#S+FmQ$t+$j8~63M*2Gj+N^ zYh z$BNt11L!@dC%PKkb+b_}!iTn?m`NLS0%EJqmk|an&hsDICUDl3WD9 zYe)|{hp8>1$WooEasaNeR-;Xla8lvw0=$Fbe>3%>ey$nj0HI^_pefJ5sjHu8xx?4n z19w2U831xTHpj#vlShSI6V<3u<^AUwMlcRjxW}8`M6_6K(=BpynCd^SFn|Df2Oe)0 zdr6#*YmmIAh{c+YBrXw1jEP#0ji~h*_hf9kSY>8U0@lI|PH7fRahgn9<95~^eo5Vc z4+de}j9u?!=oEf^XKGA=jj)dm`z=y~3-JpVD(=E!{6X~91RNqI`alBCrF8Bk?66$c zIyI2F35Qwjkxh-(8-yt2fqDaOx~`!viK41?_zYkJz+#BAt6%Sox}q~WlMB0GWkB)2 zGaDjp)1E}`Rh1esvE5IPP@%uOvvWd8xQ#X{RKBTH>TF8!z-$B%HLWKSSr7GS_c0hjZ|5@3qN2&kq-M zMYgf^WLyxe76{SnTOr&gQq(8sI-=iBLV3GCk7$Xlsdy00E_K*Gbcgc9N^Ey{UJ2mh z^3L$;ZnM&s!jRMiykgju)@8rNMJ=%{0a2li*Qdu|24X2_VVi926&TjK)(0 zsExfy)#Awi&CcF}10ot1f-Y3!Q!4+!&d}XTQ@HbBMrL(|W_|a}h(53C!WFGl71ags z^&$D6kCAe?0-kHL2i4FG()dTPWv1Nee>bhZGGSn_^?YwQj!jcOXdH`AU4LydPScRb z#Q%>w`(lk1$0I&vd4a;k)!64IU;(IT0dOV7vh|bx43!5nsgtnJNb=%HebSVQ1Znb5 z{7$PJmcdrpZNW3Yg_}`_uVr>9g-105p=_!0V*8d%W z^eLu)*hZXqPOXyG;;s0GnU2rS0~D#UPb!+u)O4*#$f;CWuQlQYFVJK4HIZ5l_=gV# z&bkOj00tIpw~b}w#XdB}u9=KJHwBMa#6fA+WAcsu*-IIKkC>^5iR`0Km|;%3X#QpQ z9IJ&QhnG5Ddw`8of|81-;8MI3pP7xfn~PVAAD4Ed)oA3FHL%8$?6X+NAkuP+4?`W$ zZd=<>Q|E?XfM12fI2m3PLjpk=22V#Ba#v4*uMq?0&!f<>&&;sT$q@2!CCbKSK2uiG z87HOJvgB5U-QHpPSp?ICZxlFzlENXXxS+)jFs`R!;|3Ck+I%mcgwrrLIbJZ?`l7Pc zWIv7RfG4TCQlImt!|A`BMB#~*dOl^3N%$XkmJtZpM<*m~HfJN)qPVfmm#|EzhuJui z=m4k7OX;w7duk~!@+y13%T_=T{2odYAGR}+S%w`F0MRDHW^K+!6?^wSTBc+Gz7fQ> z$xRTbMPXRK7yq6A)dP``(Ep3BKdH|_fU1LPe8J$Jc#1tzvN(H_j#e}fhI3EdpjeSr z!>C$aX(B^Onb25UAaZuzx-Z$TP8<#d0K*=9H!)vuan}*MyXP|TFz~`RyYhH{GM=^9 z_%rArqB{Cx5{2UalOxr(@V)-K?PQQSOEP!@U)QG4icc@HVBOK0AmC*s-eyI8VWqef z)Weg&AXoC%bpap)p&xv=F`f6Z_FDB2v$%FWI2m>eR@Z+x+w z?PW9-v1`Q%SV@vEj9$`yUK0ym;29s>RS@Lda*Kw;rYIE2U^&vBFiP{<$FcRqWES1Q z6B9r{5$R(`U1Jx?C*;g@2++@bcW3V|q6@T>zAXxuEhRwBVe@ff%l@$+?WR2J#`gF+ zdDgJLjbujf6YFRV1qc?hNxI>(021c1LY9Qm|Kb}s;i2kL!4Yi3&{%x}e{VE7Zx>}C z7`Ku12wcg(ATF3e=iXfjeHX{Ztgx#Evnc_d+_y1&P;9D|@K0@$lI^^bEkP56IAj18 z3XtWu_Z>_sB)K1H`prJ-`ce8gqdvaK_gZ(5B^5ut-l*27d#(agl5)${`9z_laN+># zge-eyb^>ATjo%4=3`O1G-`R}%ab-W8I)#e)SKb9D76UVY0gH{Y843%eq-W*hfN<$q z%gJ>bd_ORw52fq`EPbw89!Ahg5U*PVe6^(y)an-KAbrk|?713D z;nuOWuBpIOl1#84qMG@?Nu?_O?`&TS`R~{<7!i#az5Y3ozz0?%J*9qmY!K{$$@p3r zT=^-Q+9byiT_~VQ`A3uZW0Q0TR~;$#<95`NKWxhZ_%70Jz^3~R!QLOMTQ;{}(J1<@ z@Vh+hNod)fl8#eXkhKJ_AZ@Qu8@V}CL)LcjMccq!+zbI22QCO2Q~2Ez0${tLK>{IW z8TJ(9xb*pVG#kLP>r_KB3i3##o4n=7x6{URIhmhDFVSFV_&!K^C+n?$_9 z*oH4#VO`wDyi$a^78IJ>zE+5CWd=yDFGJb}mK*dC2l;$_Of%)}Z56@Tfuj2f$}S0K zJe2ie63m0yl=}PDXF18|*2?v9n+s60V>WXfb+~bJcnz4QoV6b_L>&wNMlic|;9)zfa}#0y>b4ra_IHl)ZmblLufA;w zQ%SEKFf9T`;4IlVCE-~5xF0WgO4WJT8#p~0KHdHTN3KnN18rzh<41s?-yld~W=oX@ z)68r9mRie-EHjOTm`eTli^7iUz%fk&KSyEAsq)zpdtweP~{3DInN zUU@&b(~Y$GH<;om+ypz$E;$J&AhRl1g=S6u(Du?Y)?y@~@JMV>9M&$ZXuoS+{%+ke z7#h>LX9+=4qkuce+YAn#Hox1nZB@C+SpMB!Ef@%KYBB|_ZTqI`q3a#pm|VR56(jP; z%raHZ!VT+6FLA#-rACGXWLw~qNN>OG&SQfaLl%F-ioG7ie~mNmo}3Ft(dgN;q}tcc zU#ec+FC#suT$44LMrRX+0|GMqTRPXQYCf%FO{|VTY~H(4{$-U&CjVRe@-WBT8iHh% z%}7K%a`I2~4kK(b=BGKW4t1hIB~0DsRFjDpHOWS&$%f$8UZ2=LtJxCa`svw=jdB6F z*Z!w3GP9uOj;Yq8Af}0sC*|v|=__*>6ZPhirSoN+q=uTsKbT&UP*+MmJ0c!vbT5pg zN6ZMR-~t_3}csV{iaQKirUUqX<#(R7O37 z;)c-)2oxpQ{4On`5rBBsFP;C}oi+RQ59esqL$LsrqNFgHDutnGZzPRUHfA5#%VGTw zA(KoRixcc(n9;{9Bz*s&SK9fF9&(8v-PQUr!%rG4Dls`?< zt`xvyC4;axeR)YL($NmU!Z)a^z%F9#l6!Pu zf9W@G+iuchQc(+5Vd%Q2ZVt-w$NKhxPyPbeB<4JnsAWcb8>}C6-1ylF$(Lq$MQfgbjSYrp3nLH=kc5~bIv@Ox#zm>7w|uOcwZpe*XI_A z^Dvz(5GTPhl=1HYMvCBh5MmuuCKy~HjYgkfHKUAGH9)6^H={cnPP(sauJHm}K3z*G zgnU!yrFI4=)^MW1!r<9SAT^?*OC=>W#B2yBw#Dong3wOATFWURu_>{L7n$GwlxD>A z3T))X?2KyPOjLF0*v*S`={&3(bLslm4Xt;SaGE#E7K7@bnLO}(#IOPlpPMLbT89~xc_f@B5+7n1ab0?ASo82oELUAs{3q=UVN zyylHvC%hNT5YLz_!XioC=l46d>oRDg)ay&Dx!)t)zB4BWw(<)&Ei{D?eD@F*_I1q- z4JuM}5P{sAuga!JN;&VPQLNjFrqnNl`9_%XRnpXjYdg=L>kubRHHy9w!)OV59D zbYeQ88f2Px=Ftp>cNmjZ`8icnqK%dpEuB>}kJCrToqbM+5VT1_XQSMcLFYduC*Men zmQa@;f0xu>?e=3rwz_O2*yc&0le_`%k^+Lw*|?co(^(zB?hpc*^(ojE*jk_`C?$;J zEQGmMmoIAoY)!aiy2k@fCvUHjZ7$NADDi0iRBC5ya{4RIv^=x5Wssz4YZ{}b5NYR} zKprWLGZ&DBsQr>chrPOl4kQMABOi5(6sRf0b&c+)I&AQ3awGb*=p)Y3i>vW8s-6#0 zNIrexL=YpKu?s4fg2mT)F%|$JY6Rfh!B-fG!@a^nJOD{LS;z%%A8gbekU~G~0gA^$ zRS75->ictr6vSnWmnreju5uVuZoN1Pjs&$fJilJjYi1UYp4N1FP1tv-&ZKG!3$l2# zLr2?J@wj6~)Eqq0KK(6WmaLRLC{)J_D7=cuea>sq2etI+#lv4a9^TyX*Eq2yKK5w zoCLj`f_FsknvPj@l&512-F`}A_mr^evGSRSg6-%qbC_~%)SUy=^PjtoqI$Bg{rwT5 zSXC9F;$3uF81w-0_D!5-b_`(f%Rc$Te@bzUQQr<(m8-oct6OSoon7OWR}OvJitULm zkvCmBMS>a*oOXTyL6-JDuR4z2eWKS@2Bjy0246u)G5}9>58hP?i~0et$VUHxsx`y>^!g3b6rnA5YeHO*MVjecooJ7>S!ugLlKuj_SpfzB zJob*xs;D8-dJf7}kg6r$ES;$S5x5gQ!BVGTlR3d?!$|(N*6k{(R|Y5!Pe$N)Hx=qk zE7dNLk1RQ6Xh&%F;7Fj@H+bUw$E~=UKTfJqq2Dx^kqx`WSRY6I z5-iq?chS-Pno)lOf||iY2$d+d$R`a;6D<1uCLGz)OS3$shAOF7$I@p8QDg?^my9Bk zP;2ke((n5JjFCiXB?}4}5s1EA&YbtSM}}ho^DPqm5xLD@gj8)KvZfnC-}mb$<6uwH zk}HQ^nOb};>zkatbd2lcAvMDR0aTIFn4si+@<0O!ao|NFhLZYllT*`@Q$fo2nC6#( zOU;%qz&PoGVz`D|6!51*hr-<@mbuwHy;&UK;kzT`^OjvOcYCjQ1;XZ#WU zyW8MPlz72Rv#0BfEwL)u)FfUe8Ke;GNG3GI^cl@uj}6Rdip=EC@Dem?T`QPtWXYHi z2y%@OEvQ@WmXGMAQOb?B%~+ayC3lI`b6y{7xm#Cr?VQcWyR7JnBS+2l3(gST3E`pz z39iRQHvC5O(IBaKiSQbW8ue9>BX z#}cyqMf5hOpCF56F;2YzEn~HA@-s+LXZ%V^)VR{eM2fzfZ%r1cA=z99hcbDm7$8eQZo5$|p759rv}z^b~_K?hgo?2Esy-|zq6 zqo(8dYE0hRMQ(f@4SgCps^h+Dmf-UtRkUEr^r6lOq-JKc?S-l!QIO(6mL4(yy{7iy z55Ny*z{du_2SgN_=(@*G1HbJr61)2B*?J#TkRLc2NV%AFk=rhkzUb150NEdcr&cnF zC9e0RCQlIA(;s2t`(cup;TBA|j#pHBWYk6&wnrFFN-Z?R7=a)HWb+T(sZyVbd7r)+ zG;um-niJ16UIkb-7Lgqqj#T6i46q9U=6N$nkk_7P55YF2=$W0V*j9u-&kW!m0(~fm z3J}IL>#-^zwQfF_zF-pC-qXD-=UfSeXAp-c>_;bI#-uE2oR^c}GQc+ynj9(Y zMzpz$5Q%(kwIUGp8VyZ_?m5U4A2=L8IUG;>TK5M1xn$?MiNP(9ZG8bY$-S0I#Z25_ zN!(IOw6WB5iVVxn4*y(E@j=Eml!4_4NH|Xyt7RCgV;5NAhpb{@G+IP^+k+%oX91jn z45ZY)_-W@Q$KkkvtQIl88VW#9cw~CmCYe1E{|Sng!59L0K&%DmjMkx3!=MfxLsfXH zYD4_E622iFY51;72n(54NW!s2G}@I?)}nQsaN5prn)pGQBv!hyOiYPYcn_oL&7MQu zbim0l4Ok|LmOk*>&!$|8Bf>RkM#G{0; zB~J-)6V^H5kpvRUX)5BRr;zugjGUyX!tEGDl$c(CB3`10y#O(NOdZnJ3*xL<42MD4^l)dc!y+CYZI+I_;Ewp=zRb;A zfQ%cu0W40O4UFFasDouQ-4@-yat$XJ%4F6s*3W;~wZ1vX*HJ0eb0|&9cFXsV`4)-z z8%;q#rUhLB{7DAjipGMX5lIalK18udL*-nebubMKEWw5?3=l?dz#`NENE{Y^H;U`U z01x~CS!Ng6-zGn|$dCMs*M5KIpvVrh&m*t|JMn-aI(U$N2)a?;zDTxwF(XZhfQ6^S ze5#{{!wap^7Y0>T)uUCl*xqfsR3HbHcVAEex#T>3Oj>l(Ww_Xg415P40^^J(qeAyi z4g)udH`5Te7ii9KOlM7iFpLgBNQ=<{0MZ3n2v@LHMd6$z%Wl;&_!lR#Wse)F1yYbv zB9$5zXpVa!20WQN9mPj-VtPIWN1@g?SGxC^5RrYE%fl)Zb_0;Tp(UeqKROLcV%xBh zxa*z+RRLHZ79i~IatIHd9->JBFl&NlqAz6Zia<%aDTuICC8QY${|JlG&a?KfWtK0F z?JNo#EaF_M92dzW@I-f#s@y@+O7OXorr;mBSIQ<=ir<0K9YD0}xKFRDCZJtQ9Zjot_#& zn1qfLm#o7p;xe-|xr1 zKbk}5=Oyr?_&z~yJ``))#c^n?~I#w%xRs6XDA-r*LWVB8Dcrh5$UhfOVh)9CICmp!;k8r0HuZLYZmJAJ6MV5Zluof0~DX z>ZB#4bZX=Vr(aC1#81Ddolg5S^7hE)OW?$N?9ukS00to80Y^rU=-02CKpQFJ%f{Ts zo6)1My{%tKroJE}G=Y0a+E0$ds43=Xj=9*H;i<10GvjD=JJT8-0~sCD8o0l-K2Pi^ zb)k)q$h{mXahF?gLk*sG(IE0bNIbQ`qna}P;Rpr(N*sdOrf7Ewtv350%-gSlbvM|N zNF|uL*ud#{;KV}az(T<3!k%_o(n>QqZHvzfBm4GB>D@rtoQy&9;xy;#?0;2xScA>64QBVPB+}zg z*8zh}J{F(LDhx?nI8x-rmSi=Pi5anj&tKzBL0YI5zTh|;`WFhjwMf*itj5!jovxyA zeJZ?Z4o(A9h)@z>gaoS!8&}weG_5y!M(V2sTpL6Zi8Gqs4q*XT%!4b9e-Mr7fVb`t z52sx942T~?)cTBK+FG=QLYyX8-Rs#P2a&D=q~by0!DVwh;@K3=Tr{?4K5Fv zGI;Y3wHEpYqe5MGC)=0$Yg`x}lbUhZ^>RYR(gtzej>%8NPTuP-qQ@4>;4WY!sTXrurVNJ;j7WRntr8*YIY1E4>~1vw;dU8?84MM8W&3-~`$cGLp1;&#JR zyL}+fGcb#+fR^{Rwu+83tKzKl$vZ>5Rh3tZ`)!?Rt2>2Uhs9jpM!6el$~}ghluobQ z;d}dbbtr^FdCg4KCy+n`AW*EIn+`k-`+*C<^?L$6lgp0LXgV;kfYcwcx(pQnsCA;_ zW8JR-HvpMtOI*R4M=y;?GUj`c&g?VViBN_2S>G}`o6CR24B-CP=U$)f8y4X#c<}b{ zlR9kX6%&{N|y1;C<%VZgOKd#}Knc$m%qkxelc zMcW2=-lo+9W=?Qe^OtX0$}9uNVG+W7a4-1i;Ut9tJ=s@f8V2E*$Y_TA8N;gS|x z)V)ziU>gmuGk^?Z>Iw|U!&O3$ z*I$$s!EmAQsW0kky*^`7i6bOZj+>@kRA;>}p)~(biyMxXX%(^mU^u2&oALZK zEOZ1QLg4~TE&U#IY=)n7MYtGsEPYheWps&9Znz;`BsQKAJeq2h^#>T2qMaXz-ar`- z08j$Fc~yzVQjv}V2<`PSdLiV`@QZeV4S=@vD@b>0-7Osfik>u^D9S@kFkT$UEqsDb zb{MopFe1%;_m z!IqHOVgXR5z(_6}s=ru*3)^%mek*I~Cyxa%R8qi%mT49PA|uH+L6HJHN;>h;jW&f* zc?OmHD&B5gv|mcqLTY~^3#~RQwWGBzT)#975ty5J2MGMMVtE%+Nd`kBh3F#kM*DA zC#-vk-!?XYD4w%cVZ(yzj}5V`!o%bVjkZB)-gL9$tW)3#3n8s#G&KHk!vZ8Q7M|S1 zK=|3pztKvQEzLcTD?msR-$psR-_H^Z&zRDdwjl5wEF6zlmZn z^i$(8YYjtt9zf(Z#5FwA!tsa1sMIjrY(@g{*&Mv9m%Kmyn0y^Y)v=!o;o=YffCf{> z1Z<3G2mmuC8)1Uz#lGE++hVXG!Q3aMXs{tlSy-qmS3@+qJ%EO+ zy$}68pb;7bx7)Fkh3+DlLgib2#u#AExgxh(6Jc9uPAmnip_%}@g8#&SH!7eJy{Ld< zn`4L0--vtThihXb#@`Jx|2{6(?}PFhIpGL z7&wuj_cdMxfXb*K0wp!)N%TErDuhn>HFdVE4h0Lq5ibDvV;fH31nYZ2Iu$v-4o8!u zR}i6rLlW!Y1WD5Xfkih6E6kjTbgCESw4*EpGY8u6$WzL>0d(BiGKye*Xq$52BFH9= zbUU09gqY@K5MDDA1?q-Fowfg5QOql+Z9eq_^kQfCxa=R>|Om%`roL|Re) zcU(Av4&Yjx8x4fC(0xM}hV$nl=K)g0sZmn6O&s+>MVNwf=>C7prulv<~J?I*I+4cVEYT>()762%U z*bAHNeJv;b^7BoLg&e#0c`gNf6(Tp)+_TwZm`e~!A59TX7d=E=@>}*;$l?1+O9*C< zILoSCR?}!sFUeYM56znbFlkQ@j$AY_r;Z27Eb3@L4VA&60(6tj31PB3hON2HMxuuU zAoS}eELfVU9$*Hrjqn+Ek0KJ1EsKeuH|)b?1AwTh;5t7aUlNQbx-B9ie+`U1=A)S+&6-X9|S7@=40{TMrHh*^8-W4*XcuQKpT29^_V`5y93w>EOMvqP0*NxiYklsWvxpc~0$`KBeWLHm7A=PVu)Ksv3D~a(eXVL=qISL3shP)s z0o4=MFYzGlX0Sr<-%sod`m~3G3=BM@T_W3BmwQh5#JE z$$zZGy_6?~tOScV08Ushi0JP6(=t33_L8xjv_aiP;7*K_g|w2L=LgW`#Y-96BiUnh z5!kmwyVR_;i*m&ehkD-wC~WSO3Q(_LlFpsz_z>@sUG{K|34XMgO=tf&x}WsXufe!d zU!}Ty?W;Ks(r~D|~=gv(K!c8Qd@{XKrp1&7CB-cx<+e>04O~%_1G+mYM znVJD@W$+OBMv=tvn-JqSAaa=Ek8Cn~JBSJ<0}Ue;A`h*3fqZjEWD&=uW5-6tl9qlT z)OwB#(gEG-h>;6_$L;|ZR3>)uqmfQY;unNm&`Un@3sG*7TtdO(M8r_P?`t5?;W?6y zCn~?E4vJ{tJDd%rn*t*Elh|%cQf9gw9nrL=kUH8@1;&6fel*x3IFu(u4%H57+TbTk z8_1rK`pMox5GwA_7jw%XJ>%G`BR8n4JE&(hND^K~jVj^cmmY@33Y*^iIL|vopInR4Ub&z48rDg=EJB0xO0b#Q-T3QjX(o1crcP6*i)-fa8m ze7p{Uj?-Ye?*B2hnO-A}0fP(8?F5xf^lYCK&SNQ^8cx^wy7_^c!B|2R%G>2i!XslBpL8_3Lm(hcZNFf$Qt~n6wCW*Va@mn)5i&JT+ z3}CE$QC)(48D zU&g;=lhRV#y&I;jWSd;hBqx@iF0Q8t8u@uKJ_(+fBA)P>E@TX0e^D|>FEfH(o$=M7 z;oU_Uh9eHwZ^C^f9w#r*YMezUx^52nLtnPIRIY7*8BJ$BgNX=v-roe;&qqWML|_<> z?iYusDBq$F8rrXmjw=8s=V=PWg*iRHjF{SB~aED&06O%&iasY${8T`GJ2%7IVWoMHmI zbqYE-h4V|ZVf|B(w8)e_A)>QMdFejZx#?S0b7TNH{^`E*rDlBgJs#;}k_U1)7yC;B z4)LTRvgD|f0FVxK;PcXXy$dW(Ez~#{K*Iq52^zYf!e~IMpJPotT6CmZ4cbH%By2hg z2~J@Qni@=$_1iOij!Hi+r3DL&tFQs}Qj6jAh8P8>>ChAL_yIa70tPg$zysP-+tSw( zpDRI1Q(|T_YjTu34O`q;dvW#VkkYW5?@+(2Xh~m5H=IZ7@M!z!Y`!IT5YaPD*5ddW8L<-<)%JkHEupo0| zxmXt~K*M^q2OsGXhF~Hj1ukHgXgU0iK$7GBsE}IIVnd{9V=*vWr#L{ih%oeV9Jnku z#4txmO-FNd2Ek;H;(r%H=9Z^DI%7&fRl}expF3q9F!y0+A^6#*6O?8U5m9N4LCY2Y zIj&4JQN8TQ)9<#}(wJ&GF8}TU38b%WrexECZZm4Dmp^>F~Rh7M7y03kRMEFT_0@T zSAtyv9S+G4PXvA}w-jf+5M7G(hOvmU=H;l-63of=s~Lf_h*flv^2;rH%dOTX_p!P! zV>IQP5p!UZ2|~f5=le8$3HkOeH{#u*=>_o>E8vsk^8%y<=QPTE_hehj`Y=NDuODZ~ zgv*I7xsn}n$%I#+skxRrF9_&Hj~I}h#3keRzo#Z}8Kr3LvNIj00A;MCjP0PWAsoY$ zNbj2wEq@sJ1;~@UPTf4W#64LBm_JdxfKl6yfQ>JF(OcWGUfcCvBPBHah|}BgjVYWY zF3wK<>*ey_9kafZB$afXlZUsj#7OO4gsPy-xwC4~PbjPNEm>$A%ZQJU`@$$8S7-}9S}6-=gYCkADc zBH{omgHrF+8X=pHDGfW%Uj&O&)8ly!YkSrkq&^#Dk>->!BW}Mnf&{f zOyi=CKCDl)-^(Tlt1Z;V{EggepNLIhc|ljQBB!7GNN5+0cQh5qepdGRW*qp4)5>Nk!VF2T4vS)0r=#<;M(u(lE~vt zSMZ8#4lg<_LRWSGAdA!XSMd$su7u<3-yZfiq{a^QzB9{h{%OK4VxOIfAaD_Ck+~{# zb7{%>AL5Ls?#;yG<6`?&c+pEl>+P#wMgL6ZM3flGL3z4IeR&4zqz6B^{?<<DAN6tJXQdgkPg|yz{Z)g|XK+p7H2!XLKnuQS~FvcLhkDZm2=-lbUi~rugbs5XVM>w8Do=6;ZbGp(WNCp0K4x;WQ zNjd%>;%pOZ_G$Mh=OwjMD%q}rJy1IXmj^S}Mjc%Va9D=U8$!NBpGKSijt+GiFar#_ zORdAom!z?ucndf_fs8*{wlW>y;-`-O-8D0ICobat^yZZ7`ivXnd^BcGJ&yg>xTCW+ zs~6E=$>VfL-?$5jj{jXqJzVvfk2URg>G}ASr#N#OgJk6~Fypu+ zWyKQzIXc++&vDaZWID0>i#$1oF7OQBSeT~x=sdLib69DR-!Cp@j`1;U6^>$pvaXXbZj;IU_Z-;Cb*~lk+258^NeKBy?pn%89%be`CD|nN zo}Pxam48Al+iRC#u3YU_M0>VKK1X-#`u9(7l7?Xi++rJg0O zIz%PUY$uWE0<}$o{@JR{^08w9g)$>N@)m9(1}Ck|jOfSi&By0asMKiY3uZ~@TJEfK zQj>cwlRP`uN{ojdvWM&WquKbQz_#iaO-^)IiJBcQYL#N^`T$ouBsFbXxME;u3N>Gj z#mKNrNr#J_up9VCIZG$=1#i@(;y#2fAUf?foym$r(acBkuD9)R`Ns#c?gK=C{oeORO`j2QFW5C8lq6?SUi9ClJjxeim21LkR$f%=a@7p>C`X{J^g&6@i<07{ z`u_zz^#e+!$qP+RSY>gNHDq3trt4@Mm1Y=Nd@Rj0@%UXDg23k6ho?Hq6Uax@^=5{r znK4;W@{0L;zVji^@RRaj*|bl5Zqm-Bsxb^J_2^0vGNo`x+}$u{n5Nj$;1{PyY-gkF zTdqmLMinDvWw{i35+T^1wk_Ax1M=k z+KRNFZz#pSBWj1W^951{OpD6TyovqghqQM~>|3oXO|f}$YriaeEZ4UE38k!S-;!aS zu&pk8&1p=O=Wky2Wpk0}lgC-kssih0a_t7TvzWgMq1y6X`tiX#EG4yxMy#erEX9RA z__9=u14KHeje}&CHSep;QjGb-|QwtXIN zq_Y~Oe-g6J_tG$bwK4_6tDC1489%qosPeD2%xaGoRoNX>-8*#I*BS98GMkX?`JmPe zn~QZ>UL&~${_e*yD2@4VQO|<2e9b;e$=)0WW(hsCtOcI0w*5h%(fG|$Mv-#%DXZ+8 z4L2m<93u)vR7i>hSN^jiE|S+Onfuo3ZkGD`jmTGlN%(D0NoTr(Ip=g}^IGRoeLqdt z-)6_>6(3#;xJ?oEDqA;&67(dua?-4w-rD5uUOJ0FNzSok_j4Ghy3h!|s1eR&DYw@RVS0S4t|Xw)zn=5XAPZ`arLUp8g$c>M~UG_~3v zV3tAfJ{S2mugIghR%(AZ?58D^mu(G_BtCaQ`xyc?hhL^@@g_K!GEy$@E4WNgMLvyL zeDvC{!>+3r;u0uYDKii(98`>UrFuyZwI7ycAe7Yq`kB!CH9HrRwu*W9+GGVrPkRMV zYR<|_X0d}24LlAkL8mF)cY2B!)|ly-OYbKUG}bbhW_-z2pI&h~+K-v^X$Hl&Z2#h! z6Eg)3`@f7|TdBzE1c3NIj+!#@=ZXkdzDSIBY+NRt-dDSiuT#o+C_b$5pKuLD@qgN+ zDo1zTld{hl3aS`j6yZjD9VS1TooSIxw`@NdxXGV?H;%KRB=Td{&OJ0?**0`&R;B3y zK~&IaN-a%!I29!$P~;n9j7DpxGN_&$Md&;(b|3xr)dasQB{i$Es)M$Nhjn_*9g71M zE1zp#I?r#aV!|X5f$SlHa?w>*jX%-&p2h;^e~oQ5tnc0^DkqgX8Euvd7|)f<2v%ux z76=r)&>iRyP`~_CrEjP#YQU5(-bl=9fEaU_f6f`Z##!kxvbMK5$lRIRWw3)qG z7pMzZWq*G^S|j|AFp7MY-t@6EV~@I#qr8}yF4u1Hhm25D>bF#`!GW>1w?6bJPfl|~ zMk@ui=f$5z)SULJaWCjAThe8`9TnO{jp~`cG}Bq9I;uM^FK-I91>M@qXLNG$6CecJ zsJ%;R-@PjI7u9PUeaGdQo12_II^8x$Y-h(WrendBlB-rz=h=0%daRIH6w&378ksZQ zXM9~DAYQ0`fVFnr_qzMTe|sw2s_$0Kd~+Lg-%W2H{Xv1U%bNgIuB;h)IEB7V{pwYO z+y`p_S>ZlHA3Monqwd~r;_r~hs$hir$RDgQ;Q@xHGOo$r^JYvNS?wfcc)A?rx&bU_obY9Q0IMFO6S@^K`uwyTdU!|jygl{$rl992db9FrWqMtt2tl$mlR09 zNbY*AQmF2!6^s6=TAL~Ry<+E^@%sx$nbn)$xqXWDq6?jC-XUzCwpRRayZcsoT7usl z;-8ED9yPl{LROXs|7ABITzE?mq~Zt3p*g>o)`Z#^w;X?ex%d??CTMl8ddMO4<@>7H z>#pSq@>9rF(FcW-mck$KD~sjTyS3Nf`z`g{xb;?AW_Sw3s06I8#Wt|t3uB;AA1ri- zmRgz>9C)3-HEi>}*`nCU{>F{@2q82Bc+FEP z-F23`74+NWN;q(w-Ff3qcq-1i%2Y1zyqNKEJg$W!Fz~=;S>gA3N41Dqn#*N1S-_a; zlV1Y@Z@1u2;8eDN==_+A4^|u1k2)XGI$X+2&#cC8`l#Fo_FxCZ3i; zHwl{SZ-eH(8B;VIcMJUz&3}R$doZwVEX49I+Y-f(1CI^-arc@+YfzzuUExycbswJaH%gkpIS#MUG&Ue~32yEEkbazC(+Bzu@|G z@?G+AMoID^L+&lADmV`IJmVEq9L4!ELy8linWrM=~a14Y*X zUud65)}MbAg7x9(ZwoY8kO9iSPX+as?cZbN(24xFGLAl11Ct?qDGh3;!|7hf8KuKn zg5%84;jO{(cHy{Z>j>Ptbv*11e8LSFMIqi#I6i|pjA?^_Z-a=7o{(*W7-UXNYEEQE zPi#|2qEAm^QAp&mLDES_f3rHytB;+sidD5i!8M!njVkAFDA(`?)r>icdTE1t)12mT zgXYYf_HKg~WI>0$Nk?cwPq9hQz(Dga^stwDSL@??qxnk}3k2uE@A=CWxU>|BRWFl= z1#`eAbEpMN>?TX91#8YGYmo(8)h1h$1$*Zvd!GeIq6LW*vY2jqN>HET?Izcm1q18S z(g-$qC6s3k#JMKJOIXayu*J(}$2#mz}%K1 zw34RSmS(V$VcVABvyv6vmX)!RQ`wf&wvspAmbciJ*$kB!n9u(F3B`42sT8|S)VkE) z7zr(~QmNWjX|hu7+*W-?nnt(PW~|hgw$(SS-X3nhMVwh_+*zrgAx}4!2UFISD0Z~I zB=1zhsc)q;MR#;$taVj(bhWMZjCb@bto0ps^gXN%0(J~Stqq^u`G8V<-FzS1giiV$ zE46V|Hf!{%+?z$OewR3n#QOr`R=Tu(4pCmDx)CaVp)h2HCn1!cL4Bc9oSjsrFDSEX?*SwjO-to-)jy zD$LI#3oi*C zOnG1?vwxFq@Vu>G=hA9>o*T#xIr`Q{J1OLaq5Yfa02Vt3p8XIZmN16>Q0>uhE|zdn zy9folaP5i^8J0+k{SXh92%G&dpNg>1iqP2o2%Cx!kNxO8mQ*FXsKouK)P3#Niipt) zM9jQhT$NqYW<~g!T_QGX%;vtfk)8U7JS5ve>J#oY$)1I@eY(m)y0(3W@j-@#eWt@f zriXp{l6pL^eRgc+tggPR&%wtc`<$wSoF@C+&V!HGzc1qtP@iTFrrS4iH|_Hd5Ax3J z^Y0Gkp6w*;!-BVJ*rbd33=TzXhedpch+M+YmIMwZDu-<=_Ql4Br4|ll4s7WPnx*Q8 z<)Md_5FN2j?JP+&1aQ;I7Us{j;$1!Au^6%9FD$p9u&(IwT3#jBg`V3 zJE+=njyj5}GgOWcv5sAxM>cTB&gW#@%#i?Rx^cH-_o1T|Y_D+s=sU=%mXD0ZS%k_1QR$jhz=9Y8OUd&Bt;s$Vksea{kV9UJB-1 z%KUG!>c8bLoXexN%XPI2InFDgoNI@iD{KG#S_(U?sF}fb={_XHzv=NO7?I z+Z5v3V&K|ls@qohw`J_I!^X8kQ@1PXvitVmPH^2`?7!VmuHDFg2R>YfssHwKT%M;w zhgEe)9{>Jka{cYB`)~8#f1@t{9diBG?Q(p^wWGr2xPG`!QIA?L(&v2IKI3ye7d<|g zalKGEzR-5P-0WMVcD-WyPs19(DTC;_4t2eWJ-$hGz0EnkEpol9I=*Xiz3)7}?{j?^ zJ${&ReOx+z{NhUTH}t~Z6?MpN0PEwzY~Ubt15%y<8Qnn7`8j?!H0}lf^aOZPkJ4^v z*H$EiA^EIMAeKB3PadFO10;$EGwlQ;$qnOu6lPWfcCH(C+6h+u3ABp`firu8^MeN) z;RZcwz+P~}J8!_fKEc0lz&Yk2fbv3V8wuEX@fc4D|C|u@yAkj=5-GY9YMhctx_S%7OHTDdPRC2$Gw7ryEL8kez$!2Zp+*3=+f-m`~Cgpdo&+7^a@Ud@G+;nGH3L$V8629_puba zvXu3)QoXX$@v%0!vbOZGalEqe^sx=RvJLaGi@UN*^RdspvM=^=sJ?P&_HpdGa_skU z8oP3u^>JRla^CWBIl6K=_i??yaz*oXgI>E4`J&t@uiY7aJ=m{3_Q?ynJOen{vIlE^QF@+O4QFO>Zzl;1B*>?TasFI@E|T*oiM zFVgWQ($g<0@FptEFFNifI?XR8_a>&;FShz7w%HF6*L4%u?-xII6F=*huzZuS<(GJL zlX&izbbphC=AR6`O(ybBp}b9D^iO5KP38Ab6T3~5^-ov5P1o_yFuBdJ^v`s>&Ghuo z3cSq<^UsdE%}(?Gn0x!N*gvQGHmBJ?x9b*_+wcEr?Do^F|L5h~&s+X^N4I(B{`vQ} z`Dg)%0_a@HZ!`VsgHas~~@Jq)J>jpROz6bFqW zsvkz1gT}fZ#`=TC#~#LKgC>?ACboip9zFa#51PDxm_++91$~?%`Y=uTIL-KBhW&Ad z|HG`<Zilz;G?dmqyFH( zz8X>h0R1f(3k*O#uR3}@kQl;X04556!pb`3ppeYu#K6w#0pZhRB`e~Se!-`}0jANZ znr2CjykKcd)}RmsrtX0ebz?>M{9mvC-5>X0{ORK8KT5nm{Xux#1@hw2_;K!Kcm9UX zOA{YcWC6`0iu#=wYVdj;bux&*o#py;yB}9Car5Und?@VG0~~&sm!*??{ zZROcl&%DP9MLc1*)IOHa-a@_gV)bNbI_=o^wjS!t&1Z z3XvPP$KlSP0ziIw!Y#F1kfbIYVyo0ov2+qCJiZPYTadWbnhbs=K#z@z+AmqFZ3w{N zphfc>9$*qZjnN$6z#F`dz+XG|mrh3~Xj5X`%zy=OhRc${7kgN8PUG#=iYYjUrBA(k z@gxTce$fvg^gq08#wF6~=s=103AEyi#*uq2Pc^;9_c>3En!^2948Wb}ptLKQ4Mln%X5_6YM&%eBB718A6 z=WFC$4PnY!(=q zrv%T(u^`4rx{)_){+@o5esTZOuivb0pam$izzNaqRl;bzK5j;D$*w9B@W>V9JvVLN z94n8R>>_3o5BK*ZZ4X}%%D5H`3D~i%vPcpHr1^KHjq^v_evk9<_+({Tq^MJ=Nq~1r z-xOW0Qm&#G_%jvMK4;BsKlI)jgw5t8`1Z zltaNL7|D4I>-g%{rF}BnQ){PHUV^n$}_ALtKq6loyK<6#PzyOmH zCq&h3{(k^@K!(2$OGwg*sv{kqm4q$xs@Kw%7N50z=`L5>+UiDysD>45A<3uC=1GIN z?ZGZ40r6Jtntw64T^O!i3-S(Gq~o)pWv+8cds^uR*1Gr=3U+ZCS0-|ouFo4Pb@5X| z;%?FoNj+n5Gpj#^=1<3POoipj(!x`%Z!T5a;U1R+yRiKM6n}Yo$;f(0chpqC{EFFMDgI!w z)N5x$v`S;q-WbRAysCW%?Bgy&)p;v!G7bORJlz?YMF7mMm~9x`7weDz%Lke09YTA9 z(PEjN(9J3@z07BXIFua4bYe3UOTC8jXrkW*F)E+z<`PEa!FR+ZEt`AiC*bq1_w6%> z=^&0TtbZAUZlqpNk(5m(2l|Pj4ltY((pd<v#&-3qMJww| zQ^B*fhW7F3Am&5rI>2rc=C+$SXkCN5A`nKdjelhw-Cb^2-6-q=1l`@}JhhXXVP@hX z?higY&8R{zE_#lgVwi@SVE z&yZwq%}c|2N4exC_beEaE%E2}JJT-@I+kQ1jpxl<1;e!{p?rDAE3vF^z@>2BPWM-&-qI6siXbwOgbwd z#;A1&a=qaiac?^09(8=;vb}guJd}RAcbX5I&|c4od&55Ws@7fcm~RqMXWn-QGP=wi z@$9Q7J@IDmxaFBoy^gqv(;NO>n;y|6)PJ9Q>58lV_C?Zr7aZSh;o<}5lJ6|xX=Ldh>SEg_O^|4R>9qCqkyrMoi%6E7k_`# zHGmNKBC-%kGuM1C27GX*J9rg-7lum#7=a)tBHvVjWA+6X7!nI;OO0IP zo>qcz(0+l}S^j5vwq$lu_=OzeP=9=fOf{H*9r0jWNL9tha$wko8NzzIS93;qgK)QV zu;gEIDZjQWj$C=Ke&g8_#i|FR#gaybN@&Z5SE52)q?Mkh?eLe z%+q*em|k?4fi=c~YUqS)c!{K#AiC3A+{SgkM-p1tfLwS3Nmz=qXdw4DMt?JSDMnOxRbZCy2uMjO;-?Nf3vQ$bQZU5$*+lIo5*L z2#wxo9=e5K(>7?h*o_ZihrKw7ST%~@*pBrrpA01)C}EckPMMWu*Qs7^?@T9liCq;{U~gzsFDo-5q2MWZa68EJ}Fs@SdIHf z5&{{K-1w77$sO=mj1|OnLpc&nw~SO}dLfyVR%so~gNmT`1=i@0JAapsC}nsQd6i@t z9o(dq7bHG_fDb33fnb?s6IqsW86A%W2uw*qW!RRU^_F-Rmvi}-&G8HwiI-hK4n4UL zZfTUabeMqIn5?msHhGL3*%5g};!8{0NjDXOa8^KGG z*q2mLo5UHNmBEiD*_7po5>0o9RrQO~*`2Z>3kg7t7XM^|pg9scIhC~Oo$Bct&j51O zIYEP#oGI~@!0DIkd7r642dhb#xrm+hAe*I$p8{$cxrsqlbbn?J`3}u#Pw6?J4jLLH zB%bQmkSKAUzWAIEnxUT|4S@D(KX9EWL7(V}nHpN6n(++B$wpkMoNzaIqbZgq8l#uN zP5qdb#|WKq1_s)hV@^1hGWw&AAq#f-X(q^`8&QuJDx5&Nq>q83UtpvCS)mJRX^Y9E zR=OBPC!wAR2Y*J2gP(|=xpbvsiWmy8pIdjMDzSqvN}^-hrh$=hcJQ7ORHSLzk{9Zu zZknfhp=7%GKu=~(D)F0B$)Up@h5`sEa zwS=dV+No`UsBDy8IEoOBI;a@xsi^uEoVjLI)TJ6BqJNrtZmBw}Y{5-h8bKdQ2P>h3 zmdT?^N~^$n77CD}>c^F%8fSQgp6nQ`%o-L#+6Al%2ghmn6L_m%fS@dqohxW~?K-di>Js{C zk|^1)3xA=b<7$XEz^VVbuu1W(gk}@(8kVrguoT-AQicqBbMdh}nyon7vv45`J1Vg@>$60w z7Nh5j%UZNbTNY|sdHlMxP|LJZ>4T>lwN?ujUw`_jReQBuyA?XRf>_0~T|2f{p|dI# zvSgdKRspmJOPVOFws0#I1{

8@F~#6yi#^ce}Srkq$v?h+E6If-4k9d$w;oxQH7R ze%rS4gjI?AxIdw$>PQ8UTe&;2xRYzSntK!K@V6_qv6~yZGLg6NI<%sDx+?Ltljww~ z+kd(%0klp#v93G20cou+OS`yhp0-O*Xq&sf>k(P&gQokt#A^}BTDrxXycf}Qj9atH z`@9n&xuzAk&|AFwkmh`@hhOzkR8{1bnqqOPcYUz{KmhR9d$V zjJpO*nzB2=&zlZyi%$)V!L%E|eJQ~n+`1LqxRg7>%G`+S|g!tDq{y zx-v|>Dr`?De8avQyemZk2+YGbo5Pm2!$M5E*o$XCe8jn%!?I+=Ox(Ji+jGtv#ecI) z#4&8es5`|%tHrL1#Zc_Un_I#WaJXVDx=u_1B7DYtTVvT9#%x@<^FYNH9LJXX4sA;T zENsVn>%C>n$D8ZKHVnv+>$lmv$Ak>GRR2K5aGc0|tHBcM$dJp$hB&~Iytj)?u8n-j zaSH|q+iXG1$<0c`D3!3HJh+)$$$zITxH+7~tK7+-d;_n%w-pS^vwXMSJIJ@JwyliF zyIi!MtjWI&x1@|`n>@@>ySvSX%)Bgdw#>|9o67Vg%g{WwcucNqT+J~HPvjcP+N`I= z%)sA#wVeyU<9xNd>&oX$wDiln$GpxltIY2V&nqjVM47G5ZeA zJkJ2lu_ooe1>LjhAaQz}&^>$5?(EPwE6|4M%Mv}W{_M>cZK4^y(J*Vf&1T6SO|c+N z%_BXsK$~R*ebVQ811inZBg@SZ4bvR|8&!sw%`_dX!92}5&9VAy(mlPfAZ^h>J*zIw zyEt9csA|)^tIGf&JHoeb{t;*Mz;; ztcKW%-Pnw+*Mt4olKmL600B`T22r37T-LuNZ!>!!Z?c38G-PVoUz5ngp+x^_)t=-aX+v8o`;9cIyecrjP-s!#G-Ob+L zo!zX>-q-z1O#3SrhyfYt=gBgCK#8Bhf@UgI`? z<2at% z!!Q0L3P1=|00Fpw3oan$WIpC*Ugl_i=4zhiY`*4h-sW)r=5ikAbUx>HUgvmz=X##! ze7@&?-sgb+=Yk&Sgg)qo4(Aa6Pz8hl;D?a~Rh|Y}un_jF##?@9_~7NZzym(8>73r_ zp8n~e9_pe#>VKqO>ZX3`sGjPozUr*r>aPCkupaBOKI^nT>O6o8itbp9K?sk|*$ctq zE?((2(&e{+3qD{EQIPD)zU<82?9Tq|&>rp5KJCrvhq>(1_JFbZrb>4rG(IdbV$VC?z+ z=qR7^D!=k9-|{a1@-QFsGXFpGG+*;JfAct>^E$utJm2#^|MDad1?H~kAHNt15Cv8K z-wk2bpMNd#G}7f&aPKGo^Hg8;R)6(apY>Y5^<3ZeHy`vDkM8-6^!yzK>0S_%KHyF- zAoX7I_|EZOANO)U_jF(Pc7OMC5BBGt@rAB9 zj{o?OZ}ni0@n=sMelG@PFZeO$s10rSFrr(S{(tt7Kl-F!`lf&ScCYtDul88s_x!Ed zm0u7nUih9bB8V^gsGs|~zx%x3`zt^BV&C^rfca?<_)x|9@?QHL()K2=_`d)A&>#KM zANQ)y_eM|l#UJ}rV_|qT$;y?c6Z}Y%!{fdzQ*st`*kJR1IB2eG_am;PNiDa>Q$^+wQl9w6)A}*K5$hb zL~Q5Tl?jFtcktoGk0)Q={CV{0)vw>q zI_%i8%yDKhx=W+12y$=8=ilG|e*gm%a6keJH1I&a7OSE$p_Y;kicv<1MM4TEw6H=9 ze=pQ9Lk>6eutN|(6fr~+M>MfS6i-w!MHW|du|*hPlrcscRkR0+1|1CRH9}%T@FZef zFe-_Sa$AT3b$(QGNhX_g@<}M8lyXWbodYUI$f6j<2Ohfg@=Gwo6mv{6%QW*$G}Bab zO*Y$f^G!J8lygox>jcvWdxU!ItM|wTl5UhPUBJZ!Pec7w)KEzs_0v;HH5F7;OKmk(SY1{1RaR$}wbfN~rPWqk zclDLmT6+aH)>w5NHrQK{C01Exk2O|UXq){t+G3|ow%RUZ!7{1Vc>J?ch}0?ye+ok{ zdMB=h_5*iacH4FLU3lY_ciw>%yfRZwqlkqE7xaPPUw{J^cwmAHHuzwK6IOU(h8uSH zVTdD^cw&kxw)kQQKILH)J#`cdHhMEK%7xoBN@$@7-l2D8mRolDWtd}@IVV{zg$^>X zICTMnTdK(7XP|=?dT64HHu`9!f0I^vX{MWY`e~@6mU?QctG54|>MCx5zy%((#n-5A z$-<}PcV)q)zK-5Wl%bj1cKdC(e4BbR(~$|c_=i>){AILnWFoL2!T#2|`<1UixhU4_)8dv(@Ze|P2Y&eElUJVj8RXQ7afeyt;TD%zMlX8thDnr$e*zM~zszwgG9H6Z zx!NTQAr%Dz9|6PKp1>Ok22zlNBxE5C$tZj<=5AlP9R_ug0BIajcG7rb|GHK|umzA1 z_>fluqChBRe54+zd%~h5c}i5KQkAP@WnZkcNIqRKcaMx@E9WMQB*2kta{Sup`V^md zRiS`n>P+15` z0-q3pBwbUT>tts;-T5|IB=R}Z^rb8_Sj%_PE1Q<&B^~`l%ysSJF;FNSNcxB}faX)7 z3uS0S9f}|YVah?&yyrvTwa+-xGYw($+`GbA8|qprki?izP@Pk~`c<%o)ui&g7XV*sO|e1=s@vpdYv4oGc0s@>Q6SPt%t?WSrd6+d z3?50<} z>t!!r06Wp%>W;AOEsk(G%Te-1N*SYItr(zC*OI6WWhA9Wvd!Ge~=gt0FGiTmB$>SIq?MTt7r z=G+zMe^|#melAPzt1kzun8$vRaA_%g(@F``C_evqtw}nZ&LKxx%2N)jiRrniApe%i zc`34sc?4rd3DhW1AcRWHi{mY)SE;r+<11%*%WER=?h@SP7&-WnBMqetTor7$ zfVfGvir1M3UFbtMNycrr@dPBB=pUzWf5@REi(3pk4N=%IOirgCqGw&}TffMs;~Z+P zKZMkzy)&w#lmr(H<=*zlz)Wl`mpg=A?sMmQqT#z}A=CZQAiw#Nb}^`<@F0{kF=xu? zet5*U+|Bd+vCI=+^Hbkc>HkT9j5Vc?CR?49;!b?$J>PG;;~MObAMGxO`(-A{eDhYiZwE*gy1+0}M$wMrqonwQ27mqS zA7!J1O|ZHqy*3le_g@+A|T)G7fY(0Hwe?qjl0R;3zOq@kpd?x18I3O$=P~1gc?8Q)&q`hmpA_NXu zAOu{Hx}CxWS44{rivZcHMQDshcUn9+!@bXnKuGaLZQRCQETlN>Cdp&OUBIwMY{gX5 z2{0ffu98M}Y)5vw#iPr`Y~)6ItjBGPpkS1~VMGjE%D`TN#4NN6e@a9{cPvPQOeRf? zB~F|Ydu&LD)W!xH#q&eBb1V!6$N>KrK*pl5hg(?2yV$C8lEs4@Ns@G(LA)|U1eAwd zNtWEjNix6x6UI&I4SXN~e-r~6933CXf<43ukaWh93`(ICBp=Kq@_V|LOv{{ED-19I z$+@7v^ZZZ{1(bwruxkuXPkc|)EKQ}9&*U`F{2WjMh*1J)02-}P8@*8)l~Doho#tFl z>ik8Sk;ozBJtRYmwj=}y2t%BN3?8V0Bv?ehNJsGmf4UH@QY)1bc+|hK9FP-DQ7=_d zmYh#F!cYAK&>6ka14vUfO;i69IDj^7(*w`|HEnGRI(&$1l3e8>b)ikY9T$RsHy?_hQ0Uan=lTF!^Jz0`< z*K=J}TBy?oxKll4PbuNmB5jG~REAsN0W68j(SZW1On_qr3`P~t2uN6lU0SC74QN%* ze}zmAYOPj#wbld$#XL(+V#rwj^j11eQ*mWgbY<5`AX$}N0kln93rJhGW!sd!0Cs&@ zRh3x+uurY^#Fb%Cr<^{N5L6`f+0_DC6dQ$GP=@3bj)R?xXKY%=ZCt}}*m{cEP=_ekB9FBn--r*RS;Tfi1 z7+%{IFxj|;22yPR-c3%ty(l3Re_jf#BaTR5W!ME=u!mA?3JWdV!#$3pozlhCU@#72 zo7hZ3#Ih1qjuQo8|Ej%K@%>c%?420(T+m(N^<9A%j$sGz;VHmjB8UMZ00BS_WI-O} zKE~l6j$i&A;tM#}c92sf?%gG37XzNE$rDrppyE6k)=c7oTj-IZO$^(Nf8Ge7fG-wf zQ$A&v;NX;;T!~d<%LUUkj?Rod;RBfCbv0YkwPV?R-}@dUR)hZvPy>rL1&hw;V-Ds(?qT~)WF1gfXb4~e$klZgkVz&koT6vnX$O7a z0S4|br^p#x$bjGZOG5Bj>VN`!*pg1shg;Ace`QF5-*KLDR)BdX zhG!t)mr!LOJL3=TXFMHX5FTL?E@#g5Rwu|-+6ePKw*Ux&V7KL%!GHfA-z0J)xP zx|VB=PG&&vVg0p$Xf|RbCfZ1zlx*f5H+rL zjs;I?3>;BAsgMp%ChTVrkatL2gtctUUT>0A0G-1MnKp{Ye*|qPfRHXh>Rlj&B&b{9 zdFrUnE6D9Eh}~!TywBO@>JYwK%1zFU?OcLZ;afKAvqo#Rw&90v>p(8%VutJEp6lfv zfkOcC5ukw)rvVIj1q?9eAjs>FM%zX9YyHgbY|N!nyJFip3dPnx#=eC|n&$$MZ1Gf} zQf6-=KS;CDe`K$a@4zJr8k~$MsBfLo2i-C4=Fx>)s773b?Zcp41MhOJRbzk#>)vtj zG}QocJ!t>99o<~^?S+2bUan!bj)4r9=!uSNxi)d-4)H_S^At#dJwJrxK5^$}aR-2e zAr^sFo!K6x>PN}PtN;spaDgoN9jHF(!vKQ{PUjo2fAk{nbRA3reeeMsp$^JOa;k95 z)nalK1B)kbb;*D>9*{QdB1Zb`@-7GSU1U-GG-0tWXlQ^{ktNwWR_KL>-}}vDIRE7g zf9s0I06WKk<=%4;@ADKu18U#%K)2`$VDZ=;Vri~Z`;>7hiKjM70z$|F?|yZxh>RV7 zqy&KMe;)zzAWzz5^>lkL$+mpz-YIO~X=-KQpIgueuJM6UxDirUcT-;q&u(CG<`VqY zZv~iY|9g(@TDNrr|MIFW&bHj#{p@vHR$uj1^9gTrUY6lx$Kg5O@H+Q!XisiEKLlz= z12pge50H632lQ9ac0e|SLO=8(s8eg0Pfn+Je|;x_bLX1xMsoMC2OfX`cc1DfG1$pI zCkmL}d%yb2l!X}DW?9~z{igAZ>5@^X@9CI~gntUwl8h&}2iK7D!RqgLmIkRF`jD!4 zi=XW^4s(w8&w(CmRV{*p9$8#ob2fk9v_5tVXX`&+c9qX){)girE&lj*dl@1o`xeW(ImSnA|S?TBA(x)-~O=iR$Ua0TCHj@Q_} zPt%Vz2XzJc!C&+Ch2e%y{NVR1jJ-5{O9l?#E23nQmkn4B1Vd`q~TMbAOXlEy0YlwF$zi)5+u^FZ0YhP z%$PDsM2Y313L$(Mck=A%^C!@VvZzpq@Z>1cqY)@j3F`DI)TmOYQmtzBD%Px8mmp;g z3zu*<2o8Us44-xU_%T5eyo9nqz{SG{6qG7u5-u!LOd7;9RsTk53}uuL9=IT6(Us&f z$jlxU;FCt|nJigR84|m8&6+#Ys#jkl=6Yf1*bJp9AeP`-0&Cs~H0XWcfC*aApqVRP zq=<;*7nbX2zT)``3(_rY+62h~_9+ggq~abU1`%fv;z0zdVE()s4Cygopy8gzp+h4M zrKpd_1AY%P_Rmm)A598}(C~^H6^J(lBo-9Z4no$r7Ft|A&9zwq3S35jE>-viSW1H> z){CrQveP-i7p_O);HK(zr+G`KW=4NdQ;FiE{yfyF} zEy4{)TyY{GcYz4ZHKzk~(@_UWb=Ymkop;}j7X+r~nWx5j?X~BgeDT#+Uw-=Srv$1> z%-{il0up~{UKH=1BUuz=J&~b!cLh$ubs2WRu}CY?R2x zgyKzv5ToQ)L)~DMj7ZVQCbr>8iUfyY0IBu0#qDQiTgXNO@uu_C&^m zNyRosVzL2SiREH6ZK*F0F1P?e6}#x7Oap}U_CbGd4SYj@H5r?xr=52a;~6m@;YI+- zzWrvxpoE%pTylvj%KvDi(^Yp}cH4EA%6H*iT0wc6a>^ci@4*-9sQ2Y}YJW-qfa+z!L6@>iA6rE?E## zrbmAw@da&%_@;=H0`T(mVo}|CdqY!#E5116jXVB0uAaf`n2%Lm0u8|y%%K-sx&c8qxp5A?B%2H;Hr5Q>O2 z5-<`7@QrhwV^+2Bu{FoN0}O>ToKkK82FtOqg)V#{3}Yz68Pc$ZHjIkA=(V{KMd5#Q z3#&{5q(PBqe2qfCN&+EFceYXZ>sTIapuk9Ai<-ou5Ig|EWNx7YhXGG`ZUUK}aMP!X z{pJA68&30Brks~ShkDYP8TM>eDV=psQ=3u`(1aGB`4kO(r&8bg0=XYFIBh`i0|9~* zR0IYQLQF{@fHIPpg#qg0S^WA769a$K7$J085k1(Siq7TeK9kIAAow%OBe$XLcerA&Wi&qLJ9 zrspW@L@GPl`%Vlll_^dAENJ5kmH9|@v_Aq809<&eCV0UM6gZ)x93a6(F%h@7DKJal zbRCK2<^wNP!7_Ql4QD1vP#6Kkz2lfZ{V7m`D%7D8 zwWvn*3O?plFPO^hc0bfb5W{~W3w(U6F4wRNHXoV9TbvDTn=FwB#TkoZBn$-lKxbuu zXF-pJtTea(IUe%LXvPE7GmXeu;{_Jg#(i2Rj{gMDc*w&u@O5f@L*t`;{FpSQ1@fU` zcq}g}>I6(omIG}EvUgc?Y*LY+SA_ff++yW9)(1#%) zfFMZlt_Z)Y(4Fv9o43MMp7T7TJr5N)-6FsGWy6u2F8RLRBnbN(HskEhxO9cvR0eXDNb zn!LHz)i`%`SzetJvp4p&W`CulVC|Tm@V#e`2{jsi_|sqiashv`6df>uCyR+SUp5U0 zo(XHUWH86rqrnN&$8nV*;nC?Sm97Dek1}kMzQy!!)@qkJVw+2)(3Y1lel(;bE$K;9 zy3&pd?lPxUTxTMeNTfLpkc0dUZ)D6JLnd;OT{GT2Sp#_{J8zSnr`~){`BD9x)Xe}Y z(C_)ozFo%e`4)e=SjIZ^zmS!vEo{LBTd3+7R;&XExC;+mgf=1Abgo@Cj9_&1PsBV;-i zSsLwBwP|uQM&B%%7IaOSU0b%CC{NFg)T#1zm9oY8c|CvTntSA-Z?6sdYf%L| z%>7v`nIC@(U=&D{3rlNxfebN)b6kMt1h{I?Czo>$Q)}Gel0~9%y6D4EVTDY;Jmxd6 z`TxyxK87-0D&uRCZyfvR(>x9}kV&oe)O1WXA8YGX#rWfj{i)#(XP%QK&c<59(aLS- zxE(97@F zv7uZDieN>dz(e`RF%Sp{7y>$74aVe(;%R?SOR1LM%u+1@2@Xa8`gO}v+(0@M9T7&N zBu*kFRwCxn-@Or6Gf5rk?a2PM+BbZF6aL$%O`+FqgsL5&HSo#o(VkqH5qdR`+0oh< zzR`QJU8Pu{_h^|0&Rs(3*Fy1EL!I2Qji6+qfF=xr5;%<>8UhaJKs#u_;Q?agpq77M zfScdcV2{8S7*IhD>R<{H9Sm9`IhLb2o+COQl@VrQjg8*rxJHtF02GEIz>(SjR{vot zUKIjr;TG0j7si?zL75n)T^VXz&Y)rN4PVd{A7UM!VwGGR79$-Fm=oCH%Ao-Y8psq_ zKqA0H{ZQlMES~*|pX1$#I+!2Ofg^vT)z&zsqf5RdOva>4S`H>YT`Wc2aZMeMe44+> zV%BbrrY z2`*zsR^K^@0M=N;3s$2bZqp2A<4oyF33=lQspJz3ojSDSOy;Ft?j>LL<&l4^qfN$A zGbv%Gm0oG^m^{j(#h@N)v|el&Tq^3xTX{ngXrU|G9zZ_X#0?~0(M-mj;m&yfTtO`) zs2Csei5VPnNDPKf(B}JW?YjOZD3<3anfU~^%W_j_5sA{%zx7TBlFWEN{SEP0XrJ;s|LV zCcvUzJveEqS)q#F#+(YPt^DIs&gkyxY43ezj_%Bkav8M#=o=DSwKgAXE^4-RtP?2X zG34PMqEk7DqNOrUx$fNf?F8f{T7$By%epIVvE;noEZ%?St={hKPw6W&8P^i($o{FR z1_Z5}o?@@&$z3FE!ou28;;HnUC&X5u#MYPGRqQVU=`aeZ#(FIWeE)5u^1_ii8#*A; z3M9f=I%(s`pw4<&r#^&D!R?C(rN0A>?waPL@FLF76z->EiJJ&t!6&0jr!Hp){$s}97AHQp$4fOaxIZED(LpWwsL`N zz8oL2!P!n@;>94QPHAuE1cSycjAUu;l33m5?%n<_00*!D53svD=f0NdGyShu{Obp3 zfbuS{Hw-Mns+!`01mpJO0>Wb1Jz(TQEqX@mdQyMoPJp(S z;0gMtA)M}6QlZ+;Z(GKcO^MH!Xk)(7#{~y3S^CTruNQ}juI4)vY}}LDYb5` zFr1?6ie{~%cB)z@oRX57F#f|b}{WW95gJ#1&D$X;D8Z`!g91s!*=k) z@@abdY30V9r@Uv~c>qLuK^%^+3VUt~_ke#3H);vaz#){bGor2w#;>}(tvb|0FX+NK z7=jBFf)dz5C&dIId%`Cma_yF?5XWpfJTfJ>vpc^tJZr@gBmbd0`YgX$gFI?L4t(-; zeuD(FQ=KU8ieB(#{suG*!3z{X8$3WDJir48!4-&t4wNVMs4f;m4yQ-><edS8gE=1qsJSETtexG60krY zxPcom0AeFHd(*>5J2riGEep5sWV^6SD?zum@B0pHS%k((zHJG4cI74b4TQELDqjMTxQIhU@Yde}H*wFx#lJd&KJPP&i?Tl> zuJfApDWkQp{s}Y;fDk;u0$8^I2!IW+fDH)1bxXlq*Z=h<-~bM^Q7*$5<%aOYRwY8| z7h$vad&dC-WOy9cMJGSuq7S!NLm^E^dYx!-jaRyFT)-7fw{;8ud8gBQmfQM|Yqya%bay8?4)C=u zgYaKRc^>V-2&BNP!+Lu&z!=Or1K5DW|2UDufB+D-L(!+0=eK_{@Am|7KxLOMB(T8- zpsngw#kMHB$uIj-3|*++L4#g{HfTUg<#1COqPEw(&ELG18&bZfc*ut29zJp)*QmjC#5hkz8&H4)f#b$tDJA0*Yf@j{M3 zG93JRvv(gbKpcN8{1`O+y#s;VYkCO40L9;T`I5P>v-A;UYkwa@q#D9GNHbbe^Ha#e z4V*kv!!|mr{HfjnZ8vgkOoSj)dktzf&S$>nZ~uNeayw`7>$kTBPXhgL7q?GBI=Tn+ zS+jcsn7{?dzygH85&*f754poPJk{Gfk>fkp+qI-PxnEuHqDGqn1`zz&+dT|;xzu+$ z!`lE5%mEN&LMFg9TuVU+Xo1pL{0cX!WNUnZB_l?v0Ur***%o_MPyw=g3*$Gq57%v| zo+=nXKJMC-yh`ZF*6-_bzW(n&{{zH7mk(M56@Nw~MyQGlA5lo8@%RxWi72snxPXvF zR|07jSwfUWjF`1=8cgJ{SyO|C58u39ll2qmPhu}$!i1^d=(PmblqT?W#r4X8Fa zaNvTF1tFFQ$R%L^2@tVBJP8nB!v+JjYHhGE3nWB{1q%WZY2#pukSTjpO-U6a1`!a0 zL4O3PV7P)BHKu5cNTvk_3;`@Cv*^=j?HIN|G6e|G0yOAA3(O>g0U!)7UMN^Q;ozDB zhaR(gOt5YHi0vLuG$|>B4ul~#<~|UxHdI#2f?#e?h~S(;^c&NuR0neh%)2{O-n|2p z?q@o6$(1jZl|)w-2rhWU;@A;n$S6KsRDU5vtbBg``}z0x{~y2r1sssT0u4M6!2}gt zkiiBWd=SD2C7h7L3N5@4!wfZ?5Fd6&i{&>)8mHn0gs zoxV9PsGx@0(f=r76hP|71eOx=si>x^%Bl?t2!JaA;NnJ#1p<bD>YYc00ia(^;} zC>J2YuD<;83$Pdn1L3d=Dli3uJ@zmSh9#D$tg=2V%hCqVK$C$_WRQ{Jfd>}Y!vii- zTMY##5{->f+G@LPg4}vQM3X_#K&JvjR!BsH2CPAfy!~Y9PL}b!yHJ`0(p!&*Q8*G& zzF2Uv51$Qfy%pD7b={TMUVZ%)*neP!9hTT)jXf6GWG7SrBaL2#b;OZQL`fwLS+wQ@ z4Q8A%2NQDI$)_B5B&tVgd`xPorizq`03@$6;f1Z_lp=sL0)0S;KwAia8!NG7zzQwR zTB1uc76=0W%vApRE3h-wR09Ju_6Q-eIq9TxGPBwe;Ijv0@NZ+~28tbgJ-kR!*s`&6(SV@e+M3bmh@xr27{JA-K(9hyku3;t&8*MpV(3dvJL+n2(T@Hzke%P6#&2Def9juNGQ8_S_3m z?D=NBkN@lHt-l`o?6u#X`|iE}9{lh%WHuuZk4Bp8X;WMgCYfNAv48Cxaw6axVES}0h$xJbbat~gi_fQg_n8uM6HG=J#DCu#K|1k=PyWDjES`6U~QYf4dUND5?#V{x3*uVf@06{_V z%Svbepy&7K|Eb6ZvW2MsmboQOspWbp6jM0p#NVt#SZp7(q&BD1h;bb0cqj z1Cbkuoe_|sFMlbh&@2g+6I?F1NmrPHlX031#=ufZFP#CSXK29!T7ZlpsB$OXs0UNR zc?|+wpaL`C!YozRn%6YShd<2C1SVw*-v9>^{4@@7mZ+-cwdy@bi{jF*SyZDQ6{$&8 z>i<%i+SF%y4Q$)|h#A$F1ZGx64$wVQw_65f!?| zPId*j*G3m0NGZexy;ArqS1d-!3%UZM_$t5^u3&`5dCalyfULNzaRCe{!Lm7QDa&C0 z+B?nyk)}=<#4!qSvvY9DQ$D+D)Xp`Q+T;J}bPlW>IkHbM?0 z{Oo_9T%!mn1pu{anY%`9R;JsYS!fN%hSDZ+!cR->^8oDwLB|{ENmu&Pncj4#H^|Ye z<>qfE4Nh@xHO5(=(Wce8+{iZfDDNC~kF8>ATG%tl^KJF3PfHMTg*wUKXh60!pvWOO z|5?@f%IIMaH}W9_^IM37oe_*Mgl4;3C=Gv@LJ9y(^8xd)z`4{mg6X{AWMt|E5Y}$c zoks4UW>{&|d-~`}UwYG@9`)^>x74R<@2aOQoZ}QIzv1VII0BrxL>YMA3NBByruEdQ zzQR6>><#51WRA0DiZ!H?t#V}i?i+9Td`Ir(=j)^aQUR#8l0ASAARZ{zSOErRFmr#$ zW42}3HgL@348+|G!k30P#}IY~^kVuH0)8$Upp`kr)c+p<15f}5kN~48>ZEF_(nr$H z#_D8`foLxWY|kC!$m?!Qf6nE(;K|_TsqB8to}d95L_zJ!!Bg4}`Isxzn2(L>PDcOk zF4t(U9I)?3tbqmr$^?eM2nHYr)JcDC6aX5601eFV{C4Q2)KBtoqy227+ZxOeSPiaB z@M&ZL|A^-Eq9^pytpKx73%8I9yU+`Z1*+%`id+vRtjg-N>efQ0-?&a(dgR7-udFuk z_Yw{S7vTj8fXG};+!#W+W{n2(VeWDQ<6_WTV#qjp2JV;-Mv`p^yaD`Pq5*$4;SiLd z@rJOLbO+}qZ`-=Q)Tj zCWJ-U=mte*4Zoq~WX%nc1MEOe)S~O)sOu`u4g{gW94>&qvI{08f^K4u`Lgc=|FTai zXfUpf;_3#^`yNpi`b!Nwpb~#A@!B%+Hrj8d5JAC`0UgdDr$P}&?$5%?4fLdF&|*;^ z_mLm_(H{p;jJ}2zTd$j5&q8MH#lTAqx9&#T&<&kU7T~b=NX^IS5CqME4b-kv_RuAG zWcg^22BTpc>BfD)%LKv&@e}~f7>^RoZ>8Am5^o6|b3+|zs#4Hk4|;#@=Z;TmhK}_T zu>bI36#tPZi_$2M5-CA!7Jo8Y&WHhFZ*6vw7q^bg9I{88?E*0{)S!#Uj?wHs@FGRP zzVc8MSz;O=(tc(Q4H4^VI5DJ^d z^DxW`@i8eAQ!y8lF&lrgn!=DNsp{TfFPsumWcW>fM6nOi5-22c><-Sl~y^jZT1m-Hh1LSfpEz#!Q3?22-{pySf3kivMGHQGh0iz`q zMb9yplR2ByIiE9Ymhw2!hw7fP(xOr!F;gcF4;X{75BEpxjFEo>knRnb8@EuQ-UaKUgFo|BYZ3zQHZU z4+CzK5_8i&YtDboX0o&Ra|v(83H59+fyOxbZ+dD4LW|T$j}%FhR5=ci|7?*m*CypM z)T_8N;2!cjwXztyay-9sM9sk*ia-QEaX_OHK-wo;Vp9WVGbnrz1X5rI-ZVGO5%P=> zW^!~Bdjmj;phwGcYD%$*s*ttLO*xg6Pz%*i54Ay84?%w`l*MonA=zf2)NlyA>KCi@ zDm(Ki$Z8_VE;RjUG)ePIFW?S^lTZ8OQ5VSwHh@Z>jTj=425yr+E3rmfYBx0t&eG9N zbAuCIK~F&ud45z`3bW{r4pEEMSdSH1`B4@ml()>SIxRHc9yR3%Zz2D6;unL_D6W(k zxl#^G%>#eC^h=9C2O7@jiUZ>K<60m!2fyzTtw9GW01e)hK80{rt!++wlP1-1HY&v( z&j2-lwLp*MKv8kS0ybF>7GV=sVUtc#Q>-AZvqGeGpmLCbHehG26^}2A_;#2cUB6rw<`3Td@{Pxz&I7yfqoklNm)<1VmLM8z34?_he&&0Nius zP}1dyK|Ws6LcvwFrANS92o{{Bv)8u5Wp&CxzA?50h4q7l9L4ffsmdAahY4 zRu|0hX(3hRR)>M6mH^VSq%c=wH<#c#w~s6`biGsrOj8GjkI4T3)@+|Q2N=;sACZ3m zRzMA2cYb4)E@84(=@eJh5f*IHQg|1DeYf*~mno^!wHO$QlURwDI9Q|;(3}!lqxBky zD|Y;ZS~b*qFPAAWS6joAW4*UL!8Ke(V0=aPtv(Wz>_ii{BL_=6az1AE`n2be1Y*}qXP4*yO!hKM61KgKY4`358AO+}new6@j zYc?i%6Lblt>8Wc+c#O&T0z?oGi%f_cB3)a!@V?<4+7+c>7MJZfPI+06 z^KyT6m0zVmfy#BKnps!|_8y5!nj6}oA6l9n*kPeqf}J;;QPqlba8k+4e!_Xbeqv+0 zwIWAZolSXs!*de zIGKysw~iR1lUk{ldV!VKsHJ5xDN`ocmvOFmYB_C#H~Gl2a$C)rB0KPV#kdGSmYsEA zT+?%vrLi)(ukcpY#u}h)58;;Un4jzOe(y5!>NID28VmpQ79AAGSL1&fNC{bR4Oxna zl&KS2u^0Pj8@6#F_?ji;H33SX?8}NTSOfmeqq*3V@92X=d89p-luh{p##aZ#)n~)D;xyj0HPbiFi6&i=i1?xtE){ z36*Ix>{%l_LM9thpR9iXEO~M_z!9>zq>9=w~RbkBo%4}?SebH$jn|I>Q~3IKmF(^{TccmVuh2&};^ zW4HqDySDQiPVYEwarj1mnWy{rKNo<#>kmbd`KR`eXp`H)mz>F)Tv?s^xS`r0E!qM7 zL#XBVt@v0e4pzY zkMFa;<7_Yea|wTv!El6AFcCUf6xx9AgV3E^(HEW3oesk5O~TpdqLZz0EV*K{oEo=W zoJ0DY5l)0Jl7zuFy>(y()?1Z{`yWvDMHWd1=UZH883RVZ#%mf@by>%C({^_{344HN zVIU_7N%Pb=XzTH*lM|5}9odsz*_-aUlc{-~*V6yk`cHo@dmYfpBfHBQG+n~-r>jSt zyvbah&zqeu0L@7qwS^j3&lXjO;Dy1D0CXS->fFw4JIC!hkMH%D|9b-BV4(GhEH{s8 z0QbTWoN$-j;13?**G-}yo1zoFK&X508VAD}=wf$7oV+31y*siv{i{2*#7A4y$=$41 zpwv@(Kz)BAAykwAyb-2X7aFF(z7Jv6>D`8RJg0knk86^z2LY&icc_Wl6rZ~P*gWBj z-sq41wx}7>cwhmexW!BgdaJlk5@(~E%?~ji;|Y}8y?DIG9DKcWozL8?Nj=30Nj(SC zm1hD~bHJ^|1+FVV)@7Zx@!O{N``+`{$8&Vw|9yX2Z-e_^Q9W4aMhCyP$s_B zK7dR|YB1}yKJ2s>w7>o9#dq98pXAHl3EkW6%v76`t>sfvKGmQx4ngi|`_A>--t`>c zYu~ql{Lk%0KzXLfjr>mwTRs57hl?tN6#P4v(Vq}4e+e_D%$YR*YudbtGpEj-Dv1%Q zg3Ct~5^0JWHA;d+lu4FTU+;|^WK%ym~?d|ks=0)7D|7-0uAa2PEIFxHr3 zMMNe7WtCZ$nPxZ$Q2-m|d{ACm2fa9ASF3!`T9{XvL&PgIj4+#RxuL;ZZ@&RI9C5}W zf2Z7XPH=E%bkkW^9d_AG5XW{(EaA!-RenZ5mghkTk$UX8$HOQ?S$LsR0uf{oqnd8Y zX{Vlk3TmjLj!J5&rk;vwsvh|SRD~B7l~jgKL6yLw`*Eqk1_NAyqF4iz6&i?ceM77_ zaNS6kU3lr$V`jB?5eT~ajWvK--_XTljKn5dE{@6W*z8}=MmuDYMLZxS*#l^HY zADl+kJnynbzy%;+P_J#Zt*P&u!udO=z;@yZ-N6a_c?6(=4g&E46Ay9au|9_?OA?R1 zCuve3TRKq5G;hv%=bnEKdg!8$e@=SorvD>ht2omaEB{locGw?jS*=}SSVqfW#IG8B zQ*MYKIBl$rcrCkEUseYxam| zy=vymn{WK~D<{Bo4xDG;d-7R$;S+4v-FKZOVgh;QmAWxV#fMUrio$&`e|5S9DsX`e zY@h=l2*C(SaAmT<$AnyUIRoyDRv!A$TDGSy6B+GjWHC$cV)Q#1d81r)nc7~e1|(<+ ziAadq8e_V~B(O#=UPj7Joz`p`k zC+EaZaP(7HbpnM2B_u-%e-98s#XzGd0IsJ!l$%ul1}{~z$4zjKbgZKt?}*1d>T!>x zOI=V_H=ovR5O%Tq;1JpNmD}a6MNA{s2Ojwr8!5{!%ragKqea6aDTaC3avrzB#={<( z5m7-Ck*)?XfNvmCE!GeL5ikJDy4@=`x|yO9*0(n+_N`9M*`mSbe|H`G9c~FBkQl`* zhA}yUDu8VyAnQa%vP|)Dn$)bOHLr=yY-)3xtGXZ{1F6B+NyR_s@*P)RfQ$#UfP`f^ ziywOg*>w4)n=$QYvJ%~(2Jhfs8>DfVegTT?niEy_)^00-VDa_I&^HMw?9Z!bI)1*F|w=L*(D@p)` z1lhvHI1OlkM5x(-yH@#{xzX*RPlRGEDXOaTjHN zika~FW=jniO`Ixrv5al3V;>9I$Uek^Rk#^T4;za?0=1Ar92#oAvQDv-kataEYCNxT zm()_tp2#CoCXIAeb9k*u{RCwwMOgs9ZeRoJ8o&qMu}W(cAr%gNXqxVZn~Ay!msOmr z-!!Txj&@P6e=LAlp$>&cbD4^;D}7_;@FCg%@QQc5ggbR_8-!i zvqb4MD(+a6R35p*w7)CQQ!6ReOJYrVo4g@bpBFuEeT#aVAX^)9i%QfO!4YSDn*uao zfgq?MmTa9R`rvv?i#nH=cJ0A0rQ0XHa)+3TyTS#of0WEq5q5we3)#qCiryUSc*i{M zv5$W&lhj$Z#_kno2RR$GTz$3$p&d&*c{Dqwwgt8HgyB64^I97wNwztx?G6_lPzSW3 zj8`y10gy3-rLB?xIsid&jT=$CO_8~LbKi6Cv_)X@DGm(-DPO}=4)Ta*yD4oZdu^OK zX##oCe~fOlqaO|F@T%n}>%Cl&e|lsOqW?=o=PZB>n0!?H!o?jT(tslf%DWa)GOEsM zZ6*;@;4Nzl!CSp;gULqH+sWW8t6b<5DzIS=%kq4<$r~=^x=Z*$C%SmGUk?Js0wsiC z0fstbqW(wd$rbj{Av+);@FCbpi+kMUF1NYQe?2-O@3eqE?`3I=n7AtB}kv_Nr2NcG#|WdRUuIM{H0qMYGM=Zn%6x+lh~ zb@;rU>Pn%-jJw#Nv&}}2SuSTHOEkJ)4)d7HeC9M~lzP`4$V)>7z5oImr@N9)Q2RoX{$QjJ6 zkp%?rB?~=wN}HV{kS^8_tk5p24e*r#e_q4b4&2KHxB9^y-~b{7U;#21!tcP|nrlE~ z6F~qr#Vd~7C>qx$%>uyHdyL=9i{sBR+y6OLZHPmA}YpN^Q^jLSm6qqc7q+!WCfADHR zn=4>@u(Vdg=2p8WV#!ul@xyE$hyMs}5JpR&KjLCi;kHc7M`MjgGT>!>8_0nj=z$;D zST=)m;N*CiHXxB#RN_Z;aG@0@aDFCmYEY9G_2hZ2l{KL!a9yTVUuJrnfN-ccW-{Oh z8{h~Iw;F3v1Puj%6DNS>6KBa~e}K8vdl>aMd4^)oMtsC1F}d{_{&P~M5;@w|T`UJj zCIfb60V6U12+-#Ul2G6+?A?IbZ@Bux|j?YVG%Q%VS`j zlvN4FRRDEsn_z!p1{V6~IHd6b5eI+)C~OerVZ~-k88>3eRxpA?9S!3Ke|<10BR4TG z_IlVRW6W1ML7359arZbNRd1=!nCL$I{Lxk>B8e7qaVg)t* zR)ha`gVdsBQpaWdw1cI`h(3sV_SXhuhGyf?0Pes-{+9~1XM4Bjgcb*dbH;n0ScSpI zFvAyeT3Bs~Fdj=sffXo*e{MvEne&CX=#T#hkO3)>RN;os7l)ZfPLXE>W05;$kyL3> z8Y8j+eP{wECx}ypNrf17*b;x$IDd>-f2cPF+lV_Wh!qWR0aM^+msoa9h;{|2jtA&_ zpcs75wjHJjfh2VW0~KSc!d-9JZHYCILrIiHX_QCV5h4hby=a2JfA~SB(G|IaN}u6Q z<)jtkFp(1ph~5xY&4@KwCjWXm=ueBtVAv><+W26<@`oA#4LYEb(La zXm&42OL@a~$TpJ+7b8{O)RgbW zG)cx4s5As+VHPez8k=@`L$F)theoA|PdIppqgRdpbd5jwe~43%3iufVu^9tI00Oyr ziM(l!bSY6$*jxz6amE?{C=Lji)W(JN$ag36lPjl~E{B~LilG^*p^KU3BqZeK|U{=LR9jS=67LxXdpZeLK|M{P~8K9UrfSQTY2wq7W%OY;i~> zVxnnk9;iBBL$C^HI{zMAIf$l7qlajtwPtWR3Y$C{13sFYyD6k+M}WWCi84ur%dwXx zW@3mC2XzOScsB$Ui81}SeA*VBikX4V`KjLuuHh=KGSj87*lyfs6JjbnQv+pzu@&PP zVd{x=f26gpPnn+L>5!wD00bala|)kZCZA(zYk4{a_P3{f>Yslaq-8gt5QUDq7n4%R zj?AHe4YQ;y@TlK0G1itwDKnwY*K)Ert|LpbC2O*%(xIbzt~^&0>YA!hW(}n@R7!># z@rt4|!Xs-TJf!vkSecnaunx7#ub=0BhA3;Pe|e+5+L|J{qkP(@e+sB9*_+4uVTP)# zbk!Vt$pL}VfPG;9cPu8DFX}ie<9A+Kr6-HFX{)wtTQj=|izQg9GjXbt#3NV{vu*(` zLuCTIWdwaIl|wKNfJlDen6pp@m8)R0Li>5o2wOQwjRK3O_F1q^i?G64d%G#9xL2SN ze|w$_A5c#0M9~*r&*&&%d7Oav^sjQPy3@$%bPAq zwVViIo`|R@03A#EmrdGYXEdqUTB#hPe{!%Gc$yl!^=rTPi@z43lwQgd8xprKk-G|D zw^@<5zB^XsQ2(N478WUjG~}sozw;JGM`}M;v*HQ8K=PGz3b1y{gZ1f}2Fs%f`=bln zl1)gc>4bZ9kx}n>s7|UXj>Q{sbb}aL;-o?84tHV3Y!}nW|mS($h*b=$hf37jo z05hurpVTEatWJ}{ZWS9@pX%c!Eu0)Sa4rF%B4s4`{ywnEv%fh@>_T(bN7wwi^IDlw)u z0<+(6#523MyLADz`2skQb!|Wdf0>-gsj!VgunAWn3IlKf>RFM<>qu*(D}K<$zmfw( zl96EPxU@C@pR0L#XGyt!I>MMMmnQ76b!nh=wyaLz!Z(?|A)vA1(uIZDGB>=BIZVjU z49(HJp+BsBL7d1ZLBuhOLNklNyahd?FgA|(nj);5LGYiM+{ri)$`g5NeY?>Ydg zydr*84&#BVu!fpsY+Kmth)lb^YCNoLJhem$$7@Hvo{IvZivwxK-oEs}1 zCMVGFZ;LHoctFb;@&BE;(lqCms2`UjwiRCXh9-T&G3d!DWfmx4hJs8>qWH zsJ*W-4U3%rFWt6-Y&!AEVtT=uI$Us>@rp41q8RZ zI}(d5z`JX}Vs+_GUSLJA2$G@c!OiJc-b7j68+$_!f9Fo>rhe+Ep6d9Ahl@}Si9szy z{pLpP!M41;-#ydeJ(uJS)l>w`z0Mt{xW1;l)y5v*AWPrP&hQQI@OmVf9$J|uvB*mv z;FSJ{Yx#ccAY0y!84DinOzq%lQcL_o9E0Em06-6=zV7VKb*WBoIK3D~3+vV^>#RxH zXxyhNf9}1->YKXGF9(g@ybx`FHpA_!*6%Ao+ZlKo`0!5;^--@t9*yj?P4SG(7LQE- z>6AV#mktfw?(x8FG?(#3cPDdpQ7qAY{5NmEuaP-OD za-Q#W-qd#fgb-`q0smZBzzf|01J`9GN~c{ke{_Fo3 zN6WPS&$iywE#6iyzUziBi}H8|koW zf9;?Th@vko^ZxbSuHe|n;AB7UX5ac&6b8$|3u-?oU>*V?Q2PJ@MBuM{t1}CJZlLD6FEu0$@opR}ZcXDfht|F=Dd* zokg2g?OL{N-M)nzSMJ=l(h}&(0>K53QBg>cNE2AFU=mS$xTr#?EM3Npmn_By8j~Oy z5`UT%5UPU9hu^`y|3(?b!v%yax)Mm^EK3&IYuCOJXz)S$bmdOD(tLvP-&% z!Oex;027k1C}I(gIOCAhY`NtWxW*a+sG}~r>#)-fq9PVyFuak-(~u^ecnS(d_kZA{ z3I#+^;DrmV@RMRc{ss~N2mx#m;J*M7Qm8=hyi@R^1|NhFB#}rm38f2JatWpmZ30oJ zL3{eCP@;}PN-6&qTa53;tFYi@5Ey9usvH7x^wKj~lJIe_zWypRFd`9CELm%>#Wq`Q zx8=55Z@&dMTye)Gw_LaI!A-Xy%YXbWxZ#RBZZqYWvqnxjtNWk<=&Z|byY9a8bG#|a zJI|&O*K6;+r=~)IgGIBtFPTVNSYT2h=J2G_O9iMjzy$(P$cPI9bgK|kY9R|l^W8PuEQ=U8t@$Rp>Fl(Q0KNIm6Pi8y zd{9C_3$9?+|3VXnZz?A^U>pS*hc#n?Gg_eB;*Bx20n0ZQNi1&)Q?WB z@T8V8Yzd~AW|H})5PR|oD1Q@ED9Wf^f96#xp{;@#X=9Ns+vy*lC3EV-61%!==bwi@ zdg-U9zIyAg$DV00a~m_-G}=wGxFpQVY+hpG^k&YxtIKYU_D4i6noqx(wx4I0$>{TC{ zoy}}_JEOpWDJ(!C3!KtBU&UxxUHQt5#zH=_84qe|^NnGuMvUzB(1$++Vi1KmL?RZ^ zh~T;n+PeSey~4OlP4U8vo8%TJz2Pfg`O;e!`L-Ru@kxGys~_PEmp`N^EIzz&!s2?s z0Vl{P8GBg30}3Dm8Gj7WfCAwd0~feJjsYQ3fp~xrHt~WLIOt>;6c4IUqAHiQif|qR zQHX3-J6n}-DJjH4A2dl101N_Xz4{%nge5$&ki~g61QN8OHLW8Z(Uq@+Wh`YmOIp^_ zme5;Hx|YbUCWh~AQH)!ho}<1i&MAxO+gHE16Tg5B?sXqJ7=IZLwJ@tNt_N$>1OU(g zN6#4n8Q-*H3nq0b1zLdt3&hkC{1|{U1QG{0=!oegL?M=~>SY`HV5|mpFr0Y+1}0QO z3hBWD|4kOO4=kVu7rX#U7+HlrGcto$E+9j)&`@lsj9T)h7K^Ik!=kqYX-GvnQj(U` zq$fpbT#}eJjeo8UIKG79WtKy)DoV$gAJE%3tbxoe>dA|KB1ssZIYvX7QE_U#W*cWv z2v-1WMwNbWJ6eT^ii;(5_wEC41cwdlv2hv*0GO;Y-A-n*<@`` zT`e6_FWol2D9-eJbi=7lL#sD$cq0Mn>*>D$H$Q<9?3wAQT~QNPO%7ZWn@Tu_D~M2l z0rdZN08mB7RPP9c1lj6#8PJCY`thrQXhRzuAd*v2cZ2rSP)uS5Ni~>)W_t*V z7UT+0`+wjSg#yS0$Ckjcym|o(Uij4@+~|rkT;T$Ot!VM?@-!Y~)O+94VPbelSppZ> zzz0Tff)%{rv$6EQY=bGAEHhI$MI(Kq9W4RA;fghA@Ny&=|PF6{i&Nm_X$wH@ORBL4U_W;MI?vA-Yo#!UhMH3Jeh;yV{Li zPG|t$WQg~lFetBigUr<>of>JK+qWe9bUodN?qm!Rb!hk3|Skb*0|8f_`$C(HssVISx*h%?_O1TX}PSQOyquwfL3 zL!w$M{k(2=x7*$ChIhPEvpokRwrzx#X@A`2RyPc1QE!Yct)sd4w@3$d(uFIrG>w|# z+V()xJMv29*#JNwy^YiA$_c!o19pxR(wZwi&L6|dGvu;V7|*9RmEaxR1U%QnxC7D9lZE5jhnV&1uy zx!mO;(|3RcxI*eTeuV-E;Q>X5Hh z7=pihfh%x5*gHCCGrfgK1PxFcaw{x2a~7&wrNk1j+%vutM8OnP!4+h|DgnE5la{gj zB}1DjMC-TdBLKE@yZ2cpfQh@-nmgD+m=n7@YjU_18-zkQg95+-^}_+{5&|JWvIRuF zjq|Mmh$_Wnya3>a`%@s}%74EF(j*K-f1FG$-38J#JqiVP{0)S*Vg9Uu2m1%=i*nc%$i-A-y1VOrj zj3YISdx39qy#lHjZfLyq$|Dxwzhu;;kz)XY;y<4AztJPTHDtpmJij+g1UamZ=Xj3j zphF1MLkbMWC|n3O*Z>avhHLOZuvwNvJggD4x=EDBd8EgBv_}-QEK4K|8B72ZY>czB zLA5(3M%zJUg0yB5Du48dCcC>dyknz5Km#*)#R4b*dNKs_*shu25F%&;A;5vZ+kg$o zfsmZBQZs@%sw0Z27%mKfE(8Jtq`a7nNdrtnHH5Z547vrp#y5;Z4Zxy$|7niqsF!^3 zMm&tbaNIba6vV+gB@pZ{7?hR(tCoAD%Br-=tHeqJTPb}slYijA1$;9!eWRiqq&`p- z#SbI6QcTEGOgM%-sy2dwJ;=$5q@PrH34_rIGf;z>hyg)*!yGVyIkdx(gg_c&10zVh zI(j{o41h?H0&aNBmdp=s@G{7Rw#)RY1k6dD+{HHpi*oQuebK4rAdAu@3k9eb_0a%4 zgun;vNu06;Q^i3ejN2mlJw}~mU3#NJ@OB^h%wnHr* zJjfq3MY^jrB5X)r001~5AS$HGO&Ay=kcsrzgP+&~8gPY~Fa#VBg$@6_mk*%B92m(6 z#5lx6hB*qxJ|wyYP|2d39HQgTpld_aJ3ow@u{Z=xn}5oOdKtHhDvNp9#I*CqIt$pb z&Z*!67?8+7k^yquPE~PMwOn%kC{JHin{?*keDfB~@DQ6W$WihM$m|450uESw<46*NeO zSEzvVoTz-!DWG(RdVxN>sl#$0%)*R7_>@w?>wm2`^h`MXQqT-debF$WOi(wO&3`bT zDY}Meh|LMjFE@2c|Ef9-z0+h>)@5bZW~B@fwM_u?ND@1k->8 z(|;Tg*ww5<_R+904c0PU(0@cz(~O&4)jg+tN9BoAXT{iz)!2=-(>xWlm)b0el?y)| zCbB#x(`rtGgge%X&P27la_tHsm``L#Jk&$ISmaK-Y}ZSDSEv7&0W^4pAee&tTGEA8 zP|sqHXh1tT$%iJjj(ouzsKqJK%&B@&T7O|ZT9I`NHtT%;6YN1f|CE*e_;S+u(*!@^1YCak)O<}6vD;li^;3?-^ zS@CGug=`NGIE30eyes@IsM@&sL5bF(JI3Xo|9J&NU<02V&4`5(uHE1%)_+y(mEzG= zi!1h8ZP`7tEngG{<1iNEF|MAr9p5vFu(*8_Vd})tvLfj4w-?o0aOGS7jaLCC;2JB* z!oz{%eZnMT*9!11Oy!vd#yeh+xC%IjrLkPbE-RwmI`NnX-$ zj=pggXK^NFP2S{i*06KdSI~;STOHvn5#K~C5_NOsd&cK{)@Le7K7Y4GW8#co`IXz$ zq!YU_XsEpow47rRo6&^Jod8;Z-6G&oi$KI5ybk|F)J>cBwjRo_!YTp(g60o;O_* zP8sAZHU6x8;J14@=zlx0;a$ez-u2}a=;0vn9AciaJruPK*po!)6OTaLDQH&=IE0Yq zpKIa(O^DzZ@JR{HRVI;zYajqROjwxK>*tt`ZC%fV9aFoGzP?V!Qg)Jg&d}5~>cwX4 z#&>fYwB0;Y>8nHFoLsw3{nRXm4HUKk3~uDvBWu<~G>HQGdID7of-i*Z_zqhlogo z3m`m>zyU}w>u4^DX&z~Z(*zGtgL7ar9BE|3Mvb~|06Yu}_LM_9oDMsj!#QM6f3-s} z)qn%gBI)qSCymgV9&DZdhIpP5pUxrNeC+Wi@AChC>|ElWqy|}P)x;O3o6LUc1NeXg zuoIP~>O+04gMT@ZWWWI3il70w02`a57svq)obPgYZNh6pc(MQoh=Cx$0QSJ`+7dq{ zcm*8Dfo;wa?|u#9E{DJaiw)>43cl_fpy&;7Zbx|1QG3mrYEK9(aH#z^=%5pw;_xRy zY&+9$_4wUcgFno5fDb4K2aMAD!jUAfcU3QkbpX>j#1UVYhG&q5IoA?Qr!#5^ z>V$Xuw}*QUJ)1xabs`UF`89P7yO-Ncz`n102w10tiJ!4@?e}lj0tN01rGp+`zr5Lul9l*924Q zRsgfN{_IVAfj{GVwzIhR{_h9>do*LR|4n0uPgD4Q?t6!ZCkK24xo`gEKDQDI(SNQ0 zBNKu)7@#ZIfClJwfFJ-(#|s=n+O(O{#z6rbE7)8RVPQ&zLo)zy@q%RrnnE6w%s4Y3 zhlURgzFA9ojhF&ivi`w@DNDgMYXnl_%$d@gHJ;aA#*}r9fQb*^2oU)2!P?QAJ)c@z z2{h(Ep+pnCC_rSvnKoAvX-Hr#L4Q&W&@^ah(BMP4L>DfwVN;MzxdVjILNifr$OXQM zHfSJ_0G~8z&s-v=s(3Nu#*QCDj!acn5?xs!xZp7=3JDTvK7$5LB8m?eRR|H2ta>%; z)~;W}jxBpO?b^0)M37Pp*79^XAT(8}G~rY5f^mmu!04fY~sKa zQ^WuQ2tia(ff^XlK*I=!q%guBu2gUa5f7a4fDkW~BUlm|Tp$V#1-3ziiftHDzzb~f zw}JyfSOh>AUI38HD{2&SOn)*$3{lQ}CLxu;H43aZm3r?rfRvL2thLsYD5VyZH5v?2 z5`2!VrBswqI%&;RlMSUoB3E$8RU0@Y(twdYeSnsi8tes^CGln5HW_7DclYnKIX~tc5|DlZ*3ofTAu&Ab+a@whv9MG=d5K|=~WIp<(SiKfBpd|;3kk5 zh@gTDR)7J75>j}`9%f`1#2E`bP{0KtCeeU7(4Ls$89@-S&=orHr^AeeT;v5kFf5QD zkFLD1fxrTnBV?0CCV#M=OvG68feBhhd2BiBl=HAjCW#pnF$9z|0AR=F@NhXfl(T`5 z2VC61Pm8Ii00CHPb%usQT=0RB?uD6DTLZ|2!xas|*z6+axb;FoMvDSg17i^*O`?jL z+UTR1ZPwYXpN&@9X$rsEwb%b&gB`ZmW0PIB*=M7jw%Tj6O@G^U+0}Y=8sCLCUU}!~ zrXG7W+gAq=c!XY%6;mQIFXztYz&=Ar9 zG>5b6Kq_0o+lCN9+e_m`EGQvG8<0Q(f-7zGl?Y!$>|Rcjgeojl0|Mu8)&UReWe#70 zZjhIp*Jw<@27h@{T=F78ZlHTyLFQFo16)tm9s%ZDAp{XJx535%1YFbpk-#coQ(Jf9 zfI|U7xcHX-Z@uty0S#Ti9BJ{!V4Rj1RY~nKRFl-zvUVv#WU6fvoFD}&Xu%6&FoPQ0 zAO}0>!BY`qR&kSCrFL~U|6lzoSU4+|v698C4VYsQ{eR)he*z>eYCY~+4bm3ny0wQ3 znZgxjSitH&cK}-K=UD;T#1x1S1g;Q42rCGny(;oLEt~-d7g)i9uE0Cpy+tk%sf$_& z&=U1<3?f4)0)7O?tVHyT4I)^FIW}Md0sw^=4H$wDWFU&eCE|J;xL(h$5I|^{BQMsd zl46!*0)I9LfkW`ZL5QLv6_>DtC_^yO{SG38`mJCEFAyag?1vB`Y(kC#T$%z5=#o`Y zW@?eLS_4UA8q|C+m%7{~FMH|BUjj3j!Wq3JGhwfGqc>o=$8T|p)3NGP zFlH@c5pL06v@FoLYC-=FTa%*!g;G$VZ-19V=POYSy!&HLYsB z;M-`$Rqy1AnRs*NdRVeT`2?!qW`78%2v)$iVau;CVFJUxZ1D+9Z0nti>R16E+B+61Y)xQ5&Q-61Wdzsi-+%uC zIKToPFo6qf;IM`enfX=bXzIqRx#kU%&}0g+s7W6e4ibzd0#sm6T*Tvt$NC>Iym$}$lI3jmj9O&bIZXh8|EGs6QMV%ku$VE}*XUr`HSf#bfjsublA z5jJt;0KTxi57__Q8JuhZ9Ebvs|9>C`MHdi&Dq8@#_rc2r3NYgZIAB0JFh>Jss+gKW z@(gD977x;E z;7emV)0*Bir#tQGPrFTolE#&TPuQDhwx=f2w6HbznqeB2D3tXhkbx2s;(y2)HbRF$ z>>-jd#16IL0E<9$zkdZF5Dt!f+=#%~0U$8N5bcS|R8(LD9|3>>_HYIV5Qx|>;+b4p z`hX2#dlM@tf>_F7W-|n03fR_SiSE?W8Hd0XMELL&3ZQ}140i!iFhwfX%TNt0S_86O zKnOxm0V1rIy4HR3HUF|31T%zS1PgySsYBV9=Z%r~3T-$;J;in2CsqJnD%!3YOyS;7 zisH3`IpeCbxoQhJh2^}D12t<&A6yOzuRIF*mNPRBEVGsgS1OWu`S_Hlu@B)Gt z9t5da0W?gamU6t{3?Xnl+3AG5>Q=D-h(%k2<@JA+tjFr+TVUm+B(8omb#gz zK04A@omZ08Q3Nyu)F|thRE0Fr>ezAxi7_C=&fzbTZTL2zQ&ILQCL0k5(b@$c4dj@P z$(oFqaUNWl`oKng(KCWt_rrC!59(gGv{42&QVXi?{_#KI6oN2y)O1%V+5 zK@+{p=F}6jaorGsKpR*9LmiBxp^D4l7YWH61aV&&is2ZNVHuj?8G2BH0iE+v%Fx-3 zE+oP9;RdRu8vg+th0=drlfdW>4c$pWoJdl!NQ#8myD$ibEI`O@kKssSS1vtO~XuuWB;Ol9N z*TsuMAjBD%!sx-k20|VYumK+F(d7Z*2+)8jH~^cyk2RQ^8Nh!)Cz9Y4=)eIaKB<{I*s0akgfYe6EZxLp&+?SW(QJZ22!R8n z*ZFYdil|Qio@9ST*qsk9hGGRgqC?nFfly+^jer@9zzD#=3~(XvRh>Et({1jk�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Ù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 z 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

P5# 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 OWmF$7842eEsfmQd*Ty$1 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

JftFF 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

mr{TYh(2&gX$D$b{qe%XUTq7Hd|2df^ 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

ZDK#r?;s9YnlMoKmbH_044wpifRsw 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
_tig++azY)iN^v69pS7a;@L%U^S!Xoq>~d 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 Kl%ngh~~j(ILNd^*MUO?Cp+n2_v-oK;2i38 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%0ADM5meCkB7upxgM2J#1pV-F0-rhi5haAbr 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%0DF%b%%M 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%0A1hv z*x>=~{-2Gy!`0@@3WDl}kVlk#A#+OvhOd2mU;9%uK38ebh~U{T073cyKYfNORTBZ# zW#dWP_Aj==Cf3+FLmO4m`rQOhG>}n06<~)WeRpSN(<IsCy)hAX;<pIu!0GH-%Wa82 zY_od}9hNe7*b|kToU+V)Adwd!$GByRefs(fGgMNWpvyPPGjhz6!paLZyFKt`_50B3 zkGWOKjitilTXHnry0d`Pn6H%{MOD`(Q{x^}&)GXH1C~2t?|gW$JQHC2PIZM5LI2{( zoTc{SzlfO=Kc_dSMDqF-iYfKhmqye&B0W~=0^`ypJhQ#w4rP{v4!)(%2=l);6zPDP z*#K?9lm=Cfl~o%4HCnkfy1+prS+(jP^dQ$lgdq+x^K?}8+t|wO`oV>H$f~7S|I`x` zN>lrpns3ilSKeu@07j=^Q&2Vx;5uTaCC-c`3J7X)8Va-I>9X6|bW&QeD;WIr@QLCF z^2r}4=Z}w>292EqIFtm?5a-d%ci0D_h(>4n+6|@l4dr3Cvpr`SsgJXT1=L7h7E{2< z%gO;dYxe0u+zYkZA+<WEIr*}0GuH<|Z8K2GeVkFT*<b6Ke;(`nhj(uWkGA>)mkz82 zv@mWDK8?B&UFgl>o?qN4HpnXG$>Y&oCa;;GxBdK$kCWXH6{0lL8yLoI7cBp_>p2a> z{4Eq0PXC8hs>Mw-(=ld6Z~U(wvPbMbhyGO2l=T)9R|SrA7wD`HQ~TIWqL7r8HOK4h zn*1h_|J?nW!8EySh1+a8^S<Ruk>vxivAsX8k+jZI#jo-r&=usLyH<$T+)DJp&MDFM zcWa%?WVh3ccQb0e>2$Z<ow0Nb!gx!mEI)+1CY80Xvk5XBU-NhHMY#KN;ayzbX3$}R zVLYIrU)fmKi`T{}`6U^wC6VqL1E|<`mnm|hVV=(uap-o$AXXONsSJDRpgW#yCD>Sh zdhx~o$r$;j$FAy!yNrFA+xt!D`^~zxkzyY`+Hco}K{PFJUKK7r?O2y*FFoIUap8_r zzE!L%4tJ%3uLQw%H1t!|gaK`n$~>lCNQ{onq)&w|^hr}@vQup!Z}HH;O6=jAl_!=i zCo4HnXGt45H9oh_8qz1s5Jo}f7<`&yweNt%QY|6T)?*hmx}OGfY$-lisy$fdG^}_z zf?z}HF5##pvyA_GW7{Lg+2SoMOzxbY4JK;&T-@KR!R+<?^Q1BZHA^On)CUr3_x{ML z^ZocXpq6mMEw4EDIg7=aTq9CO&h<I;iEfm`p`k?AaF0nH-AGNey(b}3BdPy0>1-`o zL(AC5iuR;p^Qzd5rr>}*K3+`w0o3aVcJD}=-D2iX>QfITEZqgn*u>Afc1^QMHZS$# z#FQ9k#rFW4y};q`oHKsG^U11`!aPw4OlbPd>V_YtJ4r)(4TzsoyFO1DKcNKy><U2~ z7y5BIJz}2eN?UfQ&p$kPS7%-{m)+3L@o8$iK``d}Sx$(A-Ro{>OKouCT>NUugQdN# zF%tO`8NCw}_M4Ifm&Mcj3!wdjF+;zH=ia%x-(uf<^_TM5TK#(Q*D=U6L;#&6bJKZ@ zO#q_l+p70S-|eyKrAS@lPW4HC^4q-E>;ocggRIoPocFeRSntC<_ot{PJ6;MfFaA^; z-Lra2_Cl~!jTsU{1c`mvl5H9TsVCJG*oRo3IPIJ{V}D0z3<T(B)9Fej1RMFi$?+UJ z2wu0j>sM^inKNbf$EC94d-1<*9s-0f3ab2AVZ)rBdF0T1?C#_CU#6=e25I4(-yF;d zuG~xm<KkM%)}h!OkLlhZG08K*pa_wj-_}8AF9exqJrhJ1Lbu+@2?TGbgxWg_gr)yG zOG~>*FTq|+YHknCdDniz-K{tw+C*|1e|wuVt*U1Y3^>%E|IVY37;KsvSgr8>Dw5@c zatQT%g!ifGwomxO(}rvK1XQrlgpeR)v~_JXU+wJhU*MP8Vbj8S5H$`6Km=GdhuR28 zHsUWEm@aI8gPgs26f$`NJp#aYt<dvl83I?W^4P1_-+1+S=}^FLp~M5~(o(mD;I%*t zPm*W^cFN@Yf{(zA`rC6-g+x+(DvKn9(zS3v{ZEEW;`^Nc%H~aMP`@jN|I@z}^yV}g zU*~_nT_yh9E`}+h$Cos2B-5t(S$SYYqXILZXg!}@f5Uq+@DPanM~o=OUg*N6o&HK% z?+UxJ^LO?4-?Proen+d>k<Xc^<b4(|l<Kau#1GlU_jJ_u)OI{~V5ff6apD~jrK*2G zhJS##kW32y5%u@{*F7O)Pvi81)>Wie(4%}Ll5lo255)Z-Pd@a2R1x$hB{adL%tR~> z)0gOc3kIWP{K1o(0stCurl!Mr2Wc~@p$ekz2`QY6qCIA~@I(+zu^N?@sDdSN2th~L z>%_xvH2=O#E@*x7d6>Y53N<W<QaD_2wo3OQw@HaZJD3;yB2vuSUOI!O+w*`82)ZGW zvPruqr3MXF(^w)E623wrNKxLw7%8zkGx$d`w%RwkDW&j6I~SJ|ev*nh;|v-wBpq2R zQg5E*B1_4dMpdJqFr1XeB2#!Xr=(1b<gzQAUhhh|TqN@h%f6%S_r$HfW2;bKP{wr8 z@Qmh;<zjykHL@6iAblW68z;cF&0^;wxjk5Ve)vtMg$uBiND?3yu<Q?1=lxT`Vf>55 z`?+ymrgv3dF~+ABYMzip-Cz!cHM|^Vr5y7HCZ&p=n&+~SaD1*rcPc>4;TFL>DVZXM zG_zVp7+$k9jtFfFJyG=k+x7P`CdSgQ7^-uzTD11nd3xNBs`HJcm#PbHYqHc7T3XoG z6zNSvm>fgxwFo4)N)amv)$wXHW&u%*lTYJoUj*i;GA_9nITb&Oe*zRtPSECEMEcUV z>khzM#&o{~bnG$eGT&1C#TML0=~W(b%}yUWO#W#P$`L+ADYXKab4qv;`8E3YlPF1S zS;>UPk5@Ytz@s4ng0_Wd3mU22#+3|?`bWZwgVeg>z2k&CFwl6lU1W+UJhL)Ya&U1? z<CgSHr6x$$y(;rfZFuV2uT8t$+2m&$Zh8x9+TXz<eCzoSrDwxydQLt%G{5`3{<yjK z>iA3Z`)d$;3&FZ`YrZ%v`nd)boBJhJ!#I$%7T_|^Y-9U4yH7~Kqu8aE#p_+F+;Spi zt&NLc^N^fFz}qbtfGIOES@YRLTHErF&w}O&G!wETEwvQ#J9_{LW^+K~myoxFd%*Oa z48ZmhW`>la?Q-?Sp$W%#?RHptUDGv)(T<qFEi#I19cyqgd_6P1$n^$kBf^bsm(Xo{ z`PR!{U=SRmeslm5&isPt4Bd!wy$@}XN`|SHk!}(mYH@aM7FarWZk4!IbZ$Qmi?``> z7(X)s-x8z<r;=n5WiIn>@_FT&tqObO&bF}kEB@W#Qe7*qUCw(vRXCx3LUQ7VV0E6M zQUd?3<FEdjj4)Q!x=G5v&m;7(1zq8A6ZHTs4T~4QD=ysFH}AL8JrPV{A#V&?W*HF= zZcHLCT{rw&`@?0JlPepcnJP)pCzW0|dqdoY`H3ZK^EI%&w8(!8a^y;+6-5J2&&6!p zM!7dKXF*!TOh)(`nLp78+~`t!{U}^KMc9#x++nw$sb4Zxx}1x0>#P&oVfW1FuC#{p zsVm5j0Ci0gqIm55yEc0&$CRU+ZWMuPRev-on{4qYAo=a%Rr;Ui{TermJY2daJpn$= z24E`=O8`2eV|>eVPMU0S<`Fx}Ttpb6nAmpGC>*!ZU3O7BPx4>+rgp5^EOH93CiEi+ zGN!K!NAW5!62$VkxUuZy`r2<#=f)jklZXtXr5(46XW_Q>m~Yc901930B#AqTE6GQR z<b@kx2*4HL=RM)DE?v^~l}{peZ{jZKwdhkzKuHgTAOD7z^<!`r%BrMxo@+QgIDe&F z!L#lm&>KA{Jas6_TQ3B<{*amJTKKDdbcja*m^~!}qFT&I!rpUUdomph{4l>OROKX~ z{3U}YYEY))P=`|6n(fy7Xo+kxFK=MLYep@;J+oACZ9uUj=+fr%%Y)$7>_^LJMFnAg zxgJa*BWmkgN8Y$qyG62AIv+5ez8TYxs+E2sWa8)h>G3+M&S%WRQM05)QdSR4R+@p} z)74(+d@dDYh^>+h7!jFK$kQ-uLyVKXkq$}a@{}RZQ4E*|oBVL0J3M`esGWhmuCRt{ z5`e0YKD~Zt{P02GSFd~32!PW3tj|go?|<`JGw(BRtH%6zf!V+i44jRsma4pUm`e?M zNP&r`lU9nx!6idZ?d;ba9GWaVcDMt_Tph~6FNQF*Cid17v$_T+F+Ydz%M1N-H!{nT zJ}Migk7A<rN0(VL_O^r7!=`SAJ=+Irbd3R*&)u2fg+Ci(>WklrzOb)m35g*lYfNIO zy;^Xde@<R7BeFD*ND$3Dnd;L3vPVz2%Occ_gliJKVxt4nqseH^((-S&Bu`1qu?rhO za_YJGq_KH!GXD|azNd;?c3(+o2WnvjrmtgwK9K(+-;M;5^syK5iE+q(p-xg5<mQyh zF!EogJ~?HrWaDs-sRc$cM7T0!d0OPzO)X2Aqs>(xgqDa5eRE>y>Y3dS>R1L-Iogtr z1rM<#V+2$Z_<Jm$T$>@rv%u#5;b8I!V2M266YT92LwK-%!biZ)ZJ^sAEVri_`-OrV zpl6lv!r%Y0Jz~~GH@H>A>1f?q6Bo28IRj@~Awf;FOlKAbMU$`9D0C@&j=31juRzs^ z1ne2PDSfi;T9d7kVq*L~({^hy0F(aT<hTC7=km_na&>rtqy4~!NvKyqBFRdKDU*UA z5u1`<Lva77)+qzcmrglH2(n`Epa4Q2{7s`h9r{bFqNGMil3ZI=M)XrJIN_Ta?>Ean z_!M)7xvoMXjqJm2E;7d-TKlEr^!D@vv045nr<3LravkD|JuoToCrgHVLQ*t`T>4tV zeJY<m&9a-mti5JCJWA72S*LxfFr;{&5)0aNOH<T`gxxTBs*0EE>9x*itWA_{nB*TT z^RuMHIa&+1ikg3%T5l=>B)KabB}DFjxc7jsa!XDg%40Ub!cL$S+ab1=@U1x2zmvpM zidB!+6HCV^IJ>9KxwBuoaopX^ZT`@?l3fG8-1pxJTnkt&4_}Rz{jyU6DEoG&4BK5i zS*X>8Se~Kde<qNYn?5ccSR9HK8X^z67~oO+m3g;^T=Bri?YPB@YQjRs<iMf2wyaD* z;LtKmuWa-9@G&~RY4Sc#zQ$LT9sMl-7Oal{{DrB9w|;_1@jE6pnG2(?g})w8d+*&) z5NEx-6NEY`uPa`>7_DBNRyz6ad5&dpkpwgmi}`JD|BUfFJtzNX0hT;`cI#aY2H7ko z^;0~!r*LDB4Aui<&3$;UFYDLwQ}w^!gRZYO)b&+{Dye?vmuy9`XQz~B=apOdtOhGu z(`95^oh^>d++kR`!;I0Gq)4Ro?mMmF_=x#DP5L<Dg8c_gCW)X%KsA9A0$j&7T7BHB zDESO^iUTL#A9D(4nGsDpNhX7i;i?jf-y&{3%42y8a6wqyTDJby<8=4rbj5iS_a)?M zuSQvM`Zts8yDJO@yC~d8p_P(dwhJ2Pf6;49i7w2UYs{-pH(riWX*?Nm0&kram(gQ_ zr5JMFl*tX1U58FB?=F>1-iJtFDH2KaHDFB@(-F2Ly__?BspE@fw0MosYy|a7qWnw> zzH?xO1NO7>ZeR!_%hV@`dG4L(bF1DM!NjW7sH)NwgutAG!=4WJ*T)_!DM>o(zcpO` z{M9b5rXp}<53%d=HrOE|xL81Ll4Ki_v~E%j^Zyv=SR*r?;~a~%DS)n6=P?e9<yPsq z81mtpa&V6GB;|)H3J?I_cdN;n$~P^trNZ;5d@&Bs#h4k;HVJRgV9U-W^R1MJlx42D z?QYIIWug02c~_5%?i&O9Y;vLC{}o)-f-HTCEi0kr3owF~$1j%O5x02bpMHhXh{1;F zhoMp-W7jJyZX5L3Qu$bSgR)J7DtANYX-U2fDY1>xMlP8*Tqvi>$Aq<p5YEGDP-sNK z!;FfsEf@JzAb<cU*rHU7uUZ{N1KU<x?sNL$Fv`oz6Ty8HJ)m_!1>>=+@u`FD`i9y^ zsH@$&I;c7(WZpiW_D+MxX$!ZW598sUvug)Nf7*$jJ4I~z3HH$uo31A>+4If2AWsb0 zHiowL-<(a|>=4x!v{pgWczDr#mU+089c05}<-{|gGdsaTCVvQH0-&W!fvZS9s@^;y zX+EV$qIdc5hm2MK4mWw%5?1DZ=n*stxcpm|YGrE0_K-)tA4B0e@6cPL7hx6BRTJFB zaecVO>Dorbsy5gKrarwZK14syxU%Ho;_4OYyAv7eb?-QNV{e8;bj`>YZG2q3)#-vV zEeJMud-0C-_V}HjDj2iF)F~DZck|rY&AK~VM4v+vE;T;<p!3VM;fXj1lVE}f5g@vf zBD%tVaprL``$RAD4*sQqUF5gJ15VF8)3ng~)SPJ->|{P(RUlb+M?wv1en01;vi@Gz zZq^NKbX@S?!Bdd7mh0s=*wKwQ=c|mSrwJ=EcHCv$etXBo%~K6C8O;xv;q);_NVAv6 z=krhnV?Mm}wCdWX;57_7N+hu&F!%#{LrO)@Yckh8A_7TM$nFGnA=NYM)7yP`S3R%w zkGDjzt-Cg*K3UVd6~{hLFZZ72Ge>DU2bzpfztegC(lkc5*2L5^miGBhh-KVAUIr*1 zU=r<pzQZ8Md-Q<T$63Sj&>iP0ltA@C?+=U#4}|}K_WoxtaqeOAXZ_JWzvC`n%J#;~ z_5GKTH4zo{6`=iQkY5Yg_ZBtwI(sd(bgI&1>@r{zAf~!K`n>KzfHP=+(ZlqSoD!4# zG+_EU1H^hn<&|xn1)`{`w&-%KzPC1k@gW_Ogo*;Fnp6K`b?=_VPUZCeyY=tyn(D)8 z{oY@Ge-H8}bTLXd*(FO+umk}1XM|%uR-;xn+qRj#6}Bu5eZ$O!10lD`*iD%;X0L0k zu+&E;Puz?8kzEz_t<U^Sx2otr<V6!$i0E!fJGC}?Cf`ln@%>Cg!RdYfY1$&f<&O`b zfEls?O0JDM7XP~R<pB!fL&JhL3w}BKXL+vt)_g+4F@Rd`a`Z9BteF`kL$j!1qp0G? zI4_w#{gQ3XeuM8?Z-)Dnl1|0;-pu#`_Up%hm1VIlD=%qZfLUJNIv`K9lysoi<r$UF zPKxl*a%J4Q%TW|y`c1;y82@!+J<7~{cMsT@spuHqZ#>^J*s+Aw5jYt?cGY+HV&!13 zDsaEya6iy=c3tpWYcecqz)Vc6P24wkm}^|sdQ|`5%|E+#7&U7$|7MJ#<140XEF`0! zw&od0W`JLQ!1E^mV6#lFmcF)^0ed;T-+h0chX(zQ2`Xgvi^|zSu&>lV@v4#&4W?;2 zj317jciFWUJzCV2F7MmOH2<diArxmHK`h0(i(BO!ggy6rhBl-Y1nvrdHOk$Khz|lQ zAAz-kAr3khnWj1U5@Cfq{h430vB2k_l=css%76N9k53Zjn#gIpicYnk)b;{$#F~98 z`~ZG?N2OvBKA@YA+Hh&Rcj<Yv;Sn`B1VR1^d{U?vY0!_@4=u&rg@|8L9ikY;4+*U6 z{XgSk2vFVmzoBH(P5}Lk{1eP@e4NQxXaSCs`#F_lL<oQhhvtDfe?7w<T@wfg?4Mp` zf}kAVq&TU6ah`<Sx{})L2<-P~WaAUHrOG>qJi6R=e{&uP{wH1&gNuw7`B$}2!cxwB z|0NAvqe%g6pCa6f|4vc&>lY^R23fW4{}klL3;s<$IyS`H<Rdz9Ts99@qpc9ZR^#W6 zS=S-r6UX9LN4LmNB<ZkWQgj9vnyapfpG%{_RTX71YCk?PmJD(RR`VZL2YQl~_H}&? zVpSyh{7PfC@EHYeoNddC?Q{ynyRgkzKTdnZ$N{XO2PDBbsjplmKV|jVB}F+uq`-`* zUxlH;r|7E_b)JDz1h}yxBZ>;3ahF88QB$Iae$WxDwNs#Rb%F)N0j|~9!t`QK^^(FJ z*c%*?-x=12`dYQAQ0Rlu;7`KRZ*&jn6p!IqL@rS@o3}9E)nu}DQ#~?iglr1XGaCu% zXMt!ej|MMQ5tekvA?#XgX+A_!XQ$B9qK=^<sWyu65u30G+t@SPt1v3Z0d@4GS`Y!? zeP*i;koE>($%@WM%4MbFZk#k|2ipk!jR@!OXU@Nm^(Te`il$>+ByE+XQ18P%I2W#B zEdMl7{FP?qBQeqc?=?+ZGK?MF%a=;XGcE1GAt0L2QcXZu;Hg|hVuhBKyxrGMtLnWh z2WH(;-kjnDaLH_Bz?buY9e_f1QefC4SP$5KA_a!!1<jV)T;E&>{Ls#0%o*&E1S>zA zJva~fd9DzLRy`8A>vk{F@1FiQ1QlOxtLJ+7CQkn7%gta%q9?^O5iX}D9WXP@S-9}G z_NLKAIg(=l(l(C&{@ah5z|aQ#s}R)HB@+=r6N(eMTYV0C9ogHV6ILLx9tXI&C)rXV z1^ZJ5*rNj?oH1w@j~GM^qCO4%6_fJ5fYG}vBG4%t1JWyJk=++r15v*t<x6^yft9GR zTv8Xu)dSrVlD87oiL0)kSOffDBS!DdwDd7}r_n^Q1LLAncJ6^tXvOq?EXjrU`!Gwt zekpoF*x-*zO_!|O8KRB@g&P2+4Ro>=_P;XAj@0J1Ylp=l^0tJxU+<-S_~?MZk%mXY zeFz2L<+Dbj@Z^{HiH;!_u}cqELwQ`L#>PRF{8fWIxK-Zd84%Vu!7Mexl2Ta8H2_25 zo(iC8*<oCtQ=aa03c@v@9lFYyt>IE{rWAmz@IJ#wgtMmhQX|qwSTr|1PKXqnV8n}V zNxN*h`VRxYdS#TI>ek_49Niqo##Y}Muddbd$>LEEfq^(h9tS8?A23@}s!WRQ$Wq21 z-nwS_WI%on7!7nexp2{Xxk%WNl{shV2Fa^avvrox;4hMmI$>xn8hQ=)wp;b`1Xx=F zUf)Ccp18_wfb1j=(Zb#Pmj!zsuUrTjCUL}FBg#L5c{Q&zn7Kq#MSpeMc}6<%YJkEs z?(TLe!V^TIa@(1%WCAl_?teg|INfGN{KKp1leiCHkx`DxO0acb2J4Vyz=KZZyyL?d z9--W5z`;`Yzg}GI7y%I%Qz(y9bOccOOVdP6Z1DF3RXS5Q05mfI?28~FpDz^rf*MqQ z_Npa^i5n9`CzmXLD&5}^lq0GTyJ%X>yPRGE*~}+s=>Xv>y^rt)(Uwk6h)ZcUr78lm zsSrT)XsR1#Y;5-jzkl0dz4usSqEbl>E!z!cVlF)^ay6A?M`9V2|3a64)+pSDu07~_ zcpoeZqB8DfNhhbk>i2<naRoc~XiEpK`Ahq`lIc!8J8eS}zSOn)z88L<`(NRE!lpW7 zhc<*l1;Di_4=fyDD5PC&)A+%UlduWr7W|iiihukef7h{F=pEolt8@C^zdxU_f1kR~ z7N2@PJFO9<LL>AsVnARLB`dp`eikFjdwY_BhHE{MibKQ(Yj;z?(-;x5bR7f$x%J1$ zd_QB%43dT`wS+A2za(W+UXVbuduF0_MjtV1j?<V)T4^N0wzV0&>2|Z9Be*c42{h{z zY?P$w{1?GoqZRa=o|6Co&WM>_P$77C)~!F8M^6$ciE`KPWM@^2yYM_<m2zzbT+^wP z2D=QTc>IUun}6HfIPj25?_bHH#P!Dee5gQsBxaPHOLI9nFl;-!uwIlAg>1lUP<_Cw z-|aMO>XU`yJcKTC_0tOx7S3@5r8W$>krYO|C|o_1NIpV}y2y2x?fsG?<+afJB=+9V zZ+&S@>J@R(Cp)usw(l$M$Nv7gHd3PgH2(h8?_WFEh4)XfH&iqrg&6@z3Xzl=Z|WRo zO*)q5N~26=CZ?2!UJxEbdZYxqk{LsHE7SQKc5lo@`=bd$76vKldHM~+>Ox6OMk<YS zrVl@LTX4+-P}AsMCMZs60A6Wh1b7ZgUWA~y6D7gIKs#Jz18=G&lGMA_Y~uw>p;=<1 zBsNM>M6CU58J?tb5$~78etmd}!v)d)Ay@thu=JPm>m8H1-TQ~kUwQmTVVE?ec{c3B z@V1Jm6cj!~DCb(lxYdDfG~_VG%ixq;VKza%ekN{{*X)$=BazpBk>3yA5>rJ+&AGFD z(Me34cK8&obeYO>N;NwZpwAysvqhH-tl0dbTb_x{lE<Tf`6aK)2R6$-&tJ|j`*kau zNkLEk(^aC3d~oy$7{!MiNK#P2ait;i)48)GKaPTOR6qv2`No<CHOvkT=KN)o9nVK@ z`8lD}xf-$~Xv`)1U7TmijA1ZfF}#w}yPl^ZfdQ=m5q&j!3?h$d5o96PM)+i5S@~|P zoGd&rvoI6Nqr{U|^=qIdt~AKI_K}I)!ek#!*;yCAGQkXbxkKIfYl4+BKBsJ|=e&#G zd@$Xdz-sR^e>N*J4cEY_RWBCSQ==B~<)OyNt{Y<Ru=rc6ClFJGb=E~9lrpuec9xRN zj!3~W&eD(ogy|;-RW*_`e!-4#J#;)C6Kei?JR$YL@nlNz=hv{Y@4Vp}TWY}wO@lC2 z0z_U`Tc0aJ)n8sa%AkCKhsz?vWhgH(*!*t1*XeIv6o@f#1jH#A0OT>&S4aSBBWk$K z#h2X+<Pw9S!i*3*+yk(UC4ZjWdFj|h?p~g-FmoYuauO-R#Xhyf4ZBMC_tdBTKVKc7 z(-9lp?lJOe>H4;3IEx<Dxn}mL=stKo@exg`Bo*jFjAXqkt1OkkPuY0LmS|CUmp&Jt z;BNwE+MS}6)`54h<ao!i=-+LUVYbI-%J;r<c)?0Y1(j|n+!9P94RB2!;=lu-%!GC3 zosJJ;c^M|*>vWaOSREnLyiDu1b%s|LPi6upSXVCRo8)jEq#D5-l-^EV^JiT5G6bFZ z8f^8WN+g(nP4G$nw_rRO4BKFMWn&SX<7=Y@@D@$v=Eg1b)Dn0FoD9h{B}q2&&2mg; zkWfcfa;A@OaU5Kvv4%wSt>PmbllzQG;J!}yOfgff5RFtJ*4}J66@luBBNhg6b9`Pb z?4weH`CLOrfq&iQCb%XglA;v1<f-zRdQbsa=|(zuMr9Ef+=bc*lTfRWQeq*b%gQ;K z9q8N90HzQiC5h@|NyV@~D@?Mn@YYgFb4`>{LDSp*Vi0*<di(xi!PCE|JL*7IvjnO_ z{Ke9`D}5Ul>7kY`?#8~gk67=bdPT1NlQpkrH=^q6L6eTe9a1B2_Yt;e4E2e2KE*Tw zAapa<v}Dd{&3orP;0*=Fc38p7Evu;;(MH7(98;AQj<U@JoI&X0+yy3Wt>_?ighx|P zY2SKwwVDGcFwT>uEme}~p5e1-lHVnzy0hbORxB?o-~lchXr+&|j%f&2J8FNd0h4dd zy@ovl2tet(G{IKFhQg0BK8($nSzBN@i^wzwp*;Xrh`wfB(-BVhBR?rbe-Om@7%a@! z*BmCc>!rbVXEvv}tw#31$Nce~L+=;T^Mp@t!=YTHEL;K+8G@{ARl`e8pC1Uc+Oo&~ z#wsh31@X%$463Mq8bPSw*#r3qz-7L?%)u<4=Qpm|d@kH`B3|F10}WN#=92)(Li%V% zJ+)f^$hHJq$gFTku2!zReNs`zFSZVZ*Ozu~y%&E>sFuThQ2mSd<fXlDribM&%26Ve zU-FqOV&bl_BBRrT*=Y(=vt-b25!4flOJx!9OPq^-_6Q8CL+sn&LJ^68aRmVCI)*2i zn;pQl4R8S9G~FnPXfj|&KQ}z&3na?sjgH)LUS7F7pTwgvlgL&^`^R|i9>xGr_DpiP z1rzHtsYnJ7w}ag?8v2m7dz?^b{eaU~?j5ed)VYoH)da`4as&thNW&ITg4MTO3@0^0 zfI>4Z3b`Q(u;M{p^6?j@&q|XNnask&ksL19x@nK>x^?T6PC%h&bMHxs{@_BO>+Oe^ zoxiVit59wrITa)TiXN?_mi)iTEE{I78*UfpC$q0K`i4ey9u82D!JCokr0?Ez%@S%2 zJX4<^o50Ch;CDo;;Q`p(eimm8RSJEj0QsVemNqi^8$A*9DSjo_=+Cu#MDyd7gUH|A zYaBt*Z0T>{L!ablU`>>~n%Ql0;fmgWx=`cORRL`)Y(K5@iPL#}5ymnl>GB^o|AURp z9Q}0rKAEF@x6oO;9>;<SeolhIytWbs!M%w<3Ccvy^!Pp?`xVyCTVGhPs3wet(L9IR zvZJ-=0hP`6@<iya8C+K%^1#90Z$U$AhaVqOuki#ympn^T&z~wg4wOT}HMl5|5V1)q z08iu-#J=>~1qO@r1+L`Lo>K>IIe!zObO0+E%O;|?>@Y~_N=UN<{X-iKDQ{o<IU~6S z28E<>TRnsCV1INAPR>$=p_3RjXRmsso<>gvRh&He{b%QI^o;Vgd34fRVxiWU_3w=R zb|OZOCev!LO8VMV*ZUt+iAruZv?ChW`|CXIegz^@s+V}O49P4DFGG7P?^D9##)rOy zBK<+E@8Vx6(rQG9ITE3Uv=0!$!N7o9=mUqGHFxG3EKrW1OD_|@l2yqCG6-p<9R8$1 zBS?MS@|eIzHc24`M}Gfo1Ur&=E4U67$8ls5L5l#AV4@7+CsZ4AtTM>eRCPe1)tF3~ za*lyAHpAO*M;N9o!M`tYVxat*+}eH1lX$2o8j^{oPX_#QAIMF{0E^LN=>#~xEB9n2 z5G#o|O%8@<w7?%6!Sf_Zzi;4a2eG|6-v&K2V>T;muLFoZ*^!d_XYu4WLZ`c|IUT{b z$&c$5<9HBc_)Bl&19r`g>Z}bVP^>Z6rWyEn^(P2a8E4b9Rg4E5efSaTch!Walq8?l zL<={WfJA1vyeqHS2YNFb1VDX18!9=l?3%}$)X~%U-}rT*X#mM#Giw7Ew>YN0Q6m-5 z!VV&VgVt_NrhhRWfiS;7oGqAhqEJ%+of!fadqnaQCL<}@+$aPQMUx1wgG7nY`2>J? zP+-3h1O#LfyOH?-rYF(xa6G*Y0L6)+69<u`V;0M4SZ&cH><4m%N9?m$DUP`ij-^)| zOO*2excz8_wF<|=ktvkkFZ5hJY1sQAg4e>eQQwKRfP3M3=W!&uzSI;0iPgNOHPbk1 zx>ul(ri;cApaoa#VC}#tC9B{o4jUqy^<mvEun_(etd;jGoB(gjL!qREgU4C3ko+!Y zUl7n{?;(CN9CK_7^A468HI0s~()_)QVYi>Xd2xUmfgXGWOTgb`-B=@VF*a!WV4|L< z8Qs%<id0%*^BD#4AZY-C`3lJ**9Vexh0688^JlMj8z7bI6w7Gm?HZekMEH0<4|)J7 z3LufIL<#E_H0tr#5CJi>9F!-LG%`{QVNxswp+p)pS~BdTLZ1Lrul6SNEjkyDE(#>2 z_%k(7PRGn-s!=te%E%K#&3S!8R>l9O*ao>u^J|4r%I9<`t#dnRkTdT=?j7^|y6N6g z6{cgLcE3RUYfhX;GEvC_hCIT8o<KZ}u=)?Vra;A*58_XcxvP#ryWBL)lC5oCq!2V9 z96~Z3iWN>7rGE(w{_F>29~PBa7u89ibo~XzRhL~(DsF```)~n!kD16Zi<d}9Em6Ek z8_u`}Ud%5sout5FNKs=zg+v}#46tHd!=##0{If(zCcKuQEsA3#do86Cu5Hk!ZE~t@ zZl$7qd%T_^z*R)kYy@5#3}Eb=c5gjvo#DaCjU%T-xeR1PJpnMs%H3?7rmPRUKp!{1 zE2RhR2VrRjG{FFWJ;*|ir*8?POUKK<!|;|M5u>kFZ1KY6XaN{ea0%e=SouMipLXh_ z>UERE5f`AZR%yb*x&L7R3eZm5CnJbrHmRfph0(FkKw``r%|cYUKF82oE6mk;VdLTc z6@x66ecJ38=%fbAeJRlmaYKbRE$huExLn8+6X8iD!s4bw!yDZi3QR}p+>wP@R8poB zBwX-T8pwP646K*jI?-=z@1NNw$l9ftog&7I_oW;!56E)Y$WR9$M&ORZr!xdqhxQ4% zK^XrG5kVWIDfpS9@snyw*zqFv$jSQ?uw_S10t!bNh`*|n$G(oGox5mEv;UqJfQ0xP zCqY9c5y)$lvku;;DM2Q1h9W%I;^hwLE3XDEuTp9gWuWC<EhOA@PFv0ed`T@zN?<2L z0*aA<J7+wm3`|pfCbVb`))aY0Vy&U9j)gm&HW6_7DF{_OfI-61Sd30O5|IvYp|dg% zcLO)RMAYDU?ULcy^C(RM1%05;gL8^hN?0|4zF3YSs@^N*%=eX?-<wFk&d8@WDCsrd zB<B5bXQFg0Zv^HQ^Q)N$gQDkAJ4kimC~aYAz6<pv=6CQqS(hvvAgh^{cZhf4e$v)e z)rKe-cM~dtGh(n1Q6Hl#G~i#G7T*GJ80C5NStkvkf7;;MmhT~8O=2~`YD_GTduHWw zEvv(hrpG7T4(Io4>`T*UGW3;&XP<kL{sd<an>`Bk)&qHQ5J4!sM0*NA_bsYz;-UY% zXC0aZBWIa(pl%L_8CQbnr|Cfnln5&;zfnFDmzd`z*vKSCSbk-!2q9Jk?d2ouQ+F>$ z0}V-S^jnjU-?|sS_cp$A%g<@TA%{V;%1k%Qo2(`+X8xQQM~-4>x^uO~r;DLJC(uI# zWIgcdAfmi6(8m0Y#a^Ieoe0nF5F(L4--eD%W3+W6CKYh;ezW!on)i0Y=zXj<U(r^I z*N0=<(p*#LJ%i*JL^0(c$>7$H^!kas%K(y8bWwIkcq+10!5E;6_AM!nHoP`(L`4E2 zNJ!7ydx-=fBM`pDU&cDRT-~4PG^pc>fqM7(%FF}}hLTPKz+Ft>Lpg<+#X((bKpO^f z?h%tggpt$0ba60O_q*vB)aiJR9)SXD2LdM&6}K1TIsVJzQq1Rz&bNKBO531g^bos5 zwEXis%G*!)gS4LPcz|-|Ics3TflY9(AM6$yW_KV|UHlA&N_u>nTS3nwQR9kJh*mcx z*R*iI#1E9)t)-Sydg?yrwG1kLo!QNlm4v&j0(*$mW{lYRIxKlO!ye~pz$mcB@9@=` zUpnHt@6m-KGjB^VXrcLx`yQCMkhL?<t>&Z-FhBgw2Nwmfvf2yDU$;;fVj%yRtBw2M zRLG|!6HEM_!himIXp#UACirOGJRDj1s}zoNUu^rHL$^#Hj)4euK2yDXrlC~bd@l8N z$UTp=-I?A(O~)R)iG4r-x?sDwzae<>DAa^J-~7@8Cl_EMdR<KmX7y?64smG`6Z5K6 zD+0iZTBH<{j@48!%#X}g4}`=iQYR@s=`M-OK+C0)Nw8uh^hcA8c~q#Q?+POsvR@_> zn5(`-@g2_FFd`9UJcv!!*H(u9{U<qek8TWUu2ME`V08B%dtFH!7M?w|Uo7o$Me*!! zCx{*J^uGB6`66f=5~@pR9YT<xaQH{RlEv?kqpu!j5TTH38et6JnGYt013<#-M_P#P z#sKu%a4@+tyv}8Ni1OQr*thb{P3y0uxAVdsKc8B~2)NU;WC|u`jmD4>fXM_$C)u^} z#yAnc>uDrnpBh`ARS(EzGsv&IUFUk&stS}y$DJM&EY=$Af~PiR%L6Vw)#wh<%Wu7Y z#Ahh`XL-=1L09p!45VYHjl>~Of^dt2x}C1<72onxo;y_<-F-hV`u_g+qzC9Wu?AD` z?$blUSEC8jEF>;p`lK*qlYQ;7l81>)U{|)GI#)V5hgj_GbZ8d@Cdk#Uhw<X^%hN=% zWG;(qK(jkZ0D>B%iE$87+_UJb(L9y0qPQ{Ztm=g8FK<?P{dFc!5nk;|(cN#^KpI-8 z>~<foBB695P}A+9<FbFjRneS4rPm;ZFote0NKUbXM@4~3Vkk#TxzZ8<6Wx<vQf`w{ zf;VB{SQ~++23?KgZK%aOtYf544-XQJ0H3x`-&*by`r8)5+b*_J;>A5A;Y6N}uaUG- z9gxuv(k2&1Ls$v>jV_r2sj;|lm@eR@fn#gh1L!UgklbSgK$DXZAPQGrFJDdv-532I zS7#X(Rp4&>DPV}f5s*d+>5vWyheiZMx*2+C5R_&Qjg$yTBPk6IDXDaWAQI9I5=x0k zIG1z&=iKK$cYoje<NNG){nooyO2=fgNG){-*-QV|5hAx|^AIB-^_|t}b~Il-&;e0+ zJJ=93-`qame*G$tL3sNaKocYU!#bH=nZ(q;HN-^BN>OwUHNrwGH7vuq9~9Sy&r;|< zspoC2z157E`@#q(Zg<sn*^wtcUrZBg7X?U2FIGG~izdVJKrq<{TNT7m<b-10Ef?l8 zdo)Kq=;n&*wy=byl^L;~)@Bn>^dtrQ#O&^BSoWq}+ol(jYBVz)cc4x8<P$FN%=?)M zy=(1Gui1X<nO7(nRfk{i@pQ&rP*VAfR4eQmX6|GCoGcce?)J3dih#oE#gG-e!*{Oi z-QBhhsJOh?C)tCk;Dhg<4zhX&4-i9xIrjUZ*d1$-xG|@#p2~x|R#Ftu{Aa*7McVyW zj)s_~f<39<>Ee`b_A;G6WFBYcN-1HyveA5hK-cWky?@iKuoKOE5LMK;Ilkfnb$AY! z-bBfDpbVCf4}EFTwz-qP9ea01`rb^yzd)yZGa+VMs(FaeKOgwbKm(uV+EF)C(OW-f zs^9*6(1LVM;>Y7dKj(JfR$s+MvN}94=Q}p1yY$nAEb|@F6;NRG#slWtD!p+ryWoPw z=_sIW<nF<u+`moW-;dA#zOyadVGHkLs*Yq}e(pjmX$#K+6IpVJ9<RmRjzY4~`wb+n z#)9EOwRFPh0fKNB3tB%9jvfl?Q;;^KLx(tyBugNjm-W8|Sb)!EZi87LDZ&EF)61yc zB)g@a0-{xVEq~8n`$o<!=t&7f+>=B8M>w5<rvyAp>ecnP(82TM*Ay%uS?smm{Z^3R z2l+oXzJCXVdW9_lo%39iLL*ae7aNE&pFO1(sv&^DtDewwz?l%X*YgYM=?%{bsI$Xk zQmdnwY2<HQ{Ws>N5ClOHpP#xEf1Ef6ZJk@tfg&qQ?Y4nIQn|b#1d-%?kcsL}6z?pY z{*5aGe_EWab6y^6Z~gOYr8_n`#E>80ddEjbu|8{vHn)iv`x~eTdVUX+mrpE}qNpuT zz?3opB6*7`P@uK*Mn?11s#$|?4RBC7>b|#CVR%R-pRCEdQ9nr~myzEa=Z$|`oJu6Z z^}_I8*ISh^<SUFaR&2s|GsEZsA1K`T{Y1kw$#^;?JsH<y!~3Ly>G{P}Y^9FYga~`J z8-t=-W-W?YcLf&;M{wn3*i2L1&H&k~+eKPudTyml<ng08Tqg-wLY)={DN@sGYp?|7 zR#e1c$Y%ZW4k8AWgh?96S5O%`!v!)htO|ZH3jUHI#Ac%V-bp@}Bu##iju8kX6F<+Z zoKeHXOHc=oqYUVsv=fLKe4FHB+3w!Aj$x{i9B<w1yIchs!f&JCcGFuC)bcCZJ*;Aj z8--9^<Pl{?gaKhU*<+qwNSZnRs~F_=Gq<Tb;Z|?GdLb;c<EpNp@w{%Zji<)_8@mQl zf%#Vb>hodOj{VwU1$am|64*p~XclBO8zdk}v&}N-(vKEyG+TaojHB5;se;pDGoh(j z{iYLxTZ)rInR`dhP!f#@W)+n?m3lB+O5-g{^@Pu{rowHqkN?kt_l)bGMc?hJKTCms z4*o1-iIz+n$Q5W;!>LTpT@C1*(4oYe-tb?|uj-Bd623Acci&h~07#`aAUT(zNcNnV zS_&2y)~;O{ax)w^O9#%|m7D2>o|T|)wg*Y6n4n!F(qt0Fnorze+jBQv2L`6cdG_7? zsPobge#^|Wli;r1=ZUlL__RWB1$p&WW_r>Q`&&JAw1>R?S^!5eMtxSB>IpYi(D9p9 zXDT<TOI?*RIDaky;8W4(;T}l13*?7C(OCgOY&8R+rwH$X`yjA3gph_Yga8hb==3`b zV<yXotEzQTWFCfdY2=d_`o62ZGv+}uK)v=UUlJlHVD@^?ENVoodGrPRc>-w~Qi7@( zVTQh+p-u~`N5UD+zHmImVYL{?BXeO9qT9(s1hO|*!@htJOn%VN90Y=rwV|M9HD3)Y z^Fv5c{l52xrzqsnp)k=EsmIy(o^aLFLR^@M=&iGv>9$*A>8eDm!6pQk1r%xN)<G&z zy+ZO*7=exgD2f@caQk6;4wwRcn;?&#R6tD~jIp8we=~6pPUa?E`ze^Ug60eeQ+;oa zB)ls~2AJ9oc3E5;r*)7O3r0O2v8F#sA5cQBGM?la40<TssYOP*%}O%L2}I3^b|S?R z^X18P6z|f5#x;bg_={nLyz@PpZmi1hdeC6P(_yY(wMj*oRiwROFWngEX+GSJ{WqB@ z!*qU~QHV01AqI@xaOhO$Vey+HCOu+Q=4wv_C<q0J<w@gkA)<YUg=4TKL-JQ@$NGn< z5vw%0tdGf5*fn1^onWakf&^Y3wGQ^l7#FQj4*v6RC1sP?+@Z!SI5o0ZPP5ZW5Dj*h z@es4j*Jr@Huw&U7w*;dnLL}TWN2>jQSD+CUM*Zs3wVA&wH;uPQKT~u&n1n^r)aC;S zg2B-i@#?IF)8b!6-Yiw)Vnm8fH#&LGqbL*Mn?$894i9V?H-!}#^(F_x`)Z=Ae(;V1 zhVF5Zhfdl^UTw+>4LS8uNbF-Z=mTHWUqPevFHRwF8jlr+0qdlc#pkhdZxxv1aM6sm zn+z6?90&rx_-UCf2YHc^r?)7>m2tq+XYU-pQKY2m<(l*s_Yn+Bh%zG+sPYKTccG*@ zf}zI=C{lZ0l<M=2r8CGeRGO`?)Tm69HhqSSwzPw!@<>nlH-~GjkOo{3Ybm1URDsdN zh0=`RR|uugJCO;v@Uq^Kh87;vIe%x-b)K1CKd;2+@f8smxS^wf7L>tP9$?Uj>@W>B zXnyY038iX%B@R;{k?+iTKvK8f&Bt7)z=Z<adPIV_G(kh=0{%42;ouYl1(;EU(>5;r zK0bvoOR^&(OQJI><G9?ANghsp2%=-Q0ZD<XE9C^q6V5x~P!HG>Vw4>7>`a@hQ<xOI zLnke!uhzp!7by;oCzk^T=<m^nl9_bufMDo+aWob*7Y>G0aD(E;>Wl5LTREdNlC`Ar za++2#BuIH8;+5S;1tt|gBC+4zlS6J(zu6_8znE?sYpC`a-LtsNG@dr$H5JNU{fJL8 z%4F1PjQ)5Wk751!-RzCMfrel>BwJo3*tl9}f;R$`&Wa3K;RLi5a0@3EQ)E6Q!b+9= z1k8cWZAMcHaAfi<O|&(upc6P@JKljlT|s9Ws|`i#CVft?Z6k=(l{4)SrlVS6z030E zcBGj-9hueGz#VL<mAMlUGUdIR7Zp;R+?ll!OYOmcHqv$p*N}b)%7BNoS~7)a5`}!@ z@2D>pi;qL>11@jPpG<zV(+t-eH<>bpdc1`)@97~!;NjK3Ka^<wE;qg2HTu#rO|#!c z(k-aqmSYuB;OFA-$W)=HPjIbo2}D%~#ze>q8_X;H5w9ZVaw(^LKXv-+CgB55!sRpo ztuOKvv$|QeIi$*%m_juMUj1U^e8FIlXGh45jdzy_1NO&HcL$O$wtPqwNT~%cCc-XH zLuf&LA>zj*voi1y)O)cDnL(tQ75FL80#%`w>#w|uRzS5McAB5+(JtFH1EAs5<yr`t z)mg4M^yZi&AWf<REQyW$=F{!e#Ah|)>d~Pk?s=T!dVRI?^z+5cmw#uifKlhC)YXlw zmvjZd^><2zfa|(DiWig&o&&3lp%FIvsT_q{e#IWxH-=ywVL)&{l3t!QOd{y7trwn} zGndFs9tUFd<qSFW7c=xmuOY&dK_BF)3H7jlso>2sp~|X(0<(n5sxUl%p8o-qPM#7} zHcnV3NT7G0gh(*pfb#h=4M@o&XvP6N#ttBWH982b$c-?vR$@f14VsY%md>X%ijI)P zQK~SL$bA&6gsG6?j0$j&0uL||I(YVtcV4QNqc7!HZ{#n-sF%J`zUfi^O;IKe;t^~> zBqi_IH-jERozNYg6PjpOJA~;G*v*q*h7hWM=2Xq;tfUI#8weGc4dvs4VttUntS+*! zkR5gC`t)O12%6+$f2dY}m~wwu|Hm*rrQq=n%NPp9d(0d&FDZ6xNtBSmYd#S&H4!~r zFjo&x2{?m^PGnXdrB1z^x3B20I#>%kv;Ylu@CA=|H~`NPctoC17)=0%i=-eAx|ts7 zd9JkUD=Su$K$8fK9uT`c0|Aa)kXUWl9!fk%l;_JT35uCOvyptfgM1uC%BZ9hn4U<| zoJjUPk^FBWD;3a{8jbu4M611_l>%Z1q7!_<`_$4qwuF@fVI9%o9CX1VlY{_~C&7`x zTF*^22;sV_vP7ht63S*YJ%V~XLg$+i4H^>5f{;kZ>~p+g@grOVqT<(m6ZXEPNXRE_ zVm<T0Fn(<0(|WiRWqgt-ht45L1^xOD9MRXw9ABe8ZBOVR2%^D}Z=uOu22<U>r|x&8 zLXFd4#0cNNlH)jV!U|`54cG&$B7B%kq@9ky>Eq$XsT4gzIx9qfqZwf<h)#kxDaIM8 zei`W*8JWb)PJq6ZMcSK_?F>LN^Mq4TT#x*&pDQ|CYbq+aCptom&GrHAwj%ODqL;ul zwU;XzCgBM#ID~{CIa}CahS>OxCaoP`*{wXVmU3#0Fv=w*6God990lF*l?8ddj>Y9D zkEgm0rhb_c;eRi*qWqc$2Zs<N-rtcM|4qjrVt?8Mz!^XY)DHwPDiz%+cIZu5APDpP zk>hSmzOPLVF(w~J=OrrU&Ta6=LRpF+qB_h3V-Aod9qln=y`^(%#ySv`S?~CFK21x; zO$6wDlL8L^0)(S@L32UjV1WRSORR4up2mZKx6!?^<mqQ4P*z@{bPKWAx-hu|tln6F zDHKo)(Wd}wgJMy+^*4pf-mcF>0~F9OUi3|>FX2WyeA5HO*z>NE#d0JW&O`XV(I+57 zA2dBk__GPF$P8gXLx?(fm>q6XzzG~s*$)I^C_0a97?(FaoBcRMKDC5Hke&Q%Jhb19 z6d9o~U7B!Fn%I&gc>-P<zjNz2K9M#ba5(h%bq*%RiM;wj3nhAGOU+K+6&{tD&ec+0 zIagkNQI7LB;3+TQH>nsAt*9r7);<G&6MyKiLUP#{!*3HOc2eld3=NyRy@{(-fC<oh zxq=TN5%d|$tXd98&PT;bh8;$D6)dz)s*Iefpvu#)sEd$boN$dg|IwDuEgx3EsJxgV z5BzZbeU2x>)z-D!pFpuAJIcxI?1K6dW@|W}|8PB9PNeuzs_`uxP6>x2zr-Ofaif1A zMiV^Y-7+rN>OCIVgG4wz@<x?3A7LX=Sn=UNBQ#12YFcXf=4%BmYXzMZnjY3YJIOee zV4<^C`d#~!m;oop;3jhB!2lc;&!rfKZ$#U!ViY@gXzURj9fYFg#=Z1eSRe4Fwn_C@ zrek&)`b0R*e`UzkBA$r!(l^@27Q3v}1jghqW2(iVzDD5M`*z&ctBrA)CC3+c4!$=O zDvEG(i*WxH4!LYB@MyqyPBAZ~TW`}x7<LdI`8VaH<ZdA;SP#L9!24REtme$t=Ir_A zck{d=vCU#nGNWu1ITGRbpA#sEH&jZODw@`ZQdyT|n1FGhFFvK{2~bG@n8lN|&JS$T z^6r$rnP}?e=1N2RUh7Yiwq=owK6V+m&ejI*4-=B%%h4?^iR~ss^)lVeybel(6>V#+ zZA-d1$xXWZHpuS*0QhJZRsJ&8MJaE@uX*IO`7Ge`dDiEP*3Xv{FG3_)#P18_pRn-j zWVzF;8Lvvy=vdQ)ng~&VnDoVGv~NvP2@s8I(gd<3UNX%<I#!-{(u2BK7c`fw)h=nN zz4X<p3(9#oWkPKk@zh!7j2SF!j9sFE-QwBZaW<tE{^C}vfYoqK*W20#PrDlX?$2u3 zJ?d>e8reNg5&R&s9t9X;jY6P?*V-%u7||`^KMWKo;<t*D%%$fo=Rw_4h(1s2!zuJZ zysc;>qwN;xqD1=GrXsryT%5A|t@(7io&7#2^eZrmq2GYsI`t?`^+ab6#Iy~>@fCC$ zWX`Q2O!Hj;Mse$r)ZV|UF7v&F<#w&h%$+X3nZKgQ3eAS5Lhpv_4i&WxmAed;m~kVL zYFXwZYqHDj%!aE*hFY?Rt7V4cS7{3aD?G2Vg=}*puZH5YM~2!)Mixelw?8K`_PL9V zo|gc$gw#Ue7<@J#fw@dTIFwp7J2?8uK(6}dPx~XlPWISt+t~hsenHurQ`P9peqbym zdLy%@K^pcOG}O&I2E9M{#&6_6W*lZdP8c-Kvhf)U{}Khyges8{AA;u>Mg{cx_h*=2 zZb)wi4!{>D?p{wYGkxtT7%w8tj64~8$1>rX_~r6y^g1w@j8$gv_IMiaSMi`p$(+fD z=J%QblL}7Pin3igga=qiVM0K5#K1>8k}iWca7_C8n>N#wPW+_obph{g)YAFOzgLJR zQWiDY7fXAH7KRd7B1ltq3X?PK)ILqb)Z(_-PV`nhy|LbDV`}fu9hi2yNBKnA&~)(i z43=qD<7yh;L?UnX%++BWLN%=U*=9n}m3s;B0Qo(hF5CJR8uUFq=X++*=cQQf`$DD3 zJRjF8L2sBiPU%XLUX5h6&s8qYRU;}sabkDRAdiUUQu!rn1&3~m2}lmh=oUf#@o8PM z3q6{o^@)u1=3~qkQ|qg=9KN6>zqyAZdLPUer-K$}H8Z?pt=n2}8wMnf9Plk?gE-*8 zLJ|T25mD~@xFkEfggRa#M}v9upsZ-}abyX}0#9e){F0U55*&fAg`Xi(R&o{zgID11 zR(7@*z*mwBJ(gG3e8=q5N&FDW8e){SAeoV)J=Wpwztv4;XcUbzGYTeG%6S^JJZLrj zV6+pD%$eEOraZ$eo3(V31g}fJ1J)n@M9Y!&iOWei6oUL*$)9~AWXAe#M?B+uL-F$2 zeX-{>+G88nlWLDyblI5KYN?k4o-c2<EngojBR~kTXRl*B$We6N((ksMK5e<UX&{dC zgAf~Inxx8kP+3neQ4fpeA}S0ElS&db_U=xQ7X2xTxX5aUhDzK7W$|~zA1E7-qtS-- zkFGJs>pHMaYdIy{1fN-d&t6^J%DcN;Ah%1S2@E`gNg|=ef{^BViWd{x7uNT6-zYyB z69+}mM2t}c%5Tza>bf4gm!ZLP1Mkl=oM?XVd|v?7<KQz~$_Ct!J#^wX&E0Pn2h+g^ zctcK0t7>Q#2tu2<p`IiNTzsWSdAk!KuWr&|vOQ*Us<%`4?IvsA?X!i~Yd7$zD|tP# zq_Z8qwZk@w$^IP#dY5njvpggO4vDE1=RXn4qoB0EcX4hsPH(7&URc0Y(NSqfa5X0; za(DHY&mI)p8g07QiW6+4MT&dI%do_*&BQrk$Rl<+;g3#4El<RO<tJocL0f3B5^mR| zWBbOygbkMG)(#O`35&JMX(v|RZ91I^qm-J6s2;#>HvDWZvZa1)nd|dPdiJ-BWNe}v zx%})03ClBk;0$9a0ZjoVwL{8qyR`KiDQFs!Q(co=kk_9eZxYg2;+9jc{`g&k@e$vP zls&+_9h6T$t}+4cNB0tra0ah3xnczX@ILdQaPC=p?%&MMe>;Rx2yIxFHdr+AXW-pU z9xLNdO~lE}se@LCjre_<SLFt>Zw9oMtPu+w%#fSY7{X+1>{B0mBr&6dSBUnSbQ5I( z^O-sQYWDKg82)P9{VuZVgck*)P5c>cvEzH&B=luCFEj9CIJfpF-yqy<mFGd&Jz5x9 zG?s-nnDYU|+W33!-Ro0J{MoN7uWG3K2Ld%P614NIfHRRI?sl<`G1v1B69_?%?cjys z#F}y(otWD<$v3n@1jLnMSOcY~2u)X=+bk6K)gn;xkoV7VgIxq(_4H=Cf^YDws(JDe z<m@KjcAf!6kKYQ|&3*f!Tl(z1)_aqwUHwYq2Di<*sXarSRc`{j>GZyFz2j81-Td@{ zX_MzB#am@QFh3J{X!=A!I0dOX=!#WTxhI6&i>QtLJfpGN9D*Pp7v@|G<$A`;S82qu z8yfv$oL=;hy5`92Tbcd``^CB6&a*XkUy99dyz2`<^NU|wi}OCZxt*Nq$;xI0PfK6i zNnD_^4Ns+0M}zW;l(5wN5r)x?_80XgxnEH{O<VCDe<!xv{nq^g*WAyKHoufuF8>R< z`uqFW_VO|w00m@4x4|d`f61J(vN40-E!pfA62=&Xz;)k+t$x@|8Ha>1ljB87z|r@0 zM%j)4)Wv|(Q6i~_GPSAqkut4Kil+*_bN!JDqw^_oku$6G3J8-Y6vgBf!<WQ_A)g(r zFWObl12Yv1vPY0!Q{+9Qt@T<7&0!oldLr0O<)tA!EPA3LI;rP1dWYy#MVN(uQeK3S zufvK`=BT~{!bF|_zV%mllAYA;%=JBm8`~n_5>7HVE?@F)HpN><owwmsM?+-FTUSe( z;7eijl4yRd)U&ys5OF=HFm{7iYVYGU4bG9Q52V-LfG`GX?-gieP^ZlNBk(TBOE_{u z*EU)IrLle1i!)<P;oE86*U@yZQeW_Ok7&s-9g0uAH9{1;_k4v}FNV_N7ck>*MryD? z*LFS1JCaX`*_yzFTIQum@a6A6mRKmYFFKS|1@R3A2kC@MDX%t~5`}AvnXy_w=Z5PF zin~a&-)kW(c>Uq+cnHaPk|C*O9o01WHa&A6I^8DK&py++@vnXMaAk!m^Jp_F%GFee z^{I@b&Y->l|I5J?l63KXj@u(btEwh|x``Dft9k;>CTWd`-7u7S$j_yASp3qZe$pVo zwKz}*6(Vs9?QmO4#4BB-RkjuFJ|e6*2u>9iw>yk8uNo|VD3QUsM^fX(*c$%xT2QBv z_v6*`5s{fduQ59+Ey?2*QHM9mXVc)FPs*<z4xWyPJQdF6S5q!7CdPlfekq~?j9+{9 zlh&a`IizWVeb-_o{`qbsm#9m=l4E_~hMDFL{n`G9+Uj=M+xzI6XjYy#Z3B7D9iif> z;sj6;4IyX{{qvb1=YdI1>txcdB}2cflNkW`cliguypp}+`cml2>u}MQy&(JBYV?`` za(_BrBeB#49w-gMv`@D;#)5tY0ArUVb;L}J%)WRwD`HJw1*&50h-+dkCAqVjna6!F zB1WdOVwFr-V37feE=7VI7hTb?5o#YDPWXZ*lq{3=#s={ULwloBsXU9(Ewa8-HSiWh zu}**M)hbw2TMUC7WXzWWfvZ>V7Wv)>6A4CDhey}U-w`m_1Kr-lSNp00GF#7H2W+hW zgY0zuR<akhsGK8nAGrIg{=n6}V1!lOu4J?l{X%_c_4>m1v4*`)a@I!C=UQI`?I*`X z`gAgG26P`22a#~n-#2H^XCE8&>7>>b+41+Ds`3*)7p>HzaHLOB*H4JzT!a?$$NOp6 za_D9Z+agZt2biJk82Qh(fW26ipQekwZdUE>1W%1`?UZGhto8d2Qloxa-VZlJ?*27< zxcFDgw@>%olv#=7w%^mhE#2J94Tne9f1hFr_45AfGYEg}aE_a996O96(}i}lie3Tb zdyF!_|FbxIy+VdfjH>L#v&2ZfA~tr%$C~~+DaCs4dF>pZm|x&^fb>4SVv+Zbny&u3 z*;{%g(wmM?gD!OQ2=z-9*`1!n`|A~P=$AdQbJESZ&?{BZFTY_I`c?k=mG=4-rkhTN z?HBsENc~D1c4y;Je}npB{VHcWXVb+CgQh<HYOnXs<_G?UZCm;u0ydp3uP<)44+C5n zyNeYfz^I4ApeEK1aIs;!G#XGbs7-$FV#gm~JYsK9m$m8QAbV*%9%)ct$nNT>8DR3Q z*r1`p&ehrc(qy*Jpt0_~tE+2(>B5%5$JR|(_n=GD6+*+NZgw}%_yDsF4#VbQJ2$VK zOS2sn!<NbSZZE0=%=hgLTjw|3eA+L~4<ilR*4f?tMguHP0erDx`<|V9z~ZIFd7t5@ zllSgH2LYB>TZW%6H{F5jOG^-uQ3sU6BLoqMhH)BolG=NOF<qhIszzOu#U2s-fmUP= zM%@fs9#OJaR>&x$9ySioSDJy=R3%2ey!M{4=2zCV{YHHv#h&r5fi{fWM*Y%Tp09(h zY?z6R2NXGg=WpTzZSQj$4?eMfo}6=K%cW{Oq+9&_ZB?KhpM&wR>DKeK_A5KVDB}?u z4zG;SKzq>=<56dOudKx@d&z#|F|T5;oP$6InQh}Q0b5?V*H;cGB9rkj4)1(K5Jrj9 zWFpqyyO8M`qo!)|HM!XPJ%5m+hJ(pu)|PjP?6spd5M_e@R><+9Of$$yuf$}k!u~~t z`L&Z#zsYo6@rx?gAZN2}lbP177axMIozX<5v)vpoYvO}kY&lK858J=2%ei*JsG81A z7Qbw$3UYOEFrA;@dik;a+SMb<bYY#tr+GBU&AY^OanIhTb@AHGx8HQ>q}ZqZAjmy% z+jRMI3-I}TeeI4VGFyRi`gS6MJ;FK7R!JRvyP5uZM5~&uQI`1j@&|jyIhd_8Z2R`h z{_{+XGTUI|^c&O+ex6cdw#n<@H*9`WSk-T~B~s!y>Kg2oy=}HFz3ulU=$}^}k@=1y zr~gEJuy+xs`Hv?K{*yWXyh~NhcXdnrr*42;CE#GbXNuqUpK1U10vBbzZ^IezeKh!G zeTn&jvqQlA;=h+o{pLTtN&*%Sf_>Vy&3^@K2P|Lz^XVY6I1J+qTtxuBJ)9Otu?~Uj zOnBb`Rg2@~lE6)Vz;DFC;v{Q3a9bAdHy&kiTF4pnLlf}-R$}qH!XaqS9PdBdZ*f*v z0t6kn0s#x#7Jpi|gMJ0!16GJE&$~H;kK%#A4Nl9y!w$hGIrzXGRm+RXlHlJ}K+wK} z<>mZ#@Sk>k&|#G2)jB8ecN7RdEwQ}ba{w+E@xkZ)mj6ylfa?PQxZ1YFUv2~V>zn@q zG8C8*1>r+MWl%5;6oDCv&;>;l2%z9`DB|o-D3VGPX&Z`c1cg{Yk?*5!U7?U<^0yh~ zDfr|mW#p+e<nNftQ@hC11j^IK$<t-a(^tyhR2(yo$p6=Q`o8?VD|u!z1r|mHRz3wb z8HM{A3hZVI94-o+feKu43f$QWJe3N(Z3=uN3j7NS0{aRNt`r2x6onWq6ovT|MPw93 zH5A3n6vbT>B?1*C;}oT`6(3eAO1CM>j3~-3D9Y_CKDtswktxYDDk<<ODat4*X(%b1 zDXF+9sRk;6h~XfXzc6AL2oK@|-8@(#Nf-!@2jPj+j`-*wrScPzq;)`U-AzkWy+z%4 zi=GUe%>2YG4K+x|^)c}&y%;!YyZz&#AUzhG_Aj1DGVPWHJz=tm!Y$x8ckGbKS#5gN zzU})oV`F4tZ7!n9L6z5J;-z?9)}pzC;*+@Pma_(&E5D<I>D&bVodI>(dnSzR@Z9W$ zL1RPJfm@jK{1<ESkL9f{?p6WuvtwtC<MGwcT`P<?g30TKuMeEdco%>Ae{7v@Sn#k3 zh(D(2ZmYen_Mf?2JX8R*nm@Q!2WF9)p3VLF^!0`NTIBHj-&C6R;@%HfqCk^tLh?`5 z*B?SZI-5amcu%UB$1;jx`PgKge!8?jf`M$6Jb?Bi#U}<w(@RU|n`Sf6KU~Zs#<k{W z={>ZKkrI_w))&?39X+E*SkwK++iA1(%cvv2=79Ab^{~b{P2n)$6`A?n4+p)E-qlF# zPAstIHhv^wj)V+lf#?ImKxj8?dhb;TVaneTd#$?kPO>fM`+4{_<1t~6lRev-zq4IS z=Y4UmE}K(HO~Wwc30MP!@Jd&N(Ts-_7@|W|Owp8yk+33(5UA=0)C3JOL@LiJ6q=F& z;wp9zk|JAs7yuxKgr>a`7oTm)nNByjH>%_@2x2g(LO83DXd%l1=%!Tgju2e@HVU<G zP02#ouhmOcJie!H`EW88*FY%8Z#yIRv8A|gF8T}ay1Q?{m!h9_sdk!s3hVw82}|M7 zZ;N|&c>3AS1o@h6rf~oH%cUNU(At^y&^s6tXx_gMUO;@7Yejx$-_k#ojt?w9r+HRJ z>o~k`$0TByZb-@g&xV_!xM$hV@co3Nv7HwgPLjT`;e;<m4L!aKL+%8SWEpkdcvup& z!ZP{_#9ce{&zvaOt{CnezO1Msb9Nt}W2BmCC={yx8Rs7OeJIkWO_4m*Kly5d%dnYV zBLpml2J-f31$zhOK_{f?Hgoro&&Sx>yxt#8Z=*P{ABj75J$z<YX{qb0lHHDCrRj;@ zynNW7|MSTAmh=Yu1F7j})r22_>!a7p-7}BxLeq!aw(c1<m8#C46~upR`<-}66#6ed z|AW!6o4}v^J5|n~9|Tb*ZT;?>U-T>^%GxzBl$i!}$zKjkuKejJ>4XQr4k5v!DGQJx z#Gwf%4QVYWasfggLuCBj-Ou}~4uq?2p?}6$wk%&;_~Q$~w*umw7Zw}v=c_+*&U;H1 z_7d<HyclfA$}IpE#r)~W26;l7!gew$;V?cUBI{sPU>H=qZRK0y-(=t!JMFW|8T^_$ zU?1pnsi%2ykJCMRCitfzxc!gsDNSIP5B$C_oEsH-YIt+k1$~7Jgn`^3l2{40Alg)i zLK^SDVr(f5W+BR(6^kLqcp`WF*J&KLR0F~t0`?4Dnm_uQ&;ZOvK!*>&o({R`iSITH zw2gw^5Rs8I>s<CQQAI22EmsL6|5;Ulj2P`*@8SIDJS-U*t^f~Kn#JHG91mUw|M=tC z)F0Bi9inXn=txHBV?qt03AtCm(P~h6T&N-*7wAuoaOR8@gxW2>411ntLDFO=)8ykG zjcM-lzoiyMp%$Fz5gzt2s%tvR@K4ksk>3Zw=+CMV_c0Ms=@3j_G^bIZQU?$*No~8+ z>z6Vhd>vs$67>pmZuQ*(vDrsX8ReWy8&x0~wZa)f868#E?@2ol#V{KKoQGJ_gr42( zi_y_BJK&uiFgFUya}K$|E+8VO=Nxg}M#8CTK{p*Zk{BOoq`yjkP=FyU78L*JrtwiN z{&tgh@y&Z5<11$4TYR1a@ifsVoU!$o=#S~KKcW+&x%`-!VgHD*(`Z+i;cFJfNHMrK z{b4Ne4%##oWNq&pVUKB2N%Y`~TE-j3Q}{;JI)uy_`RWqA(HaN{;YtWMilu!OP2c=R zL=d_o32{m!F@xU%`65neBRPHux%a!G(q2#YISrLYhD=8`+G7AU&O~v?#L4tz;=evB zzTpVs6lTtpYIs5@24FLa-HeW9_yN}Xo}&2!9F<4d?)wsf^_o5lG=3#y8|_h8^7`Hi zg3QNf`}b>G<5YX&<XkSuSFRWr<EWY0WdEJSkE&_QMk%%FX&mV(f#1`xQc(3g*zQ0A zc?V(SV-R<7dMqF%<W6G)TX}0?bn7bG@;eQN!y`lFaWdxbE2keBibgT+j=`Q~;gz&+ z;)o(@FezOnnT^r0RT&8YaaIkUE=vSU7=VN&3c@BM(|<H%-I+``{{iQv%jkBr{O;g= z50ohUDnpbTB0iWQ`8QkoafqL9$n&z0{q1-P;^;)5v~?glC7?NFg*bg(>fLTBp%50z zD(DJMvpd~+hp>6YQwEk2boJ5B-6L>@d4R$qv#<P8p@Z4^JK05C!KB1#KUFfHa6J!B zfAL`_fO;_J_HJe{_q#hJAP_PuN*k=e48hOj3&9IW!jitJ797&ra+O=iaboIGq~VRZ z56UwpXn{O2o?sc{kV3z_DXA1Pk|Ne<0GatF$hb(;IA0xGq-OGtHU{e8<7L2YqLV4u z?ihD356q!maBn=R$2emi?*nr6%|<(=3TCE?4Eg60=WIq5J}wP*-VKf?iY0#-tH4vD zVO;bwrlj;CGy-|UMe`Y^--Vb6#{ad8FeymT2K<dL%(vfy>iP;2cHg7vi~lue<T#c= zoQh$Y@mWLh#7;RpGsVx&i#OEDH6G`y#*~<0i_{Y#0Z1tC4UriKfoa~?Ts&y!w)y<H zfI-l;dDoo0KQ4Z#;Pq}n(nC+7i^x&OO1s_E44xb*o-}Eb7qS<XkLas(CCit%^Mf7B zf%S}{(jfw5Ru#wtF7H7w#995pBx!T*LA)a(q8!YS2(>6JJsWfl-Ksbysq8fQ(EYI3 z*{||LTBTfbrTq6w7ray2++a>+8P40OsOB#Ygsd^kgJJRrBRdG6#$=grm@*7M*jBG# zWvIQkLXLcy%NbjnFywfenKAt8!`p{3z{9e{iLxkB=```ZvRS(FdEye<44jfl$xKX@ z0%;9s1ss5e^Wv&$haEJt9xz?jFfcdVAGT<H=zO$WVSe%cO=brFWn?c&qicqna8_|+ zRGx+;?n_Kv*<d55WKp$a6(Y7uo}tDnu}U3RUS;xjWA5YeSIZrzQYmCD{UPEOP+SoD zvgx?IA+{p>k4d6sY~l;w!ha@>;Q8<uuQGiHo8OVXD|RX>eb}PFK=@U<9)pB2|1A<t zO|O)GkY^XSj7yTj3&NyU;B3aNwDwIz*w)YGO_zhU_`gjZ&hZW=d5?^nbNn+AnRVH% zbzT>lB|I$?yzOlr1Ys*+T95ik;AQ$Wvx8A{`_JQ-A9!mOan;M?)f1aukx!g=r9ZSv zmkIkPra2Yb#D<q+8q+HBW{At@{N5~<rMQ!3ja}lrc-yTyNZYhq?jDl3qO(?q-py`x z><XJ~+J!Mo!`4hYx1PA!6n7eB)$a2q|9nzuOW!CI8!uwol{#F=mEAmW3FK8Yw^5RO z%#SVlPTwIG2Wi7X!ayKVk9z#ak0<aR`D}FU8JGhHrj)5AKXb5Z?D;X@V@z6hFx=2i z8pBLhr#$<?7H`_sD~<bA(mZGyfo{XSpznU}+$SCf!7vh*lR(O(tLb_BHz2tYG5v~y z<gZ%#7pD7z+d6sXJFRztCSAtnmy*qdPM?dL^Ah)abDmUL?brE`bQJM+U@8YOBLtY0 zK?Yo4RI^`!%#e3w(rUm^UB!^wnH^nVD|VzaY@{{Cf8a86pro`cF7PwO-?G<fIr8Og zpEL#qW%_Jox*^$peQ|xDL^62~^4CW8--qkJkO|b8R20j!Qj?hj6(jafDn~W5n>sVI z<<39Vk!7A#R2sRA8GjsB{o8x6P=|lgH$F@tn%#FA2hqwKG{b(`#(~|lYg+z(nH8>p z<yAwGwS#yr^i55HOX{db+jz_T=-vH>6^-7tkwm<DPO}D%w!JZFVQjSwmdf}gUFPe3 z*(p#WL|z;83ilOY`|(AfihnWIs*t8tQ4r+6@VYf-6rM8<w2gn*pR5T?e!wu+;L@9t z6+%7Q`?s}ua<?&;x9<_}2$JDzugi#*_N<dxyHQU4*uvBUrqTB@)4SZ+_SZ>LqeC{0 z(?-Li+8P7Pj57+Z;I7tzhyF8^WnFu1-vUS5-jaQ}$25Ban0;Y4pJk69xsx?@)i(8L zWOj0`<ty3ubyTZlqun%iQYvR$I_JA<`}b?&iFcaA`LBvUy3DA?&$tZ@U(L^SkkzNl z%x0R+GU8WY%d+tED@fy_{dDpCx3!if?Fto*=`xo|U<=V^^1UzqJ6FYbtGR|x4BzS* z=kCkQsa_A51AOKC*>gLy-<~ecF<;MxYkplB1v6qHX4-IO4}!+U5nRmDm#^)foRccq zr38z{#%K1<=`f7zcar#pr+k$onuWR73#X=y#(X$ajTArrDo>{sBJvjCU}9eOYt8i{ z^6n}KN2G*WiV0exU*g*)@wS!)sWPr*ybYQeso<;zCePxVWUCe)wJ(n{wXtQ#fPx!a zqsER)8u?@f;bU`Ntt(=DQ#IEsiU|;qHe4z3>&R7kbNfc$u~WE74^(hcEXYzY6%_ds z!GYIWb~+g1{W<QA$g>pq+-UastL9dV%t~F;j6mEX6I1;?{#lgPR|UC^=oOecj!3%l zYxyORA85gcY+JgA{1hSwN?_icjqs2B6xn0G5c_G=^xbkq_J>5$t(dE2kn;p2c%8^} zC98Vw*TTBC?1(%0Jh|M)wAOYt7D~Baes}I`6*->**>ue(a9zTXWO1Zh>Rxp4=I_xR z1XHiT-rAV#grP>Jh+Esa=_1|Y@WZhQ&%GbOqotJ<{%zzEl(B>KF1notR}G@=U)JJl zbM4=d1E~nY!nB%z)SoTEn?|2HKmXjha2<Ff(A6uj)i1aBK4%P*fEx{786Dm_mN|gn zpB^%z55+7yNIeMt(NwE54Bh(0%lK&tD+j7bgf5|{4IZ!UzT0VA8k)~u;1lR&dtC{5 zGcAtzca1r%U%dMvwR9}~bEb2D{j0!N$fI4wB`D?>EDXJEC<t?3I9d94()4vB^5L|K z;N(5@o@~@l_0LCd7mq#(44Aon$l?FhBRAG<ItH$O{y1k#<NA2KdW8kCJ>_;l@cN9= zV^?}16yy`+`QT4O*DA`V|K(>AN228>VCfJ0*w6N{>3H&AwKBi;`7#YG>x_W9^y<3g z{a=S>eKubf<+V--U!Tc#kgBhcD0C2(3%oW%Tr{t>6h`$^-P%0K`{Vv6$*uV4c=YH1 zfA`#UZ}cADrK0ATP4FegdG1YR+Uw7AZ<e=`pB^l^9&|swl3jseJO~MJhpY6qi!gE| z9+vh!56VcmF*~uYnwS<u1!V*t3?(V=XEwOs({Q0h_Y5ErGrs?gaCCA>sLY-uVx6X7 zOG&<L;|<PGoYgH+N$u%<ut~iJ%4VKAQ>tkzCOVzBt2+8Ijraayt3p3X2QMEPhl>?u zk>)EV$@JRvqZGYF8;y5lUB{cu@;sR8@#eZr654NQX3b1OLi#dY;I-tphrRh!H4{as z_0BW=0bR2L*Xk%khdanD)QjbApX39ofoFLhUD;uj<P%b-=}X-$zvUyM&FE@Z6`{^I z4SP2k(%XKgKc+r7EH7OL{QnFG{qz`nfeK@c6ok;R^<|W_mC(Dy$XFK@I4M-N4G!@F zAG#=FE9-^|2<R#0ym<whV~mOfS_P0H4{l;TG;m#f9V|j>j9xAzj4a7<!mI+_8X{vd zP}lkibwz~OluBNR*o<{yeB-=JR%h5k%Iv7bN+er#(|U?&wG?MwvOvpTWmX;$CkUk) zO+&%G-Fi60`{mKYz4{X^nUil`PvtIw)03wt=uIQJg7Mm5i8~yLcZx2Eqg{c%XG}TO zJ}$~EFRv*78pBH_26L_?m(?4tYE;W6Rc<}DKKk$(66=ZUrkJ;_>BCG3-5KIJxg9<t zexflj9>aGaI%VLD5TCUT6ISPWv4<F54xdjVUGGATJrT@hNNy4SvL8YtYIYk4jYnvl zV?oY+S#{bk=U@CW_g#PMW8uHo@W&$XB<Mp)Zs^yW4KQwQg@KUM6{+xqd*qvfmh^9` zZ`zN@-stISD(Uy?8wVXt(cP+>Fkocse%o*EM{qpz<r|VZ%rJq^;4w$Ceq$q7N#(IR zd+oR9!%lujNm5%q3ylv&YMu~=1H1yWs4%Y&EU!6(3RC@^$}1Z27fzLR)BeuYM4LY{ za|!uyT(*fZ-&RVP;{>fVYKEM6Z>$n2eB{y^&ip#dF?-)yb*5sKY0QJf40>r>kEYFR zxSD5}L+*^KrCG|IiE%m<HrqSoj_R1ad;P>sDleZhb3`~GeMN(u@cViQ4G_tt3O(#G z{pdXBe8X@Syk>%YmID4P%7QM<Q(V}dGt(Z_^O|4kkchPl{%mGxWKg>OWO07&laPg& zM~7tb(R#nal4tE*A3MfPmU|LOv-i`o+m7u#ou`MEyx*lhaRvyzPJcv;Uyq1LSrM*T zhwY8M6(GFU3L&*cLz&J|a6m;nl(POye)XGDKxh{QRU<i0GQ@K~F(2Y_o2NRxYw)pd zf#2OfjCA>;n5UzmJRnR_W7X+5?VB5Uo>S2h$K3zv{!Ip9s*OQid6CqL2RSeUF>gHI z{*2H0X*!7MzBAA(3XybuNwr~3(|)cj82K#D=6+%OIeT7yV%3ZO6M$J4*(kFWKkkPZ z9w%0epx%A9@6S236w}D5NPDN)M(n~U0jVl{a&&0OV`@B%ZMy$Q%+Y?N_Pd*h{pZWy z8h|{5F23cC@-C?3PNd|}p7o!4;bNV)6}EP~=6}_V`jS|vdsYY|4<WY9Hg^)83K`zg zC=fSPDR_9LM;4`ZJp(pJ^}K&DSp1u2MSU6)6w7|Q>hiYR41X|gD66-OOQceoArlI2 z8Z^63YN~q|^z+FW9n;5_7Y}_OvX~M0b`may3%tlsP5pluj(=?)_BkpAI*5k;<}!LP zWnb37U8(SecPsKISIutCd+Wfq*fZ;<8d?NJU}O)#@wfha6G@S~-5XQQ`*vqV!;c+< z(-zD)T462YvNhg1;oC5sw73Jaqnp0FHPruua7eA?-J?fQhKXQd(eYuTLGpyol)~a@ zV^y1iaXucst)=w8T@GjLnW8Cos>ls>%>V8LE|~pbGgohZtW%pkPD1`rHj4ixKwjnj zES!^-aDW5)PA6B(?tc*uzSc<EMq49Ko=$QXY7{Y~_?}|owm@6~x&hO3ELk9HG4lG} zoowdMh69Y94S~<~ixTzh@2dt=CJA{_XmCsEdT~q?|Ly+q@8OTfBEPBL$<itbkD-+V z#8(*LX8X4Pm*D^cTA@*$HFucn`qnE60OFAf+g(@hlq@E;R1Mk2!%CkJ7EyV6wl4jX z$TbE!JFS@7lnalbmi7us8=m*=Tl?9Q>YQlhnZZtqMx6R=7_zCZem1_OWpVR=5RPOk z0b)pgkRwbrXEgs^M4{3)?Z>mo-vuQN7Nj*Z6H~z4$A<9R+%A8!D!%{2WOcB9z4d~$ z?$4%vumqmetv+(EZtb}aZf4c->1!;9Xm-du!X5{R^8YfNI-1AX@@57v;4WrIiXV9t zey8FJaw#fG52-DiM`qlCHg~Jzy=mu!2h|EHj@VX5ddSIihw?YX*m=2<({;nEkO<&V z`fWhC2%_tbJ|ifyu5?v6%H%%?2k`)OTM>oli6J9diDHzDuXB=qfXPaGI}zO5KAA=9 z<T^4zwP{opbXViGtCEg9(RX1l^9|Q0$@6K8cY=wk?_Zy{)Umq>Yaq|=fgZ?)uwhu~ zs%MX7%UV};{}<u#CyM|yT%!ZNdW!QqloC+NvHMr$)pl1)(w7gvls@Oc=lW=*KQg6^ z3N<iejoNQ&;V_AwwD%5`*fw-76Y-u)N{}wAH1h~!xD7Hg2M^d)^A#K~{x8F!4A+^C z=Bc=K3VK8~vNXW<n%bFZ#8iZ=Z=yovZh-kZ1=tjJcM3QnGv5=sckgQvxoVkuJfrK9 zPMdv4``I<C=E7t5*01-{1dD~@qxno{U*M#DM*aukux%L@$T7Ry4lvi<^XRX13|c}K zr!DWZUnsBgdeD58sG^satSlwoiTL9)K3sj^0NWq6zGJkPE^VF6vbcit%GS_M@fZ*q zH4_0a%~-A(o|f%@|6w>ZHiu3L+DCHeJEUE^Hx`U@<2)bz9gZuB4<bWdMHS*U3#9j7 zTL$dUa$J7i@e+5;Tl`eXYh0}H^CG#SO1B{7%G>@?PE+r1h<LiNmUdy#e;5wne4m=+ z*>UwBmeScUS^TB%DgU_@Yn%BK764-ubz`Sp2*460h7>)!Ez2u8{rush0GWu(8kd5H zAZWaz4Yv(($!Hy784U)Z!Txzfpu^Bu8^On>B}DV7oe-%y=}<P><|Nbh;%8EShyMrR zgzic?pJQ8F*=>zbwgVwKiVXjBv3e(uIK73;Y(CKP^0x{_kqU+q0dNpA5(G|%GGoAu zzF?yL!cEhP61Mw0bsc4eRZ*lkJS&4><rCrMB#I^GPB}DIdLJq)D$l7akF$~gchrRE zmZnRQ7kwN_pe_AtNBHbS{)XYG#VI{5A_nC*gXOvCj5_q2%9jeo9M5G>DL6h*bgZ2q zDVw?oKsSbCEG2-(3SpEPkXR%fON4~5jfaqGzqz1q?7LAo%28!mGRcmLim^>2y7f!7 z2wH83{|;0F4Z_%hc(HwsJ>7C>@PqTVI}4IIwe?4rDs(cG>>d$Bc_m6{S;lOo7iOw2 zT~vJnqlf6bzyqz+l3nhH(){WTaAO8j%1>rl3J)uQE?y%L18ta)Al3w>79py}015?R z!XSsSW@a*5CwEJqbmP%_jaGc3DqZ~KHzmUAU^^JdL3F^-RyoC`*J&S0b^3{mvNd6^ z@oQ|ShfB4HwzO9O{Y-%ByZy(xSC9Wl-$)Sb1ob@E>r%LoM2<ia5To*1p+db;I4>Lo zmIT0Il@Vc#(8?b5uy7Ty#{l&#?6aUGv63Xo!UwdAr1-|buwuQ9Osee!<QB6$p$9Zs zbbwO(vD3n^Y@l$wR{{5>BrWWtf>O9ApK3nIEp4cJpNmF+phha`UFDi)jh^OPYF&?i zNEs(5=f<*4Bz1M2AThon)JSZr=;LZp>`lP;s1R0#*$Df*CxixEw8h)FEzKwv2adnV z*9uS^alU7pkHGU|!AaiARo~R7;#7EXA^Nsj+ifb8``M31%GT$&-J$&oDe_8~Y7>{7 zY(Aa=vZqIkPmlKnE*Kct29&65>aM*qN6m)tl)b<Ghp>F4m|3g{60|O(`ETPXV3g7; zf>rx2+D&|=Tp!NcaKE0+<w>dz#SAvYu1%3JI;_=pl+s9Rdqf-Tp+()H^23&uno4%# zSjD$su+FQRNR6J1tvrYCDNWEb+V}~8<Q?-B$h4)Ih%3u~M=5uY_&l&{Jd<mDLClL5 z#6A0^RViYc5z2n>rIHcKU=)f3jIbzVsAi&OXQ`%5_h?-9Cwu4nsSm?%tA(uUL8zM) z|7{FSdu!pJB0*0NyCgOhq^2k|{U0AvYVfj+?6(QCCqnq0DZNjH>6r8s`1KSC3f0@% z4NN=Mq}0QXUftas35xqto%uzokfE*#L^uA_Fiz#^wH~H^=-<^BZr3nP0EeCPmVpNG zMxN+Ix3=80x4~s6rQ^a{81)I!W8yi`2e42L5X6!oRBA<m`h5IzQGG%{XXnBsG465C zh1Q{ro@0)IQ<XvWtNvknP`MMBY7#W!jT}v(yhqR*d^M6k-#}vox^~fg+OEPdK)`?o zZ=LErJ9zpba1@1s@@fKP^KEJZZ}|;hbSs+1+a~JM?r0N7^sy`Ja5aQT5KL>pL9cR* zUR~?snXw_auI1bUIJ<-=6tY2lSn%_3fyU$p>IQ=pP2;!b#tLP85Fw<0N(f8S$ekzZ zgm3gX$z=Yfh<q*o0_DPj&>=7Fz)}RE?4W6Oqfqgn8GSt?&Iq7)=6-09zCMGs{@@es zAvP6+S;p<zu+^femN*sD-`^taupdtKV_d-v=JV90v+T6w<D?UAJ(DtvlXQ%*NBkcd z;tWy`Og~?ncC_D`Z|zYwN3H*z4g)j1Z~A_Z-;hOiW{vk|!kNh2Hvt<#+~8pD*@YWP z%I$oLeWl9}F$I)}nKCCrcwED{&z0j~Mr1{wzRrf-R*N*2)zxla#Mo*@r5H6#Nw>Ft z#%t)!gWw^UvPm4NQpS~dtC*7K6D3}qM+oWf9XS@eRTg_MUa6nbXz&er;v$#oj7!g- z<y7gt`z^tfVs_ouH;f1|Hp3EV&x>f!6O<ac&2}MNO#lP$uhUoR+@)W8OXpCnb66${ z-43j5o;esa?-1T6Q?DX>suvYM+i<;TRv^K47-mMYgdE8D0Db00HnL%2V6O~&qxno+ z4OaY2<5Rl@wVM@9uvM&@n6q|D4R;q&scL4sgqkZ?_GbTzh~Y)gw^}YN5()bKR>#f5 zl7I@r0wjiT7<5plFM~=gCwiCtWk(G*y0{TARt(t#>d>9!w#CY-`G;s)BS^TW5uR|m zoBUuLmSDKGp+H=W_GiF?X+!mCAu1XD8YvKRaSK$XRzlVM=BDoUS5xoDs<aliDsHx_ z|A<Ujv1vizcIOZx!O#G2uHLCZPXd`nmgQgos>UJ*VuOQ3$07=q7ez{yVSZpka@ul= z{{vk>qQ8P0mSS#D+WU=0{aw>3C4x3^fL`|Ev~*Q9FaxhmU}pqXHfDibuv|H9W={wJ zZmlW=S%o~#fgBizYsO|g_5&F(1GwErz>G;{RbIPoRz$S00eGE6Ug1Y>XLo*QYaLw5 zykQiZe}|d{8y`KC#{J>P4PxoJfCnhz%asCGSmgpRf&%IeTVfP8I1pLBVTla^qZQr% zXuM*RY(=w`MKf3cA|Qgu=u(GEDN{ILEeKt(jYd7ZMmOfdq&-@f_JpH_=Bjd(RTu|s z&H->>8X*J+YaRzI9D#41PUG6x5GLg1od85we*$u(r*dh4d@xyfj%ul%YC_H40b!JF z<<?d3-d<AN=+$RX9N#z#<<LBUL@)w%l~U9#NA%l(rO^PmCXfQrpaLj>2Z&#Z1=cNe z&QNtli_TSzJ_C<V1q4kb%@}4WIAh!W)RgYfT)5n%1%eRB+{u<`i4Fi6@Ph%UW^2~z ze{c9~&=#8)ID-^0RtFPN(kngFTV87D)0^au@04Duo^9H$?Mam3Z+O{xyy1Erg8v=e zKS(v%@FiD%eldTp8)z7UfM#DmHQ}`rLg*e46F4YF2^brW;wc7J0f1Nh#pO<gMxvEc zGYEo?7Gv|N05eF25IEQljm8B|=I~BhfA-bf&6R@A9bSo5vmvnQoc;jNwgzi(hX6OI zO~3#T$XGii>g4KJJw56{2!T~rQ4L^3*|u#9zi<qvJsQpJp)5kRJwitX*Wk9d9;Vc> zCPgazkg4?C1-Qu<=rpED6ab&$pcs&HC=fO%irm9%Eu854?QWDr>GgGmAOL|Lf6>h! z2?AHxgAhRD2S#aYbZp2*;`(-9E0<!-K8kCOanRmm#SNPcFoYCP0@Dt?xh-n{qh?kt zKt#ku;i1aM43Bd;pL5uwQNm46-cGT5`*ITBXV2{COFbr9xBwwIgSCEEI8jW+1qwxx zZd)1vT(V&vuU{V*-S)mid3EEYf0Y6=Ao3#53|BCN^-kk<P3FgrZ02?a_dNqvkKg!> zVoOet91z0K_J;8AIkowTa@Yhlm;pMyspC~}(<!?K&rW90PLXwSF0%$jrgLY1c4$wx zuepY(N~82#+ciU6rx@`*59?1p@#F504FG5*Ms#$+b<L#l0U?k_$E7F6e{1`mY`soe zIc?)JwOsb?bW;fRQCH(NR%w=&Qu<!?Rj$PaRKUCDRwM8Z|DK0iS4tkfhW`e*fFL*o zjPu}d9zE+6;pN4IC1~!XfnIiwc9Ji7ljkt2M$cJpfgJd4o*VIP_j4#5zCahNx4^<x ze%1+JKS_mDnrn0o7z#ZOe;Dz4XzcD>&jo_|ZRvU^S{7*O^+w~x#zO|UcTJb?foJt4 z7J|A)2Jx!Q932P$wso7uOjU!1O`ri^_d_TP_OV;=G`Cx3FlX2#S?OBLlh1p--+Swd zN4(>0me=+N@d;+%xe^aWP)2c|H4A9C!n?LGr8%H{6jumQTmq<Zf1#l69LJ>sc;dT` zU-ymo%r#n*PGFW!V4=-JQxAB_-duvO#R9m3D=-3Ao_(tN-I@J{vghRg!Eb;S2m%l2 z!wx>y7S#BSkNYDyc1#-trDp3PU_HF&d+DEk>K7;)mE;1sxwd@(B;50#aMZ(hT;s0! zh%tvDuxqZrBI$Zhe@F)FbQh3yr*1p0eXnO?1!VQm_uM9DdejF976SVS6eu8<fF(;p zaFgO{!I?7;gcP`P<prAo83zn7f~>#;WJ5mGyGHD!tduHOrX+R^8i*810C1^UGYn2% zyio8&;l!sC4nl|a;LzjfgrrI*9ASFoDb%P(uq=^sM#z;R2<1Kyu!iy<*q43q10#Rn zz=8)8E^PQP;>3y<|1)mv_%Y<jk|$HHY*}&3Yt}w!*f7M1j25CFm|$tzv`cH=h@EDA zl9&S63TDr~mLP%c+X=iS@kZeH?*_t$A82skIPwF~%)Jmo@r72dUcbr$+fvqRmzuv3 z_`q31jt!oNWPD-dN&y){9y~a+;JtqoDIr2ATq5A$eS`^@0GS{Ey+jjLgb^D<3^5)@ zFCeqv03UpV5^JZe<kA5vyfOn#G}(kx7(4C6(@#MKHIz|Dnb^ZpN;M_bQ_MVth!R#k za0MG1XwX$`)m^qDk3IVMBalG~IV6!q8hIp=Nh-M{lTAALB$P~Iml|gqbR>Vn11$vb zz&H^~h?-_zwKo4HY_iE_8=AU#vm0>04M&`D$sI=vG#507)d1ya(10~2MOfB#uZ787 zci-huj(7&L@xlw}t=ArW@y%CXeLyS}LVOQJB;Z9E9VlKo<%BoH016`W!Z`Jy^d(Eg zG;je3XaJz0O<ZuOQ%^ntMWTOEB_cHeiYhwAVpJ2bkjw%P6j0-yef}9Gw9!gCEw$BJ zdo8xvYP&7B-Fo{ixQk6`%{QEpicDyt$)EwNtzF}en5dB%8*Q}ZmfLN-`PSx}!WAdy zoY1Uu!4+5)xD}3HnHA_s*Mw;e0pB#>ody~pieRITw&&gg@ku(LfB%0$#2!VR8W^gc z6`O!4sYbXw|B{#Owqy-7Q_z56hPB>`!iTzw$g8ivrpVN=QMuR@79qHzEOaJ(;4Ew5 zN<B5zRa<>E)>&)4HP>Bx{dJJzmYc)5S*i<8%<VROO+5;X`5L`(r-|>H`|{iGzW~z- z%_1)pP|*c8^66(vXfc0$k^&A}vp9DXa~A4&i#obqMDMv0fGZEZH!`P;7PvvE6?;eV zs2v&6;59P0dcXx0crX*K8|Kur&m$5QG_WbINUT&;xpGxj2*(RH@x>c|Jo3pazdZBJ zJOBK)*lqU#*$RdhKnuvQt9nbs^ciof^U7B5y}IqzTbl&*Yg~Vva?(QQz<w71ot|A? zlcQP_lBxe)m;~hGxWy2a2#qxAZ;#qoL;_SYlYuT}-kBHx!(+MujAJ$2o0$%Xa0r~` zOm-dOSx-X50o(QJM8O)`?w}%!7QLt{3ozIQq@ytC(XfU#yde&AsKXudu!lb6k@Uy~ zp3fj7OV~rk2i|{i!PGeGZHO~dZEz#Se6cBg>&u(_pkadL5Ue5xYe2#Z=a$34MsW~R zA7@rp4n<|GV1Ij~MLaizM1W2M56nkb2<4p|RPS`-_(0lZW{n0+;Se5})vRiDliB4e zL?jf736pX{q7h31Qh`wjl0_rIHSvd@{3IwtDauijvXp<OJmrvr_>Ind21}zs;st}) zM0vq&|9tkk4ZhB2x8UHdeaU$rG=kYT^cW#<9{?la;Gz=O%u8|HIcCK!Myf?Is+t5c zPy_7<#&0aHo6n?P%TD)!)Wwn*2M~elV3)|)?W|`aBw<lZI7wmg?r1&81+tiy2&Z)t zmHzxEKm&g&(18-Ppa!*C5UX@0BR;?nABd&HzTq$lx#o$pIg=FWR>ix$35&nfBAv`( zr@zrpIwldLT*#QX#YJpl(PWu{V*07jJuqT@a+n#r!^)0O@Efs|UJ)EX10|?4c8lx~ z?HmcTcnWPPDU^yZEcp~;CBrI0C@Itqs@1J>wX1(#{VG_)D%P-MW;30+l4!Ox0H1QN zVG{o(CoL^nuf*ZfeEPCtF9CLd_ib@Gi?~2VHt941_$g|1S?2x}7cn$eEPyC8f#{C; zo5kVueyJ&!222pn7{Zl%o7sdK&_Gl~cJQbk3ZYL%$SZlyGbvA%ii>(Mh^hcDI)ugF zSaW}?+uicEx4!)?aG^A%Yk0$4Xw}jKR`Jlbde0k#i))!K8pSkGahJU8s4tO2Cll<= z978A|{hF0byc{lZgHj&^M<*QMP`0pwnjR}p*PuK6)Kwyg)eJ_9NJZL;k*IaTBboZE zNxs%-P?-Q#WORiK2yceLeK3S0Ea3@LxWa!D9&WizV5K5HAOHc7!CE1Djki)%d~>Di z{}l6uK90gkuY3)rFfU*PFM>`wu`w)p%lj~HatC7MYVVD+(=gR=hHN~|!GmI%ICD(l zLisH!7ucB-5P~SRj|^ICU0XERHU$y1RaT9TIUOBYxXflgGn&(^<~1izY#-3<0MLJx z)(13biOoH!6Qe7)jH+p)Zpy3PKni1Xh(Hv94cwmcVOf;sMWvN}bmCrvok<IdTyM5g zM>zY_1bn~(6-dF8p{&STC3ROM5-^J9SzxFf?I~DbffO|P0#4$Y&9=TZu5+#HUGv&9 zZZ>jyw4_$Hs_wGj3tufyTs}3e_|JdXbulgaI%pZAr=<3CFkhA_<ZVN!RjDcNPEY@* zfzEQT0Y!*G3SLK4C`<W+?zHl$u{<;_^UjjYm;fe|b=5@J5o%=aHNXQd@PQM&;JJ1) zoQo)IIxkmdLzZYD%L_%iQg=6gzHW;H&0QETM+9BmWI4cSjU4^EFO)txGb4Xq={>fr zr}ce_1Js~y{qA?v{;e{AmwF;eI(5q`Ji-bsiHKY%?JD#`=Ccg0^rbVs=}v#TKY#sQ zg?pIJ#8%s7Cz|KDk*}`Iw(b?PJEv%KJecO_TgjM(%o~?HFf3Wva4mgSk7ydA1kiyR zKpkp!>uk#J{@Ly1Iq%m>RRVu2JOUzEfT`LdY`jo^Jme!U`N>nBYEqALmKN~g|2h{t z>k+54Trpblx}^`j&(`?f1}#$bEGs&L!?t6{MC2iwX8<`^Ra*(bWJ87;0HW?YQX6UN zc$;YOJ~yx>WxIH+Xyr!3t333hFa7CLzxtDrx`K>|y%2XEUK0IMMfHE&^%Uz8ucvn( z*~`vFQK07v1K7Y|3)^<aV7NO8AHYa{DvN6zU=yyJ!QSzm2b~tqsn)3p9tv&Q;Thf$ zz(Nlsm_#gC4Dku<S)T=7AO>cj25KPoQJq>foZ3Vb#FbdG?b+yEoatp;7Hu5InS(hL z!AM=ifr!_tKt|kUm}h@<#7MZqPhCR;=l}@t-rkXxQT12w{a1kDPVUeX??C^BB_Ws# zff*-N;09Kq6<#40X5qo@pQRa@2U;C-kqbA0pNY-YvZ)x@0UG*ATMND*`wfU~^$Bh@ zMp=QIk)2Ks;8|N)Lr~Fx2LNCIl2()f9|8J|0UluS86UAk)e3*X0u*MF6!zO3Y9S?7 zq9tA;CW2K5Y9GV3)pl^x=Y?O~h+c}3p82WZN3o#lz2F7Bq5HvK14z^)ip!7@z!33N z41FH>_1~xcVSe?VAllp!;#?B$oT?q)QxqQ3ECfW%4=j#gCPt$)P9rr|qYiDNu(bg9 zIUI3)!w7DjEk%D3`P~(Z`HR@?Rr-~k3$h~XLB|C88~xp&Ld98w@L)Od|6vgNA^@%% z&6SoB7UDY*-_9xGA{w3}Qbi^i-9B-}Nm-*qJ|sj&q(p)XHhNh0fFP?}7ATTn=uKBC zqF~s$n4q<x3l@P0yZ{csp&eZtqaB9q*<s7&z&z-pyFh=#CSU*>=%W$<W6cp_spZ^i z4J3gfql-w@G8Wxc*;YeNBvUq}Q$8hB_DDq@5k`VvH$F`$mf`s25;-~>Dr#3cl4KFU zp!{soN;;lP*59Rlh7k<G_CQnvtUx~MV<7HVy8$G;1zsd2An&Y@i{RTrSe3OcWmFcX zVIC%8CT4$KOl1qKixP38rMW{^mLMr=ly#+`If|qzn%z2%WudiW^S%Ebjv0nL-l7q# zf(Fz>eVJP-yh6IofG_Ukx)C9Nk(%%Ur9fucsyQK4zycNs!1A?a<0YM97N>C@CvrBW z)XkXoeb`%upf{AuvFT3<Zlzr{8^&d(-h|~UdZvG!v|o(~58I`sTiK$Kal{5B*%G~k zr=^<*&?P?#plMN=AqE%%>JBpcCDIU`RRs@2QekoisDKVAfnMO{dEl0GiNjsi2S_GI z>RDy>*=2?#>ZxOA7QrGEn*6vU4HBo@mF5Plf)1wUPbt9NfdCEU<R8W+PbQKu;tCS3 zmJ)vsWnWqn15SV&D1?GFUsrf&f&M6v2C0xL-GMe|3*>+&dLvdo|0vhp(l}x#X0i{o zv0-<5rz={U9QvqVbkE`x8L12aYF-`p5J1gffFZpneDb3p-X(noWKbp|UlL1E?&spo zh*ARRkmjkL?kS%}Sdj`F_9!UUO^<_uqjY~!+(%BR8m40Eab`(ks0esmSu%?ZX{pK8 zA~^BX5X@vb5rYY=Kn1Aid&1^EwrCOBW{l=$s^Mo7{+w?LKvijyG4*Im_NlGjDz4_L zR!wCl94SpM(}+puWXhFwe%&c*=NhWta&)E$m}D!0rk)JWcmhWEz!#>qr6Z7=%qV|= zHDnM5pedRHVqLBiA+~8=LXx}@B#X=`g0TP)>}U+#)@bS~z1IJ$z20jN{i%lmK>*y| zf=-VG8L9~;YUxqv3O4GpKI$Tvq{pqm8?nJchSB`#Mcl!p>5PMVwp9XXfCHE*xUOia z&So(B<ZWKrUeahmKE(>*D1SyEgE@bnrQ)m1&MeK=tkxhLsRWycdDswWtGg&^pD<}S zq8L{~slomdcRK0|Hfy97T1w6jr4p8;{YAAtlLVd4Ncb%Hc`6Vdf_s9ixW?z2mh0ag zVhQaftIFvSNWeh?C%iJ`EZVHx&Mn>6Ew#9r29!+;Xdb@~LB>)Pl{g6QQD=WgBC2H; z?4oMdNUq`wVkpCUoG9SHbA+b9P3&TVC|kOvJuZ<oh(HWr|3C_e>Zr1)$oAv_{-nwJ zin=!83dO;1ewhTyP_5c6?bfdC-YyWGgxsAAmUvhQ1b`6$5;uCIBYdC07AqPatCVgh zl`5@CKJEqRz@*0EqM2L}fm?qLb_A0BYOBzU1z-RTgzm?tY3cf7JN=j0Vp&r$;m;kx zoVspcM&N<`=e**s{oXJB=C9l7F7_T*0Prg^<l&%hM)7K`C{EnmNGRf-AER2R!b0x_ ztbn7u!29)E^=2EUUM)umZ#n&-2Bm=bf-ULx<Eh?U?Z~K5_FN@JMeBe5W}Plr{XC!k z&M*zvunn(8W?+_;fJTP}Kqh?H25hcXy2A$)u*zwrlNSGN8Zt0gHgCc%?c+wO4mj-O zZiQ&h?p%}=X5|1!h(z(eoH?XI-hr^_jw&FEtzD8W`kL%O#;H^oo>aN6+sf~7*6$79 zF&^i!?Z%x#@vxR~!<K)n!aNLc5%)r&B3t1maCI&4R|d>xKJi#CY}0yN^h&N5MeKCg zaZ0URrh3HomQw=6r5cPt=!S5(j&M<x@GzdRsxBe>vPjSg!vw?u3&gLT)=#bJu`cg2 zFVn2_NQ@(pjUW3k_85Vfx(gB8kscDR_$BdmE^#BHqZ6+q6gPkE1$dkeMDE`dla0`? zCcj11+Mj2*OoMRmgt*EDqyi0iEgG0|xSp|^rttup|1033E83>*8y}b)FQ0!(?Kk%_ zKnJuy6KD{bClP612wWs&az=w5F=cw>;VQ33Defavb0kOcHS2&5;D8&2*Xyao<vyI3 z@)X9FXabmn15|&2*Oqb_lj<*)uPVbRG3s0*qAV=4&=I&nEid0-#_T}<G*AaMRH_m< zWgnn^7zYnA^(-lLHK{l%u|%Kai>aSQGp#jabL6HS{CTtGvPC#&YNi?Q1@Yes1i?C! zu{)dbKE^Y-&U4wqllrbMs~wn5Go#TBLHzx*Q13Ng_jP|X;%uCy%l{^*)&eU5JBZI7 z@S!TQ#VINiJ2JvrwBt^4Mr-ub&JUtp@nKb(4uAg!{y9Q4tfmM|0r-M2OMk3O%O(le zrU@$*3a>A{wd!Bi_2SKsTmENP`?YTGHg99#aDf}CTtV;dYzz2p2okX)DD&|;v$2-r z@+K=)Gi!eoi@+pAZ#JhSR$wVwjuDxRm_Z-eF}Djoz+454z)GJsYQuB+4x(GH@td}> z3b(53?zFzWz(V#@Z|Apu?|1a^@!Yx6zG`Dqy9)u^k!m(I0`u7-N3~`~_JvCFRco|H zOK{0l@Y5_>ZZ8aHgS8Q)XJNO70<aDUyn=a~b~}H!G%C~Pi=ysp4_JJ!tNT8M97mxL zs2zUuH;(7Hju%`G+u}F__|66}O<oo_B)2sz|MycrGlMg)vR3tUSGR<3bOBVcN#QBn z4O#zo1ZtY|gz#a<dhL0i`1pn`Tbr-nx%Yc#870YgALytiRWP5#?T*hmo!2><6*TR6 zAisagzy^HyWhHkG965q7wt_b{BO_}AlVsyUc%)Xggs%X0Uj!zT95{3G9a2zLhTs8M z0E!;Md879!hwN&vc*(Z-s=m0|9sw=$rzWvMw2qmb$GWV~I)tUf^i&Ur?W<Y|Iz`<& zk|8<KD!Fq{^w>?abWbvMTla)haYf7^(pi7GSX3*-T$<^uf>?K619&d@g1L#OHTm`< zd(Y=vtE!q4-r+R`EypjOG@hK(y1TzSychozhEY3cq!qumfDv$NuaDRVj6)6(Kp-jh zz((}2OZDP9?_@`KluvP_Tbn;;I9XwNm3X%8sY*F{LlO8N4Vd?*i@6AkdMdN_D!YF+ zBD(l1vxp_Z0&Vx_o$7VGzdX#xybt;J4hyyv{4f#~cEijA_56FlBXN>9w^t&16F2#> zPcoE8`3gX~b6~_)CydMgLpYlzrgOPUT*C**B?fSO3WT}0llgkH>A349e4ji{&$nGC zWgSDj%(uPUzkQq4VtfJly^q`05?6l_b5`02e1tA|!8f=AFFHnxz`{>4q`wh|{>FA| zID<+MPmR-RGMO4|yr*}3TBo+Dio8s-|8j21HL;+5LfZCO`ZU~^zUiO-&0bcXYab8* zK?{_$Qft6CXh6UsR&_FW^8P)OM|VkDb<-xj(yzcKOt}mS&*G0o9Zo!WzZ`!wa609C zde?V*8GpNc{v$o7FKc-|(EY(I_d!C0zI{85H%u$)m%sU+ztsFG-@3jLID#(f?kdgx zwSyjnLbL)e`N0PMMN>B61B4EN0$1o*fdhw-0#^oXFwx-KH3h_E$@+H@BSu-oI9{{% z;X{rg1B@8S5wT)Ql`B(TBd~u01O^%-4%IxA0%r;|Iz9C4Im5$@8A^sKQ33!dQZ7rG zhH=V^7YeB;oKSVb0V~!X9C~!^F=7A0SFjU~kUer1ZQ3JlSO{1mWx<02Y&K|UVC@>k zjC=X^_4^laV8Me47dCttabm@b88>$P7;<FElPOoWd>M0Q&6_!Q_WXYtbZF6|NtZT# z8g**bt68^pjd~+7Yu-L+7<olTixvR_00|&t14Wh<Ia>RsAxDl6*H%*GNNl14>C>+z zNKoB+0&hvY5%BK4L3r^88XPcx{s1jnCZM%<56xVBb45hZ7ja+2qzeNH8a!A)p%;eO z;DfvJ+Q=flh$F_MZ$5u8VS^z`8eqBMEF_KqXdIAfCYw^Y38$UV@X05kgfa@nqyXSz z#ipJ@Au6e=y6UQ|wDL-<vBoM(|E(jKIctJG+6n=#2d<#YE^9bS@U<qLd=knirJRz= zDy_T{%Ph6rlFKf={1VJC#q2URk80b1BpDvq4G7;_7@(dDJ92+8ITPGzE;i_(i%x;+ z{LIc9?Y{d?yz$CI&pcY7F+tJy<eRUEMeMup0ulJ@Z-o^sxB|c<hbZR*0+d{`uRLd~ zO(c>AIO#$Q@wo;X3qYWO)<bBjDJPwHA`z$)i#ke0rd$jIs;Q{5%0{lZ@+vGH$ug@) zwBm3hmnDciLx_JPK^2wMF}?j3+;GJmm)vsAJr~_{)m@j}cHJe7xNE*4K!XU4KxR$e z+6(|0Z(3#0LF97qMmXZ~<a7VJKCQ#fy6w6fw9xR#Lp0I#-gEC!`X;?kze@|s)B+0t zEWn5h>S}<1yt>t>%y}OiLP8@5WUf_~u4&+c7%HH(LtKAB)OAD>gEA3Cqk?U5DW`~q zajF?Ps8OqBnRON{9-}=X4k4|T0$TyMl}N95#U7jNvduml?X=Zio9(vUetXI?t)Vwn ze0S?DlixI;c{m0?awNIs3U-boKKJ~S;XogTIO2&ZR+Q0;GmdoQN-s6YKTQ)Vpa8E! z#cSn%7Hog;ObG{A^}w1{A|}I4)ZlQ0o__{f=w65VRYjzSEw*W7lf_Z29G|`V#|h$S z%i0Cb==@WZQ->S+=%t^Y|N82!zaIPSwcmc-*o-?f&3t<UqJ<&8X;t3i##!eBB~v0? z&xEDJj$!S%8<c>E%R3ZN_1L=@KJw8RemJ%t{(OHdQ<~yjwg!+06MSwW!Vw+e<VClU z7@;BGD46PEV*;3Ph*r0{$<IV2w4t4-Xh##4(xMWhW6{V)TLGT%b_6Z8ObdBM>fFh^ z5kV$#4~Rh&;t+{gL?a#%iAhxAljH`zd*w?CZE68Bav-N`$O}1j(ct?Iwx`2g2aF99 z6#jqo=eYhYs!<pdAms>XIge#dQx*_H8#>2^awJJ*tLw=3a)73L4dDYD<e+Rs00L9+ zY$meHRS9`DG@_&^Si=9}0t;RELa1d$hFziB@UDh6wrnjf45^E#4zxs5o)VR*ROKpJ z*-BTwGD{n25ORj_0=w}h6TW%C5ct*{Vz_^UP7bM%!JdOK>MSff_FEiy8pl8M_z!>q zjL!fG*s%k`F=U$%f<oBvDF`kJey6I}1yLu+n#m?s6#!ufJw(D?@rr0EObUxu_#ziN z?UGW%(I%~?7UOB{TG<-V=RyZdgB}#2303Gq8QM^Xo=ukDGr>rZk(&jKF90nt!WMs7 z(h=J9aU6T&VlllqKQJb4jEpOk8J~$p$*oaRZM4)I6BtJvXp?~sfe6?Tv`4!6aR7ki z;OZ3603A$Worx6T|03V{6G!4MlJz83C1;e+Olq=OHSA;@vR17SxMF#pOIbl5T2`~3 z6|HGi>sr~`R*iVniE6srzGUDCYgm5>VBhHD1_lPsF3L|~VQkp_RB9-SrN?3b%vgO0 zm>&ZU1c4y4z)iP#g)0n51MRa$1os#)Gz|b5fV|UCD{`|UI3NfZNa|AE88mpJ5RyvK z9SfNzBdR<tS^A`*R(pg)0RSNcap{}`+m}bT9v8XERqk?`+g#_4tBD`5*DZg?2ZUXo zuWt<k+z`egxSkfSqze0!7?;V+l{)i0kV|8GCKpruxbd1b4VeWtfm7yfD`gY8qB!k^ z!EvN+sOYpn5MKX>NTqrxCyXr7Q)8<XNm9~SRsEelv&!2Z8IM{5AW|ribeARl@VOxt z@rX%WViTVj#TSVvoob1%2k?Jpd{fi_Ua#Q|^})=$@H3`K1*=RlHuJF1RIC6QTg}H} zDuMI8DS(9V0=hg<RCsC7PgMm-bN)*KA2_NyX|URMCb+3TiD!f9xx3oF5Vx4r?It;y z7On!6YXT+ESi_cLJKq`4dDiou`CPp+5g@L*(U+SxppL%D=A$rk#1?;b9A3l$Dy4)1 z^5b0UD414mrtwYkeCxZ-``Tq*)|d^T`*=DGI$|EA#gK+lE0cA`ZmD2)ty6u~VBIC{ zDOB}c4EI^#|2E%{EpGX0*Stw*5ce6`$yWBVncZw>t0rFaqU96kx~~EBa&=~M#1K}Y z9Og6{u=Go&!+w0;ASZwJrPC}jeyj;uY%00a-29YX2rw_tl5-sHBQ1kGNQBq9+Q6)p zwFyo1E2GVGw)X5D4AneCe%i1sabQ3Wh5G{Hg09Zb*7(Lb-f@qAyxHChCTJfZzBU0t z1|Nu1M`t+>nC0Nxf92Do$&0`IP5O+Hv-C9C_})yrTfXz1EKYxO3aSEugqBqfq^dcB zGY6<swOvLetPvcdFx&2t2cPGIa~<JbHyo?Z>ZhBt#sW|psUb<4$gx4*cDKJB?s1p9 zLCZv&dZqtK(A9m@2M+BHkceaz8z30C<tJ`H5mwUXejK`YKA&|Lkfxi4w|xcVkj!cz zizGSqU72nTXl#E11pfy3)W2-?S&JFAT3=DZmv+zFTGioH8@nf2VD^Asc3Y!j``pdC zicI){_rVwb@QMG>CQjRK7d`oJa$wFmg#=B2JP=8x^TqLMC(`CMETwg>MxMKuQa?ws zWQ88@Y*qe_Cg@`=F}Q(wTv<*EIKTy_0Cfz!Vzr7Kcq4ynt@>L}vg;Pkswm9YW)Ew8 zD|sHE$%;+iOv4dcU=D1+2Ik=Rh@tq-CKH-K18v{}JJ16^5CnrLUgqXy1^_qmu1zxG zO$dhN|2_ga2B6yrfbbH=@CK{A$_TwG=6}-7@ixY>B9Hvw%>m|UAu4YJj_`tvU<gEt z=?Fjs93X%6R4eMd%xCuRwG0keWJ{`AXyMX~*QQ4HY-n2gAQ#+1hmfSW$f`4PzzWtt z1K;osci<6PAOsJ?0PYYE^DqzR;2&B*5A!e+8Y2__5D#SlF?IkBy`c^lkr5lw5#Oa{ zoQS%XkBT@?kBlSfazF#>ff%F#ysFQnu1|4n4hMgOtkS#>Qov6H;0x#^58fbQjuhfZ zf@&l*Zve&tyY|f+Vuc9o@BXBYXQ&QWtdQ1j$JQhX0H@09oL~U=iH2qm!{F=;j0Cep zW$ph&!vszs4o|=aG9eRe-~<p+1J?lf9?>syV-DO94mI!uI6($h;U69_6CPn5n_vwr zP%(dqK^)`I3R)oL4iOGNz#IpXAPdqUuO!+?t;KSq+Q^4OItpMuz~xRS2S()+3lEtN z?*?)1nHUchsfpc=40D1`=;*7y+Mo^O;tF1XB})Psl#rtWOcv&^{zPvI1FrOFr*_6n z^~wy_TCWQ)>8ip`?92iz++gB_O?ejZYt(;GGcrLOcOVn)fG>yvD&Now@bMro;tmX8 z9r@5NGH@LOU@^oJ4&iYzv{3^MU@P0wE#DF@JwxQ;%H-(E1m3}y%tQmm;dIQ$A`K@L z{{?Fl%WeB|ZoQ-_6*28{A}fxB?xr>Y5~e^1N=_k=;R=wU0FYq-G{7C;kH(4s^wfXA zCPy!X^w0Eahr#?086ivna|?LDLU_h58YxaL*dP%yYpg2bGi1RE-p~LX0Whq=E7wvH z-7)~+a0jUJFVyi3*I+T2b1fT#7;L}*te`ksV->FRHLhU*;?g_66FgaI1VJJ~Y$-Qj z?BvP^+g1!YRsjYz;4k-t1~bwI2~&S!auBh0u<<|=@-!_7Ijz1nAtg&r0UtmH4s-)h zqVrZD2-ImbfiW0!Qo%}uC$n(%w(!jGDTZ`ww>XKb7(g1crNcHW<2K_C)Y2Zc(=Y$t zVK|$>093RfR{;*46ENs;9UmYuTA&_JAY8m*2fEWq=7253lSqryNQG#{=(2wyna>gz zgpX>`$}ZCS1T*_?PVo$r2aBNR!f!F(%`xi>5{9r1&fpAMU`-6vBsfvkZe|glPBf+P z{z&t{hVeA{&lpvc>y)uICkzaA#A?9eLy?C_6i}>m?=yN+19xB@2*VNf(Ey~OEoIa< z0|Qava7gX29<3l;=Aa46@il*BVGS<zNJo`aOVw>!#)3$$1uiO=qzD=Kt~tyE9Qe`? z$|-&@vd74+u<rBR^z$Ph?+5*}G0QJN9iR;YVF8j=H)LQl^JtK)!5lWh-y9T9|K(JX zT8rQ+RE5mU^%xG5Vy`G84n%G53~#fzuCX)BvI#h_Fw~V@4>AWVl~R9QbRRqQF#KRG z;qYC@<Qm)%NMGYPMb%UXmS79Ed!9q0E=aBh%}pvYR*eI2PA9Y?;#Q{=rOL}n3$vxV zkG(EUrn;0QCofDLzyXNhqIhG90I41T>|YW<%VMBGU*|zz%`|m#!TQfa|Bp3oiy8TJ zYGTtUr)A>2D$W?<jy!)%f;i&?_AxmPgBYL_Ee$eWClxSy^AT(S4j<t#v~dmG6<n~k z38J<&yul3x)?m*TZPPYPj!z_PspNPg1k%$896^w-h{Zr_GYMwL0;_&>HSzy6HoZKu zW7W+E+im=Y6+r8YWXCiBq#&b^L5r@)GvB8HiU1N~mRjKyLfL<*3hVR=i^f8IG8ws$ zXT9)S`&6qwR7lKFdFG<njH@#$wFxx!Fu*oC;Z<I%wh12L1J-d73S%5JkOKAfTYljU zJ+(E|(rne1d7IaHqr`it%m@~?x-#Jb2B0(F$8S&tZ>0|~#fwTYwiLPVFxyKpfe>+r z4l+sBSli%aAHaVI#^EF)Vm)IuR&=HUDnMr86#oLQW+yZ#QZr{)GXQzE8JT6b%EEXg zuJ+FENKOWHbdxhoU>%W{FovLlahGcU!fO8kMQ67#dUFS^!E49F1olyE|5w9ym-l&F z*o9wsG$N6f-1ctt?p5nnUP59B{GcQ%a&K$U$98ppdNqHV7OQYYk}*p%n;@ZB9bgL1 zU;+Fww7TmXFpkD>CKVb~e=}DKH}_hJ5%sWeTYr*t(M%}U%uk=ic*a#Ji7oe@WA`e9 zQ{zxEpp$kLL<W$T7-Ya3W#Af|mX9g$0bsN*R$&fIAS2R&kAE+Y4?`X^0U7={9?4QL z9ytJ3p^<+n;|_KsBm7_vT0oNh;saVB6FxbG1A`d+pp>nbkP%~QZ<m92_aA~64uMlJ zmUdnLp@bX58&nW5+`*SK!Vv=ClfQv527nVjc?d8fkN3h4pz~h=V-f#InF3{?mHEPx z1rj5!VUaC3k!{yS9U~nea4)#o8@(AL#sLBYAP0Y(R+TBR1&nzxR)LsXAZnZ0FVx`| z>UmKw;vHcapaUA&<mPUtH(%nGt~ODR^zwp2t9^`#=CDtEIWoOYac~p!W6@WMA9G~c z_gD>-S%=_(zM(U(j3WrZ9AqVb)j)qSz$RZ|bA@qs02u3_YU{R8*LwDMdaXlMmt2MG z$##FrDJ=s!wKg$qG*PwkA{@a6+>l2_XAbIh2W-F{1Y;e-u^t~Gnlr*Ghtm+Dx?ah# zF;<~PeUmzA)GxZa9(TYBY+0BIQD6sv5W#XU*1-x8kwzV%MR#Bv|N0^T$~sZ!K&ktJ z4eM0{AHfJ3<CVi%ca0jUb6GIJwgGgRco~1g53t&(`C<U>T9z+@tk=;7(g83s0Xmyt z2TtIw>6#d#dL2U*59#_Myuk(x`>>JWFM3%W(Q-P&dYSiP5deD!^zfSd!USg9v@yaP zIJ-G5*be~v5i~$BOhCCU6`e66080C`XB)ONg0$B$yPF^o1zNnv8^uP)?xst8Fe-oL zu+497%nvkEIpp)0auxBkk5?DZS1+1BgS8d^Gn*856WDhO22=(xNE6f0ochEBwk&_Q z*rlu0iv`YeDKzy$m-Wh6L&2`s{PaVUGI_A&vIyiZe5f-BU>*POxOUg^o<EpJi2<;i z)2;hrjtyV}r@INZ+pg=?5cRqqO}l@(2SWxB@ev+i9el4v(V8z-K^;#(1%)&Y!+V=$ zAOIe_3HG7^AkdC8Vw20-IZdFn1(wH~-~{G?n3;18Vtg;elE&x2#<%-07Mq1JqJ#ed z8IW_h|3M!?n6lq+Uk$?=1~F^*;?K+4sOLCSV|l9mU>sz?xP=!ZKDfvA{33t+KpcmB z6<Xkfp&TRpz{b1N%X?f=Gr}DreI4aFFl3<x9(xBSy|fectN#I<XVldD;wsmm#_P4u z<=nJwzz^2J4;uZ(`$8LcU=Dhn(f3i)$y?c%ow?*DRSg=K|J=j~-Y+j{!x7NrC7V^g zBYH4}n58P3V-ZtJRgo1BccXv7G{6NMB@I+Fx$6U}m}NJjsM-_+8l0u~S957L)+RiF zaW;1dSWgYuHKpd^d|JbTi%^#^RGhUlWMCbWy)cdw4g>L-ck~~qytM}#Bd~S{=nx~m zp{(gzcHdA27QqdJ+W^8^F>(MA`<xgM70ELq$bCG`_c7Nm;)DI70rr3Kj!(EA*8o(1 zJ|k8E5qCgrt-;I*nd3PjBfR0U-Mld1d|op<<O4%2`+1iQgVM8l=xJMPVcq~r`_(go zQ+MDO_QDa=k*;g(8@>S!{Qx4`K9q+*98vrq47~~Z8R!3dd=-e^wC`{o1-9+KVTB<g z?gyh^*ZLo}-T+SE5u|_GB4GXz0Nd`#-n2E{9X>eMGjIpS{vSSIINiMLQ#kE45aO8~ z^;18sob=uddaizB2%7YLT5gAt!4Ebdzvh#^H}Xn5GQY(gSPge1T`_STAl*H><YWLD z0&k=-&N*Dd9995k8{ENX7AHH`W+_~Z5e`GU)pR*@w+wy>xS@Y&N0h`n1Mi!_;}OH* ziPsVQ;2YF+%y)e^Mqbh_zX?45AG-1^0pj1kA&#zDX@amxfE_zBc@tRgQNkuN1X{d^ z5#xy_JBVfcCvnZkbvqDN%ot$eoR6F)eiSGXp%sg=|NNvIQWD`B8#^AXGLUelz#MBh zuF9BcqR@*;DQ15p1~lP-msBn0m}sEtzk`n~wwTzFs;r`21vW)!L+eXoe%MYdE0Ar? zw+Bxw^7=NTw~|XQjw`t`<3v9%qc+Krv8c?8t3E`FiE!bX03QE&Gu-58#yJVIs?F%< znj^&=k?pW+@dM@nb=RdP-Q>f^rY$~VMs|@{$rB$P0mcgWf$zwYnLZmoj+Y)87#M$h z{|-L9`0?b+n}05g7_n>C2x!PLWB{@UEm{N!&;nTwVzT=CPru$bA7~ICGBOOHfj7h` zz~D6rIOt#k33xLh{{a?W*g%FF9?-x69)5TLEzp=CA~YsKV@`_Z6j8(?MTh{S2p5Q; zLyb1Bpu-9}u3$lrKH{*+CXj66K#_kAOmSoz4?G})5kril!3W-4bB%iHc>~P~Q-DxG zmlde-B?f9>KqdySU_e8fX^ud{2#36xLYyg}F{cN1+Bt&<Gt8g_pGqhJK%jwgL1>|2 z9LftXC@hMC6OB5-L8OuPz(Eg|_AtQ&m}Z)39Bwes2MbGtAjJX?6!5|j<$QnejWz1Y z5}pkcIkns>v+{P4VL&}n4`Z-phS55Uee^(H7YzZH0pDO`O-@bpWt?tJi1ZP%)M6AB zt{-ibkY*Rj;L`s~+&=r!K?pHan^^|f@Q^@JrIpbD6J0x$a36u25M0S!)tOdY(F9v@ zFMZVnVP;JPZ*zv}n`=VoW@LXZN0s5#M8X)!8W=_sO_k9H6D^BT#GYY<@41i6gOMXD zeZ(0;BQGbb!|7h+o5MSBk`ccM;hgerFZqGhx5IAMM8*Q8RPjp(34C7DPCpHG)KX7P zb=6j1jdj*qZ_Rbr(e<~UH3GsnfDtm(cV7#Q@%Nv9VSfY8IAzP=#}I!XC~ysfcuN?e zgx)0K&4m_fxM7DNdPoZ`CY;E)iYtonVvHh8a)FIC;<zJ^KKd9WkwhAaWGZd6Ap<f_ z=AZ!q-%v@6|2qUgqk{t=1mR_uV2W8LnKYoOW}9ywk^=B?(uu~Mcka38pUMjg02j?0 ziYN+-F6t<xkV-n~rJH|pIzb$9Fu(u{0*orf8A4pa#s(TRU`>^<h8M9(%;}5}!{at_ z!o(J>;w-rraqF6oq+?drxX3l$qCbm_>t)6<K|&Dokw?($U<jF6M#d2|l7(wqL1EcM zw8fHyIN~GMaMlhqf)H<EL|O@Hz;fuvK!`O#UuT)t`!WKQm(_pJV#^s9!xZQ++<;~x z0klZWVki)m8O<Vt`G~C&(yoiNtO-aIRzg77Foa-HAX7x*acXF=j6h}wVZ;b&c(@gW zlo2ESGlBm_S~fw8G@xh~bJ<I-!ZfexagTiLqaXhW$Uq8mkc2FxA)N!D^$=h{8<-n? z?(={g)T3?xQICJvK0r2PXfg-wYtVx}>9-0AjsS$q5Qh$jxDl1;M2=&TizGKA%Uv!< zJK9{2fFz{Pfi6j-YtjHVkb@6M$r{#ZfCg3|JKEI_Ok)~TnO?EG-m%F|aFP@8jHf3( z@ySnsVqT%37luSJs!@-^UZpB^DNS+Dd*BNd`Amf>RegVe0IuSXc;Z*E`OV6How>tH zrpS>S&T(2*fz1OnmXMPW&5p@=A{B4QlsJ;cpHzWNK82PLs*DR-Ty)q7siGJ!{$q+p z+Y3hu|2h#19tVd0nqhAGr&56ctqB&~;d3JPLxJG*B?nB%8Y32f!YolB8zW&(;`k4w z5i}#;n23K0FS65xQqegCJLyYeHdS$T@TFEQ%tV4J5Ul1gS4)goOa(HTL#lPHY;CJs z-wM~b%5|=E)r#BJ;|)d*;RQ0FPkm(Yfoo8*lI-b)Bjn}>O(KW@dW%rsCIq-qma;>J zJ6z%x$2b$U5^|E8T;(i>xmw!N0=W!Qk&twxDNKJsbZscW6$UVbb>sjV>oCU!ERalP zF0%r-%Uv|3`Mcm*vrgDV9ykBw&F2y7P~nswqpHV&>rD!s>0IacLNz{8nGb#HV_)9v z8LR(UDRf`ALZKF^@{Rs^t0f$<f_vW!-~KJpS>t6&LXfHzZ(s$27x@NQEi%)kQl+Z? zvq*o*nxN6GV&p9N6$rA1)*Bh{S0L=&0emlP1^K=(gH-vK6ghm6kSrKsH_g{oP5cu2 zVg#TzNZ>!{_K_yu%K!#gqd=;P)TT=1pZ$`mNIz566TXDO9loLl+l%4%!X{xmyas62 z$YK}E;Hh=3vX!rl<t%G?%Uteq*T4oK_6&arK1P_2eI8(hc?`Ca0m5W~N@q6*Dd3ZR zqfp=^Tgp?SQbZ)mY%5z7IT*!KmZ8<rXmJS%BkfYPsc3W?9DpiOT;KvL*u)fwFgx1m z|Mp8^a%P!+yC&aNb9lr(o;LfmJa2xJ3(OVgbIWN??QIHEJz!@a+zEtIohntUqUV3B zAnF}}(v&%im=(0fwZ;E^)glpNh_jy!?H%w?#UH`(axn8O*;GYjTJhL@kBpE6L)aoj zrV2@w)9h%gTiP4$agiC8-ig$=*i9I#O`Q|fj9@jV0&$i~9jcQ6q~kM1Mb0WR{B5Sn z*vB4ZD06~Lm2#I0#YVK*x}m)k`b~c;6E4O`fOWzNb$EH?BrmziPmc1GtK6+_3-dSJ zvw^+#wLZughc(trSh2ll0Dh1`lX5_Syg61vev7Q&CaY)5DlW5{RndzA4I|1CnwI~D z9&Kqqhg#LHcC~Ft1!{$mT1*E))3vi5Z#}I$-l>V2z!Tn_N_{-!DG#}Va^8P8TkTxx zH7dH;qm-;U<-Jc~cT@}5Zu+9szE_Qhy$KnraXwB*WuMpFD|45_l|$`}SX(&+4$4Pu zLvfI9P#^~ucY*DzlWiwtte=U>kE6p<)&DSl3_D0zP>+`9?EA#^6MY3UazCALTq_ID zZzh1U1JWRs7zJmz^O;jJA<us%;S=wDh*RIgSxsvW9k+-@h2Q;^i+}v&FTeTEkN%Z| z*-Grm>&{<b<`y7GusBcTH3T${MjGfqj$rK2LwRRMmuHm)B7C+=O_w6B1a*T3|5{Y1 zIh%uMigsG5<#nkL0~d&CF#rM^xPfC=0h`8Y&6GQ5(mQP;YHs&-#bbXwd6GQb#5~Fc zPOheRP9R;9;&+y!PPKMjERYKVpk2ErPre3T;_+Y!fkwvBd257hRq=5NqZkdQ7MX_; zo2MMY=6N6CEU)(um;o}RH+trEdgMlZ5!86f@r2tEd+(MJ4%B?X5qY?mG|sVmA2Ej? zK^igT4%ns>a{z1?(R_bY;Rrmz5jNlmRESV&#ABEDM((y8(HC)J7&4)^h1jPYcc6zH zF?=8K4VSnEnb3#n2a2I6ila!1rD%%WQGfiQit5200-^zpWCR6J9}h4Dt5g4fZgUOZ z05>_X3T9I}13&<v^jLorfP*uDs1zbg$8?(ob)GeKnKN3XH6(wgbtI?7XsdOB*~oz$ z=z$=}X}$GnYPTlA<#yLpTyi&e$#r+pGd<*FJ+bz8-Qy{sA}UM34TX0;hxY-AH-zHR zKm4W^0CjsnG<h$fGDc_-iXnZNmrw%(iO3-Xzj7|D2VyT_QAPA(UnqHDNI?PydbyVz z3W<glDMLARKiYpHD?8AIVu+A(D2WwkeRh}-XO#|EH7jdCWklsuRpAbT*ol>4h<><Z z4VP6b#)!({h(q>}%qEGX5q@?hh}wsfFL4Jpi4}Koidm_ZTgjDO>6Iu~|4Hc~ma3RY z3nFG8U;^=BHh(n^_3&#rXC>|+AZaNdKBph_^dNO6N&<gKI7wH4s^n)*2WYTFBhM&W z5EvwhCV@zDjTV@Vn6{0X_JL)`OyFoHpk{(>CnqUbT&L!Os<w{d)Q;|0gXg3@ni6>Q zm|f*_Dr_(WCNNL+)F0(>KMRQ*_wz$bNEP~3hG->1%prvr0ddXIll`M$I!TG9*90qB zdRjGZ9SMJh3uA@}ftA>ihDzg783AxjFhV87k^gXS%~6MS6qAWDlT@(?-*+xH_78vP zaf)FDQS=YPDHuCRlt|P?&XJVUmz<GUp8r4^zu+9}pq?C2U&m6QWc2@)3(BAk>Yxt_ zp;Hr<WVwn~Vxd%G4el3n@JAn|qXAX&Dr7lWcm;nq<1hricpyLrAw&mR#YjrWxM#{3 zm<h;Pk|T8u2#r=ZjaX-mTj!YC7@6HzcHfA0Xd;d$C|snbf-8uQsWvDuh<EJ>U8PA~ zmoks^xCFUoDngJd8}I?_qX3Fm9-WtyY5^NDrJHM!QVE$5|CJoUNiiPD9N&OX2w^n+ z<79uTcP`+DV9xoS5=VyT@`)&g5UfWX*Ew<gh8Z)_GH!$vB<7O;36t50h3CnHdbk6Q zDwK$LFFAomLCHiz`FtOyh{>^^kJ_J5C5eXNc*!vUn2M1ZAp@AI|7{U!tG9})xvHzX z`VTEfp%x0Pc!Qy;qXDm2HfDApAK;e2Dwcn3!;1I!0gmuyKDSuIxR)3Lqm~7jjU$+^ z6eA3HBMx|Ii7A2A*qGTE1CY6mLb_Wb=v(4AO~Ex>ONu9+>7;|QYOOY!)l-@`h$-Il zJ*qh>u3&hH0GmPgYvwT)kcu2dXhXnfWK`j8DP$440%U6hr#H5gFBE(`;0_gAd>ntI zh|MXof4Z?cC2wjG089fJS~#EVsTPP@k}q*!JMaNTk!;|}u*@-@7tym9afd+mD_i8A z0znd`I-eUGvWtkc`Pm$&I%28Hl>a#{P-tKWN-{&M7A^2A9L4{uUkkQjE4E{+WzIU5 zWvL!vDs)uB9%8dduNWU!a5ni7XCQxSp=V22x~Ksr>WfUGKA==|E{b#n_#v0YbSUC< zH5wx~8m>8NOIJ66spX^Ss)0dDc9eN`xnraysF~#mcX-mIboZp8sVGvqcQxp*I`}E! zlMC+zgkDNdVcL)6QA2Ams8nH-XO*Va;xIQ9KQIflW0kQ<E45m24LSP&Fg1U*AX!np z31AvYkod!&a*7d3MX4__7XKALSc@&KsueODi2w;3QBkJh$+IsRR_N=SzbBk-Y7xW` zKRW<yOZyMw;=USNyhYnlO?#B4>M)O3ylM2GxvLfikTEh~|EN_tD|z}4oN&MYU=UzI zwi8Uj6>Py5tVa`ywr0t;Y)gMk#H5RFOEzWZSIFR{_0YlV!K@TYB?96I8?Xun!X(JB z2o@3{6hZ)ko2`G@XWW{AgZZt6iKB=4Bjmc66o`$F8JUs^f|ZGOBq&WtI<KACg7*r8 z%Y`WW3Tu6bPJ!nJp&~v@P%7Is1l_edVtO93uo}o=Qb=3B5&IHK)fayRwg&Qv5={`R z!wafv(Nvm>5&YAV|L}2EOB#MW5EIdTyUUW)OEa?qyd$-o1~xA%sd>Pn9N?>}0NHs( ziK@(dzLJ{0puE1rCPgA;lb?s2O~5g1ln?@1$@y!aqssrZoQ#zJtCRtpZ!$G6sGJeS zqEMO8U;tH}HekvVQLBF#jLgZb%*)KoU$cH_yS5nm!NjCGFZZ@4&`1MN05d0l<1kDp zoWgbstZ(xHCR&#?w>~UNjCj_Ugo`*b>cfxIjEp-=j=MRKTaA)ift0(%?7CZ)xw*g; zorPPIZySaeEa>hUDcvo?NRjT67>$G=ARwUIU?43>3W!5Gr3C~WDIhHk(j}p^#m{|w z|H6Ab&+#75eP7pkLT(iryu;_KezOfT9Z7w6m8!5XV51UlPRQHOfLBk8c(2G|YUnA@ zHB4inqwJ(<peQrYBiMg#0LTR`npP_!s&W4^PR705j$d8%@}*xqO#@jYBq7o|iS_X{ z9k?F+hnHN?{}a<Gv$X*u)!zshk9pXM=t^}H_Ih~!u<3vtpWPAPX-GeQMw~LJc00Nq zt1numJN)sXABX9OFFJyiH$Ek9T8<0!O9mxQ<`OgQ#<M9VvuV?r(a5p+r^oX{*P~lv zHU58lc>Kna_zl@GV?M)U)KY-eYs&Q3Mc+}B-wCZ-*EMx;?mJ-$utq9nRUXo`z9R>v zA#aRq2QO00TXUsNJIX+}#yeTLUEi-gW3euq)aXQHKwp1g*?pjT(8o^I_}T|;JhLMl z%{*ArSn8Ok0>AxX&rIx-9is-c)5?HR>_W@B9a>F+5}>u9e`LyCWZC+g)oAC-Y}{<W z@0`9o2`djdeNRMxpt>GO#eNE7m^fH~N4u$pUSSue^T_&*^pJf6tvZxwY6>@XO5#|t ze%c&G`_D7;E}TAcWCZova*cqF3iP90mC^-x(mLOnc0XP>J5E2OS=ICY{AC%{-udz8 zV|=wK!;?$~vVVhcY3WAZjf@2=^w`#&?_27tS>5*8Q`bFJZre%P`n__90k+^z2R7pC z3#kZ05Zz+>G36X!ye7D)U5PrGp)dGw;hdqZ#9#k=L2_>FlF7W?MFAgrv#R(teY^ep ziT$OCoWBz~iLdnZCl^YLU{BwLGRHjGOO4u_<RBOy&vfA4JAMqQ4~_h=t$|uSWK=G~ zk1VcIz6a9_(##{$Ur52kF$C#Tt+4vCF9xeo*9E^mfJ39ysSBunY!a<h8eSfv0Jl*r zVCBze)r<>*{?AS*l_x=H=?0yGx~EWzgI6^45(Z7@Zy9-Y8CM@{{JGMYXh1#_F&~$) z7VrByf2+%r<P(8Hv|ieY`b4x5ILhRrQy_9|Zh(SnQTQUhg%y}33=M(Ij#(P&n_Q2I z>f()nO)GCDr7g-9LEDgk6WEIrVde#EnT0P=3+E-<22M4Crc_2~Dzxl#?rUZNed8T# zr$xKEUQ6DbUiWdRW^ht$pUTR3Syye%OfC7)(&f<-6AkumR9$mdUFgHm?`)}NHLol> zqpw6de(87E8^$zv?w{{N#nM({e*$a>z74EpP0I4WIT<+ok+$;0EGy|Xo!Tj2-PDqz z<hqphxIrP@WvBwp^~H627_>oI(g23}NW3_qy6Ao?Ljz!M09Q+`1)sqGc6EIfOgDcr zPo%kWMN7m6a9CH){>Z0K<R0-wnl;qXXQ2JN{-)nv9h&|sbKCSalbNhh;J1}Jo#1*} zP>hN7Bq$ibaFWVMCoN0jSt0*$i#7c_hcrx~9_ov^6wgA_1c^@@O+J19k5(B~;QHp9 z*#~f46z#)`5vx1mmV<GTZ%$?d{+oaCpWowF!a>i>^+|&GX`&;Qay`(9D~aXJsa6_z zD-C=DyEPv_wOUoH>1)mWx|3SJDEo;&G@}oY-p>w<CSm8$4kzM!fN_-6lW#phOWKK( zqmFVm+BjV_EvJrQ2VSdWh*8D5z`;dhN1r?&;UE2t(8KV`!mljvrO4p;YedvP3c8Z$ zNiv<Js!EIoCA7@&0SZqme-N)_Wx=7J&S*p?$JP1lHEn1dU86g&074KDXKr;_Inx9( zL&$E0C@XEGDFzfMJ!FyE@6#l_q%mhw6*_Sx#8IOuYaA_*hI8s8S>n!v1$O72<C*fR zK6DYE3V5<SY8x8_Lo(<|REW15RGP6?W#A(?C#H#erSa*Hil^;d`?Cb;cL$t*NE+s| zKMt!k)X7MT7I8~|IvT?GiB5a`UL0qO^bDwa`rN4r-ui<mub^i7EUj~xP5t%rT=f^L zQ=Y5n-$}55?=p5W=>gq;r2ZmW7q7k?fme1Hj;Pqjn>O<S(x3Yk*#(<wAe72AM^q3U z@W~tH#C*3-j!|D8S=O`LMU4Su4r64lOv==nBWiH!JM>Z+8fxs)hi0u{u(omQ-8!JT zp0CuFcHgPUU&zPnP^HF33Y+|xdm}+`$&AlvK?d=GkvW%BP5F8ECL_f)oUF0(UP+Vj z?H~QJCU<^rH<_ptN#sm5U;@piTGTpnNIRyi8Z*~;vvsz6wM7@~F=~VhFr|Wg4=yNZ z0Tsg&*M`C{Ckr9tVfMBNfUrH%GmB?%5mmqu6sR3TG*tf;Hy_a1FvxlDdCP9TlLnd- zz{+ZmVtU0xbs~t3Cesuuisf*PXYw|jY~@Xs5pktWRp~(D(se~hOEYa70kB*|y71~N z&k^BUg|3LrTX-Drh)_wkeO09m{$=7#7p{)1x~6UOK=hsG2|`R@P=>s=Wx?lAynVOo zGim3=CSLL*fIeBOZ=7Z`aUev1fX=(iY;+;dnz-VU!nqykjse`z-FoD?qzS5joMemi z7Ab}{8etUpM`~ap@;@W;?(h@kE8}pI_fut^M{F`l_x&lqs@xwKfe5otVVI_i{3x6H zQXe%1=w6JGNh${8+RiD`QpfQ5Ok)7{e|CTTiRA<Rqlug=!`}ml1!XEoblJO-<2Mx( z)$Ieye&YctZ6<~fVPIo;fcKbj<`}e9^uv$$Ohpn@r-sQ?f78*;vYoqh>h;qXyEQ{k zDdC)tmen_itf-*T`S6KG>Wiz|Ad397fQxCq_kO*TwRhk3=YE8#N1cAU^)c#v;;#DB z%XzPlPk;V)u*}xoL5D2()}VO^wjj2lkS|8+l(SGe4H1R-O^D5ccGVJ1ysQ|K42Vpo zW#FsknGu0)u{`JFXb^P+erCJOwQP`*PvznFwG$5q$S6z#KosuwvnuhL^;xy?mN?$E z>7h0i(97Ug{ro~MIr<Ku45OJ6LB)pot_$K$2A*O-=%2nmA@3{`9nCW;Lgr>`!@(ro zkXh>LWkx>Oww^6T@Nnb&kmN+ulat<nff(3=6qy3!U=CPHcA@7`dnVT5`U%=#CE(t} z-F8E{0I%wVbcz~+-22yf2qGedo9RK*l*`1EXD5At>-t2a&@*K2w!4sQ`!JMbh*P00 z?k2+#b9cdyGFleR@6|2++<I;lVC~(*3EHM)mzqw`CM{tce8g(>?`=lG%(kF&Q=-n& zH1w(OI6zRigWfjCs2VOHqgXj?MX}EO_W?orZi11a%)ZPTrp%)bYxFSjOa2W{R8gYY z$Ul@m!w|Hi)Ri#yGZ|dCIV$MkjwmBOc6ZGyjCA)3l7gW{M_qDr+qD4oo)F`eWA08> zEam7ocvvW1ArUdC1nfw>Wv9y|UJsOL_k0uTW07%>ZxFCFY!ps~QeWNoR%~dWMoXOs z6h}IGUL(pLk*woyt&^DCCnTW#F!UwCrF=ZU)vBy#t84~*tXn#)>OyC$o&BA!IW8;o zzP>PD{e^~-|1HNFXYpZ5ItUPocyO4%CfvdsOdC&wgXFpbH70%8mk>B3Ay3QJjx4CG z{0rx&e6|QN>vwWUO?8Bu)u;@}%|TC`Wh5|eX)~Mh5sL(8cJ*^LOB<R)GRY@n<OwPp z_qwwe`k!%@f&ji`P$vzYN)BSOh_&5<bu*mlhK^bz#`J+@aA+tgWhz#JoBS2K?jS&s zN|1zHX_V1P3a6^F%O;sGVk;~Awk=`4b5AEAV)ld6RqK4$kJx~yo!icT=H5rSmaY}Y z(`sIqGFtotqbi_!BH*%;I@z9k-O=XDZ%Ja|G2$2!n5o8nVJ3?~8S8qH*h+FL4ZBfI zbP?^`R4#MqmHk3=ytbb=ZSwXc-))NF_Gw5zf=XKO{H;wF>T`xbG^W+0xz;?0oH6=R z!NrF3VPC5dQz9p`xQpfY`<pV%sZR_gAJVW6uiLVyFs+j@x-W(~GdZ6v&5wHN2ItLo zdMdnM91DmGF4!sXygmr~NSu$?ExnpoN1I?pEQ=ElsVSqj^4C9qGU}{lGn96>vBbbN zrFwDVxnL^Kg@(athDJ3CS6Vc_fA&l)@%?Nqduwj9q=G-SR}|fBcXdnM>}i*K^*e6$ zQ)kU_@qlty9Wl>G!vp>@K?AuBG78Ko97tTqvTb88hoFb(d9yq(SXPEFXncMU9opK` z<^M2jd3g;Q);3^Nu5ze|`@JlS`A>|X(=R_*V@>KCEVc~c_DGEUb<8ET?#;vR$=FgA zSSH0`H~exECk{u(-yQA!?^Splb>&9lqqcNrH2>f}-9^WO#}@DAf?$L7rr&SK_OkAy zp^n0l^ai07@gOr-r)DBcW`e&iT10)Gbol#cXHW)thVpW1_{^5upxBzsi{<^hcO#~= zx<kqozkV}OjA-Y1{E+CASo@HX@dLAl#7pnatqc8un!k+oceHnCEQd!H$4s#bEE{W# ztN3>+@!zPGcwt{xLV98KRB?TQJhwvO-uLdLPbHGi?wUUyynp=C=F4_V<9GC<+M@XT zSjH#wACKifb3&yPAh&n>oa!2mUmm4Hc2kf_cAW2*9gBWG>ehK4apa*Mxir6e_5Rb- z?~jSpm22%EN!Ej@>bXRMYl`6<PZX=4hiku<qMb6A`#aLq2$Ll#I;QVlhi;8m|NH7= z`7Euck?tRW)|c=DjSf#F+Kg_ZliGd_sAe{7`d-uBJczbcncC^G$qWuAQ)ivJGPS0S zV~4!Ck&WB-b;4V@Q=gR&B8qQ-jKcekv$E<S8rgY172oA9%54JG1%aBRhlZht_K3bR zDYL0c#h4Ti;O*Sn>fp9dc=v&{;XFt9Ew<?k+2$GM4jc!{m7?fnbR0%AQfi9bXN|U! zil*0WV;ZU%3~ZZVlb@22?>mpTyupyT=FIx2)*HNio!jzs>f`XC`d3ZmHI+tw_PXal zg<Fv_lV5W4wD_hEW7LLXd*TVCB(f&-vOf8eT@9RcB>hN+ehvP9O}Tz8)uvV1>gx?| zBWdj8Wz1ttT#&cMHt`VMk!h<|p9I|FBisL=5z8vkaB@>Ji$(4$x+9@{6=IeY>a5`y zhO-#64gSyenzpPU?;GiAl9I5WdSc|qBtFvL%SwL^mGXw93l<s*ht#2>?b7^>BE6k} zixvS<q=F$iNv4cjb&@+D>!D0Cj3%17jgS6@7EUJltM`RGvLF4}{ZnYjr!d^7@XSy0 z(i%-{@w)D!dL{jnjc{fL>~>O5_$v*3g$9Mt2X+oDhnR!_0F$6ha>K@>A;%<8U~b5j zh#Ryl9Kf1ePX|&zHBe#=XEFtM#?h!ckuZz!GxvYcWOE}G_Y?p0L0#+q;C~;)y~MNt z+I`N4s=kJGuh2yLJDo@pF{v&AWS8<;BT$bdXoYWB>F&=>0m}69CnY0Q%_G(QBQ-Pn z{%)DqOOpD-Z-^ZorgqPR_8BM<@_|n@5F`DXTiTJqi6)jqIa=fbH^f4zk)#=e<O>qu z&`?@trPa`Ff*33o`Eg=NC*Xm!^9B4@pOP4dF0ag6H}sLFM@dV1)4hW0kKUQxa#6WH z*Kd6pib-a48T48S^;)Dgd<yGzgWg@`?(fE)6l^VyEH#fU_m8d2jD1aJ{XP7Sz8Tuw zdsls{jzbEV(aD1*(c_^TD!^;B@w0GP%5*r8OX8m^Hv`#e0LL@q$1BDrfM}*PpnICI zhh0_z1A2m)C^Xu~ApcCP<?42ei2LxTkl`%My(j7S+;N?G%`N$vykD0LUo#*lwmTb6 zIu$s^6iZ~}dO>faiaoU`=G?pP;KnXTutvP)*=OM3%`vLWNovRx4dYbxk$&(8Zr$dN z4Os(9c;|MrwuWy)4yxNowb{5?V||+Uz>nPN1RYJ-HwFTx5tQaB3?}XsHS}-w`dL6s z;`i9hr87f54wC53R86q(4-Q`|{YTOMnL<lw+R)pw{dLJ;PLu8{_F_K=LI+YoOo&xk z^VOR#jQShJWSmnfEnjXAd{LeKa_4mhUF{p4(M)4fM3W!IgucPfQ3uAod$03ejNAuY zfiXG}SS(G9CKtoQdH~bi1u@+h#t6!ZQ@QCAtu{kFCB8NtrdZ9N{GGyLwZAEJhnh`n zlI}?u4oZe}ONc9vxFvpVRFx&E1Mb`dUk<z6{^A;=^}%}*_TOMXq1ZcLp>Xqych=m4 z(m9`&xvET+dm2+lc8Xgez4W(dm^}<wXZz9b{bu$_1}189IbV~*Ak)bg2EdymeF-xe z!|`$&5*(gi7>xcLg%9Ey`eUp_vkYHEc8Wu^Jhwj*qXwfl45bB-GL%NL0!B&~x$g3> z6uXMat|itw=UzY-(-;@i1?<Ytzx)9jtOxh2pU=gCZI~Sm-uaH#^XctJ&9rCEw4jCf zM4Bv3h+jWHc^!i|HsJNw@vIy=m5tU}$Y!##x-uBHzEf-UrOno()9#L~WU}fggI3(w zus6<D{%Cmedf3&Y&TW94fdD$p<J0pU%l>AoBEHy`wcK91+|jaJtFm~nA(JSB)u=`0 z=#1+p+ZpoPyst6K&-$$AXru3l)JC(AJo#@iDS7@o3CLWBhyTtJ(@9T))bKOMS*IDE zB>Dvr#<!yK3$IGdB&=*RKDUffSfDt+2<F@Rt=Rd8fRY{Oj>(#Sw=b_=eqDpCt~0LE zaa0FyEdxfdA0aD#*hRFV<*vg_p8rft<~YZgU1$q=b1AGBjs?W8gkO%27@?ICYE}$w z0j$IY32%Jt^LWhxoJrR8U7J$#@W^|1119!gO=er}IYLam873d_*VTIrO&FNEIhwkE zb%Kx9r94i45VO1yyAID@CoNllF}CcxFn9O5i7ccDhjQw9?8M@45GieA(r@;d6Ll0T zA;v<IQlj@`*1!b5)IDQtQjc~hu65uQ2b9LP-Fm!+rgZ!iWi_2L6)is~Ry#UlWc%{| zLPqdc(LYNQnF~ND-%@Ei<dUU1mT%Vb6(w9HxMp37X-isgOJ;72e2_cqGPA~QWL++v z<<I&v2AfwYPJ$vs`#8%($CcMD<XtDA-oUJcqt&j0m9VZM=2pGWSwJ+O5GdH&8GT3X z7qLb2Pl<C?mLj%)ZDGXTp{s?sZT0*==P`1W3*&uP$~#Rv0E4ftDviZK-pP05wrsO^ z?8<iRsd_pg2HoP%&5GnedH~<F>>Uqh8e_Fyaa}sKmEaV$g0F7vm^!XN2bS;+<~al4 z`pnU`F>{?>7X_9n9E&Em{Wt;HOr+oZ{n|ddR(-@!SD<@#_CNFIPaOeJ^2rj{spQ6` zmWAbk=;WsgHm!uBrX38^K2~r)dR)Olg6ZGzU9(}n_eL11xGk6Ltz0Y1dN<3)4|W4a zE`!HzRQo_GBv7DD!t+5^!i=6~tEb=G%n;{C5DldCzYV>(r73i+d)CdHuiHLvX6+ww zdo8Z3Qx^BtOrg#^R10iuk=AV~QC&<Xa`(6NetFzMMfO1@lcdAyGI3bN@gBza*AD6m zm0<muhHKvKVYj=&Mu_9ky`8NW->|LUfns`4QW9xgv0hT917g4vIy9c#e2ABK&WU@V z2eqB@AI_6-<U_Zriw}H!{e2=#K}Lw`;7Q?TZj&n{q%Qx9>rEG!{KU()>|g?VJjrxC zCCIQQ_g?i}l5&5JIy|}d*}md4JJ)Bc*}02J-BYT%E-j&+U4gz-EI4;$(Pvl2L<-=C z!ujJ-U%zKILq<x3(Cyy*Z@p@Jp$*Ojh4=2?ku$!USYbo65HFX8Qgh|`4?q&jVB!_a zC&!&<4}H7^j;}(0{EYkYQ`cJ_$|%)@oQHZYP^}~|`R<51xYsFq7(3iq-ESEue_x2< z3Iws>i*2HG5=w?xm@p3Yz^;GfUE{_lvqP|7o{wI&AqveaDc|xMd+|H%8HIY)J$0?w zAI+v;Ulc$Gd~Q{4_5hCkYaEB}|C&4H+&krZztgGXANze-6-QCG>l2^q|If*Ism_gC zRPSKmxOr~ztJ(=yE{24gL{=%rIwTPO+-0~0Xfk9>{vJd=aq@A-!K@8H{bKr8ioHwo zw)p6SqiogX%{7znwWeH1d0cx$q2(Ese%k6@o2Lg_;lwNFkq@`cg^t&S?oY>RBD6c! z^Wc*y;QHzyo@%~Fe3MmtgI&j$bH}^&;i0HH$Osv8E)MXJo`97f`gb25i3MBUQ09>k z(TYI7)e}*g*i`S}-m>j)f~T&ANBp{v1U(&zV2hz_uXt&4Cj4^^WSvOrBd<^i4I9u* zqy>6>u8$+^;^EJ$0NBslmtXGj#2eCQ@eE<nsSNYFXa7+h3gl?)WjfKP2AL|Jh<pqZ zTZ^&Kj<clxD8c<*(&Pcz#}hlnU-Xl{Pht@{5;^<-E(boi^W~kp?mhUVz;frOp+Ml3 zGXIDg9_Au?aHe(uWdxM|YY*xt1ls)0^7@^P{xr8awnII+P9_7)!7>=k|4<@6`)ROp z5hU+x;<XDZ4<h*(<gFV6mx(S>1X+g+oR|21DBH;VLyqGHTPgu@6GE{8*k|{FVWK%f zOsBuK{2q5RhmL<|2-|e`I^_qGH!g%jPskN>`_x!SBBZ{&YVwoQ#7YgtdPXV?{@Tk# zhyCukb=|8NMJ?yQCK}eN5*BnV0kQqbH}Rxi*OCS2lvEg2hB?E}`=@UBi%x_Ynu2WL zcL&0;7WX1N9z+yB&hpXyPG0^;I_*DcWVonlcs~t<GhXyJ<=;QGOMhR7|68&DPBr;s zH?a-_eE%b+jhK|4{#QBb>IE#MsjK~|HF`Z$IwTXl-naMf`_F$r_Vjf%?5>HwCEv3# zQvQOfRfW`z2e^!1{8R8WzR?h>x(M5Bh`|2iYYQ?GBEcZeTme1NlF1Glf?9(y|4(ej z!`<HkOcW$!P=T6Txv89rO8{OE4ZMO);J#jEP;4rrgpF;y@Rwdez5ItNfl>l{E}4au zWhIF`mO}Awbz?{>)0#mRWj-P((-@ZnOEwm7)PTw+&AgUycf<)mD}j#b>7TaY3I#WA zsMkazi*`U-j)p_;`cAB-BpHM8b<o0R-u@w&&4S-AB!NxZweg=us#p$MhlCYvTpJ;O zI9KP~mnt5qaJ<wSur*#AsrX~H8x1B>OGGK1ZVuXge!0^oeUm_~q5XBz(;r8v6&KZ} zYuIz;OWGO9hr|PagLfZj7zEVm(bDotl!OQeTNuAaCUE$Rw1}i=@pZqYouiOVg8%>y zD+4+798wEf)bz;kep+LpM}ue=Fa_2{1I*%r)1*))N!Ml|#hB^dO2)pu%O#D90hl*W z4w8%2&P*G~4&eHX(q?SdjMaehmK48Otr%`_t2>qu^JB$XQELyKKDc=(WX@JBcK~Vc zQwp)+wte<sF6Ux&2jb*%(re?4R>s1aY{eS-^)wkUxvt5|p#_DJ=(EN0H)s%B1wMw( zzM|+kZ(haQB$=g(;un8jtppLrlz$q5xxJBJX=b1HIl7TW<zVDV<L^3wcR4YI5l8K? zHz`uH+Ham}us+#-Y3VY+hyl@6;IQzw?Vd4Ink+8Vd7VK6NEWBC*BV?RGn1^;DR6Ba z=0$vVqG)JlI)GOkeS!okby`ZKN)IGv7^?zrT5~#ciS92AG-utdY#!*8+PFFj?`He- z#FhfuDZ~KeP`6i7cWlFZ4EmmG9O3!{2JLKLvwPRGguT#MYWTz*!_hdzm*LPje5<&i zaYVFfrP24L$oxw1nqIjE)tt+bk=wKo9uu~nWxx95n?{opI`YQ=jJ`u{HRp|m#m$Bb zEljfCgMo16;_LgEM0o^>91Ohu<YP`=j!h(wZIR795~j5P0nf<IL};?c`@6Sr%}8K= zny*Bv%G?Z}NfT6=Azg>7J@eW7rAWqZ`)_1m3Rj=@?E5ZUhJgk7pMHn-x^}-3?0@!q zhlJ?@j__(jKX+Nd$g_Xo_;A$p#p%QG`>nzc-#?tMe)!QN%-l4(;o_sIJil|}8f(-$ ze^5~jeR?oi&2@Z`($Hui3fB{#b+2<W8xx%)h$tP!&~sp){o%^(KPsDjbu9LLGMdFz z8)&#a+#>GN4|pG1UZJx_rUB5Kj#D_Igvs8^sR?!EM&lVC3Y{!DnKQg^t1vAUiDc=4 zzf1=W8>I#jJ2-aDnQsvhI7F<7<;JcmtW2>8KrV#rr&#Nc7NGG2hBRgzqJDnh21&<j za`4h7dH3`2N+;-tSe~#2r+6c8sVK<ar&2>E@1Bl&6_HJZ<FZBGvesJN%cuTg{zz%y z$vbrmboJ6~R8|WL80Sm-a*|ergfu#n^4Tm8y9Sl!$2e0_ULHhx!uDXT^i1!=Tl+Bp zI7>Vd-UCzw7IZ{h@WDF_gr48lhwNQ42%7EOGuMw}LLmSEcVTg2ghB5rQ#pe^Pj;Ox z0i;W3@USE>7zVcBM*R|GUp0Lkr;!Ye$Sp?;@XEd#aS)Wv|2FESDVsNaWJE8l1ITl! z;_#I1QLO7x-FrfWML1@zGFRRjw3+G`Tujoa?RZ}O5A!0W>rd9)=05&>>=d4NgE3#g z+%5Q)?#HUh{vVP-@A@WU{z!IvMeS{N%!Vl$L{*DD^sNN!iX=nR^;Rd{-mt(c&<*x^ zK}*=B9!HZ{DW2^nKrZ)Fzc<+(=#?vMG=Vg*>6ghd2;|wX2jtAq?ow!?zQP>lSyGK; zEA<^kEb<R#$~EPy%pu0|`QU+l!@cnNDS~2M_(0)*Vn7Eu#wtrIIcuIVUH8#d)=RK_ z<?)Emd6e7l?Fuzg<qa0EaIE@p>nAj3<lPInhAxm|DY_McVaGWL-KDa7|G}eQM~DK6 zh)3D+a-3j@+ET@=&v9>LgC?SVq;&L(T4Cm)sX^IbmR-1~Cd1&%Y%lL2Fb;K}6^?CH zs4Zm(>A+3A(m^o>$C|#A!UVZfnCQJ03C=%U+0#_)n0_ts_^!3p9?gWOJ$fKDw7dQF zUb;_#2ZYbQ_7?ZiSYq)?BpW(}QLR1oT_O1<;SOJjjSpa*LYGC)SrRcxEHt{AYl&%b z@$%w88b#L@Np9`4ABVV({6#XOSq&R7WDX0AOm&zzM;E9Kia_C+)(ba>YZjUtmjc`j zd>s?Caz{d2Tf0Ch&L<$W$5b1j{VB%i(b6(ab6}3(Xi?jsHPwLkUhb@;Oh*3E_AM>t z5%X-~L;0tklm?6wehJD4HZ5?uQ{x{sv+P^b3kS{jTf$N{gZX~9>N-bFpTct|aiW<X zZrx{A41Onjkn2NdfVwY%{LxS|i88Hk&sdP#iE~VQ3oZPE42cvvO|H}m-kXsZQr_us z?6XW)pWW?0RL?PN$Zn2d`<dkz*?P(tGU}E;*!aF6Qn-@xJX$-m@9{mS@0pRuhtA;J z3%y(l4fIxHz7AV?@?Sg`+16QpM2i$`2>9mq<<1>e%61*QOLnh_PW<Y9)O~rJhr5B^ zk~#Fil}r_>LYm*B!?uuimCzF;ERd$RPCPAfY;C!5U?Ih?dg>p$Qu$Z&lNjdfFL;HG zB%+I$1?!u<cYX^Dsv|CslGct?{Ms6-pL7DaiQzLc;xf{YpU$`ztL}(6D}TQK{Va={ zJ<)cKz@?~z@d{I}al3qLSL?spGG0}Cl#<7`wWJ#nm#-0kmauM+>PccPz&c=pF*Fg= zah4o3hjA=9w7(o$JqO+)IC*PamgknWe#lK#e}yNhO?wYXsC)-I%Yir3PE44SgGG~% z`+RTDkW=!|vdChgQdY8*-h|D$MOjV1zdrW*J)atDk6q#dw+E!2&r7bU?%n?Jdm={d zqB|p#{te#%x<BSMU>K_qUaaU8?DV&D@hTz0KT9{@9qYHpoIgn-2v`jv9#$1q$*0jc zBKLhOnx>JFVy=x(ciAKL;Bj4R-8q<jx=U;W+)JwGTldqs?8%k_t&Ivd`-3IjsLg!M zha1Cug}zYAQ^6q(-njZx>mO}pdoS8{$OBS*!xMKC(5nDC6p(El$cqA*e<@Ldh3Gvm z`(;BF6;mQdZR?+YXm$TdI;&A;`ec#a`%2cRhF4L-uVVr+^e3Pbff&}&IYA*K@GCPj zC7lN@7-1m@Xaj@x$0+O|sWP>wR}IH5r^pdtm*WK&4IG2e9Kz1I;*y<Q%(j<j<vz+- zw4Djvm+t&~%6#p&WB=*wUqnub98xX3FZi0facnf4!9;n6duu9pYlrFe<U+s8DDkyl zGC%~yb+Ey8=ED7FW3QGg*fNpf0a@HO=0M=?c~nlb3raa*QQ74_7&6@Ybp0pGSBDn6 zo7gJvNi-c^qjr|5J#&$tYxr5zL}mq$)?pM4{e=jk<=W&~rG^$=udplvr<)N>ib6a~ zz#ijL#|qL{1bA^z=NMxL9aFdE?^kQTi@2+%il~{K%)|#-BN7qzb`0{E>nZ2B71or} z{C>MaQifUL>lN<2E#<dvDpgx5`m>L9Xv^FScp|iTcUK_MulW9~Ku7c^UoSqRd5uOp z@V3n|l7Rpe{4orpO#YNs!pW`_(SXPv`q>f!9EF6yfmAhbP6=-}7`eo*@I;!29G@uJ zUT|73pD;-rZ{CdOB(FAW{EZD7x9I}4`h?vK2Uz@z-Y{P=)-}AjVZAm=e+q(|gel!s zLs^x1XDptuHXWh<-nqNm;AW}6V~IBRu(B^bYTFuR+@#^yJP>wmP8exE<#>|9s#3&! zY_@qkVDWv*%DDhR23;H4a2Gm2YBgF2TgTRs3{ivw*iZmk6u;=hk`N)N3!R{tpwmJ_ z59*ukf1{S<1scE>%Av330m3{kD9@S)Wu9}>Oll6Ap+$;kHjB0#8;n+92lN-BRk3Lu z*C?Dfbf>ShW@F$OKcKTE2VJ*1*nN2B8SrN}fb4FT)kvwKSzO?b>N5)>(>Djcs{&}1 z)vMFu^fs$J$Tqx}RuYG$BLIXpOD-4*<Yzc7&24KOHTJ?o#&)}Q2lF7&B_s-bo$%a+ zw~%_SKwZOGlOcO+!`(;&y$eF{h;wEeL4?rLmSIcQz=FKjr;JVTLjTq^mh25y&()?= zdj#2pJe0BwA?T7?gcD&6jP{OC+>d|ho$#-(fzm6R)yrmji#JXn_@w~<NFl$^M1+;A zcK7_$RF)H9jSF{EDqwM35`YxhX@3`(3ny?j16}z|<em`}ZMD$2xfuDj7}oB+NG{JZ z)4SITd#`y&o*me_EirKnZsg{D!}3-re$VNzbbjo>v6;Z*qbW?3H}(z+)J2fJW!3x? z*}E4EK;&!`C6FE9>3oXVs`iTZvuM3kgLX&+%OTHLTQ-V=M_?g;aIimo4m(1Eg79dT z?H6-Q52gDnS~bvXfq3J1uk@FD>1^>>{s$DD7*y+8WFAlBq6k|VPd2C1rZ88|(i#Bg zuDF`3SjL{h)1Sg~_*%T;52P?ZyH7Mo=vqU#@wee?Xq89XZuv@8q4`$b)BU1o-?qfV zwwI!hi-dsNT4R1YP$iK=>CHO|UUs^hDy2KOHwxjrjx6XvAjOe}X5xYWzy^2-pid#} z<P_^PGW%}7n(l<&wcZOnD%_&*y!^VdHm@jrzba0!@btom_+Mq-AhzbeSihzj=a{)& zQQhLdPqlDM2R_gj58MySLq3I)?0n8X9NY98KR6oa%?K2!N_2&Pm@W=lDlQqUP6mA~ zy(;dC!>6KoZ?+jFFaEryKnO*H#2zMWRw|5XRaM#4A7IxZ%%cP@mR^V-=7HvsE5O6F z@z_@_J(vcg*tu6aB<RY!Gtja*@a=fjiDM*`|Euef+#g|pAgk|^uut2rsr_NgnctSm z_bttb+s_QGC8{3N^h4z^Hql>_dVP}zxoSpN`OVR3w_E1zHxJ)wANy@s&sx{gCW`d< zh}W{zqzj5I96*?bdPHZ2n-X36>&i?)0j7T_>JEgXbYa9NES_f~?_5T9!%;^C_F8hy ze#?!5e$Afr5b7=c?^i(qKO=tp{1-Pd=v8Jb5hsUHQLV~JU`*~^ov=HYdpHsD&+UsV zFMuEYplvc?iA6MbcdxC$CY)|KJfe2Ce(~`*M%1r&vDMk9u6Co<^Mve2zkN-i<~LW{ zlPvw}aO9`LphH$ViDlOxP1qmsj6l--6H@l&lA#+Tmt-i%tWB%aUTeTKMj~a7>sx64 zw*w&n$(kRJkPOSA27_p{`ElEf$I+^Xc`h%ymny#Z01`tH4a3~r-#{~+nwCQESV4)) zX|avf1LhcMmcJBX*AiECTx7+M*s4$2nxr4LZT*rFA%=;=rgRT%$4`O_eL@B$-#<8b z-=0qAjTM#K%8RI^dH#(t9u)r82N33e1300Vg-agwFghSjWCAxl13YboNP-{TiVQ-J zu{~r@IuptW63%b*Oj{*;vkK+Ep<-grl%NzJtEVFBp3F*hrAlybRdAn6vDM=_>MFY^ zc{D9+Y3sFnL>@U&1=24|pnk1V;O|@5H@t!3;gN&j=Ya~~cM4wT8--_zF~Len=kQM) zr-siLX-E{GSlpSDR_63S5)i+BJ9Qt;__ge1EZrzl#&o9gI7jsFmnz!eek&0QnMUC{ z5#ViUGKwTYz0<PXU4i)rz79XMeSaw3ztC|D(S6}d6cI(rp&p2hOh9jr<gm=%^cm+w zb?eSq%BnBBum&0Y%=9=%ow5JjQa&xBLYiBaj{X~+<T(ZZMYK{pJq1Vw<$i|N`(&cq ztSkH2;`XIQ^`p`M#Ky$A7}12Y`tv^{Cw#r<e^s`*n&kd_sq>P|3V0#Q1(_S9oFmT_ z0DMOAp=;-IsbP35Pbc7q$Y67Xua4GZ=f9WE;48e~!Kie87bTWdO7~vUmwUl2;^i5X z^S<Alc(H`$HX-tQ8Q-Rby_`n$V|_$$x{S1`Vw0&lTyXm#P*1l1&o^^esPBg>-@ev| z9mU|6?~DQ#%PW42w+D+Ky1^vGp`$<C_ktg>Vu_;QC8P3uq5ivCOd(bra#;Rmj?-vZ zX05<G1^n4#Ki{9B!C_$mP9oHsV4qp!(CMy3E2p9YrMiN|a)mvVpX~^Z^>`sT?4uC$ z5fk(dld5eVE-39y3^A4bN-}CkqjXeLB^dgNN=Nipw6mm$Y+H<ITbRKwoJDx7R-C2V z?6uveM#5R>w!+^sMXn#k)B5ES;O(*q%*iY5N3x>h1t~PQev)+(1UXFktzLUvHU~?d z^NEIFOfdBLzW&&aj8r+aAli4Ne^fs7<fW`~ma(v@1oJm}e4+J&JBa*U(uquq_AL6C z*vQ{GF;6V0uNv*@Qmo8gVt1bWP|%+cid-%vb{$ALUmco?3oZC3HgRYJ;bOC)aN{P4 z7m!|1n#8e8(_C8U7e>w3HD2b<?@b#GM;-bUy$Jw@A_}4Y()$tUGPgfvz7e#4G+YA> zM{WCH+kjHvj#B0gfYL$iZCapV1g%p<4POj2JUDmxPwiHOWwq3bzS-d79*q*n4OwL^ z8>*Jr7LcQq2T@EUZ?uynKi^O`M#obWT*j@-X{k=LS|T5qCGg!1!@Q%07ijsIi29a~ zhT3W=PyuCd@mO^G-w%C}offy1LfV6bkRg5;+971;dx9oLOGP!VLJ?WX2mbi;FAYAR zPV~B0R`sW+Z@9@_D({t@)q<p|--of`ME&9&{SQAQ?I;cTXp+#JD$ciMItdYFVqd4l z&8e`o%{{DXb3OllddK`F0boSeF(~8nr6sYK^f5QznFkHpn52I?#eRn-wGURa+U1KB zWmdFd>*8~GOt}3Cm>DCb)iw1lqA&RAd}LRfTIVS3t)~C}ScTo4di%b?#)m6I$#%^N z9;ZXLKk4BW8dnc|#`KftYV@XYv34Uh$?PL%0MJ@uSVJNmU`ZVJ;sqH%{Pk~@o?*-s z0&DXPgG$hUp)3C}W`cp*T5FO2_F|r?1!k4l_5mq+7$@(!hWy*h*a&ja0{anCSh0FB z-5@>i4*Kc$!++n;cl(})`7iGQICzPG!N3L!pZw~O$i62I2?IPdKMU`yF~Vz3oF5-Y zc2~#|csl{KxuBw?)*?yAKO8_wju;voUvUPX<sbQ|Z%rB;f*_zR`a1GiNQILd4RZZ_ z0ZgF*o>4>6oRlG%q(N*8a9VS`0|-LRqZXxWI;WmvDoG=h^U<G*0nJce6AekA{opyq zhNb3~%UqUnCnN#2<ibCcA$nR!R^c?>^;gLI_LJ**qUPGTcyg7H8e13a4?!5Z-0+?b ziS`D9k*2x_<3dfz_FT6_4?Czu^q`I$hqrHD9>(%WCNt3RZpA`DwA?qNS$=UWKNX*X z(9h`j>Q5PWMomFz03b)I(=>2>viK8@^lqw>vZwbDl-`Ckswq@lM7rGY@rXH+(4PeJ z8h7}GL})xY-!aotMHkkzoSLfp3Du)C$Q3A2<tC`wjw4YouA5}h1#iTz$`OsBX%B?e zZ?Xr*lWf{cDqJ(!OD;WX+DEB;B*kA|^}(|$fQ>MMt3@yD`(P;5q&|!JT3RHDzh95m zmFPI?HF(#hfbExrfeZwoebGuapaG`fqcko4;u;w_Df-@cW^)eS0a08yG7cy=M9m9= zPXP+qKP%&b|H(~a<Clp-`7Y4aDDZf~M&j-7aG%T@yc^{pAFAV^=G?R-8ZNY_{>Mq^ zJciCdjNg5V{{kFb+cGUOaVLPxd_9I|DNq0hS@?xPUcT+vjnT&0u4AWlvxIJ_0fAw3 z3~0_M5fMmP)qx0o5b_lAPR^S!&@`RbTnk=J^sVdoKH~eX`ya?$s+U6RXlOvnR7Pf{ zFga)hXig&j8SuFQ+QLsI^_=o%EcrG?0f*`<_`<6X$ODPsfr?+(uf>&AQncz|5*MS` z31|tubX9riZ0ZN*aa%%`Lbiw7B6FY+n&9qeYJdcbF4DxNkkbi!saDkuU&N3TxzaYj zFsq%&c+l2LV^b8EXk6o=Cl4-P*<k&bzLgiH+8<O_)-4@WH;mgKq6?z+MSRbAXhmz= zK*zC^9KyaISxQT%>^YjgPDOK}DT4H966NTIgSg%39I5fD#h9^9*R4cQx9B>0Ka;u* zk3lj`vc?HyV_dMH#FJMTUYu0hm|~<wxbY^N8i?Kq>0QU6_9ZV><*=q&$VQWvZj(ZI zAN)eiCWMLy$9!gR^V9Q#Q6qVrgf_uXG%Qg&3L#X88S9@(b*3C#@O83ldn?p~#rIUs z*QdjhYuD#fCeHs|F6P{`twfjUA1=7pI)n~DQO!_sR`%Rhd-iu(eEz3IkB48$=-N&M zCHUocrT2p9*58K23X79J@~StP;MIJ`vz`R!l+}U@!eVIjiYOD5G9swzqsfx-MjuEy z194g^w=W4yakf*1b>`9sA(T-fKw7+OSO&NC9+F#lNS>`8i#w{OL{kU4enJXi1lAGZ z`E+C8D=Pqp1A$~b@wKH~T6{rDV8nr0l9reUqvdNJ03lM3PAE3-N6U-U$IV-ur@43U zd{2Mz^n!05Wh3Gnr6umRJmQ4}GhGve>}B6tr#!@obAI!9s0K<#eb0X1pJs6HStM#* zPPTNiqzXd4fQ(Q>ph0Fr{lLG`1*|9ln5iB~ra9!G4Nr?_$>o6%+kuV+rcxa$JTUqg zK#xsc2AE#S)$_XDmipeb{DNa2XH0Whe1|pN12uts2e4T~$vLGT(<44akcl!)d(BH) zBeEuUEKPJdmNHq)eawzaLrjxm?~zD^2fqPbKZ%qpr@J>=+?D_^KgR~uj2i@BZ)x$c znI#x!zGZCL*OAVnrP0`7n__WKP{W9Mux^M7>V5vVbT#z;UJz!bV;e=5K`;`m#2PhH z2$7?3qNs!v>b7X8c^Q_xlK@hZ@)1p_$54}DAW~@{Dz-FSN%{^zsRAiUJI5{=4kULR z0P)h8q06~$T;4-cpnK2L3=?+J)F<U!HA;B0VjOh9bQVNUD*nOI>b4jb?w4fNCy6$c zdUu&Deq&HzQQKA-BR<mxU9cR0l0Fm6wI7A08Lh|JX=*xE4v#<;>P@}9@pkB!oGb$s zvckVC!gWw!Q*KvAE$kjpD_0LhXEq%tqfm_Qx;zfRvO8>0<+KeP5C83EYNdOcE$aB{ zC9m1R5K+e*6I8rxAZu6h>dgP1Ldz&zMpjAe4kF0kwt%&Whs<n$UE;<<%<yu=0H~J^ zCnmyqB#=0*?ZMcX6VRQ!5fD%a3vpT}kkAz20N$jmU}Ty7d`BO({6zhh_c+g&JoE-d z00NfkU43_5mI}t+Lrpaf1lFCVWM$>v$RVO#i39hHla+LU&c%rh3MbqwQjCQMJ^BwG zC}bmcgWpV&V=uIKy7*UW04ITPI-@|WB`FnK!&5B90xJ4z$84M9)mcstho|(5SEE*1 z5|i67TMz86XxRgI;tCYmX7mz+RzG7h?31^EY7TzLx;MzWglZ&%;<L+0ZNd0QK%GyN zuzYVV|B`w)Cb4xg7@<_TtRD97Z1<yq6a@eCaU7XY5zN-MmsPI=sOAVMv27nY3twK~ z>$qFO;Urq^Ou0ayy1`<Jd%4s$V4>=^vo^G?2|W!y`<;0vYw?#laZ2bKUxq|VFI$j> za&@5<F(H0i`<TThNdq$Z`L-6~#mPtyF|Oba3XpA$1mh;7wSONidbIxRI(;4R^hf^M ze-DRswMY~i9-tZ@94C@E*Qe^7PN35$P%A=DzTWn-2`D(a|K?5_$ZB{!F`c~Usxy;> z9_dE=m=>E#mYayo<z+=TQuKgFX{9LrdQo<qBzH9NN(rwJv`Py%zG)heyB~n#mw{b# zee~u-1qG28DJF4mnuJ)225n2mdJ?m5xgojS0l>{bWq!{~;1B^$w^bNX)#zaB%ekbQ zTrH1_h;tt`hrfFQUomo{<O<S$GhtCH)M3d5;y|fMDgmCjZ=pGb37uXbK1r?dl){L= z`Da=0uXm*1JQ-W2T|X&Kw3_h?oFtZX*a^S>-uLZj`ZnLB-qu^;H$(-nTt%X@462x6 zNssFivBVKnNj|a%T_Yoy1F}CL3GjN5d<nqC0dVqTC5nbt?4}q$6jTa#ubiNttKG#N zLDPmiu74+sp=T`&9H$1kQ~t@*LcFoGcs_L(c8yueikXO)ri?8WJAKc(pqk?d63=1a z(GPhx0?DruPqocu%g=Cp&%ewK0A2&`QwgV{o~lE5xf3`>w*h7Evg6i4SwMBcfOEqW z5;G}?RUpJp%68mOJ3Fbpqu0+`8$3!fZmB<RJJNv`d$1W_vgtIDA<}20N}!PGOW=it zIU#=z^@{kF{Cp-U*;Yy!O+*2kQJ*w1l+m|<A$SlK(4{pI(nzDu0h(IErwo~%ScC7( zX@z(4%;gyu#T`H-5U}YJ)t4CgvlIF8m_yrswmC`fPCh^~9<Z?wh{MQ{P0GWOtZWVP zXv8CPelh-d4UZZBAX_};!+LZ<u@3U>k6#aPbtu}UXd3Sx4*YYt6MzlA0Z7CHRCM8^ zSf&FAEToK50>D<bb8=D%d3wrx!@`Vx#FCKCr(*IZ5pn@f_45pLEGR~=AKjENO3C(1 zZB4LDZWA2daIbY4O9<)RA+_;ZQff4wV-(01Nb>92l?+K>;H~{thh(M0P-h@XqA^gy z$#04u^6PLmCn6p&ho$`sV`HjHa?qkaHx+-0q7&D=Z74u1ad>lM4Y{UhkKdtn$4MRr zlCYyls1bHh3;^_~HE0}4T7(|$d9+juG!9~>#tYnUU@X`9)@H~@s94fOV=ChTY~E%d zopoyUQ=+*q4u@c_)**=pgeB5RXd?_H%HjATPHQ}6)E-b9DB`<)1F~jmZxro16YY@^ z6F*?V#-;67tsm^wbh^T=%Qvj6I(X|~$Gfoi)ft@zimC`!2Ox668#j)jw2zU8o^g!v zkiGZdOhElY0RY)ZG`s_z%61BhMp4u3?)KBbys_r|QnYbMW`FkzeNUc1Bn&@oXxzwn zOq2vt^$T<P7B+5^1xX7&D1l2L8T56NoG@~a({-7!1`PE)l$vVx0JwWP)7o2jhb9AH zNFos99*BZS07QLBBn;On-_!AlNPpi=g~a3GRXifh8fXS44KUylFsUYNX<g*0<j0#a zvp7nkMC_3SUP6HfpoO4mjhEQ%osKdR`|n&GD2IfEAWP%KDmDEm?p=)g$U;$^E9S6` z#&L@M`>s`&SA!1UU&4D1Z-dq?xYj|oGTO_or8Bg8@d$YQ3kax4Hq4AcP?q~IV$X9* z{GS&sTB6!5ygbZd0~ol@@gV)y+NPZQUAK;{+e_<Y<BwD<&KkS<NVO2GiMlXtBA#=h zh_lLt_F$5pJ?ORq!V0qv)F#}X51z8d1C{`HOYwIm05EMHL+}vC$)1YjreFdRV7E@O zKz_e9UNuH0d2nCtZbsJ`uUFs%Fhm=g=S`2+=aG!}BvsRaTLUCdHUSkeNbyT^X?Y9z z#}*B4`T7FSpsDLr!|gN=0Zc_4;nN#s>99j+#{TqWn*sdkJ<_u?cII`9B_vGsJiSbm z>@nv4I=PMul9U7mOh&2{0bwAlOjw@`yR2cgoc)7y?g<7XEqstBGEgsAqDn)83Qgbv z4Bz4K0s{OYD;M?*$B_DM!vIE{CV?UzC1><qBCn4fFRs)jM{}ZySs;p<&sxD3tbzi| zDS55T7Y#oD`NH?m{Clns@WR!M-5+3xS7p3X<-DX&=m80l!e08|Hd`bC*6?4^ZUSDw zC4`&&90*@zuH53`c;(@ua1*S$ntw~_J-In6=xeFrR$l1KnaOZjF*QzAq1liwEydut zqOE8SK>Gc#u$;PG?IKZ@!C6<T9V4$Zh6mKi80ru}*^DmxSgt=P(&;bThQ=_>U>=4| z!?lLWw{j+rQFL4<Y;B%Po_xa0D0+~U`K-Z|?Jn84Tq1`&oD5;k{1^@C+yvuO47x&q zg~4|bitY=9K)<_WLSCe!2)CcEk|9|Dx>mmZ8DmGF$6gsF39;Xa*;FW47iSns?=UZ^ z!eqmVf7me)D&tGagrF(I-&f!XRtxjQDu%~~g(uiR?p#_xB%s5)paO&PvVK`6tQ0oe zs^QQ|@?tYB8=iqh!-EchtBh`Y!F0P8Brj)lqZn;X7_#MjPp_<D3LC!pR({n#lutJU zZSd~;R_>@%&KL<AGNfBrN$?AA5Ay+v#5hSIQWY)VX0;^BE1T?WBv~{vfHdAn9$^YE zH2?$POsG)VxySOYM&ykgbUj!w4f*B3W3QigCUA7(r$99S7)9t$NiKhS!vp#Wdbrqg zxOvb0^~2DcRWS$)C*fmER$?Rp$MY${m)7IUkt76SOL%E`Vr5%m?Lu2>x^3B}Cp!7r zh^`~Gmm^aVeEaP-ujOT&!UXEln|uG>DBwxQLma3Fh+vkif9dnB*XN7P^!G17^Epu2 zx=z^ENAzH5>LUzh*E28~Ln&b>%CSe`u(3pfB-{P<Sdqt^9gpaAQBZ+~{p)@C2)WVe zqH+aplvr06d;e>_<-R8~%n)xbUuM9Jw_QfXeHd`S9yQ=ZtVkw<K)?iWpQ(5X9g+H$ z*8}QsTfKM!8r*1N;TtrHfFm(d;cYRzwRcL<tPaMO&f^4%5L+@sjXd%gxWu|#-LHZv z<=3-MUN7#k_>YRAll^K+o`j7&W1zf`NWHsFoVGgE{V>N88A(cMj$pk)#+UZr*7XL) z190++%v+mL<oiC)ttgB_Ly5eVx_Fs^>}<Q=8O(N%^+ZLvesiv6#Ycvd$z(H$oLZWr z1&o*p@ent%)_p)(@t{wQ$XhY1Y>cfI9u$v&;<nw#YTwD&!a*pi5>y^K4<1hd2Bj}U zMZSX4f&!oCX&@M_0c@7%^j5nd7N)(kGCjj0N(ChU*q0w7umVv;K&E|=CV`<}$03*P zWy2)JI-7Jf3Zk0x`gg~>|NguKvZHPON7q@lMHT*QdrdG5J#@<u5|UDafDYY_GziiX zqDaRK-AFe|Bk9mJ;1E*M-Jp^JiXw`F&SvlZ->;tISzlniS;xBL{9WhO#8hZG0o5Da zR#B^>bn&)D(J|;636LZUm?SffSYPoHQQA{ke_)lJgj?eMb;9GqcSMB<DB^TU_6o7m zU%A!SBPL<L<03J;b|yd+)9Yjz7+9AM#j^D5kEsCP^&(nb)fsEH$U<r7Y9d%z6__uK zl8+d7{`Beov!?2CJ9K@bV}59cJClEQpKM(u9+blC*INxTxS6iXpT87T|G=--n341I z^XwKp-L_@#L@@<JUmd-vukezg8=g)K)f<|h;}8!U$5>y<Atoi$iBM!}#rSJeoM|yA z><(4{*Drk4e;da?LQ|Oel$om9hR!ODT91w^D<~BEDjaK#Rx1wwSzP>!26Y3etu}D4 zwxBw%E7lCDNp`k#3Jx_iAv2fDAMRwIK#@syQJEw2-&o~ClGEN3I6qq|mtbSdv#z>~ z6`?gs5E))*%eGBD>+KuJDmIVt;dQtpG8luYhT1^^9Jqf4E{X9<ybDB7;z2ly1XO=t z6_(WL9-5aAs<!=>&<zgC={aKsPUv8+#nxhYay1NmoFX=wG^ioD&rE)L0TZ0HJnLrn z&JBPz4buC0kO+lB!J)L4G6N4n7c6=fZ2s~@-89DRm1R;N-zzj>Tyx}sKmEGYV|i{R zt{HwMr#X(n-(ek6caSXP4-RpGG9c^Ttb!-e)Gq?B#B@!}EiUV=rs&l0Bg7US7MO{z zEVtvfNtc0GeqN5*M>*WgRwpcYMHKO3zd^{Q4bcW2IY9<tS)6(C7xXi9i$r*0Uz>~# zH=}D$`wT!hth{FTeaFlW>5|BB(E-(kZ@zgD#WrwT3=hIu>k&AgyO6+)@ble&@4Y}* z>c=8o8Yo~bm_GFzAKeCwZ^iDgvO!h>;=8KN*Ug*8m_9=rkgdW&bl5@s%l;QjXX(F$ z^mi83pHw}wnQl4ojRrIxTXYy&TkF_^Zf&njVc=K|&SG0w(~jSB8R#FY-VZEL>F|(= zoMH5XR&-%?cJUrZ2sFKK4TMRx0MKx@-Wkpt(pm8f<&a_9ZPR@+n2yaSK|GienG}V` zQNNv&+nApy{w_@TE{KM9$Y&$aJDT_0mlQvIBV<idZ|&-`Lsd{8zqWq#^%%DNckYIP zKgUliw&yapQDttQTWwyjpk_sZAjj$pc>pGl>5IolWq_hoT&enH>D%JaxQK@&nRe!a z4x~ms2aWeHThW&e*|A^}=5{8<dcBvON{)V}(=wEwRUvkHu3~U*M8r1vNAy2X)I%r* zbKwnUogo2XMx-5{NwEw`L0)NOWA6Chlb6@`npivgj7R~Mh}>{a3=z37w^G9VNBbBW zAQJoIu#BjDggTtmdIVkaK{@it?>d`iHRN!j1gH5j;`FHsX+%MBR`)4tjOGQ0)niT0 z)|v;^HyX4yxE+gH(M@!SW#nKI<|aoop^f}mNq8OFyN{;X`6KD{O>ibY_XDROoE^G3 z#4ew^EJfiF2R#{3ivKk143k9a{C;Imp`3q@2o>L)&TMIP^AWr8b`rCI(RePGk=?s! zP9<xFis6WKMj*vls>8H1hguGP3(cY5i~D_cFjxC<syFnh#cBK~m)aIq%KdjQ^#%T6 zWIWrhhu9znLVns$rpEO29X*kxIR=4HT8=?@nwWD^Q#t0^M^TErMn=F{X0{<@GSQ6W z>d62NMff%{LUu0>FjS$lxQ?z{!ci|!#;q#!<Ts0Uh!g|~Bz6x-73sv#Q6yK?D14|K zHI~i*ELN#vYLP6aN*#ZdIc^+yzQC9&ar}Vyrt@SmZ+=K<Wo5or%e)%p!-+fD2oM|z z+|)X?s1)!dfh~nRw`oMB2+hZ^0ym(IN_KtJ8NeedZxt#9z>ySR;T-o}v7FQuKYxS0 z(fcsfY{+gB#%TQwpr&(SG6Gmta}jnH%|)Nzd8)9bVuEw1brGy+GWL*f6Y8(POUI7M zVH7|1A7a3iPZh(7c{`Ailw+sG<kUlC_OYZaPq)KiEV*AIg*8g5fMPe0qjn`-vGRX= z0t{6domvdl0mAWa_~4`bmTIlg0B2tE%4_w7E(PK=S#N#z-4KM+M04t8N=fb*m(9!D ztX@Uud2X*>6h&E`IV64==S$`Gcm#f8zmZo36g;kp5)kZ=Vk+?kIo+!Kv96{`q)YaB z&B;S!W4QXklk2NfyiK+SE2q#?w}o!7m@@11#huk~4<4gQVyJ6s9D;18>pCg<@9{}S z$$eUM=g#t&*(>|aJ;sKP-5soAr!w70Oz+Q{+U+h%u7Pd(bKZa_;SlWYKL^(ZhJ(y{ zS)X$?Q}SkpNX5pO(kP{*>!{V^{j%LAZd%CmK$7fhBw^y;{4?~HmaD=k`3Ypcw*Xt~ zJW@#;k<{<=+h4U>EAyLDTYk)TZ{<2z=FUj!-hQ@mD7vg1)Tq9wU!Xnz%n{N?K>}1_ zf$}lwYO+F3=3AF*sRy^g`l_GBlwBj=R`T{S>wEz89%Eo?<{5kzp8&@+3St5bKwLb2 zmSdkpOpCT8wmO?(2<@Uzc1Pe@p>PYdhf~B<xZd-FuACl}<U4_niGCjN4NP0dyH(Ce zm4K3oOMXQv;g%83#N3&FkIXa$^P0!rDh~?u#Nk|_6PWfAMOGSn+QI|JINq{Zc7k7p zKrWum=DO(XRD-I=l@lr)zQfJOteNxLS;`noKm(FZ#0-t8H}!>5w>^*dTRKn^B8oE) z)@VBLTi&|2g$^JLDw;14=2(wdO%>zk<yvZoLo7c#U+B@;<x=sK0?wxej2(zx{O{Ae z>7+`@D$R+<mS_3P<CW6U*HLWS2CHAAQ+K3)foS|vto7NzC&f(NeqBC*HCrm}eqJ01 z-Pi{Y(JrXwF_%gqv8SfWqyEMelSZlmf;A3)0*yXT*F6sh)v(RN$)AF7fdee6>kJ?r zB&p)9c?gG)`lG_8{<rnx<SrW3T4rOj67qJYtTLE8bjVkV)XHe~lA9EOs}_ibG~!`K zG0l82s{TC2-DO+D;J2)_f&Ct+Txkp4Kxo*(z<7}NW|3;9txh_<oF+9LoDmP&H5Z%m z&+A-uYb}??7Tdaf?`F|*-R>aLa}RJRyrf?003@dZXhz;Zv<Btx`%m@<eeo%2Ce!2& zVwJE(7Ly8Y(xJ8!5Xj8NJS|%C%;_{mEdw%--}sS#GG^S_pZFBRUmLVy<8kN{&qmUX z8L({-l5PHHn<(~#?6YYK3@~<Ay>!%j;=_6~w}g%ZXwc6X(>@J<0@HEdU8Ky&eWxL6 zT!yO<^r`Nv;vbW!^TdGhvlADR$mq@8j3E1B)=k`b&uQ|TkbUi~KdZlbFaB~Ogn#Ki z`9N%aCEy~fi@J_Kn_|H=eCUYl30^&3n%t;=jSKr~>RhVgG=PxZDp3?4_4TF%<Oz=u zNM*EIPa>gsv7-S}JtRu02c9g~zL1)9e|>Wq`Ffmu3vTM249hG7_Owlw<H!Jz5K42` zAOSX365f$#H~Np6b2HA(L@w=}(B1w92Qg%V(Q1pqc=U3q9Y*R9{WHcYF0eRdJyt>s zizlb|ee7In>3IFw6V<<a=(Oi!`=$w{AN*m4Zm?iWiS^HPoL);Q<HUiQvS35bz`9g| ztJ&WjDLg{NI~?>}Pj4S@N*#m6TpCYOYXtxmGyAFW+VKczKd5xNkLa#7byDt>k)}f{ zit=`ZLPx2}es=@9lK(cClklU>DyKQ-briNw+qY7J8y*3N9^ABjsnSDD)|YmlLHy<E zpyrme{m*UX-0hE=`mS1chQahGu_NP+%<2Az<JMoW{BmiH^JJ;erY}1mjh<}W)H1P* z01>75PYoXUZ2goxE%S(&PD$w)<kS0>V0HD8DMz$CT4T-&9jJYO3o9wBN%0{)CuAPv zMYE}9JNb<K0}+qXX64Hw3$sslL^OGEsz%gs2{`$NX9|<X`1Qnd`pClrXXaNwl%R&L z7{~M9DA^<|fFyTn7Q;%w()(M#<lhoCSD)jyvWsF%B47DI{pjbk?QX#rVSR93u1Wcc zQzym(sZu?LhQ}2{+)ZQ&_qNxkU`fbkb5hJLq}wRCFh$`yGg_H5x~+I7Lc=2FS=lpM z(=Q8-L?EJ&&RAejLhsLP!M`7`^?N>>>DPIvcD4BS=#Lb&ywa|^`q|O0dE)k!M|-LF z{w@>h-oj#T-M;Fv3e}+Y9s4xtZ4oGHr0d5FPbxJU@t2&ICW73%imzv|K%K)PnOgeV zf@r}_e0_jIVC;AvhVa}9M<_z}Rv(y!JUBLG4yOZiLb&lhY#atu=T9kiGa<5KNM|#z zmxCUeIb6Yf;8|a->q{Ljdzdj2you!hcAJqy46249A3;K>5Ww*-1Bg9L(hkOr06Slc zti*u`F?d9n7(n=hU~(>FR(k|<#(-+5p`rfXnSCw?t<ZA^QZ-l76eS>NC`e~HO79}d zfGOH2?r8&`nexul{wUh!{osJP=(p{`J$&MvRngqd(VylyM3?B`@4O!y(mNvnG6bAq z)@OQ{+sr<6c?n706l#PIgXExV4FNRksUyK2$}K~TLei@@ay{^UaOVM~3_g@yF<jK} zKG`&w3JD3r@<@LJr6BHd@I(IY!*}=mh*J54WWe&TSv>71sXMH}AZWEcDclf5iG`aj z7|Vq-i%)}v5dgj;3~UFHMu61=qR4<G&}rg$M-r7Clou<UJ7ZJi5=D<jKowC?MwCuo zjyJ&!2GzDpT4sW;yoTi7i9X0p`P`9myqxmIRr%5>8XFt^??KEKm-q$znX~JQ{ubJQ zz8wBpDn@)E{vbb*Z!|)$SwMEAcln84{-Vjs2~jct>LQUu({#r!nnWcLBo?4&7eMba zcr<`zu{~1GHA)2uHbKWYGj2c7|3-Z`AW5wQP@D#bV>msL5ZM(N^DIoII7B!VLh351 zol2s{|7hs|I7$saVUTjmU|Eh!R<Q#eds9T*<{+5{c*US*(=bkf^tW*=Ms}p(09eH? zJ3KWz+%ChTGduTySXN9Ws4NDB%2r7wt)7Mz*ijZnd6VX#r9lXIHSmbiJ8}IYg%FpQ zo6wn?w33^0$iCqyYr6dOIguWLUne&{@85Dj%6>q9Ce>vLi1oVu3F8kjOqbV4yxWmq zO`Va$lc9JDD0vf^NdgUzU`H-V;(;tVJdY|7fKe)mihmS6CQ5?|N{Iy%7XwceIgFaX zk4M1TSTvN|j&z9$y2F&UteL{a49|I;eLpXowb<If2>{!{?gZwjOv7aCz+p?7elvl2 z$lL(g+`D$*PB_QXDTVe-*1gV`^yxVav#@B3;%Ey_y7Xe&Ss0Ol-z<ONhYlcUG=u>Q zo<<pOEMNP6Av9ei^j%<v)tncyr976Uyg{XC{`{10BM;xGn`Is56)~3)mhi$A56X%H zIW8Ns5~Pa2B`iw;$r=HqTnt&m)kU8Uj41wqPs;VmJHwnYMT!7;hY6@j%l@F5Vy*?X z?5gl5aTizhiuw*>EjDK>fuc^!Jux|MU6s(WN;j=sCE!uG*h~Fp%mcoXXgBHtBq^Hs z^rgbC*XmDz?sG|^Hy}k{$>^Q7tX?8x2NFe5(}79_Ps!4|z@<QG&Mne<Bx&AVU?w1v z^6;@5!krOo&w(%O;fxBQO$oPylBKC7Vp+9wOIs{!+k$F4@@t>a=WX)5P*%x{=@S-V zse5Bqw-zBQbIUhALCzHfss4~=iOwfIs($I8S2>$sX=TYtgta1^n&^Z3VIdIcsv49i zKc`YGo6Mk|(vJFQwc$jogmL>N>VnF`iGpJ~y<;Fyh(Gp7t0eW$n|eDa!IGND4!rYQ z6EzLKlT%%q3hyql9*cqOeR?d8bZ_DXPa|!g*z@t8f<3VS84_BGwNFH25nNdKO{*rp z?k4`VCSi9<ky_B&Ga#K2Y=nfAVkwUSifI&?maECrl0e7XjpEzY#NI7P6XUL~7M-;g zy~`E@R#{fQydlfhcdNBRUBc!a9I_~u$~5T({@lQ^5J#)F@qK_qD^2T`{;N;2{dXE8 zR$rGIP={k!Kq%<=9W-^}7&iNH^<9J4i<laH2bK5PZwPapZ;0^KO{O*C;M(M)CN8{J zrDGKe0k24CQnjPxJ#E&Fw=_CUI<}*fa|icE*Z3Jx`hl8=uy9Q^yJ?giFN*BnQ$U}$ zo46R%UeNvB8{qKn))D7`21rv15D{T1iKl^)BZ^PiHJfm>qqG%nGZi427M3JxF%0fm zF6de9?peQNH%@Hr4Qe$Z>$PCj`OrjHVQ9gL?L82P6`y`1gC+UaO+vH{P>HA2WvD7+ zK|sHXh#5<scXKHo!M~PH=FM_=3-aB)n*4n=nIUE9SfQtS$NQRI=|m&)E)r3(rZhpY zGPX$-({%m+?P5tyRM@3>O-4uMO~l;|=k>-B-d|R+oPt#_EVuh$jAH$q4q2?1areKu zdy3UGa+5atfK=q0Aa;ZMO@rF<(7IaC9m6ndsg~EAP1@jh;o4qddHqIMK(rVnnf1WU zrDwxx$T?)lwQ$I3y!O-D(9Y$Mr#!~+JLvA`5H#gVpilrTTuhYmJ5t_)Qyf*Gj5OZ` z9`nqrR5Ji-0L8GN68lk+v>=hjW2hjuulpvc$8}Kp+^YH(nHo=}sJGnBbn>IMcfq)N znGldn;ou&ZISUGqAZ=v7Y!tZ(RXe?nt!wEDcoPC?3LJsSZd-kCY<v{X#Ig2{C4GDh zjT;}8=QI-ohNZ`Ud~oplK$@;&#d`XjFi=?Y==OU7Dd?G*tz+HLj`ieT$m9Vo_am-! zyL<ABb+6nv3Zq}w<bdnu>^p&l42JIjd==?lJF0I=D+LNMn-&F$0UU^)rELnyy%5#d zP+AK>207E61)nwuGyTna#>p_oGDe9$dEXTO)(it7i-5F65BPtg=<+Zw>Cd_vFBVOm zczf<o>TO%%@w{1pR5ta!nE)Bdbhyo-5mW!TO3!$6AZWPlVc=Xk)wU7&7%b5sYz^nq z<gH|_nYJr7w~;w%y|G~XcfqbF=!?+gKzJ*Ji9$kpO4I<5UojGTH${=J8m)s?5?~bH zKe}Z!4OTv-xKhQi;$h@mqGw741dYF-LCM-8A%ROnN*|xM5yGMr5fBgTsGtJ>#?>?O zCM$p1fr{52Wuqc%ccIhxxyX;BtP3|&{w~)DFGt`y<%Jj(7GF_u%|x@m?=5*%bu!q* zV)lt`vG?y9o_)Pv_vr)vVfk-p(DZ4&hqtIGs^F*zxqcVwqcClo`@)FW#|Qx^7cacB zrrZT2!lgzo-S3#oFW^greQ=Jfsc=%>&69e&ogP*iwx}3RrA^N}I_d9<#%FW~H(3Fy zHy&$UxpzSQn_oh=zb0=-UTuLyI+_gL{G^b0Wla00e#R&5PDkzRtbr|hVB^D$e;<%H zK6<{JJU0~AGkT1*8riHL-Bj4Pu80xuA%50xqIbVBiFMn5*~m;|Fj!vCvS$K^W%QE2 zx3ewn<(RbTcg{0X`Obu0r-j%T)jeaVv}0nstM$@PAA)oJyEEs$*{)#bSAnA;SK+eV za}L{ceYq!PvJQzW`!x6r-MPf`o9S5|^Gyl)2r}<am-KZKT0Nm6bq<AWD@w-wfA(W2 z55mLN?4Q=fHyl7T4$SoyqQVX`Z4a{VmH8|jRP-Fgec4Tz6lTl<NU<Lr8}=&0KEHnX zx#p!%Dudheth`OwvkO<VE%4Fp{5#9_OXt{q2l;Ww6E+9-W2cD^18BWt7WU&2uVa(? z<312a@x3006ye%?C-b%^i(w~(<-Wb)TV+_vn}vr@B_CM+TBH*$-p_Jix~~_64_29B zJ<&-yIlb}q`@OH<8cu{i?~5jUU7`JwQwIDD68DyYc87h*Dhgtqn1%u;<^R6?*gT~q zoFcw{@Ho~rwfc76ctAkki`Y&1#A<$8#mGTkge$fEO#SdXFZw(GtD)W9AqMofr-k2a zgidiUzc9vTjkwcJi<}6&J(J%$yZ5$*cIvw~xyt%?5b*Y!#8i~e0-&CVlbt%f&v9;a z|J>wFis1bpUTk^L0FWm(DY(clNBL~<WK;*;BJ*VD(Zln{Z-07hp?{`iAAealo|y)o z)Gjf3GBLglnyUk~oc8P8-}B<QAVl21h<b8bsQ|5*0h?jpN|oSVHhj6K3lQU*MU(C{ z7XFNW^*jIV@4_k5Z=5&9h-aok?ntmJZ?t^)p7x;T&4aqPe;!?JW8W^UlnApDQS6;| z4cFrCZvDn>UG@?#SD<KI>B>4;x@yDUi-hKx^k)<#7!~!)E(%WW+53OzMZtM%zlM)^ z=CpMdtk~^m99rxskGwC#(7$u3t`1)P`~3D_?59Gb9QYgi8KcmDFL*g5vjB;qAM$I6 zyTpisN(2bR6{i?QOeVr3?nFyTc2_00%;_U45(aG$K&t8F3t6BEDk(e`vpX6VvvD_F z?Yz?B;-_^Sd0^jnbPHvDzwE5c5%%?q6{9I{TFxIBmTP8-IIYef8oxHI(5tXq`23*G zqSb46b>YYiYyU3grq$xHMT=X`7*{3UGLni#GQ`!c-dUqnca25{(2b%bqcmccjP4tU z4|2DZPtPuYa~MGj(9Gd6ee;T3l+qR*1}e^KDFM+<PHz3{MAVE7d6B&OpEhufPE(aO zYd<~LJAJ?IZLIxzvfUR=#b>*I@idb?-o~MqTKYTMgP!Mf5m=4Jt3=o_rGc;Sb!`WO zOYUr5{XYBAUu#B%iccTn9?u1*J#MB<@TK*}3I5^HIIKg<Vv5L~BZyiTT;1%r3B^9A zig4~sZzWQ}mQy8iiFt2jN;$$0gIlSYwTGRblz1@NWKhz6Iu@qOFAAanKa~Q@`({Hm zw!;z?b-=uMM}bK`PX8Wx1ib&=WU(8*U>Xo2!S7y(t3wS<5xaP@ar=D;ujijrZLtA5 zA06@clISxX$vG1rUFo%TQXZlPw_;Itwq-9UQy96ve2|Ca*CD1gcPaqj7swoDCp$M( z=OB9!kuGl^_af$f+_GbIyvP_oXpb)UOFk5yd)7rSB(|V6zbuOZXf~doKQMR5@-?+| zZ#_4)_E~7H%d)iOq&KF!Oqsst!Zx-19Zp1Jgcj!UY_ni0%wm}RwLWJEXh8w-k>NPW ziU?Gy2?dMg^-&D!nn36%p4VLs9RUlfn(qToEH}<=L(UfbABJ6?|9XglFv#2`x}f>6 zM0#rS(cE#=N1ueVRbyQ2{VjMYI4OBPz=2yZcPev$#(g};mD7nqe2|}l%X-4pyVHaX z&4#F>$XkoPqixy67U1$S_~&nz;z))d*V1t3S`hVdxgr@=oYU7SrmWN!qgZcm3*z_$ z{(iQG?w_kiZ?SDatnTWx$np@E@8a!u2#GRrV-X2)1R@T}l_h;zxw0oj)iJbL3SkWK z?kBr*<vmDihT~5)S9(gzCFc6m@TcPyI*le?{o?1y<)bbQW3W>DP{B;K#0Kl<IuiD> z>l!~NEq2po6)|oy0-5aXb@k#8CmnaFc;MaN7RSMcDh5sOVT@*BfqMo1{{j!na$a_1 zQFhpolH=x@_22tuK93?YYAl8a8E(B1Zkr{*Q9sw75XxTM{TMd~-MouuGh~xtMeht! zN_;wbG3x2m=dRp+>I1m*<2C0T>>%tHD7czI1g*&pt8_aswFej6dAk3_ax=HHVGSqs z?co}_j@})Cicmr7RFe6d3HaO-f5Fc-6ybb0?GGM`q&l2Lp%=<Xm|>hU&m(H>a^MMS z0E`riB(90(=jgM8(tG1c#~TOGM7;tkPxI&8w01E#&treTIh}7N6=^~&hRN=Z4y+p& zYBEDJJWc$$vIHSO=$*kA!_{<i1lu!^>vUqQqy2j=6<@#-TLw?$Po>m)dUGDT$HhXD z%qASDspD*vQLw`kvrhc>M{-=KCZ{eWVH+?GaCwnKiy^)~qjDW!7@%mTa*y(68iTaS zkizeD+joCoi?NM!2Y8%sFZDAR81g+YeZ;N?PsQi6sWOmYU&3UU6+Ni6jF_-=NY+%~ zVI>jjmLVlto<`51(zxiz(M4|KZ~)P|%MyE>nBCPDr^*n{&QMaGgHal${j2rt#>Gr< z`C=~8LkUV@ur0^_#{eCtW>QL<>>77Woa}p5p;g(0>3-bCJV|G-s4yNc1TBx0HnDRP z%LTRFxJh`2l-UOJ@(8GU1{oLbnN-Qy+{l!7y1(4$?q@exun~uVmsKiBY(n?dy}^8s zOse1v$Oz^ZMgix(XGGI>4|D_nJix|0sB^e^RNDrhpSK=0IYFm0PkhfN?dE)tl-J0m zT=x4_!~>tm1UH6qXQZleiz0CZ&fS6{*nE)Jv@wyL67zA8(N(A)B@zs`daq{E%=|!( z-HQ5@uBQCv%!@Fl&J?0mjC7@H&F!3(D2<*m^W`Daw&n^?&$L;YC-Y}uq9!B3B$V`v zE-89%h0o;fX5r|G6&IqSwD?X}LrXcL#M>$HrW{t6x{sDkyVrKT{Cf(_ht+)bjsrBq zYj(uB2`!~sX8lIoQ>+6MtEVyf;qVpL;rk<ld~i>5kX+Xv8-Umx58*xK-Pm6aT=bz% zdj6GLwIouANSyoiT*Yf0Y@F%A8$YQX@2}*MxmOL@a6z;fNcgXX9bJ|AJ3;5$XPagt zG7qXmcZ9!sQS*!@7Ej9Vdyvtv7Kf|Wp$2Zikiaf?lUH5|SOtrLQv#DqZRTUfmCv&3 zbp(HAH47K^Yp9Mlrl@9{+0xv5b*a&RFNMvHI<>4M?FsQm>ZoGR{N~JznLsD`eT%8! zz2@j?92<I%pO$++0w&kdW~b@(`3axMp=5m|d-KYdfhTG@>j$?Y@+4cP3ih5?Df~TL za||TNo}a-aiV{U!pL^Oa>z3)WECF<fq6qdj`#Tag<_7zgOWk|EZwk_#QmhA9E1Ziu zt%)h}_~U@>9sA5DT<qCDoTxJ}_UfK6`zh-|*-7+I-}aurp59L^=fiLKHBuFa`{cQ= zbl4_nmDYzR>|C&{Q~LLuggyyjWLkdDEG@C`DB|+(WHPCYTO@F$JcQ5s1DVT(pBdcM zJ*wtzDd|Sr;f8mTi}fc~##7P<{b@4ch4<_C0!DSio@LJc#D8{wIA-(jS?;iPogiQ5 zxM!FTx^UlmUv58eD)gUEF|o~oGGEY4a@g~7KAS^rm!P?#f6rg5+k7^z3R<WS^R08S zIkF<`2QBsd^To#696Rs@uS|sbwN%-hxVr?eZT$1=7`FN1Qx&{%66TNFxA_{pAH4PV zpFf`1_B4_&<O2mdV35!DTcS(ICw4->h`R0f40Kh<t}r@q+{N~+U_WGEfe<(yYx|>& zFZ56s9W-BMdtU1jdSpWgS{}Cj*<2NR;)xDk-?#nMy&w8Dln}g4{P1FcFYH?~I%J3M z;qUh@VP{2zkOTFHf99&f&g;>k$1V>q*Y?AH^$<c&V;^39;zR$QK!^RPdieLq1%0_e z2t!{CKm2!Ah5mbjMqlkeBwX&J34gDt5IG9Oh5`$rAo3`v4vNSc1@k}=hoIm|D3U?~ zinI<zhC`8$qbSx<l*cHlD-?oUk(y1BMo5uXUXe~mk=|O7!9$TTM3E^;k-1QjrB0C* zr^q(0$iA+4<5-d7N)bt}#L1?_C4^SumRI7@QMzfZ#OtBN7ox<Uq$E(NbgNED5T_(G zt|Yv!Byy}IdZi>ru6&zKSzJh2LS9)?M_I~RS=vMSPKdHhlCo@}^4&URIh?ZmxU#~! z^1Wl_`&Y^+aur236(u1RWqB199Tin;6*Ui)Ye~39l8R=bidLP9HcmxnTm`MWuA+CW zqJO1gK(1=YrfMXlYAmm6qNDo2TGiA;^;%A5o}_9~sA^fKdR>=dJ+5lAu4;QsP<?o% zYDcbS&!+ZBNX<cB%~40q$y&|XL(L^b%{58Qtx)Z8otisN&0}26b6w5rSnbJ`nm4)n zQ#SQyLh3&9>d$r5eXZ5~Jk-(tA?g81>VbvoL3QfEIQ5Wm_0V<ouw!-fl{$u8Bb-em zLP#T0UL#6JBidRc#zP}EL?bRqBfd~0p-v+ar;#+Sk-V;va;)*<N+XqAGmT9%T}U%S zUNciiGs{{t+e0%aL^C%@Gp|rHzfQ9Nr&&0zS+uVC@>uiLm1Z%yRtcI-t5is<OkS&8 zN2|hGtI|WODn#pbl2&!0R!yB&El#U$T&sRvtKnGd&6O6GT)UA?yGcm9S)QQXqNCkv zt$p1E(;lMTk)+*OsNGek-Hp@6jcfO;Yxf>&zrE7Nlk4=c>GTWf49M#Y>gc?))*159 z84l4INzxfD)ETSOd5^~FjF0O~tm{l3>r7qgOq1)*u<6bU>CVaP&g<wdSnDo&=q`om zE+^@(6zZ<l>8{~)*T;1?)^#_Jb+@i`x5@QBu<3mi()%Q@cRlU5Ypu8Ep|>BRcaWra zSg7~8PVWe(cRa3l?JxautoQXw@048s8=L-jA^kIX{U18|=hkTbpC0<ZLi8_^^nVxX z|Ebfz#OYs+>;GNX|97lUxY7qG3_$D#U||D@f&o<5fXK!G=4n72Y5-4OGaxB4Agwnb z>oFjoFre5lpgb|4`fGroFr;QTq!BixRWPK}HKeyOWbia(3^im*He@a`WT`h~?J;DV zFl65_ym4a4@fU4)?MUEcH{udD;#M%?(KWhhW5nxe#20GBpKK&hWOS?ENU+C9Xu?Q% z!${=BNc69f7=`g|c4Kj2V+jRgNnK+p8)Iot<2#|oGRelWMaFmQjpcfb<tL04HjM9` z7~lVEjG{16WH(U~Hc?hEQPDL~wJ}liG*J&V(MUGYEHV+*syET@G0~YY(cLi7J2BD! zYhobWg8=}}-%uhbKmde*>jy(D0|np&fIyP-O^D@wwlFbi4jxQ(BPUgzilL2)g&dTD z)V9t+jWYAMr|PpvfztPT+E2w;Frb`&$;2`_RJJUz3`->n^l^lv;>wui&!()bx*tN? zNn?ILo11`oS7mL>@%-$j{0(+zRqdq3uAi+~_IeM^wd>>87*}iar#g3K*0s&H?Dl3N zVNY$r_0>lV?XS;-JVRO6KCmpcO(%;uy(+NS@k?pO5sCPqwQUZAes#~bHtc4yuDK%y za7$uez53p7qJM^&;nKLjy3Yk~{^?)rxtMqo@S&jN@bNF)Aq6(5yLRik@UH8My%23L zxDCAhiASVh-Dr>74<~=IEPBUEN$Wf$3BDM3UE#ecbi4{!mG!+PYD`cRdeoK1glBDw zxuaLONxv5GPS|fPaVq$cdr0KaUeE0?i*B2}?6w|RXEbZPu8;$Vzxl{?mYO@gm=h5X zvS(2PpX8zgJV9)~xBJ(W)6V8_9WNSNS7`FgkZ)sjSRo8c_^GFscvvpo+GZiScm|>L z23#*X;au<^M9+&O>6wCv7*H)lG@-6a4^dE6F=9y_Zw!@W@q5WI@BA0<o!<nuwLbY5 zb0_S|5q(!bXDpx%24Xo4hvWh*dx$<F5j$5h4=_!EH=fRjI?{F+fZ{2osUM-DOmyr? zuU|z;QxBmQDurh>{HT!VS(}OJm^1g0hzY%-FsxmgXK4FgLxmzUhvZKuv`IB&)F0WL zbuFpD+i;4As6b*l*pS{&UZLVhG9fSv2NDgmO6gj9Se?v?nfkW7$h&a*n}YmJ&tDRR zz|XmZXqjBv8`iFO;g_qMits?hE!6k)+L9f5!fXG=Dl7@x0kFzDjc=L29j>vgyRBw_ zy8}N385OLyl4#%u9TX0fs@4`e7iF4W^c>k-<}V{TevcU1f~3rCC@MRG7L0A5pdH_A zgQrtF@rRdo&@DDMuSHo<*WYB8t&0x<w!V<DP_Hu4KVLMad}lLyepCkImJIb}7ur)m zQg+*?ar#%Iief|>btt-c_+^e8<!Upl@X5V@m_2miBUV}nN5G9B>IAPJWuh#^Ob_pL zUw-*jH5|Oj$tXXj?-ek>_Y&4Ig;w}N^(F>c{)qPOG6trh>(gwt>7w1Mrm)!iyX~R! zi2r2sfuQZdY(dxz(^B`W?3W)^#9^PC-=GK|XkUO>G9UipX6oY{-wNj9U)y@b5#aV> zOX9@qlC|zj=be`XzehWrQ;odtQ88YNvHn##LBZ`$b(Wqs{0fcq_l^HWy6cY)>$n4! zEDnoJ4L?$c^y~v3c9fuB4$n+IrPa}QGD1kJ0^RrhZuvPciFr-qDKWh6<z}I=exZTa z2w~Zu{2&y|=S#&O))pJER~5_{0B6bt#}-F*ECp9%Ac9ypFT(r#k_E4Z#Lss7t>VA} zbvx>xfh8{B6R}81^GN9cS2WBO^xEHDZrQ7T-~A2WlSbk&9`)c){=sws;p(~J0@Jaf zaWL0y&=Dh42}#Oo=Qh}GYsMtO5aTpXXb<FbcJP<>YC%RyT(~w%W1s<%Zn=@30Uin$ zPw(>wfAEi0$&F>qjnY1d6+pzfrh?g+pvI?Qu40f$uC0lwcjAaR8XxUsH4<I86yd`A zJQPNudg>9*>zemEUeEvo>xiit_V;2+Fu0TO+&tElF`PCoEVv^f3?6p_k#gfSK@tJI z(LvcJ<L6qL*zGEw+~H~cI*@NK8s_Y@h;`W=qTB;q9pmDimy-%}V^*pn*N77~_!6GM zqfGptRR#p8#)Z|OM-l|YQa&=JXmt?NBOnFdAmi651&b-%bBRnp6Ir(53hFQZNI4PA zys&LAhBacGUdOwbyHCYoh}=@q1jg7t=~yxgUy9D;PM2_|gJd*Q9Q`3kLJac39A0S$ zPhCno%XLPQh$p}H$#+TTz(>&d+0L3J3A<5V!rev>UWlVfQeF8|nSaGUiA$BMPOXrM zqKr>C9FA34Nl=f^)O1UeGyuh5AlLoSV8*PsQdw-xj^aZ;EOv<;+m!sWjxKu?!FySD zB-yH`>7z^;;|ECr#L3qJzlGe?a@S`oaRD?Jsr1XqG$bkNd6^Q$(0bVvCImFq8?+1L zLQ#ILs_0xMhg_a&5bv~K@}aHBGH`L=G9;U4zw$!TJUc($A5xt?f8oB!6m{P%pPnhL z&NY*MG{2!5+HeRGI3-0Auq5$zU<ot7F3sCqd4U|;@B|Agj=hLq%K$GveONXxD?Z7g zGYR6FE!mkT-5E3&kosyRyQI^%RXuD`Ad@8*oxduOQn!-7DO(aTk|UT3|K{)9pY@XJ z%#CT!iK7@Ko0_|YC_GuPREmA^#<}p9X5J$K*Y|mOAUDiZV8+ZLM!}-!S$xq}K+d{A z$tDS~DG=8*nkLbnVmeYn)@;2Nlgpb5Q5Z%)WC|VB^g16c4T~xKO_I_4^Tk9U#v>pD z{jxd(Ka@cxn;&bIA2?DRl3PT@l5+oUi537nCj}%@!H@0Wg2<4EytzYF<q(J5#o|D& zyQQ9tuSA*h8k}F56KX0%Z@J%Ief2OQ)Xl97daI~7Fgc1i2gRHz|0nide&&X3iLYf< z1RN}r3eT4IJ0N)t&4_+`QEm|Q`k_n``qPlhj<lQkpDdB;S7Qei5<&ij0+sU`l|S~f zeGf7UyNX{QR+ikVDZg9gJ4WP}P!)75gaU7GbXWr#D9F!&umTmEh*zXyuR6wD%(`lE zV=o+-s|y0MB`vGL2^spa)v%gs^3FOrt(@xLb!9B&b6WM*sQOq;&GP58<B|F+G`N=Y zR_%aG>DJ9x4}uyxyGn&>DzZCY;Yr{0vlP#EV4#odobLv^CV(D~B`Y5m|GQOEp;ZNz z!&-Y+g;Ya!5#H^D-<~&LV}F0F=jsBno)#dEZ1_p@5`r2IyJ}Nv3a@@Q5Dp8!|7m>b z_QolpZnUOMO(sX%Jm*P5PCZHaESd!?CWpO&C64h1#V%JtvYYQ(iIN``e8`7vZBtqa zcs;Oe34u{0t(NwTRcOm)EZwO)(|Y3_SH@daN7_|6@h91ewdC2KRshikVTH}#g#=@2 zb^{X=I@&zQ9&<C7ZnHF4bY?v@Yo|+W2&`>CCM^p+dL?6C79LzSmsj>D2;KVXaZas3 zjjdIUC~K!ZvJ=3-6fuw%&FIC{#Lnu@Z?lPcOU=b=-bAp+v+7+HR$dH=UCfuY<IHt- zEXkz&9j9s?rPrG<KGw{5tIVnV?uTTZ*3;cR+V!s6q{eudRIr<)zvsxB$b-&k1v#j} zV~Wxvr$K=py5N@NgjX-L(AnZ+jsE*x24vlNT1CxdX;=A0f`V0DmmOm7dvVyl+linU z<XiDO4lF^qU$r7*M-&v@AZ72kBog~+L4QyP;P>8TKC$H@uqRibdbKv@##)a9X)pY7 z>rO$_WKj1sDb}u_ucx~YhwRL(t!iBXes5RZ#EIa}OJ3IYfA~XzZcT7eVZ{ea4<yz! z90lROd~Poq!EYSlf06dZYIoDFm#JO7N$KuB>K<fG0_*B@B2U3gL5V}PZ4ZP*%!C}a zYWgAD@G}CkVv0312sUJI-9_&{kQqN<lix!+K48z%ai6W5N3gf3CRU}cW8b~+kgSuX zaF`zhwg&(KZx~tz8Is**-z_z=D{f<68OU4QuPjE{gC7wX&9Z}yrdfAELmFXqEv#!T zWLGWjA=M~c^%J2!i?ugCh23)reK=N_4sNV=oDA?LSKJ;x>$X4QA8Er0kJY}7TYr1# zZCC7<`+|H(Txe9v8lQDsD?8qTUK^-0t3!FjQitT1p*?!lk|s296C1}9LE}WDc39(O zz%wWDpm1_I;(d`|sWP^oWgGXKD8`b(dC+=lD5T3GfBdAYE8}x~_8)(v;5y=469Mqy z1%giBl1JYPTU+%w8Tkn`h#VM2;FJv}-&qAR)C(UScPfir(?ihNcE1bn)ByP?k8b0y zr19VA@%H!YQw8L$MOSzi(y?*N>H3b2b>@1K(BbvEvD#y(*Tk5sH!M|bzS)DKHDsRA zW`w_PMw_A?f1De@Fw3R8@F-;bwfoSmo&ll1UDL;-(Sn07S%!;)=F0Quv~Y{^8;ktg zP`2&4NDPb~19@IluUb?dU?V*C-ltn0&^bZF72U0jvz=@ioW<A%9)&C{)=uRV;>YVo z*Dt3yS*K&<=9JfqRdGcw$%7(^V*!OLo+pcJcu>&Qv{@?rjI59+WOXKD=6!8{Edl@5 zntW<zpCV9gjoW6K*JfxeX|$(jnPPp}?r-)S+lrL%@W@81%t_N~-6C22N)h{p9)O-l zdQ(1E2=uStm`a~#!M}%WFTqS7ksuv3#ny~<r`qdlFL3QSoojasM=?hWz{&D5|6-i> zVol)ILBXQj#+=v0%1kmi5=*Rt+TKlSrcd4;ig+JWH&drTS#r7kk8ycNcdb<zuU4?B zSukr=G&DILdAc#wB)7FBu+kR1g?=8=cXwlb^LVcC<l_v*WHbueX#MFZ?$bEfI(DVG zP5~Goo)TetuB^AS?>WVkvcS^Ncs#N2R-sr{V4Xy39qPGW9y0yAXWb%YMTqckYldPQ zKwS@wf~4HHS3LLL&Bn?70(Il&Az08&(w!N`=a#0Mk)9vYJ(l@SN{=Si(DiFO>-)1a zg>Q^rCYX3FUf8Vs2|f7Rv%+6|kT?m#6+_=#CyU9lWV8=uZ6CcafaKqUrkpPEC6tD< ze^#;GdFQd<`*O{)Xy5JP!#%c--`IOsWfmj6run_bZZ+&$QEv21f)uuoB)nlncvzE= zH=XBk)?{aJ{job``x_gVCA6K>jL6BJ?s7%S4u5@@c1rf@@N$F5NAb`E$@-{8k6rlR zj?12pR=r2IlV8}T$ck+MXI8Y6*Vn%ERWCU}4L{E@{k8UdZ|256ME~;~A^4;!Y=61- z^V*lGkWCDi$h6U9rKR=}{o5_liN%7Ak4KwdPVT`+y<uiz^Wr&F*R=JJ=Z)ZR*3vi+ z=+)6%s()Y2V4uB3KGS=x5$O+Urkt)eoI*!W&;NW@VmdMx{3fmYE!u0C>CKVN%O7l0 zpkzJh3%$Kai*sBlZmVlv%??U=V|@Sou$c0!Oz)?}!yc)(6|66pZ#0}C*Y+u?!poV* zP;Z)|QWj&vRyrv+Sl^(3D5U;*d*k@~jYC7Xw-IQ;Xk2t&*oDWJ<6|kOaQ0I$;X*B? zwz6SU>*ddHU8i3+PPc4ZAqu<a3M<c_95K8&Qu{iGyRq^5)t|U+(CNKn6GFgb;|sx{ z`gu_dImJJUucx@;pNFENKOG2{k~(Kck4Lk&*48Q4^Iu)vqdF*+m;K^Ifw%#sEHw0v zp^4H0gsey2eHaj<4%AgKq>iRdVw3bbo|$o=5*bBV+Z*dCM}{oXAu<-eZ)xY~2!MIe z|6lAWG@U&dXLG5x9T~$3NkX!I|6r+&3q1ewt~NUtOhiIsO>4bu1qR2{-?3Z2Kt)2* zZgPkzlC3(8=S+A?Ul&TcT&uz3dW#2I4zK$p>ul}&&fUoh9OagG@NI-hfsU&3RrZ1Q zCul@pG%<-$NdVE#$bt#J7&dUWFDW)%tQR^MryOhKsz0MZlphWyyCs{O$_a=ZaB7vi z&XAB&>PbI7?(6#$^(XQtJn(k;dMvEYP*d1qQv4JJr8V(Zgt0#Vf3c@Sx@x_9-S546 ziWsqvgHP-1<3-U7zl_Mlh~ODBVuN&6b+?CZ6kIb*oe>?0$prpK)YD4c+aq%Z#>rC4 z)&q*t8jrh$+XZTNgtN9DA(c9=T{$A1r1J>cyX3ZcUR|Hnib37SxFbr6)BZDj@pl9m zRT6XK8Gor5@5gtgiDKz5xG(SZPsKA^QxhVRRdg;e00>PYgjLoOZ2e)RBeC$@SWoW! zhp~Y&y|0N;{U7i8Hpvmr2HNE5Vpa3A?_@)Gn4k`Jz(a?8n2mESP5gZr^qIs|0vp9B zkFi62E3ZR=uGZS?_4;<9PVy9)Pk56Q+5M5shPy}0>yr~-cM5%QcfWaP^eC)cHkba| zVa=R=5rjuSK}bd*-5?Y<TAgoZYtaYTMUY8f*hSHr2H3~2`d!$=^eLVWvPm;-6FDX^ z?H8Ck6wwbclMJ+~*#t(9FR=&HWj9a82&K2orrSJgb$+$ZGq&bE=V>W~UYoV_c)PyX z=~Z$mJt5WnX;MyRqC$ex_iR2x|2}Af;A;El^SdW#Fds}aCQdMByB!2>NTYkyGG`j> z*|z3)>DloqJJ`!$u4|9wiH0M69_aXU$2$u`grQiP+k6&~;d|98ZXbJc+&rzqEv&iV z?A)fg@;K7eMX>tsge4+kQCi1qRGxNS>YdFW-Kv@BKe!*2eoK!pux)RqFHesYNmMT{ zMN!RYv-048kBN8w1?*(}5B7Y)q(XgPtnXuIs>N^-J;CprYM(<(>!~%BKHKi7$-guw z&iEuY=dmoOCe4DUFQ4rTHecmw&$QAvABgL#=T9tz^67mD%nzKesPa3nRyZ9S3He;s zN}_@##+~Ase?CZog(#~+pV<;CTo4oyF$U-;ZXSCQT^Y{!iW(IriGDybRpDgxmUj!+ zdOZ!|9&7SfGyG#V$!TI)Ze2a+_m8uiC37U)7T#E*&Snp;*Tgw?Vci<;CE%S;>hr!7 z8|&g#u&7b@?{&%u>K#njg%2p~CT~E-UHkvVo`xwt<qquhyp0DBbVS6N@UUL=w-lz& zPBAT{c^?Lc1>aSWv)sG;Fx9%Pm;2qZ<d-t$tKt?}w{PQN#qS?J%T{jTFCD$B>7G%L z&szmvCGmqFf9z&jMx`VfMzCqnp|2pt8l8hF-8)XAq5q+tb()ro>31mV5X>PztdLF@ zrCHO{rtSS7lD#uWMhRjK=%@E3vk`o5om|c-(i-#0H1~%GJr3VI-=uNsSfxV=k`5ww z0@;-xwcjA>61V+E@(J?Q;SF35ptY4#1}$U538*nq4<2XbYwr0!*t6nw#i>l`;iyxd zGNwf0KCet4{WHf{Wj3zS;WE{R@wCs0);w#(dfJ=h89&Ynvt`gLDu0tn?mDM`%-0~9 z3V7)*4{PBQblJZVD2woCCvi2V1_94oI6ZhlH;4s;9@IHMsI}UCY}Rv^HlEYxff_$* z=-IZ8;vb^&S)p|eZRc6`$Ho<d;L@Gcb6qZJ?LvtY>#523`-KsQ@mFVCbXykh7VR5f z9;Msda~syL7&9WEBl1xL%nZKT8uj053wAwR6fP~MW7<3!vu@NnqH?H;TSXre>HNao z;co9e&*w`{`Yj&WtKRmbL2FFV<KysBuNO^`5;r^l3W<mm2%Dg&>onh%i?88a@Y8mB zYz$e20LLFdm!ESmrls05F=n_=H=hJf1lu+;NvJ%rpdWHXUxx|2by}-F+Pbei9(eqP zv>}mf(VAmvV#Bnd9lIhZ8`-UbuQbLUNm|Mo`<ol{X20BP+-I=*ZNBz<&S3E!l<PV; zV3p6)yrudiUN_{?e^bxBn<q7rW8>Ygvs=*?NA6XD%IUk_ZxbAMJk9=y=TLqN?d>TK zr#ddU^wsP`za-2b`UI>_?%eY1jGy=jO8#tq_(*qPq4f*(X&K20%X9c&qt~aVA<mLj z78CByKCA<Ok{v1gdY=DQQ+Ig1_+m3BUv}}U$EVdTwOM+6`p!uz$(0ay0j<n{FIQyQ zr|lzDt{ctdqi9yv4N+dHCRVSS96k)3iGK|4I#}Vnh7NgbQf0YN>wJ#aC>U2@z*EV_ z4TXHO-f~@K3JLkr?BE&<tUZFY3rQJa1Ohvkt`<k~f2`={SX=Yo_=Pr-zUi~C`JvQy zHPP&-$`KM2#r*^Cu7Z%ry93`et+LuUa`x}u_)9MzwhcM4;oY)zJ+fM25|dg#<NQ0m zb>mrc1$tBHIpOB**n{8ffion$B8R0LcJr#1a;N1#9?dv>DC;LnDsaAq;y!Q_l?(S* z+Wtb!MUVBbvfdSR34Cw!kLHghByV1M2$Fg`g$kglNA~+PDF0DV9$Q?JBX9dOOYG<{ zkU1i5(^i@hQjZtUL+h)3(XUDxb6*=BTlI4)7DwyY9EHgh=WD1bhVH-lD*j{lKiG46 zwO;rv`%HYRHk|3Je1O8#dG8Z8D|brv?KN^En-{9CAl5%pM0zsKgqocgD(Ot>sz*_c z4dxyX3y+w-@GW=CgS>r&=hqbY^K>cv|3f|54}&S%UyrFsp}%rC;j-UOFYTi-)B-7* zgqnfO+g{YA%ozS8QPL55vUE)jY(~O*!0=k;44JgZV3mzl<vR(R$qDIuw@=Q=gD*c7 zzcpJS^Y+uI=sEvi?)k4{ML3ALCxZO=KH$D?TR&^(x#hlKx<%V%`<vdfn8+u!S=u!m zxOQ>5hJz8&Gh*@)+VYWTxfbrn@~Vj-mqdAWK_UNqnZa~ECKUX-pXZ)T-*s6IeT(E* ztK!f<T|wVu8X@hJXBeW?npwyVn#lYA!Jgxp0cCPYftb0m@Sy3p>jk$jXIqQs8qo#h zuIATKo=74948nq7STHLBgK!NeMu6Eccn4|_I|}Dei_Y6mWXS(6NH}zm;d|Wl@35MG z;NBuNJi0iRMqUwiFmO*tk>NCA|6^$q8Qn-J)zqcD_nG+93~=*6osV%h^8dJJgA9Eh zcbbBDe{W;++dc`4?YHu*g>T7F{B-g+ETRNmK_ENK?Ko8nwn$n#00cx31z>K=r<3TQ zm3x$Aq)lWf3VVryJJieMHIFE%48XLG7@61aEL$Rk3)Nr;ku-FJ6Fx7J%NX^JB&W#~ z_%vXuD>+8Zw{-pwdln&uX~l%Of0V6RaknDhZTKkR$#5X+cY@{sNG9A|5@U(b2+vft zf<^#vXf+Mdn1GC<&%MgXd+4e)ly6P11Fn})K@DfJ3%}<bDU+)T!wlWaRCAN>+wT%P zB<22`-p6b`$c=*DOpOpbrt*<c_xoS&8FK%3WOL&!fY}wqJQ9v0<9T_RYIuBq>0>+J z@qYoYKv2K6eT)oqc!3ts!dM*0s;o)_ki}ZG0U&U|)Oe}pa}CA|#^@VHe>hYpWAwnJ z5tkGY2o_)fH;~1wq(y0D04=ObEwq6X^nz^ExI;ulLt#nsbIA$7g32N}QmZOS+)2i4 zOvijob$h+oqaGPBLS(o%k2*@0V8UGMz5H^@laUN)xPTT|0$7|y)RarDv`Zk6f?O0s z99RvdOSU!S9EE$j(1|+be~?3}LmKYTf)V6M|7XO?T8PCyw1K=tPUS?-5@Z*Yd?hVQ zL~nFSFXI3u$VG$N024ro(}PU!{7&!;PxR`^(i(te^284SMUOEXvq4Hygr=oD#m@x3 z12Bgx0D{v@P5so*TExXb5JO))xC<o945Uc3BrGXXlS3E*GziW<f5^|&+`{F|LIJ4I zF6=@UV1X9Yr;GSYG3v&aT*L_&1V<z}NCcS06i*dhQ5J1ch#JBYnTrRoxgn4*qg;#j zL`u&5IoLwQRNO}s5QPVL#W8?IBP~(}K!rY}#nhb3BJDziJcBmagxGvY3s5$RtSQ{= zq@hVmDe4Xw*hr3if6y`bNLegSTC__W@C5$>m;+Ck10VnbIK{#WWdZegPD2bo5FJ12 z1UD>5hFs(>#Y|BbEmT82R75SImbjal)2Ih%0r)CP?cq5BVTt$DxBtU0UIRX8xPk!a zgCa#zKO9vp998|C%M-AHB?tgrv;ZqLqH)5&nleksYcwxKf0GeN0T=)P;apM(l|@uQ z&I+B=OhCv?2!Ko|);XxqJ1xZb@X#&evJhQFn3PE|OQ`NlRBhc>ZtYgO`H+bzPa~+z z2N-~Hs5Ote8%fzrd#o|f<h7FeH)wc(5O~m0wZ;m~*L*EiKip40tWYUv0U{6r*?>s- zA<O97Qr!#_e>t2E>_`R}5P%G|S2u7*|BHoCyA*&oJ=SAwK#yg>004qrMGrg`l+F`B zFYD8ABPhg7qkl0oZ;e@*omrYCn4Xk9_X5Mdk<?IB*A=l;rPQ;gj90;1hcm!WKg>{# zU4l3T0&ZwpAYfDEG*#4eQY%;jDNsm)jgqmn%>pIHf1%-@Js1Iq-N=gV!?QKjQO#H& z=-38q0l0MrBMeFf3|S@M%aYwjz}(Zpq|Q%+fj~VdM>#n{ty#l8T*OUW35hq^8`l|? zfgzX&^#mLo%^r5eH6FdO&m`J?EQd3Y*lJ_}0btq?kOJ2XfCXScDF}f$wNQTDPb5{< z5Lf_(f257s$Wk{{*k@zd=h%Zi0M7p<nAo))-fAROPdHY%6-xU<2Igg6`=eVa*i}Nr zGU)6!zD-$`MFbLk#Dt1O#r<CJ4PWt1FHIZ~SaVz>%mH`MyERISq%1|h1Hk#*FLNkO zjuc(eMO`qQ(HT7hxLv@fmD;IY(yBGiE}Y#!e=vkL$Qc5iRRd)*3@`&4fY{)**L$tT z6U@*I%}drqUgc%p6Bz&z7GdXY0W*-^=X}AF{im?QUcdDk5EImwMY-{<VH>_-96pK` zi;MGY0c6O5$z>4`X<r>}*Cu?|-`lTw#X=Uy1urz+Gnml=D60afKOvaW|6N@mSb{8k ze_emgSOi|+DiMM<6t1&W4pT6L{}F(J;1y1a#b9g9P$za`0mua#5M6`>!_#8k0a%40 z7=m#Sn?ELD888D6AX#VCw7tz8MO4`%z=F}s&Xf3tY|UXyzGO_k<P;)+#;rLpM26Ht ztGgj$poQN|?Kc4&KxhyGDUjIF<%R`_f8r{BfdOCx5w>NrDgZ1_-2m=leg#PV%vdRK zg+L&J7-$3D5JpZ)CsS|^Ge`z4s9*~&-VAPHedS_(^@Kd$V-fb_4HyS-aD;FMha3px z7m$GkPy*=MHog5&MxM^>jmeqBtV+&gd%kCUu35&7(aID`P~JIW5D=tvUt%!gf6fHD zd<0F!frb}&04!XB(tS;m5F7u5s+bZHVI!zNEDiuI=HdYkNhU?j<Ai84I0GU`=7~h7 z3UCEAW@F*?!w0Qq(H-3-U|JwxUDj<{f9~Ty9tUuiH+dTodDDP#7=Sj|19hI>?=xBJ zedlSV&VedB(xa+eD%^a&YOK!cfACBp>7h)xm4Q{T(K`zfNpasxZNm7~RDTmZ6Ig@- zkb;_?UCWwie(4vxR+Wo>0kZ1ny5)u?kXpO+Ly<H{TO{cP2m)h{0XL-8&<T??reM%T z+dqtBYp!Y14FSxS0&c);gbV;a8h|0l0nzT45BP>}a0hSj1`)w1Q8<GUe`r?f{UT^x z$rk>`KK-;Mz)rz^lzP@`|KI*?;AY1iHqS>D${Ni~vKFKdG3d<QwIq&0XlU)se$D>i z7XTrExf^N|SQS<&fGhUj1!P@p=2yWE$x+2$DKLdIP;4{47M5mXiGAbAmSdWR=+ZS^ z*GyfG=4heR7|{lYpf+u5e{hFUzMHl%0UR)eLtf{u6O`ygS=**gX26e7<6eI`o8ZoH z4d3udyeORYWFJnEbX8a7K5PGD%7ms*14L)j#m=)UZEJ|}7|(7ED2KcztN!ilIAzl; zw99G!!#jrPVLt320D+$=4wfd{HvVxGr0<%(X>P#pSYCh@nDPY_e@Z_N=K!Z<pY@CN zx&T8sgrrt#7wk|Nyx#u^_uH79>%^R4tLAVxk8?S9xqUW~ehz>a_<$t5GaSv)zF2O| z<voP<QGE<e(Y$~HSb$h2J?-=tvx$+lm~ppYuZtdlE2y~#0B_TUT5OisJ08>f6<y4B zg~JXVmJWf9{PE(|f8Yvz^2{dnMd#m4FK$oFfn_M|UJ#Hj*HN{w1{2r>HJAbCOk`+< za7SK564h<(<W8HMb7y~cXlJ*u;>2;S@)j6?I=fMyE%Bf=Mfu&-9ixmzXy_J*;wyN8 zWiOk2GjP*xfVYUVAz*`yCRhK}@6CSNIIU@Y)nL(ufe=Ure<?77JwWyNUR#;2<G8+W zML&Zmo>3u?frsZ`|Dha!94Kwo-gP^>h6WIUAQ1Dul<hO`xY|}(X7E#hw=DGQ?Py<l zmT&nKD_?P?+W;7VvhG<DSMGuibbKUqg+3`-V8vO_P7I>t@7m1Q3z5Va>WUfUT;|_; zM_tp!Y`@;(e|+V4nl5;l4qaBK>CDdWh8Kb=zJe>5VxXK`BLMIL-@D0O3uxGcJrMSf zXKHSAYCb*oBcKMXo$C{&VVCcFzyJI2B2RjI)CT0JbggPxd0+Sx+7u6WU>nUVaCr24 z*@5PD99?a9ukj72^o&M^hyU(!S9FdJfz94xeb?9ce@4NB=X!;Y<tPUGD=>l=n0>vz z^yk$W4cfcP-yZ)0Sb+*a1F0eN25;wR4ZFVW(~^hD*=6*T$R)ske&~<>t@3ae1MwCZ z0-cMYyAfy?0dyKW;z8eB`b4P<xZ;*AM_o$%7uo){$oz6x`gp&X&iC&AJp)CL`Vg?} zC2(SXe+LK_0tMs}u;gHf5K^QpICJKKkOEhXykIk6$dHQzULY$V1KEZT*N735RZ<qp zlqyXsH~<2T5-tF^(Bu;4Ca;_*cA{|N(+P*5L3<D_I^ihN2}hJ3Y3lUpgh3%(Jt*)Z zk%<r1Mwa~N^()x0V#ks#YxXSKv})I~ZR_?emyYlQ5`W;pf(H{WZ1^zZ#EKXHGj8no zG33aSCsQ_zlGrtC-!yC(VnoJ+76DoeS!w$8wanK}my|}5qyh!RV#iL9;F|5+-VzY# z?YjZ+;0GEUC~lmV2@ysL2)S}KD*>)2!Cp2=GPN~p1ipRvpuq&^&KcRfcyZ+l^9K*k zELgBmN>;*y2L;flFF)bJ_75RStavfe1^{BTQAfzE@_{=foyHn5(5!&L3;@hjlTA43 zw38D(aR8K19Q5E}QA8zm)KX79#mrJzEYXk<FAP!62hk~58I3jClm0Fke-de3X5MWu zz-OV2HiSA0E{K_GteNE6Y_rK08*X9h#{ZjdzXb=}aK@=gi#bDF5z!R`l%qidTPY|D zStePBWp>*&(4BW0lv9p)<QajU5b8PP9(?hIfKWmTN#ROE55ZX;8$)a`=$z%`&>56Q zATvM?^;mhOH9CNhf`k;(C3I65Iq||%Pe5@v6o^KRs1#Es9wCfVh%6z+8O^aVCjr*X zs3e!*+y@nZh@q64H%>w+Lks1$u)(RUrIwnOT*CGxZMNZ-TLQb4+1r_D5~pTyCO~73 zC<REw239dzBU@Kx>G>L;*5u=7cNz#vC`RO+SAe4IG5Veq+$<D;e(GJCsiuQUeDbFm zi8{ar->jDZu1dsMW5N_Pc+l#EuUa@OPZ@65p@+GDinwcuzCP8162v}m1sfaCdGNB` zN<B5zRa<>E)>&)4HP>Bx{k4tOSre`aDwDfF3o?vTCCn*dS<gu;l|&4e@Omlcy!DcK zZ@$Fs%P%d^Ky$$h0#`I=om}C0*1~(Po1J#w{OO$u6tiJ*dh0FP9_J2;ED_V0ZaSw1 zfJSV80;on9F~kRPw{6k^D^%ct60N!ltE{yC1hmjYk65(PC?3&6F3B`hK+`5P@QrLJ zf&D!6(Mvx)_0?N{J@(maU#&@*ahJmo9FaTP13A3zHg>MNEsMKedRg0T^y+;t0ez>* z?*Y&RzW)y4&AA9;vJ{t=nC%HmnTg!wzC);gL=3=Uh)R@tA}9nnIY)Fkm=mBH;G2kn zFI210K!VO^l2n1<5K5@sOmbGCSX~H1DEL{2J`|z}^nhr+GTKt4;)*j^<wY^NM)S5O z#32%~h(<gj5|gOJB{H!_-P6nmz{e3OrEP8JBT05fq9wY)#(iLlU*7CRKl}Y{P0;Xv zmpRw~y5ubnYR+Rzbr?1q>}Uo!-WgP9E?1uOpofpnsmKrjL^|LQARpe)%r^+oos_9= z0ORPz9YiP#Yc#+Chq#%9RH!o+@(e?}6N(IHXhR&L2t^Z65wV)%!(>IRiLQJlEMqCl zS<<rqmbSd*jh?s}@QI3w$S{E<ui*}VJGF~pv3Z{Y<Rw2bmWhn`JAerSCpf~P=YJna zToBztz}EorfDgOocTiU-JvQ)i7#UsZfb)%SWHCGI^iBt%bfA}Au>ltd0_`%HLJHxo zg&DFH&_b!J-`x<0ni$qYm==;`WfPYUeJDgDD$$8jw4xTB+7q4R8PJI40m#sQfCw>T z4R>hKG;^z)7ZrfFG10Gn`MMwA&L}u@T)+s%8iK?aI-R)0@ii(vpyd9fKtgRGKt{bF z>8@GGET%@KV^bt&1^^{enJT2#C_>Fns83g|Fn2uzXbeMC!%-Sd7!m;15rk#Dr8Vto zTK~K#T;nR&xze?+cD*ZJ|G}hxL`F4A9W}xSLV7@Y%8h--gctnsW*cUj=}a(HQ#1u9 zxJ3l)JZ=5qYZf<`p3X5l-pGd?19h^Kb*Fy$U}rZGCQ|Nbpo6N*!8g<gGiw}R6BvLA z3US8Io$2m{x5AZJ$C?!2IYj~{LWEQnP?Z-rO)CP-D|DkP-RV-dy4Jma?va>e4RQH( zG=LRscJ5SIE_UgdUlh|~_twmpmhm_;ohji2mMO&9DPeWtY-bT!KSlm&zr8`NbQp#m z0(|F5QXN3+BuR_|T;L@)%dIB6+QM4>HfUnq6|Zo31Qh)ttt>EJv0Mb5l47^SCO$F$ zic_rO6{na<;fg9UKofv}06f4CfxY5juVh%CA~u=vqZecG#olK|R<h8bY#*BjK&aXG zE}V5L<RHh+tu&Qk3tKHbRW^hictesZHOCYnbV3NrWVf8`Eet`~I}8&Shsae(v97R6 zAU2uBcD^&7^Q`AR^BH<B_Kw-g<=q>%?K<JrF?sEF-XG6zj6=qMU*P;DS#yY>a1}(H z%bKTICqKEH>*}VJ=XT}H5ICMjfGuI$mVg6TKn*6;YHqpO&rVXf!og*8L7ie&vo3`N z2yKp>4A#m%6T8^PJ~pzGt?b9_^#iCI05a4w;~EpXZP=+ts@K;(^TvzO>2<VY+yC1y zX&RZP%VF9onY`(Ly<Az2nH9C%upHH?YCyK>A_f795Q7xVV9aDz;jDY6AzKTLhGZq> z@CJd<rO8PHtQ_{TBQEiYQ@r99@AIEE5a=1V;JdHG;vwz5FqCq8rQZg(aKwFpNE`WI zA{am)Sq2?9u3Im0Y#hAbxUkH;*tMkkhJvpFjWBzl-&);&>g{;@)ihgJlmykV@KQ7^ z<s#2%b-L5Vv##~6bG_?ccc|D{n~`Wgfa5mC@ikDZ<8Aj?nLt*rki$)6a+g~<5phv- zw}P;m|0N{~+p8j73zFD|lo$=rfg1R2^rP#xCIJ^X)0;lf;pX~8OA!`Bs&ZNXb$`9{ zp8q`PLoa%Ns)gOzV<%S&q|otd-<#*kLNv+YW%5Sz?a?unbh(QliatKa;cg^GWVFlL z&KN<eju3C5^F4(T6y4usPWqX@TH)Ram-0B=wQ(n)*5ff(dHEpm=)*7m@sq#&=4Un* zxl^_QctkX#@dHQ;z1r6olgG$(J4<UXcl;H(<^PI*ZvhxV@?aLkDMt4+No%PLsjwc* zU`B0K02<7I1p3=n0i4pgP~-{J<dI0_IfW@9LN0^=i-_0{HPrc?APT0S3a%gvmfreB zTMI0}XdnXvTFLy0+(~s&$$?S+>0in{6U()nIheyDTmT>8om&;4w-{Qf8UNVoh(s_Q zUI`U{-Qv|wtU;ewd6G}W(3%~bub_x=c^I6j5&%6H3!WhwrlA_Hp|X{p6vdePbzJ-v z+BJ9sJK^Atz03W18|^jL5Aq+~<(>%aUVo(9-ZjQ$c#lRE-vBs5w%waIU=;>Xp%PSK z1)5nF{!<2a;nQgtu)xBbrIMVLp%Sv8DV`#KDyE_;UX%-tos<mPJG@S6tdlq3VWOqf z>;+le{o(ET-w>KZ5ddICSe=aQRATJOQzhV3<v<PITLWxD1*8BKS|ZY6;)HFXtzDQG zJ_YtQ1tPG3LMRv0ELkb8qB));I;NvKUQa7Ro3zcKBYYfY&>|kP-5x6cRv+%7zRaC} z|IHLIihvOsjt?bHIReII%%dWqj%PgKBc2Mr6~PorV82mg<84wF_JnT*RKZmr2Wr@c zd84l>%@tfgNYsf5t|LmOq)M(NOIk}i!XU@VKn{qUY0Tm}*<$S74G*525AGwRy;r#n zVG$HTrQyK9;FPcxWM4QA6eZvb6kn--D3}6310>wmG+N>nS|hD}lA38_CkD?Egkc=y z0t{rHLOsn%wxn9FC0n+oTS|r-h7Sz3KnS!z`N$(8xy;%f);%s0+_}{L@k{>+p-=*3 z;aJ6G6(ipT#zCfCsVN}q1YHBHz!XknB~oA}m6_vRAVzMYS6ZJZF8@Ujge28}ZC+Zw zC2FRoYOW@0w#7@1&$NvLO~#DOa0lUSQBE#e82u$+@}e2x-lYBFP!1w`^bmc4UttKJ zvpFH_G^7nSfH}kf4M^h*Smv1NQ-nR97G|T<fu^tUnsLFxXignOun{pWW^1OWdafsX zqGT&hQQ2`Ey2xK%He_q?C2jbB7(VKvGXY{h{)<o&<ptnC%oR*A)|o+y&2}kc@r?uh zeVou)Km}Zq2UsRW?$c&QA4Y;zSAJ$knuu`$3tEk*2=dSXa$b9;sEV#Ai=N?Yy5E$r z&Arv;2i&GfZHW%b-cIJDKKcz10%dRp=pqoO|GY>N8lypSlV*JX2SyZsAM4EKX(#{* z*-V9AB?V?>hF&B#a-oNQC=N-0@Weq#?vPa^Lg}1mi>9fXt|^;x-AlgXjFkp`u9IHY zpC0BX{_&(A`lMh6Vvr7{fCkJ_E}7z>XI?1hybZtyJ?QH+05muN4Nz!>O5|l;XJ%TU zhIS^wb!moyrBhIYua#(jnPvrwwyCL}DypU`i<O?nK^y8x!Hlhfj5_2j)+kQqs7|66 zkM<^?{-!SqXAul3Kq5+<G*@(J8e_gjGWy&QRMiy`g9*q^l~$=lUTAi5CRc(Ir?%M_ zHboq$h^V^AnIfmEmaDm*E4soJt7b&|%~&P`zyLt$K|)cT-v6k7J>n@J@~7=VmY@1# zVG5`Yyoqrpp`P>|;Bgm2dKm#U*d$J?g<@t!O4wFrB$pZmM|SFWhT##2=@Nu%B0z(4 zDP_8jEXkIv$!^cOx?_BDLng#49j2YF!XB>bW)H4cVEQUy3Mo+<rob?bfzq5`FePj8 zQt>&0vwoa6m;fYyM5@DD>2+eMMP6gJYT(6UtcmcNS&1jOavxHn>B)XA*oLjxeoeDI zTa3jg5Cnh`FzS^kV!amDy>{Dv{$+pm>3{y>Kkn=Wh=NgC1xc39fg0*&T?Ya(tBulO z?39o+IxMALsAfiOCu!oQb|+GBYg6#r<%Q}9CIXDqm*9?n|1Ic-uIP?#c3sDdJ;`SX zTH4Z}ykZG=h=jf6V0r1NuIeJM`shyrr@sPYu<k5C227D2C)U}VlByr^C9DW3fH#Oh z3}8SCph44CE5zE4R_YFi4#l>1pa*)Z=JJrZhU^=WuK12G`Ic`kUB~c^OMC_Z5Xb-s zHK5y;6x`x}r`-A_%Jr&o3}#UNs|fV34(PyPD%6r4BJs*w>inF%#*8&Ug9Tu~bV4uV zPN3srs+Ll0hf=Q9THX=-f%fG>$8sO%Y6StCFA0~h37>G1iWGNo6#IsN3=F|Mz%R@q zNbKV1?B*(?*>2t9?EdoZBKYnFT)+w#Ws4jO;F_U-lPUk{B0*+?h13D)01=G9^Fr{n zO7GKVCKgKV<ZhssBHRSH0cm<KRuE+PqOcjCF&d|_StKG~5g!W&KqfrE003R<L6KI} zaNH)A{q`j8+HF7LEl~pTAOf#*45a5Cs-YRLXCOm!1|66=Zwfqb^h)sbKCZ-~*%teb zcRs~`Svkcib*~T%K*5x%8ke#upK|$XS9cH}OtNna&|m}B=9$*;E$(3L^5zb^m+k_n z&h~HrUcmnrXPlU6QkL=Hf?Sq`$~eGHNF~5zPG}^f0Toj#rCKT$SFiMOCl_b1u7xGA z#DN=lFhiIqF#|0spEEkA^VfDyB1Ms0z9JBRq|F@K|DgBGvYn=s9>3lF_A$TSt#FEf z@A|J0<G|f%3Y{FQ$f8AKZkOpz)qyCO;pspsOlKrZas*FgB~!3J4V*^K(8XG=#%?SY z_!>8qrqz+MI;XTsue6%#k~_Pj`-MONs7)+uh9lJIBg(F#snm|@@V@HuulBMp2l4-Z z7EbUQ47tLE(25I`Y#AM&kCd8&13+^$PxGW!Gpt>6mP#$tQ7x`{Vi-<9AAn=#RUN^y zG+L*%TBql0uJ3591C*wpBWS?eY8(CLbItbXW94tZ@^an|H9!LM3NVL6kR++n8G^c| z*z{aRK*<KMEzDd)>;yriR<uP|F(q4nGloJgCU^fd26OZFinKwLbz7NaVy`u7r?zUJ zBa=WC>Y`o%aKn@wE^4IRT(c8y&MZ&ga!ciMaRgxx59JU0a$p0q4)kpgIZXg1be<?F zfj!#`T*L>&Vo2Fjm{D|9Px1t6_O)hewqoyRTkc0XMI7|OL5QRglksY=H+#2#_Zq4) zXKa*|yeqsyp$*FNO?R2S-nD-2vCaA>U;8uv{&Had?{QBMx(zUMhs8n<-`EWRT?d^B zO!WvHf@NPeHDk19Te5a)s%K-ccsm6shN?&!sbab}il?}WiywURQY*_eGK_<BeoNYE zz)e5(Hs$7S=P)k+^lt;{?h1E*KnJmL>%d_5|7>Y1=I4$DQ!cSo8NoQz^^86-2w=b= zSa?NCvvy;pR&#bXSL`;6_pUVs7<a5FrrUzAxSFpyoAX&BF6kS-;=8JiHQXB%frBH^ zww~m1f9o?J@AbF|_+Jw^QR~1!6Sg%i_i3*&qBg0b&hy7v!y-6<tEB*cmS?$kS1RLe z_9eT}^-7*5S8lF_^cRzOoXuI9x4EjXI;&roOLtH!r>z|0cx`isBQT?E=`=3(bdTRG zQ0J@<4|$>g?-0Yu0P2)6GY+Eq9Be6A0%(8*fIy^PdUjv5waOZ{e)_F#qXvJmL4@mz zG{E<zdaIYaxu3hbrXQexjf<eUvd7W$&^G@u0r7dB@~Ce^Q(przKm+!$8@UAtj6@iz zbB(Y<10I8}j+Cd10(=1TI<SRPJBDAihHpBDW2*%Nm&J0siF~U;l(ZOUg*Om9x{o}` zm%K&6_iIZ@+6KT!&87;sR=wS5Ez>TK_qLC(9FY69kP|nN8@Q2w4>5BjI8r0&8W(RA z5ufqNZ=qckG}1tYL%fz-`;~Tir)%Mdhk6%tV|bSLXj2_?5$uwiyx5OD*&`9k%eVW< zdJfDuNw@<%wT}ASr~TpU-0m}=<GY{-GQSr&vA@73+}*LGbe=rX=_+8eOHu-S0A*sp z(_8w5TlK?kxJFNZtY?OI2bxlOpSMXr|4n9<z2|>E=ogXjIc2QJDKlS5ZQeQv#k~#h zbT0NffdBX|19I>3e82xZa{tefe(pjC9_k`*Jw3A1Updr6z7=nJcWdc)Z~Ir`P^k+5 zoG~1-C=1btzV%-}_IFKOs%!vAK_;Xvg3)B#?~)1BwcOu-Y5n^7f8%eU|M5Qya=)*@ z&u>D|&zHf7yjZ-sgEOLo0)#Aq0|^!sNbDLk93W_n7;)%OiijyFra<EXW5yX9mCR7` zQ3(K%0JxCkaxzRxUMo?wbb`VOhnO5_a_C{RN6wrRc=kLp;Yd)SL75$i<A#NR5K_(v zxx%L02LjfAh!K<Z4{KJfTe)`i`W63dSg~WtmNk18ZCbT!*|v527H(X*bLrN#dlzqB zy?gog_4^laV8Me47dCttabm@b88>zeSXR|*1U{J9Fu;h67A*n*0TKXNj%x-7O8)j? zT#gU!3R)#5t*QcI3S`s1mf-g71PQz)An+SFfd<2Wi63Zi0D1BQw4j-Q_8hu7>E?<Q zSyV(sb`cl2>+tS<g^m?C3J581WxxgvAFN%IE%0k(gx0)$(2!#YW+NKDStb2nmdREK z0)vJif~X>j(6}fgj5gv3BmhDZ>7)v|NGXh!cxlO{m}a8sCY^Tb$tR$O5=xk$;^-rn zC6;P`>WU$vn##Y&Y`hW29Ch50|HmGE{1M0?g&dN|B8@x}$t0Cr(n$HPvBtj3GJAlt z&H`v*6>9*D?3&X|$Uy@FT9XB~s%EQ=HU)OmZ8zS03r;xVhBHpN<V;`=x;&?&P6X_- zyI{Kuz5`FZ@ysjW1sOkRpuMWD>gphbzM)KigZzvzVwDg4+p-`92q?#a0vmcLqKPVE zu)zmA0%<}DO+rZ}mN<M#rkX&+NhcCZJn;w#gj!Jm7Z+$MQ4^%P#!)7fU6$EqoqZPC zXr-N&+G?%67TavK9n486?;B#uDm?@3n=R+FFST+Ba;;1>&&&<CHhY8fH#z4#uFmCu zn#=RKJ*&G;yFdjUG`tm7u%Q2d^3Y4fSQ=~GD$*xU`}WcSa?p~~g78Vm0)}Xy;Sf?y zRS;E;RE=<?S1ZI&Lk?kb;=`Im98uSwcs&uRV5Jxq(IM6&09p999h&H(jXoObq?KNp z>87228fqO6dXh5yUO<M*079_x0ZjpaobQ|aRCDwoGR-{mOxo6LbGLcnwD&lC>%5cS z=%&NY&+P&oRJ=l0*rdFk)nm`SWV0$wQUbmmzz>T*7%gLhu4&+c7%KR9R0K!1s6hug z@(5*DEo50%mr$tH)(~^;L06zm<Q0|)a$aKR2MQP<k@c*R&8nz<{~h??g&&@O_~MN} z9{J>{?e?@Bq|}VFOg?L2{~UEmtIC?Nb67`%pv!(OHneSvmrb|dwwKO)nRAX`f33?~ zV7?1B*n&+CO?1Xad&eqLuq)dDTmu+@BOn*KgLnfPn^1$OMqnTWC1^pN^T2~Z_Ynz= z#6qyjQ0ZO<v(({=W+bxN&5Ck=lol;z0p?+YdKmSdM=1}6F_hs9X;?!W-Vld5)ZvW; za*b=$=RTN`LDo70gccaVYuA(12XZhD4S1t~Rw+|#(4@9_vCVwIfm{0KhNrsut54bi zRCfsGxA7#*DJyK)?#PC?Cjk+Fn6X%Y3^+9nbWBtqbBN{=#JSF?s)DV5B8kdKw;|Jc z$W}H1A?sQ<LS9W^MJ)et5mTIUf&3Y6hndvmCOO$jPks`Vp%i70x}`Y$7y)bI`iu;Q zuqlHq(Gf#XO%x;3F7YV<Ugdk!`Q*e!<*e_EcY9yJxHGWt%#VKdGf$$_^BZJs$~E&b zrKOOuj&BsufKL(u2uy*0xrR7!a}oUG$t;+%3|=T!hU^gPWHz(bx$b5`kzF5x6#`eB zp=X!e-zfRnPk;UspaB)=KnaR8E@h92L%7-y1JKav4ZwP@e3E@+$sYem@ocn7o0_gD zuU%>peR5L{-RcGnFy?KH#w3)%=vTi(u|ZK&;ay~y7bS2RVF2BKtK&he0SyaOAdh+^ zl|=ejGS7J=kme+0|2kbptC%TrW{ec!>rQkONz!fswtE4?2=|_Xeif`?73)~ZT2`~3 zl`HZ=s0N;wwGaRy69JIH<NgCS4UA(0CZHotGkVKhdX!#q>ZM4N1I+db6JTN_<1x)> zf%=t42rpQn?h40$SA<X|p#wn10LJlwokm6h4bVX<g8EI771gK{Bxgukb<RRI)q@{& zXCtXv)tsU50q9{N8-<2e-~JZ3!4>XsiCf%db<3vVawuFMuz`rKix}R}-Ud4BD2$p( zqiNzOo7(o#dWAG!2Ow!MrGqyy?yZb0J(vY>pv-(~fKi2iGt)#XV<{sHfv!6Z?INZ? zpwjNKR7I5_AX)#V)X_0@R;PQa>T*Tfn?aIAlZ4R_HXs$M?9;dz*6@Zo++h!Y7{vc5 zWoA>^&>|i&i3agu^ER-G?zyIx;ma;A$p=_^ZIQ6ZF|3{t3%_E@ud$8=oO!OW)%^Jo zArkvv06B|)&Bzg>rxpmp0=;S41EF@nt4*28G}y9P!EC{^tyyh@0t>6w^PZ87=`&v# zVmH4T&T*FWoaqcawNA`Z(9_zuWUzs+P1Jb<Fo8E<JjGjDk-KiXF?jPe-outRjDJEe zW7X?eAq!!dlWo9MeE3HD;75-5{p@T$po1v@l?MNR9cnnUjMM^SaH$(q=SvVN+toSv zM39^vH?oQ-|E}t<&2<*`u!&u4V;>vYi9s$~!8JrxW}*cHs7GBV>WItClCQR$@n5?e zSR99U$9604FcquPzE#@Nn^0zvWdz?zS%W^)6d*G2%bJ}Mg8=5(gnv`*%?6$pf~loo zfm@q@!PkD7olq6gI~_Tcc}fzuPuVTml3j6&UmW8Z*Z8rghES_v?ExnC3=m{MXeGMi z8{o*nD)Q<Lni_h>h-RCjd0Ctsi`R>f<`YUMy;7E1n!W1A^izgl0{H&sG*J>DPDL~7 zYnWgKAXs35RLw^Swt7{e8{~my-Bbl9lEEQ=+*MT>&<BW9@(Pv=6Pq{QcDKJB?s1np zK-CIIA-ex{<Sod-b0gNgA^e?=Rnaz@xJ~n#-wWLP()qu9yjY*NG~LRKY<i6K0n6Jo z)SkUJF(~H%pkjdP{st$O#|fcwV$k3S?$A>gDb=YyG7b!2!3l?@<{7bl?zz|f?s?yT zd*2&WGTu66iHrCdWH^G_^}){&GUX_kS8=;D&*FCn8(v5A7}7j<{JDP)^!B=!nMSwI z;;x2YCua=G36whML+|fZ3%K-IKmFEMrh1rs-PQ{qb5&!X6d=?NQS$0oyz2J~Y85iU z4+>BL7mxuP@OVmTaSA}sis(vO$(1^P?gOkXKQ1PkWQ_1?tlJi?`qW49u#Y;(?N7E3 znbr&F|26><FfENJtQ^GVGG2h`_R4@}Ljx}0)Y$J8{%iCCuGNyN;JD7qRxf74&h^Gl zD0Gbl&h89yD?Q+=QF==-9H9l~zy@q!4iJzS98g;_p$W#&2Efn^&kzmMuv#L2Wvwm) z8Jumo8VVV%>6M59<uXe(wB-3VYHhH{y9CSTtS{$G(7Yr~1%s>wH^BjfpbgFgrZxZ) z|4u*f>jKe_07Sq6){p)A&Hb$IRIo0oV9f|iht?8K;TmlJnlSdvPFN;PpRCX?a=;4K zU<_-q7I)wgT0jlK!T@^F7k}}87w6y~S^yY-F%#M%6N=FnWdJR9z!tq>7o$-cr;!?^ zCiwq84P1zC<VbD^_)apEFF$07(7<Ol{0amOFF3x91lflWQ80eetNXl9=-PnD*kAx8 z(FSqK5$0jk5Xb_E;PXK56*y6kg78!XPRq<G^|}t>!c6~C(PoZ<MRbOLXA<RSr~(%G z!URs>7EiziG9eRe-~^m;4A&q5tMMN+V-9H17RT@eI6($h;UBOt6CR-@n_vyTP%Vgo zByZ6QT41i4(H1`dC5zH1j}j^EqT}%F?o`Q$kU;~k=Z8{m90p(&DDi9#E&BXW1Ou_r z22tF0?z|2W-GHus6p;~sZRZM%;00_D87{@SDv?u&;Q)BB0;X;gt1iH<F8)GMbn1^G z|4qjf!)^kW5T4{|6|agZY-h3v2b20D6G(CgGT{!mf*2yR7Og-hQSuH9pe2RTE5xuR z17Iyg(-viNEjV%v4In97(=}fcHsj+Pl@67NNP6I^1zJg>x`c^;RzZL)3cJh^UPAEj z;wJIfF)SI6n8-37E$#d4rwtwe(+U6?s8a^$jez9x&x&9Zqz*4Zk07n=fevyA2@dr} zQJp#n>=udP;0cnfiuPPFOnB=rWWfq*(EuC)EUdvZR}&hGG5~CG2P*R`Sh5z^U@Z)E zHQRz1Y`_4l;6EFGV-+IwF|J_%ViQ9%R6~hpDHCd;vPKF<E)$FZBU^(vL2ZtBhl>CB zu%n0*q(-odO3I|}CerkVIU%nFAwk{RAPOHqI%QypLIVf0i2w!!sJ^rPFbBYhiZ4^; zb6)K)yNrXJYCXlQW`4yD%&wk#tyqrbG4<jOR1+sD)GOY9p+B3z0LWAtSHTt$6fA7A zB_ALyTHq#6pjo_O2QKtR=72Rf)KC8uP=OE1?5;MQ5(plk8zl-#tZfzUivvCIUCwd( zsLw0wB;5L?$ClIFR?sYi&IK2dN6(-IsN?};0Evb)V<x8vJWmb2^9RH8->ysuOV2MU zWFe2RgB%in6<?1h;vg|4EVncb*!<!?$8ZPMfh-)MCk;RvP?AmYGc1bL7W?!p|IRcs zn`I7~;3OYI7S@1T0~K7uRa~E?rc59|-f%OPYn5`K4p9yq#$gB=ryDa0`ufnu(vi_( zw4_dIEH@Pq6HyTzfJYaAU^fF9GKI~a%o_BK2-M(zNZAiO^^!?Hu`i*N{-ku)U}7*^ zZ~uVeC}gjmDCq?TAb(~GGHtO8%fd99AZ4jB2c|Vz(X=PE^(_2gHBpvXu7MWy^f3bT zTgMe>gH~vRL_P+UHVc4=L^Rrl)HFyer;w#KHmdL@6%Y|`9m(qi6DtM%wJe=e-E`Ce z93T*X7Qn<>02wOG9lU2Q6W{=JfCz%%E|D}z#WS1`()3vCJOL9|Jtzs;li~k<!dJ^q zF?)>-65;l~6fZuYCkNClh(SS7a~fY3TEXHzAHfD}@e$5~BiCSMTb4;Kw+SG(F}#5m ze|Bh37j;v2F_!J)CUE5BY8)`8G@hgv93cmP7{>^50BBZJyX@6PDb;HA6>AI8M!B{* zBTwDJmPe%^02bhgI_sL$_G=n|JK@%0F#t)!GjsNmVx830w5}x3)9W_YN?pfwK6dti zRpO`+_x3_so4^Xt0(2MDWnq?bo8S>Xpd}ZfEXH9ByAWrU<rivkTN^_)O;>djSb-OR zcrTn}V%o}3QOuQ+%<n3O1KnkOh7%oMv{HYm1e4Ppe+(XR)Umz~62ews|A~NXfzk*D zr#;TkM19I~D&Q`$7h+#k^Z<@LY1Lx644nc~J;APgOC)f$6bM3~_VCBT2yib<pd|~K zEQa8T>vwX$qH_O1OyRdI?sEsOp>vgg#RPg%bQfcO5txC`7>(0dEgX277AjqfPp+D7 zT_y^z7{?FHPb+<QgR9m!zfwl|)ew!BgoP}51C~dxL<a6yHNFAZq>^%C0B-N{VIfv~ zmz32i7JOrEZ}CrNK&UYH?_*gp;?$_CFf1>!^%m7aLE{%v5?L#VK?Xol2Ckuhabvj) zA3#mJVio4V1hgU@Vi^I0Z7par6Oe(HXOc9<f|vtf6@(ct?tnA2!VmxEpaqWED?XqF zGJ%@MI4p?4541TGaQQ7Hmwv4nfB(UMZBakPLUCF4AHLWvyaC$4!X4&WD;yyJsQDYn zVgNXSnuj1OTv?hGlxM+W5wf{|3rmhHrkN<S;u?S%ihX&0(bO%{Aq%(Sp+PdDvtk^w zFaUC(alg3>TVS8ZViockO9FbMu|gew0i}@@D`HZOXPTyqt7zM>Db*F)hM*oMc*PcH zv-B$FXiS5tRvj(%gE4j7wDuh-?RY&EY*Dxkh@ezA%ZWbVn%W4u@=eNrXxL#F$W>w0 zAW5b?BcurRc1po4|HO_&d^Jmxq7{YUzGhIS9%e5TG;`AePK|Xl|FOamY=9Q+RK(_B zW_Q2_+(9hXVI*(z5eoX1lW`20aj<9BB->&YtaUXV)J?tOGBLXecEAeO`JR>WX9qwT zL31nC!3vzwO&#G(cVHZUx*`BPdk5yAue(APXLbx9!3f%doGJQ#^Lnq{Su8-e0p2-) z*TN4LJFmH709N~)vEs5@(gxB2EHXhsKl=n$8?}jnuv^kweG#>>!W(Qrw|5&EzCxZ^ z5;Yr?vH^N476G$&02p)mD@?$=KRYYD0lE(qiv0kyA3+1e!UXz%ds<f-D*_<9cfccS zJ2V&EBb(qDYns9<+^qVpjo&cj;;^~S4<W!&v+nD~>a|7p_^AI!3M`dcECU(Hx)ymI zAYcVHI)T(tEw7Q+#TpJ^1x}5ICE124Sz<5Qd*x4%!WXSGw$?g%h<nuy1Xn2laH|@o zef5F>T9TFJw<RHeR|c}!PKm*@OH#DE0+kJb3k|#p#`_;sduEx@wQusX5nL=}z!@Lm z0oLIF&vdi7Vij2O1fY#iZ*jsMS_T4OxSL=r8XyZ-Su3E~S`pL)vioP-ya`TV4)WPR z*C5QdLNv*I4$K_Q&*HbuI4iFBACN&n?K>-YQj3wh7CqO0EUW>tYq7bp0@kfHuTl9X zubeBm*arMy9AqHB|2HeL*v(fREBt^Y>3kJhAd3S%EBwIB|1b2>-TYX!!X1jeB}+Oi zWT6Fydk2m^yNy+{|6!urRNK1(GuNQZXV%q6{j+<09sD5J&%7%*vbOzT9e}+jo!!Fw z-QNYOTp@UWxquQJDiLgK7c;DyjkIfO|B#P;sj!lIMwhzr1epcB)&*nS0j8i0W_+_M zijk!kv>IR$GO@?M`p5G!hh=q#y|-3<_~6z_SJ}E((f5SV4l39eaqmI~T9V((B0z2N z82upJ?X=Lr`?j;<a(6%%v*H`96}8{D7G+=&Xpz2u4S=%MA_tt&)rp~4^IR+B{LMAJ zC)*t>ve+vcpeL_9jBj!cy4CHqVilZm2SnEzE<Kl*o)iDH!W)MB)5{{%W45`WJ}g8N zrs26}&wJMAp0WSo>kS~g$6YJ3bq9W7D;$9(QF|)C!500X0loqBt$7GYQrG_h*P8&Q z&)&^{SAp@bz9oMa^uM8uKmYU3{VR0#Cchoo(ewl!p|G#w>mLELOMmh|+u7YAi`!ic zcR=$0;RE{f(<y(9F@Fqy{@<@3`#*`Me8^h>=xUPoN(MmlTEh-c16~te{1-k=^mtNF z+)h$_;#a(QTl}fdQV}&?V13k7S<Vpv;={LpYuAX$GDwVA19K~41gQYAf|?2#)L^)H zkp>1D9662{ap+JAkts^1K;t2$${8$`%uoVT34oaZ|G3oTf-{UxUOZ9wMBxMl2PYhg z7VW{Ihtj1JnmUc+h5-u}0zybx@Swnp4dp%%D40;zzp-S?nmvm)E!jCu+O}<>Hts)v z8E)I!_~*#aw@h_Uu-##!MF1;x+gd@(wuy|hcMQ~BHFk)jYlPhf*s&v%x3Tpe)m<zX z?TIEkh@tho2JN~XZ9$t2P<IYmPIc9KHcVEQpL9c5w_Rgn$AeXlagWWhhBRceeBB;q z-uf)D;%x_nPMf2y0l9=9k!?}8v|3qz$-R$lZuh!$Kg9ghH9xk!?)QXGEc*WbtT)!r z&5mO&+gWw_krs71oRyq$W3BQ*G`F>N*%|?u_K*KJ)HSi3S&22VoqA>Yag8Ghl7`F< z_L23$g@ZM5!a699*u)2DH3!#O7a~&@F|3_{mLmX~^#OmXv6hL4MjnY|l1eU@>O~MC ze`6g)%r(}0^Fa<n3}A!|4+s`O05S|wk1Trbsb`wje9-0q$jD$s4g?URK%xp<lK`WP zCXj$P2@pVOr35s9X{HA>a6qS?9zY8;CO|`Kspgz&P7y^cQiKSuif}=!I?Ouj3OcNS z>k1a^$}0|=Yy!z94h-wS6b_`)#sf0Qe=xu*IcV^KHSU0wkT=k*Fa-z^NhDE47-8_r z|3)3rFao(Dkz^7YD5;bZOD)9&fJ`&tL@yUQg~1aqKLO<gQAQ<|)KWb-MQ|K(Fwh58 zON8Lc84p~+#s(TRU`;`KdTB#pt{u5bVLX;aonw#GQ`RalVrbSn3Yzsmeq{|2f1Ux~ zm}QM`P4wrXj!mS77R)@GRous-J$4pdZmBie%4AhW+731TlZgQ~Y&KSLcbzprT|XZu zBw9wd1>cd`xz(Xs-Q@;jk!gX~1cB$(b@h_eg$=S>m_5C;-4x>2MBHX&9H3csS$Eb4 zb<J!R(`A?SHEEB`W0oVaAx1Wne;M12_gFsKy#ps_jop^#k?)w6dzF)AG|pwQ75M*H zu=Sl5VQQO6d+oO0j(hI9@6LPgzW)w<@WKyI{8@bxV~sZ-Xs`jCGPFQv07gv4XZ2~a zInJBNATxjo1SzTjq>n-x>7<rknklB6e(I?Sp_U3is;P?5s;d{kdI7Dqf8Lraum1lk zEMYl72*a8Jvf3a6?hPRa0vQNFu0a53=)eIWc*wRU;;nCKWL)F|iAc~@l6A4mT`q}< zyykV2ob040KMBfE{sl0B4UAwDI2giMu&}FS<po3N3IVJUmM<|aI!OW@*vyi&wwz#Z zWLbsHZid9RxCkxjD2z4Ae{zlYFp(@tT%3AL;FbfOW@~SIi(1B^oubtyElE_}|5!G} zqPWneEsj9THEgznD54B4I&(_{ikQZ@oQ*8#*_l|-;+Vx1(r-yhBHg%XHyoYCbW;3V zTf9gX$+eCw142v3+(Nb0oi1g4DUe%)Cdx}PsgQ0v%Y$~%O0$fJf06&FOf1dvL=&v# zH)&}=6E=A{Odh8Rvn!r4kBQ7=Ds!34Y^F1x3C(Cq6D?@+)ABYjgcl%VPIYR*0Onzk z>g~yz8W@M5wl{=<D9TZdBA=wrN2&Cwk5lXem8jrHD*363Rj<Nd{`6<7T<OYx7Vs6Y z1V}7nO`#18CDbZ5f8Yp#ctctQFu@8aXu*g~#3B~K$SXG3k#czugeMW<N=W|*FPfx~ zUiZq^zWUWK7|L*l1v^;61dv0AK}=#41Ir=1G{m+k$%sv$TNm$;7C7$Ur@q`-TwwG7 z!MSB)spJrnKFOh<mL(Hp{KtrpYMV|nZjD1z+8gawN3|qKf0$=&OY8PSny1z!bLuf7 zTk{sSKALfodo5#nn8dV4jwP^Z$)a0s$+Q3zXp>_ZoE?4B)qlLssb~2H(a=KJvux<D z*I`>+({eehve7wa(ODkVq9U?{wwNH>B-7|R770yrwzRFSZEuU)-0F6>yxr|M{X~E^ zWpkT?X~6?Fe{c<PR*xWTa+9D4#lUMQN_^yl)H}~7PfpR3eeT1jsZiCb|N6lSfBL%> z|8PanT>;Pm0yI{!reMG}2%!K*7{CzLVFDAB!yFgDmP0bCQHpdFBOnc_2S;L(5VEUX zEqO^wQCP2*vJfahdEvj1BCrY2)L;y_;SzwLL#^~se*@pJh5~|!F^vt?V|t8ZTE6kb z49#%|R;aO!Z~Vkf+Kj4%bW3FA;tlPHu`J(E?1y|T7tca*tVbKIS)qnxwZQDjnUukh z$1>v^YuO4p2IMGXS5yrJ(k!Tfj$3GXq|BZrw1OSWj>UZDEzaeZjXi8yWMBXT(D@&p zjjUzee?mCTetDOwT#{!`JEJIL_LOEZ8jZJXV;IG4k=K~yE#YVbIm`bbL%r>^r#}tq zP>Xuhq%Jk_`h+Gm5kLdZB`)-k0S@I_Pfgz_=X1H|y#x@Wo#QJXJkgiF_0=;}qr#^? zS0!G5mN%gNBd9@xMXUn8Hx<-wg98d6idgk`e-l$6LIocJ;EiUGz~b_Vxk8fQk}lW- z?s70p;zg5ssSsZi=9h(!5-_GTMJZ6ZAx;@~1|jTpViiNNm*Ch0*j{H5g;8A+QF)dm zHo?fX<Q!%$j&Y1L^37=JbCND}GZ_hT(1p`lqsba^(w+r9KW^(Uk;Jr&%Ut7LF0|Rg ze@x^jQkCJvH1l7Vq-IMVF)cRB99Dl5fOK5Pu|`@2mlaK9u?pJe|5fE|Xb!Cwmfw8n zs<rscGu|Jft|1e0HVY+x!wGemdhKj)yW8Im_qfZww&P6onpmy9IW2%$ACNVl5>k)m zYA=C9h*qMgTixqgD!anw?)$u}Px`&;e}1w8=y?Z9(1ZR;+V3@Bd{Z&NO%M>i-VOq| zw*?Ul4mcy__Q-)rYElNj#N8*X$x0=xuNDf$Uq-=jhBeG#so>BmSP`)geHx}Yx`nao zIs41Y^6<F8F>uAPdR#bu7LOxI$<9eDBHhyFvcTx%O)l$_ectklw}rLWseYF1f65)4 zmt}}_BaC>q3b!V)8MNS6t6S(Qalb)!av^m<7B!?XB9TQ5OgH~^q6KFTm?U3=Xe$SG ziPL{&aU1Cu7Xi34b5M3<@gP1nfOAKJC1`>th=M7of+>h<2tiJ*HYY8B3_0Kqe)n5y zvOMNAD9}X!i^6N}WIos>PmT8}f5ZlP;Dv1cq;1P~dFl0R(N-*@=Xt3R163FUAb^Eg zSV0v4V5!$Fs~0XDBvR*+ZtAjb?PfwMwNmruQY{oyG9^PARzv-EQwy^I0XJ|xWpG|H zWoM=&+;>aSrxs@yHwmJF*EdybQ-L0WaNUO%He-Dkf;eN*I7p*%=oc3cf5LonVTkWH zW?=S6V8nny@_hK`hn91JYnF-#@_%RH4j}g%bD&jHRUM(>{|LcB8aChv+9x1(MmbbR zXb^}b5}0+1m^WNkHN2E0jZqkFkr^NO4Y0T~nJ|khXpPs1joGM;+sKVtVuJ`#O=_Y% ztTq7J6oUis0m)^9$Kwvze=~T<U<4-6PV)$a@WgoA^(o!uUC<DD;zfD?L@UgOUg@=7 z2vsc8W<XY0g<6P(rpJY-$1UT=dSdu`Wq5`SmWJ_mdn=TCKH);Vhi|{v1N|ly{}y6A z<U>HThhFkT;U^bLwMBxM7Ls#{UgeBSf_-Mei^F&_&d7eBm=+;8e?^ptaxLaYP^OHg z^m87PAQM<6@HcXTC2>NNF*`7cJyw%SvVUl?m1r>{u$BJ~p;Z`bz-eVsfUby(V@Dx7 zX_kPNR3!Hgo5du=m=;<GX2@uhZSjGjAq%+JjAWS>cOaJ9aUb1in1_j&iK&>233t|W z5Rd7C39%?^@&P8$e>_G|05LcO;1o{Zcs(EB2sy9{J9sD2@`KhDgo`(X_~<D{XlzKx zPm@=90ojDk_AAhqP@R_w32BAi#*hx#h2jQ=1x7CC279r`ZYcF`CnRt7!jUfpQx}$R zN&$RPA$&NcLjpGhJT(yEG$s<~lpZ2+k0g_55o7?2Ky$y#M;0UEeSb%ilVyQ*OX3cG z*>JQ-SsQpbOx6~b_+)mel=8=vZc&(40+lx>SVz|cb#zDPXa9;znIv5)bp9zzt(X>z z5Q28IXAC$=31S7I#AkMs7H1iZ!X%eVLYIk_lxGoidD#TNz$EKXq0Y!-WHAIUN*a5{ zm^X@}IjW;O%A;f=PJiGSnF%4J2_cSv(rVA6EE}MbK&o5@K@jsGT+j6YMo@U{lz6Eb zPper^2cVBfcq-vFdE{kz0+n7CP>|84P*bRoSNNN!hkB~_EgR8#9fWSMcagJ~kr2jG z&*_mB29hx(Fa{G939|$_^)PIZ2qxeaCia+P!hL0_9xwucjDMyU3n-x~N^$I&h#hB) zNAe9p<yK|!M3pvjH;JE3pq~ngmGyZVc2kX<=oaiJB?Aioiv0;iiJ?mrn3WB>ie=%T zxOAzd1B*M5t8Lj9HYx+YK}&4ONpAUz!sv3=7Z)X}tE_5)cu5_bXe0wLtV8KF!zyw; zDz4*7uH|a3=YLvvKsu!Bx+nx;4b~7`%rgW=KwJrw18K6ZkNKn4^a18XuPtD&4M2~+ zW{+ArZ1?n<Uz&un36T3krnY%dXsVmMS%to-g~0iyUl^yvIfm$#U}m^rX!v0BB5$|{ zo%ePWG9;)sG<+vHVn2j@V?rMJcO-piNGYd8abY-ak$)i}(^<FFo_u4iOOgWtxC8D$ z78hcpkOYjC=wzzuSLruIG5Q*_^B~gN0!tegw7O_**8ey=@BzsIajObDsEC(cced#n ztZLB$Co{GfN*1dDjAOy9b#|<8Ik#~MmmWf`n0S{EnnZ^<7gUQnZhLhnbCl<*xQolU zjqA9j_J5<0SxrJJU1`#;?n(e`f_Kg{C(NP&1hKA6`gg?8j>0vX%klsNpaEY|T?DI| z!N!`M(xnMIKmI7DwE3`^w|NGcrn^an3dxY)_K+DXk#b6rb!w3zi;*L16A{LzeTuSx z%5OGQl1m^3Qh<j8kO<K76+-%|UQ$SF@V#mwmVdBSo@ddAOLdHQ%ZaQNv~=64ad8b} zI~EV{L{BqBXoi94d1U2>vo7YhX)#$4YCN(vSf3I98U~=PTMLvZO2BGMHf;f^epR+h z@~de3z_GQqg26{aq`t-~RR5c)Li=NI8=}uDt!mM?3)*riTD}P!I5Hrsf>{`(`VX8i z!hd5y8R7A`J?z6j48%dKOn(QN?D{<qq$X;TJoyk@m5EK-^gIAN1mG|&4}`BnD!D}Z zC;d7Een4E@qXCjqj|B_6Tk4we1DnaVgk#!l{_||SJF&l8vB8V67o@QsHK!eWoOeol z@J6!EOK%;?FMsNLBN=>kXcZ1)e2aQw7k^VGvXELH0#|wa59j+Dm)M~`#-V2c8{Ya4 z@0-a(8yc2XtY+avHF<U#I3lI|4>tROmW-65oc~FMp|xx=iH)-cSDAf#BsL9ff#Jt} z&`P%Y>me6B7RIc>ef36nC6?>?4<`J{Zo#6ve4-$1qa*r&DST%hT9@&gqN(i6EPtaI zgw%3y6reW1%ykj2Ld?$X?9T5D&s37GlWVz1{I2)>u9^D{O<WGn6(=!>4CC+t6IBmL zToBX}x}V8vtKh}PbterV#;8fgni9KQ`gpVpruK8Y4%^26v%3-tU%tDhbnK>fT)f0d zryrEOBecBlrjdZ$hR{pM0Rt7*Ie!%&b`^NIodj38<NGD2{2MkL8Zo!d(ATTi8p307 z2Tx=GSA-V-fk~iTw{l@w+R8Mob0LIlSOhHpik0+zIa{q7cp+=B$z(AAI}kRqz|>_u z7XKl*J>$#sC(KHHGK9NG`ghdFoY%>maAFqDXJRu&4WfUh%q0Aw&f0(?x_`IovBIm` z!bc4w2JlB{5hPo~7oJQO#4sX5nK4C87E29E@hsY-P1>a`+AT=Wms>ISJW>0+&rQ5M z@(L%eCW8$04Y&QS?%)mu4Y~>KC$*M6&jmexumJ-t(GxvSW{j|Ctgx|ZKeNfv1L?-M z3CHlIroBnh!y8~6^(`OOdVhLchR7+hE*)<r`@DlZ(<A8yHmxuKcc@&ksNQQkErZE% zacD~$xRvS~k2IKT5NKrK2dqI?brDr)G5=ZNIm$c3)}f3yN_JP1H3Y^}7wkt25+_Xj zsfgO)*~!`jk`#=;L1%uD910g2sVo<x!C7#WesGky9-=sZdsjs#W`D$d8{sMAWDx-0 zV5wkT7T)km08SQ!oz&TEqO7_O1+E_NS>%s>wg|TdJZ3UI*JCZ7M0=Al#9SN*ZrWSU z<z4ROiaF0idSVZR&zWoH@dPM<q5&r0Ci7|p4-kVbFg<|6Cbxat1dYV&`arjhcYd%e z##JZ~ecZ20(OWvZ%zs_GVG7;mmAf7tKp=hHR+!yg7?G=IyyNl_$osK(T0+dbk%6px zM3LS#?Qc0$d?@(=dT0>1qht$Ax4r@YOZMp&5&nxiaAi8&laDY50GkQ7@kn<tSKVx? zM)GHg%Qic($r6{t|Bwz=)1SFq7VBUDJ3t-xS5+U3T7>}^dVi4vEpQuSdksCQz`TAN z+N?(LI~HZ8771F|4+_9a(nU`j<FN{7|GmHO&euZ2Rbl}n8}k4sBO_cDw;-z5)eOJB zsM)T5$^QF*Ef?=*F|&m+?lN5NW@e*F6E>GK!T%66U+(cA5Aq>jf~YO#_WZ8i@Y-IH z=4!41E#J>Wkbh18TwJN^2+)$|b$;j4!rKR(Chp26j?g@V0zJ&K4ub9tN#G4aSjGoi zY>2*3YP{$IiFv(3-H;yXF<`M-SpUb{ebV1;oZ-#KX~>-B4eD-)vPiMArA~ZjPyhoL zEj_I}9BvpwjYXjan6iFJWewB{2h`1|HQ>Nk{Huy?!GFpL9;&XypcOJAJHTU=@d)pL zx3MS#0WcanunHDF2an+4Q!5u?>-S^n+5gb@pHCX0uO5T>*YV*SreE-D09Ll@`b<*o zuUhRhSr@947&{Q4ndBR^e(y>&2cw}jL1hIkFb9sY25@8mp7AtFCaaZP7jmXDb~6Vy zum)>D_kZ!{7MOj&Zt;P&|2a?e`L=FmJ21^<L5fZA-<NauWg&`|FY@s(|MO4(xRtI$ zO6K`|+i0%l0P#V?Kn>+`l-n@>WXOvv$R4x^5TJ#O0pm2}aP%SL2aex7TKi`0+Q@6f zNLusO>%+Jq1CYsRF>!!~2Hw0SAdpjM1D-t(G=De{ROkT{w4fbDdeq!fb45fr6(Qn+ z)C)SST3w-I#nu%TyneN?NvwlS4$L~3f_6%(wK3ef1rb+nkRTQ6R=|r_O$7{UF#P>X z0|O1hghz}xbSQ=56pd4$@eo<^49ZGoD8Z}*z-9nkI&%RXMl>(dC`_Ypf`Wq+4y|3s zaew260fRm)mMq~G;Ea$fY&MkpK){*;V#H+qL!Mmua^}sQKZpKL!=onEcgz`*T-GWZ zYpORnK_L3S6W^;FSfxF{j{oWbp!;EOUjB~s%j;49PM`Uz_|;Dk8&A1!%sXM7<cP7N zx<>$H&JhF5v%)}G{CE&N2AlK7JNc?xV}B9y<Xgjr50HDHzb4l3Bf23p+>k>@o`bK& z{OSvEIax9>@x&CF`=Gq@UUcpQ_U3r*4jVSK;+q<o%S1jKj#I7$C!tL44j-+f@t-;J zo8!V9G;E<c8CpCcxo>j(&I)1{*^o%&KB$mG6PT01L^YX<)4UyP<j=fEuA$RTYa*EA z#K{Yj`-R08ci1zzCcm2lP~>u`Fq7quw64qK)&X-#lTI2Me`lq&R$FhyHCO*#cjYxe zS$;Jx*y0p8$r_ZtA)o;QI1-2;6AaoQT7@oP<AnkWc;JBr0+3=NBQ_W(hj4SyV55#c z@W>l$+_|P6lCA+spd5zq!=acc%7Fl!blRyWo_-oiD5FeBN-3s_C}I()qPn2rtFY3F zE3mx6K`cnhe>y9zDK=&+mA7IbLaw>$x+|}}{PGL1R|YGLh7nv&j4{X1fK0N;D61?p z&Nc(BXD&nwgEU@FL(K`+T;l){*ktRYk6Z*;A_P~?c%Xn6hA4+7k&2_T*XLx&bB8r{ zF!7NAYP|9hAJ=%q01Z(b&xAb9Ga!fM9xwpS6AeJlf9*xrkfFu_K|J9R|Mspsbh&FV z&F{N4+>34%MSn!@N&{L*2e~yScf8E!zPVC9D<pl+5&SkZz(7#l*4sJ*Z1@Ln&iA&I zIV*N>r$N?b+&l0Z^IjCafBfE1>@epTyTvs;-?G0Q3^<`exSiY5JR34kZpHb+>^r~O zGnw1*e@FgtaCWh?{6Nv^1GK{YHHdU%a~a?NX8_=fUt>h&J~&-I;hAiLiJ&Jv-zn!v z&Kn?yvg9=eHqe0&gkS_EI6(?l(1I7lU<Ng~!B_oC7Qy;paf)RP0wAja%xabfo`sM_ zBxDE|5XB2#fP(@EK?s3p!M3EZ0Av_p00UUXe-NT2E^#@+T<H3Sx~%`<u4}jhB;WV| zI1=IqnA~dsA85e7_~oyE0VQBWF-pM<wiKr<Y$^_WSXQ{wm5GIAEEqG3#@5o7kBKZU zbg@fbOvaa#0Y)$_a~Wb3BeTZT%w{;VOlCC08PE6(XhI`eYF6VKL?}%*v|$0%xUs{k ze_cU{8VF8FxQ0PT%;5ydBir&ap+B^Jr%W=iLf$raf);cwI(~@d*q~Ry{rSNU1MtHt zf;r3``BIq2{ADm3P$PHP;2PeLfejupwl%ztmC*Ud9HuEY16ZL2cc_s!Y#>WoD(93| z7{_ve`HNu+6PUpq&njZcO&h2#Km*9-fAdbj%TKN1nC=WFFjp~v|6jbQ0qsntKYa<L z<$S}Q%DIL=1&UCD0?`{w3MfDa>PtWwGob|a=ZMAuM1=kmIWn-+Ix>;Z<<&AeIhcbL z=8#V2+#vvkvjQhb_YZNNzy=I;1Vx7l#D5SYp(S0#pp+wv7TCa>iBr);0SZjJe-Yz{ zL(S*_UgQm-4%DAe{f9hR2R-gJ#}AeoM*vuQ0#1On1)TWD1~?HtYSPk{9K>s0^}1KS z_SLU{1#DmiJ6H^QP*}qniLs8AEM^e|TGDzU4B3DK%9ce4Z6E>>=&}G)EPx1YXoC<o zaRnbLBwQA81SmN&k0ge~9qu|7e@9s2k}6JQ2paGPzjDGwpm_f=U;`5)Q<{>ng;Av{ zX^hxb+E}qoT<k1pQOg`X_Lh*@5sxL)O9fB{7!17PkA-=eAPM;xLrw;fI$Pvt966fO zoW^KIYmFr@SsSQ@V28Wu&2NG;oL~`lJXi9Ze+4{X0vFi82S#v$6}(^ue>d2{4~B4r zBWTzV7RMy;GFAys$PvdLWCM$smMBD_+_7*BWFVkR$w(H2&kDf^FZiJl!(~KfdE_Hb ze4;>DVuY8(#I`)qEpGw##iEFDj7@n;RHQ<chiN6bY@C=_$^u8|a*U2|u_KB}rpN5| zg}Z}c8F&S`7{?USW;d(Me`R#WNcH}Vy+d=aYT|3j*)V_w|GBu$eR;zMtYL9$AH1u9 z0W4uc7uwK=Ms%VTy=X=^+R=}Ow4o_%;R{FO8U)DghMV<R7dEUa62k!`GUl=B;!!WA zFhyTXp$1d1*u?`F!fA7WLK~x`9^QbWj#ps>8Prw=w+%8Ehx}V;e-Nx-!bO<Elx*B4 zt5ISTW3F>E7Tu10thyq*E|*W{W$u30FfdC@naO)*58zDAnAusIL-XcHvIYf+a06^+ zQybd=L26XH!qu|Y0Aq12(1Lblqy;{3f*0K22S<3q6~1tWH~dtSws2xeh^)pI#01gW zKq5fwX{@lZ#A-RQf0p%<vce>04;ZKb5rkm1Re)<8H17XMtvw<TDXsz;$cTwVevQR` z`D@riDYB7~on(eF8M$k0qZ_CETsc;|j@I3>w)yyFZyRRJ<1H_mFLUnncBajbY_Dk~ zi3kqFX1=yrf)u1cHLHD6S^PDQg9q(!y4T(AcgK6)^}ct$fA`(t5GMw)Fl@rcJ`3Z~ zQrH<g?r~A8h17SviyBByn3x@61Se;40a{MP8r!(FP;|t+Y%YU`+-ngU=($gPI~3p^ z`(VUfHph?tY_LR|%5s#hwX>XUJ#M>?-3{}%#Vc-_k=xvg1VDOyw(g*Xy=YE=cO2@> zf=ot@lR|ibe{agsfRL2rR}Y@M-^D+E@|WNI=SP3~|JA>Kz+c!{gzqpy5WkKhn1f+g zQLY<D4HuDXw~sWiJjOtS#ux!J2!b}a0$3Y|mopbA$~AeJtsaAj7C?sE;;k<FA}}&C zXc#&(GCKTwvZRwTvS2#LyE6X6wy5j9sq41j3#4$ve>&q!Gvs5l^=dvi6Fb$Yq_e9p zJ<BiP5DroLHv|j6^)tdFM8YIg!X;$FCUinv0X$+c7F^Rb6*|0V;XpFFzmD^Y=8B`X zD7DC&yfJ$Wn@NE^2m<VrF^u4dj4&cc7?*jWmmZS{+cJR*{5gRsw%~d_Wm7WQ13{#N zHjBAEe`-6yYa5w7TEXp7nW_t~m?6HbE4TAPx1Il4J~z9;c1xPrz$B<iy9K~6J_8PZ z6T%@pu+tfzCsf5%WW`o=#aD#ISZuWR!>|%smQ9nt4OoYASO=sSE~&sjkAovRg1nLQ zqX29S^RkQ)aD_l903(3L0q`LssF$1THDvGue}$OCD$=<D$bp~mxz!VjpyNX=^guKU zMA`$35iCS2n=UMaIz?PTZu27-JPa5lJ{jCP8swR;V>kCojUA+orwM@&07c%=H$S@u z;)pv4W05tG#fX&1iKNJiw8)FZ$cF=#3X?*VU@U<!JdEo_W8=VTfQsXam@aHQ6AMFQ ze`FaloD4;pfkQBZ1@N()i--Wo1RwwciO9ww|JXG;j0hQcfjbPx3~armKsMO>Lv(}~ zL99JOEWwS*J?h#$70fP1tjCsl#BeLK;ybhBLoY^JKCr{VqS?fzsXqH+yQ|p%n#c!h z@HYq(Cnve6jKs^l)XTl(%f9qWhTBL=f2+j@yog*Z2NNg?a{NV<%)haSqv<L}|2sy+ zNJcbUB+GySEeHXg<V?;KfH@F=p7fThl0b=gfEQQ?4FJbH3<`2|J#+lS4}3~>{0erQ z%BqCN6qLt3qQ}6n$E(Z7u$;j)>qi@eq&VY%ccVA!14XOx4NwXRhBU<jLmu9tf1kg^ z&g|6A?c~nx^iBx^Gz;rUD&#O|5u(G?L#6*P$t_IDuvkejj7-T33~;N=a;rqp@B(_E zhd!_Y8xR2h1knHd&z_WlYy>8pgNTTD03%3E4E&;`^u<0bE<l{k{EN!wYDag}y?Def z?b5E^Tp2*>O01Jav8+V0G*0Jxe=m5WuTKoc4KRWID#ZuOfnZW7sqzDc`pzBY(H`~D z9|cnF3``M%7Y%Eci^Dh*P)&geBMw9uVB|vmdrbZ_HTet-WK02NBuie{&)V=$0RU40 z@B}a&Q_+-x9;z2^v?3D-3UO@BCVfpLJ4ckPP$*l+H@Z!y%gsdWP!H`*e=rkK;QUH` zOeEs;x)eQ2NqRTxW6rA4H`F5lQEJE_|E1JQwbV<+)J)aXS{YLJBcaAJPZ*_%-a3FL zHHY<t()RR1#|ybC9Ye2-$wgYXp`nLNBGWJpQvelBY_vv*$OO|I0%$mZ4?xO2jMHSB zP^WY<sQe1syG`5-Io<3~f8XOS?+U&VjYNIqy5vLAo-xaIgFY;%zWb5^PkKx4lgm-s z)OBUoc6HZxh1c%v)C)6GkUTsk^|?|t)hA_4VcfqMh|mASQZ40~(Lez#5LYk-f;sR6 z&;$Zp4b4nwfd_aAp)}2JVN)W5Q>8o@qFXX$bv6sV)1{j>4ShOkf8{bi{XIbCN<p0& zLfzIH^wxhwjiNyWam}*@cmOp7Lb(5%&UgjdpcUGoCEB9ByLqj}TeQN2fKe<`y;Ai> zRP9%l{KCiUKPxp1SiPAOb+gmJf?5sD&iu?V6;m7F$pE-UZp?&VUC>}<y#s)TjXg4C zjXjVJ!9m2(XVueaf8|rD(@NjuN^m1lZRJOvDNC9~%Y(HIwtRs6g3B2-+Q^mM$)()N zwOj@3REbks6UYIK8`Wg-34QfNehtPh97f2zT7jj^EVWF-<pMY}8ia+K&h$*s4AVIf z&53}CoE*vlFo&WTN4cF_k3AzgT~^vOU6PF>6MRP$>|3e(f77aa!9fbnLmJK#J=B@a z#5fDr#a%nz7=WIY&dVj=@-^S{|3%;Qy_N7J(hTD;&P|BJ432&Q7*mzn(sj?OZB;Rx zPng_V<uh2;U=1%=0(;v@+6_$`@C5$^f?vJKh&WprFai-M2U?&7xE0=|^h1WRTV|yg zsVrHObqho+f5vJ3(BBKuz#YD?EKy3-4COoA?G-zB!&!qogSG=g$W`AR=HVXp;U6Yn zz#9o89f(|vQB3Q(ps?W4b&9E#QnWx_SDj48AlS|j4fjeK6c~gh;Fg>e+lK{H26kYa z+{tb<hYNO1j)l#l>tN(nIuZ=wy#-hfP1(JO-rvN>e?b+_eKgcY(%$3DLFn^>#XZQY ziP5c@R3KL5MP}qicH|w++#>%~+HxodA(}Pe$gSNXRr@_j{9RR+4A}nFTKkmMu0;)` zK?EhRF9;3*+I`ps{!dS6VBS68Owd^)xB#Re$p|GQrsQDb4Ou(=;JgiCXeD8hGvU9r zRuzUse-<WOLsd6S1mx#KSli$vt4Rc{@xGsZ<ZkxnZwBXZW<T~d3HJp_gcyQ#K$irt z1}zHRB~}X3jZ(*iVk+g|D_z|x1`Ql!jUH$XEJ!=v^<vM=RRNvlh^XZSkbw&@hYifa zHU3y&zS}6n(>OlCIYwFNU0Lb9N9xsM>*ZtYfAwSL1LV}8VI{x~oh<-9)0*)W=a+`* zn3n08PPoj?uv;{|Px^)g|G0(($Yjv1->B{6d45l;mExBiWi>P00CtTY=m9N;fd#P1 zZDD1x4dec7SXXXfl@^6XXlOMat_^0k*%R4embT@k%Dp{i-rJ+UWm(~C=9y{XoIy7j ze@0YrRoqW>)VKVAKjUVa2JFBV?7=4Ny@I&JqBwgMq8RPzo_6Pd5#4xhVoyF@dv?je z7}(Y=*f7B2)^KVL_{0YuXr2_)t7d@y#N7twOtyW2Ts~IfmCfTV>*R%Fw1!rUe%^W9 zXgv1lm)+w+6={EzVVgw(Ua)4BeolUKf9b+z?&fyx=Z0=wv1yPvp`{g~b$0BZ#z0PH z&&Dk3{dLK#rQ-i(q$~eEWzTl%9vB1<(AgF^gP5Rd2qx(M?9bEo&oOma(G&tvVCcE^ z<*`o3*>=`qR_m+WO%GLOdlcMk-Q$?;R+3gx8fF0)xaQ>c>*&Vt4A<}t=Wyt-f9Vq1 zG^RCy=;Y}Hcx*3%XD6NPd9Lg^K5ER)XU*;zen#&em;gi=1S!atY!Pkw27)oo1^S*1 zE1+-Cbl3n`(4`pOIc>Iy9@*NivfDQBKDFcB4%9sMZIA};t{Z7-R#DY(0xUr33O`q$ z?eH^4^E6j;n9kg2pl*9jh(lh;e-hX3O&03zW<33ENy$X&@h0W+4x01k0H>aS3FrY{ zNCv9uwH^1doIGGK{}yr^U;rzy@BaMEo_qiq;BSQq>tvN^54L~-w{2sda=!&pM_h1c z7S6Hc@)(}x_sVNB*Jk7R>ovFaTgUZW2U;QaNREKtPx6L^RDcpcaV6f@e-&5N77t~7 z_VdaB^v+K2Lhk`3FoUW&(_SOJ_fAkBFI!2kvoSygN~drCMDhZd3WO=6*lgq3e&Y<4 z<5JgXs^e`k`{<kT0PN*fnT7B~g)cFW8sskX<<|9qC-{Ol_)3jr5?U53R0!Y*JYu19 z`UMK^PF3&L^JN$B`c&%Ae=zT(8FU*j^a;>}L@xkjD0vwu0Mdhr_a5!5mUK#IfD>Q< zRG9SB4o!)$8Xf=e*k5jPP#5(mCv`er#5-nYuaxUE!weSa(mtSvK}fet{8oTWPMp2w z7bx>>KKQKH`mN`By_{~P?OaRthKC<^$4=tNR`H7W*C}=Jdxr65f4__^g?2(ObPfQ3 z1>g;6<gu4nbZzHd(q7>Dj(G+cgA*wH6A<^FbjBCZfreq@Pj_S6wCLu=?GmnI7Tn5~ z#qt3xFU;6a*#Q08poa(d@<dgQcSC7|tQwY9ZguVY*N6Ssm;EFh(ra+@oZtv_9)eku zO9g=Vp04wtR?neUf7S2abF8IL*8Ovi4|I>G`;ga!JwQMidI7!Xu|;omZvRhjAAFe~ zgTkK;1`Ysc|HJ|Qo{GlrdF1_h+$(UQZ)*@$@D(nknt=f&puVQLBnDubJ`h)cpf?Br z04@f(gh|M2A&Q15oIpf`g~bvn3(gdHkx0V_YuAX$lJ##Sf60<2PohkzawW@_E?>fo zDRU;xnl^9Z%&BuH&z?Si0u3s3DAA%uk0MQ~bScxOPM<=JDs?K=s#dRJ&FV9xEMi`- zS^Gwy!3PcHHVhe};hR?lZWCNfkbnT)26hh|phXKBUvou@h`69*@QM`{ENt53VDXex zF=BuK5hO^3e+p{UV8~44(1=4RQg{eGV}=rf1rs`S!hu7N))QV&;DDyWl@|kU+kRmL z88R6%9z6eO(INnGAjSoFvZ0&-Dh6XtjENro1OppD0<>sT0Eei--U;g{T=+2g!-*9u zUhH7X`o@hP!;dUqGG)q@@2jbR0dr=}7-#?p;0T?0f9Ba|p~0Yp5-jxL1_KN@=-`74 z^g$tm^w7hF7X~F1#zMR}^biUhpuh`7A-M8DMrw8R5lC9W7^93c(paO7H{zJ1jyv+$ zqmMrV8KjUy5?Q2-A%XN2Sk@5m!3QSfkk$|%xad|~ad|`6SPdM&<z9VN16W|*jfWT{ zjJ-!he`J$Yc9~{05O|<y3Yvyc7!9emnrp8eaYPS;pd*BB0}OGSp+@Xhz;D3~SKM&| zEcak@|I$%Poecs=5rB3pd>3AL;+1z84v9gM9%Jpf=NNoy&PQJb_TgvQe*Iza3Jw1S zI0Br9@cJ2O39`VT8x=x0VIRjb$Y3AIvM`81e;s}pB1BF|1VBX>t!P36-+UC3k>7$F zuDIipTduk1qMNR|>$2OfyYB*pWLLyo1J*ZWX<!0cLu~MYSH!rb09<luX&0AyeF=?U zfC)yJVThUf9%Qas#@~OO85o)eqm@>WK_KF(=bjTBF@Yv%2zr~8X&t(oZ@>xHsBu7e ze*&ou4^sCWrP4hpz;$P6hl6-SKOE|L4w$-Ld#OkqU#o1w8tbgI-kR%Xae4p)u*XU$ zA%*|TvXBc40)!o`*?rK%0zF=M;UUPWL4?9YOK>BFiZ2XdLW^FB1h3zJ10J~GgA-o3 z;fEuhxZ;aP)z!T8S`!w&XYrc@0bWUCf91eg*2Sfld?_5J2xB^I-kD3sz$%*+zZoZJ zb9Q{1hYzjBS`V<1JV6gifN%w&E3bSTqR1!;bE5&wEP%}uLbr3J)m=wK0TvKlG<l<L zQmT4NPtiTosy@c*d{E!lrmPnG7vQcVq@cyt6?*+3vcU?Fi}Fh>Awd51lO1dye^>y} z3va`dY5;hmiwJ56<!Ar_y45$vK`??6oFD}&Xu%6&FoPQ0V2~X5FMBoVN##gO4m4m5 z|5-=_U~h@bTsn6!y?}0Er2CY4BBrV}*~d+q!I+#jMw&XICS<m|9iK|330D+=4Q!Co z2AU`(L+PeBi(*s&GL^jL;fzuSf7n@dmJosfEFchVXoC<Eg9D=_25H-4kN2APm{z$e zYUZ0-e*m-x0%;*@OIQ%sCS)wI*-w97^kN7K83G{SZwX^F8y4sRK)E>t5ptu57gLl# zy){q)FXA94JL$<!f-;n%93?4BX-cPfkY3SXQj;{01GEgF98~H`<`i(He*|!DOI^xK z3`IA?GGz}<j!|6>`6HlSy>4T4@>me_WINcDtWQorhaqgk#3o|%i38A$%N8XZ;spPI z8^=k`&2ZK{=Sk-TeGtGG7w~{GZsK~RN*Wv62)@+8k$mOL4`$G3D>%6i28v{mALVBu zv)zx7QdlTM8EVKx_K!gTe*~aJ<hCsRNx>Bu!P^2G$hT91G^8RODM?Fe(vzYzrBmU` z2d_bZZ#c;;`!WHykQA_iwQx%>OqdKCMnj0HM`Ac^lf|x<G12^xARkMO$cRX?KK0-j zXBbpk(1J}TYV!qAlp@T)i98@6M>*xp;?B1CoCjSB2qCb@Ma0+!e>Ku`X>Od@`07(W z%UH$~7%;;flMzrD^zT>&rO-jcCP*(bbODMz17pvi*abKgqGn^kL;(mk{8{8~|9RWn zCROU$&w@6zq8%-1OKVzkr4n*Xa*_!sH-sG2v@4p!Qo%gOOE8Jar@%a&_wY$E9Uk+j z%Ip}2X6MY2^{G#oe^7!euD}MBRW+OYVp+=)<;~+=F;Zl8o>|XY9iN3DjBkx=_fiEP z-`4e2cV%5)0qeg86*NM}0^8UGS;&RD;v#1N&O7<rSja9k1d=`5{Pee0cP3FS+j8J( z8|>f*LpZ_`o-l<;n_3W-rL|HrAxLDqLV~#vFEH%OUw-+pe>5`YhQBQ;50l9;Al^xc zt#N8{F`<b)WMohm03MH7R;X=m^<|7|lsLgk&Vr(IXVgJ!LhmaDGniok6<GhkWF|x9 zS4p`7rf`KR)L;s}nqdUV2!YlF>fZMfwpa$GFaPjoNVYN-I6^4E73yr~0ti6}4`3{S z3yDAdEizbcfBxbbgy7r_XrKYs&}3&T?C3{BI?|G!G^H!;qg2+5m1TLQl>C*XTHZ33 zcljJ{N2l8p^EORGWgV_ur!msR&Q3ynCNz_ah+_!B2wEM$bDz889`hKAQ515_h*M<c ziPewiL}z!?$z<?`0Lo8>GPTVhg*}7-+hZ1}@`B~Ze>e>GkMlFEeM3+;i^N$)b$&sw zhp<F8X!Qzs*0W>#EZ{^Y^1kjA6dPno0FQLo(gGhi!3%EigCl(4NK(>E|6}UfAvAz* z9u^o2YrE4JmiW{)462G(r^AbNriU-~7#H4_ry1A!2#i1k8tANR9J~MrGM_ojwfbCO z{}{;De>L6$jBT8nA-g&ST{b$Q!+<5rZ@%-L?9!Jt-*7{H+~m%;lNY<+IoC#s{AwaR zvgz)4=XuYL4X`2Ax>j^Qpf(EpfJYmh@VCP~?sA_y-Rr)%$Eh}iP}<i98o*K&hPt-9 z<f$(;ZYE*+*5k(9m2hDVV-OwJsktke6AF<Lf0-Yx4TfmL6gZz}92nu|IHxW*iFaM% zNMU9`htyzm=A0zMo@eKLy>n_0^`x`ee)xVfoUd+Z=Pt2{<uHK;if{k?){gM&@}_sa z8_Li)XM_zK&=$8oYWM47Kl|F>KKHv%m4!o2EM?I^6A85e0&r#GIJLNld75!Do!EwN ze_U}LTm0&z%8sc+gbgM*pa~@;Ll6j!1&oRV2ti|{g6c>H2oS;M!Q8K16~6!vZtNVR z^jv@;5?Ixb4fMfSh1(d^9tetH2-@C+fZ**B*0}M{VG+{V^`4y38M{^0@NooLjK!8X z9Ob}Uo#C0-)ti3p7o82j2Kd{eS)cbIe_;|T;Sw@o6J8(QEs5U262E-I-^~^-2_C71 zPHw@U=^!345moCT)2l60an0I{wT2V?Uox0Mp^XQM4U=TF2?pp@|9%jG5Io@4ZNMw# z03Tx2k0D9{^x%;B+|29`q_DuvcpwU*AhCSS($P;K9hTX-AY17d4AzDW5@9)Tf5Zng zKt6aw<cOkJ+{@%7-wxv06v>&Pg`NT>T0U5V#5v(C(qb*z;w|FhNnsj><;xUWPWq`3 z#etYkwI9YYOcw%Gip`(m)nCZD82&BQ86v{}!9X(PR}j8odfZSBy$KEM0R~in^x%!~ zmBa9rP&xD=I!+e_%G(qPN6%Fee-IQIA|0agkPX?`0MjLl(@oYQ-Qx<fU<+2F)m@#s zWn%D^WAS++U3f&jT!SsyQl{m@Sd>LMq6NIgo4nE46@=aZBm(~@vK_#=T`rPjNt)zI zqGU?0%Y|v0D_!Jkc>_y<+U8{8ZEc~cA!9J14j8gpaEV+Q+6m-wK%Srge*jdYM)8*n z6hJmEMjUeE#TdvTU_cPG!3$h~@DZQ!jbHJZz~1c(JI)($oIwjHRuwUnS{Wie{#pLi zqyD%hzTul%wV?Ao)+MguMzY%y@e2(uq*!=_E&WSi0!*fT!@cBSS||~`Dbeo`AxHe1 zi#(7@O6FuzW@TFDWkSU+e@ae<`6BwU)J;`fh#`zIn%KrE<HRuI4msof#aa;24hjsy zQC<Xp0mo7rMjCm~n#`fC7zi4802&;^9)Lg+?IAj9rIR2h|3_#5I6w)f<s711feZ-2 zqVO46DwgvF7&jb}cADFE77}-Arxa9TL)B%v-Q~LF<<{|~UA$C7e=-{1BnhV3Qsm@= zT~wq+Za^aNOCk`V-mqQUjU;9Y=ztPvff}fQYNlbjWTCuP6(Y$@(pKjTUN3QB=^Wlp zt{QML-cPn>j5S0U808+!CT+fxZ6>2r&LIY1&Blbr9#nv!@Ml(bA_HkjlZ4RtwH8)A zmu~Q&3?PG^`4?kZf2VbpC1eGFD}WIg)uoa?R%4}`p3NCv+8kr{=Zuo#UqWVwJrGMh zPDF+U4j!LbD5NLC;zI`9fud=es_B}tY4?F&y}Z=qOyU1Hc&1H#SWX#CF_PFZS}2OG zN5>UYGd5mQ6&Dti$RKzC+L0)KnJ8{HhHlCVZ+ZsoD1iqEe<$AL07!Zw+ZASEisDPf zX>xL+*YTQG@n``M51ti3e=VwiwJL2wDb`6Tuj%DpCS)gaYUDU%U^-4@o&=ZD%X~74 zSTNA0-r!@pNPxEKvNCJ4I_tBZR)WeYgTj_fUZJSj7U5OsPw8ZD@uY^j8tgnCh{C`g z>=$tShMuLXe~K`r1E8p^sA#W*#xeoG445kp@C)%d$+p0vt~zAo)Weq=W=s_ye(p=J zVWe)nfSvK6M$(xe${WKntf|_Z=<(+!X63#zkYCmd|6szWx4gvP{fn1I&NqaGD2il! zLhH)1Y|Far%YM?Ex>P<mTxS9!XbxkZj^>`0W-|Wie=-KDY7Q!KeGC^EWg8}Co=vB^ zvg>UsMsCVsq;AHfDicA30T(C%8h`*BBti+*pkGFVLuyjT{%hpW1x%4eOo4+d8Ek$^ z$rAAzttRH&(rVnkTUzKRId<i7vZtpuq?vxKuf~MD1m;6Jq}cw8<G}3VGH&BK?&G?P zv{vL4e{O(-($cloq_*N@pQc(I(qF5Mp|~oQK_~$XAgy%H+0y1&x;Cmd;?q;EXi_DF z(e42e;H#!?3$hNTU=C)zgl)-c336`baw6YZoW=iDA#d_xQ#mrPj3Q^>{+lS0ZQ`nI zP7p5M@ouj|?)GwT_j>R5&WOxzrc5#D5Y(yqe}yJ7?ySPRU!Te!Y6dOH4Q-tmEgB%@ zoGB%$3ZkN{ZtE@$q+*7ozRnME$U^`?ArQe;>TB-0C$Gk5k`!*Hp)9CUWOA0p@ETtR zYw!i{E8FF6ds;)-)(gN0ruGI!`gu?agYOEna0|Qe3-^R((gkP!nE7@XF+eC5N~ji^ ze?#HrWalPc(E6l{(JR)XffQWb{$2qx$Q$vjuA#N-yYffuc1#fQ0s!oRA+SLXEHKA9 zFtDZ;2_LQmo9wXGXkFYO1F7+`)~Hy3qV$Sw|FV9pmI`jXpfFd!a31UN9`msai?4#} zi@OnuzkKGMvfujlR8GEchO*ddB310ve`^~?DHC&KB`>j}D9RNuCDd}G0M7|CHN;RV z0R}+A9(E!_hAs8>4alM}1oQ6LMr6GNEXvYyE$iyv8t!|lG9CAEFZ=Q@19LEkECgrT z3@@n4c-rOK5>4)~P4@7%?$#GFvKTfVz0N=~Br!+ony&GvM$VbgIBiqDZi-T|f7RXz zL~sBv%)r(*W?wdB;^J{iT(2v?G6`!EMCP)Y-ZKgF?i{1AFavZz3-mzyF){OEARCGX zI8ZRIpJ<L4`|>HbF7oHfugE180Gfe{xSao~0vV5{su6%QP;v5ZPVE4fMgcn$FYJL3 zT)^--2}6!>;JU;eKX4fL^G)w^f3JcpLGyG^`}9w<EEJk8Yr)cOn9wySbKo_z=Jss2 zs@mrcF&QdIrAqQf+bwSBh7yZH6pu5!mNNjL#>sKO45+~sxFSc0MNG$M9kaw8yLC<1 zv|HaXP}6l?+x1;z=9@-?_=yl=4ghQ+HTvf4T_AG%N;Jm-Z5RrzMJtF0e<Z^KV4bc# zm!ZV%sb&PHg!4#Ct-Mw(N{fspcz_m9pJVFo$DXiUvo&6;_G+_sYtteWu9DtGNuj(z zzaTXZWA0K@=;m@O5P$39h3jxBK?-Cv|0@p4?+7xy89~Hub$Fa;S5Gl#%kDXg3<nHC zS$C~MMsKnzu4{YucY}9$e;cUGHr(XWHlm$S3gIlC681wUvil-7{3>=uKcf=Z>jG$p zWNTgUY!h@EL3cQ}qox7?*Gfr$vS$xb<*~DW5<n=%v<ZuMgiH8@Q+N}~a4T`zHc=tw z<hCyHun%*tG(+`<67dXpK#B;WZPY68JlAsTTIs+cbZ5p_hqcJ)e~uEM0}hz7lk_Wh zD{F-Vd5{bFkXIT@ieJ8r&^8V7$QrUkyI({D(?q8xeUqUFqyS_WfUZH;5a?%GTmX=9 z<O>i6_6QS!dva$Z1nsZ}Z1BP{IDr2GF}SX(a%!(6YTNlg!^B(<E}j#4pZocrgE!#{ zs}ycP+zx<3x5Y9?f2fB$Gl=)Lh^J;$&xsb8YYg%l6G>p9D0gji#|q#;0gRD)Nb!tI zcNJ4Nt?iB$^JRNJ_?brTox{3Zt3<4?1g!)5t>b#G^YoiqLp~Vh-qH38Sk65+x%#@d zVMlp<PxE3EaSEWgmamKx6?%UQq6~m^R%?eKj!_^4g2xqjf2o7=$>EMB1OcXgZ3xTp zPS^QYe1j{E-n;YI9<s$qEL>P<0M7NxP9w=Rz|=V4Tn-?$t_%FY6MR9>OEI?+<tTZ- zoX}u0Gov%L;W@SEMmmY#pSiX{|0Yr?R#7|5_$Z?6Mj*<-J1UlzMK{$>x0>(C5loX1 zd?bULEO)EBf4a;|0z3&ae3Mt{{Lb%uqX>r#48c6mJHS}O2W$Y&>-=yC#{g`SY`Ihp z7(sA&mCwrnILv&(V|~_ZJ+vBmD`{AZzt-if_aPrUl*ga4Q?yZ8v?ObJt*)aHpeiyL z0b_D;Ip(N-Y89vx!2)0gfPg!K(-;RF0})7{zQS~tf71E5bcIWiA0YYxFc`t(M?U0B ze&tjC<xl?HkApS*gDlt*0o?llg#6?Cfgi{{F#L5acE0BqeL36)Z%n@FBf|h7!w|$| z;%|NK>;CRjCQGi?rooa{O$q<tJ^ZLOIy9piqzkddi-rf7L4I3PRY{3f`35q)fC&Xm z_G|xKf0Tm}2tgp|mEWVhsjEB@`H2!#fb^A+C&s+Yw~H(=ej>oz2K0h8;DZ8413pMY z{_j6P;FBgzAi;t76c9{^Fu}JE*Z#@6MnJ=m7ea=7_(n{@Gko|sDzHWXqAZag%&{>t zK!Y`6Awk9@CQH^on>TUh)VY&qPoF=51{FG#myc^0371-R6%2n@v1Zk}m1|e8U%`eI zJC<x&vuDw!RlC+I&6zK+S+n-7!3PcHHVk1i-~~%>*Ays7a4kUs0*4zUK5&2*EohI; z6)7U(g8vT7D^^&ruxXP6&r?#xhyembkRTN*s8NG~HH||f4y8!pfi`Vd4+<FRdtpfL zA$$wSxH4da1_FP9ktbJfxFU`=3oy8jO?!qC09?3)LE(f0haNp9965psz$-Qza%lL_ z;G4B**Ivq+$yO`PYYh^;D9~mIfdt9{3{b#pK6pqz0uw1fh%;W$;J*Mzg6Jgz%F(X? zHX3*kz-OePiM|g(3{k`pNi5OC6H!c2#T8j>(Zv^Gj8T8a8EN#%E%}JKCa#eRG@+c{ z_#*BDmj)xuo5KiDtO3RzgT|a{CZo(U9Wc{u6G%P-Ee0Y;GYvJ>TB8BB*k-E@jRo2$ z;Dx^bd>eob{bYFHg%6Gs&`t#?e1Qm4#GKB9>Hq*B4DGn{Zh}LPm_QSBUf7@<_2`rf zzW8dYF(`letkK|t1sA|j!#hC@EP=YN!Bhh_o(rG=;{-IU)EqxZ@BtwPs58K4W~$WE zU3u-**I$7RR@h;QE!Nm$kxf?F5aq)$M{Dw-%Pzcr3o?fW02{0@BokYbF~=a2Ov=kL z+pM$CLL05L(^6Zlwb#h3&4Uyc5JJtq*!b;*E8>4FfF)~|OQJ4a4$wfC2K-Boxd99@ z1GX{&#g5SKzC&~ZCklCCh;mFQkN`;)cuQAeO?}}xSFSJtVI*1p6gk6K_D@>^K2Siu zJpa#dB?KWfNTOB1Udoh>2hNb;0$Vr4$HQfrZrbUmp^jSWsj05o>Z`HF`bN0oI;_XM zELwka2o1a`GJzuzTXIQoorF?^aj7i#$}B_Ua@{Z8rJ>JwYfGly-1>5J-!>k2V1Nby zR=5ETinxG{6<#=pjUo=P=2OE~2*NdptrK)&LoMdum@9_Zpkq4Qn>5#BP0I9z2NsY5 zqeRLn$DG>}$^8HTlh6Q~a(;(Kg98qmh=6~$D7+$eAlhKHRk(0I1DOpHzt!fEv(8@o z?YZyX`|rUIU;OdO&uZ%&yLL!}yYk{|rFA|ij4+s!RP5U(Bb%%;a;-eq0WH<#rFOCZ zCOYtvjlAe(FWu~AUotqu1B|c%m-X%f&LP4A%wPs7nBfcsNCeUZV~zq;z)um&&USw& z2A=Rt0264yLFr7Oo{w2Wb<Hvsrar)i1xeuyZ4kl_2^WYnEMNgRxSR$=afKh+3kT<^ zoQ`B64Pqp3dCdc1V4hJJxmY7s1vtYQE>JT&J>z=iGvgW2m_{|Ok&SJ1;~U{<qqo3C zF4EFK4%(*@jpd+hM&g#*m;@QO!L5Hvo59lmv}88{f+;$CJ7C``pujb~zz78(nhZ7| zM&u;n02L&f215XYB`g63Xxc!+kkbGWv|$gN3)G-cfC7pkDp8p50O=eBsToeHS^wBe z%GPX%6<{vyCp57}12$l?1$>d2M3h1ZMoEO~;i()~Xu}r^Cj^bP<a$!1VhDdiV8!M9 zCjncmiw+m?0P2aVFrV@WG2<9ddCrrb^|a?b@tIG30;O48n+wg>M=keh>;vAg9R0er zn8x5wT>Fb#|2*@*bajbcj4a^8%0!z40*;cFJVOhvkRgR>U=cXjPaB93gxJ9V1_D@u z6xwjK<XGbXn=r*8sAC<8#WH_|7Q@8odV`+z(aE5^glAD`;ufyy2#UW<Do>KSR2|KS zpCZvfBG^y>ttv<eM3VvxSkQ+v_$-wb+G+u=ps{jbD_7pE<^sU^0OtvYA`KA#Ra_cS zA=o_t8lqa<Tsu<6eGZneg*EJ95t~@WF7_<_q~l!bq5%_t?M*9rltF*dR=)$R4S$1l zXd&l@$huJ!Z($nKBWdF|dtJc@l@!7<4d*ffm_rme;LIk3(1t)@FqABSf$X3`R>34e z2Oyw9P6L%4EbsygPC$gA62$=z2w^2b%|UuJ@Qu{P2dQpRz>c(AAn|JC8$~VEr7$%Y z?P?c3I8yI;#hbcP`SO1z2clUy5-|kcupx<UaK#eBx&YxSpaCZMjec{t0carXB{ne$ z6`v_rTO}b@(0EWeuj<7X@QjSeOvDE4iX1W?m9Zr@@rhBKVim8L#oCLiKmWrU(7fzL zH$w8yAHB8EaOrPKp!FXBNjt!IVHAOXyTTO|bcO(&;R@wgP6K}yAqr8fV9J|uzy<dZ zN|$yj#K<YaCe$z+6JmiLW$ptO(9D5DQ3D1okO4A~F@OR1=DO(_5>?TQqicAh&UnlV z*h+^UI}_tl#Q4T_<t*p1ZR8r?0LLnP6V%e#`Ob1A#z+#gp7kZ-3TH@$0Qw-{<P_Kh zr%TKXLslubDldNo%$q9#pz#8ko}?V8N~aM*tbw!+q050Kaf^W+Y+(<Z*u^&Xv8i&t zXF=93lbtaojWC29(CLqx4P@J*^jWzbatetIG9&eN+KhVOOtac5?07i;fZZjBlZ&X# z{xY)(LtM}dEoDJ63Sf>;9UyaP@PHC@>IHhhAOstf!U%top#&%N01L^G-bw_0M{ukU zQZ%G*PLw*4uL=6Pcf4bt1+5W0WBfoGNOYoyFpeR8pjy(dGdMav)H`21A}`6&ce`c+ zR6#S;NLyTiXsDx*t<J&JR9=LgXBZK_-~j)jSu%%+kr0;yH$zxAa+F4MWN)48UHAIe z!5(%tDqDX?);LmuB-=i|uyz1BU|B-%w_`%e?Z*?nn~*Qcx7yssUJ7afT+dJr5Ej@R zZ<A7${<o(+v=jzsV8f?k6$G3D3IJYUffRNvXB>b409fcl2#~R{NdF0@oLm%dc7I)8 z_bv`d*p1YG<_FL_{w4=5fohH#Fa#MyJJ5En$eVwqO{aEli)J5i#6t+(lcYK}0W5Dr zGL{hPBxva8$Lr-$R}EL@nV?PyP{tx~BX~UJUU>m%@^KPyfpm^dFzpwt*x?_4`OlyJ z^|ybF$X>^~e82>F)XM-`OJh2wTL6h|o+R6PY}@E&OTH~{9BJG<zzm4MUb<=l0ze8L zzyyCT=K!1p0jb2wV&DwSAOw`)r3wIPV9gLl01W^|;8<V*hTwD<rvOr53CsYK)?=F3 ziCey*y?n_nCSq|m;Lkb+NnA!Sjw!MPtp|PSCGyG$TEGY>?Ev`yPtKxEhAgN3h_5c# zqrHkLsqle7Hbn|RZ2=l!`U+#Hyn*O;;=zC3Dz3_*>5_nxF5rPKpl6a~2wrOej9|e8 z<^@8a1w<jZ2p|b$CiU(w5fyO}8L<%^@e$ilsn7>n?5K9yhmv+pWe8BA46vaR5TejU zG#ZeAT!YA{V+Qu%frP+;Vh5%i<Yg%0b|Pb3;w|w^;j2jL0eUR~2*Ckp01W^R00w`7 z9$4TEl8z8WK?(xkaE{PUxX2nv%)ag-NI=Z}T15*NCI@;D<G$-uWFP=u;0y~xU^Za) zS^^E*Y5LSL0jBTN&PymHB36U|`a*593bDYZjR3UnAF>ac9{(T_Xdy8Offm?+h+e=P z2%!N8VN?F@1x#Qupg{<hU;$oW9SDD6vl21^Mh+4=vLik6BSA7G5sU1)rugpSM=rp9 zbYo*Q0FbWj0N+O2tc2UV?e4(s0c&FhX25R>$E%c)XEa1$Ou!tV!4p4_Ge9E<>TL-G zU;&zroJIu_Fdzkj(ehrfCEMu$5<v!pK=8K3Th;>|*^wQSL?cJeB<`aeE+Buc8pSx& zQ5}=yA``<9>5>4Hp(4=Z8!+zD^h#CiQ5hEJ0&;_R8bBH1vReSNFa^>c=j&1sL<poH z`dk4T4j>^9z#NKW4U5U>;A#oLh%y<Y9dLk%+CUU&VKIjP=8Ikc8fd{Bbl?movH&jN zG(l4%_faHqGdFc}H+i!+mnDCyoFy)zMfL>BebTD!tc?>HipTiJTp|j{Y|>rw4z;Qy z1zh2QKI)kkpa2d49g}1zJCGKw%mLaU2wXu6z{(7Ypb+O!U@RcaW*|_?>;)IB5D9<- z=Zts&^D-}>Kh0sY0Mjn*5@Du~=;T8IyrI@C=?d;JF%nZTd}jkhfGB@y;UW{#GNIu& zK44^SrX0Ko2xNdVFY+=~VgNvsNr>_>PIEC>ltrQOHY1|>^pGB1p$JqI8bn}hj^`)( z(KAIs1gZfVpacgrsDp~28rtD?9!M0ueOFXd-?wf$p@iNHEuhkS?*;;)20||a22?;P zQl$tap-EMwcLUM|3`j2;iV6t)P<m4o#R4cw5fRMg+;Psm=bk(MW1Oe6_v3t6W6d?! zoO{pmeQ6XSNGQ+}&v1v{h8!pJ-T`A{RV>=WEV|n)`g3JXTklLwns_(1UYF${3fop_ zzXXenW%1(gNsj@a$w}nVz>y&-OwG`)$BGQ9S>7CPR#bV=G;Ye5pRiyqjRBsz*V-ee zI|U+TbHFz~DaoTR;M0o4cc5tm<BO`8{EY$C^PL}tu`V-8Oy8kFs7^%(xcDb*#lWg1 z;p|stYjp~M7XTNgVMQJYNfI&K@&sigg9|M0ic@H}<7NbxfXF4XIp3C0`WK~9D%<#) z(_MQ=jDtXq^>0nCVqOAQ7;Ptvz~$P4c;W!D-3KlK8066qSqegIn&ow#vg8Bg7L&!( zJ&zx1m-fRi{i3VUKMbDxW4)~yeBNam64nSVdW_Rr*V+!eSM`{CpV+Lei)Id7|6WD9 z9RyG{nXxWXd83WN^AR94X~>mO<7*W{Of+uZ_Mb;2C}<5NnX6V(1vfH)%a8DsGZw?| zj1oG`61kDhZ5zcmz`3=zjoz6pRR{&%R&M;_J&>APg<=m{yI5~eRHtz?Ry?VZGze5< zpL1|CLNgpaj%Okf;mMLd7#fQ(;X2~3viJ1C;TNSZuUH(>4B{2aK@_ow8HwmHo!SFs z-YXD3fXbj+=W8C7L=-!P5v&1JQCtV<=3P1;5hB$YBKPYodH4Ji3;NU~C;cC|^QNZA zEJ5@#?<abo_}egUfooQw*I~MA>P(-!{yA0Rtj`&9UA~({CYah8YzM-FWM0q?7bF0A z!}(Kfm>k!fDn0-dP^mo)K~H=kCiS`Ib`bIPXf~Qa^X+2%M{Q;TbZIW&x8J1$3?y6~ z;#Pt9dH@n1P~OM@c;^As*V;)GD7^DU-8p9)wNYNw8N<}uNGAq!vUwO`pmi2YQ9H^8 zGRRWQiRu-Axe6d_7ou|(woKqs9U7ZlD;h_`6}wbIHap7CDq~RW@{uaYt}k2rAue4> z?uSX9hg9YH`*5^tF^)0^3A^YwIZhTbpO@t6_-3S}ZT5<!Y%Z}m!~Ob$K-37Z&Otei zjxrwN!t<%~q)<T74=4I&cjO6?b`<Cz3LCKsz>xhbaJj&|?Rxtie*-szT(^dV&70<7 zYZtgsX_fB)dqD}{ir~$TyMI(Tc!5u4E2qZ+M-Wo9z(Vl+6^xL-SQjt6r=6^JRz)!Z z5k}FVjumT%G8&TLikb;>6!@03WRNx6Xcp9v1`PD$ijh1k?ksU+1E?awYfzOVL=~U7 zmx=eM^Y5=u8xnviYbt^?kZMrU<-@{zT19zLMg0<%MFFnI)<I#;VOL*;U44x+P6wt& zhO>!!ZK^`GO)to^<K8bQ$Eg|9_moRRnGO;oTnJ*b^TAFOguOcdge*i8Q?5b>Gu+9* zMJFJd*MQ}zQbZRxx;t<Jh^!@=KJt=)Yo1LQjpRtKy{HdBW{*C_rsnX`R2*HnRoD82 z{o`(^0W@9nM2<k3HE1T;B2>-~(qg_4nt>G{_TEuAO8$&*cYaeBg7+QRqe$TCm+E*D z+_s`F{U}~@kvn-QtuwK%N%Lm5HanUGPeH*1X@eO>MeWfKyL%q?FA;6MBRTyvTdiyf z7dJ=3)<L|Y9E}>{7hY*$lt}N}Qk2Htj^LQHJ=s#w8vgqQsi*|0Zl7A`vWJIhk2L`Y znh6?Y`1om)H!5Rjw8|-p%P|D*_sJv(O&R!F4I0Q-;tvV7uDZ%sqd^~da3Q%~_0F{F zpR)a)I{FJ>5JAZQJJEYX13*H9?0~B1A)q6r_T<49{ylUOQ0#FX=!H^Ei-uBrYPdXw zfh@3iLPKqI-O%USV6l9nR?mZy1_gNO>p4~0vTB|7%{R{V1Gkv=CVHMm_b>MLum0(u zH(U&w-12vBtuwx)$k7yW+1;A2q&J|gLu;kSMSTjbo;|=qB*<tmp#V>o9}74;P5+kE zNhre&lwFN_a8{ZpH{|LB3p}2J2s<JsqHf$;w?RFlY0D`WtaX$vwL1|a5}&&(%yFk3 zb=A^9yySD}!HxG~L&+BbF&6dPHO?xP=Y03uuedbyCgv-k!I$WUY4VvL6KO11DaiP; zDw=e&|D8H<y`}pB4=lF_WHrPMA|q7M{psIIAZX@s8aEy@ej%nSDgt6TFoCOJO>|2! zT+5p7m|QJ|r=eBe-I`+TpF*5W-8Wp!4`_U`_v9lBS9@B!2YM_F&HX0YbKN!k0a#r# z7IFX>5cv$ef`%O=B#;;D{1!n*D7T<rmk|Pu5F%~tVR3^20eFCBZn(@Y+{;F}RadP8 z!^TY77F&Hal)JPU)1upRnZPB>;zKiIYL2NBB5A79I3y>R5dHv<mv8(Pmr`jDEWFaL z3&0zXC!Xo@44P6y5)J+Hs+lGy-mU<R&>}_4-BChdOFHna5@0|NIq^HVBCobOp8y#r zl1RBr-V8|CI0;snpq9Jfe*pn&BS84e-zA_Ss+_OX;?}jEtRu?KJs8-^u6iYvuAt2{ zD(0?n#NX!2NfVlDll(hf@P!=X>lm%<lT@mj63yipOFh5BE4MN>qytw(UjaTF&!<h? zeiNZU3!4FZK6&>gQAhc5|D?^3svwOhm_3Yn#{`4_o!Hc6$DT}Nk+)v_1-jBYpfnhS zw07cF{|Lp9;TCsK7a}P97Dt8~q2q%q!z}>}$tAg4<s?PG>X#Fjk4nl>u@Fi970Utm zWQ@ww(N6L5A0_~B{MzlcuURs0f8yTVR(A$y((nI}c*A`Mi`3QMcOdS&(1}T9QJODu zE$J@j@A^M<W@ZSwPrmU|1-<fd@w}R)r`lIH1TP9sy~Z=$C2^6~J3(8KA>}hKeA1f( zHu9%?y1$d5P2wuD=yLd*?f|C0+cGG3Pt)p`n}t@-p1L+{GncDL10aL&yGfKxt=~Td z^b=Bifq%b!-xERc!gD#j7>O)E3v32uU@D^?wApx)W1NAm1OXv5yy<081Uny+{f|kA zn35mTqm&VNIh8j_G4-=A>S5JH$#ApUX$xZ-fLFGyieHpF`HUbE`=(E-$*Wt2nf3aN zVYqJ+4k}zo1}1zpRN+Zk>k1KHv~G6Sqx%j}5=gJBgVx8&EIOMDB!|u@5tnm~i}{Vc zhPmB(y(gABVIp3BBQ}9U$)cDAmPpUxkvtHMc?AB1@gZ2$Zt2`z0|+DqH6>#j;ovz? zq{6lY=iuz?&0z3>_Xv8z5~5f<oeEW)no?4jwZj^z_>}=}v6}1wg6P^uI15X7RT6`W zBoLtIyeCS-178!&1r&%Zp7F4jkJH6!kQge^-ePB-$C4k?0#X&H{vcVye%EHDDYkcs z*+}6XX7QLJQ6r<%Tq_M`D65#4p#bH0eNmi#KI^r)#j)gr6xG@DFV#fOi5VHh0ssjN z&LKR5;^OR#1+v=u?P$2HWCesJSF$2sN|P!&Y%ZIWm2t+PjgveCmHs^pIuDS%x509@ zaV_6Bhx}21$i#oGv^d$-s`2A40!WRekQv2il9vIEPiV_GR>M12ZwAaP!8p3g4Ti(J zIPb0Aq=|+;<9YHMwgQ$b1P*h;y5V!;VvV1KV}8EsOa<4o+W;-lv8FR{C05_lpP9W^ z49o(I``KrV`lw{a77jE??V-yqxlnXr&9jT{LM<nnkA^MtWZ5Gu^IU~lGImJLte<z_ z8gz4`d&c~XC>o36_!L!2g~N=)9KcLT95LtqYyjmI#B;e@W2KCgElQaIfNMYNje+8l zXeT>JO80%h-js?8K$t)^6yxjbCdo9Hde*Y0pBuzRqFYdHQ-CUJylL^x?frSeZMlPm zoTv-T#M;#_*Xn0CU6ZS?<E>ab-qi>QG#|nIf(%DcLyb#|M<n(DLH)=eC)BjSjVys5 zgEtII`Qx8~UpQYDsO0vXZ2K|c^fvbQcErYjvey@K5yR^tG~P*n<r|D!9Zl2NYn?-D zDP&yxR_-)Ofg)JXDMMJ9!{9NaDyo+VyWZGKL`u=LiAZd*d;2{MNQ?eWGVu)W?lnTO zxBs@161Kq}KNU0Cm?%|Jw{<Sp)|^8{&!a64#bQ_(gm~#0&r}qje4#Oq4f(N)#=|a= zC_}9f<d$X-ND0ycMZb&Rn~H}bDUUm%b`nr56>t;NLC)fxL`lmECMREhD;r2)2$usf z`O0ODzE$jvruUg|6M0JCag%f|WH<m*jAci=ze1bFDmYrRb<gjZ;GE2znLsV^zT{@t z2SaR~V@8bphohDaGE=Cr+1r#@C7cvIzSnCSu+p?~PH$7FXfH`kEfc_LlQ0%Xif^xY z)o6W5)vowCgXs^1Eu*Vu8tkt|OZpWe#P?7qixU)1+9fy2f~a&dR3U|Y*yJzYYD!~> z1U**vU{Ba183=@QsMH3HTtC#Q<~(JQ2N!--=QACKQGNhz^HQ$Y=vMRTQU_RDcM3-= zYm^H{$Gx?8i>5MaR4=R>T32Az8m~>%nO|+NU))IsPfY|K9W;1xyehq`B1YsK8f^fw zyaQnfp8^XbwJ23z?)t>Ph3fw*pK^Jrk5YtoHgA{!2>#IwgCOu&q*}!Q3a%;nf?>(G z!mkR3=@Z~$=8r}xScY(Im?jGUmQ-blKFzBsXK_i{hyzl_t7Ah>M}9QoQEgYx5q_4J zCq@l$tWmNb7`(k_NP#3X5pyDcUOsaYEk@EOkZV2gSGDMW8O8wEq^ep70A@Idv{j?< zAx4CNs;7{vFkB(hAD~||I@i&&-xQSj(Cw4?e9uz2;%uToU0YOd&oxSNd$(v{$dL4^ z;16nwai!*v*1~h`{2R*7qry6_Xh2~FLVHc3-6%p11Mvj9YK{<HlFZoD3?7AVq*cqh zw=kyO8AHCJ`dZzTFcE<4#=ATQfP$%<joG{~QN>fPceLBPVlr%aH6d6DEg_~!1Mx|M z82nz3q-7pd0r(BZWVL2$8s?bYC}fFGpOgz-GHdJIs+HCURbmE|ADYuha5#n3)wF@! zcL0nC<NtY_O_cH5=zU0Huv`NP9Ma%c)OfxadSPGO*b_eFte@BA2D@r$YP`FH&M$Fm z$AM64&k8z4124d`z5#V<5jppC6Do(cfBbg^a*oOaQL(48;pODWl?=HvKWAE5vp)BI z4#$=GOGXtRe>-P)@N(asFTq05_@@6=P3ieG9gf!|;zj*MJz?@)=mp^cW|AvsTGfs7 zGU85u71u~r@gep4N*{^VV;3A9+kGCjEfJfpFmartsmh<j+2L&+_3xy6yTTO{_$EGM zb&g(T-D#_m*p_6t;2g-mB%VaS{;qd%W4cGR{BrPFFI(c0dfTW$13p~C0r3v1_f^4O z1JooFLYxCGEis8yEJ<XZm-V!uZs$C<fP~UVWFqdj7UX98$d^x&@*$cu_9a3xt6tG0 zGdoCNA*&=X^w09D6$HXacvWKm>t5(LE(A9&`>xQaY}VdoiB;Kxe6#x8=<=e8qfU>m zHmAF2E|&=_M~Gig_qc?pUu2viBl*4*KB2OWI4oiHBkkhxd;WhS-Gx{*{Jld1`>TSI zbhan#N>)BJS<TivPF}ORrNRM5rJuZ!v6Qj-0XiA3jBV?>|Egip(%t~WlzlHF9suoK z+pkMkn0l$<5!z_h>vsKDV-l0>;E0~N?NsudK0gEv2agO~3NSlh%Pq?^(vP(2_g9Mj zMI4pfl7Ef&M6&^B#;t2i7Y7QwHYD2z=y9LEdhwamK;>=P-#DJnS?!KD<tsT0yrscd zA?2&o3r>~enD5%q_~-ZJt-rezwpd@;llng%rpZ6wizm6>k?w7Ao&AW;+q(E9`reJ6 zl8+-3;OzNbJ!TxEH+)z;jOucvNkORTn-YiiacugY{*ukqNl<Q{*@d(lFcT$U_to^` zRrd-g8m>9<B!w)6ejql5N_T1W{<Rr?6{yUQp8jq@_d7@XLQ;<~7CfWh)>wbpAlz(c z&bVTh$AD^ZkI(lIeSyfJDof!-bAq5$Q}WFqIxkP**|W?BkSRdarR*TPv(U3DL`6j# zAm19oLo8alD_(XXUj8s%QS(}r(-nH*2J(TSG}rl%c9UDB-qQNMw>r2&&M0Ge99hA5 zfaxIUXhUM*GB+6yC?SD&J%KOy;OftLZfcmi?}>U7gce(Fy^~P(eQ$iZ4r+vA+WCoX zyvND5W9n;5%3bpk!uTGyn_OHV@<j53<WLYy7P#dH;u{HB>xp=yC@r#scpDVCU2|6V z{aM&LkKv#iJi=RcfJa3cWJFbSb3`^MIo=^@m~;WqRGX7mVyQDQ@Q%Ef#LYVt;2n}q z&Amvw3icOQnd$+E`79F36rvAw`(Ps+W($$zPZ)O2cpjNCQkXHuZ%C~EVaNuP7Wss% z3`xL@;5s5QF$)$yUo&@3XVPcj0>u66t_I@PM#(n{O_`@aY=EQ^0-Suxpa+2Xl6j#i zcb*Ok^+sqRf24Q}$U~_>&shiXRPwtQcNN|NgbKMtvQ(WM#N8{j{&Kjnp}-?+R(H?} z*72O{?ACFLfQLIk;*p8cY1UWH5KLA)2h_B;06<cWgh%q2RDPIM*<5-{0fJGQa#J86 zI{-}ptJ46W9TA$TFfc0zTa+^*2F5C~&h6Z24$?YJht??O)v!ZK(9FUk5vZ;pn`=xw zYk3A)Om_?7UpnV|N9Fq#<zMg4Pkog!w?_~*QQ$~U;UtPH+>9!Sl=4g|WP7uQj7!xC zGt>B`3~0$eSBp`kyRy3hsQ@xb2IP4e4Z7F%SruVqq^u}@;iuS%FO#(<fR8GGMS<ne z?4mTWk*jur_mGhtL1&%M%3p(>We3zufygM$##XpS73Qs|CXx`Cv2Yf|?p8wr+7~gU zXGMh&YxQY7Ap0+QtcsUpRC4$$ftXVOUYA@QM#xLfQU@2{lqVB2KG#I6d_)oQHi%p> zRBFHuH$X$`vy{6J$vL0624)NUTN%4d^ZmQ;A1~hj`};ls87=rL<IsV~r(AH$tbi#k zB`!*|@dqVj)G4{{lvfQze8KbiC#MjwMDU21ZmZ}fiWYu4;&u;^kufUd6l8?m5kJ!c zp^mzZ8@tg5UGhNp7;Om;p3RopGlC9XE{QzOGF)R~7yvQ8W7kGPRC~(5j1<bz3duWF z_#R-1GlwoGAQY81b*~y_46utf3vLBW89*|>D7;}WlW5Ulnt|baYBEL(`?KXb<B2kC zfa*}!TBsrb5=8bEg=R*@uqwugRir2K3R_TaPwv;2P(cjr_kl}wcaG|^koDQxPT-@A zU~py)UnWCOJ)0{L`ZZX@CxtQB%WN=7+dPlez^yjAicGq?Ijmu7dfzU!s#Y;?2%5in zjVXOGskErtB~9k9Ay=vCX+21cXdA@tYMXbkDD$$X2A?L=`LoJa8~L<I*LJPEK8q>f zw8ErG0Kxd|bNNqg5Wf5su+adX+G(l^M(BkCT|8x$g9SIFAseoO2hooVgB~5Y0<ek@ zx8g|oC0NO6whzVhwdLwhGsnIzi0uxb1jVEcXc1F%&v9+xz16~B(n3U9sFOFOqM-#^ zz=ra#^$Xms`L2`@73s(C#7zffoxeWZ?k>0PDesS$L6KxKyYFPL7k%Tlb_x<hvxBU^ zmTUUK(p?@ennMC8O^Zuyi$`wHYXIKT=BJJEFOInOi<mZg+TE7hiLQ@IvNWgDg5C_} zFz?htEJXMyK$pcp##8$fr2<$js4`SgdJy2WNo)=kVA=%;2!b}DnBsN15(Gr($pRvL zfEGS#SH{aOfi=YEZU{30Qb~o2QQ;c|5K+92DWVY=RJ%cA-9U@Mds}L5_0*O0H1zgl z|4<k9s}H(nvrvUBFz=<_>J64s;QlJk9MmXZQNGaAwoGhjUkHg=lJ0YQ{;0?E`t#k# zx=~Fj(Q*Nbu>+k=N74P@TM`>nfRD*RZ%_fs^PDtei8((Yc8V#y7nIohq!Q0mNr3Ei z+=Qai<aR)5y<MBMe!FM{ruw#F5HP<No(@2e8#=G3_1mH#dA;!RA>mCM#AXZYW{Ys; zOIF?(;=okUz-AU0_R0J*2trl_q@$UUK>!9?f6YDWbLnm@mDS^_&S~U`YSbB0bsJKT z8LC}wnLKRiTpqgLI&{M&x>3oKXX)(0Wp-OCV6ytr-n|a6-y>RfrC$1V@;=BF2)XYE z<aqd`WU4oK83siq#oy{;w}{cKjqTQ~W~?QmeNa^l9H1CiK;=}I7#_ls(QOPEVAmaZ zu3oL9{1m+d00<6DQLaj51fehnG1nozMq(1B0Naa52m$1{(i>CQEshpz^#Qe!q!|=N z8SsOZf@2*sfVD&5d=MG(1Aw6bJ5&^u#=HH|0fssdk*rJg_lTN(FZ)(rJ~@6#^wpxE zw}#Me<B$GGEzBS<w*&pBI;+mOWz-AJGbcd-&k5s?^e(c}r6Q!qb^Fm%pgd;88GqJF z63u;~0ZITWP@a61>Dsx%+AKKaT7MRq1?OGrg(ykP0iSE4nEa_--<2R@C=iBSt?1TZ z#@CLy9d3yb80H*P?;h~Y+5_SPQRahe)n*h_Zl^PJ>o!-};5YS`{hL!5Rax;&t51nw zEakQ4nl$(n3poe?nJOq(c9d2U_d!88T3L~6h(lwfNF?I*fw(P2@1i(D0Ww4Do3UJ- zu{xRIt{r;hH*T*t>v+<#pDoI`_t--a6f|CVdq{{Duc@4+iQpFPAXbFv`D!FerTNgN z>rF29ny~-Tm6cn4{Wk`<p8q_Aj64uCn2mwCmkrak+yMtKVW+e4bQbG%@f4}i)`eH- zCd<H5+gI93kl4*6ZA8{w7O|?OvvBo!Mye1QUt1l!RD%$1a9>(_Cy$(3EQ{wf;}Q;! z1!|!e%>x3hUjqb)uVFqx&`0j%Zp7@c`^xj!m62`7!R`EKeJhjO83l6=zkXhK5nTce z$gojm*s@kV`yXS_UR<`fxV=HTqG@b9X~Oe>gHp|TjyZ!cs9Y?t4HI}<kdM3K5`qA- zeT;sx`eq3z+X8y4K$#brTJ$jFz<aS$VX_KT_@kzmGe<<k16P^b>*$Z{j<@@o^`^&{ z%QS`mzO&<f&#nJ{WdJ6CUnAXo+qU1l6bz+f@T^_#H+U+5k?-GkxsylB*0rCk>z-mv z9IlXW@{Pw{Ykmc|X}8|?Gika1!*b@;l>>P_Q_m_x=^3r3q9|~k;Bv2ymblP!alN%& zxqoC6kXyyXx7{x^E-T5N518Kxm|v-hE$QWs>;I@g3*eLAI5KH}bO4f@fTdEda&LFo zUtD+pE0C;jloIzj`P&9({GfMFrvUnMcpz*4xps=`#r7YcE}W<<Z>^XA{X!A`TIr$Q z%#6YKOE-6DEO!KiKM7Fi2R2|uxevxVcM-n<0u=}d(YgFN@(m7NH9>2hASS)rpHQwH zXg(7nJ@91frM@VRZ*+GHfo%pR$xc%<Bk5adU!^5pk>3Oo;zfTAZoSw4M*Ft4Yx_3A z_d}z)=+E~H1?Af{f-mJ&zwUW_KZyH&ST1QRH*BmQLTn#x;k)%t?qh^m0bjPL?Q4)z z+&cV8J@Lg{LF^(@f9cDCJ2H40$!?v3y#Iqk;bK|bmWV{}P}4FWk#gv;^~U3;;L{(n zPk)}VzB1+E{YxnG;j8Wa<Tb`M1d(@ixBR<4eHSgVXZY4|N@#T~robRF^HF2L^k>Tc z;Ie7tN0&EJ-ER9RnH28t=Y&2D<!k?p>D-t4cCLkZnBj5%ryKFW{rf(z^}$s-xuIhB zr^h1Z!mqGPziuk*VFLFU(saf$MC1PXC4OIruJ%ahBObt{0A`^R(B=D)Er%~x4>ehT z8#M3Vx%B(F@b8;SIR~}7_2l0X^xqVbqe|jRlt{0bA0@=Bb*1*w!}?9Trw192f>pjC zeufaGh;I%a-2c<_^iSXYp=xW&{(k-74I2rz-mN3<+xHK@$wyb;1K6>ScE0`d`ohV~ zrISq8uP-tVI+-yKix}B<j)J)U@cVds7y~-q?#|u+`}OJHEqXjp<m?g~y}6B3IV)wh z?U+*gzQ$i?ijBP$^7pLs)S5veBai%*g{gO#6pr%+n-nk;?8CyVb(5@uSZ=TgQF4l2 zE9-?$f}Pi%@twLqoZ=!A@zD}~Mx^<?gLL{QhsIX!NWY*pG#E6`je6!fx8>4yZMOO9 z^4#{tuHcW8)feZ#x%WlwFIh&<DA?YIkmcomy|*OQ&E?9A_s$0o4nTUMp)%?_m&c3L zZfvY9?)pqs7~d6lU)sAi6HjdRCQkIA@G*0ieUT_*Y&Y9n^R|b-TKh%vaGwy#JHE9O zLLw^oyjl4j`uSD0b*;zhQTUcpyT`O5dL*7f0mh<q?~m*HmPR}4?dPn;$&VPh-K;LX z{TqAyd;j~Vw{Pi0z&gmB%*NUMp3IOaxd#1-)VzV3iphpaUQ0P+0fcgP5ygS5I`lm} zhFxQL%CK4-GTxa58O!PlA6Fvhg9nS*o&o&YeqaSdXM#<HZ|(gsDJF@b6O2x0#hKI> zBu&6Ka{u^K5nL#AD|npzT#zGd$`dNzyBA`i7%n+zJ_ZK_8zFU&jX<sir5A#~Q~@u| zP@8SLR=T@0q1O6;_I8Plz}vDu2}bJ9%8e9F0Yyx6UwlmpbDNuIj+E^+a3V@t(b&#P zr)h1PDIPACCndNr9M2=q?rF(C0BUJam0*%5!zeCB5RNyhtgoEud;3m=1fHADUg>Hb z-N2^bHDs7R3f=Ns`)u-@NjQ~8wvWdTWpH4p44K&o@CX<`F;}s3<xDP}<OvH|=J~aJ zqqo{~8kM5xaN7;%i+<uE%K5n%=G*Pyz`-juIdJB#L!@W2z|BL?l(YE@Z=Z3mHA#=# zSLJmvJD#>lpe!o}mP3G)7tFbKRz>AG{l1G=^KdX4Gr&?`!-K`Letw3>h_oT|LH5{8 z^uDaOHN+;2$Zk9v9(N%AF7-iv^!0{^9Y@z2al7@Ba3SVq$GaF|Q7FHpP31<Br(@K1 zyLF9;cY##Yt-$UH$N21s_Rs2{qHC#ZAm0NazrkkuqHCA50(;WSDhIXO`BbKVqC>`H zI*&ufRpwVt6K&@vUB#sNb==RdcrR|ZU&RUl%mG~`#Qomy9n1da5W25BU@qXUP;x}C z8pcP=if8x7BRE<fc%!f4r};BEDu996h{HHB+&7rLf8z0c+^uiDzy99Z(Q7><iK#Qj z!{j{f3w$hCj4OfmdLHIS$bIO18W;IeuJ;s+^~v%<YZ9|ZbPnInX+=E70E}!SJ=Zo0 z0y6s#5`kPRM$qmmX<s9&kaz0@2E9WA_GElwY&Nt#Y)6SDg8&o1d}bW~2^tzJ13jyV znbhY=M3YExoeUsH^x=>_yJ(65w*xybfyu6reDMuvzUQ;Vg~;&qWNm@GdaI-aCff!? zJ$pQl93jz6*6<P=((}wjBv!S?Cex2Q6U|BtB1;u|LC%*5tk4}DRroW|KFRFm4ZNP` z*CUOy63%_d8@EZ6ZCZ0htvjAbRzUj@iXOJZwC`D_3WDDhdFq4E0+vbA9B9^C{^zbr z{Tps&jcuO5E2gG2YP^4if_r$C$)=drqv&ccE*TnMQ6V&6D%P}6#P&^Y;YUf+JTIbc z8H>?~ZI_W$$iw7(BQe&^>QVL5>(QH<v}yG&^PptA()DvbT57dCep7}FMmuwhAF!RB z^%l&k@ImgdECbHb_#i1H%PCQCrgRj`6;u1l@4khPEgW}?^Oa}!d|y@FD7LHQs`fRO zi?$KDmIRn`HV|C?Z8bM*8>c;8&B{yk)bks^9dz<_bWT>Be&!T((l#GdRL9xy*qd`8 zr^LB9{UAvx1LjbNIe*<I)3q3=Mu{;{OjvY&5uY`dQ_kAu1Fn2la1DA&<hXf--5`Iu z>_Aoj6y?-qBHFR7#-U06w-eZi@Ps?xf^p~NsxH`IR&3ZOSJ~!OTkbp$7ynP9BUHdH zm?VC`zuBQB{i^?EAss`;eLE>WF`J|jX$~F^bXmQk@yTBk#>b;~VLU-JXb)q1E98aY znIj)i<Bx_Gw}Y0))d2wkx0X|&FMP9qU%gRuweJH}RqStKGOK2~K3n0$O#nMdxE7Vx z2g7w}ruwI**i__M@pYaKnML#y|EwbGeKDC#TP5t>a0j|OEtuJ#q><Fio~}j{<b^|y z#>D3@!UjMa)UUS&{#*huIMcwBNc<`L*?WRnaN78Lh|ZTa+!`Tz{y~at-++zS$g6uB z4P^{i%3I^(nWqr(;8a|U7q?HF?>t^Oc&fJxZccp|upr6-;z&XI>=Mgs&u<cZtF3ky z`EEq!yoH-SOt>vB{mjBUB&Y27!`^4!fvL!~{PKB%sB>D4n!FcBk}sM41+Q`|z&Tj! z<?zux<{QznO&M60tC}xdCPQmf+*IczWu*e3*sj(LiLPh3Z#&P8Ssd!(J1=`jt+zkQ zW06avB;eR9?)^-^B8(#%B%Y|RO@wcR)#{yG!#}8^hx&UlMC-uT`7Nk`@)fbnZnxo* zZ?e(d(yZVK;5BSzcU(U+h*ddq7SC{TVMzRDi$LWvIA>`l+M{&OTvTsg{=MT%USmkY z!g!XHeTt4+9=JwvD$vaKhF!k|kQCq_R(r~_6d3ZV>$UK;3yMVB2@mpKjCVhE#6(u$ z>zEj%c-z8JIaRBqhWi=fkwwW(=@RdVA)&uPDQw|t2K8Cbs)lQ1a2NaI+OqeTURJcY zbxQMoXVNihNmU2*twED&-oQ+UY???<uVh3{1jL1w7KHlo{HlEg@G}i%v0P%9raa{i zB6YHIr>Z8_a1Rl2w71n_(@PUkvrTc~jW_N}Pt%c)l!U^oc@gfHyg4nrM9*d_U!w3x zN%)>;{<`;e){jeD(IjKCEWGcN`}bRqmaZ$#>|YW_gIWClDOuSCeo<aQf$njt%2QMA zRk>1YQ^HYU*IYxn626ywiut5>p)oa7D5`IJYz_RU{LyD|Vu$_h4BM;-fGfc)dI~f9 zn&qbROq|EB-cPaLhe~pvO5ELxzkL!M@~CFt5}SoEt$!a&kNIqJ>8OrTFXeCaI9p70 zKY!&vCSmEK=^v+mPfHMgPZ0n1;6HwsEw}xX!?*I|!KJ^uwZxNl-e^vn4x`3SBK_p_ zyI?$hZc3uUIg<#`MMEsn(5iIc))Qz9`V``Tv6PNxYD6>lp;^Y!h!r&J7MkrC&CX)L zA!xuUYrv&zz-?*3<7U9?Z@?F0z@K4orqlr0XduvMAUJLyv|=E<Wgv2Fa9TAJ6*Lr+ zH9V_pc+S%Byqlr8zoA5op=5@kRH>nKqoGWnq3pOJQEtUhe#=nd*iexLqa=t?mc^*( zVpJ_LYHk>He~d;9Ml%DWRf^GW#OU;4bjLAzD;WJP%!OkNn#IUK(8y5M2%~FcWNBpV zW`y-OGKn!V%`h@6H8O8Bvgk9i95=$P7+Gx@SsxqWS&VH2jcsL(?R1UpEsY)Aj2-=r zorp2U&KbrorN*v}#uxjHPjg`IE5;sMbmL3M#sn6ury$l#7JFG2d&Lra)eY<IkM)Vc z`etCSm13_qV*UEC{^Qty6>Q)Z_Qo+bh{YsW&?H3GBvjWV%+e&>&E%%PNkoiEWQIvp zsY!IB$*n$<m~oTX6_dCv6XLN6iN%ym6f}*OHBHbpO|&#kax+c#H@zKWnv!9fT56is zXqw(<nlWygxng=}%k=KCX%>swJwdZ<S+g8nvs_EFJU6p^f3t!Zv%(CsqEfTsMzfMW zv(j<1vK6!PEwlT_W)v3l3PJNqS@Q?F=2e#F)o$iB{^qqY=5-n7^`+(wjph&gh~|ys z=1nW+&0FS=j?Jko7A=Ant+E!6b?FvumKN=979IW;oiP?&85Z587Cns?y?qva;}-oZ z7EiV;o*rA!SS$wwEeB;ShjcB6EiIq9Sw8o-d=X<gatbwCYB|<u`LfS)eB5$k#d31X z@}J{VNJrc&LELLu+_Wxk#u7K{M#Rne<K|;<3mLe@QruD_Zn+P)GLBna!M)kSy*<XQ zu~@wmw0bXVwXSRR!P4rZo7IND)u$M%&ly%<O0B*&T5a}OZH-%PuULKCvig2(wZmfl zL(uxCto5$0^`52mzMJ)dzxA&e>%$D|-=)?^jn;qqtdGa7Pgbn|Zducht%(2x9w>wd z$>G6zcnA&;b;rX3@C>ndcqSdscskD6glF!@vrOO-t9aIJJlhGL9dSw+Z^J2P!=-1# zjkDo#x8V)2;fuB5&$KyHW`k_95$LxOoUjpEwGrO75jn9zA#6p3Y{lek&+6Hp!`Ys9 zw-pbtm58;K%(Rs%vn5J5*~;|W%1+qIt=h_O+bW#cp5l%w3E3&j*{SH+sp9O^-0jo@ z>@;HSG&AkA%Ivh8>~#9=bSLceR_*k+?Jk_yp%L~5LiUDo_82{TBb>dlyFE6*-XzxE zG}GR!%-+1o-lE^$a>5?BYHzh|Z+&8qM>yCBIoQfM*y%ag6LAg>?hcLt4o<NS&Y2D_ zWe%=Q4j20!+$J2{SC1S#wjC~=I1mtyo<fdZa*mhv9IxOUuev*W2RQn~I{IchUMq9F z-sI@l@900_7_jOXxb1l3#4!lr6fEQvBIgvU=M;9z=kD%wGr%b#)+sX6DXPpVy2<HQ zzf;VFQ|zi!9C6!;c;ZAtIFp5(<K>(a^qdoM&Pndh$pOx{W1Uknom0!4)0&*q`<*i; zoHJLQ?`%8YJ#o%LxZD$R$(D1;(R0bgx#YRK<OjGE#JUt_x)hbU6gRn)^t+T!xRkBB zlyAG-KXIWTTq}fJE9G1t=($$mT&vw(YXV$rV_oYqiLUi!t_@AD5BpskCtRCWU7NRE zADt|Xv%mqOzadZvfDVwo1r-MI0?q&c@B;vyQP6bDiDX#>Iuuo>Rty<S+*B<x4SvCB z!Ybfh>1&*90OmQla?D5aN>7fk!n+MoD|AwEb5{gST1H2c<s9$0VS?`rX=$r8l=?ms zRZb&HU|9of_iD*pB3M@g?T{+jGk33xH)&7ZLzL@8TCKQ-&rYcoHRFUXhOgkk%CP1D z!wyeCVUgfulMMUk;jZZVrD|VH1A!bdtUgc}d;@cV=b^T6VNRvmkUxWd-5J!n*t5H^ zqY9T-!)TXKf>o~6rjbn+&!@IS^9ZR`H65bjSl#IIr{~2wMoj({(UoKe(1kjWvwfST zT+LV8xVy&2Qro~_(En8i;Pe5Wz5w{CZcg>{f3%c+swIBFxl;lC-?St-Ws`0h>e`rX zO!dUL6wRq#YxRCHETsNK%m4ET%}56My)A3u$_rv~js$|`%ptidGx?#cRjF3XGxXi_ z-!<EmxE>$`Li-r~m3D`*H&g@Eb(KOVpA$7p_=6-Lo7L3nDyW~s?tXo)rJBV0;q-4> zym%g&?e7(~?$Tu8(>&lhQz25Utd8A({3^{Y8Nx8$_H&PQI#uE|lbg{`j+R=G%IJ#c zv*(P&be&Q|-jV5K9x!Z<pZePHhxgNBjp@}N&il_DxaI*jSEp|H3lu50XNg{>NpsZ* z3D=nQeL@P{LB5fj?5llEj+;|g_?y0VdrFzzRV(;C$LF+R5rlW2H{pf${2h?#iYPw+ z#Z2>4+y^)1F25XlzIC<Sj=X27&N-81HJ*<<#D84<cB+@yg`=)6Tf(li;xUM}AQvtL zMk9|<Npb{-1e>v{5KaRAc}k7foZ+3Ic*DVfblk|A3G3qk?$f&5f7s~1JeG%0P7nfc z{`6SNPLG9K^IT2_84m669h@>BB>V9bmBaRS-m<3RcpchKC&Qi*TQ~TrhCd#R=1AH# zxJCVRt>G1Ma_RoeQDFh*_hWJk=eW#OMo;;D?_=$!f9`6Y0U3|jd@&Iax{qyw&q~eK zvpp2<zpf@Tm*`r+$|BP)v+xK$8nSwHI!UW$dj1>gAV?G|(+WeTe11H7M@{SRZ{nH0 zG3$3j;O75qO8;^*U8gpN{NFe6`@h*(q?}zk8T6vPaQZ!X@HWWFW%1Q8jplH-*muU) znAgawh{eBAQgM3Zo`kS`W#sEhM5Z50qt@@W3K6e|&W<rrUb8eJueO}wae>WQV=MMc zfqg17W6y=+lADoQggV=7%+<_X&+rFR6)I}NiJC7q@np}Ej96#Kb*B{Vc`^TVo-J%Q z_{)>nLf%K{ejob25Yyonq17Al_IzoiuiNuLu!#3E|NAS6PQSz~OX|NoS0jf{o{@fC zXOi+3>q?efugaVzf>X6(kq&DQ+RjEaYH9jpPTupgW#wP<aR|OJ?9>$U*_ZU=(?~iS z<A3r;|582E|K$p172XFFDUa@8PaTzmM6v2(3&tzQWJFNA^lWgZ2w6+m#f^w*{U8{x zuC07d@^$4)6Yxdn@eg>6ajJy>Lg85qrBRLd(X|Z8S0v1tv!^uI*Md!la)t7=L(Fn0 zc~$1_OTLi~?^&zqf$CajSr4A&vDT~at+ysUXOq96sY>9e!PMZae2+i2`e1svgrow3 zLtl`{tv%nIp$BiJX?)?JemJqY<#KkY@EPaJYp(=r^G~*%cPCn3i}I`%&%vGdug9m$ ze$!NvuuJDvK0Y23b&|SRKqEhj`VfIq8X3s>bRIh;VDoWwKR>|h)*Xb5gzAkNxb6#@ zC9cEO^T|f7AAqbpUv=w5;r*yF&%-BHUwC&+4q!J|1}tu>y=d|_Q)LJxW>)891IL>{ zE3E3WGweza7XULzUnph8_k4F)JRZ{YnlntOdt-{-5vB2(@tF&DTs!WxRgL|dD(`>i z_WjGF`VRr||MR2&A^D#X5dVu8|DRnQ0wDfBG30+@brmoVs1qdj?{TW&hb$7wX&6@3 z^5Df?6edm3thLH4dEP3gB2WnIy33j~5GX}-=niaJ?)>)_*VW$0fsTonosTZnJN{*2 zy-xdwkV0mY@nD&i9Pta~^<btZw_Htc{kz@OxHELN5vQ3hd^E7^d-s+#-*IxD-8e6! zP=MoV)`CK7qvse!$fY`Cstp&%Y84YeN_z1&?(>)C$YBOdj?R6n)vH`r!abed5-0n6 ze|=xOY)EIbj!^%-%Ukf^(mzl7|J2N#0uIpIe|qie&EC5I-RY_K5#S&XL(+O@VyE3u zt#XQsf;h}2$1j?!B_hm578tp`>zu_+UFs@~lVd+~CyHG+eSd98D&Ls|%k`a3mG^)= z!0|sfy_XR9+h_d_xG5wD5z#)fo<%fLZpV7h{*DwjQEGOs!Vl}#=UldJ9VX;Cd)I%= z-~4zW1pGcbQhjTEqHPH2<gI$yRq#&RMq!Y4^%a-orgxr};KP=*@|elC<S3h)xy9&* zEQ&sM$;ow9BH-f(wP=y!!B6G4Y`L$d(6@?e@7|6#wk)BWzQ8|7{EPW&RfJ<-sx@e^ zy?(uv`dmx;q3@500s~z*xBVZ{yyxP}4-3cCH)ZWc^kuf&W*q&t+gZ!fwmVkz|69TF JzuKG5{{p~*>b3v? delta 1658431 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%0AisYde31f$*0|Wt3`P20ik;tAmb%6 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%0D!W|S|FBZB!e?s&8o>@ML8vT{rU5Q1R$@7SORg@L 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%0D9za|B({F?bm#_ZERK#?003&iWe<Ht{ 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%0D^?jBmtHWeCDl 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%0Das=BY!nx87f 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%0DB@MEjuFecw+&I|2jncdshI+UssWO!3GcECLX|6d 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 ShI&N3v9^E%*HJOJ<o^LHZq+9M diff --git a/config/config.yaml b/config/config.yaml index 1c01031dc..2d38a5e36 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -24,8 +24,8 @@ zookeeper: mysql: address: [ 127.0.0.1:13306 ] #目前仅支持单机 - username: root #用户名 - password: openIM123 #密码 + username: root + password: openIM123 database: openIM_v3 #不建议修改 maxOpenConn: 1000 #最大连接数 maxIdleConn: 100 #最大空闲连接数 @@ -37,14 +37,14 @@ mongo: uri: #不为空则直接使用该值 address: [ 127.0.0.1:37017 ] #单机时为mongo地址,使用分片集群时,为mongos地址 database: openIM_v3 #mongo db 默认即可 - username: root #用户名 - password: openIM123 #密码 + username: root + password: openIM123 maxPoolSize: 100 redis: address: [ 127.0.0.1:16379 ] # username: #only redis version 6.0+ need username - password: openIM123 #密码 + password: openIM123 kafka: username: #用户名 @@ -77,9 +77,9 @@ object: apiURL: "http://127.0.0.1:10002/object/" #地址需要app能访问到 minio: bucket: "openim" #不建议修改 - endpoint: "http://127.0.0.1:10005" #minio对外服务的ip和端口,app要能访问此ip和端口 - accessKeyID: "root" #ID - secretAccessKey: "openIM123" #秘钥 + endpoint: http://116.30.3.80:10005 + accessKeyID: root + secretAccessKey: openIM123 sessionToken: "" #token cos: #tencent cos bucketURL: "https://temp-1252357374.cos.ap-chengdu.myqcloud.com" @@ -90,7 +90,7 @@ object: endpoint: "https://oss-cn-chengdu.aliyuncs.com" bucket: "demo-9999999" bucketURL: "https://demo-9999999.oss-cn-chengdu.aliyuncs.com" - accessKeyID: "" + accessKeyID: root accessKeySecret: "" sessionToken: "" @@ -167,7 +167,7 @@ retainChatRecords: 365 #mongo保存离线消息 chatRecordsClearTime: "0 2 * * 3" #每周三凌晨2点清理mongo中的过期(超过retainChatRecords时间)消息,这个删除是为了清理满足上个配置retainChatRecords的过期消息,不会发送通知,仅仅作为清理磁盘使用 msgDestructTime: "0 2 * * *" #消息自动删除时间,每天凌晨2点删除过期消息,这个删除是为了删除保留时间超过超过会话字段msg_destruct_time(秒)的消息。 -secret: tuoyun #秘钥,获取token时校验 +secret: openIM123 tokenPolicy: expire: 90 #过期时间(天) diff --git a/golangci.yaml b/golangci.yaml deleted file mode 100644 index 1cf6a2ab2..000000000 --- a/golangci.yaml +++ /dev/null @@ -1,933 +0,0 @@ -# Copyright © 2023 OpenIMSDK open source community. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# This file contains all available configuration options -# with their default values. - -# options for analysis running -run: - # default concurrency is a available CPU number - concurrency: 4 - - # timeout for analysis, e.g. 30s, 5m, default is 1m - timeout: 5m - - # exit code when at least one issue was found, default is 1 - issues-exit-code: 1 - - # include test files or not, default is true - tests: true - - # list of build tags, all linters use it. Default is empty list. - build-tags: - - mytag - - # which dirs to skip: issues from them won't be reported; - # can use regexp here: generated.*, regexp is applied on full path; - # default value is empty list, but default dirs are skipped independently - # from this option's value (see skip-dirs-use-default). - # "/" will be replaced by current OS file path separator to properly work - # on Windows. - skip-dirs: - - util - - .*~ - - api/swagger/docs - - server/docs - - # default is true. Enables skipping of directories: - # vendor$, third_party$, testdata$, examples$, Godeps$, builtin$ - skip-dirs-use-default: true - - # which files to skip: they will be analyzed, but issues from them - # won't be reported. Default value is empty list, but there is - # no need to include all autogenerated files, we confidently recognize - # autogenerated files. If it's not please let us know. - # "/" will be replaced by current OS file path separator to properly work - # on Windows. - skip-files: - - ".*\\.my\\.go$" - - _test.go - - # by default isn't set. If set we pass it to "go list -mod={option}". From "go help modules": - # If invoked with -mod=readonly, the go command is disallowed from the implicit - # automatic updating of go.mod described above. Instead, it fails when any changes - # to go.mod are needed. This setting is most useful to check that go.mod does - # not need updates, such as in a continuous integration and testing system. - # If invoked with -mod=vendor, the go command assumes that the vendor - # directory holds the correct copies of dependencies and ignores - # the dependency descriptions in go.mod. - #modules-download-mode: release|readonly|vendor - - # Allow multiple parallel golangci-lint instances running. - # If false (default) - golangci-lint acquires file lock on start. - allow-parallel-runners: true - - -# output configuration options -output: - # colored-line-number|line-number|json|tab|checkstyle|code-climate, default is "colored-line-number" - format: colored-line-number - - # print lines of code with issue, default is true - print-issued-lines: true - - # print linter name in the end of issue text, default is true - print-linter-name: true - - # make issues output unique by line, default is true - uniq-by-line: true - - # add a prefix to the output file references; default is no prefix - path-prefix: "" - - # sorts results by: filepath, line and column - sort-results: true - -# all available settings of specific linters -linters-settings: - bidichk: - # The following configurations check for all mentioned invisible unicode - # runes. It can be omitted because all runes are enabled by default. - left-to-right-embedding: true - right-to-left-embedding: true - pop-directional-formatting: true - left-to-right-override: true - right-to-left-override: true - left-to-right-isolate: true - right-to-left-isolate: true - first-strong-isolate: true - pop-directional-isolate: true - dogsled: - # checks assignments with too many blank identifiers; default is 2 - max-blank-identifiers: 2 - dupl: - # tokens count to trigger issue, 150 by default - threshold: 100 - errcheck: - # report about not checking of errors in type assertions: `a := b.(MyStruct)`; - # default is false: such cases aren't reported by default. - check-type-assertions: false - - # report about assignment of errors to blank identifier: `num, _ := strconv.Atoi(numStr)`; - # default is false: such cases aren't reported by default. - check-blank: false - - # [deprecated] comma-separated list of pairs of the form pkg:regex - # the regex is used to ignore names within pkg. (default "fmt:.*"). - # see https://github.com/kisielk/errcheck#the-deprecated-method for details - #ignore: GenMarkdownTree,os:.*,BindPFlags,WriteTo,Help - #ignore: (os\.)?std(out|err)\..*|.*Close|.*Flush|os\.Remove(All)?|.*print(f|ln)?|os\.(Un)?Setenv - - # path to a file containing a list of functions to exclude from checking - # see https://github.com/kisielk/errcheck#excluding-functions for details - #exclude: errcheck.txt - - errorlint: - # Check whether fmt.Errorf uses the %w verb for formatting errors. See the readme for caveats - errorf: true - # Check for plain type assertions and type switches - asserts: true - # Check for plain error comparisons - comparison: true - - exhaustive: - # check switch statements in generated files also - check-generated: false - # indicates that switch statements are to be considered exhaustive if a - # 'default' case is present, even if all enum members aren't listed in the - # switch - default-signifies-exhaustive: false - # enum members matching the supplied regex do not have to be listed in - # switch statements to satisfy exhaustiveness - ignore-enum-members: "" - # consider enums only in package scopes, not in inner scopes - package-scope-only: false - exhaustivestruct: - struct-patterns: - - '*.Test' - - '*.Test2' - - '*.Embedded' - - '*.External' - - # forbidigo: - # # Forbid the following identifiers (identifiers are written using regexp): - # forbid: - # - ^print.*$ - # - 'fmt\.Print.*' - # - fmt.Println.* # too much log noise - # - ginkgo\\.F.* # these are used just for local development - # # Exclude godoc examples from forbidigo checks. Default is true. - # exclude_godoc_examples: false - funlen: - lines: 150 - statements: 50 - gci: - # put imports beginning with prefix after 3rd-party packages; - # only support one prefix - # if not set, use goimports.local-prefixes - prefix: github.com/OpenIMSDK/OpenKF - gocognit: - # minimal code complexity to report, 30 by default (but we recommend 10-20) - min-complexity: 30 - goconst: - # minimal length of string constant, 3 by default - min-len: 3 - # minimal occurrences count to trigger, 3 by default - min-occurrences: 3 - # ignore test files, false by default - ignore-tests: false - # look for existing constants matching the values, true by default - match-constant: true - # search also for duplicated numbers, false by default - numbers: false - # minimum value, only works with goconst.numbers, 3 by default - min: 3 - # maximum value, only works with goconst.numbers, 3 by default - max: 3 - # ignore when constant is not used as function argument, true by default - ignore-calls: true - - gocritic: - # Which checks should be enabled; can't be combined with 'disabled-checks'; - # See https://go-critic.github.io/overview#checks-overview - # To check which checks are enabled run `GL_DEBUG=gocritic golangci-lint run` - # By default list of stable checks is used. - enabled-checks: - #- rangeValCopy - - nestingreduce - - truncatecmp - - unnamedresult - - ruleguard - - # Which checks should be disabled; can't be combined with 'enabled-checks'; default is empty - disabled-checks: - - regexpMust - - ifElseChain - #- exitAfterDefer - - # Enable multiple checks by tags, run `GL_DEBUG=gocritic golangci-lint run` to see all tags and checks. - # Empty list by default. See https://github.com/go-critic/go-critic#usage -> section "Tags". - enabled-tags: - - performance - disabled-tags: - - experimental - - # Settings passed to gocritic. - # The settings key is the name of a supported gocritic checker. - # The list of supported checkers can be find in https://go-critic.github.io/overview. - settings: - captLocal: # must be valid enabled check name - # whether to restrict checker to params only (default true) - paramsOnly: true - elseif: - # whether to skip balanced if-else pairs (default true) - skipBalanced: true - hugeParam: - # size in bytes that makes the warning trigger (default 80) - sizeThreshold: 80 - nestingReduce: - # min number of statements inside a branch to trigger a warning (default 5) - bodyWidth: 5 - rangeExprCopy: - # size in bytes that makes the warning trigger (default 512) - sizeThreshold: 512 - # whether to check test functions (default true) - skipTestFuncs: true - rangeValCopy: - # size in bytes that makes the warning trigger (default 128) - sizeThreshold: 32 - # whether to check test functions (default true) - skipTestFuncs: true - ruleguard: - # path to a gorules file for the ruleguard checker - rules: '' - truncateCmp: - # whether to skip int/uint/uintptr types (default true) - skipArchDependent: true - underef: - # whether to skip (*x).method() calls where x is a pointer receiver (default true) - skipRecvDeref: true - unnamedResult: - # whether to check exported functions - checkExported: true - gocyclo: - # minimal code complexity to report, 30 by default (but we recommend 10-20) - min-complexity: 30 - cyclop: - # the maximal code complexity to report - max-complexity: 50 - # the maximal average package complexity. If it's higher than 0.0 (float) the check is enabled (default 0.0) - package-average: 0.0 - # should ignore tests (default false) - skip-tests: false - godot: - # comments to be checked: `declarations`, `toplevel`, or `all` - scope: declarations - # list of regexps for excluding particular comment lines from check - exclude: - # example: exclude comments which contain numbers - # - '[0-9]+' - # check that each sentence starts with a capital letter - capital: false - godox: - # report any comments starting with keywords, this is useful for TODO or FIXME comments that - # might be left in the code accidentally and should be resolved before merging - keywords: # default keywords are TODO, BUG, and FIXME, these can be overwritten by this setting - #- TODO - - BUG - - FIXME - #- NOTE - - OPTIMIZE # marks code that should be optimized before merging - - HACK # marks hack-arounds that should be removed before merging - gofmt: - # simplify code: gofmt with `-s` option, true by default - simplify: true - - gofumpt: - # Select the Go version to target. The default is `1.18`. - lang-version: "1.20" - - # Choose whether or not to use the extra rules that are disabled - # by default - extra-rules: false - - goheader: - values: - const: - # define here const type values in format k:v, for example: - # COMPANY: MY COMPANY - regexp: - # define here regexp type values, for example - # AUTHOR: .*@mycompany\.com - template: # |- - # put here copyright header template for source code files, for example: - # Note: {{ YEAR }} is a builtin value that returns the year relative to the current machine time. - # - # {{ AUTHOR }} {{ COMPANY }} {{ YEAR }} - # SPDX-License-Identifier: Apache-2.0 - - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at: - - # http://www.apache.org/licenses/LICENSE-2.0 - - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - template-path: - # also as alternative of directive 'template' you may put the path to file with the template source - goimports: - # put imports beginning with prefix after 3rd-party packages; - # it's a comma-separated list of prefixes - local-prefixes: github.com/OpenIMSDK/OpenKF - golint: - # minimal confidence for issues, default is 0.8 - min-confidence: 0.9 - gomnd: - settings: - mnd: - # the list of enabled checks, see https://github.com/tommy-muehle/go-mnd/#checks for description. - checks: argument,case,condition,operation,return,assign - # ignored-numbers: 1000 - # ignored-files: magic_.*.go - # ignored-functions: math.* - gomoddirectives: - # Allow local `replace` directives. Default is false. - replace-local: true - # List of allowed `replace` directives. Default is empty. - replace-allow-list: - - google.golang.org/grpc - - # Allow to not explain why the version has been retracted in the `retract` directives. Default is false. - retract-allow-no-explanation: false - # Forbid the use of the `exclude` directives. Default is false. - exclude-forbidden: false - gomodguard: - allowed: - modules: # List of allowed modules - - gorm.io/gorm - - gorm.io/driver/mysql - - k8s.io/klog - # - gopkg.in/yaml.v2 - domains: # List of allowed module domains - - google.golang.org - - gopkg.in - - golang.org - - github.com - - go.uber.org - - go.etcd.io - blocked: - versions: - - github.com/MakeNowJust/heredoc: - version: "> 2.0.9" - reason: "use the latest version" - local_replace_directives: false # Set to true to raise lint issues for packages that are loaded from a local path via replace directive - - gosec: - # To select a subset of rules to run. - # Available rules: https://github.com/securego/gosec#available-rules - includes: - - G401 - - G306 - - G101 - # To specify a set of rules to explicitly exclude. - # Available rules: https://github.com/securego/gosec#available-rules - excludes: - - G204 - # Exclude generated files - exclude-generated: true - # Filter out the issues with a lower severity than the given value. Valid options are: low, medium, high. - severity: "low" - # Filter out the issues with a lower confidence than the given value. Valid options are: low, medium, high. - confidence: "low" - # To specify the configuration of rules. - # The configuration of rules is not fully documented by gosec: - # https://github.com/securego/gosec#configuration - # https://github.com/securego/gosec/blob/569328eade2ccbad4ce2d0f21ee158ab5356a5cf/rules/rulelist.go#L60-L102 - config: - G306: "0600" - G101: - pattern: "(?i)example" - ignore_entropy: false - entropy_threshold: "80.0" - per_char_threshold: "3.0" - truncate: "32" - - gosimple: - # Select the Go version to target. The default is '1.13'. - go: "1.20" - # https://staticcheck.io/docs/options#checks - checks: [ "all" ] - - govet: - # report about shadowed variables - check-shadowing: true - - # settings per analyzer - settings: - printf: # analyzer name, run `go tool vet help` to see all analyzers - funcs: # run `go tool vet help printf` to see available settings for `printf` analyzer - - (github.com/golangci/golangci-lint/pkg/logutils.Log).Infof - - (github.com/golangci/golangci-lint/pkg/logutils.Log).Warnf - - (github.com/golangci/golangci-lint/pkg/logutils.Log).Errorf - - (github.com/golangci/golangci-lint/pkg/logutils.Log).Fatalf - - # enable or disable analyzers by name - enable: - - atomicalign - enable-all: false - disable: - - shadow - disable-all: false - # depguard: - # list-type: blacklist - # include-go-root: false - # packages: - # - github.com/Sirupsen/logrus - # packages-with-error-message: - # # specify an error message to output when a blacklisted package is used - # - github.com/Sirupsen/logrus: "logging is allowed only by logutils.Log" - ifshort: - # Maximum length of variable declaration measured in number of lines, after which linter won't suggest using short syntax. - # Has higher priority than max-decl-chars. - max-decl-lines: 1 - # Maximum length of variable declaration measured in number of characters, after which linter won't suggest using short syntax. - max-decl-chars: 30 - - importas: - # if set to `true`, force to use alias. - no-unaliased: true - # List of aliases - alias: - # using `servingv1` alias for `knative.dev/serving/pkg/apis/serving/v1` package - - pkg: knative.dev/serving/pkg/apis/serving/v1 - alias: servingv1 - # using `autoscalingv1alpha1` alias for `knative.dev/serving/pkg/apis/autoscaling/v1alpha1` package - - pkg: knative.dev/serving/pkg/apis/autoscaling/v1alpha1 - alias: autoscalingv1alpha1 - # You can specify the package path by regular expression, - # and alias by regular expression expansion syntax like below. - # see https://github.com/julz/importas#use-regular-expression for details - - pkg: knative.dev/serving/pkg/apis/(\w+)/(v[\w\d]+) - alias: $1$2 - # using `jwt` alias for `github.com/appleboy/gin-jwt/v2` package - jwt: github.com/appleboy/gin-jwt/v2 - - ireturn: - # ireturn allows using `allow` and `reject` settings at the same time. - # Both settings are lists of the keywords and regular expressions matched to interface or package names. - # keywords: - # - `empty` for `interface{}` - # - `error` for errors - # - `stdlib` for standard library - # - `anon` for anonymous interfaces - - # By default, it allows using errors, empty interfaces, anonymous interfaces, - # and interfaces provided by the standard library. - allow: - - anon - - error - - empty - - stdlib - # You can specify idiomatic endings for interface - - (or|er)$ - - # Reject patterns - reject: - - github.com\/user\/package\/v4\.Type - - lll: - # max line length, lines longer will be reported. Default is 120. - # '\t' is counted as 1 character by default, and can be changed with the tab-width option - line-length: 240 - # tab width in spaces. Default to 1. - tab-width: 4 - maligned: - # print struct with more effective memory layout or not, false by default - suggest-new: true - misspell: - # Correct spellings using locale preferences for US or UK. - # Default is to use a neutral variety of English. - # Setting locale to US will correct the British spelling of 'colour' to 'color'. - locale: US - ignore-words: - - someword - nakedret: - # make an issue if func has more lines of code than this setting and it has naked returns; default is 30 - max-func-lines: 30 - - nestif: - # minimal complexity of if statements to report, 5 by default - min-complexity: 4 - - nilnil: - # By default, nilnil checks all returned types below. - checked-types: - - ptr - - func - - iface - - map - - chan - - nlreturn: - # size of the block (including return statement that is still "OK") - # so no return split required. - block-size: 1 - - nolintlint: - # Disable to ensure that all nolint directives actually have an effect. Default is true. - allow-unused: false - # Disable to ensure that nolint directives don't have a leading space. Default is true. - allow-leading-space: true - # Exclude following linters from requiring an explanation. Default is []. - allow-no-explanation: [ ] - # Enable to require an explanation of nonzero length after each nolint directive. Default is false. - require-explanation: false - # Enable to require nolint directives to mention the specific linter being suppressed. Default is false. - require-specific: true - - prealloc: - # XXX: we don't recommend using this linter before doing performance profiling. - # For most programs usage of prealloc will be a premature optimization. - - # Report preallocation suggestions only on simple loops that have no returns/breaks/continues/gotos in them. - # True by default. - simple: true - range-loops: true # Report preallocation suggestions on range loops, true by default - for-loops: false # Report preallocation suggestions on for loops, false by default - - promlinter: - # Promlinter cannot infer all metrics name in static analysis. - # Enable strict mode will also include the errors caused by failing to parse the args. - strict: false - # Please refer to https://github.com/yeya24/promlinter#usage for detailed usage. - disabled-linters: - # - "Help" - # - "MetricUnits" - # - "Counter" - # - "HistogramSummaryReserved" - # - "MetricTypeInName" - # - "ReservedChars" - # - "CamelCase" - # - "lintUnitAbbreviations" - - predeclared: - # comma-separated list of predeclared identifiers to not report on - ignore: "" - # include method names and field names (i.e., qualified names) in checks - q: false - rowserrcheck: - packages: - - github.com/jmoiron/sqlx - revive: - # see https://github.com/mgechev/revive#available-rules for details. - ignore-generated-header: true - severity: warning - rules: - - name: indent-error-flow - severity: warning - staticcheck: - # Select the Go version to target. The default is '1.13'. - go: "1.16" - # https://staticcheck.io/docs/options#checks - checks: [ "all" ] - - stylecheck: - # Select the Go version to target. The default is '1.13'. - go: "1.16" - - # https://staticcheck.io/docs/options#checks - checks: [ "all", "-ST1000", "-ST1003", "-ST1016", "-ST1020", "-ST1021", "-ST1022" ] - # https://staticcheck.io/docs/options#dot_import_whitelist - dot-import-whitelist: - - fmt - # https://staticcheck.io/docs/options#initialisms - initialisms: [ "ACL", "API", "ASCII", "CPU", "CSS", "DNS", "EOF", "GUID", "HTML", "HTTP", "HTTPS", "ID", "IP", "JSON", "QPS", "RAM", "RPC", "SLA", "SMTP", "SQL", "SSH", "TCP", "TLS", "TTL", "UDP", "UI", "GID", "UID", "UUID", "URI", "URL", "UTF8", "VM", "XML", "XMPP", "XSRF", "XSS" ] - # https://staticcheck.io/docs/options#http_status_code_whitelist - http-status-code-whitelist: [ "200", "400", "404", "500" ] - - - tagliatelle: - # check the struck tag name case - case: - # use the struct field name to check the name of the struct tag - use-field-name: true - rules: - # any struct tag type can be used. - # support string case: `camel`, `pascal`, `kebab`, `snake`, `goCamel`, `goPascal`, `goKebab`, `goSnake`, `upper`, `lower` - json: camel - yaml: camel - xml: camel - bson: camel - avro: snake - mapstructure: kebab - - testpackage: - # regexp pattern to skip files - skip-regexp: (id|export|internal)_test\.go - thelper: - # The following configurations enable all checks. It can be omitted because all checks are enabled by default. - # You can enable only required checks deleting unnecessary checks. - test: - first: true - name: true - begin: true - benchmark: - first: true - name: true - begin: true - tb: - first: true - name: true - begin: true - - tenv: - # The option `all` will run against whole test files (`_test.go`) regardless of method/function signatures. - # By default, only methods that take `*testing.T`, `*testing.B`, and `testing.TB` as arguments are checked. - all: false - - unparam: - # Inspect exported functions, default is false. Set to true if no external program/library imports your code. - # XXX: if you enable this setting, unparam will report a lot of false-positives in text editors: - # if it's called for subdir of a project it can't find external interfaces. All text editor integrations - # with golangci-lint call it on a directory with the changed file. - check-exported: false - unused: - # treat code as a program (not a library) and report unused exported identifiers; default is false. - # XXX: if you enable this setting, unused will report a lot of false-positives in text editors: - # if it's called for subdir of a project it can't find funcs usages. All text editor integrations - # with golangci-lint call it on a directory with the changed file. - check-exported: false - whitespace: - multi-if: false # Enforces newlines (or comments) after every multi-line if statement - multi-func: false # Enforces newlines (or comments) after every multi-line function signature - - wrapcheck: - # An array of strings that specify substrings of signatures to ignore. - # If this set, it will override the default set of ignored signatures. - # See https://github.com/tomarrell/wrapcheck#configuration for more information. - ignoreSigs: - - .Errorf( - - errors.New( - - errors.Unwrap( - - .Wrap( - - .Wrapf( - - .WithMessage( - - .WithMessagef( - - .WithStack( - ignorePackageGlobs: - - encoding/* - - github.com/pkg/* - - wsl: - # If true append is only allowed to be cuddled if appending value is - # matching variables, fields or types on line above. Default is true. - strict-append: true - # Allow calls and assignments to be cuddled as long as the lines have any - # matching variables, fields or types. Default is true. - allow-assign-and-call: true - # Allow assignments to be cuddled with anything. Default is false. - allow-assign-and-anything: false - # Allow multiline assignments to be cuddled. Default is true. - allow-multiline-assign: true - # Allow declarations (var) to be cuddled. - allow-cuddle-declarations: false - # Allow trailing comments in ending of blocks - allow-trailing-comment: false - # Force newlines in end of case at this limit (0 = never). - force-case-trailing-whitespace: 0 - # Force cuddling of err checks with err var assignment - force-err-cuddling: false - # Allow leading comments to be separated with empty liens - allow-separated-leading-comment: false - makezero: - # Allow only slices initialized with a length of zero. Default is false. - always: false - - - # The custom section can be used to define linter plugins to be loaded at runtime. See README doc - # for more info. - #custom: - # Each custom linter should have a unique name. - #example: - # The path to the plugin *.so. Can be absolute or local. Required for each custom linter - #path: /path/to/example.so - # The description of the linter. Optional, just for documentation purposes. - #description: This is an example usage of a plugin linter. - # Intended to point to the repo location of the linter. Optional, just for documentation purposes. - #original-url: github.com/golangci/example-linter - -linters: - # please, do not use `enable-all`: it's deprecated and will be removed soon. - # inverted configuration with `enable-all` and `disable` is not scalable during updates of golangci-lint - # enable-all: true - disable-all: true - enable: - - typecheck - - asciicheck - - bodyclose - - cyclop - - deadcode - # - depguard - - dogsled - - dupl - - durationcheck - - errcheck - - errorlint - - exhaustive - - exportloopref - # - forbidigo - - funlen - # - gci - # - gochecknoinits - - gocognit - - goconst - - gocyclo - - godot - - godox - - gofmt - - gofumpt - - goheader - - goimports - - gomoddirectives - - gomodguard - - goprintffuncname - - gosec - - gosimple - - govet - - ifshort - - importas - - ineffassign - - lll - - makezero - - misspell - - nakedret - - nestif - - nilerr - - nlreturn - - noctx - - nolintlint - - paralleltest - - prealloc - - predeclared - - promlinter - - revive - - rowserrcheck - - sqlclosecheck - - staticcheck - - structcheck - - stylecheck - - thelper - - tparallel - - unconvert - - unparam - - unused - - varcheck - - wastedassign - - whitespace - - bidichk - - wastedassign - - golint - - execinquery - - nosprintfhostport - - grouper - - decorder - - errchkjson - - maintidx - #- containedctx - #- tagliatelle - #- nonamedreturns - #- nilnil - #- tenv - #- varnamelen - #- contextcheck - #- errname - #- ForceTypeAssert - #- nilassign - fast: false - -issues: - # List of regexps of issue texts to exclude, empty list by default. - # But independently from this option we use default exclude patterns, - # it can be disabled by `exclude-use-default: false`. To list all - # excluded by default patterns execute `golangci-lint run --help` - exclude: - - tools/.* - - test/.* - - third_party/.* - - # Excluding configuration per-path, per-linter, per-text and per-source - exclude-rules: - - linters: - - golint - path: (internal/api/.*)\.go # exclude golint for internal/api/... files - - - linters: - - revive - path: (log/.*)\.go - - - linters: - - wrapcheck - path: (cmd/.*|pkg/.*)\.go - - - linters: - - typecheck - #path: (pkg/storage/.*)\.go - path: (internal/.*|pkg/.*)\.go - - - path: (cmd/.*|test/.*|tools/.*|internal/pump/pumps/.*)\.go - linters: - - forbidigo - - - path: (cmd/[a-z]*/.*|store/.*)\.go - linters: - - dupl - - - linters: - - gocritic - text: (hugeParam:|rangeValCopy:) - - - path: (cmd/[a-z]*/.*)\.go - linters: - - lll - - - path: (validator/.*|code/.*|validator/.*|watcher/watcher/.*) - linters: - - gochecknoinits - - - path: (internal/.*/options|internal/pump|pkg/log/options.go|internal/authzserver|tools/) - linters: - - tagliatelle - - - path: (pkg/app/.*)\.go - linters: - - deadcode - - unused - - varcheck - - forbidigo - - # Exclude some staticcheck messages - - linters: - - staticcheck - text: "SA9003:" - - # Exclude lll issues for long lines with go:generate - - linters: - - lll - source: "^//go:generate " - - # Independently from option `exclude` we use default exclude patterns, - # it can be disabled by this option. To list all - # excluded by default patterns execute `golangci-lint run --help`. - # Default value for this option is true. - exclude-use-default: true - - # The default value is false. If set to true exclude and exclude-rules - # regular expressions become case sensitive. - exclude-case-sensitive: false - - # The list of ids of default excludes to include or disable. By default it's empty. - include: - - EXC0002 # disable excluding of issues about comments from golint - - # Maximum issues count per one linter. Set to 0 to disable. Default is 50. - max-issues-per-linter: 0 - - # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. - max-same-issues: 0 - - # Show only new issues: if there are unstaged changes or untracked files, - # only those changes are analyzed, else only changes in HEAD~ are analyzed. - # It's a super-useful option for integration of golangci-lint into existing - # large codebase. It's not practical to fix all existing issues at the moment - # of integration: much better don't allow issues in new code. - # Default is false. - new: false - - # Show only new issues created after git revision `REV` - # new-from-rev: REV - - # Show only new issues created in git patch with set file path. - #new-from-patch: path/to/patch/file - - # Fix found issues (if it's supported by the linter) - fix: true - -severity: - # Default value is empty string. - # Set the default severity for issues. If severity rules are defined and the issues - # do not match or no severity is provided to the rule this will be the default - # severity applied. Severities should match the supported severity names of the - # selected out format. - # - Code climate: https://docs.codeclimate.com/docs/issues#issue-severity - # - Checkstyle: https://checkstyle.sourceforge.io/property_types.html#severity - # - Github: https://help.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-error-message - default-severity: error - - # The default value is false. - # If set to true severity-rules regular expressions become case sensitive. - case-sensitive: false - - # Default value is empty list. - # When a list of severity rules are provided, severity information will be added to lint - # issues. Severity rules have the same filtering capability as exclude rules except you - # are allowed to specify one matcher per severity rule. - # Only affects out formats that support setting severity information. - rules: - - linters: - - dupl - severity: info \ No newline at end of file diff --git a/init_docker.sh b/init_docker.sh index 9815fe871..b06eda469 100755 --- a/init_docker.sh +++ b/init_docker.sh @@ -1,5 +1,14 @@ #!/usr/bin/env bash +mark='' +for ((ratio=0;${ratio}<=100;ratio+=5)) +do + sleep 0.2 + printf "progress:[%-40s]%d%%\r" "${mark}" "${ratio}" + mark="##${mark}" +done +echo + set -e # Change directory to the 'scripts' folder diff --git a/install_im_compose.sh b/install_im_compose.sh deleted file mode 100755 index 687a827d1..000000000 --- a/install_im_compose.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash -internet_ip=`curl ifconfig.me -s` -echo $internet_ip - -source .env -echo $MINIO_ENDPOINT -if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then - sed -i "s/127.0.0.1/${internet_ip}/" .env - -fi - -cd scripts ; -chmod +x *.sh ; -./init_pwd.sh -./env_check.sh; -cd .. ; -docker-compose -f im-compose.yaml up -d -docker ps - - - diff --git a/install_im_server.sh b/install_im_server.sh deleted file mode 100755 index c526d43db..000000000 --- a/install_im_server.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env bash - -# Get the public internet IP address -internet_ip=$(curl ifconfig.me -s) -echo $internet_ip - -# Load environment variables from .env file -source .env -echo $MINIO_ENDPOINT - -# Replace local IP address with the public IP address in .env file -if [ $API_URL == "http://127.0.0.1:10002/object/" ]; then - sed -i "s/127.0.0.1/${internet_ip}/" .env -fi - -if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then - sed -i "s/127.0.0.1/${internet_ip}/" .env -fi - -# Change directory to scripts folder -cd scripts -chmod +x *.sh - -# Execute necessary scripts -./init_pwd.sh -./env_check.sh - -# Go back to the previous directory -cd .. - -# Check if docker-compose command is available -if command -v docker-compose &> /dev/null -then - docker-compose up -d -else - docker compose up -d -fi - -# Change directory to scripts folder again -cd scripts - -# Check docker services -./docker_check_service.sh \ No newline at end of file diff --git a/pkg/common/db/controller/user.go b/pkg/common/db/controller/user.go index e15033a62..81cabe0f6 100644 --- a/pkg/common/db/controller/user.go +++ b/pkg/common/db/controller/user.go @@ -40,9 +40,9 @@ type UserDatabase interface { Page(ctx context.Context, pageNumber, showNumber int32) (users []*relation.UserModel, count int64, err error) // 只要有一个存在就为true IsExist(ctx context.Context, userIDs []string) (exist bool, err error) - //获取所有用户ID + // 获取所有用户ID GetAllUserID(ctx context.Context, pageNumber, showNumber int32) ([]string, error) - //函数内部先查询db中是否存在,存在则什么都不做;不存在则插入 + // 函数内部先查询db中是否存在,存在则什么都不做;不存在则插入 InitOnce(ctx context.Context, users []*relation.UserModel) (err error) // 获取用户总数 CountTotal(ctx context.Context, before *time.Time) (int64, error) diff --git a/pkg/common/db/relation/user_model.go b/pkg/common/db/relation/user_model.go index 6e095f55f..d3be5dd7e 100644 --- a/pkg/common/db/relation/user_model.go +++ b/pkg/common/db/relation/user_model.go @@ -83,7 +83,7 @@ func (u *UserGorm) Page( return } -// 获取所有用户ID +// 获取所有用户ID. func (u *UserGorm) GetAllUserID(ctx context.Context, pageNumber, showNumber int32) (userIDs []string, err error) { return userIDs, errs.Wrap(u.db(ctx).Limit(int(showNumber)).Offset(int((pageNumber-1)*showNumber)).Pluck("user_id", &userIDs).Error) } diff --git a/scripts/batch_build_all_service.sh b/scripts/batch_build_all_service.sh deleted file mode 100755 index f3bd791cf..000000000 --- a/scripts/batch_build_all_service.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env bash -# Copyright © 2023 OpenIM. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -#Include shell font styles and some basic information -OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. - -# Include necessary files -source "$(dirname "${BASH_SOURCE[0]}")/../scripts.sh" - -# Include specific functions and variables -source "$(dirname "${BASH_SOURCE[0]}")/../scripts/style_info.sh" \ - "$OPENIM_ROOT/scripts/path_info.sh" - -bin_dir="$BIN_DIR" -logs_dir="$OPENIM_ROOT/logs" -sdk_db_dir="$OPENIM_ROOT/sdk/db/" - -#Automatically created when there is no bin, logs folder -if [ ! -d $bin_dir ]; then - mkdir -p $bin_dir -fi -if [ ! -d $logs_dir ]; then - mkdir -p $logs_dir -fi -if [ ! -d $sdk_db_dir ]; then - mkdir -p $sdk_db_dir -fi - -#begin path -begin_path=$PWD - - -build_pid_array=() - -for ((i = 0; i < ${#service_source_root[*]}; i++)); do - cd $begin_path - service_path=${service_source_root[$i]} - cd $service_path - make install > /dev/null & - build_pid=$! - build_pid_array[i]=$build_pid -done - - -echo "wait all build finish....." - -success_num=0 -for ((i = 0; i < ${#service_source_root[*]}; i++)); do - echo "wait pid: " ${build_pid_array[i]} ${service_names[$i]} - wait ${build_pid_array[i]} - stat=$? - echo ${service_names[$i]} "pid: " ${build_pid_array[i]} "stat: " $stat - if [ $stat == 0 ] - then - echo -e "${GREEN_PREFIX}${service_names[$i]} successfully be built ${COLOR_SUFFIX}\n" - let success_num=$success_num+1 - - else - echo -e "${RED_PREFIX}${service_names[$i]} build failed ${COLOR_SUFFIX}\n" - exit -1 - fi -done - -echo "success_num" $success_num "service num:" ${#service_source_root[*]} -if [ $success_num == ${#service_source_root[*]} ] -then - echo -e ${BACKGROUND_GREEN}"all services build success"${COLOR_SUFFIX} -fi diff --git a/scripts/docker_check_service.sh b/scripts/docker_check_service.sh index 4acbde407..14ec81974 100755 --- a/scripts/docker_check_service.sh +++ b/scripts/docker_check_service.sh @@ -13,21 +13,96 @@ # See the License for the specific language governing permissions and # limitations under the License. -echo "docker-compose ps..........................." -cd .. +# Include shell font styles and some basic information +SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. -if command -v docker-compose &> /dev/null -then +source "$SCRIPTS_ROOT/style_info.sh" + +echo -e "${GREEN_PREFIX}=========> Check docker-compose status ${COLOR_SUFFIX} \n" + +trap 'onCtrlC' INT + +function onCtrlC() { + kill -9 "${do_sth_pid}" "${progress_pid}" "${countdown_pid}" + echo + echo 'Ctrl+C is captured' + exit 1 +} + +cd "$OPENIM_ROOT" + +if command -v docker-compose &> /dev/null; then docker-compose ps else docker compose ps fi +progress() { + local _main_pid="$1" + local _length=20 + local _ratio=1 + local _colors=("31" "32" "33" "34" "35" "36" "37") + local _wave=("▁" "▂" "▃" "▄" "▅" "▆" "▇" "█" "▇" "▆" "▅" "▄" "▃" "▂") + + while pgrep -P "$_main_pid" &> /dev/null; do + local _mark='>' + local _progress_bar= + for ((i = 1; i <= _length; i++)); do + if ((i > _ratio)); then + _mark='-' + fi + _progress_bar="${_progress_bar}${_mark}" + done + + local _color_idx=$((_ratio % ${#_colors[@]})) + local _color_prefix="\033[${_colors[_color_idx]}m" + local _reset_suffix="\033[0m" + + local _wave_idx=$((_ratio % ${#_wave[@]})) + local _wave_progress=${_wave[_wave_idx]} + + printf "Progress: ${_color_prefix}${_progress_bar}${_reset_suffix} ${_wave_progress} Countdown: %2ds \r" "$_countdown" + ((_ratio++)) + ((_ratio > _length)) && _ratio=1 + sleep 0.1 + done +} + +countdown() { + local _duration="$1" + + for ((i = _duration; i >= 1; i--)); do + printf "\rCountdown: %2ds \r" "$i" + sleep 1 + done + printf "\rCountdown: %2ds \r" "$_duration" +} + +do_sth() { + echo "++++++++++++++++++++++++" + progress $$ & + local _progress_pid=$! + local _countdown=30 + + countdown "$_countdown" & + local _countdown_pid=$! + + sleep 30 + + kill "$_progress_pid" "$_countdown_pid" + + "${SCRIPTS_ROOT}/check_all.sh" + echo -e "${PURPLE_PREFIX}=========> Check docker-compose status ${COLOR_SUFFIX} \n" +} +set -e -cd scripts -echo "check OpenIM................................" +do_sth & +do_sth_pid=$(jobs -p | tail -1) -sleep 30 -./check_all.sh +progress "${do_sth_pid}" & +progress_pid=$(jobs -p | tail -1) +wait "${do_sth_pid}" +printf "Progress: done \n" diff --git a/scripts/env_check.sh b/scripts/env_check.sh index 8c84567b7..35f918d80 100755 --- a/scripts/env_check.sh +++ b/scripts/env_check.sh @@ -13,7 +13,16 @@ # See the License for the specific language governing permissions and # limitations under the License. -source ./style_info.sh +#Include shell font styles and some basic information +SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +OPENIM_ROOT=$(dirname "${SCRIPTS_ROOT}")/.. + +#Include shell font styles and some basic information +source $SCRIPTS_ROOT/style_info.sh +source $SCRIPTS_ROOT/path_info.sh +source $SCRIPTS_ROOT/function.sh + +cd $SCRIPTS_ROOT echo -e "check time synchronize.................................." t=`curl http://time.akamai.com/?iso -s` @@ -27,7 +36,6 @@ else fi - echo -e "check login user........................................" user=`whoami` if [ $user == "root" ] ; then @@ -36,8 +44,6 @@ else echo -e ${RED_PREFIX}"Warning: The current user is not root "${COLOR_SUFFIX} fi - - echo -e "check docker............................................" docker_running=`systemctl status docker | grep running | grep active | wc -l` diff --git a/scripts/init_pwd.sh b/scripts/init_pwd.sh index a3ce6048a..f33c9b3dc 100755 --- a/scripts/init_pwd.sh +++ b/scripts/init_pwd.sh @@ -14,7 +14,18 @@ # See the License for the specific language governing permissions and # limitations under the License. -source ../.env +#Include shell font styles and some basic information +SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +OPENIM_ROOT=$(dirname "${SCRIPTS_ROOT}")/.. + +#Include shell font styles and some basic information +source $SCRIPTS_ROOT/style_info.sh +source $SCRIPTS_ROOT/path_info.sh +source $SCRIPTS_ROOT/function.sh + +cd $SCRIPTS_ROOT + +source $OPENIM_ROOT/.env # Check if PASSWORD only contains letters and numbers if [[ "$PASSWORD" =~ ^[a-zA-Z0-9]+$ ]] @@ -25,16 +36,18 @@ else exit fi -echo "your user is:$USER" -echo "your password is:$PASSWORD" -echo "your minio endPoint is:$MINIO_ENDPOINT" -echo "your data dir is $DATA_DIR" +echo "" +echo -e "===> ${PURPLE_PREFIX} you user is:$USER ${COLOR_SUFFIX}" +echo -e "===> ${PURPLE_PREFIX} you password is:$PASSWORD ${COLOR_SUFFIX}" +echo -e "===> ${PURPLE_PREFIX} you minio endpoint is:$MINIO_ENDPOINT ${COLOR_SUFFIX}" +echo -e "===> ${PURPLE_PREFIX} you api url is:$API_URL ${COLOR_SUFFIX}" +echo "" # Specify the config file -config_file='../config/config.yaml' +config_file=${OPENIM_ROOT}/config/config.yaml # Load variables from .env file -source ../.env +source ${OPENIM_ROOT}/.env # Replace the password and username field for mysql sed -i "/mysql:/,/database:/ s/password:.*/password: $PASSWORD/" $config_file diff --git a/scripts/install_im_compose.sh b/scripts/install_im_compose.sh new file mode 100755 index 000000000..00191334a --- /dev/null +++ b/scripts/install_im_compose.sh @@ -0,0 +1,122 @@ +# Copyright © 2023 OpenIM. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +#Include shell font styles and some basic information +SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. + +# docker-compose.yaml file name +docker_compose_file_name="docker-compose.yaml" + +trap 'onCtrlC' INT +function onCtrlC () { + #Capture CTRL+C, terminate the background process of the program when the script is terminated in the form of ctrl+c + kill -9 ${do_sth_pid} ${progress_pid} + echo + echo 'Ctrl+C is captured' + exit 1 +} + +do_sth() { + #Main program to run + echo "++++++++++++++++++++++++" + sleep 5 + echo "++++++++++++++++++++++++" + + sleep 10 +} + +#Import environment variables +source .env + +#Get the public IP address of the local machine +internet_ip=$(curl ifconfig.me -s) +echo -e "\033[1;34mCurrent public IP address: ${internet_ip}\033[0m\n" + +#If MINIO_ENDPOINT is "http://127.0.0.1:10005", replace it with the current public IP address +if [[ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]]; then + sed -i "s/127.0.0.1/${internet_ip}/" .env +fi + +do_progress_bar() { + local duration=${1} + local max_progress=20 + local current_progress=0 + + while true; do + ((current_progress++)) + if [[ $current_progress -gt $max_progress ]]; then + break + fi + sleep "$duration" + echo "=====> Progress: [${current_progress}/${max_progress}]" + done +} + +#Start Docker containers +start_docker_containers() { + if command -v docker-compose >/dev/null 2>&1; then + echo -e "\033[1;34mFound docker-compose command, starting docker containers...\033[0m\n" + docker-compose -f ${OPENIM_ROOT}/${docker_compose_file_name} up -d + else + if command -v docker >/dev/null 2>&1; then + echo -e "\033[1;34mFound docker command, starting docker containers...\033[0m\n" + docker compose -f ${OPENIM_ROOT}/${docker_compose_file_name} up -d + else + echo -e "\033[1;31mFailed to find docker-compose or docker command, please make sure they are installed and configured correctly.\033[0m" + return 1 + fi + fi +} + +#Execute scripts +setup_script() { + chmod +x ${SCRIPTS_ROOT}/*.sh + echo -e "\033[1;34m============>Executing init_pwd.sh script...\033[0m\n" + ${SCRIPTS_ROOT}/init_pwd.sh + echo -e "\033[1;34m============>Executing env_check.sh script...\033[0m\n" + ${SCRIPTS_ROOT}/env_check.sh +} + +setup_script & + +#Start Docker containers (timeout 10 seconds) +start_docker_containers + +docker_pid=$! +timeout 10s tail --pid=${docker_pid} -f /dev/null +docker_exit_code=$? + +if [ $docker_exit_code -eq 0 ]; then + echo -e "\033[1;32m============>Docker containers started successfully!\033[0m\n" +else + echo -e "\033[1;31m============>Failed to start Docker containers, please check the environment configuration and dependencies.\033[0m\n" + exit 1 +fi + +echo -e "\033[1;34m============>Executing docker_check_service.sh script...\033[0m\n" + +#View running Docker containers +echo -e "\033[1;34m============>Viewing running Docker containers...\033[0m\n" +echo "" +docker ps + +#Replace the progress bar section with the pv command +echo -e "\033[1;34m============>Starting progress bar...\033[0m\n" +do_progress_bar 0.5 | pv -l -s 20 > /dev/null +echo -e "\033[1;34m============>Progress bar completed.\033[0m\n" + +#Execute the main program +do_sth diff --git a/scripts/install_im_server.sh b/scripts/install_im_server.sh new file mode 100755 index 000000000..33f5f241a --- /dev/null +++ b/scripts/install_im_server.sh @@ -0,0 +1,82 @@ +#!/usr/bin/env bash +# Copyright © 2023 OpenIM. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# Common utilities, variables and checks for all build scripts. +set -o errexit +set -o nounset +set -o pipefail + +#Include shell font styles and some basic information +SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) +OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. + +source $SCRIPTS_ROOT/style_info.sh + +# docker-compose.yaml file name +docker_compose_file_name="docker-compose.yaml" + +trap 'onCtrlC' INT +function onCtrlC () { + #Capture CTRL+C, terminate the background process of the program when the script is terminated in the form of ctrl+c + kill -9 ${do_sth_pid} ${progress_pid} + echo + echo 'Ctrl+C is captured' + exit 1 +} + +# Get the public internet IP address +internet_ip=$(curl ifconfig.me -s) +echo -e "${PURPLE_PREFIX}=========> Your public internet IP address is ${internet_ip} ${COLOR_SUFFIX} \n" + +# Load environment variables from .env file +source ${OPENIM_ROOT}/.env + +echo -e "${PURPLE_PREFIX}=========> Your minio endpoint is ${MINIO_ENDPOINT} ${COLOR_SUFFIX} \n" + +# Change directory to scripts folder + +chmod +x ${SCRIPTS_ROOT}/*.sh + +# Execute necessary scripts +echo -e "${PURPLE_PREFIX}=========> init_pwd.sh ${COLOR_SUFFIX} \n" + +${SCRIPTS_ROOT}/init_pwd.sh + +echo -e "${PURPLE_PREFIX}=========> env_check.sh ${COLOR_SUFFIX} \n" + +${SCRIPTS_ROOT}/env_check.sh + +# Replace local IP address with the public IP address in .env file +if [ $API_URL == "http://127.0.0.1:10002/object/" ]; then + sed -i "s/127.0.0.1/${internet_ip}/" ${OPENIM_ROOT}/.env +fi + +if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then + sed -i "s/127.0.0.1/${internet_ip}/" ${OPENIM_ROOT}/.env +fi + +# Go back to the previous directory +cd ${OPENIM_ROOT} + +# Check if docker-compose command is available +if command -v docker-compose &> /dev/null +then + docker-compose up -d +else + docker compose up -d +fi + +${SCRIPTS_ROOT}/docker_check_service.sh \ No newline at end of file diff --git a/scripts/make-rules/golang.mk b/scripts/make-rules/golang.mk index adefa5085..cf07f0cda 100644 --- a/scripts/make-rules/golang.mk +++ b/scripts/make-rules/golang.mk @@ -131,6 +131,12 @@ go.build.%: $(BIN_DIR)/platforms/$(OS)/$(ARCH)/$(COMMAND)$(GO_OUT_EXT) $(ROOT_DIR)/cmd/$(COMMAND)/main.go; \ fi +## go.install: Install deployment openim +.PHONY: go.install +go.install: + @echo "===========> Installing deployment openim" + @$(ROOT_DIR)/scripts/install_im_server.sh + ## go.multiarch: Build multi-arch binaries .PHONY: go.build.multiarch go.build.multiarch: go.build.verify $(foreach p,$(PLATFORMS),$(addprefix go.build., $(addprefix $(p)., $(BINS)))) diff --git a/scripts/make-rules/image.mk b/scripts/make-rules/image.mk index 31448bf24..1b94e92bc 100644 --- a/scripts/make-rules/image.mk +++ b/scripts/make-rules/image.mk @@ -21,28 +21,12 @@ # https://docs.docker.com/build/building/multi-platform/ # -# PLATFORMS defines the target platforms for the manager image be build to provide support to multiple -# architectures. (i.e. make docker-buildx IMG=myregistry/mypoperator:0.0.1). To use this option you need to: -# - able to use docker buildx . More info: https://docs.docker.com/build/buildx/ -# - have enable BuildKit, More info: https://docs.docker.com/develop/develop-images/build_enhancements/ -# - be able to push the image for your registry (i.e. if you do not inform a valid value via IMG=<myregistry/image:<tag>> then the export will fail) -# To properly provided solutions that supports more than one platform you should use this option. -PLATFORMS ?= linux/arm64,linux/amd64,linux/s390x,linux/ppc64le -.PHONY: docker-buildx -docker-buildx: test ## Build and push docker image for the manager for cross-platform support - # copy existing Dockerfile and insert --platform=${BUILDPLATFORM} into Dockerfile.cross, and preserve the original Dockerfile - sed -e '1 s/\(^FROM\)/FROM --platform=\$$\{BUILDPLATFORM\}/; t' -e ' 1,// s//FROM --platform=\$$\{BUILDPLATFORM\}/' Dockerfile > Dockerfile.cross - - docker buildx create --name project-v3-builder - docker buildx use project-v3-builder - - docker buildx build --push --platform=$(PLATFORMS) --tag ${IMG} -f Dockerfile.cross . - - docker buildx rm project-v3-builder - rm Dockerfile.cross - DOCKER := docker DOCKER_SUPPORTED_API_VERSION ?= 1.32|1.40|1.41 -REGISTRY_PREFIX ?= cubxxw -BASE_IMAGE = centos:centos8 +REGISTRY_PREFIX ?= ghcr.io/OpenIMSDK +IMAGES ?= lvscare +IMAGE_PLAT ?= $(subst $(SPACE),$(COMMA),$(subst _,/,$(PLATFORMS))) EXTRA_ARGS ?= --no-cache _DOCKER_BUILD_EXTRA_ARGS := @@ -60,14 +44,32 @@ IMAGES_DIR ?= $(wildcard ${ROOT_DIR}/build/docker/*) # Determine images names by stripping out the dir names IMAGES ?= $(filter-out tools,$(foreach image,${IMAGES_DIR},$(notdir ${image}))) -# ifeq (${IMAGES},) -# $(error Could not determine IMAGES, set ROOT_DIR or run in source dir) -# endif +ifeq (${IMAGES},) + $(error Could not determine IMAGES, set ROOT_DIR or run in source dir) +endif # ============================================================================== # Image targets # ============================================================================== +# PLATFORMS defines the target platforms for the manager image be build to provide support to multiple +# architectures. (i.e. make docker-buildx IMG=myregistry/mypoperator:0.0.1). To use this option you need to: +# - able to use docker buildx . More info: https://docs.docker.com/build/buildx/ +# - have enable BuildKit, More info: https://docs.docker.com/develop/develop-images/build_enhancements/ +# - be able to push the image for your registry (i.e. if you do not inform a valid value via IMG=<myregistry/image:<tag>> then the export will fail) +# To properly provided solutions that supports more than one platform you should use this option. +## Build and push docker image for the manager for cross-platform support +PLATFORMS ?= linux/arm64,linux/amd64,linux/s390x,linux/ppc64le +# copy existing Dockerfile and insert --platform=${BUILDPLATFORM} into Dockerfile.cross, and preserve the original Dockerfile +.PHONY: docker-buildx +docker-buildx: + sed -e '1 s/\(^FROM\)/FROM --platform=\$$\{BUILDPLATFORM\}/; t' -e ' 1,// s//FROM --platform=\$$\{BUILDPLATFORM\}/' Dockerfile > Dockerfile.cross + - $(CONTAINER_TOOL) buildx create --name project-v3-builder + $(CONTAINER_TOOL) buildx use project-v3-builder + - $(CONTAINER_TOOL) buildx build --push --platform=$(PLATFORMS) --tag ${IMAGES} -f Dockerfile.cross . + - $(CONTAINER_TOOL) buildx rm project-v3-builder + rm Dockerfile.cross + ## image.verify: Verify docker version .PHONY: image.verify image.verify: @@ -93,31 +95,32 @@ image.daemon.verify: # More info: https://docs.docker.com/develop/develop-images/build_enhancements/ ## image.build: Build docker images .PHONY: image.build -image.build: image.verify go.build.verify $(addprefix image.build., $(addprefix $(IMAGE_PLAT)., $(IMAGES))) +image.build: image.verify $(addprefix image.build., $(addprefix $(PLATFORM)., $(IMAGES))) -## image.build.multiarch: Build docker images for all platforms .PHONY: image.build.multiarch -image.build.multiarch: image.verify go.build.verify $(foreach p,$(PLATFORMS),$(addprefix image.build., $(addprefix $(p)., $(IMAGES)))) +image.build.multiarch: image.verify $(foreach p,$(PLATFORMS),$(addprefix image.build., $(addprefix $(p)., $(IMAGES)))) ## image.build.%: Build docker image for a specific platform .PHONY: image.build.% -image.build.%: go.build.% +image.build.%: go.bin.% $(eval IMAGE := $(COMMAND)) $(eval IMAGE_PLAT := $(subst _,/,$(PLATFORM))) - @echo "===========> Building docker image $(IMAGE) $(VERSION) for $(IMAGE_PLAT)" - @mkdir -p $(TMP_DIR)/$(IMAGE) - @cat $(ROOT_DIR)/build/docker/$(IMAGE)/Dockerfile\ - | sed "s#BASE_IMAGE#$(BASE_IMAGE)#g" >$(TMP_DIR)/$(IMAGE)/Dockerfile - @cp $(OUTPUT_DIR)/platforms/$(IMAGE_PLAT)/$(IMAGE) $(TMP_DIR)/$(IMAGE)/ - @DST_DIR=$(TMP_DIR)/$(IMAGE) $(ROOT_DIR)/build/docker/$(IMAGE)/build.sh 2>/dev/null || true - $(eval BUILD_SUFFIX := $(_DOCKER_BUILD_EXTRA_ARGS) --pull -t $(REGISTRY_PREFIX)/$(IMAGE)-$(ARCH):$(VERSION) $(TMP_DIR)/$(IMAGE)) - @if [ $(shell $(GO) env GOARCH) != $(ARCH) ] ; then \ - $(MAKE) image.daemon.verify ;\ - $(DOCKER) build --platform $(IMAGE_PLAT) $(BUILD_SUFFIX) ; \ + $(eval ARCH := $(word 2,$(subst _, ,$(PLATFORM)))) + @echo "===========> Building LOCAL docker image $(IMAGE) $(VERSION) for $(IMAGE_PLAT)" + @mkdir -p $(TMP_DIR)/$(IMAGE)/$(PLATFORM) + @cat $(ROOT_DIR)/docker/$(IMAGE)/Dockerfile\ + >$(TMP_DIR)/$(IMAGE)/Dockerfile + @cp $(BIN_DIR)/$(PLATFORM)/$(IMAGE) $(TMP_DIR)/$(IMAGE)/$(PLATFORM) + + $(eval BUILD_SUFFIX := --load --pull -t $(REGISTRY_PREFIX)/$(IMAGE):$(VERSION) $(TMP_DIR)/$(IMAGE)) + $(eval BUILD_SUFFIX_ARM := --load --pull -t $(REGISTRY_PREFIX)/$(IMAGE).$(ARCH):$(VERSION) $(TMP_DIR)/$(IMAGE)) + @if [ "$(ARCH)" == "amd64" ]; then \ + echo "===========> Creating LOCAL docker image tag $(REGISTRY_PREFIX)/$(IMAGE):$(VERSION) for $(ARCH)"; \ + $(DOCKER) buildx build --platform $(IMAGE_PLAT) $(BUILD_SUFFIX); \ else \ - $(DOCKER) build $(BUILD_SUFFIX) ; \ + echo "===========> Creating LOCAL docker image tag $(REGISTRY_PREFIX)/$(IMAGE).$(ARCH):$(VERSION) for $(ARCH)"; \ + $(DOCKER) buildx build --platform $(IMAGE_PLAT) $(BUILD_SUFFIX_ARM); \ fi - @rm -rf $(TMP_DIR)/$(IMAGE) # https://docs.docker.com/build/building/multi-platform/ # busybox image supports amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, ppc64le, and s390x diff --git a/scripts/make-rules/tools.mk b/scripts/make-rules/tools.mk index e268cb264..7fe7305fb 100644 --- a/scripts/make-rules/tools.mk +++ b/scripts/make-rules/tools.mk @@ -130,6 +130,11 @@ install.gsemver: install.git-chglog: @$(GO) install github.com/git-chglog/git-chglog/cmd/git-chglog@latest +## install.ko: Install ko, used to build go program into container images +.PHONY: install.ko +install.ko: + @$(GO) install github.com/google/ko@latest + ## install.github-release: Install github-release, used to create github release .PHONY: install.github-release install.github-release: @@ -149,6 +154,11 @@ install.coscli: install.coscmd: @if which pip &>/dev/null; then pip install coscmd; else pip3 install coscmd; fi +## install.minio: Install minio, used to upload files to minio +.PHONY: install.minio +install.minio: + @$(GO) install github.com/minio/minio@latest + ## install.delve: Install delve, used to debug go program .PHONY: install.delve install.delve: diff --git a/scripts/push_start.sh b/scripts/push_start.sh index 79d877c79..74b9aedc9 100755 --- a/scripts/push_start.sh +++ b/scripts/push_start.sh @@ -13,6 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +# Common utilities, variables and checks for all build scripts. + #Include shell font styles and some basic information SCRIPTS_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) OPENIM_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. diff --git a/test/common.sh b/test/common.sh index f1f641af1..904608894 100644 --- a/test/common.sh +++ b/test/common.sh @@ -1 +1,15 @@ #!/usr/bin/env bash +# Copyright © 2023 OpenIM. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + From ad9137931b8b9787fc9896ab3afee6b89f7ab2a8 Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Fri, 21 Jul 2023 22:37:54 +0800 Subject: [PATCH 32/46] fix: Compatible with wasm s3 oss header Date (#630) * fix: optimize minio initialization * test date * test date * test date * test date --- pkg/common/db/s3/oss/oss.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/common/db/s3/oss/oss.go b/pkg/common/db/s3/oss/oss.go index f689836c6..774150389 100644 --- a/pkg/common/db/s3/oss/oss.go +++ b/pkg/common/db/s3/oss/oss.go @@ -146,14 +146,17 @@ func (o *OSS) AuthSign(ctx context.Context, uploadID string, name string, expire if o.credentials.GetSecurityToken() != "" { request.Header.Set(oss.HTTPHeaderOssSecurityToken, o.credentials.GetSecurityToken()) } + now := time.Now().UTC().Format(http.TimeFormat) request.Header.Set(oss.HTTPHeaderHost, request.Host) - request.Header.Set(oss.HTTPHeaderDate, time.Now().UTC().Format(http.TimeFormat)) + request.Header.Set(oss.HTTPHeaderDate, now) + request.Header.Set(oss.HttpHeaderOssDate, now) authorization := fmt.Sprintf( `OSS %s:%s`, o.credentials.GetAccessKeyID(), o.getSignedStr(request, fmt.Sprintf(`/%s/%s?partNumber=%d&uploadId=%s`, o.bucket.BucketName, name, partNumber, uploadID), o.credentials.GetAccessKeySecret()), ) request.Header.Set(oss.HTTPHeaderAuthorization, authorization) + delete(request.Header, oss.HTTPHeaderDate) result.Parts[i] = s3.SignPart{ PartNumber: partNumber, Query: url.Values{"partNumber": {strconv.Itoa(partNumber)}}, @@ -275,5 +278,5 @@ func (o *OSS) AccessURL(ctx context.Context, name string, expire time.Duration, } else if expire < time.Second { expire = time.Second } - return o.bucket.SignURL(name, http.MethodGet, int64(expire/time.Second)) + return o.bucket.SignURL(name, http.MethodGet, int64(expire/time.Second), opts...) } From 5a7084a8ab5abd29ba78bf6c27c03b3bf0b22f60 Mon Sep 17 00:00:00 2001 From: WangchuXiao <wangchuxiao97@outlook.com> Date: Sat, 22 Jul 2023 13:38:36 +0800 Subject: [PATCH 33/46] fix bug: grpc options duplicated when send msg (#628) * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * new feature: add batch send msg * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * fix bug: multiple gateway kick user * MsgDestructTime * fix bug: msg destruct sql * fix bug: msg destruct * fix bug: msg destruct * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * fix bug: msg destruct sql * debug: print stack * debug: print stack * debug: print stack * fix bug: msg destruct sql Signed-off-by: wangchuxiao <wangchuxiao97@outlook.com> * fix bug: msg notification self 2 self push twice * fix bug: heartbeat get self notification * fix bug: init grpc conn in one process * fix bug: grpc conn Signed-off-by: wangchuxiao <wangchuxiao97@outlook.com> * fix bug: zk client recreate node when reconn * fix bug: set friend mark args error * fix bug: rpc client intercepter called twice Signed-off-by: wangchuxiao <wangchuxiao97@outlook.com> --------- Signed-off-by: wangchuxiao <wangchuxiao97@outlook.com> --- pkg/discoveryregistry/zookeeper/discover.go | 1 - 1 file changed, 1 deletion(-) diff --git a/pkg/discoveryregistry/zookeeper/discover.go b/pkg/discoveryregistry/zookeeper/discover.go index f83331943..94cf1f84a 100644 --- a/pkg/discoveryregistry/zookeeper/discover.go +++ b/pkg/discoveryregistry/zookeeper/discover.go @@ -97,7 +97,6 @@ func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error) { s.logger.Printf("get conns from client, serviceName: %s", serviceName) - opts = append(s.options, opts...) s.lock.Lock() defer s.lock.Unlock() conns := s.localConns[serviceName] From edd6a86d121b06a2b10554e2843655f393812b8f Mon Sep 17 00:00:00 2001 From: BanTanger <88583317+BanTanger@users.noreply.github.com> Date: Sat, 22 Jul 2023 13:40:20 +0800 Subject: [PATCH 34/46] fix bug: obtain user online status err(#567) (#592) * fix: implement of GetUsersOnlineStatus (#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) * fix bug: obtain user online status err(#567) --- internal/api/user.go | 8 +++++++- internal/msggateway/hub_server.go | 6 +++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/internal/api/user.go b/internal/api/user.go index baea8fed3..67c042ea4 100644 --- a/internal/api/user.go +++ b/internal/api/user.go @@ -84,7 +84,13 @@ func (u *UserApi) GetUsersOnlineStatus(c *gin.Context) { reply, err := msgClient.GetUsersOnlineStatus(c, &req) if err != nil { log.ZWarn(c, "GetUsersOnlineStatus rpc err", err) - continue + + parseError := apiresp.ParseError(err) + log.ZDebug(c, "errcode bantanger", "errcode", parseError.ErrCode) + if parseError.ErrCode == errs.NoPermissionError { + apiresp.GinError(c, err) + return + } } else { wsResult = append(wsResult, reply.SuccessResult...) } diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index 6d852515c..deb8c3d77 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -16,8 +16,9 @@ package msggateway import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" + "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "google.golang.org/grpc" @@ -82,6 +83,9 @@ func (s *Server) GetUsersOnlineStatus( ctx context.Context, req *msggateway.GetUsersOnlineStatusReq, ) (*msggateway.GetUsersOnlineStatusResp, error) { + if !tokenverify.IsAppManagerUid(ctx) { + return nil, errs.ErrNoPermission.Wrap("only app manager") + } var resp msggateway.GetUsersOnlineStatusResp for _, userID := range req.UserIDs { clients, ok := s.LongConnServer.GetUserAllCons(userID) From f3bb890a87b42c715c0cf63e3325ca782488bb6b Mon Sep 17 00:00:00 2001 From: EthanForAi <128460220+EthanForAi@users.noreply.github.com> Date: Sat, 22 Jul 2023 21:04:01 +0800 Subject: [PATCH 35/46] docs: fix lint update CONTRIBUTING.md (#632) --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 24793b187..85f92bb36 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -130,7 +130,7 @@ To propose PR for the Open-IM-Server item, we assume you have registered a GitHu ```bash ❯ git rebase upstream/main - ❯ make link # golangci-lint run -c .golangci.yml + ❯ make lint # golangci-lint run -c .golangci.yml ❯ git add -A # add changes to staging ❯ git commit -a -s -m "message for your changes" # -s adds a Signed-off-by trailer ``` From 73b8f5dc4e53dec15b6fe6f8d82371b2c82282cf Mon Sep 17 00:00:00 2001 From: OpenIM Bot <124379614+kubbot@users.noreply.github.com> Date: Sat, 22 Jul 2023 21:21:45 +0800 Subject: [PATCH 36/46] Update cla.yml (#634) --- .github/workflows/cla.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml index b8129e76f..6bc295d43 100644 --- a/.github/workflows/cla.yml +++ b/.github/workflows/cla.yml @@ -18,8 +18,8 @@ env: REMOTE_REPOSITORY: cla OPEN_IM_SERVER_CLA_DOCUMENT: https://github.com/openim-sigs/cla/blob/main/README.md - OPEN_IM_SERVER_SIGNATURES_PATH: signatures/openkf/cla.json - OPEN_IM_SERVER_ALLOWLIST: kubbot,bot* + OPEN_IM_SERVER_SIGNATURES_PATH: signatures/openim-server/cla.json + OPEN_IM_SERVER_ALLOWLIST: kubbot,bot* OPEN_IM_SERVER_REMOTE_ORGANIZATION: openim-sigs jobs: @@ -42,7 +42,7 @@ jobs: remote-repository-name: ${{ env.REMOTE_REPOSITORY }} create-file-commit-message: '📚 Docs: Creating file for storing ${{ env.REMOTE_ORGANIZATION }} CLA Signatures' custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md)' - custom-pr-sign-comment: 'The signature to be committed in order to sign the CLA' + custom-pr-sign-comment: 'I have read the CLA Document and I hereby sign the CLA' custom-allsigned-prcomment: '🤖 All Contributors have signed the ${{ env.REMOTE_ORGANIZATION }} [CLA](https://github.com/openim-sigs/cla/blob/main/README.md).' # lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true) # use-dco-flag: true - If you are using DCO instead of CLA From 36e202531bc2905fe1c30176bdffc30be9cead33 Mon Sep 17 00:00:00 2001 From: OpenIM Bot <124379614+kubbot@users.noreply.github.com> Date: Sun, 23 Jul 2023 12:59:06 +0800 Subject: [PATCH 37/46] Update and rename golangci-link.yml to golangci-lint.yml (#637) --- .github/workflows/{golangci-link.yml => golangci-lint.yml} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename .github/workflows/{golangci-link.yml => golangci-lint.yml} (95%) diff --git a/.github/workflows/golangci-link.yml b/.github/workflows/golangci-lint.yml similarity index 95% rename from .github/workflows/golangci-link.yml rename to .github/workflows/golangci-lint.yml index c740afff7..adf33d8d4 100644 --- a/.github/workflows/golangci-link.yml +++ b/.github/workflows/golangci-lint.yml @@ -17,8 +17,8 @@ name: OpenIM golangci-lint on: push: branches: [main] -# pull_request: -# branches: [main] + pull_request: + branches: [main] jobs: golangci: name: lint @@ -48,4 +48,4 @@ jobs: # only-new-issues: true # Optional:The mode to install golangci-lint. It can be 'binary' or 'goinstall'. - install-mode: "goinstall" \ No newline at end of file + install-mode: "goinstall" From 9db61becffcd748e88f70c4785f60dfaeda1dc52 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <86140903+cubxxw@users.noreply.github.com> Date: Sun, 23 Jul 2023 18:47:42 +0800 Subject: [PATCH 38/46] fix: actions milestones auto (#638) * fix: actions milestones auto Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * fix: actions milestones auto Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/workflows/auto-assign-issue.yml | 25 ++++++++++++++++++++++++ .github/workflows/help-comment-issue.yml | 2 +- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/auto-assign-issue.yml diff --git a/.github/workflows/auto-assign-issue.yml b/.github/workflows/auto-assign-issue.yml new file mode 100644 index 000000000..66b30c219 --- /dev/null +++ b/.github/workflows/auto-assign-issue.yml @@ -0,0 +1,25 @@ +name: Assign issue to comment author +on: + issue_comment: + types: [created] + +jobs: + assign-issue: + if: contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') + runs-on: ubuntu-latest + permissions: + issues: write + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Assign the issue + run: | + gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" + gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" + gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }}, this issue has been assigned to you. We are looking forward to your PR!" + env: + GH_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} + ISSUE: ${{ github.event.issue.html_url }} + OWNER: ${{ github.repository_owner }} + REPO: ${{ github.event.repository.name }} \ No newline at end of file diff --git a/.github/workflows/help-comment-issue.yml b/.github/workflows/help-comment-issue.yml index b1414d7c2..5f52e638f 100644 --- a/.github/workflows/help-comment-issue.yml +++ b/.github/workflows/help-comment-issue.yml @@ -18,4 +18,4 @@ jobs: body: | This issue is available for anyone to work on. **Make sure to reference this issue in your pull request.** :sparkles: Thank you for your contribution! :sparkles: [Join slack 🤖](https://join.slack.com/t/openimsdk/shared_invite/zt-1tmoj26uf-_FDy3dowVHBiGvLk9e5Xkg) to connect and communicate with our developers. - If you wish to accept this assignment, please leave a comment in the comments section: `/accept`.🎯 + If you wish to accept this assignment, please leave a comment in the comments section: `/accept`.🎯 \ No newline at end of file From 00b4483065fe32ab1ee4ea1d86e13531af468fd3 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <3293172751@qq.com> Date: Mon, 24 Jul 2023 10:54:42 +0800 Subject: [PATCH 39/46] fix: actions milestones auto (#640) * fix: actions milestones auto Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add org server secret Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/sync.yml | 18 ++++++++++++- .github/workflows/auto-assign-issue.yml | 9 ++++--- .github/workflows/auto-release.yml | 36 ++++++++++++------------- .github/workflows/cla.yml | 14 +++++----- .github/workflows/project-progress.yml | 2 +- 5 files changed, 48 insertions(+), 31 deletions(-) diff --git a/.github/sync.yml b/.github/sync.yml index fdc003a0f..03454c165 100644 --- a/.github/sync.yml +++ b/.github/sync.yml @@ -67,6 +67,10 @@ group: - repos: | OpenIMSDK/OpenKF@main OpenIMSDK/openim-miniprogram-demo@main + OpenIMSDK/docs + OpenIMSDK/chat + OpenIMSDK/community + OpenIMSDK/openim-charts OpenIMSDK/openim-sdk-cpp@main files: - source: LICENSE @@ -80,13 +84,25 @@ group: replace: false - source: .github/workflows/project-progress.yml dest: .github/workflows/project-progress.yml - replace: false + replace: false - source: .github/workflows/help-comment-issue.yml dest: .github/workflows/help-comment-issue.yml replace: false - source: .github/.codecov.yml dest: .github/.codecov.yml replace: false + - source: .github/workflows/cla.yml + dest: .github/workflows/cla.yml + replace: false + - source: .github/workflows/ + dest: .github/workflows/ + replace: false + - source: .github/workflows/auto-assign-issue.yml + dest: .github/workflows/auto-assign-issue.yml + replace: false + - source: .github/workflows/release.yml + dest: .github/workflows/release.yml + replace: false - source: ./scripts/githooks/ dest: ./scripts/githooks/ replace: true \ No newline at end of file diff --git a/.github/workflows/auto-assign-issue.yml b/.github/workflows/auto-assign-issue.yml index 66b30c219..7afebe028 100644 --- a/.github/workflows/auto-assign-issue.yml +++ b/.github/workflows/auto-assign-issue.yml @@ -2,7 +2,6 @@ name: Assign issue to comment author on: issue_comment: types: [created] - jobs: assign-issue: if: contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') @@ -11,15 +10,17 @@ jobs: issues: write steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Assign the issue run: | + export LETASE_MILESTONES=$(curl "https://api.github.com/repos/$OWNER/$REPO/milestones" | jq -r 'last(.[]).title') gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" - gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }}, this issue has been assigned to you. We are looking forward to your PR!" + gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" + gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. <br>I set the milestones for this issue to $LETASE_MILESTONES, we are looking forward to your PR!" env: - GH_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} + GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} ISSUE: ${{ github.event.issue.html_url }} OWNER: ${{ github.repository_owner }} REPO: ${{ github.event.repository.name }} \ No newline at end of file diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml index 15a77da9f..385a50c23 100644 --- a/.github/workflows/auto-release.yml +++ b/.github/workflows/auto-release.yml @@ -1,26 +1,26 @@ -name: Automatic Rebase +name: Assign issue to comment author on: issue_comment: types: [created] jobs: - rebase: - name: Rebase + assign-issue: + if: contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') runs-on: ubuntu-latest - if: >- - github.event.issue.pull_request != '' && - ( - contains(github.event.comment.body, '/rebase') || - contains(github.event.comment.body, '/autosquash') - ) + permissions: + issues: write steps: - - name: Checkout the latest code + - name: Checkout code uses: actions/checkout@v3 - with: - token: ${{ secrets.BOT_GITHUB_TOKEN }} - fetch-depth: 0 # otherwise, you will fail to push refs to dest repo - - name: Automatic Rebase - uses: cirrus-actions/rebase@1.8 - with: - autosquash: ${{ contains(github.event.comment.body, '/autosquash') || contains(github.event.comment.body, '/rebase-autosquash') }} + + - name: Assign the issue + run: | + export LETASE_MILESTONES=$(curl 'https://api.github.com/repos/kubecub/github-label-syncer/milestones' | jq -r 'last(.[]).title') + gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" + gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" + gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" + gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. I set the milestones for this issue to $LETASE_MILESTONES, We are looking forward to your PR!" env: - GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file + GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} + ISSUE: ${{ github.event.issue.html_url }} + OWNER: ${{ github.repository_owner }} + REPO: ${{ github.event.repository.name }} \ No newline at end of file diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml index 6bc295d43..65497a106 100644 --- a/.github/workflows/cla.yml +++ b/.github/workflows/cla.yml @@ -14,13 +14,12 @@ permissions: env: # Define Open-IM-Server variables here - REMOTE_ORGANIZATION: open-im-server + OPEN_IM_SERVER_REMOTE_ORGANIZATION: openim-sigs REMOTE_REPOSITORY: cla - OPEN_IM_SERVER_CLA_DOCUMENT: https://github.com/openim-sigs/cla/blob/main/README.md - OPEN_IM_SERVER_SIGNATURES_PATH: signatures/openim-server/cla.json + OPEN_IM_SERVER_SIGNATURES_PATH: signatures/${{ github.event.repository.name }}/cla.json + OPEN_IM_SERVER_ALLOWLIST: kubbot,bot* - OPEN_IM_SERVER_REMOTE_ORGANIZATION: openim-sigs jobs: CLAAssistant: @@ -40,9 +39,10 @@ jobs: remote-organization-name: ${{ env.OPEN_IM_SERVER_REMOTE_ORGANIZATION }} remote-repository-name: ${{ env.REMOTE_REPOSITORY }} - create-file-commit-message: '📚 Docs: Creating file for storing ${{ env.REMOTE_ORGANIZATION }} CLA Signatures' - custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md)' + + create-file-commit-message: '📚 Docs: Creating file for storing ${{ github.event.repository.name }} CLA Signatures' + custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md) <br> ' custom-pr-sign-comment: 'I have read the CLA Document and I hereby sign the CLA' - custom-allsigned-prcomment: '🤖 All Contributors have signed the ${{ env.REMOTE_ORGANIZATION }} [CLA](https://github.com/openim-sigs/cla/blob/main/README.md).' + custom-allsigned-prcomment: '🤖 All Contributors have signed the [${{ github.event.repository.name }} CLA](https://github.com/openim-sigs/cla/blob/main/README.md).<br> The signed information is recorded [🤖here](https://github.com/openim-sigs/cla/tree/main/signatures/${{ env.OPEN_IM_SERVER_ALLOWLIST }}/cla.json)' # lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true) # use-dco-flag: true - If you are using DCO instead of CLA diff --git a/.github/workflows/project-progress.yml b/.github/workflows/project-progress.yml index 12e8615f4..d0cc10604 100644 --- a/.github/workflows/project-progress.yml +++ b/.github/workflows/project-progress.yml @@ -31,6 +31,6 @@ jobs: steps: - uses: alex-page/github-project-automation-plus@v0.8.3 with: - project: OpenIM 2023 Sprint 🔥 + project: OpenIM-V3.1 column: In Progress repo-token: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file From 9ef94ad46b3fd90201f445bf0e3b33135d97cc7e Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Mon, 24 Jul 2023 18:07:31 +0800 Subject: [PATCH 40/46] fix: StringValue When there are double quotes in the string value, serialization and deserialization fail (#646) Signed-off-by: withchao <993506633@qq.com> --- pkg/proto/wrapperspb/wrapperspb.go | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkg/proto/wrapperspb/wrapperspb.go b/pkg/proto/wrapperspb/wrapperspb.go index 7579c64f0..b7d4b0c31 100644 --- a/pkg/proto/wrapperspb/wrapperspb.go +++ b/pkg/proto/wrapperspb/wrapperspb.go @@ -16,6 +16,7 @@ package wrapperspb import ( "encoding/base64" + "encoding/json" "errors" "strconv" ) @@ -211,15 +212,11 @@ func (m *BoolValue) MarshalJSON() ([]byte, error) { } func (m *StringValue) UnmarshalJSON(p []byte) error { - if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' { - return errors.New("invalid string value") - } - m.Value = string(p[1 : len(p)-1]) - return nil + return json.Unmarshal(p, &m.Value) } func (m *StringValue) MarshalJSON() ([]byte, error) { - return []byte(`"` + m.Value + `"`), nil + return json.Marshal(m.Value) } func (m *BytesValue) UnmarshalJSON(p []byte) error { From f9406108aa7715d8caecdadf7512d6fdfae29bd4 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <3293172751@qq.com> Date: Mon, 24 Jul 2023 21:06:16 +0800 Subject: [PATCH 41/46] fix: actions milestones auto (#642) * fix: actions milestones auto Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add org server secret Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: fix scripts Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add file: Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add file: Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add file: Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/sync.yml | 3 - .github/workflows/auto-gh-pr.yml | 57 ++++++++++++++ .github/workflows/auto-release.yml | 2 +- .github/workflows/check-coverage.yml | 78 +++++++++---------- .github/workflows/cla.yml | 4 +- .github/workflows/e2e-test.yml | 2 +- .github/workflows/openimci.yml | 8 ++ .github/workflows/project-progress.yml | 2 +- .github/workflows/pull-request.yml | 39 ++++++++++ .golangci.yml | 1 + docs/CODEOWNERS | 42 +++++----- internal/api/msg.go | 1 - internal/msggateway/hub_server.go | 1 + .../push/offlinepush/offlinepush_interface.go | 6 +- internal/rpc/msg/send.go | 1 + scripts/build.cmd | 23 +++--- scripts/githooks/commit-msg | 2 +- scripts/githooks/pre-commit | 2 +- scripts/start_all.sh | 2 +- 19 files changed, 190 insertions(+), 86 deletions(-) create mode 100644 .github/workflows/auto-gh-pr.yml create mode 100644 .github/workflows/pull-request.yml diff --git a/.github/sync.yml b/.github/sync.yml index 03454c165..4e9f9d17e 100644 --- a/.github/sync.yml +++ b/.github/sync.yml @@ -94,9 +94,6 @@ group: - source: .github/workflows/cla.yml dest: .github/workflows/cla.yml replace: false - - source: .github/workflows/ - dest: .github/workflows/ - replace: false - source: .github/workflows/auto-assign-issue.yml dest: .github/workflows/auto-assign-issue.yml replace: false diff --git a/.github/workflows/auto-gh-pr.yml b/.github/workflows/auto-gh-pr.yml new file mode 100644 index 000000000..efa77ee29 --- /dev/null +++ b/.github/workflows/auto-gh-pr.yml @@ -0,0 +1,57 @@ +name: Auto PR to release + +on: + pull_request: + # types: + # - closed + +env: + GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} + ISSUE: ${{ github.event.issue.html_url }} + OWNER: ${{ github.repository_owner }} + REPO: ${{ github.event.repository.name }} + +jobs: + create-pr: + runs-on: ubuntu-latest + if: github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'main' + steps: + - name: Check out code + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Setup GitHub CLI + run: | + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 + sudo apt-add-repository https://cli.github.com/packages + sudo apt-get update + sudo apt-get install gh + continue-on-error: true + + - name: Configure GitHub CLI + run: | + git config --global user.email "3293172751ysy@gmail.com" + git config --global user.name "kubbot" + echo "${{ secrets.BOT_GITHUB_TOKEN }}" | gh auth login --with-token + - name: Create PR to release branch + run: | + ISSUEID=$(gh pr view 642 --repo $OWNER/$REPO | grep -oP 'Fixes #\K\d+') + echo "===========> $ISSUEID" + ISSUE=$(gh issue view $ISSUEID --repo $OWNER/$REPO --json labels,assignees,milestone,title) + echo "===========> $ISSUE" + + LABELS=$(echo $ISSUE | jq -r '.labels[] | select(.name) | .name' | jq -R -r -s -c 'split("\n")[:-1] | join(",")') + ASSIGNEES=$(echo $ISSUE | jq -r '.assignees[] | select(.login) | .login' | jq -R -s -c 'split("\n")[:-1] | join(",")') + MILESTONE=$(echo $ISSUE | jq -r '.milestone | select(.title) | .title') + TITLE=$(echo $ISSUE | jq -r '.title') + + echo $ISSUE | jq + + gh pr edit ${{ github.event.pull_request.number }} --repo $OWNER/$REPO --add-label "$LABELS" --add-assignee "$ASSIGNEES" --milestone "$MILESTONE" + + git checkout -b bot/merge-to-release-$ISSUEID + git push origin bot/merge-to-release-$ISSUEID + gh pr create --base release --head bot/merge-to-release-$ISSUEID --title "Merge main to release" --body "" + + # gh pr create --base main --head feat/auto-release-pr-624 --title "The bug is fixed" --body "$x" --repo OpenIMSDK/Open-IM-Server --reviewer "cubxxw" \ No newline at end of file diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml index 385a50c23..12234a1ec 100644 --- a/.github/workflows/auto-release.yml +++ b/.github/workflows/auto-release.yml @@ -14,7 +14,7 @@ jobs: - name: Assign the issue run: | - export LETASE_MILESTONES=$(curl 'https://api.github.com/repos/kubecub/github-label-syncer/milestones' | jq -r 'last(.[]).title') + export LETASE_MILESTONES=$(curl 'https://api.github.com/repos/$OWNER/$PEPO/milestones' | jq -r 'last(.[]).title') gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" diff --git a/.github/workflows/check-coverage.yml b/.github/workflows/check-coverage.yml index 21c383076..cc596a0e0 100644 --- a/.github/workflows/check-coverage.yml +++ b/.github/workflows/check-coverage.yml @@ -1,45 +1,45 @@ -# name: Check-Coverage +name: Check-Coverage -# on: -# workflow_dispatch: -# push: -# branches: [ "main" ] -# paths-ignore: -# - "docs/**" -# - "**/*.md" -# - "**/*.yaml" -# - "CONTRIBUTORS" -# - "CHANGELOG/**" -# pull_request: -# branches: [ "*" ] -# paths-ignore: -# - "docs/**" -# - "**/*.md" -# - "**/*.yaml" -# - "CONTRIBUTORS" -# - "CHANGELOG/**" -# env: -# # Common versions -# GO_VERSION: "1.20" +on: + workflow_dispatch: + push: + branches: [ "main" ] + paths-ignore: + - "docs/**" + - "**/*.md" + - "**/*.yaml" + - "CONTRIBUTORS" + - "CHANGELOG/**" + pull_request: + branches: [ "*" ] + paths-ignore: + - "docs/**" + - "**/*.md" + - "**/*.yaml" + - "CONTRIBUTORS" + - "CHANGELOG/**" +env: + # Common versions + GO_VERSION: "1.20" -# jobs: -# coverage: -# runs-on: ubuntu-20.04 -# steps: -# - name: Checkout -# uses: actions/checkout@v3 +jobs: + coverage: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 -# - name: Setup Golang with cache -# uses: magnetikonline/action-golang-cache@v3 -# with: -# go-version: ${{ env.GO_VERSION }} -# token: ${{ secrets.BOT_GITHUB_TOKEN }} + - name: Setup Golang with cache + uses: magnetikonline/action-golang-cache@v3 + with: + go-version: ${{ env.GO_VERSION }} -# - name: Install Dependencies -# run: sudo apt update && sudo apt install -y libgpgme-dev libbtrfs-dev libdevmapper-dev + - name: Install Dependencies + run: sudo apt update && sudo apt install -y libgpgme-dev libbtrfs-dev libdevmapper-dev -# - name: Run Cover -# run: make cover + - name: Run Cover + run: make cover + continue-on-error: true -# - name: Upload Coverage to Codecov -# uses: codecov/codecov-action@v3 + - name: Upload Coverage to Codecov + uses: codecov/codecov-action@v3 diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml index 65497a106..603a49399 100644 --- a/.github/workflows/cla.yml +++ b/.github/workflows/cla.yml @@ -41,8 +41,8 @@ jobs: remote-repository-name: ${{ env.REMOTE_REPOSITORY }} create-file-commit-message: '📚 Docs: Creating file for storing ${{ github.event.repository.name }} CLA Signatures' - custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md) <br> ' + custom-notsigned-prcomment: '💕 Thank you for your contribution and please kindly read and sign our [🎯https://github.com/openim-sigs/cla/blob/main/README.md](https://github.com/openim-sigs/cla/blob/main/README.md). <br> If you wish to sign the CRA, **Please copy and comment on the following sentence:**' custom-pr-sign-comment: 'I have read the CLA Document and I hereby sign the CLA' - custom-allsigned-prcomment: '🤖 All Contributors have signed the [${{ github.event.repository.name }} CLA](https://github.com/openim-sigs/cla/blob/main/README.md).<br> The signed information is recorded [🤖here](https://github.com/openim-sigs/cla/tree/main/signatures/${{ env.OPEN_IM_SERVER_ALLOWLIST }}/cla.json)' + custom-allsigned-prcomment: '🤖 All Contributors have signed the [${{ github.event.repository.name }} CLA](https://github.com/openim-sigs/cla/blob/main/README.md).<br> The signed information is recorded [🤖here](https://github.com/openim-sigs/cla/tree/main/signatures/${{ github.event.repository.name }}/cla.json)' # lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true) # use-dco-flag: true - If you are using DCO instead of CLA diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6b9f79d51..a3451d6aa 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -1,2 +1,2 @@ +# name: OpenIM e2e Test -# name: OpenIM e2e Test \ No newline at end of file diff --git a/.github/workflows/openimci.yml b/.github/workflows/openimci.yml index e0546515e..cd055b5b7 100644 --- a/.github/workflows/openimci.yml +++ b/.github/workflows/openimci.yml @@ -90,11 +90,19 @@ jobs: echo "Run unit test and get test coverage successfully" continue-on-error: true + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + with: + languages: go + - name: Build source code for host platform run: | sudo make build echo "Build source code for host platform successfully" + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 + - name: OpenIM verify copyright run: | sudo make verify-copyright diff --git a/.github/workflows/project-progress.yml b/.github/workflows/project-progress.yml index d0cc10604..247404aa0 100644 --- a/.github/workflows/project-progress.yml +++ b/.github/workflows/project-progress.yml @@ -33,4 +33,4 @@ jobs: with: project: OpenIM-V3.1 column: In Progress - repo-token: ${{ secrets.BOT_GITHUB_TOKEN }} \ No newline at end of file + repo-token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml new file mode 100644 index 000000000..726d57e14 --- /dev/null +++ b/.github/workflows/pull-request.yml @@ -0,0 +1,39 @@ +name: Github Pull Request +on: + push: + branches: [main] + paths-ignore: + - 'README.md' + - 'CONTRIBUTING.md' + + - 'docs/**' + pull_request: + branches: [main] + paths-ignore: + - 'README.md' + - 'CONTRIBUTING.md' + - 'docs/**' + +permissions: + pull-requests: write + contents: write + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + - name: Create Pull Request + uses: peter-evans/create-pull-request@v5 + with: + token: ${{ secrets.BOT_GITHUB_TOKEN }} + commit-message: 'build: update distribution' + title: 'build: update distribution' + body: | + - Updates the distribution for changes on `main` + + Auto-generated by [create-pull-request][1] + + [1]: https://github.com/OpenIMSDK/Open-IM-Sever + branch: 'bot/update-distribution' \ No newline at end of file diff --git a/.golangci.yml b/.golangci.yml index ef7c1f811..296bd0dc0 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -58,6 +58,7 @@ run: skip-files: - ".*\\.my\\.go$" - _test.go + - ".*\\.pb\\.go" # by default isn't set. If set we pass it to "go list -mod={option}". From "go help modules": # If invoked with -mod=readonly, the go command is disallowed from the implicit diff --git a/docs/CODEOWNERS b/docs/CODEOWNERS index 3cfc940e3..a05a1866b 100644 --- a/docs/CODEOWNERS +++ b/docs/CODEOWNERS @@ -2,28 +2,28 @@ # Each line is a file pattern followed by one or more owners. # README files -README.md @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +README.md @openimsdk/openim @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # Contributing guidelines -CONTRIBUTING.md @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +CONTRIBUTING.md @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # License files -LICENSE @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +LICENSE @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # Makefile -Makefile @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +Makefile @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # These owners will be the default owners for everything in # the repo. Unless a later match takes precedence, -# @cubxxw and @kubbot will be requested for +# @cubxxw and @openimsdk/bot will be requested for # review when someone opens a pull request. -* @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +* @openimsdk/openim @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # Order is important; the last matching pattern takes the most # precedence. When someone opens a pull request that only # modifies JS files, only @js-owner and not the global # owner(s) will be requested for a review. -*.js @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +*.js @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # You can also use email addresses if you prefer. They'll be # used to look up users just like we do for commit author @@ -35,16 +35,16 @@ Makefile @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer- # be identified in the format @org/team-name. Teams must have # explicit write access to the repository. In this example, # the OpenIMSDK team in the github organization owns all .txt files. -*.txt @cubxxw @kubbot @Bloomingg @FGadvancer @hrxiang @Oliver-WJ @skiffer-git @std-s @wangchuxiao-dev @withchao +*.txt @cubxxw @openimsdk/bot @Bloomingg @FGadvancer @skiffer-git @wangchuxiao-dev @withchao # The `docs/*` pattern will match files like # `docs/getting-started.md` but not further nested files like # `docs/build-app/troubleshooting.md`. -docs/* 3293172751nss@gmail.com @kubbot @skiffer-git +docs/* 3293172751nss@gmail.com @openimsdk/bot @skiffer-git # In this example, @octocat owns any file in an apps directory # anywhere in your repository. -api/ @cubxxw @IRONICBo @skiffer-git +api/ @openimsdk/openim @cubxxw @skiffer-git # This is a comment. # Each line is a file pattern followed by one or more owners. @@ -65,24 +65,24 @@ cmd/* config/* @skiffer-git # db directory -db/sdk @77caleb @BanTanger @cubxxw @Gordon +db/sdk @BanTanger @cubxxw @Gordon # internal directory -internal/ @skiffer-git @FGadvancer +internal/ @openimsdk/openim @skiffer-git @FGadvancer # logs directory -logs/* @skiffer-git @FGadvancer +logs/* @skiffer-git @FGadvancer # pkg directory -pkg/a2r @skiffer-git +pkg/a2r @openimsdk/openim @skiffer-git @cubxxw @openimsdk/bot # scripts directory -scripts/LICENSE/* @cubxxw @skiffer-git @FGadvancer -scripts/enterprise/* @FGadvancer @cubxxw @skiffer-git @kubbot -scripts/githooks/* @cubxxw @skiffer-git @FGadvancer -scripts/lib/* @FGadvancer @cubxxw @skiffer-git @kubbot -scripts/make-rules/* @FGadvancer @cubxxw @skiffer-git @kubbot +scripts/LICENSE/* @openimsdk/openim @cubxxw @skiffer-git @FGadvancer +scripts/enterprise/* @openimsdk/openim @FGadvancer @cubxxw @skiffer-git @openimsdk/bot +scripts/githooks/* @openimsdk/openim @cubxxw @skiffer-git @FGadvancer +scripts/lib/* @openimsdk/openim @FGadvancer @cubxxw @skiffer-git @openimsdk/bot +scripts/make-rules/* @openimsdk/openim @FGadvancer @cubxxw @skiffer-git @openimsdk/bot # test directory -test/mongo @FGadvancer @cubxxw @skiffer-git @kubbot -test/mysql @FGadvancer @cubxxw @skiffer-git @kubbot +test/mongo @FGadvancer @cubxxw @skiffer-git @openimsdk/bot +test/mysql @FGadvancer @cubxxw @skiffer-git @openimsdk/bot diff --git a/internal/api/msg.go b/internal/api/msg.go index 8ad7943e9..41ab4dc48 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -250,7 +250,6 @@ func (m *MessageApi) BatchSendMsg(c *gin.Context) { return } - var recvIDs []string var err error if req.IsSendAll { diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index deb8c3d77..4e1586969 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -16,6 +16,7 @@ package msggateway import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" diff --git a/internal/push/offlinepush/offlinepush_interface.go b/internal/push/offlinepush/offlinepush_interface.go index 5aa7e089f..a5d4051f9 100644 --- a/internal/push/offlinepush/offlinepush_interface.go +++ b/internal/push/offlinepush/offlinepush_interface.go @@ -18,12 +18,12 @@ import ( "context" ) -// OfflinePusher Offline Pusher +// OfflinePusher Offline Pusher. type OfflinePusher interface { Push(ctx context.Context, userIDs []string, title, content string, opts *Opts) error } -// Opts opts +// Opts opts. type Opts struct { Signal *Signal IOSPushSound string @@ -31,7 +31,7 @@ type Opts struct { Ex string } -// Signal message id +// Signal message id. type Signal struct { ClientMsgID string } diff --git a/internal/rpc/msg/send.go b/internal/rpc/msg/send.go index dd02083fa..a568154c7 100644 --- a/internal/rpc/msg/send.go +++ b/internal/rpc/msg/send.go @@ -16,6 +16,7 @@ package msg import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" diff --git a/scripts/build.cmd b/scripts/build.cmd index f0d5475b4..f3c086a32 100644 --- a/scripts/build.cmd +++ b/scripts/build.cmd @@ -1,11 +1,12 @@ -go build -o api.exe ../cmd/openim-api/main.go -go build -o auth.exe ../cmd/openim-rpc/openim-rpc-auth/main.go -go build -o conversation.exe ../cmd/openim-rpc/openim-rpc-conversation/main.go -go build -o friend.exe ../cmd/openim-rpc/openim-rpc-friend/main.go -go build -o group.exe ../cmd/openim-rpc/openim-rpc-group/main.go -go build -o msg.exe ../cmd/openim-rpc/openim-rpc-msg/main.go -go build -o third.exe ../cmd/openim-rpc/openim-rpc-third/main.go -go build -o user.exe ../cmd/openim-rpc/openim-rpc-user/main.go -go build -o push.exe ../cmd/openim-push/main.go -go build -o msgtransfer.exe ../cmd/openim-msgtransfer/main.go -go build -o msggateway.exe ../cmd/openim-msggateway/main.go +set output_dir=%~dp0..\_output\bin\platforms\windows +go build -o %output_dir%\api.exe ../cmd/openim-api/main.go +go build -o %output_dir%\auth.exe ../cmd/openim-rpc/openim-rpc-auth/main.go +go build -o %output_dir%\conversation.exe ../cmd/openim-rpc/openim-rpc-conversation/main.go +go build -o %output_dir%\friend.exe ../cmd/openim-rpc/openim-rpc-friend/main.go +go build -o %output_dir%\group.exe ../cmd/openim-rpc/openim-rpc-group/main.go +go build -o %output_dir%\msg.exe ../cmd/openim-rpc/openim-rpc-msg/main.go +go build -o %output_dir%\third.exe ../cmd/openim-rpc/openim-rpc-third/main.go +go build -o %output_dir%\user.exe ../cmd/openim-rpc/openim-rpc-user/main.go +go build -o %output_dir%\push.exe ../cmd/openim-push/main.go +go build -o %output_dir%\msgtransfer.exe ../cmd/openim-msgtransfer/main.go +go build -o %output_dir%\msggateway.exe ../cmd/openim-msggateway/main.go \ No newline at end of file diff --git a/scripts/githooks/commit-msg b/scripts/githooks/commit-msg index 99f4067b9..efff13fd0 100644 --- a/scripts/githooks/commit-msg +++ b/scripts/githooks/commit-msg @@ -61,7 +61,7 @@ GITLINT_DIR="$OPENIM_ROOT/_output/tools/go-gitlint" $GITLINT_DIR \ --msg-file=$1 \ - --subject-regex="^(build|chore|ci|docs|feat|feature|fix|perf|refactor|revert|style|test)(.*)?:\s?.*" \ + --subject-regex="^(build|chore|ci|docs|feat|feature|fix|perf|refactor|revert|style|bot|test)(.*)?:\s?.*" \ --subject-maxlen=150 \ --subject-minlen=10 \ --body-regex=".*" \ diff --git a/scripts/githooks/pre-commit b/scripts/githooks/pre-commit index cad60e163..91f5ad531 100644 --- a/scripts/githooks/pre-commit +++ b/scripts/githooks/pre-commit @@ -26,7 +26,7 @@ LC_ALL=C local_branch="$(git rev-parse --abbrev-ref HEAD)" -valid_branch_regex="^(main|master|develop|release(-[a-zA-Z0-9._-]+)?)$|(feature|feat|openim|hotfix|test|bug|ci|cicd|style|)\/[a-z0-9._-]+$|^HEAD$" +valid_branch_regex="^(main|master|develop|release(-[a-zA-Z0-9._-]+)?)$|(feature|feat|openim|hotfix|test|bug|bot|ci|cicd|style|)\/[a-z0-9._-]+$|^HEAD$" YELLOW="\e[93m" GREEN="\e[32m" diff --git a/scripts/start_all.sh b/scripts/start_all.sh index b49997aa2..6470ae910 100755 --- a/scripts/start_all.sh +++ b/scripts/start_all.sh @@ -36,7 +36,7 @@ echo -e "${YELLOW_PREFIX}=======>SCRIPTS_ROOT=$SCRIPTS_ROOT${COLOR_SUFFIX}" echo -e "${YELLOW_PREFIX}=======>OPENIM_ROOT=$OPENIM_ROOT${COLOR_SUFFIX}" echo -e "${YELLOW_PREFIX}=======>pwd=$PWD${COLOR_SUFFIX}" -bin_dir="$BIN_DIR" +bin_dir="$OPENIM_ROOT/_output/bin" logs_dir="$OPENIM_ROOT/logs" sdk_db_dir="$OPENIM_ROOT/sdk/db/" From 3cae4e6890fc5ee3bd8c05096d88b910bbd58ec5 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <3293172751@qq.com> Date: Mon, 24 Jul 2023 21:25:23 +0800 Subject: [PATCH 42/46] feat: add file: (#648) Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/workflows/auto-release.yml | 7 +++++-- .github/workflows/link-pr.yml | 3 +++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml index 12234a1ec..06fee28a1 100644 --- a/.github/workflows/auto-release.yml +++ b/.github/workflows/auto-release.yml @@ -4,7 +4,10 @@ on: types: [created] jobs: assign-issue: - if: contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') + if: | + contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') && + !contains(github.event.comment.user.login, 'openimbot') && + !contains(github.event.comment.user.login, 'kubbot') runs-on: ubuntu-latest permissions: issues: write @@ -18,7 +21,7 @@ jobs: gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" - gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. I set the milestones for this issue to $LETASE_MILESTONES, We are looking forward to your PR!" + gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. I set the milestones for this issue to [$LETASE_MILESTONES](https://github.com/$OWNER/$PEPO/milestones), We are looking forward to your PR!" env: GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} ISSUE: ${{ github.event.issue.html_url }} diff --git a/.github/workflows/link-pr.yml b/.github/workflows/link-pr.yml index a3e0ee2de..c6da4cb5f 100644 --- a/.github/workflows/link-pr.yml +++ b/.github/workflows/link-pr.yml @@ -4,6 +4,9 @@ name: Github Rebot for Link check error on: schedule: - cron: '30 12 * * 1' + push: + branches: + - main jobs: linkChecker: From 643e081bb9525d478e6c3adb51dc52e2bd3286e9 Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <3293172751@qq.com> Date: Tue, 25 Jul 2023 09:25:51 +0800 Subject: [PATCH 43/46] feat: add file: (#650) Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --- .github/workflows/auto-assign-issue.yml | 9 +++++--- .github/workflows/auto-release.yml | 29 ------------------------- 2 files changed, 6 insertions(+), 32 deletions(-) delete mode 100644 .github/workflows/auto-release.yml diff --git a/.github/workflows/auto-assign-issue.yml b/.github/workflows/auto-assign-issue.yml index 7afebe028..06fee28a1 100644 --- a/.github/workflows/auto-assign-issue.yml +++ b/.github/workflows/auto-assign-issue.yml @@ -4,7 +4,10 @@ on: types: [created] jobs: assign-issue: - if: contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') + if: | + contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') && + !contains(github.event.comment.user.login, 'openimbot') && + !contains(github.event.comment.user.login, 'kubbot') runs-on: ubuntu-latest permissions: issues: write @@ -14,11 +17,11 @@ jobs: - name: Assign the issue run: | - export LETASE_MILESTONES=$(curl "https://api.github.com/repos/$OWNER/$REPO/milestones" | jq -r 'last(.[]).title') + export LETASE_MILESTONES=$(curl 'https://api.github.com/repos/$OWNER/$PEPO/milestones' | jq -r 'last(.[]).title') gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" - gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. <br>I set the milestones for this issue to $LETASE_MILESTONES, we are looking forward to your PR!" + gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. I set the milestones for this issue to [$LETASE_MILESTONES](https://github.com/$OWNER/$PEPO/milestones), We are looking forward to your PR!" env: GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} ISSUE: ${{ github.event.issue.html_url }} diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml deleted file mode 100644 index 06fee28a1..000000000 --- a/.github/workflows/auto-release.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Assign issue to comment author -on: - issue_comment: - types: [created] -jobs: - assign-issue: - if: | - contains(github.event.comment.body, '/assign') || contains(github.event.comment.body, '/accept') && - !contains(github.event.comment.user.login, 'openimbot') && - !contains(github.event.comment.user.login, 'kubbot') - runs-on: ubuntu-latest - permissions: - issues: write - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Assign the issue - run: | - export LETASE_MILESTONES=$(curl 'https://api.github.com/repos/$OWNER/$PEPO/milestones' | jq -r 'last(.[]).title') - gh issue edit ${{ github.event.issue.number }} --add-assignee "${{ github.event.comment.user.login }}" - gh issue edit ${{ github.event.issue.number }} --add-label "triage/accepted" - gh issue edit ${{ github.event.issue.number }} --milestone "$LETASE_MILESTONES" - gh issue comment $ISSUE --body "@${{ github.event.comment.user.login }} Glad to see you accepted this issue🤲, this issue has been assigned to you. I set the milestones for this issue to [$LETASE_MILESTONES](https://github.com/$OWNER/$PEPO/milestones), We are looking forward to your PR!" - env: - GH_TOKEN: ${{ secrets.REDBOT_GITHUB_TOKEN }} - ISSUE: ${{ github.event.issue.html_url }} - OWNER: ${{ github.repository_owner }} - REPO: ${{ github.event.repository.name }} \ No newline at end of file From 166fb3ca625a15a1083cfff9f645d94f25351af9 Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Tue, 25 Jul 2023 15:24:15 +0800 Subject: [PATCH 45/46] fix: http redirect compatibility (#659) * fix: StringValue When there are double quotes in the string value, serialization and deserialization fail Signed-off-by: withchao <993506633@qq.com> * test: StatusTemporaryRedirect -> StatusFound Signed-off-by: withchao <993506633@qq.com> --------- Signed-off-by: withchao <993506633@qq.com> --- internal/api/third.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/api/third.go b/internal/api/third.go index 7de0493e0..5bd38a5e8 100644 --- a/internal/api/third.go +++ b/internal/api/third.go @@ -95,5 +95,5 @@ func (o *ThirdApi) ObjectRedirect(c *gin.Context) { c.String(http.StatusInternalServerError, err.Error()) return } - c.Redirect(http.StatusTemporaryRedirect, resp.Url) + c.Redirect(http.StatusFound, resp.Url) } From 5f6b2b7f9d11ffba5d88c87d257a7bc362a98478 Mon Sep 17 00:00:00 2001 From: withchao <48119764+withchao@users.noreply.github.com> Date: Tue, 25 Jul 2023 20:13:32 +0800 Subject: [PATCH 46/46] chore: tools, pb replaced by public warehouse (#662) * fix: StringValue When there are double quotes in the string value, serialization and deserialization fail Signed-off-by: withchao <993506633@qq.com> * test: StatusTemporaryRedirect -> StatusFound Signed-off-by: withchao <993506633@qq.com> * chore: pb a2r Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * chore: replacement package Signed-off-by: withchao <993506633@qq.com> * fix: remove go mod replace Signed-off-by: withchao <993506633@qq.com> * fix: tools version Signed-off-by: withchao <993506633@qq.com> * fix: config.yaml Signed-off-by: withchao <993506633@qq.com> --------- Signed-off-by: withchao <993506633@qq.com> --- cmd/openim-api/main.go | 14 +- cmd/openim-push/main.go | 2 +- cmd/openim-rpc/openim-rpc-auth/main.go | 2 +- .../openim-rpc-conversation/main.go | 2 +- cmd/openim-rpc/openim-rpc-friend/main.go | 2 +- cmd/openim-rpc/openim-rpc-group/main.go | 2 +- cmd/openim-rpc/openim-rpc-msg/main.go | 2 +- cmd/openim-rpc/openim-rpc-third/main.go | 2 +- cmd/openim-rpc/openim-rpc-user/main.go | 2 +- config/config.yaml | 4 +- go.mod | 49 +- go.sum | 415 +- internal/api/auth.go | 4 +- internal/api/conversation.go | 4 +- internal/api/custom_validator.go | 2 +- internal/api/friend.go | 4 +- internal/api/group.go | 4 +- internal/api/msg.go | 18 +- internal/api/route.go | 79 +- internal/api/statistics.go | 4 +- internal/api/third.go | 11 +- internal/api/user.go | 16 +- internal/msggateway/callback.go | 6 +- internal/msggateway/client.go | 12 +- internal/msggateway/compressor.go | 2 +- internal/msggateway/context.go | 4 +- internal/msggateway/encoder.go | 2 +- internal/msggateway/http_error.go | 2 +- internal/msggateway/hub_server.go | 18 +- internal/msggateway/init.go | 2 +- internal/msggateway/message_handler.go | 10 +- internal/msggateway/n_ws_server.go | 14 +- internal/msggateway/user_map.go | 4 +- internal/msgtransfer/init.go | 10 +- .../msgtransfer/online_history_msg_handler.go | 14 +- .../online_msg_to_mongo_handler.go | 6 +- .../msgtransfer/persistent_msg_handler.go | 10 +- internal/push/callback.go | 18 +- internal/push/offlinepush/fcm/push.go | 7 +- internal/push/offlinepush/getui/body.go | 2 +- internal/push/offlinepush/getui/push.go | 12 +- .../offlinepush/jpush/body/notification.go | 2 +- .../push/offlinepush/jpush/body/platform.go | 2 +- internal/push/offlinepush/jpush/push.go | 2 +- internal/push/push_handler.go | 12 +- internal/push/push_rpc_server.go | 8 +- internal/push/push_to_client.go | 16 +- internal/push/tools.go | 18 + internal/rpc/auth/auth.go | 20 +- internal/rpc/conversation/conversaion.go | 14 +- internal/rpc/friend/black.go | 6 +- internal/rpc/friend/callback.go | 10 +- internal/rpc/friend/friend.go | 30 +- internal/rpc/group/cache.go | 2 +- internal/rpc/group/callback.go | 14 +- internal/rpc/group/convert.go | 2 +- internal/rpc/group/db_map.go | 6 +- internal/rpc/group/fill.go | 2 +- internal/rpc/group/group.go | 33 +- internal/rpc/group/statistics.go | 4 +- internal/rpc/group/super_group.go | 10 +- internal/rpc/msg/as_read.go | 10 +- internal/rpc/msg/callback.go | 29 +- internal/rpc/msg/delete.go | 14 +- internal/rpc/msg/message_interceptor.go | 10 +- internal/rpc/msg/msg_status.go | 6 +- internal/rpc/msg/revoke.go | 14 +- internal/rpc/msg/send.go | 18 +- internal/rpc/msg/seq.go | 2 +- internal/rpc/msg/server.go | 8 +- internal/rpc/msg/statistics.go | 6 +- internal/rpc/msg/sync_msg.go | 12 +- internal/rpc/msg/utils.go | 8 +- internal/rpc/msg/verify.go | 12 +- internal/rpc/third/s3.go | 10 +- internal/rpc/third/third.go | 6 +- internal/rpc/third/tool.go | 8 +- internal/rpc/user/statistics.go | 4 +- internal/rpc/user/user.go | 20 +- internal/tools/conversation.go | 6 +- internal/tools/cron_task.go | 4 +- internal/tools/msg.go | 16 +- internal/tools/msg_test.go | 6 +- pkg/a2r/api2rpc.go | 51 - pkg/apiresp/format.go | 19 - pkg/apiresp/gin.go | 29 - pkg/apiresp/http.go | 39 - pkg/apiresp/resp.go | 76 - pkg/apistruct/manage.go | 2 +- pkg/callbackstruct/common.go | 2 +- pkg/callbackstruct/group.go | 2 +- pkg/callbackstruct/message.go | 2 +- pkg/callbackstruct/push.go | 2 +- pkg/checker/check.go | 28 - pkg/common/cmd/msg_gateway.go | 2 +- pkg/common/cmd/root.go | 9 +- pkg/common/cmd/rpc.go | 4 +- pkg/common/config/config.go | 312 - pkg/common/config/parse.go | 59 +- pkg/common/constant/constant.go | 363 - pkg/common/constant/limit.go | 21 - pkg/common/constant/platform_id_to_name.go | 109 - pkg/common/convert/black.go | 4 +- pkg/common/convert/conversation.go | 4 +- pkg/common/convert/friend.go | 4 +- pkg/common/convert/group.go | 4 +- pkg/common/convert/msg.go | 2 +- pkg/common/convert/user.go | 2 +- pkg/common/db/cache/conversation.go | 2 +- pkg/common/db/cache/friend.go | 2 +- pkg/common/db/cache/group.go | 2 +- pkg/common/db/cache/init_redis.go | 6 +- pkg/common/db/cache/init_redis_test.go | 37 - pkg/common/db/cache/meta_cache.go | 6 +- pkg/common/db/cache/msg.go | 12 +- pkg/common/db/controller/auth.go | 6 +- pkg/common/db/controller/black.go | 4 +- pkg/common/db/controller/chatlog.go | 2 +- pkg/common/db/controller/conversation.go | 8 +- pkg/common/db/controller/friend.go | 10 +- pkg/common/db/controller/group.go | 6 +- pkg/common/db/controller/msg.go | 12 +- pkg/common/db/controller/msg_test.go | 4 +- pkg/common/db/controller/user.go | 6 +- pkg/common/db/localcache/conversation.go | 2 +- pkg/common/db/localcache/group.go | 4 +- pkg/common/db/ormutil/utils.go | 73 - pkg/common/db/relation/black_model.go | 4 +- pkg/common/db/relation/chat_log_model.go | 8 +- pkg/common/db/relation/conversation_model.go | 4 +- pkg/common/db/relation/friend_model.go | 2 +- .../db/relation/friend_request_model.go | 2 +- pkg/common/db/relation/group_member_model.go | 6 +- pkg/common/db/relation/group_model.go | 8 +- pkg/common/db/relation/group_request_model.go | 4 +- pkg/common/db/relation/mysql_init.go | 8 +- pkg/common/db/relation/object_model.go | 2 +- pkg/common/db/relation/user_model.go | 4 +- pkg/common/db/s3/cont/controller.go | 4 +- pkg/common/db/s3/cos/cos.go | 2 +- pkg/common/db/s3/minio/minio.go | 2 +- pkg/common/db/s3/oss/oss.go | 2 +- pkg/common/db/table/relation/chatlog.go | 2 +- pkg/common/db/table/relation/utils.go | 2 +- pkg/common/db/table/unrelation/msg.go | 4 +- pkg/common/db/tx/gorm.go | 33 - pkg/common/db/tx/mongo.go | 47 - pkg/common/db/tx/tx.go | 25 - pkg/common/db/unrelation/mongo.go | 18 +- pkg/common/db/unrelation/msg.go | 10 +- pkg/common/db/unrelation/super_group.go | 2 +- pkg/common/http/http_client.go | 8 +- pkg/common/kafka/consumer.go | 2 +- pkg/common/kafka/consumer_group.go | 2 +- pkg/common/kafka/producer.go | 10 +- pkg/common/log/color.go | 64 - pkg/common/log/logger.go | 27 - pkg/common/log/sql_logger.go | 89 - pkg/common/log/zap.go | 302 - pkg/common/log/zk_logger.go | 30 - pkg/common/mcontext/ctx.go | 154 - pkg/common/mw/gin.go | 142 - pkg/common/mw/intercept_chain.go | 41 - pkg/common/mw/rpc_client_interceptor.go | 114 - pkg/common/mw/rpc_server_interceptor.go | 181 - pkg/common/mw/specialerror/error.go | 47 - pkg/common/network/ip.go | 41 - pkg/common/prome/prometheus.go | 2 +- pkg/common/tokenverify/jwt_token.go | 122 - pkg/common/tokenverify/jwt_token_test.go | 39 - pkg/discoveryregistry/discovery_register.go | 39 - pkg/discoveryregistry/zookeeper/conf.go | 41 - pkg/discoveryregistry/zookeeper/discover.go | 136 - pkg/discoveryregistry/zookeeper/register.go | 76 - pkg/discoveryregistry/zookeeper/resolver.go | 93 - pkg/discoveryregistry/zookeeper/zk.go | 226 - pkg/errs/code.go | 92 - pkg/errs/coderr.go | 124 - pkg/errs/predefine.go | 64 - pkg/errs/relation.go | 56 - pkg/proto/auth/auth.go | 47 - pkg/proto/auth/auth.pb.go | 707 -- pkg/proto/auth/auth.proto | 55 - pkg/proto/conversation/conversation.go | 162 - pkg/proto/conversation/conversation.pb.go | 2744 ------- pkg/proto/conversation/conversation.proto | 172 - pkg/proto/errinfo/errinfo.pb.go | 197 - pkg/proto/errinfo/errinfo.proto | 27 - pkg/proto/friend/friend.go | 176 - pkg/proto/friend/friend.pb.go | 2952 -------- pkg/proto/friend/friend.proto | 187 - pkg/proto/gen.cmd | 13 - pkg/proto/gen.sh | 27 - pkg/proto/group/group.go | 352 - pkg/proto/group/group.pb.go | 6376 ---------------- pkg/proto/group/group.proto | 417 -- pkg/proto/msg/msg.go | 217 - pkg/proto/msg/msg.pb.go | 4807 ------------- pkg/proto/msg/msg.proto | 319 - pkg/proto/msggateway/msggateway.go | 73 - pkg/proto/msggateway/msggateway.pb.go | 1724 ----- pkg/proto/msggateway/msggateway.proto | 122 - pkg/proto/push/push.go | 40 - pkg/proto/push/push.pb.go | 489 -- pkg/proto/push/push.proto | 40 - pkg/proto/sdkws/sdkws.go | 46 - pkg/proto/sdkws/sdkws.pb.go | 6399 ----------------- pkg/proto/sdkws/sdkws.proto | 517 -- pkg/proto/statistics/statistics.pb.go | 80 - pkg/proto/statistics/statistics.proto | 18 - pkg/proto/third/third.go | 75 - pkg/proto/third/third.pb.go | 2057 ------ pkg/proto/third/third.proto | 144 - pkg/proto/user/user.go | 161 - pkg/proto/user/user.pb.go | 2763 ------- pkg/proto/user/user.proto | 182 - pkg/proto/wrapperspb/wrapperspb.go | 299 - pkg/proto/wrapperspb/wrapperspb.pb.go | 694 -- pkg/proto/wrapperspb/wrapperspb.proto | 91 - pkg/rpcclient/auth.go | 6 +- pkg/rpcclient/conversation.go | 8 +- pkg/rpcclient/friend.go | 8 +- pkg/rpcclient/group.go | 14 +- pkg/rpcclient/msg.go | 14 +- pkg/rpcclient/notification/conevrsation.go | 4 +- pkg/rpcclient/notification/friend.go | 8 +- pkg/rpcclient/notification/group.go | 14 +- pkg/rpcclient/notification/msg.go | 4 +- pkg/rpcclient/push.go | 6 +- pkg/rpcclient/third.go | 6 +- pkg/rpcclient/user.go | 14 +- pkg/startrpc/start.go | 112 - pkg/statistics/statistics.go | 2 +- pkg/utils/base64.go | 26 - pkg/utils/callback.go | 33 - pkg/utils/encryption.go | 78 - pkg/utils/file.go | 98 - pkg/utils/get_server_ip.go | 39 - pkg/utils/id.go | 42 - pkg/utils/id_test.go | 29 - pkg/utils/image.go | 69 - pkg/utils/image_test.go | 41 - pkg/utils/map.go | 147 - pkg/utils/md5_test.go | 29 - pkg/utils/options.go | 181 - pkg/utils/page.go | 24 - pkg/utils/platform_number_id_to_name_test.go | 61 - pkg/utils/retry/retry.go | 198 - pkg/utils/retry/stratey.go | 70 - pkg/utils/splitter/tools.go | 42 - pkg/utils/strings.go | 141 - pkg/utils/time_format.go | 97 - pkg/utils/utils.go | 393 - pkg/utils/utils_v2.go | 557 -- pkg/utils/utils_v2_test.go | 98 - 255 files changed, 717 insertions(+), 43129 deletions(-) create mode 100644 internal/push/tools.go delete mode 100644 pkg/a2r/api2rpc.go delete mode 100644 pkg/apiresp/format.go delete mode 100644 pkg/apiresp/gin.go delete mode 100644 pkg/apiresp/http.go delete mode 100644 pkg/apiresp/resp.go delete mode 100644 pkg/checker/check.go delete mode 100644 pkg/common/config/config.go delete mode 100644 pkg/common/constant/constant.go delete mode 100644 pkg/common/constant/limit.go delete mode 100644 pkg/common/constant/platform_id_to_name.go delete mode 100644 pkg/common/db/cache/init_redis_test.go delete mode 100644 pkg/common/db/ormutil/utils.go delete mode 100644 pkg/common/db/tx/gorm.go delete mode 100644 pkg/common/db/tx/mongo.go delete mode 100644 pkg/common/db/tx/tx.go delete mode 100644 pkg/common/log/color.go delete mode 100644 pkg/common/log/logger.go delete mode 100644 pkg/common/log/sql_logger.go delete mode 100644 pkg/common/log/zap.go delete mode 100644 pkg/common/log/zk_logger.go delete mode 100644 pkg/common/mcontext/ctx.go delete mode 100644 pkg/common/mw/gin.go delete mode 100644 pkg/common/mw/intercept_chain.go delete mode 100644 pkg/common/mw/rpc_client_interceptor.go delete mode 100644 pkg/common/mw/rpc_server_interceptor.go delete mode 100644 pkg/common/mw/specialerror/error.go delete mode 100644 pkg/common/network/ip.go delete mode 100644 pkg/common/tokenverify/jwt_token.go delete mode 100644 pkg/common/tokenverify/jwt_token_test.go delete mode 100644 pkg/discoveryregistry/discovery_register.go delete mode 100644 pkg/discoveryregistry/zookeeper/conf.go delete mode 100644 pkg/discoveryregistry/zookeeper/discover.go delete mode 100644 pkg/discoveryregistry/zookeeper/register.go delete mode 100644 pkg/discoveryregistry/zookeeper/resolver.go delete mode 100644 pkg/discoveryregistry/zookeeper/zk.go delete mode 100644 pkg/errs/code.go delete mode 100644 pkg/errs/coderr.go delete mode 100644 pkg/errs/predefine.go delete mode 100644 pkg/errs/relation.go delete mode 100644 pkg/proto/auth/auth.go delete mode 100644 pkg/proto/auth/auth.pb.go delete mode 100644 pkg/proto/auth/auth.proto delete mode 100644 pkg/proto/conversation/conversation.go delete mode 100644 pkg/proto/conversation/conversation.pb.go delete mode 100644 pkg/proto/conversation/conversation.proto delete mode 100644 pkg/proto/errinfo/errinfo.pb.go delete mode 100644 pkg/proto/errinfo/errinfo.proto delete mode 100644 pkg/proto/friend/friend.go delete mode 100644 pkg/proto/friend/friend.pb.go delete mode 100644 pkg/proto/friend/friend.proto delete mode 100644 pkg/proto/gen.cmd delete mode 100644 pkg/proto/gen.sh delete mode 100644 pkg/proto/group/group.go delete mode 100644 pkg/proto/group/group.pb.go delete mode 100644 pkg/proto/group/group.proto delete mode 100644 pkg/proto/msg/msg.go delete mode 100644 pkg/proto/msg/msg.pb.go delete mode 100644 pkg/proto/msg/msg.proto delete mode 100644 pkg/proto/msggateway/msggateway.go delete mode 100644 pkg/proto/msggateway/msggateway.pb.go delete mode 100644 pkg/proto/msggateway/msggateway.proto delete mode 100644 pkg/proto/push/push.go delete mode 100644 pkg/proto/push/push.pb.go delete mode 100644 pkg/proto/push/push.proto delete mode 100644 pkg/proto/sdkws/sdkws.go delete mode 100644 pkg/proto/sdkws/sdkws.pb.go delete mode 100644 pkg/proto/sdkws/sdkws.proto delete mode 100644 pkg/proto/statistics/statistics.pb.go delete mode 100644 pkg/proto/statistics/statistics.proto delete mode 100644 pkg/proto/third/third.go delete mode 100644 pkg/proto/third/third.pb.go delete mode 100644 pkg/proto/third/third.proto delete mode 100644 pkg/proto/user/user.go delete mode 100644 pkg/proto/user/user.pb.go delete mode 100644 pkg/proto/user/user.proto delete mode 100644 pkg/proto/wrapperspb/wrapperspb.go delete mode 100644 pkg/proto/wrapperspb/wrapperspb.pb.go delete mode 100644 pkg/proto/wrapperspb/wrapperspb.proto delete mode 100644 pkg/startrpc/start.go delete mode 100644 pkg/utils/base64.go delete mode 100644 pkg/utils/callback.go delete mode 100644 pkg/utils/encryption.go delete mode 100644 pkg/utils/file.go delete mode 100644 pkg/utils/get_server_ip.go delete mode 100644 pkg/utils/id.go delete mode 100644 pkg/utils/id_test.go delete mode 100644 pkg/utils/image.go delete mode 100644 pkg/utils/image_test.go delete mode 100644 pkg/utils/map.go delete mode 100644 pkg/utils/md5_test.go delete mode 100644 pkg/utils/options.go delete mode 100644 pkg/utils/page.go delete mode 100644 pkg/utils/platform_number_id_to_name_test.go delete mode 100644 pkg/utils/retry/retry.go delete mode 100644 pkg/utils/retry/stratey.go delete mode 100644 pkg/utils/splitter/tools.go delete mode 100644 pkg/utils/strings.go delete mode 100644 pkg/utils/time_format.go delete mode 100644 pkg/utils/utils.go delete mode 100644 pkg/utils/utils_v2.go delete mode 100644 pkg/utils/utils_v2_test.go diff --git a/cmd/openim-api/main.go b/cmd/openim-api/main.go index dbc117edf..c967906e9 100644 --- a/cmd/openim-api/main.go +++ b/cmd/openim-api/main.go @@ -28,12 +28,12 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/internal/api" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - openKeeper "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry/zookeeper" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + openKeeper "github.com/OpenIMSDK/tools/discoveryregistry/zookeeper" + "github.com/OpenIMSDK/tools/log" ) func main() { @@ -73,11 +73,11 @@ func run(port int) error { if err != nil { return err } - if err := client.CreateRpcRootNodes(config.GetServiceNames()); err != nil { + if err := client.CreateRpcRootNodes(config.Config.GetServiceNames()); err != nil { return err } fmt.Println("api register public config to discov") - if err := client.RegisterConf2Registry(constant.OpenIMCommonConfigKey, config.EncodeConfig()); err != nil { + if err := client.RegisterConf2Registry(constant.OpenIMCommonConfigKey, config.Config.EncodeConfig()); err != nil { return err } fmt.Println("api register public config to discov success") diff --git a/cmd/openim-push/main.go b/cmd/openim-push/main.go index 03db8ae03..adc3a7cb7 100644 --- a/cmd/openim-push/main.go +++ b/cmd/openim-push/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/push" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-auth/main.go b/cmd/openim-rpc/openim-rpc-auth/main.go index 524804988..62bb65fab 100644 --- a/cmd/openim-rpc/openim-rpc-auth/main.go +++ b/cmd/openim-rpc/openim-rpc-auth/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/auth" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-conversation/main.go b/cmd/openim-rpc/openim-rpc-conversation/main.go index fec8226f8..0465de868 100644 --- a/cmd/openim-rpc/openim-rpc-conversation/main.go +++ b/cmd/openim-rpc/openim-rpc-conversation/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/conversation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-friend/main.go b/cmd/openim-rpc/openim-rpc-friend/main.go index fbd44038e..7a0631a20 100644 --- a/cmd/openim-rpc/openim-rpc-friend/main.go +++ b/cmd/openim-rpc/openim-rpc-friend/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/friend" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-group/main.go b/cmd/openim-rpc/openim-rpc-group/main.go index 06baac155..af78868d2 100644 --- a/cmd/openim-rpc/openim-rpc-group/main.go +++ b/cmd/openim-rpc/openim-rpc-group/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-msg/main.go b/cmd/openim-rpc/openim-rpc-msg/main.go index 356081d33..6bdd4842d 100644 --- a/cmd/openim-rpc/openim-rpc-msg/main.go +++ b/cmd/openim-rpc/openim-rpc-msg/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-third/main.go b/cmd/openim-rpc/openim-rpc-third/main.go index c070e6811..2136bc157 100644 --- a/cmd/openim-rpc/openim-rpc-third/main.go +++ b/cmd/openim-rpc/openim-rpc-third/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/cmd/openim-rpc/openim-rpc-user/main.go b/cmd/openim-rpc/openim-rpc-user/main.go index 6d6d9008d..16a24c812 100644 --- a/cmd/openim-rpc/openim-rpc-user/main.go +++ b/cmd/openim-rpc/openim-rpc-user/main.go @@ -17,7 +17,7 @@ package main import ( "github.com/OpenIMSDK/Open-IM-Server/internal/rpc/user" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/cmd" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func main() { diff --git a/config/config.yaml b/config/config.yaml index 2d38a5e36..10d43bd3e 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -77,7 +77,7 @@ object: apiURL: "http://127.0.0.1:10002/object/" #地址需要app能访问到 minio: bucket: "openim" #不建议修改 - endpoint: http://116.30.3.80:10005 + endpoint: http://127.0.0.1:10005 #地址需要app能够访问 accessKeyID: root secretAccessKey: openIM123 sessionToken: "" #token @@ -90,7 +90,7 @@ object: endpoint: "https://oss-cn-chengdu.aliyuncs.com" bucket: "demo-9999999" bucketURL: "https://demo-9999999.oss-cn-chengdu.aliyuncs.com" - accessKeyID: root + accessKeyID: "" accessKeySecret: "" sessionToken: "" diff --git a/go.mod b/go.mod index 21e6e2241..db50056c4 100644 --- a/go.mod +++ b/go.mod @@ -4,45 +4,44 @@ go 1.18 require ( firebase.google.com/go v3.13.0+incompatible - github.com/OpenIMSDK/open_utils v1.0.8 github.com/Shopify/sarama v1.29.0 - github.com/bwmarrin/snowflake v0.3.0 + github.com/bwmarrin/snowflake v0.3.0 // indirect github.com/dtm-labs/rockscache v0.1.1 github.com/gin-gonic/gin v1.9.1 github.com/go-playground/validator/v10 v10.14.0 github.com/gogo/protobuf v1.3.2 - github.com/golang-jwt/jwt/v4 v4.4.2 + github.com/golang-jwt/jwt/v4 v4.5.0 github.com/golang/protobuf v1.5.3 github.com/gorilla/websocket v1.4.2 - github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 + github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect github.com/jinzhu/copier v0.3.5 - github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible + github.com/lestrrat-go/file-rotatelogs v2.4.0+incompatible // indirect github.com/minio/minio-go/v7 v7.0.59 github.com/mitchellh/mapstructure v1.5.0 - github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 - github.com/pkg/errors v0.9.1 - github.com/prometheus/client_golang v1.13.0 + github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/prometheus/client_golang v1.16.0 github.com/robfig/cron/v3 v3.0.1 github.com/sirupsen/logrus v1.9.2 // indirect github.com/stretchr/testify v1.8.3 - github.com/tencentyun/qcloud-cos-sts-sdk v0.0.0-20210325043845-84a0811633ca - go.mongodb.org/mongo-driver v1.8.3 - golang.org/x/image v0.3.0 + go.mongodb.org/mongo-driver v1.12.0 + golang.org/x/image v0.9.0 // indirect google.golang.org/api v0.114.0 - google.golang.org/grpc v1.54.0 + google.golang.org/grpc v1.56.2 google.golang.org/protobuf v1.31.0 gopkg.in/yaml.v3 v3.0.1 gorm.io/driver/mysql v1.3.5 - gorm.io/gorm v1.23.8 + gorm.io/gorm v1.25.2 ) require github.com/google/uuid v1.3.0 require ( + github.com/OpenIMSDK/protocol v0.0.0-20230725064305-11f0568fe5e9 + github.com/OpenIMSDK/tools v0.0.1 github.com/aliyun/aliyun-oss-go-sdk v2.2.7+incompatible github.com/go-redis/redis v6.15.9+incompatible github.com/go-sql-driver/mysql v1.6.0 - github.com/go-zookeeper/zk v1.0.3 github.com/redis/go-redis/v9 v9.0.5 github.com/tencentyun/cos-go-sdk-v5 v0.7.41 ) @@ -69,7 +68,7 @@ require ( github.com/gabriel-vasile/mimetype v1.4.2 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect - github.com/go-stack/stack v1.8.0 // indirect + github.com/go-zookeeper/zk v1.0.3 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/snappy v0.0.3 // indirect github.com/google/go-cmp v0.5.9 // indirect @@ -90,27 +89,28 @@ require ( github.com/klauspost/cpuid/v2 v2.2.4 // indirect github.com/leodido/go-urn v1.2.4 // indirect github.com/lithammer/shortuuid v3.0.0+incompatible // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect github.com/minio/md5-simd v1.1.2 // indirect github.com/minio/sha256-simd v1.0.1 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe // indirect github.com/mozillazg/go-httpheader v0.4.0 // indirect github.com/onsi/ginkgo v1.16.5 // indirect github.com/onsi/gomega v1.18.1 // indirect github.com/pelletier/go-toml/v2 v2.0.8 // indirect github.com/pierrec/lz4 v2.6.0+incompatible // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_model v0.2.0 // indirect - github.com/prometheus/common v0.37.0 // indirect - github.com/prometheus/procfs v0.8.0 // indirect + github.com/prometheus/client_model v0.3.0 // indirect + github.com/prometheus/common v0.42.0 // indirect + github.com/prometheus/procfs v0.10.1 // indirect github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 // indirect github.com/rs/xid v1.5.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/twitchyliquid64/golang-asm v0.15.1 // indirect github.com/xdg-go/pbkdf2 v1.0.0 // indirect - github.com/xdg-go/scram v1.0.2 // indirect - github.com/xdg-go/stringprep v1.0.2 // indirect + github.com/xdg-go/scram v1.1.2 // indirect + github.com/xdg-go/stringprep v1.0.4 // indirect github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d // indirect go.opencensus.io v0.24.0 // indirect go.uber.org/atomic v1.7.0 // indirect @@ -118,9 +118,9 @@ require ( golang.org/x/arch v0.3.0 // indirect golang.org/x/net v0.11.0 // indirect golang.org/x/oauth2 v0.7.0 // indirect - golang.org/x/sync v0.1.0 // indirect + golang.org/x/sync v0.2.0 // indirect golang.org/x/sys v0.9.0 // indirect - golang.org/x/text v0.10.0 // indirect + golang.org/x/text v0.11.0 // indirect golang.org/x/time v0.1.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/appengine v1.6.7 // indirect @@ -131,12 +131,11 @@ require ( require ( github.com/go-playground/locales v0.14.1 // indirect github.com/goccy/go-json v0.10.2 // indirect - github.com/jonboulle/clockwork v0.3.0 // indirect github.com/lestrrat-go/strftime v1.0.6 // indirect github.com/mattn/go-isatty v0.0.19 // indirect github.com/spf13/cobra v1.6.1 github.com/ugorji/go/codec v1.2.11 // indirect - go.uber.org/zap v1.24.0 + go.uber.org/zap v1.24.0 // indirect golang.org/x/crypto v0.10.0 // indirect google.golang.org/genproto v0.0.0-20230525234025-438c736192d0 // indirect gopkg.in/ini.v1 v1.67.0 // indirect diff --git a/go.sum b/go.sum index e95d2e81e..0c585411e 100644 --- a/go.sum +++ b/go.sum @@ -1,71 +1,33 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= -cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= -cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= -cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= -cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= -cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= -cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= -cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= -cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= -cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= -cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= -cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= -cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= -cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= -cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= -cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= -cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= -cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= -cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= cloud.google.com/go/compute v1.19.1 h1:am86mquDUgjGNWxiGn+5PGLbmgiWXlE/yNWpIpNvuXY= cloud.google.com/go/compute v1.19.1/go.mod h1:6ylj3a05WF8leseCdIf77NK0g1ey+nj5IKd5/kvShxE= cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= -cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= -cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= cloud.google.com/go/firestore v1.9.0 h1:IBlRyxgGySXu5VuW0RgGFlTtLukSnNkpDiEOMkQkmpA= cloud.google.com/go/firestore v1.9.0/go.mod h1:HMkjKHNTtRyZNiMzu7YAsLr9K3X2udY2AMwDaMEQiiE= cloud.google.com/go/iam v0.13.0 h1:+CmB+K0J/33d0zSQ9SlFWUeCCEn5XJA0ZMZ3pHE9u8k= cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0= cloud.google.com/go/longrunning v0.4.1 h1:v+yFJOfKC3yZdY6ZUI933pIYdhyhV8S3NpWrXWmg7jM= cloud.google.com/go/longrunning v0.4.1/go.mod h1:4iWDqhBZ70CvZ6BfETbvam3T8FMvLK+eFj0E6AaRQTo= -cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= -cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= -cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= -cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= -cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= -cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= -cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= -cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= -cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.28.1 h1:F5QDG5ChchaAVQhINh24U99OWHURqrW8OmQcGKXcbgI= cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y= -dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= firebase.google.com/go v3.13.0+incompatible h1:3TdYC3DDi6aHn20qoRkxwGqNgdjtblwVAyRLQwGn/+4= firebase.google.com/go v3.13.0+incompatible/go.mod h1:xlah6XbEyW6tbfSklcfe5FHJIwjt8toICdV5Wh9ptHs= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/OpenIMSDK/open_utils v1.0.8 h1:IopxWgJwEF5ZAPsRuiZZOfcxNOQOCt/p8VDENcHN9r4= -github.com/OpenIMSDK/open_utils v1.0.8/go.mod h1:FLoaQblWUVKQgqt2LrNzfSZLT6D3DICBn1kcOMDLUOI= +github.com/OpenIMSDK/protocol v0.0.0-20230725064305-11f0568fe5e9 h1:ZtW+z2j2kjk51awH9OFRXbgNI5Vcfq0Lu9//ax86ktc= +github.com/OpenIMSDK/protocol v0.0.0-20230725064305-11f0568fe5e9/go.mod h1:F25dFrwrIx3lkNoiuf6FkCfxuwf8L4Z8UIsdTHP/r0Y= +github.com/OpenIMSDK/tools v0.0.1 h1:lxTzjv0vOCH890K9C5LxMq3UCvioDMw0ZZQQtioauuI= +github.com/OpenIMSDK/tools v0.0.1/go.mod h1:/iSkny1+7i4Z09yddGa4o4fTu9dzJdOLxxe4pWuqI1A= github.com/QcloudApi/qcloud_sign_golang v0.0.0-20141224014652-e4130a326409/go.mod h1:1pk82RBxDY/JZnPQrtqHlUFfCctgdorsd9M06fMynOM= github.com/Shopify/sarama v1.29.0 h1:ARid8o8oieau9XrHI55f/L3EoRAhm9px6sonbD7yuUE= github.com/Shopify/sarama v1.29.0/go.mod h1:2QpgD79wpdAESqNQMxNc0KYMkycd4slxGdV3TWSVqrU= github.com/Shopify/toxiproxy v2.1.4+incompatible h1:TKdv8HiTLgE5wdJuEML90aBgNWsokNbMijUGhmcoBJc= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -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/aliyun/aliyun-oss-go-sdk v2.2.7+incompatible h1:KpbJFXwhVeuxNtBJ74MCGbIoaBok2uZvkD7QXp2+Wis= github.com/aliyun/aliyun-oss-go-sdk v2.2.7+incompatible/go.mod h1:T/Aws4fEfogEE9v+HPhhw+CntffsBHJ8nXQCwKr0/g8= github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bsm/ginkgo/v2 v2.7.0 h1:ItPMPH90RbmZJt5GtkcNvIRuGEdwlBItdNVoyzaNQao= @@ -76,8 +38,6 @@ github.com/bytedance/sonic v1.5.0/go.mod h1:ED5hyg4y6t3/9Ku1R6dU/4KyJ48DZ4jPhfY1 github.com/bytedance/sonic v1.9.1 h1:6iJ6NqdoxCDr6mbY8h18oSO+cShGSMRGCEo7F2h0x8s= github.com/bytedance/sonic v1.9.1/go.mod h1:i736AoUSYt75HyZLoJW9ERYxcy6eaN6h4BZXU064P/U= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chenzhuoyu/base64x v0.0.0-20211019084208-fb5309c8db06/go.mod h1:DH46F32mSOjUmXrMHnKwZdA8wcEefY7UVqBKYGjpdQY= @@ -124,17 +84,6 @@ github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= github.com/gin-gonic/gin v1.9.1 h1:4idEAncQnU5cB7BeOkPtxjfCSye0AAm1R0RVIqJ+Jmg= github.com/gin-gonic/gin v1.9.1/go.mod h1:hPrL7YrpYKXt5YId3A/Tnip5kqbEAP+KLuI3SUcPTeU= -github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= -github.com/go-kit/log v0.2.0/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= -github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= -github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= @@ -146,36 +95,23 @@ github.com/go-redis/redis v6.15.9+incompatible h1:K0pv1D7EQUjfyoMql+r/jZqCLizCGK github.com/go-redis/redis v6.15.9+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= github.com/go-zookeeper/zk v1.0.3 h1:7M2kwOsc//9VeeFiPtf+uSJlVpU66x9Ba5+8XK7/TDg= github.com/go-zookeeper/zk v1.0.3/go.mod h1:nOB03cncLtlp4t+UAkGSV+9beXP/akpekBwL+UX1Qcw= github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU= github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang-jwt/jwt/v4 v4.4.2 h1:rcc4lwaZgFMCZ5jxF9ABolDcIHdBytAFgqFPbSJQAYs= -github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= +github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= -github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= -github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= @@ -192,15 +128,11 @@ github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiu github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= @@ -211,27 +143,14 @@ github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= -github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= -github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw= -github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= -github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/enterprise-certificate-proxy v0.2.3 h1:yk9/cqRKtT9wXZSsRH9aurXEpJX+U6FLtpYTdC3R06k= github.com/googleapis/enterprise-certificate-proxy v0.2.3/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k= -github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= -github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4= @@ -242,10 +161,7 @@ github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92Bcuy github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= github.com/hashicorp/go-uuid v1.0.2 h1:cfejS+Tpcp13yd5nYHWDI6qVCny6wyX2Mt5SGur2IGE= github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= -github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= @@ -268,18 +184,9 @@ github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkr github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= -github.com/jonboulle/clockwork v0.3.0 h1:9BSCMi8C+0qdApAp4auwX0RkLGUjs956h0EkuQymUhg= -github.com/jonboulle/clockwork v0.3.0/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= -github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/jonboulle/clockwork v0.4.0 h1:p4Cf1aMWXnXAUh8lVfewRBx1zaTSYKrKMF2g3ST4RZ4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= -github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.12.2/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= @@ -290,12 +197,8 @@ github.com/klauspost/cpuid/v2 v2.0.1/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa02 github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/klauspost/cpuid/v2 v2.2.4 h1:acbojRNwl3o09bUq+yDCtZFc1aiwaAAxtcn8YkZXnvk= github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -312,8 +215,8 @@ github.com/lithammer/shortuuid v3.0.0+incompatible h1:NcD0xWW/MZYXEHa6ITy6kaXN5n github.com/lithammer/shortuuid v3.0.0+incompatible/go.mod h1:FR74pbAuElzOUuenUHTK2Tciko1/vKuIKS9dSkDrA4w= github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= +github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34= github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM= github.com/minio/minio-go/v7 v7.0.59 h1:lxIXwsTIcQkYoEG25rUJbzpmSB/oWeVDmxFo/uWUUsw= @@ -326,16 +229,13 @@ github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RR github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe h1:iruDEfMl2E6fbMZ9s0scYfZQ84/6SPL6zC8ACM2oIL0= github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/mozillazg/go-httpheader v0.2.1/go.mod h1:jJ8xECTlalr6ValeXYdOF8fFUISeBAdw6E61aqQma60= github.com/mozillazg/go-httpheader v0.4.0 h1:aBn6aRXtFzyDLZ4VIRLsZbbJloagQfMnCiYgOq6hK4w= github.com/mozillazg/go-httpheader v0.4.0/go.mod h1:PuT8h0pw6efvp8ZeUec1Rs7dwjK08bt6gKSReGMqtdA= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 h1:zYyBkD/k9seD2A7fsi6Oo2LfFZAehjjQMERAvZLEDnQ= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= @@ -356,50 +256,29 @@ github.com/pelletier/go-toml/v2 v2.0.8 h1:0ctb6s9mE31h0/lhu+J6OPmVeDxJn+kYnJc2jZ github.com/pelletier/go-toml/v2 v2.0.8/go.mod h1:vuYfssBdrU2XDZ9bYydBu6t+6a6PYNcZljzZR9VXg+4= github.com/pierrec/lz4 v2.6.0+incompatible h1:Ix9yFKn1nSPBLFl/yZknTp8TU5G4Ps0JDmguYK6iH1A= github.com/pierrec/lz4 v2.6.0+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= -github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= -github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= -github.com/prometheus/client_golang v1.13.0 h1:b71QUfeo5M8gq2+evJdTPfZhYMAU0uKPkyPJ7TPsloU= -github.com/prometheus/client_golang v1.13.0/go.mod h1:vTeo+zgvILHsnnj/39Ou/1fPN5nJFOEMgftOUOmlvYQ= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8= +github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= -github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= -github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= -github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= -github.com/prometheus/common v0.37.0 h1:ccBbHCgIiT9uSoFY0vX8H3zsNR5eLt17/RQLUvn8pXE= -github.com/prometheus/common v0.37.0/go.mod h1:phzohg0JFMnBEFGxTDbfu3QyL5GI8gTQJFhYO5B3mfA= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= -github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/procfs v0.8.0 h1:ODq8ZFEaYeCaZOJlZZdJA2AbQR98dSHSM1KW/You5mo= -github.com/prometheus/procfs v0.8.0/go.mod h1:z7EfXMXOkbkqb9IINtpCn86r/to3BnA0uaxHdg830/4= +github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= +github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= +github.com/prometheus/common v0.42.0 h1:EKsfXEYo4JpWMHH5cg+KOUWeuJSov1Id8zGR8eeI1YM= +github.com/prometheus/common v0.42.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= +github.com/prometheus/procfs v0.10.1 h1:kYK1Va/YMlutzCGazswoHKo//tZVlFpKYh+PymziUAg= +github.com/prometheus/procfs v0.10.1/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475 h1:N/ElC8H3+5XpJzTSTfLsJV/mx9Q9g7kxmchpfZyxgzM= github.com/rcrowley/go-metrics v0.0.0-20201227073835-cf1acfcdf475/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/redis/go-redis/v9 v9.0.5 h1:CuQcn5HIEeK7BgElubPP8CGtE0KakrnbBSTLjathl5o= github.com/redis/go-redis/v9 v9.0.5/go.mod h1:WqMKv5vnQbRuZstUwxQI195wHy+t4PuXDOjzMvcuQHk= github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs= github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro= -github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= github.com/rs/xid v1.5.0 h1:mKX4bl4iPYJtEIxp6CYiUuLQ/8DYMoz0PUdtGgMFRVc= github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= -github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.9.2 h1:oxx1eChJGI6Uks2ZC4W1zpLlVgqB8ner4EuQwV4Ik1Y= github.com/sirupsen/logrus v1.9.2/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA= @@ -407,10 +286,8 @@ github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUq github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= @@ -426,36 +303,25 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.194/go.mod github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/kms v1.0.194/go.mod h1:yrBKWhChnDqNz1xuXdSbWXG56XawEq0G5j1lg4VwBD4= github.com/tencentyun/cos-go-sdk-v5 v0.7.41 h1:iU0Li/Np78H4SBna0ECQoF3mpgi6ImLXU+doGzPFXGc= github.com/tencentyun/cos-go-sdk-v5 v0.7.41/go.mod h1:4dCEtLHGh8QPxHEkgq+nFaky7yZxQuYwgSJM87icDaw= -github.com/tencentyun/qcloud-cos-sts-sdk v0.0.0-20210325043845-84a0811633ca h1:G/aIr3WiUesWHL2YGYgEqjM5tCAJ43Ml+0C18wDkWWs= -github.com/tencentyun/qcloud-cos-sts-sdk v0.0.0-20210325043845-84a0811633ca/go.mod h1:b18KQa4IxHbxeseW1GcZox53d7J0z39VNONTxvvlkXw= -github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4= -github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU= github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c= github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= -github.com/xdg-go/scram v1.0.2 h1:akYIkZ28e6A96dkWNJQu3nmCzH3YfwMPQExUYDaRv7w= -github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= -github.com/xdg-go/stringprep v1.0.2 h1:6iq84/ryjjeRmMJwxutI51F2GIPlP5BfTvXHeYjyhBc= -github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= +github.com/xdg-go/scram v1.1.2 h1:FHX5I5B4i4hKRVRBCFRxq1iQRej7WO3hhBuJf+UUySY= +github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3kKLN4= +github.com/xdg-go/stringprep v1.0.4 h1:XLI/Ng3O1Atzq0oBs3TWm+5ZVgkq2aqdlvP9JtoZ6c8= +github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM= github.com/xdg/scram v1.0.3/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I= github.com/xdg/stringprep v1.0.3/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA= github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= -github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -go.mongodb.org/mongo-driver v1.8.3 h1:TDKlTkGDKm9kkJVUOAXDK5/fkqKHJVwYQSpoRfB43R4= -go.mongodb.org/mongo-driver v1.8.3/go.mod h1:0sQWfOeY63QTntERDJJ/0SuKK0T1uVSgKCuAROlKEPY= -go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= -go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= -go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.mongodb.org/mongo-driver v1.12.0 h1:aPx33jmn/rQuJXPQLZQ8NtfPQG8CaqgLThFtqRb0PiE= +go.mongodb.org/mongo-driver v1.12.0/go.mod h1:AZkxhPnFJUoH7kZlFkVKucV20K387miPfm7oimrSmK0= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= @@ -468,291 +334,122 @@ go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= golang.org/x/arch v0.3.0 h1:02VY4/ZcO/gBOH6PUaoiptASxtXU10jazRCP865E97k= golang.org/x/arch v0.3.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201112155050-0c6587e931a9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20201216223049-8b5274cf687f/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.10.0 h1:LKqV2xt9+kDzSTfOhx4FrkEBcMrAgHSYgzywV9zcGmM= golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= -golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= -golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= -golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= -golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= -golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= -golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.3.0 h1:HTDXbdK9bjfSWkPzDJIw89W8CAtfFGduujWs33NLLsg= -golang.org/x/image v0.3.0/go.mod h1:fXd9211C/0VTlYuAcOhW8dY/RtEJqODXOWBDpmYBf+A= +golang.org/x/image v0.9.0 h1:QrzfX26snvCM20hIhBwuHI/ThTg18b/+kcKdXHvnR+g= +golang.org/x/image v0.9.0/go.mod h1:jtrku+n79PfroUbvDdeUWMAI+heR786BofxrbiSF+J0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= -golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= -golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= -golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= -golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= -golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210427231257-85d9c07bbe3a/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= -golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.11.0 h1:Gi2tvZIJyBtO9SDr1q9h5hEQCp/4L2RQ+ar0qjx2oNU= golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= +golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.9.0 h1:KS/R3tvhPqvJvwcKfnBHJwwthS11LRhmM5D59eEXa0s= golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.10.0 h1:UpjohKhiEgNc0CSauXmwYftY1+LlaC75SJwh0SgCX58= -golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= -golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= +golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/time v0.1.0 h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA= golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= -golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= -google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= -google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= -google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= -google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= -google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= -google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= -google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= google.golang.org/api v0.114.0 h1:1xQPji6cO2E2vLiI+C/XiFAnsn1WV3mjaEwGLhi3grE= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= -google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= -google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= -google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= -google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= -google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= -google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20230525234025-438c736192d0 h1:x1vNwUhVOcsYoKyEGCZBH694SBmmBjA2EfauFVEI2+M= google.golang.org/genproto v0.0.0-20230525234025-438c736192d0/go.mod h1:9ExIQyXL5hZrHzQceCwuSYwZZ5QZBazOcprJ5rgs3lY= google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a h1:HiYVD+FGJkTo+9zj1gqz0anapsa1JxjiSrN+BJKyUmE= @@ -760,20 +457,12 @@ google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a/go. google.golang.org/genproto/googleapis/rpc v0.0.0-20230626202813-9b080da550b3 h1:QJuqz7YzNTyKDspkp2lrzqtq4lf2AhUSpXTsGP5SbLw= google.golang.org/genproto/googleapis/rpc v0.0.0-20230626202813-9b080da550b3/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= -google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= -google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= -google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= -google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.54.0 h1:EhTqbhiYeixwWQtAEZAxmV9MGqcjEU2mFx52xCzNyag= -google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g= +google.golang.org/grpc v1.56.2 h1:fVRFRnXvU+x6C4IlHZewvJOVHoOv1TUuQyoRsYnB4bI= +google.golang.org/grpc v1.56.2/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -782,28 +471,21 @@ google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzi google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= @@ -813,16 +495,9 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gorm.io/driver/mysql v1.3.5 h1:iWBTVW/8Ij5AG4e0G/zqzaJblYkBI1VIL1LG2HUGsvY= gorm.io/driver/mysql v1.3.5/go.mod h1:sSIebwZAVPiT+27jK9HIwvsqOGKx3YMPmrA3mBJR10c= -gorm.io/gorm v1.23.8 h1:h8sGJ+biDgBA1AD1Ha9gFCx7h8npU7AsLdlkX0n2TpE= gorm.io/gorm v1.23.8/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk= +gorm.io/gorm v1.25.2 h1:gs1o6Vsa+oVKG/a9ElL3XgyGfghFfkKA2SInQaCyMho= +gorm.io/gorm v1.25.2/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= -rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= -rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/internal/api/auth.go b/internal/api/auth.go index e4353a5c4..11debbea9 100644 --- a/internal/api/auth.go +++ b/internal/api/auth.go @@ -17,9 +17,9 @@ package api import ( "github.com/gin-gonic/gin" - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/auth" + "github.com/OpenIMSDK/tools/a2r" ) type AuthApi rpcclient.Auth diff --git a/internal/api/conversation.go b/internal/api/conversation.go index 211ee362b..0d8b41e37 100644 --- a/internal/api/conversation.go +++ b/internal/api/conversation.go @@ -17,9 +17,9 @@ package api import ( "github.com/gin-gonic/gin" - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/tools/a2r" ) type ConversationApi rpcclient.Conversation diff --git a/internal/api/custom_validator.go b/internal/api/custom_validator.go index 42e50647f..7425ecb38 100644 --- a/internal/api/custom_validator.go +++ b/internal/api/custom_validator.go @@ -17,7 +17,7 @@ package api import ( "github.com/go-playground/validator/v10" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/tools/constant" ) func RequiredIf(fl validator.FieldLevel) bool { diff --git a/internal/api/friend.go b/internal/api/friend.go index 90214d899..7af614fa4 100644 --- a/internal/api/friend.go +++ b/internal/api/friend.go @@ -15,9 +15,9 @@ package api import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/friend" + "github.com/OpenIMSDK/tools/a2r" "github.com/gin-gonic/gin" ) diff --git a/internal/api/group.go b/internal/api/group.go index 00cdebeab..2603bb858 100644 --- a/internal/api/group.go +++ b/internal/api/group.go @@ -15,9 +15,9 @@ package api import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/tools/a2r" "github.com/gin-gonic/gin" ) diff --git a/internal/api/msg.go b/internal/api/msg.go index 41ab4dc48..d79be716b 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -20,17 +20,17 @@ import ( "github.com/mitchellh/mapstructure" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" "github.com/OpenIMSDK/Open-IM-Server/pkg/apistruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/a2r" + "github.com/OpenIMSDK/tools/apiresp" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) type MessageApi struct { diff --git a/internal/api/route.go b/internal/api/route.go index 2dfb9f6c4..453224263 100644 --- a/internal/api/route.go +++ b/internal/api/route.go @@ -16,6 +16,13 @@ package api import ( "context" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" + "github.com/OpenIMSDK/tools/apiresp" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tokenverify" + "net/http" "github.com/gin-gonic/gin" "github.com/gin-gonic/gin/binding" @@ -24,12 +31,12 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mw" ) func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.UniversalClient) *gin.Engine { @@ -59,7 +66,7 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive r.Use(prome.PrometheusMiddleware) r.GET("/metrics", prome.PrometheusHandler()) } - ParseToken := mw.GinParseToken(rdb) + ParseToken := GinParseToken(rdb) userRouterGroup := r.Group("/user") { userRouterGroup.POST("/user_register", u.UserRegister) @@ -186,3 +193,65 @@ func NewGinRouter(discov discoveryregistry.SvcDiscoveryRegistry, rdb redis.Unive } return r } + +func GinParseToken(rdb redis.UniversalClient) gin.HandlerFunc { + dataBase := controller.NewAuthDatabase( + cache.NewMsgCacheModel(rdb), + config.Config.Secret, + config.Config.TokenPolicy.Expire, + ) + return func(c *gin.Context) { + switch c.Request.Method { + case http.MethodPost: + token := c.Request.Header.Get(constant.Token) + if token == "" { + log.ZWarn(c, "header get token error", errs.ErrArgs.Wrap("header must have token")) + apiresp.GinError(c, errs.ErrArgs.Wrap("header must have token")) + c.Abort() + return + } + claims, err := tokenverify.GetClaimFromToken(token) + if err != nil { + log.ZWarn(c, "jwt get token error", errs.ErrTokenUnknown.Wrap()) + apiresp.GinError(c, errs.ErrTokenUnknown.Wrap()) + c.Abort() + return + } + m, err := dataBase.GetTokensWithoutError(c, claims.UserID, claims.PlatformID) + if err != nil { + log.ZWarn(c, "cache get token error", errs.ErrTokenNotExist.Wrap()) + apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) + c.Abort() + return + } + if len(m) == 0 { + log.ZWarn(c, "cache do not exist token error", errs.ErrTokenNotExist.Wrap()) + apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) + c.Abort() + return + } + if v, ok := m[token]; ok { + switch v { + case constant.NormalToken: + case constant.KickedToken: + log.ZWarn(c, "cache kicked token error", errs.ErrTokenKicked.Wrap()) + apiresp.GinError(c, errs.ErrTokenKicked.Wrap()) + c.Abort() + return + default: + log.ZWarn(c, "cache unknown token error", errs.ErrTokenUnknown.Wrap()) + apiresp.GinError(c, errs.ErrTokenUnknown.Wrap()) + c.Abort() + return + } + } else { + apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) + c.Abort() + return + } + c.Set(constant.OpUserPlatform, constant.PlatformIDToName(claims.PlatformID)) + c.Set(constant.OpUserID, claims.UserID) + c.Next() + } + } +} diff --git a/internal/api/statistics.go b/internal/api/statistics.go index dd8d01799..f267a0ec1 100644 --- a/internal/api/statistics.go +++ b/internal/api/statistics.go @@ -17,9 +17,9 @@ package api import ( "github.com/gin-gonic/gin" - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/user" + "github.com/OpenIMSDK/tools/a2r" ) type StatisticsApi rpcclient.User diff --git a/internal/api/third.go b/internal/api/third.go index 5bd38a5e8..e480d4c11 100644 --- a/internal/api/third.go +++ b/internal/api/third.go @@ -15,17 +15,16 @@ package api import ( + "github.com/gin-gonic/gin" "math/rand" "net/http" "strconv" - "github.com/gin-gonic/gin" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/third" + "github.com/OpenIMSDK/tools/a2r" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" ) type ThirdApi rpcclient.Third diff --git a/internal/api/user.go b/internal/api/user.go index 67c042ea4..c7bcf7862 100644 --- a/internal/api/user.go +++ b/internal/api/user.go @@ -17,15 +17,15 @@ package api import ( "github.com/gin-gonic/gin" - "github.com/OpenIMSDK/Open-IM-Server/pkg/a2r" - "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/msggateway" + "github.com/OpenIMSDK/protocol/user" + "github.com/OpenIMSDK/tools/a2r" + "github.com/OpenIMSDK/tools/apiresp" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" ) type UserApi rpcclient.User diff --git a/internal/msggateway/callback.go b/internal/msggateway/callback.go index d705e25f0..530c18102 100644 --- a/internal/msggateway/callback.go +++ b/internal/msggateway/callback.go @@ -19,10 +19,10 @@ import ( "time" cbapi "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/mcontext" ) func url() string { diff --git a/internal/msggateway/client.go b/internal/msggateway/client.go index 03e37fcc6..bc5fa1511 100644 --- a/internal/msggateway/client.go +++ b/internal/msggateway/client.go @@ -23,12 +23,12 @@ import ( "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/apiresp" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) var ( diff --git a/internal/msggateway/compressor.go b/internal/msggateway/compressor.go index 99b827454..0639fb4f0 100644 --- a/internal/msggateway/compressor.go +++ b/internal/msggateway/compressor.go @@ -19,7 +19,7 @@ import ( "compress/gzip" "io" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type Compressor interface { diff --git a/internal/msggateway/context.go b/internal/msggateway/context.go index e1d066467..672ba1dbe 100644 --- a/internal/msggateway/context.go +++ b/internal/msggateway/context.go @@ -19,8 +19,8 @@ import ( "strconv" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/utils" ) type UserConnContext struct { diff --git a/internal/msggateway/encoder.go b/internal/msggateway/encoder.go index 41ab02d0c..9791acb39 100644 --- a/internal/msggateway/encoder.go +++ b/internal/msggateway/encoder.go @@ -18,7 +18,7 @@ import ( "bytes" "encoding/gob" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type Encoder interface { diff --git a/internal/msggateway/http_error.go b/internal/msggateway/http_error.go index 03121aba3..03881cf27 100644 --- a/internal/msggateway/http_error.go +++ b/internal/msggateway/http_error.go @@ -14,7 +14,7 @@ package msggateway -import "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" +import "github.com/OpenIMSDK/tools/apiresp" func httpError(ctx *UserConnContext, err error) { apiresp.HttpError(ctx.RespWriter, err) diff --git a/internal/msggateway/hub_server.go b/internal/msggateway/hub_server.go index 4e1586969..dc440a7c8 100644 --- a/internal/msggateway/hub_server.go +++ b/internal/msggateway/hub_server.go @@ -18,19 +18,19 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tokenverify" "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" - "github.com/OpenIMSDK/Open-IM-Server/pkg/startrpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msggateway" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/startrpc" + "github.com/OpenIMSDK/tools/utils" ) func (s *Server) InitServer(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error { diff --git a/internal/msggateway/init.go b/internal/msggateway/init.go index 3ec2a56ac..b6d4d3b58 100644 --- a/internal/msggateway/init.go +++ b/internal/msggateway/init.go @@ -18,7 +18,7 @@ import ( "fmt" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) func RunWsAndServer(rpcPort, wsPort, prometheusPort int) error { diff --git a/internal/msggateway/message_handler.go b/internal/msggateway/message_handler.go index bc650aae6..8e3512238 100644 --- a/internal/msggateway/message_handler.go +++ b/internal/msggateway/message_handler.go @@ -17,16 +17,16 @@ package msggateway import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push" + "github.com/OpenIMSDK/protocol/push" + "github.com/OpenIMSDK/tools/discoveryregistry" "github.com/go-playground/validator/v10" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/utils" ) type Req struct { diff --git a/internal/msggateway/n_ws_server.go b/internal/msggateway/n_ws_server.go index c2b46cf1f..9715f21b6 100644 --- a/internal/msggateway/n_ws_server.go +++ b/internal/msggateway/n_ws_server.go @@ -23,20 +23,20 @@ import ( "sync/atomic" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" "github.com/redis/go-redis/v9" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" + "github.com/OpenIMSDK/tools/discoveryregistry" "github.com/go-playground/validator/v10" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) type LongConnServer interface { diff --git a/internal/msggateway/user_map.go b/internal/msggateway/user_map.go index 7e62557b2..052d7de2d 100644 --- a/internal/msggateway/user_map.go +++ b/internal/msggateway/user_map.go @@ -18,8 +18,8 @@ import ( "context" "sync" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" ) type UserMap struct { diff --git a/internal/msgtransfer/init.go b/internal/msgtransfer/init.go index 61e154655..037564f7a 100644 --- a/internal/msgtransfer/init.go +++ b/internal/msgtransfer/init.go @@ -22,17 +22,17 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - openKeeper "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry/zookeeper" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/tools/config" + openKeeper "github.com/OpenIMSDK/tools/discoveryregistry/zookeeper" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mw" ) type MsgTransfer struct { @@ -67,7 +67,7 @@ func StartTransfer(prometheusPort int) error { if err != nil { return err } - if client.CreateRpcRootNodes(config.GetServiceNames()); err != nil { + if err := client.CreateRpcRootNodes(config.Config.GetServiceNames()); err != nil { return err } client.AddOption(mw.GrpcClient(), grpc.WithTransportCredentials(insecure.NewCredentials())) diff --git a/internal/msgtransfer/online_history_msg_handler.go b/internal/msgtransfer/online_history_msg_handler.go index 2a6f69f1a..19121334a 100644 --- a/internal/msgtransfer/online_history_msg_handler.go +++ b/internal/msgtransfer/online_history_msg_handler.go @@ -21,21 +21,21 @@ import ( "sync" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" "github.com/Shopify/sarama" "github.com/go-redis/redis" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/internal/msgtransfer/online_msg_to_mongo_handler.go b/internal/msgtransfer/online_msg_to_mongo_handler.go index f2f14f0ed..9ba4cb7b9 100644 --- a/internal/msgtransfer/online_msg_to_mongo_handler.go +++ b/internal/msgtransfer/online_msg_to_mongo_handler.go @@ -20,11 +20,11 @@ import ( "github.com/Shopify/sarama" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + pbMsg "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/log" ) type OnlineHistoryMongoConsumerHandler struct { diff --git a/internal/msgtransfer/persistent_msg_handler.go b/internal/msgtransfer/persistent_msg_handler.go index debc4905f..7256a3442 100644 --- a/internal/msgtransfer/persistent_msg_handler.go +++ b/internal/msgtransfer/persistent_msg_handler.go @@ -17,13 +17,13 @@ package msgtransfer import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbMsg "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" "github.com/Shopify/sarama" "google.golang.org/protobuf/proto" diff --git a/internal/push/callback.go b/internal/push/callback.go index a3387905e..bbc392a6e 100644 --- a/internal/push/callback.go +++ b/internal/push/callback.go @@ -18,13 +18,13 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func url() string { @@ -57,7 +57,7 @@ func callbackOfflinePush( ContentType: msg.ContentType, SessionType: msg.SessionType, AtUserIDs: msg.AtUserIDList, - Content: utils.GetContent(msg), + Content: GetContent(msg), } resp := &callbackstruct.CallbackBeforePushResp{} if err := http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOfflinePush); err != nil { @@ -95,7 +95,7 @@ func callbackOnlinePush(ctx context.Context, userIDs []string, msg *sdkws.MsgDat ContentType: msg.ContentType, SessionType: msg.SessionType, AtUserIDs: msg.AtUserIDList, - Content: utils.GetContent(msg), + Content: GetContent(msg), } resp := &callbackstruct.CallbackBeforePushResp{} return http.CallBackPostReturn(ctx, url(), req, resp, config.Config.Callback.CallbackOnlinePush) @@ -123,7 +123,7 @@ func callbackBeforeSuperGroupOnlinePush( ContentType: msg.ContentType, SessionType: msg.SessionType, AtUserIDs: msg.AtUserIDList, - Content: utils.GetContent(msg), + Content: GetContent(msg), Seq: msg.Seq, } resp := &callbackstruct.CallbackBeforeSuperGroupOnlinePushResp{} diff --git a/internal/push/offlinepush/fcm/push.go b/internal/push/offlinepush/fcm/push.go index a5294961d..8f29f0258 100644 --- a/internal/push/offlinepush/fcm/push.go +++ b/internal/push/offlinepush/fcm/push.go @@ -16,6 +16,7 @@ package fcm import ( "context" + config2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "path/filepath" firebase "firebase.google.com/go" @@ -24,9 +25,9 @@ import ( "google.golang.org/api/option" "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" ) const SinglePushCountLimit = 400 @@ -39,7 +40,7 @@ type Fcm struct { } func NewClient(cache cache.MsgModel) *Fcm { - opt := option.WithCredentialsFile(filepath.Join(config.Root, "config", config.Config.Push.Fcm.ServiceAccount)) + opt := option.WithCredentialsFile(filepath.Join(config2.Root, "config", config.Config.Push.Fcm.ServiceAccount)) fcmApp, err := firebase.NewApp(context.Background(), nil, opt) if err != nil { return nil diff --git a/internal/push/offlinepush/getui/body.go b/internal/push/offlinepush/getui/body.go index 915c6f603..43fcc84cc 100644 --- a/internal/push/offlinepush/getui/body.go +++ b/internal/push/offlinepush/getui/body.go @@ -17,7 +17,7 @@ package getui import ( "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) type Resp struct { diff --git a/internal/push/offlinepush/getui/push.go b/internal/push/offlinepush/getui/push.go index ada5ac8b6..b440ef71b 100644 --- a/internal/push/offlinepush/getui/push.go +++ b/internal/push/offlinepush/getui/push.go @@ -26,15 +26,15 @@ import ( "github.com/go-redis/redis" "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" http2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils/splitter" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils/splitter" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) var ( diff --git a/internal/push/offlinepush/jpush/body/notification.go b/internal/push/offlinepush/jpush/body/notification.go index cec725784..85581cb1f 100644 --- a/internal/push/offlinepush/jpush/body/notification.go +++ b/internal/push/offlinepush/jpush/body/notification.go @@ -15,7 +15,7 @@ package body import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" ) type Notification struct { diff --git a/internal/push/offlinepush/jpush/body/platform.go b/internal/push/offlinepush/jpush/body/platform.go index a4bc1526c..c779c8bdc 100644 --- a/internal/push/offlinepush/jpush/body/platform.go +++ b/internal/push/offlinepush/jpush/body/platform.go @@ -17,7 +17,7 @@ package body import ( "errors" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/tools/constant" ) const ( diff --git a/internal/push/offlinepush/jpush/push.go b/internal/push/offlinepush/jpush/push.go index 64933db50..d661daee9 100644 --- a/internal/push/offlinepush/jpush/push.go +++ b/internal/push/offlinepush/jpush/push.go @@ -21,8 +21,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush" "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush/jpush/body" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" http2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" + "github.com/OpenIMSDK/tools/config" ) type JPush struct{} diff --git a/internal/push/push_handler.go b/internal/push/push_handler.go index 0822c3505..f0a67faac 100644 --- a/internal/push/push_handler.go +++ b/internal/push/push_handler.go @@ -20,13 +20,13 @@ import ( "github.com/Shopify/sarama" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - pbChat "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - pbPush "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbChat "github.com/OpenIMSDK/protocol/msg" + pbPush "github.com/OpenIMSDK/protocol/push" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" ) type ConsumerHandler struct { diff --git a/internal/push/push_rpc_server.go b/internal/push/push_rpc_server.go index 1b84a1b82..dfcf07469 100644 --- a/internal/push/push_rpc_server.go +++ b/internal/push/push_rpc_server.go @@ -20,14 +20,14 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/localcache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - pbPush "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + pbPush "github.com/OpenIMSDK/protocol/push" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/log" ) type pushServer struct { diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index 0583b453d..de6b78782 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -23,19 +23,19 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush/fcm" "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush/getui" "github.com/OpenIMSDK/Open-IM-Server/internal/push/offlinepush/jpush" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/localcache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msggateway" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) type Pusher struct { diff --git a/internal/push/tools.go b/internal/push/tools.go new file mode 100644 index 000000000..ea8d160b1 --- /dev/null +++ b/internal/push/tools.go @@ -0,0 +1,18 @@ +package push + +import ( + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "google.golang.org/protobuf/proto" +) + +func GetContent(msg *sdkws.MsgData) string { + if msg.ContentType >= constant.NotificationBegin && msg.ContentType <= constant.NotificationEnd { + var tips sdkws.TipsComm + _ = proto.Unmarshal(msg.Content, &tips) + content := tips.JsonDetail + return content + } else { + return string(msg.Content) + } +} diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index 317754743..48e4e5922 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -19,19 +19,19 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbAuth "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbAuth "github.com/OpenIMSDK/protocol/auth" + "github.com/OpenIMSDK/protocol/msggateway" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) type authServer struct { diff --git a/internal/rpc/conversation/conversaion.go b/internal/rpc/conversation/conversaion.go index f3745ace1..e27756749 100644 --- a/internal/rpc/conversation/conversaion.go +++ b/internal/rpc/conversation/conversaion.go @@ -19,20 +19,20 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" tableRelation "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbConversation "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type conversationServer struct { diff --git a/internal/rpc/friend/black.go b/internal/rpc/friend/black.go index 23aa8efa3..6f7ed58dd 100644 --- a/internal/rpc/friend/black.go +++ b/internal/rpc/friend/black.go @@ -20,9 +20,9 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - pbFriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" + pbFriend "github.com/OpenIMSDK/protocol/friend" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/tokenverify" ) func (s *friendServer) GetPaginationBlacks( diff --git a/internal/rpc/friend/callback.go b/internal/rpc/friend/callback.go index 478988f11..d3a793a6f 100644 --- a/internal/rpc/friend/callback.go +++ b/internal/rpc/friend/callback.go @@ -18,12 +18,12 @@ import ( "context" cbapi "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbfriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" + pbfriend "github.com/OpenIMSDK/protocol/friend" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" ) func CallbackBeforeAddFriend(ctx context.Context, req *pbfriend.ApplyToAddFriendReq) error { diff --git a/internal/rpc/friend/friend.go b/internal/rpc/friend/friend.go index f511305a4..5792fdb38 100644 --- a/internal/rpc/friend/friend.go +++ b/internal/rpc/friend/friend.go @@ -18,23 +18,23 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/tools/log" "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" tablerelation "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - registry "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbfriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbfriend "github.com/OpenIMSDK/protocol/friend" + "github.com/OpenIMSDK/tools/constant" + registry "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type friendServer struct { @@ -83,6 +83,11 @@ func Start(client registry.SvcDiscoveryRegistry, server *grpc.Server) error { return nil } +func (s *friendServer) GetDesignatedFriendsApply(ctx context.Context, req *pbfriend.GetDesignatedFriendsApplyReq) (*pbfriend.GetDesignatedFriendsApplyResp, error) { + //TODO implement me + panic("implement me") +} + // ok. func (s *friendServer) ApplyToAddFriend( ctx context.Context, @@ -249,8 +254,7 @@ func (s *friendServer) GetPaginationFriendsApplyTo( if err := s.userRpcClient.Access(ctx, req.UserID); err != nil { return nil, err } - pageNumber, showNumber := utils.GetPage(req.Pagination) - friendRequests, total, err := s.friendDatabase.PageFriendRequestToMe(ctx, req.UserID, pageNumber, showNumber) + friendRequests, total, err := s.friendDatabase.PageFriendRequestToMe(ctx, req.UserID, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { return nil, err } @@ -273,8 +277,7 @@ func (s *friendServer) GetPaginationFriendsApplyFrom( if err := s.userRpcClient.Access(ctx, req.UserID); err != nil { return nil, err } - pageNumber, showNumber := utils.GetPage(req.Pagination) - friendRequests, total, err := s.friendDatabase.PageFriendRequestFromMe(ctx, req.UserID, pageNumber, showNumber) + friendRequests, total, err := s.friendDatabase.PageFriendRequestFromMe(ctx, req.UserID, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { return nil, err } @@ -309,8 +312,7 @@ func (s *friendServer) GetPaginationFriends( if err := s.userRpcClient.Access(ctx, req.UserID); err != nil { return nil, err } - pageNumber, showNumber := utils.GetPage(req.Pagination) - friends, total, err := s.friendDatabase.PageOwnerFriends(ctx, req.UserID, pageNumber, showNumber) + friends, total, err := s.friendDatabase.PageOwnerFriends(ctx, req.UserID, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { return nil, err } diff --git a/internal/rpc/group/cache.go b/internal/rpc/group/cache.go index 3c71eb2a9..6275292b6 100644 --- a/internal/rpc/group/cache.go +++ b/internal/rpc/group/cache.go @@ -18,7 +18,7 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" + pbGroup "github.com/OpenIMSDK/protocol/group" ) func (s *groupServer) GetGroupInfoCache( diff --git a/internal/rpc/group/callback.go b/internal/rpc/group/callback.go index acab0ea0d..2f85a6674 100644 --- a/internal/rpc/group/callback.go +++ b/internal/rpc/group/callback.go @@ -20,15 +20,15 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/apistruct" "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/protocol/wrapperspb" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func CallbackBeforeCreateGroup(ctx context.Context, req *group.CreateGroupReq) (err error) { diff --git a/internal/rpc/group/convert.go b/internal/rpc/group/convert.go index c0a03aa4e..22dbfda5f 100644 --- a/internal/rpc/group/convert.go +++ b/internal/rpc/group/convert.go @@ -16,7 +16,7 @@ package group import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/sdkws" ) func (s *groupServer) groupDB2PB(group *relation.GroupModel, ownerUserID string, memberCount uint32) *sdkws.GroupInfo { diff --git a/internal/rpc/group/db_map.go b/internal/rpc/group/db_map.go index 7940635bd..bdb4d41d2 100644 --- a/internal/rpc/group/db_map.go +++ b/internal/rpc/group/db_map.go @@ -18,10 +18,10 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" + "github.com/OpenIMSDK/tools/mcontext" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + pbGroup "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/protocol/sdkws" ) func UpdateGroupInfoMap(ctx context.Context, group *sdkws.GroupInfoForSet) map[string]any { diff --git a/internal/rpc/group/fill.go b/internal/rpc/group/fill.go index 47b536301..9cf15f8a2 100644 --- a/internal/rpc/group/fill.go +++ b/internal/rpc/group/fill.go @@ -18,7 +18,7 @@ import ( "context" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) func (s *groupServer) FindGroupMember( diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index b61170558..4c041e13a 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -23,31 +23,31 @@ import ( "strings" "time" - pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" + pbConversation "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/protocol/wrapperspb" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/tools/mw/specialerror" "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbGroup "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error { @@ -94,6 +94,11 @@ type groupServer struct { msgRpcClient rpcclient.MessageRpcClient } +func (s *groupServer) GetGroupUsersReqApplicationList(ctx context.Context, req *pbGroup.GetGroupUsersReqApplicationListReq) (*pbGroup.GetGroupUsersReqApplicationListResp, error) { + //TODO implement me + panic("implement me") +} + func (s *groupServer) CheckGroupAdmin(ctx context.Context, groupID string) error { if !tokenverify.IsAppManagerUid(ctx) { groupMember, err := s.GroupDatabase.TakeGroupMember(ctx, groupID, mcontext.GetOpUserID(ctx)) @@ -577,8 +582,6 @@ func (s *groupServer) GetGroupMembersInfo(ctx context.Context, req *pbGroup.GetG } func (s *groupServer) GetGroupApplicationList(ctx context.Context, req *pbGroup.GetGroupApplicationListReq) (*pbGroup.GetGroupApplicationListResp, error) { - pageNumber, showNumber := utils.GetPage(req.Pagination) - groupIDs, err := s.GroupDatabase.FindUserManagedGroupID(ctx, req.FromUserID) if err != nil { return nil, err @@ -587,7 +590,7 @@ func (s *groupServer) GetGroupApplicationList(ctx context.Context, req *pbGroup. if len(groupIDs) == 0 { return resp, nil } - total, groupRequests, err := s.GroupDatabase.PageGroupRequest(ctx, groupIDs, pageNumber, showNumber) + total, groupRequests, err := s.GroupDatabase.PageGroupRequest(ctx, groupIDs, req.Pagination.PageNumber, req.Pagination.ShowNumber) if err != nil { return nil, err } diff --git a/internal/rpc/group/statistics.go b/internal/rpc/group/statistics.go index d638cb6fd..8aeefbee3 100644 --- a/internal/rpc/group/statistics.go +++ b/internal/rpc/group/statistics.go @@ -18,8 +18,8 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" + "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/tools/errs" ) func (s *groupServer) GroupCreateCount(ctx context.Context, req *group.GroupCreateCountReq) (*group.GroupCreateCountResp, error) { diff --git a/internal/rpc/group/super_group.go b/internal/rpc/group/super_group.go index 2e174f956..bdd810ba9 100644 --- a/internal/rpc/group/super_group.go +++ b/internal/rpc/group/super_group.go @@ -19,14 +19,14 @@ import ( "fmt" "strings" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbGroup "github.com/OpenIMSDK/protocol/group" + sdkws "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/utils" ) func (s *groupServer) GetJoinedSuperGroupList( diff --git a/internal/rpc/msg/as_read.go b/internal/rpc/msg/as_read.go index f83c2ad80..c2f07bd8e 100644 --- a/internal/rpc/msg/as_read.go +++ b/internal/rpc/msg/as_read.go @@ -19,11 +19,11 @@ import ( "github.com/redis/go-redis/v9" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" ) func (m *msgServer) GetConversationsHasReadAndMaxSeq(ctx context.Context, req *msg.GetConversationsHasReadAndMaxSeqReq) (*msg.GetConversationsHasReadAndMaxSeqResp, error) { diff --git a/internal/rpc/msg/callback.go b/internal/rpc/msg/callback.go index 2d4988adf..47bd1f0f1 100644 --- a/internal/rpc/msg/callback.go +++ b/internal/rpc/msg/callback.go @@ -16,16 +16,18 @@ package msg import ( "context" + "github.com/OpenIMSDK/protocol/sdkws" + "google.golang.org/protobuf/proto" cbapi "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbChat "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbChat "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func cbURL() string { @@ -48,12 +50,23 @@ func toCommonCallback(ctx context.Context, msg *pbChat.SendMsgReq, command strin CreateTime: msg.MsgData.CreateTime, AtUserIDList: msg.MsgData.AtUserIDList, SenderFaceURL: msg.MsgData.SenderFaceURL, - Content: utils.GetContent(msg.MsgData), + Content: GetContent(msg.MsgData), Seq: uint32(msg.MsgData.Seq), Ex: msg.MsgData.Ex, } } +func GetContent(msg *sdkws.MsgData) string { + if msg.ContentType >= constant.NotificationBegin && msg.ContentType <= constant.NotificationEnd { + var tips sdkws.TipsComm + _ = proto.Unmarshal(msg.Content, &tips) + content := tips.JsonDetail + return content + } else { + return string(msg.Content) + } +} + func callbackBeforeSendSingleMsg(ctx context.Context, msg *pbChat.SendMsgReq) error { if !config.Config.Callback.CallbackBeforeSendSingleMsg.Enable { return nil diff --git a/internal/rpc/msg/delete.go b/internal/rpc/msg/delete.go index d2ead459e..8c20a5bc3 100644 --- a/internal/rpc/msg/delete.go +++ b/internal/rpc/msg/delete.go @@ -17,13 +17,13 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) func (m *msgServer) getMinSeqs(maxSeqs map[string]int64) map[string]int64 { diff --git a/internal/rpc/msg/message_interceptor.go b/internal/rpc/msg/message_interceptor.go index 49a330d5e..915a04ab1 100644 --- a/internal/rpc/msg/message_interceptor.go +++ b/internal/rpc/msg/message_interceptor.go @@ -17,11 +17,11 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" ) type MessageInterceptorFunc func(ctx context.Context, req *msg.SendMsgReq) (*sdkws.MsgData, error) diff --git a/internal/rpc/msg/msg_status.go b/internal/rpc/msg/msg_status.go index f9ab0d09c..bd89d61f4 100644 --- a/internal/rpc/msg/msg_status.go +++ b/internal/rpc/msg/msg_status.go @@ -17,9 +17,9 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + pbMsg "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/mcontext" ) func (m *msgServer) SetSendMsgStatus( diff --git a/internal/rpc/msg/revoke.go b/internal/rpc/msg/revoke.go index c95d347e7..5651e79e0 100644 --- a/internal/rpc/msg/revoke.go +++ b/internal/rpc/msg/revoke.go @@ -19,14 +19,14 @@ import ( "encoding/json" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) func (m *msgServer) RevokeMsg(ctx context.Context, req *msg.RevokeMsgReq) (*msg.RevokeMsgResp, error) { diff --git a/internal/rpc/msg/send.go b/internal/rpc/msg/send.go index a568154c7..2c5df6408 100644 --- a/internal/rpc/msg/send.go +++ b/internal/rpc/msg/send.go @@ -17,16 +17,16 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" promePkg "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbConversation "github.com/OpenIMSDK/protocol/conversation" + pbMsg "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/protocol/wrapperspb" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func (m *msgServer) SendMsg(ctx context.Context, req *pbMsg.SendMsgReq) (resp *pbMsg.SendMsgResp, error error) { diff --git a/internal/rpc/msg/seq.go b/internal/rpc/msg/seq.go index ac771d3ee..8dabc7ac4 100644 --- a/internal/rpc/msg/seq.go +++ b/internal/rpc/msg/seq.go @@ -17,7 +17,7 @@ package msg import ( "context" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + pbMsg "github.com/OpenIMSDK/protocol/msg" ) func (m *msgServer) GetConversationMaxSeq( diff --git a/internal/rpc/msg/server.go b/internal/rpc/msg/server.go index e88d55bd1..542f59d4b 100644 --- a/internal/rpc/msg/server.go +++ b/internal/rpc/msg/server.go @@ -19,16 +19,16 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/localcache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" ) type ( diff --git a/internal/rpc/msg/statistics.go b/internal/rpc/msg/statistics.go index c7d04f5ef..c5a4658bb 100644 --- a/internal/rpc/msg/statistics.go +++ b/internal/rpc/msg/statistics.go @@ -19,9 +19,9 @@ import ( "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/utils" ) func (m *msgServer) GetActiveUser(ctx context.Context, req *msg.GetActiveUserReq) (*msg.GetActiveUserResp, error) { diff --git a/internal/rpc/msg/sync_msg.go b/internal/rpc/msg/sync_msg.go index e05bd5644..edcb4ff89 100644 --- a/internal/rpc/msg/sync_msg.go +++ b/internal/rpc/msg/sync_msg.go @@ -17,13 +17,13 @@ package msg import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/tools/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) func (m *msgServer) PullMessageBySeqs( diff --git a/internal/rpc/msg/utils.go b/internal/rpc/msg/utils.go index 10eccbcff..48f7b03f3 100644 --- a/internal/rpc/msg/utils.go +++ b/internal/rpc/msg/utils.go @@ -18,10 +18,10 @@ import ( "github.com/redis/go-redis/v9" "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/utils" ) func isMessageHasReadEnabled(msgData *sdkws.MsgData) bool { diff --git a/internal/rpc/msg/verify.go b/internal/rpc/msg/verify.go index 3a0276e28..32c05ec82 100644 --- a/internal/rpc/msg/verify.go +++ b/internal/rpc/msg/verify.go @@ -20,12 +20,12 @@ import ( "strconv" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/utils" ) var ExcludeContentType = []int{constant.HasReadReceipt} diff --git a/internal/rpc/third/s3.go b/internal/rpc/third/s3.go index 7873d4c54..38b0eb03c 100644 --- a/internal/rpc/third/s3.go +++ b/internal/rpc/third/s3.go @@ -20,11 +20,11 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3/cont" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/third" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func (t *thirdServer) PartLimit(ctx context.Context, req *third.PartLimitReq) (*third.PartLimitResp, error) { diff --git a/internal/rpc/third/third.go b/internal/rpc/third/third.go index e991be195..5db6c39e4 100644 --- a/internal/rpc/third/third.go +++ b/internal/rpc/third/third.go @@ -27,14 +27,14 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/third" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" ) func Start(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error { diff --git a/internal/rpc/third/tool.go b/internal/rpc/third/tool.go index e6b1f7e17..5a7d1697b 100644 --- a/internal/rpc/third/tool.go +++ b/internal/rpc/third/tool.go @@ -21,10 +21,10 @@ import ( "strings" "unicode/utf8" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" + "github.com/OpenIMSDK/protocol/third" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/tokenverify" ) func toPbMapArray(m map[string][]string) []*third.KeyValues { diff --git a/internal/rpc/user/statistics.go b/internal/rpc/user/statistics.go index dc11b8a90..42068f2ce 100644 --- a/internal/rpc/user/statistics.go +++ b/internal/rpc/user/statistics.go @@ -18,8 +18,8 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbuser "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" + pbuser "github.com/OpenIMSDK/protocol/user" + "github.com/OpenIMSDK/tools/errs" ) func (s *userServer) UserRegisterCount( diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 3b54d73eb..65e977274 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -20,27 +20,27 @@ import ( "strings" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" tablerelation "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - registry "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - pbuser "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" + "github.com/OpenIMSDK/protocol/sdkws" + pbuser "github.com/OpenIMSDK/protocol/user" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + registry "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/tx" "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type userServer struct { diff --git a/internal/tools/conversation.go b/internal/tools/conversation.go index 2651cf10e..4adec99ee 100644 --- a/internal/tools/conversation.go +++ b/internal/tools/conversation.go @@ -18,9 +18,9 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func (c *MsgTool) ConversationsDestructMsgs() { diff --git a/internal/tools/cron_task.go b/internal/tools/cron_task.go index 5e4183615..354682f8e 100644 --- a/internal/tools/cron_task.go +++ b/internal/tools/cron_task.go @@ -21,8 +21,8 @@ import ( "github.com/robfig/cron/v3" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/log" ) func StartCronTask() error { diff --git a/internal/tools/msg.go b/internal/tools/msg.go index 76299b6ac..8e67bc350 100644 --- a/internal/tools/msg.go +++ b/internal/tools/msg.go @@ -24,20 +24,20 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry/zookeeper" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/notification" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry/zookeeper" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/mw" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type MsgTool struct { diff --git a/internal/tools/msg_test.go b/internal/tools/msg_test.go index 4b1ea0384..f4ce4d054 100644 --- a/internal/tools/msg_test.go +++ b/internal/tools/msg_test.go @@ -20,10 +20,10 @@ import ( "go.mongodb.org/mongo-driver/bson" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" diff --git a/pkg/a2r/api2rpc.go b/pkg/a2r/api2rpc.go deleted file mode 100644 index 6a1651a3c..000000000 --- a/pkg/a2r/api2rpc.go +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package a2r - -import ( - "context" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/checker" - - "github.com/gin-gonic/gin" - "google.golang.org/grpc" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -func Call[A, B, C any]( - rpc func(client C, ctx context.Context, req *A, options ...grpc.CallOption) (*B, error), - client C, - c *gin.Context, -) { - var req A - if err := c.BindJSON(&req); err != nil { - log.ZWarn(c, "gin bind json error", err, "req", req) - apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap()) // 参数错误 - return - } - if err := checker.Validate(&req); err != nil { - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) // 参数校验失败 - return - } - data, err := rpc(client, c, &req) - if err != nil { - apiresp.GinError(c, err) // RPC调用失败 - return - } - apiresp.GinSuccess(c, data) // 成功 -} diff --git a/pkg/apiresp/format.go b/pkg/apiresp/format.go deleted file mode 100644 index b53f31cbd..000000000 --- a/pkg/apiresp/format.go +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apiresp - -type ApiFormat interface { - ApiFormat() -} diff --git a/pkg/apiresp/gin.go b/pkg/apiresp/gin.go deleted file mode 100644 index 9d5637bfd..000000000 --- a/pkg/apiresp/gin.go +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apiresp - -import ( - "net/http" - - "github.com/gin-gonic/gin" -) - -func GinError(c *gin.Context, err error) { - c.JSON(http.StatusOK, ParseError(err)) -} - -func GinSuccess(c *gin.Context, data any) { - c.JSON(http.StatusOK, ApiSuccess(data)) -} diff --git a/pkg/apiresp/http.go b/pkg/apiresp/http.go deleted file mode 100644 index db1c847cf..000000000 --- a/pkg/apiresp/http.go +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apiresp - -import ( - "encoding/json" - "net/http" -) - -func httpJson(w http.ResponseWriter, data any) { - body, err := json.Marshal(data) - if err != nil { - http.Error(w, "json marshal error: "+err.Error(), http.StatusInternalServerError) - return - } - w.Header().Set("Content-Type", "application/json; charset=utf-8") - w.WriteHeader(http.StatusOK) - _, _ = w.Write(body) -} - -func HttpError(w http.ResponseWriter, err error) { - httpJson(w, ParseError(err)) -} - -func HttpSuccess(w http.ResponseWriter, data any) { - httpJson(w, ApiSuccess(data)) -} diff --git a/pkg/apiresp/resp.go b/pkg/apiresp/resp.go deleted file mode 100644 index 638c70dbe..000000000 --- a/pkg/apiresp/resp.go +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package apiresp - -import ( - "reflect" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -type ApiResponse struct { - ErrCode int `json:"errCode"` - ErrMsg string `json:"errMsg"` - ErrDlt string `json:"errDlt"` - Data any `json:"data,omitempty"` -} - -func isAllFieldsPrivate(v any) bool { - typeOf := reflect.TypeOf(v) - if typeOf == nil { - return false - } - if typeOf.Kind() == reflect.Ptr { - typeOf = typeOf.Elem() - } - if typeOf.Kind() != reflect.Struct { - return false - } - num := typeOf.NumField() - for i := 0; i < num; i++ { - c := typeOf.Field(i).Name[0] - if c >= 'A' && c <= 'Z' { - return false - } - } - return true -} - -func ApiSuccess(data any) *ApiResponse { - if format, ok := data.(ApiFormat); ok { - format.ApiFormat() - } - if isAllFieldsPrivate(data) { - return &ApiResponse{} - } - return &ApiResponse{ - Data: data, - } -} - -func ParseError(err error) *ApiResponse { - if err == nil { - return ApiSuccess(nil) - } - unwrap := errs.Unwrap(err) - if codeErr, ok := unwrap.(errs.CodeError); ok { - resp := ApiResponse{ErrCode: codeErr.Code(), ErrMsg: codeErr.Msg(), ErrDlt: codeErr.Detail()} - if resp.ErrDlt == "" { - resp.ErrDlt = err.Error() - } - return &resp - } - return &ApiResponse{ErrCode: errs.ServerInternalError, ErrMsg: err.Error()} -} diff --git a/pkg/apistruct/manage.go b/pkg/apistruct/manage.go index 6a92f40aa..3a2945b37 100644 --- a/pkg/apistruct/manage.go +++ b/pkg/apistruct/manage.go @@ -15,7 +15,7 @@ package apistruct import ( - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + sdkws "github.com/OpenIMSDK/protocol/sdkws" ) type SendMsg struct { diff --git a/pkg/callbackstruct/common.go b/pkg/callbackstruct/common.go index 4a83bb09f..ef84d52b9 100644 --- a/pkg/callbackstruct/common.go +++ b/pkg/callbackstruct/common.go @@ -15,7 +15,7 @@ package callbackstruct import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" ) type CommonCallbackReq struct { diff --git a/pkg/callbackstruct/group.go b/pkg/callbackstruct/group.go index 558ad4d23..940356e41 100644 --- a/pkg/callbackstruct/group.go +++ b/pkg/callbackstruct/group.go @@ -16,7 +16,7 @@ package callbackstruct import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/apistruct" - common "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + common "github.com/OpenIMSDK/protocol/sdkws" ) type CallbackCommand string diff --git a/pkg/callbackstruct/message.go b/pkg/callbackstruct/message.go index dabdc1d55..f404088e8 100644 --- a/pkg/callbackstruct/message.go +++ b/pkg/callbackstruct/message.go @@ -15,7 +15,7 @@ package callbackstruct import ( - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + sdkws "github.com/OpenIMSDK/protocol/sdkws" ) type CallbackBeforeSendSingleMsgReq struct { diff --git a/pkg/callbackstruct/push.go b/pkg/callbackstruct/push.go index cac37330a..0566c35e2 100644 --- a/pkg/callbackstruct/push.go +++ b/pkg/callbackstruct/push.go @@ -14,7 +14,7 @@ package callbackstruct -import common "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" +import common "github.com/OpenIMSDK/protocol/sdkws" type CallbackBeforePushReq struct { UserStatusBatchCallbackReq diff --git a/pkg/checker/check.go b/pkg/checker/check.go deleted file mode 100644 index f3f3811a4..000000000 --- a/pkg/checker/check.go +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package checker - -type Checker interface { - Check() error -} - -func Validate(args any) error { - if checker, ok := args.(Checker); ok { - if err := checker.Check(); err != nil { - return err - } - } - return nil -} diff --git a/pkg/common/cmd/msg_gateway.go b/pkg/common/cmd/msg_gateway.go index 6629b2d2c..f7b7a03ea 100644 --- a/pkg/common/cmd/msg_gateway.go +++ b/pkg/common/cmd/msg_gateway.go @@ -19,7 +19,7 @@ import ( //"github.com/OpenIMSDK/Open-IM-Server/internal/msggateway". "github.com/spf13/cobra" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/tools/constant" ) type MsgGatewayCmd struct { diff --git a/pkg/common/cmd/root.go b/pkg/common/cmd/root.go index c5fce2c95..718d9bf7b 100644 --- a/pkg/common/cmd/root.go +++ b/pkg/common/cmd/root.go @@ -16,12 +16,13 @@ package cmd import ( "fmt" + config2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/spf13/cobra" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" ) type RootCmd struct { @@ -108,7 +109,7 @@ func (r *RootCmd) GetPrometheusPortFlag() int { func (r *RootCmd) getConfFromCmdAndInit(cmdLines *cobra.Command) error { configFolderPath, _ := cmdLines.Flags().GetString(constant.FlagConf) fmt.Println("configFolderPath:", configFolderPath) - return config.InitConfig(configFolderPath) + return config2.InitConfig(configFolderPath) } func (r *RootCmd) Execute() error { diff --git a/pkg/common/cmd/rpc.go b/pkg/common/cmd/rpc.go index 239858764..a2fbea34c 100644 --- a/pkg/common/cmd/rpc.go +++ b/pkg/common/cmd/rpc.go @@ -20,8 +20,8 @@ import ( "github.com/spf13/cobra" "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/startrpc" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/startrpc" ) type RpcCmd struct { diff --git a/pkg/common/config/config.go b/pkg/common/config/config.go deleted file mode 100644 index f9b2b9783..000000000 --- a/pkg/common/config/config.go +++ /dev/null @@ -1,312 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package config - -import ( - _ "embed" -) - -//go:embed version -var Version string - -var Config config - -type CallBackConfig struct { - Enable bool `yaml:"enable"` - CallbackTimeOut int `yaml:"timeout"` - CallbackFailedContinue *bool `yaml:"failedContinue"` -} - -type NotificationConf struct { - IsSendMsg bool `yaml:"isSendMsg"` - ReliabilityLevel int `yaml:"reliabilityLevel"` // 1 online 2 persistent - UnreadCount bool `yaml:"unreadCount"` - OfflinePush POfflinePush `yaml:"offlinePush"` -} - -type POfflinePush struct { - Enable bool `yaml:"enable"` - Title string `yaml:"title"` - Desc string `yaml:"desc"` - Ext string `yaml:"ext"` -} - -type config struct { - Zookeeper struct { - Schema string `yaml:"schema"` - ZkAddr []string `yaml:"address"` - Username string `yaml:"username"` - Password string `yaml:"password"` - } `yaml:"zookeeper"` - - Mysql struct { - Address []string `yaml:"address"` - Username string `yaml:"username"` - Password string `yaml:"password"` - Database string `yaml:"database"` - MaxOpenConn int `yaml:"maxOpenConn"` - MaxIdleConn int `yaml:"maxIdleConn"` - MaxLifeTime int `yaml:"maxLifeTime"` - LogLevel int `yaml:"logLevel"` - SlowThreshold int `yaml:"slowThreshold"` - } `yaml:"mysql"` - - Mongo struct { - Uri string `yaml:"uri"` - Address []string `yaml:"address"` - Database string `yaml:"database"` - Username string `yaml:"username"` - Password string `yaml:"password"` - MaxPoolSize int `yaml:"maxPoolSize"` - } `yaml:"mongo"` - - Redis struct { - Address []string `yaml:"address"` - Username string `yaml:"username"` - Password string `yaml:"password"` - } `yaml:"redis"` - - Kafka struct { - Username string `yaml:"username"` - Password string `yaml:"password"` - Addr []string `yaml:"addr"` - LatestMsgToRedis struct { - Topic string `yaml:"topic"` - } `yaml:"latestMsgToRedis"` - MsgToMongo struct { - Topic string `yaml:"topic"` - } `yaml:"offlineMsgToMongo"` - MsgToPush struct { - Topic string `yaml:"topic"` - } `yaml:"msgToPush"` - ConsumerGroupID struct { - MsgToRedis string `yaml:"msgToRedis"` - MsgToMongo string `yaml:"msgToMongo"` - MsgToMySql string `yaml:"msgToMySql"` - MsgToPush string `yaml:"msgToPush"` - } `yaml:"consumerGroupID"` - } `yaml:"kafka"` - - Rpc struct { - RegisterIP string `yaml:"registerIP"` - ListenIP string `yaml:"listenIP"` - } `yaml:"rpc"` - - Api struct { - OpenImApiPort []int `yaml:"openImApiPort"` - ListenIP string `yaml:"listenIP"` - } `yaml:"api"` - - Object struct { - Enable string `yaml:"enable"` - ApiURL string `yaml:"apiURL"` - Minio struct { - Bucket string `yaml:"bucket"` - Endpoint string `yaml:"endpoint"` - AccessKeyID string `yaml:"accessKeyID"` - SecretAccessKey string `yaml:"secretAccessKey"` - SessionToken string `yaml:"sessionToken"` - } `yaml:"minio"` - Cos struct { - BucketURL string `yaml:"bucketURL"` - SecretID string `yaml:"secretID"` - SecretKey string `yaml:"secretKey"` - SessionToken string `yaml:"sessionToken"` - } `yaml:"cos"` - Oss struct { - Endpoint string `yaml:"endpoint"` - Bucket string `yaml:"bucket"` - BucketURL string `yaml:"bucketURL"` - AccessKeyID string `yaml:"accessKeyID"` - AccessKeySecret string `yaml:"accessKeySecret"` - SessionToken string `yaml:"sessionToken"` - } `yaml:"oss"` - } `yaml:"object"` - - RpcPort struct { - OpenImUserPort []int `yaml:"openImUserPort"` - OpenImFriendPort []int `yaml:"openImFriendPort"` - OpenImMessagePort []int `yaml:"openImMessagePort"` - OpenImMessageGatewayPort []int `yaml:"openImMessageGatewayPort"` - OpenImGroupPort []int `yaml:"openImGroupPort"` - OpenImAuthPort []int `yaml:"openImAuthPort"` - OpenImPushPort []int `yaml:"openImPushPort"` - OpenImConversationPort []int `yaml:"openImConversationPort"` - OpenImRtcPort []int `yaml:"openImRtcPort"` - OpenImThirdPort []int `yaml:"openImThirdPort"` - } `yaml:"rpcPort"` - - RpcRegisterName struct { - OpenImUserName string `yaml:"openImUserName"` - OpenImFriendName string `yaml:"openImFriendName"` - OpenImMsgName string `yaml:"openImMsgName"` - OpenImPushName string `yaml:"openImPushName"` - OpenImMessageGatewayName string `yaml:"openImMessageGatewayName"` - OpenImGroupName string `yaml:"openImGroupName"` - OpenImAuthName string `yaml:"openImAuthName"` - OpenImConversationName string `yaml:"openImConversationName"` - OpenImThirdName string `yaml:"openImThirdName"` - } `yaml:"rpcRegisterName"` - - Log struct { - StorageLocation string `yaml:"storageLocation"` - RotationTime int `yaml:"rotationTime"` - RemainRotationCount uint `yaml:"remainRotationCount"` - RemainLogLevel int `yaml:"remainLogLevel"` - IsStdout bool `yaml:"isStdout"` - IsJson bool `yaml:"isJson"` - WithStack bool `yaml:"withStack"` - } `yaml:"log"` - - LongConnSvr struct { - OpenImWsPort []int `yaml:"openImWsPort"` - WebsocketMaxConnNum int `yaml:"websocketMaxConnNum"` - WebsocketMaxMsgLen int `yaml:"websocketMaxMsgLen"` - WebsocketTimeout int `yaml:"websocketTimeout"` - } `yaml:"longConnSvr"` - - Push struct { - Enable string `yaml:"enable"` - GeTui struct { - PushUrl string `yaml:"pushUrl"` - AppKey string `yaml:"appKey"` - Intent string `yaml:"intent"` - MasterSecret string `yaml:"masterSecret"` - ChannelID string `yaml:"channelID"` - ChannelName string `yaml:"channelName"` - } `yaml:"geTui"` - Fcm struct { - ServiceAccount string `yaml:"serviceAccount"` - } `yaml:"fcm"` - Jpns struct { - AppKey string `yaml:"appKey"` - MasterSecret string `yaml:"masterSecret"` - PushUrl string `yaml:"pushUrl"` - PushIntent string `yaml:"pushIntent"` - } `yaml:"jpns"` - } - Manager struct { - UserID []string `yaml:"userID"` - Nickname []string `yaml:"nickname"` - } `yaml:"manager"` - - MultiLoginPolicy int `yaml:"multiLoginPolicy"` - ChatPersistenceMysql bool `yaml:"chatPersistenceMysql"` - MsgCacheTimeout int `yaml:"msgCacheTimeout"` - GroupMessageHasReadReceiptEnable bool `yaml:"groupMessageHasReadReceiptEnable"` - SingleMessageHasReadReceiptEnable bool `yaml:"singleMessageHasReadReceiptEnable"` - RetainChatRecords int `yaml:"retainChatRecords"` - ChatRecordsClearTime string `yaml:"chatRecordsClearTime"` - MsgDestructTime string `yaml:"msgDestructTime"` - Secret string `yaml:"secret"` - TokenPolicy struct { - Expire int64 `yaml:"expire"` - } `yaml:"tokenPolicy"` - MessageVerify struct { - FriendVerify *bool `yaml:"friendVerify"` - } `yaml:"messageVerify"` - - IOSPush struct { - PushSound string `yaml:"pushSound"` - BadgeCount bool `yaml:"badgeCount"` - Production bool `yaml:"production"` - } `yaml:"iosPush"` - Callback struct { - CallbackUrl string `yaml:"url"` - CallbackBeforeSendSingleMsg CallBackConfig `yaml:"beforeSendSingleMsg"` - CallbackAfterSendSingleMsg CallBackConfig `yaml:"afterSendSingleMsg"` - CallbackBeforeSendGroupMsg CallBackConfig `yaml:"beforeSendGroupMsg"` - CallbackAfterSendGroupMsg CallBackConfig `yaml:"afterSendGroupMsg"` - CallbackMsgModify CallBackConfig `yaml:"msgModify"` - CallbackUserOnline CallBackConfig `yaml:"userOnline"` - CallbackUserOffline CallBackConfig `yaml:"userOffline"` - CallbackUserKickOff CallBackConfig `yaml:"userKickOff"` - CallbackOfflinePush CallBackConfig `yaml:"offlinePush"` - CallbackOnlinePush CallBackConfig `yaml:"onlinePush"` - CallbackBeforeSuperGroupOnlinePush CallBackConfig `yaml:"superGroupOnlinePush"` - CallbackBeforeAddFriend CallBackConfig `yaml:"beforeAddFriend"` - CallbackBeforeCreateGroup CallBackConfig `yaml:"beforeCreateGroup"` - CallbackBeforeMemberJoinGroup CallBackConfig `yaml:"beforeMemberJoinGroup"` - CallbackBeforeSetGroupMemberInfo CallBackConfig `yaml:"beforeSetGroupMemberInfo"` - } `yaml:"callback"` - - Prometheus struct { - Enable bool `yaml:"enable"` - UserPrometheusPort []int `yaml:"userPrometheusPort"` - FriendPrometheusPort []int `yaml:"friendPrometheusPort"` - MessagePrometheusPort []int `yaml:"messagePrometheusPort"` - MessageGatewayPrometheusPort []int `yaml:"messageGatewayPrometheusPort"` - GroupPrometheusPort []int `yaml:"groupPrometheusPort"` - AuthPrometheusPort []int `yaml:"authPrometheusPort"` - PushPrometheusPort []int `yaml:"pushPrometheusPort"` - ConversationPrometheusPort []int `yaml:"conversationPrometheusPort"` - RtcPrometheusPort []int `yaml:"rtcPrometheusPort"` - MessageTransferPrometheusPort []int `yaml:"messageTransferPrometheusPort"` - ThirdPrometheusPort []int `yaml:"thirdPrometheusPort"` - } `yaml:"prometheus"` - Notification notification `yaml:"notification"` -} - -type notification struct { - GroupCreated NotificationConf `yaml:"groupCreated"` - GroupInfoSet NotificationConf `yaml:"groupInfoSet"` - JoinGroupApplication NotificationConf `yaml:"joinGroupApplication"` - MemberQuit NotificationConf `yaml:"memberQuit"` - GroupApplicationAccepted NotificationConf `yaml:"groupApplicationAccepted"` - GroupApplicationRejected NotificationConf `yaml:"groupApplicationRejected"` - GroupOwnerTransferred NotificationConf `yaml:"groupOwnerTransferred"` - MemberKicked NotificationConf `yaml:"memberKicked"` - MemberInvited NotificationConf `yaml:"memberInvited"` - MemberEnter NotificationConf `yaml:"memberEnter"` - GroupDismissed NotificationConf `yaml:"groupDismissed"` - GroupMuted NotificationConf `yaml:"groupMuted"` - GroupCancelMuted NotificationConf `yaml:"groupCancelMuted"` - GroupMemberMuted NotificationConf `yaml:"groupMemberMuted"` - GroupMemberCancelMuted NotificationConf `yaml:"groupMemberCancelMuted"` - GroupMemberInfoSet NotificationConf `yaml:"groupMemberInfoSet"` - GroupMemberSetToAdmin NotificationConf `yaml:"groupMemberSetToAdmin"` - GroupMemberSetToOrdinary NotificationConf `yaml:"groupMemberSetToOrdinaryUser"` - GroupInfoSetAnnouncement NotificationConf `yaml:"groupInfoSetAnnouncement"` - GroupInfoSetName NotificationConf `yaml:"groupInfoSetName"` - ////////////////////////user/////////////////////// - UserInfoUpdated NotificationConf `yaml:"userInfoUpdated"` - //////////////////////friend/////////////////////// - FriendApplicationAdded NotificationConf `yaml:"friendApplicationAdded"` - FriendApplicationApproved NotificationConf `yaml:"friendApplicationApproved"` - FriendApplicationRejected NotificationConf `yaml:"friendApplicationRejected"` - FriendAdded NotificationConf `yaml:"friendAdded"` - FriendDeleted NotificationConf `yaml:"friendDeleted"` - FriendRemarkSet NotificationConf `yaml:"friendRemarkSet"` - BlackAdded NotificationConf `yaml:"blackAdded"` - BlackDeleted NotificationConf `yaml:"blackDeleted"` - FriendInfoUpdated NotificationConf `yaml:"friendInfoUpdated"` - //////////////////////conversation/////////////////////// - ConversationChanged NotificationConf `yaml:"conversationChanged"` - ConversationSetPrivate NotificationConf `yaml:"conversationSetPrivate"` -} - -func GetServiceNames() []string { - return []string{ - Config.RpcRegisterName.OpenImUserName, - Config.RpcRegisterName.OpenImFriendName, - Config.RpcRegisterName.OpenImMsgName, - Config.RpcRegisterName.OpenImPushName, - Config.RpcRegisterName.OpenImMessageGatewayName, - Config.RpcRegisterName.OpenImGroupName, - Config.RpcRegisterName.OpenImAuthName, - Config.RpcRegisterName.OpenImConversationName, - Config.RpcRegisterName.OpenImThirdName, - } -} diff --git a/pkg/common/config/parse.go b/pkg/common/config/parse.go index 60c4802a4..f31df39d2 100644 --- a/pkg/common/config/parse.go +++ b/pkg/common/config/parse.go @@ -15,19 +15,26 @@ package config import ( - "bytes" + _ "embed" "fmt" + "github.com/OpenIMSDK/tools/config" "os" "path/filepath" "runtime" "gopkg.in/yaml.v3" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/utils" ) +//go:embed version +var version string + +func init() { + config.Version = version +} + var ( _, b, _, _ = runtime.Caller(0) // Root folder of this project. @@ -37,12 +44,10 @@ var ( const ( FileName = "config.yaml" NotificationFileName = "notification.yaml" - ENV = "CONFIG_NAME" DefaultFolderPath = "../config/" - ConfKey = "conf" ) -func GetOptionsByNotification(cfg NotificationConf) utils.Options { +func GetOptionsByNotification(cfg config.NotificationConf) utils.Options { opts := utils.NewOptions() if cfg.UnreadCount { opts = utils.WithOptions(opts, utils.WithUnreadCount(true)) @@ -59,18 +64,7 @@ func GetOptionsByNotification(cfg NotificationConf) utils.Options { return opts } -func (c *config) unmarshalConfig(config interface{}, configPath string) error { - bytes, err := os.ReadFile(configPath) - if err != nil { - return err - } - if err = yaml.Unmarshal(bytes, config); err != nil { - return err - } - return nil -} - -func (c *config) initConfig(config interface{}, configName, configFolderPath string) error { +func initConfig(config interface{}, configName, configFolderPath string) error { if configFolderPath == "" { configFolderPath = DefaultFolderPath } @@ -87,37 +81,24 @@ func (c *config) initConfig(config interface{}, configName, configFolderPath str } else { Root = filepath.Dir(configPath) } - return c.unmarshalConfig(config, configPath) -} - -func (c *config) RegisterConf2Registry(registry discoveryregistry.SvcDiscoveryRegistry) error { - bytes, err := yaml.Marshal(Config) + data, err := os.ReadFile(configPath) if err != nil { return err } - return registry.RegisterConf2Registry(ConfKey, bytes) -} - -func (c *config) GetConfFromRegistry(registry discoveryregistry.SvcDiscoveryRegistry) ([]byte, error) { - return registry.GetConfFromRegistry(ConfKey) + if err = yaml.Unmarshal(data, config); err != nil { + return err + } + return nil } func InitConfig(configFolderPath string) error { - err := Config.initConfig(&Config, FileName, configFolderPath) + err := initConfig(&config.Config, FileName, configFolderPath) if err != nil { return err } - err = Config.initConfig(&Config.Notification, NotificationFileName, configFolderPath) + err = initConfig(&config.Config.Notification, NotificationFileName, configFolderPath) if err != nil { return err } return nil } - -func EncodeConfig() []byte { - buf := bytes.NewBuffer(nil) - if err := yaml.NewEncoder(buf).Encode(Config); err != nil { - panic(err) - } - return buf.Bytes() -} diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go deleted file mode 100644 index 3f34b9734..000000000 --- a/pkg/common/constant/constant.go +++ /dev/null @@ -1,363 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package constant - -const ( - - ///ContentType - //UserRelated. - ContentTypeBegin = 100 - Text = 101 - Picture = 102 - Voice = 103 - Video = 104 - File = 105 - AtText = 106 - Merger = 107 - Card = 108 - Location = 109 - Custom = 110 - Revoke = 111 - Typing = 113 - Quote = 114 - - AdvancedText = 117 - - CustomNotTriggerConversation = 119 - CustomOnlineOnly = 120 - ReactionMessageModifier = 121 - ReactionMessageDeleter = 122 - - Common = 200 - GroupMsg = 201 - SignalMsg = 202 - CustomNotification = 203 - - // SysRelated. - NotificationBegin = 1000 - - FriendApplicationApprovedNotification = 1201 // add_friend_response - FriendApplicationRejectedNotification = 1202 // add_friend_response - FriendApplicationNotification = 1203 // add_friend - FriendAddedNotification = 1204 - FriendDeletedNotification = 1205 // delete_friend - FriendRemarkSetNotification = 1206 // set_friend_remark? - BlackAddedNotification = 1207 // add_black - BlackDeletedNotification = 1208 // remove_black - FriendInfoUpdatedNotification = 1209 - - ConversationChangeNotification = 1300 // change conversation opt - - UserNotificationBegin = 1301 - UserInfoUpdatedNotification = 1303 // SetSelfInfoTip = 204 - UserNotificationEnd = 1399 - OANotification = 1400 - - GroupNotificationBegin = 1500 - - GroupCreatedNotification = 1501 - GroupInfoSetNotification = 1502 - JoinGroupApplicationNotification = 1503 - MemberQuitNotification = 1504 - GroupApplicationAcceptedNotification = 1505 - GroupApplicationRejectedNotification = 1506 - GroupOwnerTransferredNotification = 1507 - MemberKickedNotification = 1508 - MemberInvitedNotification = 1509 - MemberEnterNotification = 1510 - GroupDismissedNotification = 1511 - GroupMemberMutedNotification = 1512 - GroupMemberCancelMutedNotification = 1513 - GroupMutedNotification = 1514 - GroupCancelMutedNotification = 1515 - GroupMemberInfoSetNotification = 1516 - GroupMemberSetToAdminNotification = 1517 - GroupMemberSetToOrdinaryUserNotification = 1518 - GroupInfoSetAnnouncementNotification = 1519 - GroupInfoSetNameNotification = 1520 - - SignalingNotificationBegin = 1600 - SignalingNotification = 1601 - SignalingNotificationEnd = 1649 - - SuperGroupNotificationBegin = 1650 - SuperGroupUpdateNotification = 1651 - MsgDeleteNotification = 1652 - SuperGroupNotificationEnd = 1699 - - ConversationPrivateChatNotification = 1701 - ConversationUnreadNotification = 1702 - - MsgRevokeNotification = 2101 - - BusinessNotificationBegin = 2000 - BusinessNotification = 2001 - BusinessNotificationEnd = 2099 - - ClearConversationNotification = 2101 - DeleteMsgsNotification = 2102 - - HasReadReceipt = 2200 - - NotificationEnd = 5000 - - // status. - MsgNormal = 1 - MsgDeleted = 4 - - // MsgFrom. - UserMsgType = 100 - SysMsgType = 200 - - // SessionType. - SingleChatType = 1 - GroupChatType = 2 - SuperGroupChatType = 3 - NotificationChatType = 4 - // token. - NormalToken = 0 - InValidToken = 1 - KickedToken = 2 - ExpiredToken = 3 - - // MultiTerminalLogin. - DefalutNotKick = 0 - // Full-end login, but the same end is mutually exclusive. - AllLoginButSameTermKick = 1 - // Only one of the endpoints can log in. - SingleTerminalLogin = 2 - // The web side can be online at the same time, and the other side can only log in at one end. - WebAndOther = 3 - // The PC side is mutually exclusive, and the mobile side is mutually exclusive, but the web side can be online at - // the same time. - PcMobileAndWeb = 4 - // The PC terminal can be online at the same time,but other terminal only one of the endpoints can login. - PCAndOther = 5 - - OnlineStatus = "online" - OfflineStatus = "offline" - Registered = "registered" - UnRegistered = "unregistered" - - // MsgReceiveOpt. - ReceiveMessage = 0 - NotReceiveMessage = 1 - ReceiveNotNotifyMessage = 2 - - // OptionsKey. - IsHistory = "history" - IsPersistent = "persistent" - IsOfflinePush = "offlinePush" - IsUnreadCount = "unreadCount" - IsConversationUpdate = "conversationUpdate" - IsSenderSync = "senderSync" - IsNotPrivate = "notPrivate" - IsSenderConversationUpdate = "senderConversationUpdate" - IsSenderNotificationPush = "senderNotificationPush" - IsReactionFromCache = "reactionFromCache" - IsNotNotification = "isNotNotification" - IsSendMsg = "isSendMsg" - - // GroupStatus. - GroupOk = 0 - GroupBanChat = 1 - GroupStatusDismissed = 2 - GroupStatusMuted = 3 - - // GroupType. - NormalGroup = 0 - SuperGroup = 1 - WorkingGroup = 2 - - GroupBaned = 3 - GroupBanPrivateChat = 4 - - // UserJoinGroupSource. - JoinByAdmin = 1 - - JoinByInvitation = 2 - JoinBySearch = 3 - JoinByQRCode = 4 - - // Minio. - MinioDurationTimes = 3600 - // Aws. - AwsDurationTimes = 3600 - - // callbackCommand. - CallbackBeforeSendSingleMsgCommand = "callbackBeforeSendSingleMsgCommand" - CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand" - CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand" - CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand" - CallbackMsgModifyCommand = "callbackMsgModifyCommand" - CallbackUserOnlineCommand = "callbackUserOnlineCommand" - CallbackUserOfflineCommand = "callbackUserOfflineCommand" - CallbackUserKickOffCommand = "callbackUserKickOffCommand" - CallbackOfflinePushCommand = "callbackOfflinePushCommand" - CallbackOnlinePushCommand = "callbackOnlinePushCommand" - CallbackSuperGroupOnlinePushCommand = "callbackSuperGroupOnlinePushCommand" - CallbackBeforeAddFriendCommand = "callbackBeforeAddFriendCommand" - CallbackBeforeCreateGroupCommand = "callbackBeforeCreateGroupCommand" - CallbackBeforeMemberJoinGroupCommand = "callbackBeforeMemberJoinGroupCommand" - CallbackBeforeSetGroupMemberInfoCommand = "CallbackBeforeSetGroupMemberInfoCommand" - CallbackBeforeSetMessageReactionExtensionCommand = "callbackBeforeSetMessageReactionExtensionCommand" - CallbackBeforeDeleteMessageReactionExtensionsCommand = "callbackBeforeDeleteMessageReactionExtensionsCommand" - CallbackGetMessageListReactionExtensionsCommand = "callbackGetMessageListReactionExtensionsCommand" - CallbackAddMessageListReactionExtensionsCommand = "callbackAddMessageListReactionExtensionsCommand" - - // callback actionCode. - ActionAllow = 0 - ActionForbidden = 1 - // callback callbackHandleCode. - CallbackHandleSuccess = 0 - CallbackHandleFailed = 1 - - // minioUpload. - OtherType = 1 - VideoType = 2 - ImageType = 3 - - // sendMsgStaus. - MsgStatusNotExist = 0 - MsgIsSending = 1 - MsgSendSuccessed = 2 - MsgSendFailed = 3 -) - -const ( - WriteDiffusion = 0 - ReadDiffusion = 1 -) - -const ( - UnreliableNotification = 1 - ReliableNotificationNoMsg = 2 - ReliableNotificationMsg = 3 -) - -const ( - AtAllString = "AtAllTag" - AtNormal = 0 - AtMe = 1 - AtAll = 2 - AtAllAtMe = 3 - GroupNotification = 4 -) - -var ContentType2PushContent = map[int64]string{ - Picture: "[PICTURE]", - Voice: "[VOICE]", - Video: "[VIDEO]", - File: "[File]", - Text: "[TEXT]", - AtText: "[@TEXT]", - GroupMsg: "[GROUPMSG]]", - Common: "[NEWMSG]", - SignalMsg: "[SIGNALINVITE]", -} - -const ( - FieldRecvMsgOpt = 1 - FieldIsPinned = 2 - FieldAttachedInfo = 3 - FieldIsPrivateChat = 4 - FieldGroupAtType = 5 - FieldEx = 7 - FieldUnread = 8 - FieldBurnDuration = 9 - FieldHasReadSeq = 10 -) - -const ( - AppOrdinaryUsers = 1 - AppAdmin = 2 - - GroupOwner = 100 - GroupAdmin = 60 - GroupOrdinaryUsers = 20 - - GroupResponseAgree = 1 - GroupResponseRefuse = -1 - - FriendResponseNotHandle = 0 - FriendResponseAgree = 1 - FriendResponseRefuse = -1 - - Male = 1 - Female = 2 -) - -const ( - OperationID = "operationID" - OpUserID = "opUserID" - ConnID = "connID" - OpUserPlatform = "platform" - Token = "token" - RpcCustomHeader = "customHeader" // rpc中间件自定义ctx参数 - CheckKey = "CheckKey" - TriggerID = "triggerID" - RemoteAddr = "remoteAddr" -) - -const ( - BecomeFriendByImport = 1 // 管理员导入 - BecomeFriendByApply = 2 // 申请添加 -) - -const ( - ApplyNeedVerificationInviteDirectly = 0 // 申请需要同意 邀请直接进 - AllNeedVerification = 1 // 所有人进群需要验证,除了群主管理员邀请进群 - Directly = 2 // 直接进群 -) - -const ( - GroupRPCRecvSize = 30 - GroupRPCSendSize = 30 -) - -const FriendAcceptTip = "You have successfully become friends, so start chatting" - -func GroupIsBanChat(status int32) bool { - if status != GroupStatusMuted { - return false - } - return true -} - -func GroupIsBanPrivateChat(status int32) bool { - if status != GroupBanPrivateChat { - return false - } - return true -} - -const LogFileName = "OpenIM.log" - -const LocalHost = "0.0.0.0" - -// flag parse. -const ( - FlagPort = "port" - FlagWsPort = "ws_port" - - FlagPrometheusPort = "prometheus_port" - FlagConf = "config_folder_path" -) - -const OpenIMCommonConfigKey = "OpenIMServerConfig" - -const CallbackCommand = "command" - -const BatchNum = 100 diff --git a/pkg/common/constant/limit.go b/pkg/common/constant/limit.go deleted file mode 100644 index fd1551b34..000000000 --- a/pkg/common/constant/limit.go +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package constant - -const ( - ShowNumber = 1000 - StatisticsTimeInterval = 60 - MaxNotificationNum = 500 -) diff --git a/pkg/common/constant/platform_id_to_name.go b/pkg/common/constant/platform_id_to_name.go deleted file mode 100644 index 3bc819ed9..000000000 --- a/pkg/common/constant/platform_id_to_name.go +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package constant - -// fixme 1<--->IOS 2<--->Android 3<--->Windows -// fixme 4<--->OSX 5<--->Web 6<--->MiniWeb 7<--->Linux. -const ( - // Platform ID. - IOSPlatformID = 1 - AndroidPlatformID = 2 - WindowsPlatformID = 3 - OSXPlatformID = 4 - WebPlatformID = 5 - MiniWebPlatformID = 6 - LinuxPlatformID = 7 - AndroidPadPlatformID = 8 - IPadPlatformID = 9 - AdminPlatformID = 10 - - // Platform string match to Platform ID. - IOSPlatformStr = "IOS" - AndroidPlatformStr = "Android" - WindowsPlatformStr = "Windows" - OSXPlatformStr = "OSX" - WebPlatformStr = "Web" - MiniWebPlatformStr = "MiniWeb" - LinuxPlatformStr = "Linux" - AndroidPadPlatformStr = "APad" - IPadPlatformStr = "IPad" - AdminPlatformStr = "Admin" - - // terminal types. - TerminalPC = "PC" - TerminalMobile = "Mobile" -) - -var PlatformID2Name = map[int]string{ - IOSPlatformID: IOSPlatformStr, - AndroidPlatformID: AndroidPlatformStr, - WindowsPlatformID: WindowsPlatformStr, - OSXPlatformID: OSXPlatformStr, - WebPlatformID: WebPlatformStr, - MiniWebPlatformID: MiniWebPlatformStr, - LinuxPlatformID: LinuxPlatformStr, - AndroidPadPlatformID: AndroidPadPlatformStr, - IPadPlatformID: IPadPlatformStr, - AdminPlatformID: AdminPlatformStr, -} - -var PlatformName2ID = map[string]int{ - IOSPlatformStr: IOSPlatformID, - AndroidPlatformStr: AndroidPlatformID, - WindowsPlatformStr: WindowsPlatformID, - OSXPlatformStr: OSXPlatformID, - WebPlatformStr: WebPlatformID, - MiniWebPlatformStr: MiniWebPlatformID, - LinuxPlatformStr: LinuxPlatformID, - AndroidPadPlatformStr: AndroidPadPlatformID, - IPadPlatformStr: IPadPlatformID, - AdminPlatformStr: AdminPlatformID, -} - -var PlatformName2class = map[string]string{ - IOSPlatformStr: TerminalMobile, - AndroidPlatformStr: TerminalMobile, - MiniWebPlatformStr: WebPlatformStr, - WebPlatformStr: WebPlatformStr, - WindowsPlatformStr: TerminalPC, - OSXPlatformStr: TerminalPC, - LinuxPlatformStr: TerminalPC, -} - -var PlatformID2class = map[int]string{ - IOSPlatformID: TerminalMobile, - AndroidPlatformID: TerminalMobile, - MiniWebPlatformID: WebPlatformStr, - WebPlatformID: WebPlatformStr, - WindowsPlatformID: TerminalPC, - OSXPlatformID: TerminalPC, - LinuxPlatformID: TerminalPC, -} - -func PlatformIDToName(num int) string { - return PlatformID2Name[num] -} - -func PlatformNameToID(name string) int { - return PlatformName2ID[name] -} - -func PlatformNameToClass(name string) string { - return PlatformName2class[name] -} - -func PlatformIDToClass(num int) string { - return PlatformID2class[num] -} diff --git a/pkg/common/convert/black.go b/pkg/common/convert/black.go index ba0e2a5da..cae002ada 100644 --- a/pkg/common/convert/black.go +++ b/pkg/common/convert/black.go @@ -18,8 +18,8 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - sdk "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/sdkws" + sdk "github.com/OpenIMSDK/protocol/sdkws" ) func BlackDB2Pb( diff --git a/pkg/common/convert/conversation.go b/pkg/common/convert/conversation.go index 4bb051a7c..7eccad9b0 100644 --- a/pkg/common/convert/conversation.go +++ b/pkg/common/convert/conversation.go @@ -16,8 +16,8 @@ package convert import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/tools/utils" ) func ConversationDB2Pb(conversationDB *relation.ConversationModel) *conversation.Conversation { diff --git a/pkg/common/convert/friend.go b/pkg/common/convert/friend.go index 0531ad195..322f9d10a 100644 --- a/pkg/common/convert/friend.go +++ b/pkg/common/convert/friend.go @@ -18,8 +18,8 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/utils" ) func FriendPb2DB(friend *sdkws.FriendInfo) *relation.FriendModel { diff --git a/pkg/common/convert/group.go b/pkg/common/convert/group.go index 9ec812574..efd2c3710 100644 --- a/pkg/common/convert/group.go +++ b/pkg/common/convert/group.go @@ -18,8 +18,8 @@ import ( "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + pbGroup "github.com/OpenIMSDK/protocol/group" + sdkws "github.com/OpenIMSDK/protocol/sdkws" ) func Db2PbGroupInfo(m *relation.GroupModel, ownerUserID string, memberCount uint32) *sdkws.GroupInfo { diff --git a/pkg/common/convert/msg.go b/pkg/common/convert/msg.go index b937369d5..525d35f1c 100644 --- a/pkg/common/convert/msg.go +++ b/pkg/common/convert/msg.go @@ -16,7 +16,7 @@ package convert import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/sdkws" ) func MsgPb2DB(msg *sdkws.MsgData) *unrelation.MsgDataModel { diff --git a/pkg/common/convert/user.go b/pkg/common/convert/user.go index d8d4c488c..28f4781e7 100644 --- a/pkg/common/convert/user.go +++ b/pkg/common/convert/user.go @@ -18,7 +18,7 @@ import ( "time" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/sdkws" ) func UsersDB2Pb(users []*relationTb.UserModel) (result []*sdkws.UserInfo) { diff --git a/pkg/common/db/cache/conversation.go b/pkg/common/db/cache/conversation.go index 119967c70..7f0290c8f 100644 --- a/pkg/common/db/cache/conversation.go +++ b/pkg/common/db/cache/conversation.go @@ -26,7 +26,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/pkg/common/db/cache/friend.go b/pkg/common/db/cache/friend.go index b15ed95d1..698f1364c 100644 --- a/pkg/common/db/cache/friend.go +++ b/pkg/common/db/cache/friend.go @@ -22,7 +22,7 @@ import ( "github.com/redis/go-redis/v9" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/pkg/common/db/cache/group.go b/pkg/common/db/cache/group.go index 44ae04ecf..d72f06908 100644 --- a/pkg/common/db/cache/group.go +++ b/pkg/common/db/cache/group.go @@ -25,7 +25,7 @@ import ( relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" unrelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/pkg/common/db/cache/init_redis.go b/pkg/common/db/cache/init_redis.go index 104d48ffd..307e40327 100644 --- a/pkg/common/db/cache/init_redis.go +++ b/pkg/common/db/cache/init_redis.go @@ -22,9 +22,9 @@ import ( "github.com/redis/go-redis/v9" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mw/specialerror" ) const ( diff --git a/pkg/common/db/cache/init_redis_test.go b/pkg/common/db/cache/init_redis_test.go deleted file mode 100644 index 4b3f57066..000000000 --- a/pkg/common/db/cache/init_redis_test.go +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package cache - -import ( - "fmt" - "testing" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" -) - -// TestNewRedis Test redis connection -func TestNewRedis(t *testing.T) { - err := config.InitConfig("config_folder_path") - if err != nil { - fmt.Println("config load error") - return - } - redis, err := NewRedis() - if err != nil { - fmt.Println(err) - return - } - fmt.Println(redis) -} diff --git a/pkg/common/db/cache/meta_cache.go b/pkg/common/db/cache/meta_cache.go index 86a47f04b..ca742d4a3 100644 --- a/pkg/common/db/cache/meta_cache.go +++ b/pkg/common/db/cache/meta_cache.go @@ -23,9 +23,9 @@ import ( "github.com/dtm-labs/rockscache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/pkg/common/db/cache/msg.go b/pkg/common/db/cache/msg.go index 179a0ee61..66f3cacee 100644 --- a/pkg/common/db/cache/msg.go +++ b/pkg/common/db/cache/msg.go @@ -21,16 +21,16 @@ import ( "github.com/dtm-labs/rockscache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" "github.com/gogo/protobuf/jsonpb" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" "github.com/redis/go-redis/v9" ) diff --git a/pkg/common/db/controller/auth.go b/pkg/common/db/controller/auth.go index 678d98b11..491a1394b 100644 --- a/pkg/common/db/controller/auth.go +++ b/pkg/common/db/controller/auth.go @@ -19,10 +19,10 @@ import ( "github.com/golang-jwt/jwt/v4" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) type AuthDatabase interface { diff --git a/pkg/common/db/controller/black.go b/pkg/common/db/controller/black.go index 99cf25ebd..767797eb1 100644 --- a/pkg/common/db/controller/black.go +++ b/pkg/common/db/controller/black.go @@ -19,8 +19,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" ) type BlackDatabase interface { diff --git a/pkg/common/db/controller/chatlog.go b/pkg/common/db/controller/chatlog.go index deca63697..37f620271 100644 --- a/pkg/common/db/controller/chatlog.go +++ b/pkg/common/db/controller/chatlog.go @@ -16,7 +16,7 @@ package controller import ( relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + pbMsg "github.com/OpenIMSDK/protocol/msg" ) type ChatLogDatabase interface { diff --git a/pkg/common/db/controller/conversation.go b/pkg/common/db/controller/conversation.go index d65315918..0f3403084 100644 --- a/pkg/common/db/controller/conversation.go +++ b/pkg/common/db/controller/conversation.go @@ -18,12 +18,12 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type ConversationDatabase interface { diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 6b41b87f2..3c8d61a40 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -20,13 +20,13 @@ import ( "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type FriendDatabase interface { diff --git a/pkg/common/db/controller/group.go b/pkg/common/db/controller/group.go index dff427580..ad0b4e548 100644 --- a/pkg/common/db/controller/group.go +++ b/pkg/common/db/controller/group.go @@ -24,14 +24,14 @@ import ( "go.mongodb.org/mongo-driver/mongo" "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type GroupDatabase interface { diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 34e895765..555828c22 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -21,21 +21,21 @@ import ( "github.com/redis/go-redis/v9" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" "go.mongodb.org/mongo-driver/mongo" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbMsg "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/utils" ) const ( diff --git a/pkg/common/db/controller/msg_test.go b/pkg/common/db/controller/msg_test.go index 7e50b8489..e322e6218 100644 --- a/pkg/common/db/controller/msg_test.go +++ b/pkg/common/db/controller/msg_test.go @@ -23,13 +23,13 @@ import ( "testing" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/log" "go.mongodb.org/mongo-driver/bson" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" + "github.com/OpenIMSDK/tools/config" ) func Test_BatchInsertChat2DB(t *testing.T) { diff --git a/pkg/common/db/controller/user.go b/pkg/common/db/controller/user.go index 81cabe0f6..4f9383b09 100644 --- a/pkg/common/db/controller/user.go +++ b/pkg/common/db/controller/user.go @@ -20,9 +20,9 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tx" + "github.com/OpenIMSDK/tools/utils" ) type UserDatabase interface { diff --git a/pkg/common/db/localcache/conversation.go b/pkg/common/db/localcache/conversation.go index 36f82b93e..98720fe3a 100644 --- a/pkg/common/db/localcache/conversation.go +++ b/pkg/common/db/localcache/conversation.go @@ -18,8 +18,8 @@ import ( "context" "sync" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/conversation" ) type ConversationLocalCache struct { diff --git a/pkg/common/db/localcache/group.go b/pkg/common/db/localcache/group.go index d58d0a8eb..57cea7245 100644 --- a/pkg/common/db/localcache/group.go +++ b/pkg/common/db/localcache/group.go @@ -18,9 +18,9 @@ import ( "context" "sync" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/tools/errs" ) type GroupLocalCache struct { diff --git a/pkg/common/db/ormutil/utils.go b/pkg/common/db/ormutil/utils.go deleted file mode 100644 index 7e4bd4f71..000000000 --- a/pkg/common/db/ormutil/utils.go +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package ormutil - -import ( - "fmt" - "strings" - - "gorm.io/gorm" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -func GormPage[E any](db *gorm.DB, pageNumber, showNumber int32) (uint32, []*E, error) { - var count int64 - var model E - if err := db.Model(&model).Count(&count).Error; err != nil { - return 0, nil, errs.Wrap(err) - } - var es []*E - if err := db.Limit(int(showNumber)).Offset(int((pageNumber - 1) * showNumber)).Find(&es).Error; err != nil { - return 0, nil, errs.Wrap(err) - } - return uint32(count), es, nil -} - -func GormSearch[E any](db *gorm.DB, fields []string, value string, pageNumber, showNumber int32) (uint32, []*E, error) { - if len(fields) > 0 && value != "" { - val := "%" + value + "%" - arr := make([]string, 0, len(fields)) - vals := make([]interface{}, 0, len(fields)) - for _, field := range fields { - arr = append(arr, fmt.Sprintf("`%s` like ?", field)) - vals = append(vals, val) - } - db = db.Where(strings.Join(arr, " or "), vals...) - } - return GormPage[E](db, pageNumber, showNumber) -} - -func GormIn[E any](db **gorm.DB, field string, es []E) { - if len(es) == 0 { - return - } - *db = (*db).Where(field+" in (?)", es) -} - -func MapCount(db *gorm.DB, field string) (map[string]uint32, error) { - var items []struct { - ID string `gorm:"column:id"` - Count uint32 `gorm:"column:count"` - } - if err := db.Select(field + " as id, count(1) as count").Group(field).Find(&items).Error; err != nil { - return nil, errs.Wrap(err) - } - m := make(map[string]uint32) - for _, item := range items { - m[item.ID] = item.Count - } - return m, nil -} diff --git a/pkg/common/db/relation/black_model.go b/pkg/common/db/relation/black_model.go index ca90f43a7..eede403b1 100644 --- a/pkg/common/db/relation/black_model.go +++ b/pkg/common/db/relation/black_model.go @@ -17,12 +17,12 @@ package relation import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/ormutil" + "github.com/OpenIMSDK/tools/ormutil" "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type BlackGorm struct { diff --git a/pkg/common/db/relation/chat_log_model.go b/pkg/common/db/relation/chat_log_model.go index b0c88b608..056295e15 100644 --- a/pkg/common/db/relation/chat_log_model.go +++ b/pkg/common/db/relation/chat_log_model.go @@ -20,11 +20,11 @@ import ( "google.golang.org/protobuf/proto" "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbMsg "github.com/OpenIMSDK/protocol/msg" + sdkws "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/utils" ) type ChatLogGorm struct { diff --git a/pkg/common/db/relation/conversation_model.go b/pkg/common/db/relation/conversation_model.go index fb88b8305..716d2cbe4 100644 --- a/pkg/common/db/relation/conversation_model.go +++ b/pkg/common/db/relation/conversation_model.go @@ -19,9 +19,9 @@ import ( "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/utils" ) type ConversationGorm struct { diff --git a/pkg/common/db/relation/friend_model.go b/pkg/common/db/relation/friend_model.go index 10daf8e80..4b119c1f8 100644 --- a/pkg/common/db/relation/friend_model.go +++ b/pkg/common/db/relation/friend_model.go @@ -20,7 +20,7 @@ import ( "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type FriendGorm struct { diff --git a/pkg/common/db/relation/friend_request_model.go b/pkg/common/db/relation/friend_request_model.go index fe08ac06c..9f5cbbfee 100644 --- a/pkg/common/db/relation/friend_request_model.go +++ b/pkg/common/db/relation/friend_request_model.go @@ -20,7 +20,7 @@ import ( "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type FriendRequestGorm struct { diff --git a/pkg/common/db/relation/group_member_model.go b/pkg/common/db/relation/group_member_model.go index 8f5aa937d..7c2ded83f 100644 --- a/pkg/common/db/relation/group_member_model.go +++ b/pkg/common/db/relation/group_member_model.go @@ -19,10 +19,10 @@ import ( "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/ormutil" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/ormutil" + "github.com/OpenIMSDK/tools/utils" ) var _ relation.GroupMemberModelInterface = (*GroupMemberGorm)(nil) diff --git a/pkg/common/db/relation/group_model.go b/pkg/common/db/relation/group_model.go index 3a782e02a..c95d51861 100644 --- a/pkg/common/db/relation/group_model.go +++ b/pkg/common/db/relation/group_model.go @@ -18,14 +18,14 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/tools/constant" "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/ormutil" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/ormutil" + "github.com/OpenIMSDK/tools/utils" ) var _ relation.GroupModelInterface = (*GroupGorm)(nil) diff --git a/pkg/common/db/relation/group_request_model.go b/pkg/common/db/relation/group_request_model.go index 0220f308e..a38f1f782 100644 --- a/pkg/common/db/relation/group_request_model.go +++ b/pkg/common/db/relation/group_request_model.go @@ -17,12 +17,12 @@ package relation import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/ormutil" + "github.com/OpenIMSDK/tools/ormutil" "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type GroupRequestGorm struct { diff --git a/pkg/common/db/relation/mysql_init.go b/pkg/common/db/relation/mysql_init.go index 267acce74..29873cc89 100644 --- a/pkg/common/db/relation/mysql_init.go +++ b/pkg/common/db/relation/mysql_init.go @@ -21,10 +21,10 @@ import ( mysqlDriver "github.com/go-sql-driver/mysql" "gorm.io/driver/mysql" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mw/specialerror" "gorm.io/gorm" "gorm.io/gorm/logger" diff --git a/pkg/common/db/relation/object_model.go b/pkg/common/db/relation/object_model.go index 928c72fbe..02ba0bcf0 100644 --- a/pkg/common/db/relation/object_model.go +++ b/pkg/common/db/relation/object_model.go @@ -20,7 +20,7 @@ import ( "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" ) type ObjectInfoGorm struct { diff --git a/pkg/common/db/relation/user_model.go b/pkg/common/db/relation/user_model.go index d3be5dd7e..b7c592eeb 100644 --- a/pkg/common/db/relation/user_model.go +++ b/pkg/common/db/relation/user_model.go @@ -18,12 +18,12 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" "gorm.io/gorm" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type UserGorm struct { diff --git a/pkg/common/db/s3/cont/controller.go b/pkg/common/db/s3/cont/controller.go index 07eacc63b..01dbc787f 100644 --- a/pkg/common/db/s3/cont/controller.go +++ b/pkg/common/db/s3/cont/controller.go @@ -27,8 +27,8 @@ import ( "github.com/google/uuid" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" ) func New(impl s3.Interface) *Controller { diff --git a/pkg/common/db/s3/cos/cos.go b/pkg/common/db/s3/cos/cos.go index cfdaaa5e4..29d74ceb4 100644 --- a/pkg/common/db/s3/cos/cos.go +++ b/pkg/common/db/s3/cos/cos.go @@ -26,8 +26,8 @@ import ( "github.com/tencentyun/cos-go-sdk-v5" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" + "github.com/OpenIMSDK/tools/config" ) const ( diff --git a/pkg/common/db/s3/minio/minio.go b/pkg/common/db/s3/minio/minio.go index bb6e6ce24..d5ac7de40 100644 --- a/pkg/common/db/s3/minio/minio.go +++ b/pkg/common/db/s3/minio/minio.go @@ -29,8 +29,8 @@ import ( "github.com/minio/minio-go/v7/pkg/credentials" "github.com/minio/minio-go/v7/pkg/signer" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" + "github.com/OpenIMSDK/tools/config" ) const ( diff --git a/pkg/common/db/s3/oss/oss.go b/pkg/common/db/s3/oss/oss.go index 774150389..ee4d19464 100644 --- a/pkg/common/db/s3/oss/oss.go +++ b/pkg/common/db/s3/oss/oss.go @@ -26,8 +26,8 @@ import ( "github.com/aliyun/aliyun-oss-go-sdk/oss" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/s3" + "github.com/OpenIMSDK/tools/config" ) const ( diff --git a/pkg/common/db/table/relation/chatlog.go b/pkg/common/db/table/relation/chatlog.go index 8d4429362..13bf7e842 100644 --- a/pkg/common/db/table/relation/chatlog.go +++ b/pkg/common/db/table/relation/chatlog.go @@ -17,7 +17,7 @@ package relation import ( "time" - pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + pbMsg "github.com/OpenIMSDK/protocol/msg" ) const ( diff --git a/pkg/common/db/table/relation/utils.go b/pkg/common/db/table/relation/utils.go index c8c59b390..c944eae8b 100644 --- a/pkg/common/db/table/relation/utils.go +++ b/pkg/common/db/table/relation/utils.go @@ -17,7 +17,7 @@ package relation import ( "gorm.io/gorm" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) type BatchUpdateGroupMember struct { diff --git a/pkg/common/db/table/unrelation/msg.go b/pkg/common/db/table/unrelation/msg.go index dc16613ed..30e6670b5 100644 --- a/pkg/common/db/table/unrelation/msg.go +++ b/pkg/common/db/table/unrelation/msg.go @@ -19,11 +19,11 @@ import ( "strconv" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + "github.com/OpenIMSDK/protocol/msg" "go.mongodb.org/mongo-driver/mongo" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/sdkws" ) const ( diff --git a/pkg/common/db/tx/gorm.go b/pkg/common/db/tx/gorm.go deleted file mode 100644 index 98e71cb9f..000000000 --- a/pkg/common/db/tx/gorm.go +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package tx - -import ( - "gorm.io/gorm" -) - -func NewGorm(db *gorm.DB) Tx { - return &_Gorm{tx: db} -} - -type _Gorm struct { - tx *gorm.DB -} - -func (g *_Gorm) Transaction(fn func(tx any) error) error { - return g.tx.Transaction(func(tx *gorm.DB) error { - return fn(tx) - }) -} diff --git a/pkg/common/db/tx/mongo.go b/pkg/common/db/tx/mongo.go deleted file mode 100644 index a0c38e372..000000000 --- a/pkg/common/db/tx/mongo.go +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package tx - -import ( - "context" - - "go.mongodb.org/mongo-driver/mongo" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" -) - -func NewMongo(client *mongo.Client) CtxTx { - return &_Mongo{ - client: client, - } -} - -type _Mongo struct { - client *mongo.Client -} - -func (m *_Mongo) Transaction(ctx context.Context, fn func(ctx context.Context) error) error { - sess, err := m.client.StartSession() - if err != nil { - return err - } - sCtx := mongo.NewSessionContext(ctx, sess) - defer sess.EndSession(sCtx) - if err := fn(sCtx); err != nil { - _ = sess.AbortTransaction(sCtx) - return err - } - return utils.Wrap(sess.CommitTransaction(sCtx), "") -} diff --git a/pkg/common/db/tx/tx.go b/pkg/common/db/tx/tx.go deleted file mode 100644 index 9a6fe02ef..000000000 --- a/pkg/common/db/tx/tx.go +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package tx - -import "context" - -type Tx interface { - Transaction(fn func(tx any) error) error -} - -type CtxTx interface { - Transaction(ctx context.Context, fn func(ctx context.Context) error) error -} diff --git a/pkg/common/db/unrelation/mongo.go b/pkg/common/db/unrelation/mongo.go index 9c9f7db3b..44077a838 100644 --- a/pkg/common/db/unrelation/mongo.go +++ b/pkg/common/db/unrelation/mongo.go @@ -17,18 +17,18 @@ package unrelation import ( "context" "fmt" + "go.mongodb.org/mongo-driver/bson" "strings" "time" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo/options" - "go.mongodb.org/mongo-driver/x/bsonx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/mw/specialerror" + "github.com/OpenIMSDK/tools/utils" ) const ( @@ -111,13 +111,15 @@ func (m *Mongo) createMongoIndex(collection string, isUnique bool, keys ...strin db := m.db.Database(config.Config.Mongo.Database).Collection(collection) opts := options.CreateIndexes().SetMaxTime(10 * time.Second) indexView := db.Indexes() - keysDoc := bsonx.Doc{} + keysDoc := bson.D{} // create composite indexes for _, key := range keys { if strings.HasPrefix(key, "-") { - keysDoc = keysDoc.Append(strings.TrimLeft(key, "-"), bsonx.Int32(-1)) + keysDoc = append(keysDoc, bson.E{Key: strings.TrimLeft(key, "-"), Value: -1}) + //keysDoc = keysDoc.Append(strings.TrimLeft(key, "-"), bsonx.Int32(-1)) } else { - keysDoc = keysDoc.Append(key, bsonx.Int32(1)) + keysDoc = append(keysDoc, bson.E{Key: key, Value: 1}) + //keysDoc = keysDoc.Append(key, bsonx.Int32(1)) } } // create index diff --git a/pkg/common/db/unrelation/msg.go b/pkg/common/db/unrelation/msg.go index b7403ebde..2f4a166e9 100644 --- a/pkg/common/db/unrelation/msg.go +++ b/pkg/common/db/unrelation/msg.go @@ -21,9 +21,9 @@ import ( "fmt" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" + "github.com/OpenIMSDK/protocol/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/tools/constant" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/bson/primitive" @@ -32,9 +32,9 @@ import ( "google.golang.org/protobuf/proto" table "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/utils" ) var ErrMsgListNotExist = errors.New("user not have msg in mongoDB") diff --git a/pkg/common/db/unrelation/super_group.go b/pkg/common/db/unrelation/super_group.go index f2f867c49..e93ab2b43 100644 --- a/pkg/common/db/unrelation/super_group.go +++ b/pkg/common/db/unrelation/super_group.go @@ -22,7 +22,7 @@ import ( "go.mongodb.org/mongo-driver/mongo/options" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/utils" ) func NewSuperGroupMongoDriver(database *mongo.Database) unrelation.SuperGroupModelInterface { diff --git a/pkg/common/http/http_client.go b/pkg/common/http/http_client.go index 153deb30e..46d5f23c3 100644 --- a/pkg/common/http/http_client.go +++ b/pkg/common/http/http_client.go @@ -25,10 +25,10 @@ import ( "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/callbackstruct" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" ) var client http.Client diff --git a/pkg/common/kafka/consumer.go b/pkg/common/kafka/consumer.go index 67bc3977b..e04abe944 100644 --- a/pkg/common/kafka/consumer.go +++ b/pkg/common/kafka/consumer.go @@ -17,7 +17,7 @@ package kafka import ( "sync" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" "github.com/Shopify/sarama" ) diff --git a/pkg/common/kafka/consumer_group.go b/pkg/common/kafka/consumer_group.go index 60e69d4a6..b4bd81660 100644 --- a/pkg/common/kafka/consumer_group.go +++ b/pkg/common/kafka/consumer_group.go @@ -17,7 +17,7 @@ package kafka import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/log" "github.com/Shopify/sarama" ) diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index d52d76817..8eeaa6825 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -19,11 +19,11 @@ import ( "errors" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - log "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + log "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" "github.com/Shopify/sarama" "google.golang.org/protobuf/proto" diff --git a/pkg/common/log/color.go b/pkg/common/log/color.go deleted file mode 100644 index 9d1121d61..000000000 --- a/pkg/common/log/color.go +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package log - -import ( - "fmt" - - "go.uber.org/zap/zapcore" -) - -// Foreground colors. -const ( - Black Color = iota + 30 - Red - Green - Yellow - Blue - Magenta - Cyan - White -) - -var ( - _levelToColor = map[zapcore.Level]Color{ - zapcore.DebugLevel: White, - zapcore.InfoLevel: Blue, - zapcore.WarnLevel: Yellow, - zapcore.ErrorLevel: Red, - zapcore.DPanicLevel: Red, - zapcore.PanicLevel: Red, - zapcore.FatalLevel: Red, - } - _unknownLevelColor = make(map[zapcore.Level]string, len(_levelToColor)) - - _levelToLowercaseColorString = make(map[zapcore.Level]string, len(_levelToColor)) - _levelToCapitalColorString = make(map[zapcore.Level]string, len(_levelToColor)) -) - -func init() { - for level, color := range _levelToColor { - _levelToLowercaseColorString[level] = color.Add(level.String()) - _levelToCapitalColorString[level] = color.Add(level.CapitalString()) - } -} - -// Color represents a text color. -type Color uint8 - -// Add adds the coloring to the given string. -func (c Color) Add(s string) string { - return fmt.Sprintf("\x1b[%dm%s\x1b[0m", uint8(c), s) -} diff --git a/pkg/common/log/logger.go b/pkg/common/log/logger.go deleted file mode 100644 index cfbb91bdd..000000000 --- a/pkg/common/log/logger.go +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package log - -import "context" - -type Logger interface { - Debug(ctx context.Context, msg string, keysAndValues ...interface{}) - Info(ctx context.Context, msg string, keysAndValues ...interface{}) - Warn(ctx context.Context, msg string, err error, keysAndValues ...interface{}) - Error(ctx context.Context, msg string, err error, keysAndValues ...interface{}) - WithValues(keysAndValues ...interface{}) Logger - WithName(name string) Logger - WithCallDepth(depth int) Logger -} diff --git a/pkg/common/log/sql_logger.go b/pkg/common/log/sql_logger.go deleted file mode 100644 index ae6cafb34..000000000 --- a/pkg/common/log/sql_logger.go +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package log - -import ( - "context" - "fmt" - "time" - - "github.com/pkg/errors" - "gorm.io/gorm" - gormLogger "gorm.io/gorm/logger" - gormUtils "gorm.io/gorm/utils" -) - -type SqlLogger struct { - LogLevel gormLogger.LogLevel - IgnoreRecordNotFoundError bool - SlowThreshold time.Duration -} - -func NewSqlLogger(logLevel gormLogger.LogLevel, ignoreRecordNotFoundError bool, slowThreshold time.Duration) *SqlLogger { - return &SqlLogger{ - LogLevel: logLevel, - IgnoreRecordNotFoundError: ignoreRecordNotFoundError, - SlowThreshold: slowThreshold, - } -} - -func (l *SqlLogger) LogMode(logLevel gormLogger.LogLevel) gormLogger.Interface { - newLogger := *l - newLogger.LogLevel = logLevel - return &newLogger -} - -func (SqlLogger) Info(ctx context.Context, msg string, args ...interface{}) { - ZInfo(ctx, msg, args) -} - -func (SqlLogger) Warn(ctx context.Context, msg string, args ...interface{}) { - ZWarn(ctx, msg, nil, args) -} - -func (SqlLogger) Error(ctx context.Context, msg string, args ...interface{}) { - ZError(ctx, msg, nil, args) -} - -func (l *SqlLogger) Trace(ctx context.Context, begin time.Time, fc func() (sql string, rowsAffected int64), err error) { - if l.LogLevel <= gormLogger.Silent { - return - } - elapsed := time.Since(begin) - switch { - case err != nil && l.LogLevel >= gormLogger.Error && (!errors.Is(err, gorm.ErrRecordNotFound) || !l.IgnoreRecordNotFoundError): - sql, rows := fc() - if rows == -1 { - ZError(ctx, "sql exec detail", err, "gorm", gormUtils.FileWithLineNum(), "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "sql", sql) - } else { - ZError(ctx, "sql exec detail", err, "gorm", gormUtils.FileWithLineNum(), "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "rows", rows, "sql", sql) - } - case elapsed > l.SlowThreshold && l.SlowThreshold != 0 && l.LogLevel >= gormLogger.Warn: - sql, rows := fc() - slowLog := fmt.Sprintf("SLOW SQL >= %v", l.SlowThreshold) - if rows == -1 { - ZWarn(ctx, "sql exec detail", nil, "gorm", gormUtils.FileWithLineNum(), "slow sql", slowLog, "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "sql", sql) - } else { - ZWarn(ctx, "sql exec detail", nil, "gorm", gormUtils.FileWithLineNum(), "slow sql", slowLog, "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "rows", rows, "sql", sql) - } - case l.LogLevel == gormLogger.Info: - sql, rows := fc() - if rows == -1 { - ZDebug(ctx, "sql exec detail", "gorm", gormUtils.FileWithLineNum(), "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "sql", sql) - } else { - ZDebug(ctx, "sql exec detail", "gorm", gormUtils.FileWithLineNum(), "elapsed time", fmt.Sprintf("%f(ms)", float64(elapsed.Nanoseconds())/1e6), "rows", rows, "sql", sql) - } - } -} diff --git a/pkg/common/log/zap.go b/pkg/common/log/zap.go deleted file mode 100644 index 9d57acf85..000000000 --- a/pkg/common/log/zap.go +++ /dev/null @@ -1,302 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package log - -import ( - "context" - "fmt" - "os" - "path/filepath" - "time" - - rotatelogs "github.com/lestrrat-go/file-rotatelogs" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - - "go.uber.org/zap" - "go.uber.org/zap/zapcore" -) - -var ( - pkgLogger Logger - sp = string(filepath.Separator) - logLevelMap = map[int]zapcore.Level{ - 6: zapcore.DebugLevel, - 5: zapcore.DebugLevel, - 4: zapcore.InfoLevel, - 3: zapcore.WarnLevel, - 2: zapcore.ErrorLevel, - 1: zapcore.FatalLevel, - 0: zapcore.PanicLevel, - } -) - -// InitFromConfig initializes a Zap-based logger. -func InitFromConfig( - loggerPrefixName, moduleName string, - logLevel int, - isStdout bool, - isJson bool, - logLocation string, - rotateCount uint, -) error { - l, err := NewZapLogger(loggerPrefixName, moduleName, logLevel, isStdout, isJson, logLocation, rotateCount) - if err != nil { - return err - } - pkgLogger = l.WithCallDepth(2) - if isJson { - pkgLogger = pkgLogger.WithName(moduleName) - } - return nil -} - -func ZDebug(ctx context.Context, msg string, keysAndValues ...interface{}) { - if pkgLogger == nil { - return - } - pkgLogger.Debug(ctx, msg, keysAndValues...) -} - -func ZInfo(ctx context.Context, msg string, keysAndValues ...interface{}) { - if pkgLogger == nil { - return - } - pkgLogger.Info(ctx, msg, keysAndValues...) -} - -func ZWarn(ctx context.Context, msg string, err error, keysAndValues ...interface{}) { - if pkgLogger == nil { - return - } - pkgLogger.Warn(ctx, msg, err, keysAndValues...) -} - -func ZError(ctx context.Context, msg string, err error, keysAndValues ...interface{}) { - if pkgLogger == nil { - return - } - pkgLogger.Error(ctx, msg, err, keysAndValues...) -} - -type ZapLogger struct { - zap *zap.SugaredLogger - level zapcore.Level - loggerName string - loggerPrefixName string -} - -func NewZapLogger( - loggerPrefixName, loggerName string, - logLevel int, - isStdout bool, - isJson bool, - logLocation string, - rotateCount uint, -) (*ZapLogger, error) { - zapConfig := zap.Config{ - Level: zap.NewAtomicLevelAt(logLevelMap[logLevel]), - // EncoderConfig: zap.NewProductionEncoderConfig(), - // InitialFields: map[string]interface{}{"PID": os.Getegid()}, - DisableStacktrace: true, - } - if isJson { - zapConfig.Encoding = "json" - } else { - zapConfig.Encoding = "console" - } - // if isStdout { - // zapConfig.OutputPaths = append(zapConfig.OutputPaths, "stdout", "stderr") - // } - zl := &ZapLogger{level: logLevelMap[logLevel], loggerName: loggerName, loggerPrefixName: loggerPrefixName} - opts, err := zl.cores(isStdout, isJson, logLocation, rotateCount) - if err != nil { - return nil, err - } - l, err := zapConfig.Build(opts) - if err != nil { - return nil, err - } - zl.zap = l.Sugar() - return zl, nil -} - -func (l *ZapLogger) cores(isStdout bool, isJson bool, logLocation string, rotateCount uint) (zap.Option, error) { - c := zap.NewProductionEncoderConfig() - c.EncodeTime = l.timeEncoder - c.EncodeDuration = zapcore.SecondsDurationEncoder - c.MessageKey = "msg" - c.LevelKey = "level" - c.TimeKey = "time" - c.CallerKey = "caller" - c.NameKey = "logger" - var fileEncoder zapcore.Encoder - if isJson { - c.EncodeLevel = zapcore.CapitalLevelEncoder - fileEncoder = zapcore.NewJSONEncoder(c) - fileEncoder.AddInt("PID", os.Getpid()) - } else { - c.EncodeLevel = l.capitalColorLevelEncoder - c.EncodeCaller = l.customCallerEncoder - fileEncoder = zapcore.NewConsoleEncoder(c) - } - writer, err := l.getWriter(logLocation, rotateCount) - if err != nil { - return nil, err - } - var cores []zapcore.Core - // if logLocation == "" && !isStdout { - // return nil, errors.New("log storage location is empty and not stdout") - // } - if logLocation != "" { - cores = []zapcore.Core{ - zapcore.NewCore(fileEncoder, writer, zap.NewAtomicLevelAt(l.level)), - } - } - if isStdout { - cores = append(cores, zapcore.NewCore(fileEncoder, zapcore.Lock(os.Stdout), zap.NewAtomicLevelAt(l.level))) - // cores = append(cores, zapcore.NewCore(fileEncoder, zapcore.Lock(os.Stderr), zap.NewAtomicLevelAt(l.level))) - } - return zap.WrapCore(func(c zapcore.Core) zapcore.Core { - return zapcore.NewTee(cores...) - }), nil -} - -func (l *ZapLogger) customCallerEncoder(caller zapcore.EntryCaller, enc zapcore.PrimitiveArrayEncoder) { - s := "[" + caller.TrimmedPath() + "]" - // color, ok := _levelToColor[l.level] - // if !ok { - // color = _levelToColor[zapcore.ErrorLevel] - // } - enc.AppendString(s) -} - -func (l *ZapLogger) timeEncoder(t time.Time, enc zapcore.PrimitiveArrayEncoder) { - layout := "2006-01-02 15:04:05.000" - type appendTimeEncoder interface { - AppendTimeLayout(time.Time, string) - } - if enc, ok := enc.(appendTimeEncoder); ok { - enc.AppendTimeLayout(t, layout) - return - } - enc.AppendString(t.Format(layout)) -} - -func (l *ZapLogger) getWriter(logLocation string, rorateCount uint) (zapcore.WriteSyncer, error) { - logf, err := rotatelogs.New(logLocation+sp+l.loggerPrefixName+".%Y-%m-%d", - rotatelogs.WithRotationCount(rorateCount), - rotatelogs.WithRotationTime(time.Duration(config.Config.Log.RotationTime)*time.Hour), - ) - if err != nil { - return nil, err - } - return zapcore.AddSync(logf), nil -} - -func (l *ZapLogger) capitalColorLevelEncoder(level zapcore.Level, enc zapcore.PrimitiveArrayEncoder) { - s, ok := _levelToCapitalColorString[level] - if !ok { - s = _unknownLevelColor[zapcore.ErrorLevel] - } - pid := fmt.Sprintf("["+"PID:"+"%d"+"]", os.Getpid()) - color := _levelToColor[level] - enc.AppendString(s) - enc.AppendString(color.Add(pid)) - if l.loggerName != "" { - enc.AppendString(color.Add(l.loggerName)) - } -} - -func (l *ZapLogger) ToZap() *zap.SugaredLogger { - return l.zap -} - -func (l *ZapLogger) Debug(ctx context.Context, msg string, keysAndValues ...interface{}) { - keysAndValues = l.kvAppend(ctx, keysAndValues) - l.zap.Debugw(msg, keysAndValues...) -} - -func (l *ZapLogger) Info(ctx context.Context, msg string, keysAndValues ...interface{}) { - keysAndValues = l.kvAppend(ctx, keysAndValues) - l.zap.Infow(msg, keysAndValues...) -} - -func (l *ZapLogger) Warn(ctx context.Context, msg string, err error, keysAndValues ...interface{}) { - if err != nil { - keysAndValues = append(keysAndValues, "error", err.Error()) - } - keysAndValues = l.kvAppend(ctx, keysAndValues) - l.zap.Warnw(msg, keysAndValues...) -} - -func (l *ZapLogger) Error(ctx context.Context, msg string, err error, keysAndValues ...interface{}) { - if err != nil { - keysAndValues = append(keysAndValues, "error", err.Error()) - } - keysAndValues = l.kvAppend(ctx, keysAndValues) - l.zap.Errorw(msg, keysAndValues...) -} - -func (l *ZapLogger) kvAppend(ctx context.Context, keysAndValues []interface{}) []interface{} { - if ctx == nil { - return keysAndValues - } - operationID := mcontext.GetOperationID(ctx) - opUserID := mcontext.GetOpUserID(ctx) - connID := mcontext.GetConnID(ctx) - triggerID := mcontext.GetTriggerID(ctx) - opUserPlatform := mcontext.GetOpUserPlatform(ctx) - remoteAddr := mcontext.GetRemoteAddr(ctx) - if opUserID != "" { - keysAndValues = append([]interface{}{constant.OpUserID, opUserID}, keysAndValues...) - } - if operationID != "" { - keysAndValues = append([]interface{}{constant.OperationID, operationID}, keysAndValues...) - } - if connID != "" { - keysAndValues = append([]interface{}{constant.ConnID, connID}, keysAndValues...) - } - if triggerID != "" { - keysAndValues = append([]interface{}{constant.TriggerID, triggerID}, keysAndValues...) - } - if opUserPlatform != "" { - keysAndValues = append([]interface{}{constant.OpUserPlatform, opUserPlatform}, keysAndValues...) - } - if remoteAddr != "" { - keysAndValues = append([]interface{}{constant.RemoteAddr, remoteAddr}, keysAndValues...) - } - return keysAndValues -} - -func (l *ZapLogger) WithValues(keysAndValues ...interface{}) Logger { - dup := *l - dup.zap = l.zap.With(keysAndValues...) - return &dup -} - -func (l *ZapLogger) WithName(name string) Logger { - dup := *l - dup.zap = l.zap.Named(name) - return &dup -} - -func (l *ZapLogger) WithCallDepth(depth int) Logger { - dup := *l - dup.zap = l.zap.WithOptions(zap.AddCallerSkip(depth)) - return &dup -} diff --git a/pkg/common/log/zk_logger.go b/pkg/common/log/zk_logger.go deleted file mode 100644 index 3579e2022..000000000 --- a/pkg/common/log/zk_logger.go +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package log - -import ( - "context" - "fmt" -) - -type ZkLogger struct{} - -func NewZkLogger() *ZkLogger { - return &ZkLogger{} -} - -func (l *ZkLogger) Printf(format string, a ...interface{}) { - ZInfo(context.Background(), "zookeeper output", "msg", fmt.Sprintf(format, a...)) -} diff --git a/pkg/common/mcontext/ctx.go b/pkg/common/mcontext/ctx.go deleted file mode 100644 index 79234e2e0..000000000 --- a/pkg/common/mcontext/ctx.go +++ /dev/null @@ -1,154 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package mcontext - -import ( - "context" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -var mapper = []string{constant.OperationID, constant.OpUserID, constant.OpUserPlatform, constant.ConnID} - -func WithOpUserIDContext(ctx context.Context, opUserID string) context.Context { - return context.WithValue(ctx, constant.OpUserID, opUserID) -} - -func WithOpUserPlatformContext(ctx context.Context, platform string) context.Context { - return context.WithValue(ctx, constant.OpUserPlatform, platform) -} - -func WithTriggerIDContext(ctx context.Context, triggerID string) context.Context { - return context.WithValue(ctx, constant.TriggerID, triggerID) -} - -func NewCtx(operationID string) context.Context { - c := context.Background() - ctx := context.WithValue(c, constant.OperationID, operationID) - return SetOperationID(ctx, operationID) -} - -func SetOperationID(ctx context.Context, operationID string) context.Context { - return context.WithValue(ctx, constant.OperationID, operationID) -} - -func SetOpUserID(ctx context.Context, opUserID string) context.Context { - return context.WithValue(ctx, constant.OpUserID, opUserID) -} - -func SetConnID(ctx context.Context, connID string) context.Context { - return context.WithValue(ctx, constant.ConnID, connID) -} - -func GetOperationID(ctx context.Context) string { - if ctx.Value(constant.OperationID) != nil { - s, ok := ctx.Value(constant.OperationID).(string) - if ok { - return s - } - } - return "" -} - -func GetOpUserID(ctx context.Context) string { - if ctx.Value(constant.OpUserID) != "" { - s, ok := ctx.Value(constant.OpUserID).(string) - if ok { - return s - } - } - return "" -} - -func GetConnID(ctx context.Context) string { - if ctx.Value(constant.ConnID) != "" { - s, ok := ctx.Value(constant.ConnID).(string) - if ok { - return s - } - } - return "" -} - -func GetTriggerID(ctx context.Context) string { - if ctx.Value(constant.TriggerID) != "" { - s, ok := ctx.Value(constant.TriggerID).(string) - if ok { - return s - } - } - return "" -} - -func GetOpUserPlatform(ctx context.Context) string { - if ctx.Value(constant.OpUserPlatform) != "" { - s, ok := ctx.Value(constant.OpUserPlatform).(string) - if ok { - return s - } - } - return "" -} - -func GetRemoteAddr(ctx context.Context) string { - if ctx.Value(constant.RemoteAddr) != "" { - s, ok := ctx.Value(constant.RemoteAddr).(string) - if ok { - return s - } - } - return "" -} - -func GetMustCtxInfo(ctx context.Context) (operationID, opUserID, platform, connID string, err error) { - operationID, ok := ctx.Value(constant.OperationID).(string) - if !ok { - err = errs.ErrArgs.Wrap("ctx missing operationID") - return - } - opUserID, ok1 := ctx.Value(constant.OpUserID).(string) - if !ok1 { - err = errs.ErrArgs.Wrap("ctx missing opUserID") - return - } - platform, ok2 := ctx.Value(constant.OpUserPlatform).(string) - if !ok2 { - err = errs.ErrArgs.Wrap("ctx missing platform") - return - } - connID, _ = ctx.Value(constant.ConnID).(string) - return -} - -func GetCtxInfos(ctx context.Context) (operationID, opUserID, platform, connID string, err error) { - operationID, ok := ctx.Value(constant.OperationID).(string) - if !ok { - err = errs.ErrArgs.Wrap("ctx missing operationID") - return - } - opUserID, _ = ctx.Value(constant.OpUserID).(string) - platform, _ = ctx.Value(constant.OpUserPlatform).(string) - connID, _ = ctx.Value(constant.ConnID).(string) - return -} - -func WithMustInfoCtx(values []string) context.Context { - ctx := context.Background() - for i, v := range values { - ctx = context.WithValue(ctx, mapper[i], v) - } - return ctx -} diff --git a/pkg/common/mw/gin.go b/pkg/common/mw/gin.go deleted file mode 100644 index 287cd5f53..000000000 --- a/pkg/common/mw/gin.go +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package mw - -import ( - "errors" - "net/http" - - "github.com/gin-gonic/gin" - "github.com/redis/go-redis/v9" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/apiresp" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -// CorsHandler gin cross-domain configuration. -func CorsHandler() gin.HandlerFunc { - return func(c *gin.Context) { - c.Writer.Header().Set("Access-Control-Allow-Origin", "*") - c.Header("Access-Control-Allow-Methods", "*") - c.Header("Access-Control-Allow-Headers", "*") - c.Header( - "Access-Control-Expose-Headers", - "Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers,Cache-Control,Content-Language,Content-Type,Expires,Last-Modified,Pragma,FooBar", - ) // Cross-domain key settings allow browsers to resolve. - c.Header( - "Access-Control-Max-Age", - "172800", - ) // Cache request information in seconds. - c.Header( - "Access-Control-Allow-Credentials", - "false", - ) // Whether cross-domain requests need to carry cookie information, the default setting is true. - c.Header( - "content-type", - "application/json", - ) // Set the return format to json. - // Release all option pre-requests - if c.Request.Method == http.MethodOptions { - c.JSON(http.StatusOK, "Options Request!") - c.Abort() - return - } - c.Next() - } -} - -func GinParseOperationID() gin.HandlerFunc { - return func(c *gin.Context) { - if c.Request.Method == http.MethodPost { - operationID := c.Request.Header.Get(constant.OperationID) - if operationID == "" { - err := errors.New("header must have operationID") - apiresp.GinError(c, errs.ErrArgs.Wrap(err.Error())) - c.Abort() - return - } - c.Set(constant.OperationID, operationID) - } - c.Next() - } -} - -func GinParseToken(rdb redis.UniversalClient) gin.HandlerFunc { - dataBase := controller.NewAuthDatabase( - cache.NewMsgCacheModel(rdb), - config.Config.Secret, - config.Config.TokenPolicy.Expire, - ) - return func(c *gin.Context) { - switch c.Request.Method { - case http.MethodPost: - token := c.Request.Header.Get(constant.Token) - if token == "" { - log.ZWarn(c, "header get token error", errs.ErrArgs.Wrap("header must have token")) - apiresp.GinError(c, errs.ErrArgs.Wrap("header must have token")) - c.Abort() - return - } - claims, err := tokenverify.GetClaimFromToken(token) - if err != nil { - log.ZWarn(c, "jwt get token error", errs.ErrTokenUnknown.Wrap()) - apiresp.GinError(c, errs.ErrTokenUnknown.Wrap()) - c.Abort() - return - } - m, err := dataBase.GetTokensWithoutError(c, claims.UserID, claims.PlatformID) - if err != nil { - log.ZWarn(c, "cache get token error", errs.ErrTokenNotExist.Wrap()) - apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) - c.Abort() - return - } - if len(m) == 0 { - log.ZWarn(c, "cache do not exist token error", errs.ErrTokenNotExist.Wrap()) - apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) - c.Abort() - return - } - if v, ok := m[token]; ok { - switch v { - case constant.NormalToken: - case constant.KickedToken: - log.ZWarn(c, "cache kicked token error", errs.ErrTokenKicked.Wrap()) - apiresp.GinError(c, errs.ErrTokenKicked.Wrap()) - c.Abort() - return - default: - log.ZWarn(c, "cache unknown token error", errs.ErrTokenUnknown.Wrap()) - apiresp.GinError(c, errs.ErrTokenUnknown.Wrap()) - c.Abort() - return - } - } else { - apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) - c.Abort() - return - } - c.Set(constant.OpUserPlatform, constant.PlatformIDToName(claims.PlatformID)) - c.Set(constant.OpUserID, claims.UserID) - c.Next() - } - } -} diff --git a/pkg/common/mw/intercept_chain.go b/pkg/common/mw/intercept_chain.go deleted file mode 100644 index ae5361631..000000000 --- a/pkg/common/mw/intercept_chain.go +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package mw - -import ( - "context" - - "google.golang.org/grpc" -) - -func InterceptChain(intercepts ...grpc.UnaryServerInterceptor) grpc.UnaryServerInterceptor { - l := len(intercepts) - return func(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp interface{}, err error) { - chain := func(currentInter grpc.UnaryServerInterceptor, currentHandler grpc.UnaryHandler) grpc.UnaryHandler { - return func(currentCtx context.Context, currentReq interface{}) (interface{}, error) { - return currentInter( - currentCtx, - currentReq, - info, - currentHandler) - } - } - chainHandler := handler - for i := l - 1; i >= 0; i-- { - chainHandler = chain(intercepts[i], chainHandler) - } - return chainHandler(ctx, req) - } -} diff --git a/pkg/common/mw/rpc_client_interceptor.go b/pkg/common/mw/rpc_client_interceptor.go deleted file mode 100644 index 91a166c32..000000000 --- a/pkg/common/mw/rpc_client_interceptor.go +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package mw - -import ( - "context" - "errors" - "fmt" - "strings" - - "google.golang.org/grpc" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo" -) - -func GrpcClient() grpc.DialOption { - return grpc.WithChainUnaryInterceptor(RpcClientInterceptor) -} - -func RpcClientInterceptor( - ctx context.Context, - method string, - req, resp interface{}, - cc *grpc.ClientConn, - invoker grpc.UnaryInvoker, - opts ...grpc.CallOption, -) (err error) { - if ctx == nil { - return errs.ErrInternalServer.Wrap("call rpc request context is nil") - } - ctx, err = getRpcContext(ctx, method) - if err != nil { - return err - } - log.ZDebug(ctx, "get rpc ctx success", "conn target", cc.Target()) - err = invoker(ctx, method, req, resp, cc, opts...) - if err == nil { - log.ZInfo(ctx, "rpc client resp", "funcName", method, "resp", rpcString(resp)) - return nil - } - log.ZError(ctx, "rpc resp error", err) - rpcErr, ok := err.(interface{ GRPCStatus() *status.Status }) - if !ok { - return errs.ErrInternalServer.Wrap(err.Error()) - } - sta := rpcErr.GRPCStatus() - if sta.Code() == 0 { - return errs.NewCodeError(errs.ServerInternalError, err.Error()).Wrap() - } - if details := sta.Details(); len(details) > 0 { - errInfo, ok := details[0].(*errinfo.ErrorInfo) - if ok { - s := strings.Join(errInfo.Warp, "->") + errInfo.Cause - return errs.NewCodeError(int(sta.Code()), sta.Message()).WithDetail(s).Wrap() - } - } - return errs.NewCodeError(int(sta.Code()), sta.Message()).Wrap() -} - -func getRpcContext(ctx context.Context, method string) (context.Context, error) { - md := metadata.Pairs() - if keys, _ := ctx.Value(constant.RpcCustomHeader).([]string); len(keys) > 0 { - for _, key := range keys { - val, ok := ctx.Value(key).([]string) - if !ok { - return nil, errs.ErrInternalServer.Wrap(fmt.Sprintf("ctx missing key %s", key)) - } - if len(val) == 0 { - return nil, errs.ErrInternalServer.Wrap(fmt.Sprintf("ctx key %s value is empty", key)) - } - md.Set(key, val...) - } - md.Set(constant.RpcCustomHeader, keys...) - } - operationID, ok := ctx.Value(constant.OperationID).(string) - if !ok { - log.ZWarn(ctx, "ctx missing operationID", errors.New("ctx missing operationID"), "funcName", method) - return nil, errs.ErrArgs.Wrap("ctx missing operationID") - } - md.Set(constant.OperationID, operationID) - var checkArgs []string - checkArgs = append(checkArgs, constant.OperationID, operationID) - opUserID, ok := ctx.Value(constant.OpUserID).(string) - if ok { - md.Set(constant.OpUserID, opUserID) - checkArgs = append(checkArgs, constant.OpUserID, opUserID) - } - opUserIDPlatformID, ok := ctx.Value(constant.OpUserPlatform).(string) - if ok { - md.Set(constant.OpUserPlatform, opUserIDPlatformID) - } - connID, ok := ctx.Value(constant.ConnID).(string) - if ok { - md.Set(constant.ConnID, connID) - } - return metadata.NewOutgoingContext(ctx, md), nil -} diff --git a/pkg/common/mw/rpc_server_interceptor.go b/pkg/common/mw/rpc_server_interceptor.go deleted file mode 100644 index ec43069da..000000000 --- a/pkg/common/mw/rpc_server_interceptor.go +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package mw - -import ( - "context" - "fmt" - "math" - "runtime" - "strings" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/checker" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - - "github.com/pkg/errors" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/metadata" - "google.golang.org/grpc/status" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw/specialerror" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo" -) - -func rpcString(v interface{}) string { - if s, ok := v.(interface{ String() string }); ok { - return s.String() - } - return fmt.Sprintf("%+v", v) -} - -func RpcServerInterceptor( - ctx context.Context, - req interface{}, - info *grpc.UnaryServerInfo, - handler grpc.UnaryHandler, -) (resp interface{}, err error) { - log.ZDebug(ctx, "rpc server req", "req", rpcString(req)) - //defer func() { - // if r := recover(); r != nil { - // log.ZError(ctx, "rpc panic", nil, "FullMethod", info.FullMethod, "type:", fmt.Sprintf("%T", r), "panic:", r) - // fmt.Printf("panic: %+v\nstack info: %s\n", r, string(debug.Stack())) - // pc, file, line, ok := runtime.Caller(4) - // if !ok { - // panic("get runtime.Caller failed") - // } - // errInfo := &errinfo.ErrorInfo{ - // Path: file, - // Line: uint32(line), - // Name: runtime.FuncForPC(pc).Name(), - // Cause: fmt.Sprintf("%s", r), - // Warp: nil, - // } - // sta, err_ := status.New(codes.Code(errs.ErrInternalServer.Code()), - // errs.ErrInternalServer.Msg()).WithDetails(errInfo) - // if err_ != nil { - // panic(err_) - // } - // err = sta.Err() - // } - //}() - funcName := info.FullMethod - md, ok := metadata.FromIncomingContext(ctx) - if !ok { - return nil, status.New(codes.InvalidArgument, "missing metadata").Err() - } - if keys := md.Get(constant.RpcCustomHeader); len(keys) > 0 { - for _, key := range keys { - values := md.Get(key) - if len(values) == 0 { - return nil, status.New(codes.InvalidArgument, fmt.Sprintf("missing metadata key %s", key)).Err() - } - ctx = context.WithValue(ctx, key, values) - } - } - args := make([]string, 0, 4) - if opts := md.Get(constant.OperationID); len(opts) != 1 || opts[0] == "" { - return nil, status.New(codes.InvalidArgument, "operationID error").Err() - } else { - args = append(args, constant.OperationID, opts[0]) - ctx = context.WithValue(ctx, constant.OperationID, opts[0]) - } - if opts := md.Get(constant.OpUserID); len(opts) == 1 { - args = append(args, constant.OpUserID, opts[0]) - ctx = context.WithValue(ctx, constant.OpUserID, opts[0]) - } - if opts := md.Get(constant.OpUserPlatform); len(opts) == 1 { - ctx = context.WithValue(ctx, constant.OpUserPlatform, opts[0]) - } - if opts := md.Get(constant.ConnID); len(opts) == 1 { - ctx = context.WithValue(ctx, constant.ConnID, opts[0]) - } - log.ZInfo(ctx, "rpc server req", "funcName", funcName, "req", rpcString(req)) - resp, err = func() (interface{}, error) { - if err := checker.Validate(req); err != nil { - return nil, err - } - return handler(ctx, req) - }() - if err == nil { - log.ZInfo(ctx, "rpc server resp", "funcName", funcName, "resp", rpcString(resp)) - return resp, nil - } - log.ZError(ctx, "rpc server resp", err, "funcName", funcName) - unwrap := errs.Unwrap(err) - codeErr := specialerror.ErrCode(unwrap) - if codeErr == nil { - log.ZError(ctx, "rpc InternalServer error", err, "req", req) - codeErr = errs.ErrInternalServer - } - code := codeErr.Code() - if code <= 0 || code > math.MaxUint32 { - log.ZError(ctx, "rpc UnknownError", err, "rpc UnknownCode:", code) - code = errs.ServerInternalError - } - grpcStatus := status.New(codes.Code(code), codeErr.Msg()) - var errInfo *errinfo.ErrorInfo - if config.Config.Log.WithStack { - if unwrap != err { - sti, ok := err.(interface{ StackTrace() errors.StackTrace }) - if ok { - log.ZWarn( - ctx, - "rpc server resp", - err, - "funcName", - funcName, - "unwrap", - unwrap.Error(), - "stack", - fmt.Sprintf("%+v", err), - ) - if fs := sti.StackTrace(); len(fs) > 0 { - pc := uintptr(fs[0]) - fn := runtime.FuncForPC(pc) - file, line := fn.FileLine(pc) - errInfo = &errinfo.ErrorInfo{ - Path: file, - Line: uint32(line), - Name: fn.Name(), - Cause: unwrap.Error(), - Warp: nil, - } - if arr := strings.Split(err.Error(), ": "); len(arr) > 1 { - errInfo.Warp = arr[:len(arr)-1] - } - } - } - } - } - if errInfo == nil { - errInfo = &errinfo.ErrorInfo{Cause: err.Error()} - } - details, err := grpcStatus.WithDetails(errInfo) - if err != nil { - log.ZWarn(ctx, "rpc server resp WithDetails error", err, "funcName", funcName) - return nil, errs.Wrap(err) - } - log.ZWarn(ctx, "rpc server resp", err, "funcName", funcName) - return nil, details.Err() -} - -func GrpcServer() grpc.ServerOption { - return grpc.ChainUnaryInterceptor(RpcServerInterceptor) -} diff --git a/pkg/common/mw/specialerror/error.go b/pkg/common/mw/specialerror/error.go deleted file mode 100644 index b8b8d27ae..000000000 --- a/pkg/common/mw/specialerror/error.go +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package specialerror - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -var handlers []func(err error) errs.CodeError - -func AddErrHandler(h func(err error) errs.CodeError) { - if h == nil { - panic("nil handler") - } - handlers = append(handlers, h) -} - -func AddReplace(target error, codeErr errs.CodeError) { - AddErrHandler(func(err error) errs.CodeError { - if err == target { - return codeErr - } - return nil - }) -} - -func ErrCode(err error) errs.CodeError { - if codeErr, ok := err.(errs.CodeError); ok { - return codeErr - } - for i := 0; i < len(handlers); i++ { - if codeErr := handlers[i](err); codeErr != nil { - return codeErr - } - } - return nil -} diff --git a/pkg/common/network/ip.go b/pkg/common/network/ip.go deleted file mode 100644 index bf062429d..000000000 --- a/pkg/common/network/ip.go +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package network - -import ( - utils "github.com/OpenIMSDK/open_utils" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" -) - -func GetRpcRegisterIP(configIP string) (string, error) { - registerIP := configIP - if registerIP == "" { - ip, err := utils.GetLocalIP() - if err != nil { - return "", err - } - registerIP = ip - } - return registerIP, nil -} - -func GetListenIP(configIP string) string { - if configIP == "" { - return constant.LocalHost - } else { - return configIP - } -} diff --git a/pkg/common/prome/prometheus.go b/pkg/common/prome/prometheus.go index d66b1df70..26efb9dae 100644 --- a/pkg/common/prome/prometheus.go +++ b/pkg/common/prome/prometheus.go @@ -19,7 +19,7 @@ import ( "net/http" "strconv" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" + "github.com/OpenIMSDK/tools/config" "github.com/gin-gonic/gin" "github.com/prometheus/client_golang/prometheus" diff --git a/pkg/common/tokenverify/jwt_token.go b/pkg/common/tokenverify/jwt_token.go deleted file mode 100644 index 317347b1d..000000000 --- a/pkg/common/tokenverify/jwt_token.go +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package tokenverify - -import ( - "context" - "fmt" - "time" - - "github.com/golang-jwt/jwt/v4" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" -) - -type Claims struct { - UserID string - PlatformID int // login platform - jwt.RegisteredClaims -} - -func BuildClaims(uid string, platformID int, ttl int64) Claims { - now := time.Now() - before := now.Add(-time.Minute * 5) - return Claims{ - UserID: uid, - PlatformID: platformID, - RegisteredClaims: jwt.RegisteredClaims{ - ExpiresAt: jwt.NewNumericDate(now.Add(time.Duration(ttl*24) * time.Hour)), // Expiration time - IssuedAt: jwt.NewNumericDate(now), // Issuing time - NotBefore: jwt.NewNumericDate(before), // Begin Effective time - }, - } -} - -func secret() jwt.Keyfunc { - return func(token *jwt.Token) (interface{}, error) { - return []byte(config.Config.Secret), nil - } -} - -func GetClaimFromToken(tokensString string) (*Claims, error) { - token, err := jwt.ParseWithClaims(tokensString, &Claims{}, secret()) - if err != nil { - if ve, ok := err.(*jwt.ValidationError); ok { - if ve.Errors&jwt.ValidationErrorMalformed != 0 { - return nil, utils.Wrap(errs.ErrTokenMalformed, "") - } else if ve.Errors&jwt.ValidationErrorExpired != 0 { - return nil, utils.Wrap(errs.ErrTokenExpired, "") - } else if ve.Errors&jwt.ValidationErrorNotValidYet != 0 { - return nil, utils.Wrap(errs.ErrTokenNotValidYet, "") - } else { - return nil, utils.Wrap(errs.ErrTokenUnknown, "") - } - } else { - return nil, utils.Wrap(errs.ErrTokenUnknown, "") - } - } else { - if claims, ok := token.Claims.(*Claims); ok && token.Valid { - return claims, nil - } - return nil, utils.Wrap(errs.ErrTokenUnknown, "") - } -} - -func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) { - opUserID := mcontext.GetOpUserID(ctx) - if utils.IsContain(opUserID, config.Config.Manager.UserID) { - return nil - } - if opUserID == ownerUserID { - return nil - } - return errs.ErrNoPermission.Wrap(utils.GetSelfFuncName()) -} - -func IsAppManagerUid(ctx context.Context) bool { - return utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID) -} - -func CheckAdmin(ctx context.Context) error { - if utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID) { - return nil - } - return errs.ErrNoPermission.Wrap(fmt.Sprintf("user %s is not admin userID", mcontext.GetOpUserID(ctx))) -} - -func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) { - return GetClaimFromToken(string(redisToken.([]uint8))) -} - -func IsManagerUserID(opUserID string) bool { - return utils.IsContain(opUserID, config.Config.Manager.UserID) -} - -func WsVerifyToken(token, userID string, platformID int) error { - claim, err := GetClaimFromToken(token) - if err != nil { - return err - } - if claim.UserID != userID { - return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token uid %s != userID %s", claim.UserID, userID)) - } - if claim.PlatformID != platformID { - return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token platform %d != %d", claim.PlatformID, platformID)) - } - return nil -} diff --git a/pkg/common/tokenverify/jwt_token_test.go b/pkg/common/tokenverify/jwt_token_test.go deleted file mode 100644 index 4e8e98c41..000000000 --- a/pkg/common/tokenverify/jwt_token_test.go +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package tokenverify - -import ( - "testing" - - "github.com/golang-jwt/jwt/v4" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" -) - -func Test_ParseToken(t *testing.T) { - config.Config.Secret = "OpenIM_server" - claims1 := BuildClaims("123456", constant.AndroidPadPlatformID, 10) - token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims1) - tokenString, err := token.SignedString([]byte(config.Config.Secret)) - if err != nil { - t.Fatal(err) - } - claim2, err := GetClaimFromToken(tokenString) - if err != nil { - t.Fatal(err) - } - t.Log(claim2) -} diff --git a/pkg/discoveryregistry/discovery_register.go b/pkg/discoveryregistry/discovery_register.go deleted file mode 100644 index 4ebabe7a8..000000000 --- a/pkg/discoveryregistry/discovery_register.go +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package discoveryregistry - -import ( - "context" - - "google.golang.org/grpc" -) - -type Conn interface { - GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error) - GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error) - AddOption(opts ...grpc.DialOption) - CloseConn(conn grpc.ClientConnInterface) - // do not use this method for call rpc - GetClientLocalConns() map[string][]grpc.ClientConnInterface -} - -type SvcDiscoveryRegistry interface { - Conn - Register(serviceName, host string, port int, opts ...grpc.DialOption) error - UnRegister() error - CreateRpcRootNodes(serviceNames []string) error - RegisterConf2Registry(key string, conf []byte) error - GetConfFromRegistry(key string) ([]byte, error) -} diff --git a/pkg/discoveryregistry/zookeeper/conf.go b/pkg/discoveryregistry/zookeeper/conf.go deleted file mode 100644 index 034c525ba..000000000 --- a/pkg/discoveryregistry/zookeeper/conf.go +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package zookeeper - -import ( - "github.com/go-zookeeper/zk" -) - -func (s *ZkClient) RegisterConf2Registry(key string, conf []byte) error { - exists, _, err := s.conn.Exists(s.getPath(key)) - if err != nil { - return err - } - if exists { - if err := s.conn.Delete(s.getPath(key), 0); err != nil { - return err - } - } - _, err = s.conn.Create(s.getPath(key), conf, 0, zk.WorldACL(zk.PermAll)) - if err != zk.ErrNodeExists { - return err - } - return nil -} - -func (s *ZkClient) GetConfFromRegistry(key string) ([]byte, error) { - bytes, _, err := s.conn.Get(s.getPath(key)) - return bytes, err -} diff --git a/pkg/discoveryregistry/zookeeper/discover.go b/pkg/discoveryregistry/zookeeper/discover.go deleted file mode 100644 index 94cf1f84a..000000000 --- a/pkg/discoveryregistry/zookeeper/discover.go +++ /dev/null @@ -1,136 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package zookeeper - -import ( - "context" - "fmt" - "io" - "strings" - - "github.com/pkg/errors" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - - "github.com/go-zookeeper/zk" - "google.golang.org/grpc" - "google.golang.org/grpc/resolver" -) - -var ( - ErrConnIsNil = errors.New("conn is nil") - ErrConnIsNilButLocalNotNil = errors.New("conn is nil, but local is not nil") -) - -func (s *ZkClient) watch() { - for { - event := <-s.eventChan - switch event.Type { - case zk.EventSession: - if event.State == zk.StateHasSession && s.isRegistered { - s.logger.Printf("zk session event stateHasSession: %+v, client prepare to create new temp node", event) - node, err := s.CreateTempNode(s.rpcRegisterName, s.rpcRegisterAddr) - if err != nil { - s.logger.Printf("zk session event stateHasSession: %+v, create temp node error: %v", event, err) - } else { - s.node = node - } - } else { - s.logger.Printf("zk session event: %+v", event) - } - case zk.EventNodeChildrenChanged: - s.logger.Printf("zk event: %s", event.Path) - l := strings.Split(event.Path, "/") - if len(l) > 1 { - serviceName := l[len(l)-1] - s.lock.Lock() - s.flushResolverAndDeleteLocal(serviceName) - s.lock.Unlock() - } - s.logger.Printf("zk event handle success: %s", event.Path) - case zk.EventNodeDataChanged: - case zk.EventNodeCreated: - case zk.EventNodeDeleted: - case zk.EventNotWatching: - } - } -} - -func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) { - path := s.getPath(serviceName) - _, _, _, err = s.conn.ChildrenW(path) - if err != nil { - return nil, errors.Wrap(err, "children watch error") - } - childNodes, _, err := s.conn.Children(path) - if err != nil { - return nil, errors.Wrap(err, "get children error") - } else { - for _, child := range childNodes { - fullPath := path + "/" + child - data, _, err := s.conn.Get(fullPath) - if err != nil { - if err == zk.ErrNoNode { - return nil, errors.Wrap(err, "this is zk ErrNoNode") - } - return nil, errors.Wrap(err, "get children error") - } - log.ZDebug(context.Background(), "get addrs from remote", "conn", string(data)) - conns = append(conns, resolver.Address{Addr: string(data), ServerName: serviceName}) - } - } - return conns, nil -} - -func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error) { - s.logger.Printf("get conns from client, serviceName: %s", serviceName) - s.lock.Lock() - defer s.lock.Unlock() - conns := s.localConns[serviceName] - if len(conns) == 0 { - var err error - s.logger.Printf("get conns from zk remote, serviceName: %s", serviceName) - addrs, err := s.GetConnsRemote(serviceName) - if err != nil { - return nil, err - } - if len(addrs) == 0 { - return nil, fmt.Errorf("no conn for service %s, grpc server may not exist, local conn is %v, please check zookeeper server %v, path: %s", serviceName, s.localConns, s.zkServers, s.zkRoot) - } - for _, addr := range addrs { - cc, err := grpc.DialContext(ctx, addr.Addr, append(s.options, opts...)...) - if err != nil { - log.ZError(context.Background(), "dialContext failed", err, "addr", addr.Addr, "opts", append(s.options, opts...)) - return nil, errs.Wrap(err) - } - conns = append(conns, cc) - } - s.localConns[serviceName] = conns - } - return conns, nil -} - -func (s *ZkClient) GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error) { - newOpts := append(s.options, grpc.WithDefaultServiceConfig(fmt.Sprintf(`{"LoadBalancingPolicy": "%s"}`, s.balancerName))) - s.logger.Printf("get conn from client, serviceName: %s", serviceName) - return grpc.DialContext(ctx, fmt.Sprintf("%s:///%s", s.scheme, serviceName), append(newOpts, opts...)...) -} - -func (s *ZkClient) CloseConn(conn grpc.ClientConnInterface) { - if closer, ok := conn.(io.Closer); ok { - closer.Close() - } -} diff --git a/pkg/discoveryregistry/zookeeper/register.go b/pkg/discoveryregistry/zookeeper/register.go deleted file mode 100644 index 8fc5fa34e..000000000 --- a/pkg/discoveryregistry/zookeeper/register.go +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package zookeeper - -import ( - "time" - - "github.com/go-zookeeper/zk" - "google.golang.org/grpc" -) - -func (s *ZkClient) CreateRpcRootNodes(serviceNames []string) error { - for _, serviceName := range serviceNames { - if err := s.ensureName(serviceName); err != nil && err != zk.ErrNodeExists { - return err - } - } - return nil -} - -func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, err error) { - return s.conn.CreateProtectedEphemeralSequential( - s.getPath(rpcRegisterName)+"/"+addr+"_", - []byte(addr), - zk.WorldACL(zk.PermAll), - ) -} - -func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error { - if err := s.ensureName(rpcRegisterName); err != nil { - return err - } - addr := s.getAddr(host, port) - _, err := grpc.Dial(addr, opts...) - if err != nil { - return err - } - node, err := s.CreateTempNode(rpcRegisterName, addr) - if err != nil { - return err - } - s.rpcRegisterName = rpcRegisterName - s.rpcRegisterAddr = addr - s.node = node - s.isRegistered = true - return nil -} - -func (s *ZkClient) UnRegister() error { - s.lock.Lock() - defer s.lock.Unlock() - err := s.conn.Delete(s.node, -1) - if err != nil { - return err - } - time.Sleep(time.Second) - s.node = "" - s.rpcRegisterName = "" - s.rpcRegisterAddr = "" - s.isRegistered = false - s.localConns = make(map[string][]grpc.ClientConnInterface) - s.resolvers = make(map[string]*Resolver) - return nil -} diff --git a/pkg/discoveryregistry/zookeeper/resolver.go b/pkg/discoveryregistry/zookeeper/resolver.go deleted file mode 100644 index 7e9c8c125..000000000 --- a/pkg/discoveryregistry/zookeeper/resolver.go +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package zookeeper - -import ( - "context" - "strings" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - - "google.golang.org/grpc/resolver" -) - -type Resolver struct { - target resolver.Target - cc resolver.ClientConn - addrs []resolver.Address - - getConnsRemote func(serviceName string) (conns []resolver.Address, err error) -} - -func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) { - log.ZDebug( - context.Background(), - "start resolve now", - "target", - r.target, - "cc", - r.cc.UpdateState, - "serviceName", - strings.TrimLeft(r.target.URL.Path, "/"), - ) - newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/")) - if err != nil { - log.ZError(context.Background(), "resolve now error", err, "target", r.target) - return - } - r.addrs = newConns - if err := r.cc.UpdateState(resolver.State{Addresses: newConns}); err != nil { - log.ZError( - context.Background(), - "UpdateState error, conns is nil from svr", - err, - "conns", - newConns, - "zk path", - r.target.URL.Path, - ) - return - } - log.ZDebug(context.Background(), "resolve now finished", "target", r.target, "conns", r.addrs) -} - -func (r *Resolver) ResolveNow(o resolver.ResolveNowOptions) {} - -func (s *Resolver) Close() {} - -func (s *ZkClient) Build( - target resolver.Target, - cc resolver.ClientConn, - opts resolver.BuildOptions, -) (resolver.Resolver, error) { - s.logger.Printf("build resolver: %+v, cc: %+v", target, cc.UpdateState) - serviceName := strings.TrimLeft(target.URL.Path, "/") - if oldResolver, ok := s.resolvers[serviceName]; ok { - s.logger.Printf("rpc resolver exist: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName) - return oldResolver, nil - } - r := &Resolver{} - r.target = target - r.cc = cc - r.getConnsRemote = s.GetConnsRemote - r.ResolveNowZK(resolver.ResolveNowOptions{}) - s.lock.Lock() - defer s.lock.Unlock() - s.resolvers[serviceName] = r - s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName) - return r, nil -} - -func (s *ZkClient) Scheme() string { return s.scheme } diff --git a/pkg/discoveryregistry/zookeeper/zk.go b/pkg/discoveryregistry/zookeeper/zk.go deleted file mode 100644 index cc333c4b6..000000000 --- a/pkg/discoveryregistry/zookeeper/zk.go +++ /dev/null @@ -1,226 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package zookeeper - -import ( - "net" - "strconv" - "sync" - "time" - - "github.com/go-zookeeper/zk" - "google.golang.org/grpc" - "google.golang.org/grpc/resolver" -) - -const ( - defaultFreq = time.Minute * 30 - timeout = 5 -) - -type Logger interface { - Printf(string, ...interface{}) -} - -type ZkClient struct { - zkServers []string - zkRoot string - userName string - password string - - rpcRegisterName string - rpcRegisterAddr string - isRegistered bool - scheme string - - timeout int - conn *zk.Conn - eventChan <-chan zk.Event - node string - ticker *time.Ticker - - lock sync.Locker - options []grpc.DialOption - - resolvers map[string]*Resolver - localConns map[string][]grpc.ClientConnInterface - - balancerName string - - logger Logger -} - -type ZkOption func(*ZkClient) - -func WithRoundRobin() ZkOption { - return func(client *ZkClient) { - client.balancerName = "round_robin" - } -} - -func WithUserNameAndPassword(userName, password string) ZkOption { - return func(client *ZkClient) { - client.userName = userName - client.password = password - } -} - -func WithOptions(opts ...grpc.DialOption) ZkOption { - return func(client *ZkClient) { - client.options = opts - } -} - -func WithFreq(freq time.Duration) ZkOption { - return func(client *ZkClient) { - client.ticker = time.NewTicker(freq) - } -} - -func WithTimeout(timeout int) ZkOption { - return func(client *ZkClient) { - client.timeout = timeout - } -} - -func WithLogger(logger Logger) ZkOption { - return func(client *ZkClient) { - client.logger = logger - } -} - -func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClient, error) { - client := &ZkClient{ - zkServers: zkServers, - zkRoot: "/", - scheme: zkRoot, - timeout: timeout, - localConns: make(map[string][]grpc.ClientConnInterface), - resolvers: make(map[string]*Resolver), - lock: &sync.Mutex{}, - } - client.ticker = time.NewTicker(defaultFreq) - for _, option := range options { - option(client) - } - conn, eventChan, err := zk.Connect( - zkServers, - time.Duration(client.timeout)*time.Second, - zk.WithLogInfo(true), - zk.WithLogger(client.logger), - ) - if err != nil { - return nil, err - } - if client.userName != "" && client.password != "" { - if err := conn.AddAuth("digest", []byte(client.userName+":"+client.password)); err != nil { - return nil, err - } - } - client.zkRoot += zkRoot - client.eventChan = eventChan - client.conn = conn - if err := client.ensureRoot(); err != nil { - client.CloseZK() - return nil, err - } - resolver.Register(client) - go client.refresh() - go client.watch() - time.Sleep(time.Millisecond * 50) - return client, nil -} - -func (s *ZkClient) CloseZK() { - s.conn.Close() -} - -func (s *ZkClient) ensureAndCreate(node string) error { - exists, _, err := s.conn.Exists(node) - if err != nil { - return err - } - if !exists { - _, err := s.conn.Create(node, []byte(""), 0, zk.WorldACL(zk.PermAll)) - if err != nil && err != zk.ErrNodeExists { - return err - } - } - return nil -} - -func (s *ZkClient) refresh() { - for range s.ticker.C { - s.logger.Printf("refresh local conns") - s.lock.Lock() - for rpcName := range s.resolvers { - s.flushResolver(rpcName) - } - for rpcName := range s.localConns { - delete(s.localConns, rpcName) - } - s.lock.Unlock() - s.logger.Printf("refresh local conns success") - } -} - -func (s *ZkClient) flushResolverAndDeleteLocal(serviceName string) { - s.logger.Printf("start flush %s", serviceName) - s.flushResolver(serviceName) - delete(s.localConns, serviceName) -} - -func (s *ZkClient) flushResolver(serviceName string) { - r, ok := s.resolvers[serviceName] - if ok { - r.ResolveNowZK(resolver.ResolveNowOptions{}) - } -} - -func (s *ZkClient) GetZkConn() *zk.Conn { - return s.conn -} - -func (s *ZkClient) GetRootPath() string { - return s.zkRoot -} - -func (s *ZkClient) GetNode() string { - return s.node -} - -func (s *ZkClient) ensureRoot() error { - return s.ensureAndCreate(s.zkRoot) -} - -func (s *ZkClient) ensureName(rpcRegisterName string) error { - return s.ensureAndCreate(s.getPath(rpcRegisterName)) -} - -func (s *ZkClient) getPath(rpcRegisterName string) string { - return s.zkRoot + "/" + rpcRegisterName -} - -func (s *ZkClient) getAddr(host string, port int) string { - return net.JoinHostPort(host, strconv.Itoa(port)) -} - -func (s *ZkClient) AddOption(opts ...grpc.DialOption) { - s.options = append(s.options, opts...) -} - -func (s *ZkClient) GetClientLocalConns() map[string][]grpc.ClientConnInterface { - return s.localConns -} diff --git a/pkg/errs/code.go b/pkg/errs/code.go deleted file mode 100644 index 9f70ab5e6..000000000 --- a/pkg/errs/code.go +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package errs - -// UnknownCode 没有解析到code或解析的code=0. -const UnknownCode = 1000 - -const ( - FormattingError = 10001 - HasRegistered = 10002 - NotRegistered = 10003 - PasswordErr = 10004 - GetIMTokenErr = 10005 - RepeatSendCode = 10006 - MailSendCodeErr = 10007 - SmsSendCodeErr = 10008 - CodeInvalidOrExpired = 10009 - RegisterFailed = 10010 - ResetPasswordFailed = 10011 - RegisterLimit = 10012 - LoginLimit = 10013 - InvitationError = 10014 -) - -// 通用错误码. -const ( - NoError = 0 // 无错误 - DatabaseError = 90002 // redis/mysql等db错误 - NetworkError = 90004 // 网络错误 - DataError = 90007 // 数据错误 - - CallbackError = 80000 - - // 通用错误码. - ServerInternalError = 500 // 服务器内部错误 - ArgsError = 1001 // 输入参数错误 - NoPermissionError = 1002 // 权限不足 - DuplicateKeyError = 1003 - RecordNotFoundError = 1004 // 记录不存在 - - // 账号错误码. - UserIDNotFoundError = 1101 // UserID不存在 或未注册 - RegisteredAlreadyError = 1102 // 用户已经注册过了 - - // 群组错误码. - GroupIDNotFoundError = 1201 // GroupID不存在 - GroupIDExisted = 1202 // GroupID已存在 - NotInGroupYetError = 1203 // 不在群组中 - DismissedAlreadyError = 1204 // 群组已经解散 - GroupTypeNotSupport = 1205 - GroupRequestHandled = 1206 - - // 关系链错误码. - CanNotAddYourselfError = 1301 // 不能添加自己为好友 - BlockedByPeer = 1302 // 被对方拉黑 - NotPeersFriend = 1303 // 不是对方的好友 - RelationshipAlreadyError = 1304 // 已经是好友关系 - - // 消息错误码. - MessageHasReadDisable = 1401 - MutedInGroup = 1402 // 群成员被禁言 - MutedGroup = 1403 // 群被禁言 - MsgAlreadyRevoke = 1404 // 消息已撤回 - - // token错误码. - TokenExpiredError = 1501 - TokenInvalidError = 1502 - TokenMalformedError = 1503 - TokenNotValidYetError = 1504 - TokenUnknownError = 1505 - TokenKickedError = 1506 - TokenNotExistError = 1507 - - // 长连接网关错误码. - ConnOverMaxNumLimit = 1601 - ConnArgsErr = 1602 - - // S3错误码. - FileUploadedExpiredError = 1701 // 上传过期 -) diff --git a/pkg/errs/coderr.go b/pkg/errs/coderr.go deleted file mode 100644 index af88a6353..000000000 --- a/pkg/errs/coderr.go +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package errs - -import ( - "fmt" - "strings" - - "github.com/pkg/errors" -) - -type CodeError interface { - Code() int - Msg() string - Detail() string - WithDetail(detail string) CodeError - // Is 判断是否是某个错误, loose为false时, 只有错误码相同就认为是同一个错误, 默认为true - Is(err error, loose ...bool) bool - Wrap(msg ...string) error - error -} - -func NewCodeError(code int, msg string) CodeError { - return &codeError{ - code: code, - msg: msg, - } -} - -type codeError struct { - code int - msg string - detail string -} - -func (e *codeError) Code() int { - return e.code -} - -func (e *codeError) Msg() string { - return e.msg -} - -func (e *codeError) Detail() string { - return e.detail -} - -func (e *codeError) WithDetail(detail string) CodeError { - var d string - if e.detail == "" { - d = detail - } else { - d = e.detail + ", " + detail - } - return &codeError{ - code: e.code, - msg: e.msg, - detail: d, - } -} - -func (e *codeError) Wrap(w ...string) error { - return errors.Wrap(e, strings.Join(w, ", ")) -} - -func (e *codeError) Is(err error, loose ...bool) bool { - if err == nil { - return false - } - var allowSubclasses bool - if len(loose) == 0 { - allowSubclasses = true - } else { - allowSubclasses = loose[0] - } - codeErr, ok := Unwrap(err).(CodeError) - if ok { - if allowSubclasses { - return Relation.Is(e.code, codeErr.Code()) - } else { - return codeErr.Code() == e.code - } - } - return false -} - -func (e *codeError) Error() string { - return fmt.Sprintf("%s", e.msg) -} - -func Unwrap(err error) error { - for err != nil { - unwrap, ok := err.(interface { - Unwrap() error - }) - if !ok { - break - } - err = unwrap.Unwrap() - } - return err -} - -func Wrap(err error, msg ...string) error { - if err == nil { - return nil - } - if len(msg) == 0 { - return errors.WithStack(err) - } - return errors.Wrap(err, strings.Join(msg, ", ")) -} diff --git a/pkg/errs/predefine.go b/pkg/errs/predefine.go deleted file mode 100644 index f11349891..000000000 --- a/pkg/errs/predefine.go +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package errs - -var ( - ErrArgs = NewCodeError(ArgsError, "ArgsError") - ErrNoPermission = NewCodeError(NoPermissionError, "NoPermissionError") - ErrDatabase = NewCodeError(DatabaseError, "DatabaseError") - ErrInternalServer = NewCodeError(ServerInternalError, "ServerInternalError") - ErrNetwork = NewCodeError(NetworkError, "NetworkError") - ErrCallback = NewCodeError(CallbackError, "CallbackError") - ErrCallbackContinue = NewCodeError(CallbackError, "ErrCallbackContinue") - - ErrUserIDNotFound = NewCodeError(UserIDNotFoundError, "UserIDNotFoundError") - ErrGroupIDNotFound = NewCodeError(GroupIDNotFoundError, "GroupIDNotFoundError") - ErrGroupIDExisted = NewCodeError(GroupIDExisted, "GroupIDExisted") - - ErrRecordNotFound = NewCodeError(RecordNotFoundError, "RecordNotFoundError") - - ErrNotInGroupYet = NewCodeError(NotInGroupYetError, "NotInGroupYetError") - ErrDismissedAlready = NewCodeError(DismissedAlreadyError, "DismissedAlreadyError") - ErrRegisteredAlready = NewCodeError(RegisteredAlreadyError, "RegisteredAlreadyError") - ErrGroupTypeNotSupport = NewCodeError(GroupTypeNotSupport, "") - ErrGroupRequestHandled = NewCodeError(GroupRequestHandled, "GroupRequestHandled") - - ErrData = NewCodeError(DataError, "DataError") - ErrTokenExpired = NewCodeError(TokenExpiredError, "TokenExpiredError") - ErrTokenInvalid = NewCodeError(TokenInvalidError, "TokenInvalidError") // - ErrTokenMalformed = NewCodeError(TokenMalformedError, "TokenMalformedError") // 格式错误 - ErrTokenNotValidYet = NewCodeError(TokenNotValidYetError, "TokenNotValidYetError") // 还未生效 - ErrTokenUnknown = NewCodeError(TokenUnknownError, "TokenUnknownError") // 未知错误 - ErrTokenKicked = NewCodeError(TokenKickedError, "TokenKickedError") - ErrTokenNotExist = NewCodeError(TokenNotExistError, "TokenNotExistError") // 在redis中不存在 - ErrDuplicateKey = NewCodeError(DuplicateKeyError, "DuplicateKeyError") - - ErrMessageHasReadDisable = NewCodeError(MessageHasReadDisable, "MessageHasReadDisable") - - ErrCanNotAddYourself = NewCodeError(CanNotAddYourselfError, "CanNotAddYourselfError") - ErrBlockedByPeer = NewCodeError(BlockedByPeer, "BlockedByPeer") - ErrNotPeersFriend = NewCodeError(NotPeersFriend, "NotPeersFriend") - ErrRelationshipAlready = NewCodeError(RelationshipAlreadyError, "RelationshipAlreadyError") - - ErrMutedInGroup = NewCodeError(MutedInGroup, "MutedInGroup") - ErrMutedGroup = NewCodeError(MutedGroup, "MutedGroup") - ErrMsgAlreadyRevoke = NewCodeError(MsgAlreadyRevoke, "MsgAlreadyRevoke") - - ErrConnOverMaxNumLimit = NewCodeError(ConnOverMaxNumLimit, "ConnOverMaxNumLimit") - - ErrConnArgsErr = NewCodeError(ConnArgsErr, "args err, need token, sendID, platformID") - - ErrFileUploadedExpired = NewCodeError(FileUploadedExpiredError, "FileUploadedExpiredError") -) diff --git a/pkg/errs/relation.go b/pkg/errs/relation.go deleted file mode 100644 index 0a7ad4997..000000000 --- a/pkg/errs/relation.go +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package errs - -var Relation = &relation{m: make(map[int]map[int]struct{})} - -func init() { - Relation.Add(RecordNotFoundError, UserIDNotFoundError) - Relation.Add(RecordNotFoundError, GroupIDNotFoundError) - Relation.Add(DuplicateKeyError, GroupIDExisted) -} - -type relation struct { - m map[int]map[int]struct{} -} - -func (r *relation) Add(codes ...int) { - if len(codes) < 2 { - panic("codes length must be greater than 2") - } - for i := 1; i < len(codes); i++ { - parent := codes[i-1] - s, ok := r.m[parent] - if !ok { - s = make(map[int]struct{}) - r.m[parent] = s - } - for _, code := range codes[i:] { - s[code] = struct{}{} - } - } -} - -func (r *relation) Is(parent, child int) bool { - if parent == child { - return true - } - s, ok := r.m[parent] - if !ok { - return false - } - _, ok = s[child] - return ok -} diff --git a/pkg/proto/auth/auth.go b/pkg/proto/auth/auth.go deleted file mode 100644 index 9b8fdd988..000000000 --- a/pkg/proto/auth/auth.go +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package auth - -import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -func (x *UserTokenReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID { - return errs.ErrArgs.Wrap("platform is invalidate") - } - return nil -} - -func (x *ForceLogoutReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID { - return errs.ErrArgs.Wrap("platformID is invalidate") - } - return nil -} - -func (x *ParseTokenReq) Check() error { - if x.Token == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} diff --git a/pkg/proto/auth/auth.pb.go b/pkg/proto/auth/auth.pb.go deleted file mode 100644 index 2d1e0493c..000000000 --- a/pkg/proto/auth/auth.pb.go +++ /dev/null @@ -1,707 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: auth/auth.proto - -package auth - -import ( - context "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) -) - -type UserTokenReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` -} - -func (x *UserTokenReq) Reset() { - *x = UserTokenReq{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserTokenReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserTokenReq) ProtoMessage() {} - -func (x *UserTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use UserTokenReq.ProtoReflect.Descriptor instead. -func (*UserTokenReq) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{0} -} - -func (x *UserTokenReq) GetSecret() string { - if x != nil { - return x.Secret - } - return "" -} - -func (x *UserTokenReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -func (x *UserTokenReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type UserTokenResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,2,opt,name=token,proto3" json:"token"` - ExpireTimeSeconds int64 `protobuf:"varint,3,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` -} - -func (x *UserTokenResp) Reset() { - *x = UserTokenResp{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserTokenResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserTokenResp) ProtoMessage() {} - -func (x *UserTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use UserTokenResp.ProtoReflect.Descriptor instead. -func (*UserTokenResp) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{1} -} - -func (x *UserTokenResp) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -func (x *UserTokenResp) GetExpireTimeSeconds() int64 { - if x != nil { - return x.ExpireTimeSeconds - } - return 0 -} - -type ForceLogoutReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` -} - -func (x *ForceLogoutReq) Reset() { - *x = ForceLogoutReq{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ForceLogoutReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ForceLogoutReq) ProtoMessage() {} - -func (x *ForceLogoutReq) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use ForceLogoutReq.ProtoReflect.Descriptor instead. -func (*ForceLogoutReq) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{2} -} - -func (x *ForceLogoutReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -func (x *ForceLogoutReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type ForceLogoutResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ForceLogoutResp) Reset() { - *x = ForceLogoutResp{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ForceLogoutResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ForceLogoutResp) ProtoMessage() {} - -func (x *ForceLogoutResp) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use ForceLogoutResp.ProtoReflect.Descriptor instead. -func (*ForceLogoutResp) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{3} -} - -type ParseTokenReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` -} - -func (x *ParseTokenReq) Reset() { - *x = ParseTokenReq{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ParseTokenReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ParseTokenReq) ProtoMessage() {} - -func (x *ParseTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use ParseTokenReq.ProtoReflect.Descriptor instead. -func (*ParseTokenReq) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{4} -} - -func (x *ParseTokenReq) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -type ParseTokenResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform"` - ExpireTimeSeconds int64 `protobuf:"varint,4,opt,name=expireTimeSeconds,proto3" json:"expireTimeSeconds"` -} - -func (x *ParseTokenResp) Reset() { - *x = ParseTokenResp{} - if protoimpl.UnsafeEnabled { - mi := &file_auth_auth_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ParseTokenResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ParseTokenResp) ProtoMessage() {} - -func (x *ParseTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_auth_auth_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) -} - -// Deprecated: Use ParseTokenResp.ProtoReflect.Descriptor instead. -func (*ParseTokenResp) Descriptor() ([]byte, []int) { - return file_auth_auth_proto_rawDescGZIP(), []int{5} -} - -func (x *ParseTokenResp) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ParseTokenResp) GetPlatform() string { - if x != nil { - return x.Platform - } - return "" -} - -func (x *ParseTokenResp) GetExpireTimeSeconds() int64 { - if x != nil { - return x.ExpireTimeSeconds - } - return 0 -} - -var File_auth_auth_proto protoreflect.FileDescriptor - -var file_auth_auth_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x75, 0x74, 0x68, 0x22, 0x5e, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x22, 0x53, 0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x2c, 0x0a, 0x11, 0x65, - 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0x48, 0x0a, 0x0e, 0x66, 0x6f, 0x72, - 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x22, 0x11, 0x0a, 0x0f, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x6f, - 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x25, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x72, 0x0a, - 0x0e, 0x70, 0x61, 0x72, 0x73, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 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, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x12, 0x2c, 0x0a, 0x11, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x32, 0xff, 0x01, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x4e, 0x0a, 0x09, 0x75, 0x73, - 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x54, 0x0a, 0x0b, 0x66, 0x6f, - 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x12, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x66, 0x6f, - 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x75, 0x74, 0x68, - 0x2e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x51, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x73, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x20, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x61, 0x75, - 0x74, 0x68, 0x2e, 0x70, 0x61, 0x72, 0x73, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, - 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x61, 0x75, 0x74, 0x68, 0x2e, 0x70, 0x61, 0x72, 0x73, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, - 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, - 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, -} - -var ( - file_auth_auth_proto_rawDescOnce sync.Once - file_auth_auth_proto_rawDescData = file_auth_auth_proto_rawDesc -) - -func file_auth_auth_proto_rawDescGZIP() []byte { - file_auth_auth_proto_rawDescOnce.Do(func() { - file_auth_auth_proto_rawDescData = protoimpl.X.CompressGZIP(file_auth_auth_proto_rawDescData) - }) - return file_auth_auth_proto_rawDescData -} - -var file_auth_auth_proto_msgTypes = make([]protoimpl.MessageInfo, 6) -var file_auth_auth_proto_goTypes = []interface{}{ - (*UserTokenReq)(nil), // 0: OpenIMServer.auth.userTokenReq - (*UserTokenResp)(nil), // 1: OpenIMServer.auth.userTokenResp - (*ForceLogoutReq)(nil), // 2: OpenIMServer.auth.forceLogoutReq - (*ForceLogoutResp)(nil), // 3: OpenIMServer.auth.forceLogoutResp - (*ParseTokenReq)(nil), // 4: OpenIMServer.auth.parseTokenReq - (*ParseTokenResp)(nil), // 5: OpenIMServer.auth.parseTokenResp -} -var file_auth_auth_proto_depIdxs = []int32{ - 0, // 0: OpenIMServer.auth.Auth.userToken:input_type -> OpenIMServer.auth.userTokenReq - 2, // 1: OpenIMServer.auth.Auth.forceLogout:input_type -> OpenIMServer.auth.forceLogoutReq - 4, // 2: OpenIMServer.auth.Auth.parseToken:input_type -> OpenIMServer.auth.parseTokenReq - 1, // 3: OpenIMServer.auth.Auth.userToken:output_type -> OpenIMServer.auth.userTokenResp - 3, // 4: OpenIMServer.auth.Auth.forceLogout:output_type -> OpenIMServer.auth.forceLogoutResp - 5, // 5: OpenIMServer.auth.Auth.parseToken:output_type -> OpenIMServer.auth.parseTokenResp - 3, // [3:6] is the sub-list for method output_type - 0, // [0:3] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name -} - -func init() { file_auth_auth_proto_init() } -func file_auth_auth_proto_init() { - if File_auth_auth_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_auth_auth_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserTokenReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_auth_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserTokenResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_auth_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ForceLogoutReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_auth_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ForceLogoutResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_auth_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ParseTokenReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_auth_auth_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ParseTokenResp); 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_auth_auth_proto_rawDesc, - NumEnums: 0, - NumMessages: 6, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_auth_auth_proto_goTypes, - DependencyIndexes: file_auth_auth_proto_depIdxs, - MessageInfos: file_auth_auth_proto_msgTypes, - }.Build() - File_auth_auth_proto = out.File - file_auth_auth_proto_rawDesc = nil - file_auth_auth_proto_goTypes = nil - file_auth_auth_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// AuthClient is the client API for Auth service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type AuthClient interface { - // 生成token - UserToken(ctx context.Context, in *UserTokenReq, opts ...grpc.CallOption) (*UserTokenResp, error) - // 强制退出登录 - ForceLogout(ctx context.Context, in *ForceLogoutReq, opts ...grpc.CallOption) (*ForceLogoutResp, error) - // 解析token - ParseToken(ctx context.Context, in *ParseTokenReq, opts ...grpc.CallOption) (*ParseTokenResp, error) -} - -type authClient struct { - cc grpc.ClientConnInterface -} - -func NewAuthClient(cc grpc.ClientConnInterface) AuthClient { - return &authClient{cc} -} - -func (c *authClient) UserToken(ctx context.Context, in *UserTokenReq, opts ...grpc.CallOption) (*UserTokenResp, error) { - out := new(UserTokenResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.auth.Auth/userToken", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *authClient) ForceLogout(ctx context.Context, in *ForceLogoutReq, opts ...grpc.CallOption) (*ForceLogoutResp, error) { - out := new(ForceLogoutResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.auth.Auth/forceLogout", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *authClient) ParseToken(ctx context.Context, in *ParseTokenReq, opts ...grpc.CallOption) (*ParseTokenResp, error) { - out := new(ParseTokenResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.auth.Auth/parseToken", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// AuthServer is the server API for Auth service. -type AuthServer interface { - // 生成token - UserToken(context.Context, *UserTokenReq) (*UserTokenResp, error) - // 强制退出登录 - ForceLogout(context.Context, *ForceLogoutReq) (*ForceLogoutResp, error) - // 解析token - ParseToken(context.Context, *ParseTokenReq) (*ParseTokenResp, error) -} - -// UnimplementedAuthServer can be embedded to have forward compatible implementations. -type UnimplementedAuthServer struct { -} - -func (*UnimplementedAuthServer) UserToken(context.Context, *UserTokenReq) (*UserTokenResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UserToken not implemented") -} -func (*UnimplementedAuthServer) ForceLogout(context.Context, *ForceLogoutReq) (*ForceLogoutResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ForceLogout not implemented") -} -func (*UnimplementedAuthServer) ParseToken(context.Context, *ParseTokenReq) (*ParseTokenResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ParseToken not implemented") -} - -func RegisterAuthServer(s *grpc.Server, srv AuthServer) { - s.RegisterService(&_Auth_serviceDesc, srv) -} - -func _Auth_UserToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UserTokenReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AuthServer).UserToken(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.auth.Auth/UserToken", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AuthServer).UserToken(ctx, req.(*UserTokenReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Auth_ForceLogout_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ForceLogoutReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AuthServer).ForceLogout(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.auth.Auth/ForceLogout", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AuthServer).ForceLogout(ctx, req.(*ForceLogoutReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Auth_ParseToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ParseTokenReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AuthServer).ParseToken(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.auth.Auth/ParseToken", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AuthServer).ParseToken(ctx, req.(*ParseTokenReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Auth_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.auth.Auth", - HandlerType: (*AuthServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "userToken", - Handler: _Auth_UserToken_Handler, - }, - { - MethodName: "forceLogout", - Handler: _Auth_ForceLogout_Handler, - }, - { - MethodName: "parseToken", - Handler: _Auth_ParseToken_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "auth/auth.proto", -} diff --git a/pkg/proto/auth/auth.proto b/pkg/proto/auth/auth.proto deleted file mode 100644 index 29c008cbe..000000000 --- a/pkg/proto/auth/auth.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.auth; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth"; - - -message userTokenReq { - string secret = 1; - int32 platformID = 2; - string userID = 3; -} -message userTokenResp { - string token = 2; - int64 expireTimeSeconds = 3; -} - -message forceLogoutReq { - int32 platformID = 1; - string userID = 2; -} -message forceLogoutResp { -} - -message parseTokenReq{ - string token = 1; -} -message parseTokenResp{ - string userID = 1; - string platform = 2; - int64 expireTimeSeconds = 4; -} - -service Auth { - //生成token - rpc userToken(userTokenReq) returns(userTokenResp); - //强制退出登录 - rpc forceLogout(forceLogoutReq) returns(forceLogoutResp); - //解析token - rpc parseToken(parseTokenReq)returns(parseTokenResp); -} - - diff --git a/pkg/proto/conversation/conversation.go b/pkg/proto/conversation/conversation.go deleted file mode 100644 index 7e8f62bbc..000000000 --- a/pkg/proto/conversation/conversation.go +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package conversation - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *ConversationReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversation is empty") - } - return nil -} - -func (x *Conversation) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("ConversationID is empty") - } - if x.ConversationType < 1 || x.ConversationType > 4 { - return errs.ErrArgs.Wrap("ConversationType is invalid") - } - if x.RecvMsgOpt < 0 || x.RecvMsgOpt > 2 { - return errs.ErrArgs.Wrap("RecvMsgOpt is invalid") - } - return nil -} - -//func (x *ModifyConversationFieldReq) Check() error { -// if x.UserIDList == nil { -// return errs.ErrArgs.Wrap("userIDList is empty") -// } -// if x.Conversation == nil { -// return errs.ErrArgs.Wrap("conversation is empty") -// } -// return nil -//} - -func (x *SetConversationReq) Check() error { - if x.Conversation == nil { - return errs.ErrArgs.Wrap("Conversation is empty") - } - if x.Conversation.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - return nil -} - -//func (x *SetRecvMsgOptReq) Check() error { -// if x.OwnerUserID == "" { -// return errs.ErrArgs.Wrap("ownerUserID is empty") -// } -// if x.ConversationID == "" { -// return errs.ErrArgs.Wrap("conversationID is empty") -// } -// if x.RecvMsgOpt > 2 || x.RecvMsgOpt < 0 { -// return errs.ErrArgs.Wrap("MsgReceiveOpt is invalid") -// } -// return nil -//} - -func (x *GetConversationReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - return nil -} - -func (x *GetConversationsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.ConversationIDs == nil { - return errs.ErrArgs.Wrap("conversationIDs is empty") - } - return nil -} - -func (x *GetAllConversationsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - return nil -} - -// -//func (x *BatchSetConversationsReq) Check() error { -// if x.Conversations == nil { -// return errs.ErrArgs.Wrap("conversations is empty") -// } -// if x.OwnerUserID == "" { -// return errs.ErrArgs.Wrap("conversation is empty") -// } -// return nil -//} - -func (x *GetRecvMsgNotNotifyUserIDsReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *CreateGroupChatConversationsReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *SetConversationMaxSeqReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.OwnerUserID == nil { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.MaxSeq <= 0 { - return errs.ErrArgs.Wrap("maxSeq is invalid") - } - return nil -} - -func (x *SetConversationsReq) Check() error { - if x.UserIDs == nil { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.Conversation == nil { - return errs.ErrArgs.Wrap("conversation is empty") - } - return nil -} - -func (x *GetUserConversationIDsHashReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - return nil -} - -func (x *GetConversationsByConversationIDReq) Check() error { - if x.ConversationIDs == nil { - return errs.ErrArgs.Wrap("conversationIDs is empty") - } - return nil -} diff --git a/pkg/proto/conversation/conversation.pb.go b/pkg/proto/conversation/conversation.pb.go deleted file mode 100644 index cf5de48a7..000000000 --- a/pkg/proto/conversation/conversation.pb.go +++ /dev/null @@ -1,2744 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: conversation/conversation.proto - -package conversation - -import ( - context "context" - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - 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) -) - -type Conversation struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - ConversationType int32 `protobuf:"varint,4,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,5,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,6,opt,name=groupID,proto3" json:"groupID"` - IsPinned bool `protobuf:"varint,7,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo string `protobuf:"bytes,8,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat bool `protobuf:"varint,9,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - GroupAtType int32 `protobuf:"varint,10,opt,name=groupAtType,proto3" json:"groupAtType"` - Ex string `protobuf:"bytes,11,opt,name=ex,proto3" json:"ex"` - BurnDuration int32 `protobuf:"varint,12,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq int64 `protobuf:"varint,13,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq int64 `protobuf:"varint,14,opt,name=maxSeq,proto3" json:"maxSeq"` - MsgDestructTime int64 `protobuf:"varint,15,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` - LatestMsgDestructTime int64 `protobuf:"varint,16,opt,name=latestMsgDestructTime,proto3" json:"latestMsgDestructTime"` - IsMsgDestruct bool `protobuf:"varint,17,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` -} - -func (x *Conversation) Reset() { - *x = Conversation{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Conversation) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Conversation) ProtoMessage() {} - -func (x *Conversation) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use Conversation.ProtoReflect.Descriptor instead. -func (*Conversation) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{0} -} - -func (x *Conversation) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *Conversation) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *Conversation) GetRecvMsgOpt() int32 { - if x != nil { - return x.RecvMsgOpt - } - return 0 -} - -func (x *Conversation) GetConversationType() int32 { - if x != nil { - return x.ConversationType - } - return 0 -} - -func (x *Conversation) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *Conversation) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *Conversation) GetIsPinned() bool { - if x != nil { - return x.IsPinned - } - return false -} - -func (x *Conversation) GetAttachedInfo() string { - if x != nil { - return x.AttachedInfo - } - return "" -} - -func (x *Conversation) GetIsPrivateChat() bool { - if x != nil { - return x.IsPrivateChat - } - return false -} - -func (x *Conversation) GetGroupAtType() int32 { - if x != nil { - return x.GroupAtType - } - return 0 -} - -func (x *Conversation) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *Conversation) GetBurnDuration() int32 { - if x != nil { - return x.BurnDuration - } - return 0 -} - -func (x *Conversation) GetMinSeq() int64 { - if x != nil { - return x.MinSeq - } - return 0 -} - -func (x *Conversation) GetMaxSeq() int64 { - if x != nil { - return x.MaxSeq - } - return 0 -} - -func (x *Conversation) GetMsgDestructTime() int64 { - if x != nil { - return x.MsgDestructTime - } - return 0 -} - -func (x *Conversation) GetLatestMsgDestructTime() int64 { - if x != nil { - return x.LatestMsgDestructTime - } - return 0 -} - -func (x *Conversation) GetIsMsgDestruct() bool { - if x != nil { - return x.IsMsgDestruct - } - return false -} - -type ConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - ConversationType int32 `protobuf:"varint,2,opt,name=conversationType,proto3" json:"conversationType"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - GroupID string `protobuf:"bytes,4,opt,name=groupID,proto3" json:"groupID"` - RecvMsgOpt *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - IsPinned *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=isPinned,proto3" json:"isPinned"` - AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=attachedInfo,proto3" json:"attachedInfo"` - IsPrivateChat *wrapperspb.BoolValue `protobuf:"bytes,8,opt,name=isPrivateChat,proto3" json:"isPrivateChat"` - Ex *wrapperspb.StringValue `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - BurnDuration *wrapperspb.Int32Value `protobuf:"bytes,10,opt,name=burnDuration,proto3" json:"burnDuration"` - MinSeq *wrapperspb.Int64Value `protobuf:"bytes,11,opt,name=minSeq,proto3" json:"minSeq"` - MaxSeq *wrapperspb.Int64Value `protobuf:"bytes,12,opt,name=maxSeq,proto3" json:"maxSeq"` - GroupAtType *wrapperspb.Int32Value `protobuf:"bytes,13,opt,name=groupAtType,proto3" json:"groupAtType"` - MsgDestructTime *wrapperspb.Int64Value `protobuf:"bytes,14,opt,name=msgDestructTime,proto3" json:"msgDestructTime"` - IsMsgDestruct *wrapperspb.BoolValue `protobuf:"bytes,15,opt,name=isMsgDestruct,proto3" json:"isMsgDestruct"` -} - -func (x *ConversationReq) Reset() { - *x = ConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConversationReq) ProtoMessage() {} - -func (x *ConversationReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use ConversationReq.ProtoReflect.Descriptor instead. -func (*ConversationReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{1} -} - -func (x *ConversationReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *ConversationReq) GetConversationType() int32 { - if x != nil { - return x.ConversationType - } - return 0 -} - -func (x *ConversationReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ConversationReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *ConversationReq) GetRecvMsgOpt() *wrapperspb.Int32Value { - if x != nil { - return x.RecvMsgOpt - } - return nil -} - -func (x *ConversationReq) GetIsPinned() *wrapperspb.BoolValue { - if x != nil { - return x.IsPinned - } - return nil -} - -func (x *ConversationReq) GetAttachedInfo() *wrapperspb.StringValue { - if x != nil { - return x.AttachedInfo - } - return nil -} - -func (x *ConversationReq) GetIsPrivateChat() *wrapperspb.BoolValue { - if x != nil { - return x.IsPrivateChat - } - return nil -} - -func (x *ConversationReq) GetEx() *wrapperspb.StringValue { - if x != nil { - return x.Ex - } - return nil -} - -func (x *ConversationReq) GetBurnDuration() *wrapperspb.Int32Value { - if x != nil { - return x.BurnDuration - } - return nil -} - -func (x *ConversationReq) GetMinSeq() *wrapperspb.Int64Value { - if x != nil { - return x.MinSeq - } - return nil -} - -func (x *ConversationReq) GetMaxSeq() *wrapperspb.Int64Value { - if x != nil { - return x.MaxSeq - } - return nil -} - -func (x *ConversationReq) GetGroupAtType() *wrapperspb.Int32Value { - if x != nil { - return x.GroupAtType - } - return nil -} - -func (x *ConversationReq) GetMsgDestructTime() *wrapperspb.Int64Value { - if x != nil { - return x.MsgDestructTime - } - return nil -} - -func (x *ConversationReq) GetIsMsgDestruct() *wrapperspb.BoolValue { - if x != nil { - return x.IsMsgDestruct - } - return nil -} - -type SetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversation *Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` -} - -func (x *SetConversationReq) Reset() { - *x = SetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationReq) ProtoMessage() {} - -func (x *SetConversationReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationReq.ProtoReflect.Descriptor instead. -func (*SetConversationReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{2} -} - -func (x *SetConversationReq) GetConversation() *Conversation { - if x != nil { - return x.Conversation - } - return nil -} - -type SetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConversationResp) Reset() { - *x = SetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationResp) ProtoMessage() {} - -func (x *SetConversationResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationResp.ProtoReflect.Descriptor instead. -func (*SetConversationResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{3} -} - -type GetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` -} - -func (x *GetConversationReq) Reset() { - *x = GetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationReq) ProtoMessage() {} - -func (x *GetConversationReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationReq.ProtoReflect.Descriptor instead. -func (*GetConversationReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{4} -} - -func (x *GetConversationReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *GetConversationReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -type GetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversation *Conversation `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation"` -} - -func (x *GetConversationResp) Reset() { - *x = GetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationResp) ProtoMessage() {} - -func (x *GetConversationResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationResp.ProtoReflect.Descriptor instead. -func (*GetConversationResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{5} -} - -func (x *GetConversationResp) GetConversation() *Conversation { - if x != nil { - return x.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"` - ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` -} - -func (x *GetConversationsReq) Reset() { - *x = GetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsReq) ProtoMessage() {} - -func (x *GetConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationsReq.ProtoReflect.Descriptor instead. -func (*GetConversationsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{6} -} - -func (x *GetConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GetConversationsReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -type GetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*Conversation `protobuf:"bytes,2,rep,name=conversations,proto3" json:"conversations"` -} - -func (x *GetConversationsResp) Reset() { - *x = GetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsResp) ProtoMessage() {} - -func (x *GetConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationsResp.ProtoReflect.Descriptor instead. -func (*GetConversationsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{7} -} - -func (x *GetConversationsResp) GetConversations() []*Conversation { - if x != nil { - return x.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"` -} - -func (x *GetAllConversationsReq) Reset() { - *x = GetAllConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllConversationsReq) ProtoMessage() {} - -func (x *GetAllConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetAllConversationsReq.ProtoReflect.Descriptor instead. -func (*GetAllConversationsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{8} -} - -func (x *GetAllConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -type GetAllConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*Conversation `protobuf:"bytes,2,rep,name=conversations,proto3" json:"conversations"` -} - -func (x *GetAllConversationsResp) Reset() { - *x = GetAllConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllConversationsResp) ProtoMessage() {} - -func (x *GetAllConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetAllConversationsResp.ProtoReflect.Descriptor instead. -func (*GetAllConversationsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{9} -} - -func (x *GetAllConversationsResp) GetConversations() []*Conversation { - if x != nil { - return x.Conversations - } - return nil -} - -type GetRecvMsgNotNotifyUserIDsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetRecvMsgNotNotifyUserIDsReq) Reset() { - *x = GetRecvMsgNotNotifyUserIDsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetRecvMsgNotNotifyUserIDsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetRecvMsgNotNotifyUserIDsReq) ProtoMessage() {} - -func (x *GetRecvMsgNotNotifyUserIDsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetRecvMsgNotNotifyUserIDsReq.ProtoReflect.Descriptor instead. -func (*GetRecvMsgNotNotifyUserIDsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{10} -} - -func (x *GetRecvMsgNotNotifyUserIDsReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetRecvMsgNotNotifyUserIDsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetRecvMsgNotNotifyUserIDsResp) Reset() { - *x = GetRecvMsgNotNotifyUserIDsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetRecvMsgNotNotifyUserIDsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetRecvMsgNotNotifyUserIDsResp) ProtoMessage() {} - -func (x *GetRecvMsgNotNotifyUserIDsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetRecvMsgNotNotifyUserIDsResp.ProtoReflect.Descriptor instead. -func (*GetRecvMsgNotNotifyUserIDsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{11} -} - -func (x *GetRecvMsgNotNotifyUserIDsResp) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type CreateSingleChatConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` - SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` -} - -func (x *CreateSingleChatConversationsReq) Reset() { - *x = CreateSingleChatConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateSingleChatConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateSingleChatConversationsReq) ProtoMessage() {} - -func (x *CreateSingleChatConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_proto_msgTypes[12] - 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 CreateSingleChatConversationsReq.ProtoReflect.Descriptor instead. -func (*CreateSingleChatConversationsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{12} -} - -func (x *CreateSingleChatConversationsReq) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *CreateSingleChatConversationsReq) GetSendID() string { - if x != nil { - return x.SendID - } - return "" -} - -type CreateSingleChatConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CreateSingleChatConversationsResp) Reset() { - *x = CreateSingleChatConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateSingleChatConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateSingleChatConversationsResp) ProtoMessage() {} - -func (x *CreateSingleChatConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use CreateSingleChatConversationsResp.ProtoReflect.Descriptor instead. -func (*CreateSingleChatConversationsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{13} -} - -type CreateGroupChatConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *CreateGroupChatConversationsReq) Reset() { - *x = CreateGroupChatConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateGroupChatConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateGroupChatConversationsReq) ProtoMessage() {} - -func (x *CreateGroupChatConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_proto_msgTypes[14] - 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 CreateGroupChatConversationsReq.ProtoReflect.Descriptor instead. -func (*CreateGroupChatConversationsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{14} -} - -func (x *CreateGroupChatConversationsReq) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -func (x *CreateGroupChatConversationsReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type CreateGroupChatConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CreateGroupChatConversationsResp) Reset() { - *x = CreateGroupChatConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateGroupChatConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateGroupChatConversationsResp) ProtoMessage() {} - -func (x *CreateGroupChatConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use CreateGroupChatConversationsResp.ProtoReflect.Descriptor instead. -func (*CreateGroupChatConversationsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{15} -} - -type SetConversationMaxSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID []string `protobuf:"bytes,2,rep,name=ownerUserID,proto3" json:"ownerUserID"` - MaxSeq int64 `protobuf:"varint,3,opt,name=maxSeq,proto3" json:"maxSeq"` -} - -func (x *SetConversationMaxSeqReq) Reset() { - *x = SetConversationMaxSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationMaxSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationMaxSeqReq) ProtoMessage() {} - -func (x *SetConversationMaxSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationMaxSeqReq.ProtoReflect.Descriptor instead. -func (*SetConversationMaxSeqReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{16} -} - -func (x *SetConversationMaxSeqReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *SetConversationMaxSeqReq) GetOwnerUserID() []string { - if x != nil { - return x.OwnerUserID - } - return nil -} - -func (x *SetConversationMaxSeqReq) GetMaxSeq() int64 { - if x != nil { - return x.MaxSeq - } - return 0 -} - -type SetConversationMaxSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConversationMaxSeqResp) Reset() { - *x = SetConversationMaxSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationMaxSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationMaxSeqResp) ProtoMessage() {} - -func (x *SetConversationMaxSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationMaxSeqResp.ProtoReflect.Descriptor instead. -func (*SetConversationMaxSeqResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{17} -} - -type GetConversationIDsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetConversationIDsReq) Reset() { - *x = GetConversationIDsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationIDsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationIDsReq) ProtoMessage() {} - -func (x *GetConversationIDsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationIDsReq.ProtoReflect.Descriptor instead. -func (*GetConversationIDsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{18} -} - -func (x *GetConversationIDsReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetConversationIDsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` -} - -func (x *GetConversationIDsResp) Reset() { - *x = GetConversationIDsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationIDsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationIDsResp) ProtoMessage() {} - -func (x *GetConversationIDsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationIDsResp.ProtoReflect.Descriptor instead. -func (*GetConversationIDsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{19} -} - -func (x *GetConversationIDsResp) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -type SetConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` - Conversation *ConversationReq `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation"` -} - -func (x *SetConversationsReq) Reset() { - *x = SetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationsReq) ProtoMessage() {} - -func (x *SetConversationsReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationsReq.ProtoReflect.Descriptor instead. -func (*SetConversationsReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{20} -} - -func (x *SetConversationsReq) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -func (x *SetConversationsReq) GetConversation() *ConversationReq { - if x != nil { - return x.Conversation - } - return nil -} - -type SetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConversationsResp) Reset() { - *x = SetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationsResp) ProtoMessage() {} - -func (x *SetConversationsResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use SetConversationsResp.ProtoReflect.Descriptor instead. -func (*SetConversationsResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{21} -} - -type GetUserConversationIDsHashReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` -} - -func (x *GetUserConversationIDsHashReq) Reset() { - *x = GetUserConversationIDsHashReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserConversationIDsHashReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserConversationIDsHashReq) ProtoMessage() {} - -func (x *GetUserConversationIDsHashReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetUserConversationIDsHashReq.ProtoReflect.Descriptor instead. -func (*GetUserConversationIDsHashReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{22} -} - -func (x *GetUserConversationIDsHashReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -type GetUserConversationIDsHashResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Hash uint64 `protobuf:"varint,1,opt,name=hash,proto3" json:"hash"` -} - -func (x *GetUserConversationIDsHashResp) Reset() { - *x = GetUserConversationIDsHashResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserConversationIDsHashResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserConversationIDsHashResp) ProtoMessage() {} - -func (x *GetUserConversationIDsHashResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetUserConversationIDsHashResp.ProtoReflect.Descriptor instead. -func (*GetUserConversationIDsHashResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{23} -} - -func (x *GetUserConversationIDsHashResp) GetHash() uint64 { - if x != nil { - return x.Hash - } - return 0 -} - -type GetConversationsByConversationIDReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` -} - -func (x *GetConversationsByConversationIDReq) Reset() { - *x = GetConversationsByConversationIDReq{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsByConversationIDReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsByConversationIDReq) ProtoMessage() {} - -func (x *GetConversationsByConversationIDReq) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationsByConversationIDReq.ProtoReflect.Descriptor instead. -func (*GetConversationsByConversationIDReq) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{24} -} - -func (x *GetConversationsByConversationIDReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -type GetConversationsByConversationIDResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` -} - -func (x *GetConversationsByConversationIDResp) Reset() { - *x = GetConversationsByConversationIDResp{} - if protoimpl.UnsafeEnabled { - mi := &file_conversation_conversation_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsByConversationIDResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsByConversationIDResp) ProtoMessage() {} - -func (x *GetConversationsByConversationIDResp) ProtoReflect() protoreflect.Message { - mi := &file_conversation_conversation_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) -} - -// Deprecated: Use GetConversationsByConversationIDResp.ProtoReflect.Descriptor instead. -func (*GetConversationsByConversationIDResp) Descriptor() ([]byte, []int) { - return file_conversation_conversation_proto_rawDescGZIP(), []int{25} -} - -func (x *GetConversationsByConversationIDResp) GetConversations() []*Conversation { - if x != nil { - return x.Conversations - } - return nil -} - -var File_conversation_conversation_proto protoreflect.FileDescriptor - -var file_conversation_conversation_proto_rawDesc = []byte{ - 0x0a, 0x1f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x19, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x1b, 0x77, 0x72, - 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, - 0x73, 0x70, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc8, 0x04, 0x0a, 0x0c, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, - 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x4d, 0x73, - 0x67, 0x4f, 0x70, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x22, - 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, - 0x68, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x50, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x41, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x41, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x75, - 0x72, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, - 0x0a, 0x06, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, - 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x28, - 0x0a, 0x0f, 0x6d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x6c, 0x61, 0x74, 0x65, - 0x73, 0x74, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, - 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, - 0x0a, 0x0d, 0x69, 0x73, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x22, 0xf3, 0x06, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x41, - 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, - 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x69, 0x73, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x69, 0x73, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, - 0x46, 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, - 0x68, 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x46, 0x0a, 0x0d, 0x69, 0x73, 0x50, 0x72, 0x69, - 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x0d, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x74, 0x12, - 0x32, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x02, 0x65, 0x78, 0x12, 0x45, 0x0a, 0x0c, 0x62, 0x75, 0x72, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0c, 0x62, 0x75, - 0x72, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x06, 0x6d, 0x69, - 0x6e, 0x53, 0x65, 0x71, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x6d, - 0x69, 0x6e, 0x53, 0x65, 0x71, 0x12, 0x39, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x12, 0x43, 0x0a, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x41, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4b, 0x0a, 0x0f, 0x6d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x0f, 0x6d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0d, 0x69, 0x73, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0d, 0x69, 0x73, 0x4d, - 0x73, 0x67, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x22, 0x61, 0x0a, 0x12, 0x53, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x12, 0x4b, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x15, 0x0a, - 0x13, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x5e, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x22, 0x62, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4b, 0x0a, 0x0c, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x61, 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, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x22, 0x65, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x22, 0x3a, 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, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x68, - 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, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x39, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x52, - 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x44, 0x22, 0x3a, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, - 0x67, 0x4e, 0x6f, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, - 0x52, 0x0a, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, - 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, - 0x64, 0x49, 0x44, 0x22, 0x23, 0x0a, 0x21, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x55, 0x0a, 0x1f, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, - 0x22, 0x0a, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x68, - 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x7c, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, - 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x78, - 0x53, 0x65, 0x71, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, - 0x71, 0x22, 0x1b, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x22, 0x2f, - 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, - 0x42, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x73, 0x22, 0x7f, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x73, 0x12, 0x4e, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x41, 0x0a, 0x1d, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, - 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, - 0x34, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x04, 0x68, 0x61, 0x73, 0x68, 0x22, 0x4f, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x28, 0x0a, 0x0f, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x22, 0x75, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4d, - 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x32, 0xdf, 0x0c, - 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x70, - 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x1a, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x7c, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x32, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x73, - 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x91, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, - 0x76, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x73, 0x12, 0x38, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x4e, 0x6f, - 0x74, 0x69, 0x66, 0x79, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x39, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, - 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4e, 0x6f, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x9a, 0x01, 0x0a, 0x1d, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3b, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, - 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x3c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x69, 0x6e, 0x67, 0x6c, - 0x65, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x97, 0x01, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, - 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x1a, 0x3b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x68, 0x61, 0x74, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x82, 0x01, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x33, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, - 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, - 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x79, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x12, 0x30, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x31, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x73, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x91, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, - 0x48, 0x61, 0x73, 0x68, 0x12, 0x38, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x39, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x73, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0xa3, 0x01, 0x0a, 0x20, 0x47, 0x65, - 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x79, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x3e, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x3f, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x79, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x42, - 0x3c, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_conversation_conversation_proto_rawDescOnce sync.Once - file_conversation_conversation_proto_rawDescData = file_conversation_conversation_proto_rawDesc -) - -func file_conversation_conversation_proto_rawDescGZIP() []byte { - file_conversation_conversation_proto_rawDescOnce.Do(func() { - file_conversation_conversation_proto_rawDescData = protoimpl.X.CompressGZIP(file_conversation_conversation_proto_rawDescData) - }) - return file_conversation_conversation_proto_rawDescData -} - -var file_conversation_conversation_proto_msgTypes = make([]protoimpl.MessageInfo, 26) -var file_conversation_conversation_proto_goTypes = []interface{}{ - (*Conversation)(nil), // 0: OpenIMServer.conversation.Conversation - (*ConversationReq)(nil), // 1: OpenIMServer.conversation.ConversationReq - (*SetConversationReq)(nil), // 2: OpenIMServer.conversation.SetConversationReq - (*SetConversationResp)(nil), // 3: OpenIMServer.conversation.SetConversationResp - (*GetConversationReq)(nil), // 4: OpenIMServer.conversation.GetConversationReq - (*GetConversationResp)(nil), // 5: OpenIMServer.conversation.GetConversationResp - (*GetConversationsReq)(nil), // 6: OpenIMServer.conversation.GetConversationsReq - (*GetConversationsResp)(nil), // 7: OpenIMServer.conversation.GetConversationsResp - (*GetAllConversationsReq)(nil), // 8: OpenIMServer.conversation.GetAllConversationsReq - (*GetAllConversationsResp)(nil), // 9: OpenIMServer.conversation.GetAllConversationsResp - (*GetRecvMsgNotNotifyUserIDsReq)(nil), // 10: OpenIMServer.conversation.GetRecvMsgNotNotifyUserIDsReq - (*GetRecvMsgNotNotifyUserIDsResp)(nil), // 11: OpenIMServer.conversation.GetRecvMsgNotNotifyUserIDsResp - (*CreateSingleChatConversationsReq)(nil), // 12: OpenIMServer.conversation.CreateSingleChatConversationsReq - (*CreateSingleChatConversationsResp)(nil), // 13: OpenIMServer.conversation.CreateSingleChatConversationsResp - (*CreateGroupChatConversationsReq)(nil), // 14: OpenIMServer.conversation.CreateGroupChatConversationsReq - (*CreateGroupChatConversationsResp)(nil), // 15: OpenIMServer.conversation.CreateGroupChatConversationsResp - (*SetConversationMaxSeqReq)(nil), // 16: OpenIMServer.conversation.SetConversationMaxSeqReq - (*SetConversationMaxSeqResp)(nil), // 17: OpenIMServer.conversation.SetConversationMaxSeqResp - (*GetConversationIDsReq)(nil), // 18: OpenIMServer.conversation.GetConversationIDsReq - (*GetConversationIDsResp)(nil), // 19: OpenIMServer.conversation.GetConversationIDsResp - (*SetConversationsReq)(nil), // 20: OpenIMServer.conversation.SetConversationsReq - (*SetConversationsResp)(nil), // 21: OpenIMServer.conversation.SetConversationsResp - (*GetUserConversationIDsHashReq)(nil), // 22: OpenIMServer.conversation.GetUserConversationIDsHashReq - (*GetUserConversationIDsHashResp)(nil), // 23: OpenIMServer.conversation.GetUserConversationIDsHashResp - (*GetConversationsByConversationIDReq)(nil), // 24: OpenIMServer.conversation.GetConversationsByConversationIDReq - (*GetConversationsByConversationIDResp)(nil), // 25: OpenIMServer.conversation.GetConversationsByConversationIDResp - (*wrapperspb.Int32Value)(nil), // 26: OpenIMServer.protobuf.Int32Value - (*wrapperspb.BoolValue)(nil), // 27: OpenIMServer.protobuf.BoolValue - (*wrapperspb.StringValue)(nil), // 28: OpenIMServer.protobuf.StringValue - (*wrapperspb.Int64Value)(nil), // 29: OpenIMServer.protobuf.Int64Value -} -var file_conversation_conversation_proto_depIdxs = []int32{ - 26, // 0: OpenIMServer.conversation.ConversationReq.recvMsgOpt:type_name -> OpenIMServer.protobuf.Int32Value - 27, // 1: OpenIMServer.conversation.ConversationReq.isPinned:type_name -> OpenIMServer.protobuf.BoolValue - 28, // 2: OpenIMServer.conversation.ConversationReq.attachedInfo:type_name -> OpenIMServer.protobuf.StringValue - 27, // 3: OpenIMServer.conversation.ConversationReq.isPrivateChat:type_name -> OpenIMServer.protobuf.BoolValue - 28, // 4: OpenIMServer.conversation.ConversationReq.ex:type_name -> OpenIMServer.protobuf.StringValue - 26, // 5: OpenIMServer.conversation.ConversationReq.burnDuration:type_name -> OpenIMServer.protobuf.Int32Value - 29, // 6: OpenIMServer.conversation.ConversationReq.minSeq:type_name -> OpenIMServer.protobuf.Int64Value - 29, // 7: OpenIMServer.conversation.ConversationReq.maxSeq:type_name -> OpenIMServer.protobuf.Int64Value - 26, // 8: OpenIMServer.conversation.ConversationReq.groupAtType:type_name -> OpenIMServer.protobuf.Int32Value - 29, // 9: OpenIMServer.conversation.ConversationReq.msgDestructTime:type_name -> OpenIMServer.protobuf.Int64Value - 27, // 10: OpenIMServer.conversation.ConversationReq.isMsgDestruct:type_name -> OpenIMServer.protobuf.BoolValue - 0, // 11: OpenIMServer.conversation.SetConversationReq.conversation:type_name -> OpenIMServer.conversation.Conversation - 0, // 12: OpenIMServer.conversation.GetConversationResp.conversation:type_name -> OpenIMServer.conversation.Conversation - 0, // 13: OpenIMServer.conversation.GetConversationsResp.conversations:type_name -> OpenIMServer.conversation.Conversation - 0, // 14: OpenIMServer.conversation.GetAllConversationsResp.conversations:type_name -> OpenIMServer.conversation.Conversation - 1, // 15: OpenIMServer.conversation.SetConversationsReq.conversation:type_name -> OpenIMServer.conversation.ConversationReq - 0, // 16: OpenIMServer.conversation.GetConversationsByConversationIDResp.conversations:type_name -> OpenIMServer.conversation.Conversation - 4, // 17: OpenIMServer.conversation.conversation.GetConversation:input_type -> OpenIMServer.conversation.GetConversationReq - 8, // 18: OpenIMServer.conversation.conversation.GetAllConversations:input_type -> OpenIMServer.conversation.GetAllConversationsReq - 6, // 19: OpenIMServer.conversation.conversation.GetConversations:input_type -> OpenIMServer.conversation.GetConversationsReq - 2, // 20: OpenIMServer.conversation.conversation.SetConversation:input_type -> OpenIMServer.conversation.SetConversationReq - 10, // 21: OpenIMServer.conversation.conversation.GetRecvMsgNotNotifyUserIDs:input_type -> OpenIMServer.conversation.GetRecvMsgNotNotifyUserIDsReq - 12, // 22: OpenIMServer.conversation.conversation.CreateSingleChatConversations:input_type -> OpenIMServer.conversation.CreateSingleChatConversationsReq - 14, // 23: OpenIMServer.conversation.conversation.CreateGroupChatConversations:input_type -> OpenIMServer.conversation.CreateGroupChatConversationsReq - 16, // 24: OpenIMServer.conversation.conversation.SetConversationMaxSeq:input_type -> OpenIMServer.conversation.SetConversationMaxSeqReq - 18, // 25: OpenIMServer.conversation.conversation.GetConversationIDs:input_type -> OpenIMServer.conversation.GetConversationIDsReq - 20, // 26: OpenIMServer.conversation.conversation.SetConversations:input_type -> OpenIMServer.conversation.SetConversationsReq - 22, // 27: OpenIMServer.conversation.conversation.GetUserConversationIDsHash:input_type -> OpenIMServer.conversation.GetUserConversationIDsHashReq - 24, // 28: OpenIMServer.conversation.conversation.GetConversationsByConversationID:input_type -> OpenIMServer.conversation.GetConversationsByConversationIDReq - 5, // 29: OpenIMServer.conversation.conversation.GetConversation:output_type -> OpenIMServer.conversation.GetConversationResp - 9, // 30: OpenIMServer.conversation.conversation.GetAllConversations:output_type -> OpenIMServer.conversation.GetAllConversationsResp - 7, // 31: OpenIMServer.conversation.conversation.GetConversations:output_type -> OpenIMServer.conversation.GetConversationsResp - 3, // 32: OpenIMServer.conversation.conversation.SetConversation:output_type -> OpenIMServer.conversation.SetConversationResp - 11, // 33: OpenIMServer.conversation.conversation.GetRecvMsgNotNotifyUserIDs:output_type -> OpenIMServer.conversation.GetRecvMsgNotNotifyUserIDsResp - 13, // 34: OpenIMServer.conversation.conversation.CreateSingleChatConversations:output_type -> OpenIMServer.conversation.CreateSingleChatConversationsResp - 15, // 35: OpenIMServer.conversation.conversation.CreateGroupChatConversations:output_type -> OpenIMServer.conversation.CreateGroupChatConversationsResp - 17, // 36: OpenIMServer.conversation.conversation.SetConversationMaxSeq:output_type -> OpenIMServer.conversation.SetConversationMaxSeqResp - 19, // 37: OpenIMServer.conversation.conversation.GetConversationIDs:output_type -> OpenIMServer.conversation.GetConversationIDsResp - 21, // 38: OpenIMServer.conversation.conversation.SetConversations:output_type -> OpenIMServer.conversation.SetConversationsResp - 23, // 39: OpenIMServer.conversation.conversation.GetUserConversationIDsHash:output_type -> OpenIMServer.conversation.GetUserConversationIDsHashResp - 25, // 40: OpenIMServer.conversation.conversation.GetConversationsByConversationID:output_type -> OpenIMServer.conversation.GetConversationsByConversationIDResp - 29, // [29:41] is the sub-list for method output_type - 17, // [17:29] is the sub-list for method input_type - 17, // [17:17] is the sub-list for extension type_name - 17, // [17:17] is the sub-list for extension extendee - 0, // [0:17] is the sub-list for field type_name -} - -func init() { file_conversation_conversation_proto_init() } -func file_conversation_conversation_proto_init() { - if File_conversation_conversation_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_conversation_conversation_proto_msgTypes[0].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_conversation_conversation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConversationReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[2].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_conversation_conversation_proto_msgTypes[3].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_conversation_conversation_proto_msgTypes[4].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_conversation_conversation_proto_msgTypes[5].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_conversation_conversation_proto_msgTypes[6].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_conversation_conversation_proto_msgTypes[7].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_conversation_conversation_proto_msgTypes[8].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_conversation_conversation_proto_msgTypes[9].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_conversation_conversation_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRecvMsgNotNotifyUserIDsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetRecvMsgNotNotifyUserIDsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateSingleChatConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateSingleChatConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupChatConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupChatConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationMaxSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationMaxSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationIDsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationIDsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserConversationIDsHashReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserConversationIDsHashResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsByConversationIDReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_conversation_conversation_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsByConversationIDResp); 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_conversation_conversation_proto_rawDesc, - NumEnums: 0, - NumMessages: 26, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_conversation_conversation_proto_goTypes, - DependencyIndexes: file_conversation_conversation_proto_depIdxs, - MessageInfos: file_conversation_conversation_proto_msgTypes, - }.Build() - File_conversation_conversation_proto = out.File - file_conversation_conversation_proto_rawDesc = nil - file_conversation_conversation_proto_goTypes = nil - file_conversation_conversation_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// ConversationClient is the client API for Conversation service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type ConversationClient interface { - GetConversation(ctx context.Context, in *GetConversationReq, opts ...grpc.CallOption) (*GetConversationResp, error) - GetAllConversations(ctx context.Context, in *GetAllConversationsReq, opts ...grpc.CallOption) (*GetAllConversationsResp, error) - GetConversations(ctx context.Context, in *GetConversationsReq, opts ...grpc.CallOption) (*GetConversationsResp, error) - SetConversation(ctx context.Context, in *SetConversationReq, opts ...grpc.CallOption) (*SetConversationResp, error) - GetRecvMsgNotNotifyUserIDs(ctx context.Context, in *GetRecvMsgNotNotifyUserIDsReq, opts ...grpc.CallOption) (*GetRecvMsgNotNotifyUserIDsResp, error) - CreateSingleChatConversations(ctx context.Context, in *CreateSingleChatConversationsReq, opts ...grpc.CallOption) (*CreateSingleChatConversationsResp, error) - CreateGroupChatConversations(ctx context.Context, in *CreateGroupChatConversationsReq, opts ...grpc.CallOption) (*CreateGroupChatConversationsResp, error) - SetConversationMaxSeq(ctx context.Context, in *SetConversationMaxSeqReq, opts ...grpc.CallOption) (*SetConversationMaxSeqResp, error) - GetConversationIDs(ctx context.Context, in *GetConversationIDsReq, opts ...grpc.CallOption) (*GetConversationIDsResp, error) - SetConversations(ctx context.Context, in *SetConversationsReq, opts ...grpc.CallOption) (*SetConversationsResp, error) - GetUserConversationIDsHash(ctx context.Context, in *GetUserConversationIDsHashReq, opts ...grpc.CallOption) (*GetUserConversationIDsHashResp, error) - GetConversationsByConversationID(ctx context.Context, in *GetConversationsByConversationIDReq, opts ...grpc.CallOption) (*GetConversationsByConversationIDResp, error) -} - -type conversationClient struct { - cc grpc.ClientConnInterface -} - -func NewConversationClient(cc grpc.ClientConnInterface) ConversationClient { - return &conversationClient{cc} -} - -func (c *conversationClient) GetConversation(ctx context.Context, in *GetConversationReq, opts ...grpc.CallOption) (*GetConversationResp, error) { - out := new(GetConversationResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetConversation", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetAllConversations(ctx context.Context, in *GetAllConversationsReq, opts ...grpc.CallOption) (*GetAllConversationsResp, error) { - out := new(GetAllConversationsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetAllConversations", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetConversations(ctx context.Context, in *GetConversationsReq, opts ...grpc.CallOption) (*GetConversationsResp, error) { - out := new(GetConversationsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetConversations", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) SetConversation(ctx context.Context, in *SetConversationReq, opts ...grpc.CallOption) (*SetConversationResp, error) { - out := new(SetConversationResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/SetConversation", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetRecvMsgNotNotifyUserIDs(ctx context.Context, in *GetRecvMsgNotNotifyUserIDsReq, opts ...grpc.CallOption) (*GetRecvMsgNotNotifyUserIDsResp, error) { - out := new(GetRecvMsgNotNotifyUserIDsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetRecvMsgNotNotifyUserIDs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) CreateSingleChatConversations(ctx context.Context, in *CreateSingleChatConversationsReq, opts ...grpc.CallOption) (*CreateSingleChatConversationsResp, error) { - out := new(CreateSingleChatConversationsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/CreateSingleChatConversations", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) CreateGroupChatConversations(ctx context.Context, in *CreateGroupChatConversationsReq, opts ...grpc.CallOption) (*CreateGroupChatConversationsResp, error) { - out := new(CreateGroupChatConversationsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/CreateGroupChatConversations", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) SetConversationMaxSeq(ctx context.Context, in *SetConversationMaxSeqReq, opts ...grpc.CallOption) (*SetConversationMaxSeqResp, error) { - out := new(SetConversationMaxSeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/SetConversationMaxSeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetConversationIDs(ctx context.Context, in *GetConversationIDsReq, opts ...grpc.CallOption) (*GetConversationIDsResp, error) { - out := new(GetConversationIDsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetConversationIDs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) SetConversations(ctx context.Context, in *SetConversationsReq, opts ...grpc.CallOption) (*SetConversationsResp, error) { - out := new(SetConversationsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/SetConversations", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetUserConversationIDsHash(ctx context.Context, in *GetUserConversationIDsHashReq, opts ...grpc.CallOption) (*GetUserConversationIDsHashResp, error) { - out := new(GetUserConversationIDsHashResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetUserConversationIDsHash", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *conversationClient) GetConversationsByConversationID(ctx context.Context, in *GetConversationsByConversationIDReq, opts ...grpc.CallOption) (*GetConversationsByConversationIDResp, error) { - out := new(GetConversationsByConversationIDResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.conversation.conversation/GetConversationsByConversationID", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// ConversationServer is the server API for Conversation service. -type ConversationServer interface { - GetConversation(context.Context, *GetConversationReq) (*GetConversationResp, error) - GetAllConversations(context.Context, *GetAllConversationsReq) (*GetAllConversationsResp, error) - GetConversations(context.Context, *GetConversationsReq) (*GetConversationsResp, error) - SetConversation(context.Context, *SetConversationReq) (*SetConversationResp, error) - GetRecvMsgNotNotifyUserIDs(context.Context, *GetRecvMsgNotNotifyUserIDsReq) (*GetRecvMsgNotNotifyUserIDsResp, error) - CreateSingleChatConversations(context.Context, *CreateSingleChatConversationsReq) (*CreateSingleChatConversationsResp, error) - CreateGroupChatConversations(context.Context, *CreateGroupChatConversationsReq) (*CreateGroupChatConversationsResp, error) - SetConversationMaxSeq(context.Context, *SetConversationMaxSeqReq) (*SetConversationMaxSeqResp, error) - GetConversationIDs(context.Context, *GetConversationIDsReq) (*GetConversationIDsResp, error) - SetConversations(context.Context, *SetConversationsReq) (*SetConversationsResp, error) - GetUserConversationIDsHash(context.Context, *GetUserConversationIDsHashReq) (*GetUserConversationIDsHashResp, error) - GetConversationsByConversationID(context.Context, *GetConversationsByConversationIDReq) (*GetConversationsByConversationIDResp, error) -} - -// UnimplementedConversationServer can be embedded to have forward compatible implementations. -type UnimplementedConversationServer struct { -} - -func (*UnimplementedConversationServer) GetConversation(context.Context, *GetConversationReq) (*GetConversationResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversation not implemented") -} -func (*UnimplementedConversationServer) GetAllConversations(context.Context, *GetAllConversationsReq) (*GetAllConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAllConversations not implemented") -} -func (*UnimplementedConversationServer) GetConversations(context.Context, *GetConversationsReq) (*GetConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversations not implemented") -} -func (*UnimplementedConversationServer) SetConversation(context.Context, *SetConversationReq) (*SetConversationResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConversation not implemented") -} -func (*UnimplementedConversationServer) GetRecvMsgNotNotifyUserIDs(context.Context, *GetRecvMsgNotNotifyUserIDsReq) (*GetRecvMsgNotNotifyUserIDsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetRecvMsgNotNotifyUserIDs not implemented") -} -func (*UnimplementedConversationServer) CreateSingleChatConversations(context.Context, *CreateSingleChatConversationsReq) (*CreateSingleChatConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateSingleChatConversations not implemented") -} -func (*UnimplementedConversationServer) CreateGroupChatConversations(context.Context, *CreateGroupChatConversationsReq) (*CreateGroupChatConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateGroupChatConversations not implemented") -} -func (*UnimplementedConversationServer) SetConversationMaxSeq(context.Context, *SetConversationMaxSeqReq) (*SetConversationMaxSeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConversationMaxSeq not implemented") -} -func (*UnimplementedConversationServer) GetConversationIDs(context.Context, *GetConversationIDsReq) (*GetConversationIDsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversationIDs not implemented") -} -func (*UnimplementedConversationServer) SetConversations(context.Context, *SetConversationsReq) (*SetConversationsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConversations not implemented") -} -func (*UnimplementedConversationServer) GetUserConversationIDsHash(context.Context, *GetUserConversationIDsHashReq) (*GetUserConversationIDsHashResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUserConversationIDsHash not implemented") -} -func (*UnimplementedConversationServer) GetConversationsByConversationID(context.Context, *GetConversationsByConversationIDReq) (*GetConversationsByConversationIDResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversationsByConversationID not implemented") -} - -func RegisterConversationServer(s *grpc.Server, srv ConversationServer) { - s.RegisterService(&_Conversation_serviceDesc, srv) -} - -func _Conversation_GetConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetConversation(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetConversation", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetConversation(ctx, req.(*GetConversationReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetAllConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetAllConversationsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetAllConversations(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetAllConversations", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetAllConversations(ctx, req.(*GetAllConversationsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetConversations(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetConversations", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetConversations(ctx, req.(*GetConversationsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_SetConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetConversationReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).SetConversation(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/SetConversation", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).SetConversation(ctx, req.(*SetConversationReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetRecvMsgNotNotifyUserIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetRecvMsgNotNotifyUserIDsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetRecvMsgNotNotifyUserIDs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetRecvMsgNotNotifyUserIDs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetRecvMsgNotNotifyUserIDs(ctx, req.(*GetRecvMsgNotNotifyUserIDsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_CreateSingleChatConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateSingleChatConversationsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).CreateSingleChatConversations(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/CreateSingleChatConversations", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).CreateSingleChatConversations(ctx, req.(*CreateSingleChatConversationsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_CreateGroupChatConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateGroupChatConversationsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).CreateGroupChatConversations(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/CreateGroupChatConversations", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).CreateGroupChatConversations(ctx, req.(*CreateGroupChatConversationsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_SetConversationMaxSeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetConversationMaxSeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).SetConversationMaxSeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/SetConversationMaxSeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).SetConversationMaxSeq(ctx, req.(*SetConversationMaxSeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetConversationIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationIDsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetConversationIDs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetConversationIDs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetConversationIDs(ctx, req.(*GetConversationIDsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_SetConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetConversationsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).SetConversations(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/SetConversations", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).SetConversations(ctx, req.(*SetConversationsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetUserConversationIDsHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetUserConversationIDsHashReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetUserConversationIDsHash(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetUserConversationIDsHash", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetUserConversationIDsHash(ctx, req.(*GetUserConversationIDsHashReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Conversation_GetConversationsByConversationID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationsByConversationIDReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ConversationServer).GetConversationsByConversationID(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.conversation.conversation/GetConversationsByConversationID", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ConversationServer).GetConversationsByConversationID(ctx, req.(*GetConversationsByConversationIDReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Conversation_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.conversation.conversation", - HandlerType: (*ConversationServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetConversation", - Handler: _Conversation_GetConversation_Handler, - }, - { - MethodName: "GetAllConversations", - Handler: _Conversation_GetAllConversations_Handler, - }, - { - MethodName: "GetConversations", - Handler: _Conversation_GetConversations_Handler, - }, - { - MethodName: "SetConversation", - Handler: _Conversation_SetConversation_Handler, - }, - { - MethodName: "GetRecvMsgNotNotifyUserIDs", - Handler: _Conversation_GetRecvMsgNotNotifyUserIDs_Handler, - }, - { - MethodName: "CreateSingleChatConversations", - Handler: _Conversation_CreateSingleChatConversations_Handler, - }, - { - MethodName: "CreateGroupChatConversations", - Handler: _Conversation_CreateGroupChatConversations_Handler, - }, - { - MethodName: "SetConversationMaxSeq", - Handler: _Conversation_SetConversationMaxSeq_Handler, - }, - { - MethodName: "GetConversationIDs", - Handler: _Conversation_GetConversationIDs_Handler, - }, - { - MethodName: "SetConversations", - Handler: _Conversation_SetConversations_Handler, - }, - { - MethodName: "GetUserConversationIDsHash", - Handler: _Conversation_GetUserConversationIDsHash_Handler, - }, - { - MethodName: "GetConversationsByConversationID", - Handler: _Conversation_GetConversationsByConversationID_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "conversation/conversation.proto", -} diff --git a/pkg/proto/conversation/conversation.proto b/pkg/proto/conversation/conversation.proto deleted file mode 100644 index 0a271d525..000000000 --- a/pkg/proto/conversation/conversation.proto +++ /dev/null @@ -1,172 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.conversation; -import "wrapperspb/wrapperspb.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation"; - -message Conversation{ - string ownerUserID = 1; - string conversationID = 2; - int32 recvMsgOpt = 3; - int32 conversationType = 4; - string userID = 5; - string groupID = 6; - bool isPinned = 7; - string attachedInfo = 8; - bool isPrivateChat = 9; - int32 groupAtType = 10; - string ex = 11; - int32 burnDuration = 12; - int64 minSeq = 13; - int64 maxSeq = 14; - int64 msgDestructTime = 15; - int64 latestMsgDestructTime = 16; - bool isMsgDestruct = 17; -} - -message ConversationReq{ - string conversationID = 1; - int32 conversationType = 2; - string userID = 3; - string groupID = 4; - OpenIMServer.protobuf.Int32Value recvMsgOpt = 5; - OpenIMServer.protobuf.BoolValue isPinned = 6; - OpenIMServer.protobuf.StringValue attachedInfo = 7; - OpenIMServer.protobuf.BoolValue isPrivateChat = 8; - OpenIMServer.protobuf.StringValue ex = 9; - OpenIMServer.protobuf.Int32Value burnDuration = 10; - OpenIMServer.protobuf.Int64Value minSeq = 11; - OpenIMServer.protobuf.Int64Value maxSeq = 12; - OpenIMServer.protobuf.Int32Value groupAtType = 13; - OpenIMServer.protobuf.Int64Value msgDestructTime = 14; - OpenIMServer.protobuf.BoolValue isMsgDestruct = 15; -} - -message SetConversationReq{ - Conversation conversation = 1; -} - -message SetConversationResp{ -} - -message GetConversationReq{ - string conversationID = 1; - string ownerUserID = 2; -} - -message GetConversationResp{ - Conversation conversation = 2; -} - -message GetConversationsReq{ - string ownerUserID = 1; - repeated string conversationIDs = 2; -} - -message GetConversationsResp{ - repeated Conversation conversations = 2; -} - -message GetAllConversationsReq{ - string ownerUserID = 1; -} - -message GetAllConversationsResp{ - repeated Conversation conversations = 2; -} - - -message GetRecvMsgNotNotifyUserIDsReq { - string groupID = 1; -} - -message GetRecvMsgNotNotifyUserIDsResp { - repeated string userIDs = 1; -} - -message CreateSingleChatConversationsReq { - string recvID = 1; - string sendID = 2; -} - -message CreateSingleChatConversationsResp { -} - -message CreateGroupChatConversationsReq { - repeated string userIDs = 1; - string groupID = 2; -} - -message CreateGroupChatConversationsResp { -} - -message SetConversationMaxSeqReq { - string conversationID = 1; - repeated string ownerUserID = 2; - int64 maxSeq = 3; -} - -message SetConversationMaxSeqResp { -} - -message GetConversationIDsReq { - string userID = 1; -} - -message GetConversationIDsResp { - repeated string conversationIDs = 1; -} - - - -message SetConversationsReq { - repeated string userIDs = 1; - ConversationReq conversation = 2; -} - -message SetConversationsResp { -} - -message GetUserConversationIDsHashReq { - string ownerUserID = 1; -} - -message GetUserConversationIDsHashResp { - uint64 hash = 1; -} - -message GetConversationsByConversationIDReq { - repeated string conversationIDs = 1; -} - -message GetConversationsByConversationIDResp { - repeated Conversation conversations = 1; -} - -service conversation { - rpc GetConversation(GetConversationReq)returns(GetConversationResp); - rpc GetAllConversations(GetAllConversationsReq)returns(GetAllConversationsResp); - rpc GetConversations(GetConversationsReq)returns(GetConversationsResp); - rpc SetConversation(SetConversationReq)returns(SetConversationResp); - rpc GetRecvMsgNotNotifyUserIDs(GetRecvMsgNotNotifyUserIDsReq) returns (GetRecvMsgNotNotifyUserIDsResp); - rpc CreateSingleChatConversations(CreateSingleChatConversationsReq) returns (CreateSingleChatConversationsResp); - rpc CreateGroupChatConversations(CreateGroupChatConversationsReq) returns (CreateGroupChatConversationsResp); - rpc SetConversationMaxSeq(SetConversationMaxSeqReq) returns(SetConversationMaxSeqResp); - rpc GetConversationIDs(GetConversationIDsReq) returns(GetConversationIDsResp); - rpc SetConversations(SetConversationsReq) returns(SetConversationsResp); - rpc GetUserConversationIDsHash(GetUserConversationIDsHashReq) returns(GetUserConversationIDsHashResp); - rpc GetConversationsByConversationID(GetConversationsByConversationIDReq) returns(GetConversationsByConversationIDResp); -} diff --git a/pkg/proto/errinfo/errinfo.pb.go b/pkg/proto/errinfo/errinfo.pb.go deleted file mode 100644 index 44f906d86..000000000 --- a/pkg/proto/errinfo/errinfo.pb.go +++ /dev/null @@ -1,197 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: errinfo/errinfo.proto - -package errinfo - -import ( - 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) -) - -type ErrorInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path"` - Line uint32 `protobuf:"varint,2,opt,name=line,proto3" json:"line"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` - Cause string `protobuf:"bytes,4,opt,name=cause,proto3" json:"cause"` - Warp []string `protobuf:"bytes,5,rep,name=warp,proto3" json:"warp"` -} - -func (x *ErrorInfo) Reset() { - *x = ErrorInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_errinfo_errinfo_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ErrorInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ErrorInfo) ProtoMessage() {} - -func (x *ErrorInfo) ProtoReflect() protoreflect.Message { - mi := &file_errinfo_errinfo_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) -} - -// Deprecated: Use ErrorInfo.ProtoReflect.Descriptor instead. -func (*ErrorInfo) Descriptor() ([]byte, []int) { - return file_errinfo_errinfo_proto_rawDescGZIP(), []int{0} -} - -func (x *ErrorInfo) GetPath() string { - if x != nil { - return x.Path - } - return "" -} - -func (x *ErrorInfo) GetLine() uint32 { - if x != nil { - return x.Line - } - return 0 -} - -func (x *ErrorInfo) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *ErrorInfo) GetCause() string { - if x != nil { - return x.Cause - } - return "" -} - -func (x *ErrorInfo) GetWarp() []string { - if x != nil { - return x.Warp - } - return nil -} - -var File_errinfo_errinfo_proto protoreflect.FileDescriptor - -var file_errinfo_errinfo_proto_rawDesc = []byte{ - 0x0a, 0x15, 0x65, 0x72, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x2f, 0x65, 0x72, 0x72, 0x69, 0x6e, 0x66, - 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x22, 0x71, - 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x70, - 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, - 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x6c, - 0x69, 0x6e, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x77, 0x61, 0x72, 0x70, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x77, 0x61, 0x72, - 0x70, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, - 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2f, 0x65, 0x72, 0x72, 0x69, 0x6e, 0x66, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, -} - -var ( - file_errinfo_errinfo_proto_rawDescOnce sync.Once - file_errinfo_errinfo_proto_rawDescData = file_errinfo_errinfo_proto_rawDesc -) - -func file_errinfo_errinfo_proto_rawDescGZIP() []byte { - file_errinfo_errinfo_proto_rawDescOnce.Do(func() { - file_errinfo_errinfo_proto_rawDescData = protoimpl.X.CompressGZIP(file_errinfo_errinfo_proto_rawDescData) - }) - return file_errinfo_errinfo_proto_rawDescData -} - -var file_errinfo_errinfo_proto_msgTypes = make([]protoimpl.MessageInfo, 1) -var file_errinfo_errinfo_proto_goTypes = []interface{}{ - (*ErrorInfo)(nil), // 0: OpenIMServer.protobuf.ErrorInfo -} -var file_errinfo_errinfo_proto_depIdxs = []int32{ - 0, // [0:0] is the sub-list for method output_type - 0, // [0:0] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name -} - -func init() { file_errinfo_errinfo_proto_init() } -func file_errinfo_errinfo_proto_init() { - if File_errinfo_errinfo_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_errinfo_errinfo_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ErrorInfo); 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_errinfo_errinfo_proto_rawDesc, - NumEnums: 0, - NumMessages: 1, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_errinfo_errinfo_proto_goTypes, - DependencyIndexes: file_errinfo_errinfo_proto_depIdxs, - MessageInfos: file_errinfo_errinfo_proto_msgTypes, - }.Build() - File_errinfo_errinfo_proto = out.File - file_errinfo_errinfo_proto_rawDesc = nil - file_errinfo_errinfo_proto_goTypes = nil - file_errinfo_errinfo_proto_depIdxs = nil -} diff --git a/pkg/proto/errinfo/errinfo.proto b/pkg/proto/errinfo/errinfo.proto deleted file mode 100644 index 11fddec34..000000000 --- a/pkg/proto/errinfo/errinfo.proto +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package OpenIMServer.protobuf; - -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo"; - -message ErrorInfo { - string path = 1; - uint32 line = 2; - string name = 3; - string cause = 4; - repeated string warp = 5; -} \ No newline at end of file diff --git a/pkg/proto/friend/friend.go b/pkg/proto/friend/friend.go deleted file mode 100644 index 197fc753c..000000000 --- a/pkg/proto/friend/friend.go +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package friend - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *GetPaginationFriendsReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *ApplyToAddFriendReq) Check() error { - if x.ToUserID == "" { - return errs.ErrArgs.Wrap("toUserID is empty") - } - if x.FromUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - return nil -} - -func (x *ImportFriendReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.FriendUserIDs == nil { - return errs.ErrArgs.Wrap("friendUserIDS is empty") - } - return nil -} - -func (x *GetPaginationFriendsApplyToReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *GetDesignatedFriendsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.FriendUserIDs == nil { - return errs.ErrArgs.Wrap("friendUserIDS is empty") - } - return nil -} - -func (x *AddBlackReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.BlackUserID == "" { - return errs.ErrArgs.Wrap("BlackUserID is empty") - } - return nil -} - -func (x *RemoveBlackReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.BlackUserID == "" { - return errs.ErrArgs.Wrap("BlackUserID is empty") - } - return nil -} - -func (x *GetPaginationBlacksReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *IsFriendReq) Check() error { - if x.UserID1 == "" { - return errs.ErrArgs.Wrap("userID1 is empty") - } - if x.UserID2 == "" { - return errs.ErrArgs.Wrap("userID2 is empty") - } - return nil -} - -func (x *IsBlackReq) Check() error { - if x.UserID1 == "" { - return errs.ErrArgs.Wrap("userID1 is empty") - } - if x.UserID2 == "" { - return errs.ErrArgs.Wrap("userID2 is empty") - } - return nil -} - -func (x *DeleteFriendReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("userID1 is empty") - } - if x.FriendUserID == "" { - return errs.ErrArgs.Wrap("userID2 is empty") - } - return nil -} - -func (x *RespondFriendApplyReq) Check() error { - if x.ToUserID == "" { - return errs.ErrArgs.Wrap("toUserID is empty") - } - if x.FromUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - return nil -} - -func (x *SetFriendRemarkReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID is empty") - } - if x.FriendUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - return nil -} - -func (x *GetPaginationFriendsApplyFromReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *GetFriendIDsReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} diff --git a/pkg/proto/friend/friend.pb.go b/pkg/proto/friend/friend.pb.go deleted file mode 100644 index 5745fcd3c..000000000 --- a/pkg/proto/friend/friend.pb.go +++ /dev/null @@ -1,2952 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: friend/friend.proto - -package friend - -import ( - context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - 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) -) - -type GetPaginationFriendsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetPaginationFriendsReq) Reset() { - *x = GetPaginationFriendsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsReq) ProtoMessage() {} - -func (x *GetPaginationFriendsReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsReq.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{0} -} - -func (x *GetPaginationFriendsReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetPaginationFriendsReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetPaginationFriendsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendsInfo []*sdkws.FriendInfo `protobuf:"bytes,1,rep,name=friendsInfo,proto3" json:"friendsInfo"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` -} - -func (x *GetPaginationFriendsResp) Reset() { - *x = GetPaginationFriendsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsResp) ProtoMessage() {} - -func (x *GetPaginationFriendsResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsResp.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{1} -} - -func (x *GetPaginationFriendsResp) GetFriendsInfo() []*sdkws.FriendInfo { - if x != nil { - return x.FriendsInfo - } - return nil -} - -func (x *GetPaginationFriendsResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -type ApplyToAddFriendReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` -} - -func (x *ApplyToAddFriendReq) Reset() { - *x = ApplyToAddFriendReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ApplyToAddFriendReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ApplyToAddFriendReq) ProtoMessage() {} - -func (x *ApplyToAddFriendReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use ApplyToAddFriendReq.ProtoReflect.Descriptor instead. -func (*ApplyToAddFriendReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{2} -} - -func (x *ApplyToAddFriendReq) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -func (x *ApplyToAddFriendReq) GetToUserID() string { - if x != nil { - return x.ToUserID - } - return "" -} - -func (x *ApplyToAddFriendReq) GetReqMsg() string { - if x != nil { - return x.ReqMsg - } - return "" -} - -func (x *ApplyToAddFriendReq) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type ApplyToAddFriendResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ApplyToAddFriendResp) Reset() { - *x = ApplyToAddFriendResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ApplyToAddFriendResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ApplyToAddFriendResp) ProtoMessage() {} - -func (x *ApplyToAddFriendResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use ApplyToAddFriendResp.ProtoReflect.Descriptor instead. -func (*ApplyToAddFriendResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{3} -} - -type ImportFriendReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` -} - -func (x *ImportFriendReq) Reset() { - *x = ImportFriendReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ImportFriendReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ImportFriendReq) ProtoMessage() {} - -func (x *ImportFriendReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use ImportFriendReq.ProtoReflect.Descriptor instead. -func (*ImportFriendReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{4} -} - -func (x *ImportFriendReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *ImportFriendReq) GetFriendUserIDs() []string { - if x != nil { - return x.FriendUserIDs - } - return nil -} - -type ImportFriendResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ImportFriendResp) Reset() { - *x = ImportFriendResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ImportFriendResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ImportFriendResp) ProtoMessage() {} - -func (x *ImportFriendResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use ImportFriendResp.ProtoReflect.Descriptor instead. -func (*ImportFriendResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{5} -} - -type GetPaginationFriendsApplyToReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetPaginationFriendsApplyToReq) Reset() { - *x = GetPaginationFriendsApplyToReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsApplyToReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsApplyToReq) ProtoMessage() {} - -func (x *GetPaginationFriendsApplyToReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsApplyToReq.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsApplyToReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{6} -} - -func (x *GetPaginationFriendsApplyToReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GetPaginationFriendsApplyToReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type GetPaginationFriendsApplyToResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=FriendRequests,proto3" json:"FriendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` -} - -func (x *GetPaginationFriendsApplyToResp) Reset() { - *x = GetPaginationFriendsApplyToResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsApplyToResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsApplyToResp) ProtoMessage() {} - -func (x *GetPaginationFriendsApplyToResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsApplyToResp.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsApplyToResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{7} -} - -func (x *GetPaginationFriendsApplyToResp) GetFriendRequests() []*sdkws.FriendRequest { - if x != nil { - return x.FriendRequests - } - return nil -} - -func (x *GetPaginationFriendsApplyToResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -type GetDesignatedFriendsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - FriendUserIDs []string `protobuf:"bytes,2,rep,name=friendUserIDs,proto3" json:"friendUserIDs"` -} - -func (x *GetDesignatedFriendsReq) Reset() { - *x = GetDesignatedFriendsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDesignatedFriendsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDesignatedFriendsReq) ProtoMessage() {} - -func (x *GetDesignatedFriendsReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetDesignatedFriendsReq.ProtoReflect.Descriptor instead. -func (*GetDesignatedFriendsReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{8} -} - -func (x *GetDesignatedFriendsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GetDesignatedFriendsReq) GetFriendUserIDs() []string { - if x != nil { - return x.FriendUserIDs - } - return nil -} - -type GetDesignatedFriendsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendsInfo []*sdkws.FriendInfo `protobuf:"bytes,1,rep,name=friendsInfo,proto3" json:"friendsInfo"` -} - -func (x *GetDesignatedFriendsResp) Reset() { - *x = GetDesignatedFriendsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDesignatedFriendsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDesignatedFriendsResp) ProtoMessage() {} - -func (x *GetDesignatedFriendsResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetDesignatedFriendsResp.ProtoReflect.Descriptor instead. -func (*GetDesignatedFriendsResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{9} -} - -func (x *GetDesignatedFriendsResp) GetFriendsInfo() []*sdkws.FriendInfo { - if x != nil { - return x.FriendsInfo - } - return nil -} - -type AddBlackReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - BlackUserID string `protobuf:"bytes,2,opt,name=blackUserID,proto3" json:"blackUserID"` -} - -func (x *AddBlackReq) Reset() { - *x = AddBlackReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddBlackReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddBlackReq) ProtoMessage() {} - -func (x *AddBlackReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use AddBlackReq.ProtoReflect.Descriptor instead. -func (*AddBlackReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{10} -} - -func (x *AddBlackReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *AddBlackReq) GetBlackUserID() string { - if x != nil { - return x.BlackUserID - } - return "" -} - -type AddBlackResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *AddBlackResp) Reset() { - *x = AddBlackResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddBlackResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddBlackResp) ProtoMessage() {} - -func (x *AddBlackResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use AddBlackResp.ProtoReflect.Descriptor instead. -func (*AddBlackResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{11} -} - -type RemoveBlackReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - BlackUserID string `protobuf:"bytes,2,opt,name=blackUserID,proto3" json:"blackUserID"` -} - -func (x *RemoveBlackReq) Reset() { - *x = RemoveBlackReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RemoveBlackReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RemoveBlackReq) ProtoMessage() {} - -func (x *RemoveBlackReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_proto_msgTypes[12] - 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 RemoveBlackReq.ProtoReflect.Descriptor instead. -func (*RemoveBlackReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{12} -} - -func (x *RemoveBlackReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *RemoveBlackReq) GetBlackUserID() string { - if x != nil { - return x.BlackUserID - } - return "" -} - -type RemoveBlackResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *RemoveBlackResp) Reset() { - *x = RemoveBlackResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RemoveBlackResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RemoveBlackResp) ProtoMessage() {} - -func (x *RemoveBlackResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use RemoveBlackResp.ProtoReflect.Descriptor instead. -func (*RemoveBlackResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{13} -} - -type GetPaginationBlacksReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetPaginationBlacksReq) Reset() { - *x = GetPaginationBlacksReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationBlacksReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationBlacksReq) ProtoMessage() {} - -func (x *GetPaginationBlacksReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_proto_msgTypes[14] - 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 GetPaginationBlacksReq.ProtoReflect.Descriptor instead. -func (*GetPaginationBlacksReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{14} -} - -func (x *GetPaginationBlacksReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GetPaginationBlacksReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type GetPaginationBlacksResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Blacks []*sdkws.BlackInfo `protobuf:"bytes,1,rep,name=blacks,proto3" json:"blacks"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` -} - -func (x *GetPaginationBlacksResp) Reset() { - *x = GetPaginationBlacksResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationBlacksResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationBlacksResp) ProtoMessage() {} - -func (x *GetPaginationBlacksResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationBlacksResp.ProtoReflect.Descriptor instead. -func (*GetPaginationBlacksResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{15} -} - -func (x *GetPaginationBlacksResp) GetBlacks() []*sdkws.BlackInfo { - if x != nil { - return x.Blacks - } - return nil -} - -func (x *GetPaginationBlacksResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -type IsFriendReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID1 string `protobuf:"bytes,1,opt,name=userID1,proto3" json:"userID1"` - UserID2 string `protobuf:"bytes,2,opt,name=userID2,proto3" json:"userID2"` -} - -func (x *IsFriendReq) Reset() { - *x = IsFriendReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *IsFriendReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*IsFriendReq) ProtoMessage() {} - -func (x *IsFriendReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use IsFriendReq.ProtoReflect.Descriptor instead. -func (*IsFriendReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{16} -} - -func (x *IsFriendReq) GetUserID1() string { - if x != nil { - return x.UserID1 - } - return "" -} - -func (x *IsFriendReq) GetUserID2() string { - if x != nil { - return x.UserID2 - } - return "" -} - -type IsFriendResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InUser1Friends bool `protobuf:"varint,1,opt,name=inUser1Friends,proto3" json:"inUser1Friends"` //如果userID2在userID1的好友列表中 true - InUser2Friends bool `protobuf:"varint,2,opt,name=inUser2Friends,proto3" json:"inUser2Friends"` //如果userID1在userID2的好友列表中 true -} - -func (x *IsFriendResp) Reset() { - *x = IsFriendResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *IsFriendResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*IsFriendResp) ProtoMessage() {} - -func (x *IsFriendResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use IsFriendResp.ProtoReflect.Descriptor instead. -func (*IsFriendResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{17} -} - -func (x *IsFriendResp) GetInUser1Friends() bool { - if x != nil { - return x.InUser1Friends - } - return false -} - -func (x *IsFriendResp) GetInUser2Friends() bool { - if x != nil { - return x.InUser2Friends - } - return false -} - -type IsBlackReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID1 string `protobuf:"bytes,1,opt,name=userID1,proto3" json:"userID1"` - UserID2 string `protobuf:"bytes,2,opt,name=userID2,proto3" json:"userID2"` -} - -func (x *IsBlackReq) Reset() { - *x = IsBlackReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *IsBlackReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*IsBlackReq) ProtoMessage() {} - -func (x *IsBlackReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use IsBlackReq.ProtoReflect.Descriptor instead. -func (*IsBlackReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{18} -} - -func (x *IsBlackReq) GetUserID1() string { - if x != nil { - return x.UserID1 - } - return "" -} - -func (x *IsBlackReq) GetUserID2() string { - if x != nil { - return x.UserID2 - } - return "" -} - -type IsBlackResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - InUser1Blacks bool `protobuf:"varint,1,opt,name=inUser1Blacks,proto3" json:"inUser1Blacks"` //如果userID2在userID1的黑名单列表中 true - InUser2Blacks bool `protobuf:"varint,2,opt,name=inUser2Blacks,proto3" json:"inUser2Blacks"` //如果userID1在userID2的黑名单列表中 true -} - -func (x *IsBlackResp) Reset() { - *x = IsBlackResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *IsBlackResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*IsBlackResp) ProtoMessage() {} - -func (x *IsBlackResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use IsBlackResp.ProtoReflect.Descriptor instead. -func (*IsBlackResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{19} -} - -func (x *IsBlackResp) GetInUser1Blacks() bool { - if x != nil { - return x.InUser1Blacks - } - return false -} - -func (x *IsBlackResp) GetInUser2Blacks() bool { - if x != nil { - return x.InUser2Blacks - } - return false -} - -type DeleteFriendReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` -} - -func (x *DeleteFriendReq) Reset() { - *x = DeleteFriendReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteFriendReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteFriendReq) ProtoMessage() {} - -func (x *DeleteFriendReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use DeleteFriendReq.ProtoReflect.Descriptor instead. -func (*DeleteFriendReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{20} -} - -func (x *DeleteFriendReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *DeleteFriendReq) GetFriendUserID() string { - if x != nil { - return x.FriendUserID - } - return "" -} - -type DeleteFriendResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteFriendResp) Reset() { - *x = DeleteFriendResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteFriendResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteFriendResp) ProtoMessage() {} - -func (x *DeleteFriendResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use DeleteFriendResp.ProtoReflect.Descriptor instead. -func (*DeleteFriendResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{21} -} - -// process -type RespondFriendApplyReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` //主动发起的申请者 - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` //被动添加者 - HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` -} - -func (x *RespondFriendApplyReq) Reset() { - *x = RespondFriendApplyReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RespondFriendApplyReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RespondFriendApplyReq) ProtoMessage() {} - -func (x *RespondFriendApplyReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use RespondFriendApplyReq.ProtoReflect.Descriptor instead. -func (*RespondFriendApplyReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{22} -} - -func (x *RespondFriendApplyReq) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -func (x *RespondFriendApplyReq) GetToUserID() string { - if x != nil { - return x.ToUserID - } - return "" -} - -func (x *RespondFriendApplyReq) GetHandleResult() int32 { - if x != nil { - return x.HandleResult - } - return 0 -} - -func (x *RespondFriendApplyReq) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -type RespondFriendApplyResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *RespondFriendApplyResp) Reset() { - *x = RespondFriendApplyResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RespondFriendApplyResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RespondFriendApplyResp) ProtoMessage() {} - -func (x *RespondFriendApplyResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use RespondFriendApplyResp.ProtoReflect.Descriptor instead. -func (*RespondFriendApplyResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{23} -} - -type SetFriendRemarkReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - FriendUserID string `protobuf:"bytes,2,opt,name=friendUserID,proto3" json:"friendUserID"` - Remark string `protobuf:"bytes,3,opt,name=remark,proto3" json:"remark"` -} - -func (x *SetFriendRemarkReq) Reset() { - *x = SetFriendRemarkReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetFriendRemarkReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetFriendRemarkReq) ProtoMessage() {} - -func (x *SetFriendRemarkReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use SetFriendRemarkReq.ProtoReflect.Descriptor instead. -func (*SetFriendRemarkReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{24} -} - -func (x *SetFriendRemarkReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *SetFriendRemarkReq) GetFriendUserID() string { - if x != nil { - return x.FriendUserID - } - return "" -} - -func (x *SetFriendRemarkReq) GetRemark() string { - if x != nil { - return x.Remark - } - return "" -} - -type SetFriendRemarkResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetFriendRemarkResp) Reset() { - *x = SetFriendRemarkResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetFriendRemarkResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetFriendRemarkResp) ProtoMessage() {} - -func (x *SetFriendRemarkResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use SetFriendRemarkResp.ProtoReflect.Descriptor instead. -func (*SetFriendRemarkResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{25} -} - -type GetPaginationFriendsApplyFromReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetPaginationFriendsApplyFromReq) Reset() { - *x = GetPaginationFriendsApplyFromReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsApplyFromReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsApplyFromReq) ProtoMessage() {} - -func (x *GetPaginationFriendsApplyFromReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsApplyFromReq.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsApplyFromReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{26} -} - -func (x *GetPaginationFriendsApplyFromReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GetPaginationFriendsApplyFromReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type GetPaginationFriendsApplyFromResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendRequests []*sdkws.FriendRequest `protobuf:"bytes,1,rep,name=friendRequests,proto3" json:"friendRequests"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` -} - -func (x *GetPaginationFriendsApplyFromResp) Reset() { - *x = GetPaginationFriendsApplyFromResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationFriendsApplyFromResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationFriendsApplyFromResp) ProtoMessage() {} - -func (x *GetPaginationFriendsApplyFromResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetPaginationFriendsApplyFromResp.ProtoReflect.Descriptor instead. -func (*GetPaginationFriendsApplyFromResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{27} -} - -func (x *GetPaginationFriendsApplyFromResp) GetFriendRequests() []*sdkws.FriendRequest { - if x != nil { - return x.FriendRequests - } - return nil -} - -func (x *GetPaginationFriendsApplyFromResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -type GetFriendIDsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetFriendIDsReq) Reset() { - *x = GetFriendIDsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetFriendIDsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetFriendIDsReq) ProtoMessage() {} - -func (x *GetFriendIDsReq) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetFriendIDsReq.ProtoReflect.Descriptor instead. -func (*GetFriendIDsReq) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{28} -} - -func (x *GetFriendIDsReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetFriendIDsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendIDs []string `protobuf:"bytes,1,rep,name=friendIDs,proto3" json:"friendIDs"` -} - -func (x *GetFriendIDsResp) Reset() { - *x = GetFriendIDsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_friend_friend_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetFriendIDsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetFriendIDsResp) ProtoMessage() {} - -func (x *GetFriendIDsResp) ProtoReflect() protoreflect.Message { - mi := &file_friend_friend_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) -} - -// Deprecated: Use GetFriendIDsResp.ProtoReflect.Descriptor instead. -func (*GetFriendIDsResp) Descriptor() ([]byte, []int) { - return file_friend_friend_proto_rawDescGZIP(), []int{29} -} - -func (x *GetFriendIDsResp) GetFriendIDs() []string { - if x != nil { - return x.FriendIDs - } - return nil -} - -var File_friend_friend_proto protoreflect.FileDescriptor - -var file_friend_friend_proto_rawDesc = []byte{ - 0x0a, 0x13, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x78, 0x0a, - 0x17, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x72, 0x0a, 0x18, 0x67, 0x65, 0x74, 0x50, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x40, 0x0a, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x79, 0x0a, 0x13, 0x61, - 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, - 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x16, - 0x0a, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x16, 0x0a, 0x14, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54, - 0x6f, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x59, - 0x0a, 0x0f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, - 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x69, 0x6d, 0x70, - 0x6f, 0x72, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x7f, 0x0a, - 0x1e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x65, 0x71, 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, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x82, - 0x01, 0x0a, 0x1f, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x49, 0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0e, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x22, 0x61, 0x0a, 0x17, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x74, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x12, 0x20, - 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x5c, 0x0a, 0x18, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, - 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x40, 0x0a, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x49, 0x6e, 0x66, - 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x51, 0x0a, 0x0b, 0x61, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x62, 0x6c, 0x61, 0x63, - 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x0e, 0x0a, 0x0c, 0x61, 0x64, 0x64, 0x42, 0x6c, - 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x22, 0x54, 0x0a, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x76, - 0x65, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x62, - 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x11, 0x0a, - 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x77, 0x0a, 0x16, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x71, 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, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x66, 0x0a, 0x17, 0x67, 0x65, 0x74, - 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x35, 0x0a, 0x06, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x22, 0x41, 0x0a, 0x0b, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, - 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x31, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x32, 0x22, 0x5e, 0x0a, 0x0c, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x31, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x6e, - 0x55, 0x73, 0x65, 0x72, 0x31, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0e, - 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x32, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x32, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x22, 0x40, 0x0a, 0x0a, 0x69, 0x73, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, - 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x31, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x31, 0x12, 0x18, 0x0a, 0x07, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x32, 0x22, 0x59, 0x0a, 0x0b, 0x69, 0x73, 0x42, 0x6c, 0x61, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x31, - 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x6e, - 0x55, 0x73, 0x65, 0x72, 0x31, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x69, - 0x6e, 0x55, 0x73, 0x65, 0x72, 0x32, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x32, 0x42, 0x6c, 0x61, 0x63, 0x6b, - 0x73, 0x22, 0x57, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x12, 0x0a, 0x10, 0x64, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x95, - 0x01, 0x0a, 0x15, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, - 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, - 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0x18, 0x0a, 0x16, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x72, 0x0a, 0x12, 0x73, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6d, - 0x61, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x22, 0x15, 0x0a, 0x13, 0x73, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x22, 0x81, 0x01, 0x0a, 0x20, - 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x71, - 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, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x84, 0x01, 0x0a, 0x21, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x46, 0x72, 0x6f, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x49, 0x0a, 0x0e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x0e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22, 0x29, 0x0a, 0x0f, 0x67, 0x65, 0x74, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x22, 0x30, 0x0a, 0x10, 0x67, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x44, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, - 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x49, 0x44, 0x73, 0x32, 0xa0, 0x0c, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x67, - 0x0a, 0x10, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x12, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, - 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x2e, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x88, 0x01, 0x0a, 0x1b, 0x67, 0x65, 0x74, 0x50, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x33, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, - 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x34, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x8e, 0x01, 0x0a, 0x1d, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x35, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, - 0x70, 0x70, 0x6c, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x36, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x46, 0x72, 0x6f, 0x6d, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x4f, 0x0a, 0x08, 0x61, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x12, - 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, - 0x71, 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x61, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x6c, - 0x61, 0x63, 0x6b, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x72, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4f, - 0x0a, 0x08, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x2e, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x2e, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x4c, 0x0a, 0x07, 0x69, 0x73, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x2e, 0x69, 0x73, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x2e, 0x69, 0x73, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, - 0x13, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, - 0x61, 0x63, 0x6b, 0x73, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, - 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x5b, 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, - 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x64, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6d, 0x0a, 0x12, - 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, - 0x6c, 0x79, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x2b, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x64, 0x0a, 0x0f, 0x73, - 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x27, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x73, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x73, 0x65, - 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x5c, 0x0a, 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x69, - 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x73, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x64, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, - 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x44, - 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x2c, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x2d, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x0c, 0x67, 0x65, 0x74, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x73, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, - 0x67, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x1a, - 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2e, 0x67, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, - 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, - 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_friend_friend_proto_rawDescOnce sync.Once - file_friend_friend_proto_rawDescData = file_friend_friend_proto_rawDesc -) - -func file_friend_friend_proto_rawDescGZIP() []byte { - file_friend_friend_proto_rawDescOnce.Do(func() { - file_friend_friend_proto_rawDescData = protoimpl.X.CompressGZIP(file_friend_friend_proto_rawDescData) - }) - return file_friend_friend_proto_rawDescData -} - -var file_friend_friend_proto_msgTypes = make([]protoimpl.MessageInfo, 30) -var file_friend_friend_proto_goTypes = []interface{}{ - (*GetPaginationFriendsReq)(nil), // 0: OpenIMServer.friend.getPaginationFriendsReq - (*GetPaginationFriendsResp)(nil), // 1: OpenIMServer.friend.getPaginationFriendsResp - (*ApplyToAddFriendReq)(nil), // 2: OpenIMServer.friend.applyToAddFriendReq - (*ApplyToAddFriendResp)(nil), // 3: OpenIMServer.friend.applyToAddFriendResp - (*ImportFriendReq)(nil), // 4: OpenIMServer.friend.importFriendReq - (*ImportFriendResp)(nil), // 5: OpenIMServer.friend.importFriendResp - (*GetPaginationFriendsApplyToReq)(nil), // 6: OpenIMServer.friend.getPaginationFriendsApplyToReq - (*GetPaginationFriendsApplyToResp)(nil), // 7: OpenIMServer.friend.getPaginationFriendsApplyToResp - (*GetDesignatedFriendsReq)(nil), // 8: OpenIMServer.friend.getDesignatedFriendsReq - (*GetDesignatedFriendsResp)(nil), // 9: OpenIMServer.friend.getDesignatedFriendsResp - (*AddBlackReq)(nil), // 10: OpenIMServer.friend.addBlackReq - (*AddBlackResp)(nil), // 11: OpenIMServer.friend.addBlackResp - (*RemoveBlackReq)(nil), // 12: OpenIMServer.friend.removeBlackReq - (*RemoveBlackResp)(nil), // 13: OpenIMServer.friend.removeBlackResp - (*GetPaginationBlacksReq)(nil), // 14: OpenIMServer.friend.getPaginationBlacksReq - (*GetPaginationBlacksResp)(nil), // 15: OpenIMServer.friend.getPaginationBlacksResp - (*IsFriendReq)(nil), // 16: OpenIMServer.friend.isFriendReq - (*IsFriendResp)(nil), // 17: OpenIMServer.friend.isFriendResp - (*IsBlackReq)(nil), // 18: OpenIMServer.friend.isBlackReq - (*IsBlackResp)(nil), // 19: OpenIMServer.friend.isBlackResp - (*DeleteFriendReq)(nil), // 20: OpenIMServer.friend.deleteFriendReq - (*DeleteFriendResp)(nil), // 21: OpenIMServer.friend.deleteFriendResp - (*RespondFriendApplyReq)(nil), // 22: OpenIMServer.friend.respondFriendApplyReq - (*RespondFriendApplyResp)(nil), // 23: OpenIMServer.friend.respondFriendApplyResp - (*SetFriendRemarkReq)(nil), // 24: OpenIMServer.friend.setFriendRemarkReq - (*SetFriendRemarkResp)(nil), // 25: OpenIMServer.friend.setFriendRemarkResp - (*GetPaginationFriendsApplyFromReq)(nil), // 26: OpenIMServer.friend.getPaginationFriendsApplyFromReq - (*GetPaginationFriendsApplyFromResp)(nil), // 27: OpenIMServer.friend.getPaginationFriendsApplyFromResp - (*GetFriendIDsReq)(nil), // 28: OpenIMServer.friend.getFriendIDsReq - (*GetFriendIDsResp)(nil), // 29: OpenIMServer.friend.getFriendIDsResp - (*sdkws.RequestPagination)(nil), // 30: OpenIMServer.sdkws.RequestPagination - (*sdkws.FriendInfo)(nil), // 31: OpenIMServer.sdkws.FriendInfo - (*sdkws.FriendRequest)(nil), // 32: OpenIMServer.sdkws.FriendRequest - (*sdkws.BlackInfo)(nil), // 33: OpenIMServer.sdkws.BlackInfo -} -var file_friend_friend_proto_depIdxs = []int32{ - 30, // 0: OpenIMServer.friend.getPaginationFriendsReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 31, // 1: OpenIMServer.friend.getPaginationFriendsResp.friendsInfo:type_name -> OpenIMServer.sdkws.FriendInfo - 30, // 2: OpenIMServer.friend.getPaginationFriendsApplyToReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 32, // 3: OpenIMServer.friend.getPaginationFriendsApplyToResp.FriendRequests:type_name -> OpenIMServer.sdkws.FriendRequest - 31, // 4: OpenIMServer.friend.getDesignatedFriendsResp.friendsInfo:type_name -> OpenIMServer.sdkws.FriendInfo - 30, // 5: OpenIMServer.friend.getPaginationBlacksReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 33, // 6: OpenIMServer.friend.getPaginationBlacksResp.blacks:type_name -> OpenIMServer.sdkws.BlackInfo - 30, // 7: OpenIMServer.friend.getPaginationFriendsApplyFromReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 32, // 8: OpenIMServer.friend.getPaginationFriendsApplyFromResp.friendRequests:type_name -> OpenIMServer.sdkws.FriendRequest - 2, // 9: OpenIMServer.friend.friend.applyToAddFriend:input_type -> OpenIMServer.friend.applyToAddFriendReq - 6, // 10: OpenIMServer.friend.friend.getPaginationFriendsApplyTo:input_type -> OpenIMServer.friend.getPaginationFriendsApplyToReq - 26, // 11: OpenIMServer.friend.friend.getPaginationFriendsApplyFrom:input_type -> OpenIMServer.friend.getPaginationFriendsApplyFromReq - 10, // 12: OpenIMServer.friend.friend.addBlack:input_type -> OpenIMServer.friend.addBlackReq - 12, // 13: OpenIMServer.friend.friend.removeBlack:input_type -> OpenIMServer.friend.removeBlackReq - 16, // 14: OpenIMServer.friend.friend.isFriend:input_type -> OpenIMServer.friend.isFriendReq - 18, // 15: OpenIMServer.friend.friend.isBlack:input_type -> OpenIMServer.friend.isBlackReq - 14, // 16: OpenIMServer.friend.friend.getPaginationBlacks:input_type -> OpenIMServer.friend.getPaginationBlacksReq - 20, // 17: OpenIMServer.friend.friend.deleteFriend:input_type -> OpenIMServer.friend.deleteFriendReq - 22, // 18: OpenIMServer.friend.friend.respondFriendApply:input_type -> OpenIMServer.friend.respondFriendApplyReq - 24, // 19: OpenIMServer.friend.friend.setFriendRemark:input_type -> OpenIMServer.friend.setFriendRemarkReq - 4, // 20: OpenIMServer.friend.friend.importFriends:input_type -> OpenIMServer.friend.importFriendReq - 8, // 21: OpenIMServer.friend.friend.getDesignatedFriends:input_type -> OpenIMServer.friend.getDesignatedFriendsReq - 0, // 22: OpenIMServer.friend.friend.getPaginationFriends:input_type -> OpenIMServer.friend.getPaginationFriendsReq - 28, // 23: OpenIMServer.friend.friend.getFriendIDs:input_type -> OpenIMServer.friend.getFriendIDsReq - 3, // 24: OpenIMServer.friend.friend.applyToAddFriend:output_type -> OpenIMServer.friend.applyToAddFriendResp - 7, // 25: OpenIMServer.friend.friend.getPaginationFriendsApplyTo:output_type -> OpenIMServer.friend.getPaginationFriendsApplyToResp - 27, // 26: OpenIMServer.friend.friend.getPaginationFriendsApplyFrom:output_type -> OpenIMServer.friend.getPaginationFriendsApplyFromResp - 11, // 27: OpenIMServer.friend.friend.addBlack:output_type -> OpenIMServer.friend.addBlackResp - 13, // 28: OpenIMServer.friend.friend.removeBlack:output_type -> OpenIMServer.friend.removeBlackResp - 17, // 29: OpenIMServer.friend.friend.isFriend:output_type -> OpenIMServer.friend.isFriendResp - 19, // 30: OpenIMServer.friend.friend.isBlack:output_type -> OpenIMServer.friend.isBlackResp - 15, // 31: OpenIMServer.friend.friend.getPaginationBlacks:output_type -> OpenIMServer.friend.getPaginationBlacksResp - 21, // 32: OpenIMServer.friend.friend.deleteFriend:output_type -> OpenIMServer.friend.deleteFriendResp - 23, // 33: OpenIMServer.friend.friend.respondFriendApply:output_type -> OpenIMServer.friend.respondFriendApplyResp - 25, // 34: OpenIMServer.friend.friend.setFriendRemark:output_type -> OpenIMServer.friend.setFriendRemarkResp - 5, // 35: OpenIMServer.friend.friend.importFriends:output_type -> OpenIMServer.friend.importFriendResp - 9, // 36: OpenIMServer.friend.friend.getDesignatedFriends:output_type -> OpenIMServer.friend.getDesignatedFriendsResp - 1, // 37: OpenIMServer.friend.friend.getPaginationFriends:output_type -> OpenIMServer.friend.getPaginationFriendsResp - 29, // 38: OpenIMServer.friend.friend.getFriendIDs:output_type -> OpenIMServer.friend.getFriendIDsResp - 24, // [24:39] is the sub-list for method output_type - 9, // [9:24] is the sub-list for method input_type - 9, // [9:9] is the sub-list for extension type_name - 9, // [9:9] is the sub-list for extension extendee - 0, // [0:9] is the sub-list for field type_name -} - -func init() { file_friend_friend_proto_init() } -func file_friend_friend_proto_init() { - if File_friend_friend_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_friend_friend_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyToAddFriendReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyToAddFriendResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportFriendReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportFriendResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsApplyToReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsApplyToResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDesignatedFriendsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDesignatedFriendsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddBlackReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddBlackResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RemoveBlackReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RemoveBlackResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationBlacksReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationBlacksResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsFriendReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsFriendResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsBlackReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsBlackResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteFriendReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteFriendResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RespondFriendApplyReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RespondFriendApplyResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetFriendRemarkReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetFriendRemarkResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsApplyFromReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationFriendsApplyFromResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetFriendIDsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_friend_friend_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetFriendIDsResp); 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_friend_friend_proto_rawDesc, - NumEnums: 0, - NumMessages: 30, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_friend_friend_proto_goTypes, - DependencyIndexes: file_friend_friend_proto_depIdxs, - MessageInfos: file_friend_friend_proto_msgTypes, - }.Build() - File_friend_friend_proto = out.File - file_friend_friend_proto_rawDesc = nil - file_friend_friend_proto_goTypes = nil - file_friend_friend_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// FriendClient is the client API for Friend service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type FriendClient interface { - // 申请加好友 - ApplyToAddFriend(ctx context.Context, in *ApplyToAddFriendReq, opts ...grpc.CallOption) (*ApplyToAddFriendResp, error) - // 获取收到的好友申请列表 - GetPaginationFriendsApplyTo(ctx context.Context, in *GetPaginationFriendsApplyToReq, opts ...grpc.CallOption) (*GetPaginationFriendsApplyToResp, error) - // 获取主动发出去的好友申请列表 - GetPaginationFriendsApplyFrom(ctx context.Context, in *GetPaginationFriendsApplyFromReq, opts ...grpc.CallOption) (*GetPaginationFriendsApplyFromResp, error) - // 添加黑名单 - AddBlack(ctx context.Context, in *AddBlackReq, opts ...grpc.CallOption) (*AddBlackResp, error) - // 移除黑名单 - RemoveBlack(ctx context.Context, in *RemoveBlackReq, opts ...grpc.CallOption) (*RemoveBlackResp, error) - // 判断是否好友关系 - IsFriend(ctx context.Context, in *IsFriendReq, opts ...grpc.CallOption) (*IsFriendResp, error) - // 判断是否在黑名单中 - IsBlack(ctx context.Context, in *IsBlackReq, opts ...grpc.CallOption) (*IsBlackResp, error) - // 获取黑名单列表 - GetPaginationBlacks(ctx context.Context, in *GetPaginationBlacksReq, opts ...grpc.CallOption) (*GetPaginationBlacksResp, error) - // 删除好友 - DeleteFriend(ctx context.Context, in *DeleteFriendReq, opts ...grpc.CallOption) (*DeleteFriendResp, error) - // 对好友申请响应(同意或拒绝) - RespondFriendApply(ctx context.Context, in *RespondFriendApplyReq, opts ...grpc.CallOption) (*RespondFriendApplyResp, error) - // 设置好友备注 - SetFriendRemark(ctx context.Context, in *SetFriendRemarkReq, opts ...grpc.CallOption) (*SetFriendRemarkResp, error) - // 导入好友关系 - ImportFriends(ctx context.Context, in *ImportFriendReq, opts ...grpc.CallOption) (*ImportFriendResp, error) - // 翻页获取好友列表 无结果不返回错误 - GetDesignatedFriends(ctx context.Context, in *GetDesignatedFriendsReq, opts ...grpc.CallOption) (*GetDesignatedFriendsResp, error) - // 获取指定好友信息 有id不存在也返回错误 - GetPaginationFriends(ctx context.Context, in *GetPaginationFriendsReq, opts ...grpc.CallOption) (*GetPaginationFriendsResp, error) - // 获取好友ID列表 - GetFriendIDs(ctx context.Context, in *GetFriendIDsReq, opts ...grpc.CallOption) (*GetFriendIDsResp, error) -} - -type friendClient struct { - cc grpc.ClientConnInterface -} - -func NewFriendClient(cc grpc.ClientConnInterface) FriendClient { - return &friendClient{cc} -} - -func (c *friendClient) ApplyToAddFriend(ctx context.Context, in *ApplyToAddFriendReq, opts ...grpc.CallOption) (*ApplyToAddFriendResp, error) { - out := new(ApplyToAddFriendResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/applyToAddFriend", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetPaginationFriendsApplyTo(ctx context.Context, in *GetPaginationFriendsApplyToReq, opts ...grpc.CallOption) (*GetPaginationFriendsApplyToResp, error) { - out := new(GetPaginationFriendsApplyToResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getPaginationFriendsApplyTo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetPaginationFriendsApplyFrom(ctx context.Context, in *GetPaginationFriendsApplyFromReq, opts ...grpc.CallOption) (*GetPaginationFriendsApplyFromResp, error) { - out := new(GetPaginationFriendsApplyFromResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getPaginationFriendsApplyFrom", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) AddBlack(ctx context.Context, in *AddBlackReq, opts ...grpc.CallOption) (*AddBlackResp, error) { - out := new(AddBlackResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/addBlack", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) RemoveBlack(ctx context.Context, in *RemoveBlackReq, opts ...grpc.CallOption) (*RemoveBlackResp, error) { - out := new(RemoveBlackResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/removeBlack", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) IsFriend(ctx context.Context, in *IsFriendReq, opts ...grpc.CallOption) (*IsFriendResp, error) { - out := new(IsFriendResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/isFriend", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) IsBlack(ctx context.Context, in *IsBlackReq, opts ...grpc.CallOption) (*IsBlackResp, error) { - out := new(IsBlackResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/isBlack", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetPaginationBlacks(ctx context.Context, in *GetPaginationBlacksReq, opts ...grpc.CallOption) (*GetPaginationBlacksResp, error) { - out := new(GetPaginationBlacksResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getPaginationBlacks", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) DeleteFriend(ctx context.Context, in *DeleteFriendReq, opts ...grpc.CallOption) (*DeleteFriendResp, error) { - out := new(DeleteFriendResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/deleteFriend", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) RespondFriendApply(ctx context.Context, in *RespondFriendApplyReq, opts ...grpc.CallOption) (*RespondFriendApplyResp, error) { - out := new(RespondFriendApplyResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/respondFriendApply", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) SetFriendRemark(ctx context.Context, in *SetFriendRemarkReq, opts ...grpc.CallOption) (*SetFriendRemarkResp, error) { - out := new(SetFriendRemarkResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/setFriendRemark", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) ImportFriends(ctx context.Context, in *ImportFriendReq, opts ...grpc.CallOption) (*ImportFriendResp, error) { - out := new(ImportFriendResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/importFriends", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetDesignatedFriends(ctx context.Context, in *GetDesignatedFriendsReq, opts ...grpc.CallOption) (*GetDesignatedFriendsResp, error) { - out := new(GetDesignatedFriendsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getDesignatedFriends", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetPaginationFriends(ctx context.Context, in *GetPaginationFriendsReq, opts ...grpc.CallOption) (*GetPaginationFriendsResp, error) { - out := new(GetPaginationFriendsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getPaginationFriends", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *friendClient) GetFriendIDs(ctx context.Context, in *GetFriendIDsReq, opts ...grpc.CallOption) (*GetFriendIDsResp, error) { - out := new(GetFriendIDsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.friend.friend/getFriendIDs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// FriendServer is the server API for Friend service. -type FriendServer interface { - // 申请加好友 - ApplyToAddFriend(context.Context, *ApplyToAddFriendReq) (*ApplyToAddFriendResp, error) - // 获取收到的好友申请列表 - GetPaginationFriendsApplyTo(context.Context, *GetPaginationFriendsApplyToReq) (*GetPaginationFriendsApplyToResp, error) - // 获取主动发出去的好友申请列表 - GetPaginationFriendsApplyFrom(context.Context, *GetPaginationFriendsApplyFromReq) (*GetPaginationFriendsApplyFromResp, error) - // 添加黑名单 - AddBlack(context.Context, *AddBlackReq) (*AddBlackResp, error) - // 移除黑名单 - RemoveBlack(context.Context, *RemoveBlackReq) (*RemoveBlackResp, error) - // 判断是否好友关系 - IsFriend(context.Context, *IsFriendReq) (*IsFriendResp, error) - // 判断是否在黑名单中 - IsBlack(context.Context, *IsBlackReq) (*IsBlackResp, error) - // 获取黑名单列表 - GetPaginationBlacks(context.Context, *GetPaginationBlacksReq) (*GetPaginationBlacksResp, error) - // 删除好友 - DeleteFriend(context.Context, *DeleteFriendReq) (*DeleteFriendResp, error) - // 对好友申请响应(同意或拒绝) - RespondFriendApply(context.Context, *RespondFriendApplyReq) (*RespondFriendApplyResp, error) - // 设置好友备注 - SetFriendRemark(context.Context, *SetFriendRemarkReq) (*SetFriendRemarkResp, error) - // 导入好友关系 - ImportFriends(context.Context, *ImportFriendReq) (*ImportFriendResp, error) - // 翻页获取好友列表 无结果不返回错误 - GetDesignatedFriends(context.Context, *GetDesignatedFriendsReq) (*GetDesignatedFriendsResp, error) - // 获取指定好友信息 有id不存在也返回错误 - GetPaginationFriends(context.Context, *GetPaginationFriendsReq) (*GetPaginationFriendsResp, error) - // 获取好友ID列表 - GetFriendIDs(context.Context, *GetFriendIDsReq) (*GetFriendIDsResp, error) -} - -// UnimplementedFriendServer can be embedded to have forward compatible implementations. -type UnimplementedFriendServer struct { -} - -func (*UnimplementedFriendServer) ApplyToAddFriend(context.Context, *ApplyToAddFriendReq) (*ApplyToAddFriendResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ApplyToAddFriend not implemented") -} -func (*UnimplementedFriendServer) GetPaginationFriendsApplyTo(context.Context, *GetPaginationFriendsApplyToReq) (*GetPaginationFriendsApplyToResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPaginationFriendsApplyTo not implemented") -} -func (*UnimplementedFriendServer) GetPaginationFriendsApplyFrom(context.Context, *GetPaginationFriendsApplyFromReq) (*GetPaginationFriendsApplyFromResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPaginationFriendsApplyFrom not implemented") -} -func (*UnimplementedFriendServer) AddBlack(context.Context, *AddBlackReq) (*AddBlackResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddBlack not implemented") -} -func (*UnimplementedFriendServer) RemoveBlack(context.Context, *RemoveBlackReq) (*RemoveBlackResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method RemoveBlack not implemented") -} -func (*UnimplementedFriendServer) IsFriend(context.Context, *IsFriendReq) (*IsFriendResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method IsFriend not implemented") -} -func (*UnimplementedFriendServer) IsBlack(context.Context, *IsBlackReq) (*IsBlackResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method IsBlack not implemented") -} -func (*UnimplementedFriendServer) GetPaginationBlacks(context.Context, *GetPaginationBlacksReq) (*GetPaginationBlacksResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPaginationBlacks not implemented") -} -func (*UnimplementedFriendServer) DeleteFriend(context.Context, *DeleteFriendReq) (*DeleteFriendResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteFriend not implemented") -} -func (*UnimplementedFriendServer) RespondFriendApply(context.Context, *RespondFriendApplyReq) (*RespondFriendApplyResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method RespondFriendApply not implemented") -} -func (*UnimplementedFriendServer) SetFriendRemark(context.Context, *SetFriendRemarkReq) (*SetFriendRemarkResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetFriendRemark not implemented") -} -func (*UnimplementedFriendServer) ImportFriends(context.Context, *ImportFriendReq) (*ImportFriendResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ImportFriends not implemented") -} -func (*UnimplementedFriendServer) GetDesignatedFriends(context.Context, *GetDesignatedFriendsReq) (*GetDesignatedFriendsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetDesignatedFriends not implemented") -} -func (*UnimplementedFriendServer) GetPaginationFriends(context.Context, *GetPaginationFriendsReq) (*GetPaginationFriendsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPaginationFriends not implemented") -} -func (*UnimplementedFriendServer) GetFriendIDs(context.Context, *GetFriendIDsReq) (*GetFriendIDsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetFriendIDs not implemented") -} - -func RegisterFriendServer(s *grpc.Server, srv FriendServer) { - s.RegisterService(&_Friend_serviceDesc, srv) -} - -func _Friend_ApplyToAddFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ApplyToAddFriendReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).ApplyToAddFriend(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/ApplyToAddFriend", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).ApplyToAddFriend(ctx, req.(*ApplyToAddFriendReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetPaginationFriendsApplyTo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetPaginationFriendsApplyToReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetPaginationFriendsApplyTo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetPaginationFriendsApplyTo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetPaginationFriendsApplyTo(ctx, req.(*GetPaginationFriendsApplyToReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetPaginationFriendsApplyFrom_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetPaginationFriendsApplyFromReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetPaginationFriendsApplyFrom(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetPaginationFriendsApplyFrom", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetPaginationFriendsApplyFrom(ctx, req.(*GetPaginationFriendsApplyFromReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_AddBlack_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddBlackReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).AddBlack(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/AddBlack", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).AddBlack(ctx, req.(*AddBlackReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_RemoveBlack_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RemoveBlackReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).RemoveBlack(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/RemoveBlack", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).RemoveBlack(ctx, req.(*RemoveBlackReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_IsFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(IsFriendReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).IsFriend(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/IsFriend", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).IsFriend(ctx, req.(*IsFriendReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_IsBlack_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(IsBlackReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).IsBlack(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/IsBlack", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).IsBlack(ctx, req.(*IsBlackReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetPaginationBlacks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetPaginationBlacksReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetPaginationBlacks(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetPaginationBlacks", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetPaginationBlacks(ctx, req.(*GetPaginationBlacksReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_DeleteFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteFriendReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).DeleteFriend(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/DeleteFriend", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).DeleteFriend(ctx, req.(*DeleteFriendReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_RespondFriendApply_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RespondFriendApplyReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).RespondFriendApply(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/RespondFriendApply", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).RespondFriendApply(ctx, req.(*RespondFriendApplyReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_SetFriendRemark_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetFriendRemarkReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).SetFriendRemark(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/SetFriendRemark", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).SetFriendRemark(ctx, req.(*SetFriendRemarkReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_ImportFriends_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ImportFriendReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).ImportFriends(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/ImportFriends", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).ImportFriends(ctx, req.(*ImportFriendReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetDesignatedFriends_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetDesignatedFriendsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetDesignatedFriends(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetDesignatedFriends", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetDesignatedFriends(ctx, req.(*GetDesignatedFriendsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetPaginationFriends_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetPaginationFriendsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetPaginationFriends(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetPaginationFriends", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetPaginationFriends(ctx, req.(*GetPaginationFriendsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Friend_GetFriendIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetFriendIDsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(FriendServer).GetFriendIDs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.friend.friend/GetFriendIDs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(FriendServer).GetFriendIDs(ctx, req.(*GetFriendIDsReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Friend_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.friend.friend", - HandlerType: (*FriendServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "applyToAddFriend", - Handler: _Friend_ApplyToAddFriend_Handler, - }, - { - MethodName: "getPaginationFriendsApplyTo", - Handler: _Friend_GetPaginationFriendsApplyTo_Handler, - }, - { - MethodName: "getPaginationFriendsApplyFrom", - Handler: _Friend_GetPaginationFriendsApplyFrom_Handler, - }, - { - MethodName: "addBlack", - Handler: _Friend_AddBlack_Handler, - }, - { - MethodName: "removeBlack", - Handler: _Friend_RemoveBlack_Handler, - }, - { - MethodName: "isFriend", - Handler: _Friend_IsFriend_Handler, - }, - { - MethodName: "isBlack", - Handler: _Friend_IsBlack_Handler, - }, - { - MethodName: "getPaginationBlacks", - Handler: _Friend_GetPaginationBlacks_Handler, - }, - { - MethodName: "deleteFriend", - Handler: _Friend_DeleteFriend_Handler, - }, - { - MethodName: "respondFriendApply", - Handler: _Friend_RespondFriendApply_Handler, - }, - { - MethodName: "setFriendRemark", - Handler: _Friend_SetFriendRemark_Handler, - }, - { - MethodName: "importFriends", - Handler: _Friend_ImportFriends_Handler, - }, - { - MethodName: "getDesignatedFriends", - Handler: _Friend_GetDesignatedFriends_Handler, - }, - { - MethodName: "getPaginationFriends", - Handler: _Friend_GetPaginationFriends_Handler, - }, - { - MethodName: "getFriendIDs", - Handler: _Friend_GetFriendIDs_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "friend/friend.proto", -} diff --git a/pkg/proto/friend/friend.proto b/pkg/proto/friend/friend.proto deleted file mode 100644 index 98a9e81e9..000000000 --- a/pkg/proto/friend/friend.proto +++ /dev/null @@ -1,187 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.friend; -import "sdkws/sdkws.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend"; - -message getPaginationFriendsReq{ - sdkws.RequestPagination pagination = 1; - string userID = 2; -} -message getPaginationFriendsResp{ - repeated sdkws.FriendInfo friendsInfo = 1; - int32 total = 2; -} - - -message applyToAddFriendReq{ - string fromUserID = 1; - string toUserID = 2; - string reqMsg = 3; - string ex = 4; -} -message applyToAddFriendResp{ -} - - -message importFriendReq{ - string ownerUserID = 1; - repeated string friendUserIDs = 2; -} - -message importFriendResp{ -} - - -message getPaginationFriendsApplyToReq{ - string userID = 1; - sdkws.RequestPagination pagination = 2; - -} -message getPaginationFriendsApplyToResp{ - repeated sdkws.FriendRequest FriendRequests = 1; - int32 total = 2; -} - - -message getDesignatedFriendsReq{ - string ownerUserID = 1; - repeated string friendUserIDs = 2; -} -message getDesignatedFriendsResp{ - repeated sdkws.FriendInfo friendsInfo = 1; -} - - -message addBlackReq{ - string ownerUserID = 1; - string blackUserID = 2; -} -message addBlackResp{ -} - - -message removeBlackReq{ - string ownerUserID = 1; - string blackUserID = 2; -} -message removeBlackResp{ -} - -message getPaginationBlacksReq{ - string userID = 1; - sdkws.RequestPagination pagination = 2; -} -message getPaginationBlacksResp{ - repeated sdkws.BlackInfo blacks= 1; - int32 total = 2; -} - - -message isFriendReq{ - string userID1 = 1; - string userID2 = 2; -} -message isFriendResp{ - bool inUser1Friends = 1; //如果userID2在userID1的好友列表中 true - bool inUser2Friends = 2; //如果userID1在userID2的好友列表中 true -} - - -message isBlackReq{ - string userID1 = 1; - string userID2 = 2; -} -message isBlackResp{ - bool inUser1Blacks = 1; //如果userID2在userID1的黑名单列表中 true - bool inUser2Blacks = 2; //如果userID1在userID2的黑名单列表中 true -} - - -message deleteFriendReq{ - string ownerUserID = 1; - string friendUserID = 2; -} -message deleteFriendResp{ -} - -//process -message respondFriendApplyReq{ - string fromUserID = 1; //主动发起的申请者 - string toUserID = 2; //被动添加者 - int32 handleResult = 3; - string handleMsg = 4; -} -message respondFriendApplyResp{ -} - -message setFriendRemarkReq{ - string ownerUserID = 1; - string friendUserID = 2; - string remark = 3; -} -message setFriendRemarkResp{ -} - -message getPaginationFriendsApplyFromReq{ - string userID = 1; - sdkws.RequestPagination pagination = 2; -} -message getPaginationFriendsApplyFromResp{ - repeated sdkws.FriendRequest friendRequests = 1; - int32 total = 2; -} - -message getFriendIDsReq { - string userID = 1; -} - -message getFriendIDsResp { - repeated string friendIDs = 1; -} - -service friend{ - //申请加好友 - rpc applyToAddFriend(applyToAddFriendReq) returns(applyToAddFriendResp); - //获取收到的好友申请列表 - rpc getPaginationFriendsApplyTo(getPaginationFriendsApplyToReq) returns(getPaginationFriendsApplyToResp); - //获取主动发出去的好友申请列表 - rpc getPaginationFriendsApplyFrom(getPaginationFriendsApplyFromReq) returns(getPaginationFriendsApplyFromResp); - //添加黑名单 - rpc addBlack(addBlackReq) returns(addBlackResp); - //移除黑名单 - rpc removeBlack(removeBlackReq) returns(removeBlackResp); - //判断是否好友关系 - rpc isFriend(isFriendReq) returns(isFriendResp); - //判断是否在黑名单中 - rpc isBlack(isBlackReq) returns(isBlackResp); - //获取黑名单列表 - rpc getPaginationBlacks(getPaginationBlacksReq) returns(getPaginationBlacksResp); - //删除好友 - rpc deleteFriend(deleteFriendReq) returns(deleteFriendResp); - //对好友申请响应(同意或拒绝) - rpc respondFriendApply(respondFriendApplyReq) returns(respondFriendApplyResp); - //设置好友备注 - rpc setFriendRemark(setFriendRemarkReq) returns(setFriendRemarkResp); - //导入好友关系 - rpc importFriends(importFriendReq) returns(importFriendResp); - //翻页获取好友列表 无结果不返回错误 - rpc getDesignatedFriends(getDesignatedFriendsReq) returns(getDesignatedFriendsResp); - //获取指定好友信息 有id不存在也返回错误 - rpc getPaginationFriends(getPaginationFriendsReq) returns (getPaginationFriendsResp); - // 获取好友ID列表 - rpc getFriendIDs(getFriendIDsReq) returns (getFriendIDsResp); -} \ No newline at end of file diff --git a/pkg/proto/gen.cmd b/pkg/proto/gen.cmd deleted file mode 100644 index 930a636ec..000000000 --- a/pkg/proto/gen.cmd +++ /dev/null @@ -1,13 +0,0 @@ -protoc --go_out=plugins=grpc:./auth --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth auth/auth.proto -protoc --go_out=plugins=grpc:./conversation --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation conversation/conversation.proto -protoc --go_out=plugins=grpc:./errinfo --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo errinfo/errinfo.proto -protoc --go_out=plugins=grpc:./friend --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend friend/friend.proto -protoc --go_out=plugins=grpc:./group --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group group/group.proto -protoc --go_out=plugins=grpc:./msg --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg msg/msg.proto -protoc --go_out=plugins=grpc:./msggateway --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway msggateway/msggateway.proto -protoc --go_out=plugins=grpc:./push --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push push/push.proto -protoc --go_out=plugins=grpc:./sdkws --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws sdkws/sdkws.proto -protoc --go_out=plugins=grpc:./third --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third third/third.proto -protoc --go_out=plugins=grpc:./user --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user user/user.proto -protoc --go_out=plugins=grpc:./wrapperspb --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb wrapperspb/wrapperspb.proto -protoc --go_out=plugins=grpc:./statistics --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/statistics statistics/statistics.proto \ No newline at end of file diff --git a/pkg/proto/gen.sh b/pkg/proto/gen.sh deleted file mode 100644 index 3c06bbfa7..000000000 --- a/pkg/proto/gen.sh +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright © 2023 OpenIM. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -protoc --go_out=plugins=grpc:./auth --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth auth/auth.proto -protoc --go_out=plugins=grpc:./conversation --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation conversation/conversation.proto -protoc --go_out=plugins=grpc:./errinfo --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo errinfo/errinfo.proto -protoc --go_out=plugins=grpc:./friend --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend friend/friend.proto -protoc --go_out=plugins=grpc:./group --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group group/group.proto -protoc --go_out=plugins=grpc:./msg --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg msg/msg.proto -protoc --go_out=plugins=grpc:./msggateway --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway msggateway/msggateway.proto -protoc --go_out=plugins=grpc:./push --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push push/push.proto -protoc --go_out=plugins=grpc:./sdkws --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws sdkws/sdkws.proto -protoc --go_out=plugins=grpc:./third --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third third/third.proto -protoc --go_out=plugins=grpc:./user --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user user/user.proto -protoc --go_out=plugins=grpc:./wrapperspb --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb wrapperspb/wrapperspb.proto -protoc --go_out=plugins=grpc:./statistics --go_opt=module=github.com/OpenIMSDK/Open-IM-Server/pkg/proto/statistics statistics/statistics.proto \ No newline at end of file diff --git a/pkg/proto/group/group.go b/pkg/proto/group/group.go deleted file mode 100644 index 2cebc0df0..000000000 --- a/pkg/proto/group/group.go +++ /dev/null @@ -1,352 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package group - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *CreateGroupReq) Check() error { - if x.MemberUserIDs == nil { - return errs.ErrArgs.Wrap("memberUserIDS is empty") - } - if x.GroupInfo == nil { - return errs.ErrArgs.Wrap("groupInfo is empty") - } - if x.GroupInfo.GroupType > 2 || x.GroupInfo.GroupType < 0 { - return errs.ErrArgs.Wrap("GroupType is invalid") - } - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("ownerUserID") - } - return nil -} - -func (x *GetGroupsInfoReq) Check() error { - if x.GroupIDs == nil { - return errs.ErrArgs.Wrap("GroupIDs") - } - return nil -} - -func (x *SetGroupInfoReq) Check() error { - if x.GroupInfoForSet == nil { - return errs.ErrArgs.Wrap("GroupInfoForSets is empty") - } - if x.GroupInfoForSet.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - return nil -} - -func (x *GetGroupApplicationListReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - if x.FromUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - return nil -} - -func (x *GetUserReqApplicationListReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *TransferGroupOwnerReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.OldOwnerUserID == "" { - return errs.ErrArgs.Wrap("oldOwnerUserID is empty") - } - if x.NewOwnerUserID == "" { - return errs.ErrArgs.Wrap("newOwnerUserID is empty") - } - return nil -} - -func (x *JoinGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.JoinSource < 2 || x.JoinSource > 4 { - return errs.ErrArgs.Wrap("joinSource is invalid") - } - if x.JoinSource == 2 { - if x.InviterUserID == "" { - return errs.ErrArgs.Wrap("inviterUserID is empty") - } - } - return nil -} - -func (x *GroupApplicationResponseReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.FromUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - if x.HandleResult > 1 || x.HandleResult < -1 { - return errs.ErrArgs.Wrap("handleResult is invalid") - } - return nil -} - -func (x *QuitGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *GetGroupMemberListReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - if x.Filter < 0 || x.Filter > 5 { - return errs.ErrArgs.Wrap("filter is invalid") - } - return nil -} - -func (x *GetGroupMembersInfoReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.UserIDs == nil { - return errs.ErrArgs.Wrap("userIDs is empty") - } - return nil -} - -func (x *KickGroupMemberReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.KickedUserIDs == nil { - return errs.ErrArgs.Wrap("kickUserIDs is empty") - } - return nil -} - -func (x *GetJoinedGroupListReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - if x.FromUserID == "" { - return errs.ErrArgs.Wrap("fromUserID is empty") - } - return nil -} - -func (x *InviteUserToGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.InvitedUserIDs == nil { - return errs.ErrArgs.Wrap("invitedUserIDs is empty") - } - return nil -} - -func (x *GetGroupAllMemberReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *GetGroupsReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *GetGroupMemberReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *GetGroupMembersCMSReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *DismissGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *MuteGroupMemberReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.MutedSeconds <= 0 { - return errs.ErrArgs.Wrap("mutedSeconds is empty") - } - return nil -} - -func (x *CancelMuteGroupMemberReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *MuteGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *CancelMuteGroupReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("groupID is empty") - } - return nil -} - -func (x *GetJoinedSuperGroupListReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *GetSuperGroupsInfoReq) Check() error { - if x.GroupIDs == nil { - return errs.ErrArgs.Wrap("GroupIDs is empty") - } - return nil -} - -func (x *SetGroupMemberInfo) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *SetGroupMemberInfoReq) Check() error { - if x.Members == nil { - return errs.ErrArgs.Wrap("Members is empty") - } - return nil -} - -func (x *GetGroupAbstractInfoReq) Check() error { - if x.GroupIDs == nil { - return errs.ErrArgs.Wrap("GroupID is empty") - } - return nil -} - -func (x *GetUserInGroupMembersReq) Check() error { - if x.GroupIDs == nil { - return errs.ErrArgs.Wrap("GroupID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *GetGroupMemberUserIDsReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - return nil -} - -func (x *GetGroupMemberRoleLevelReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - if x.RoleLevels == nil { - return errs.ErrArgs.Wrap("rolesLevel is empty") - } - return nil -} - -func (x *GetGroupInfoCacheReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - return nil -} - -func (x *GetGroupMemberCacheReq) Check() error { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - if x.GroupMemberID == "" { - return errs.ErrArgs.Wrap("GroupMemberID is empty") - } - return nil -} diff --git a/pkg/proto/group/group.pb.go b/pkg/proto/group/group.pb.go deleted file mode 100644 index f4230c794..000000000 --- a/pkg/proto/group/group.pb.go +++ /dev/null @@ -1,6376 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: group/group.proto - -package group - -import ( - context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - 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) -) - -type CreateGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MemberUserIDs []string `protobuf:"bytes,1,rep,name=memberUserIDs,proto3" json:"memberUserIDs"` - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - AdminUserIDs []string `protobuf:"bytes,3,rep,name=adminUserIDs,proto3" json:"adminUserIDs"` - OwnerUserID string `protobuf:"bytes,4,opt,name=ownerUserID,proto3" json:"ownerUserID"` //owner -} - -func (x *CreateGroupReq) Reset() { - *x = CreateGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateGroupReq) ProtoMessage() {} - -func (x *CreateGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CreateGroupReq.ProtoReflect.Descriptor instead. -func (*CreateGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{0} -} - -func (x *CreateGroupReq) GetMemberUserIDs() []string { - if x != nil { - return x.MemberUserIDs - } - return nil -} - -func (x *CreateGroupReq) GetGroupInfo() *sdkws.GroupInfo { - if x != nil { - return x.GroupInfo - } - return nil -} - -func (x *CreateGroupReq) GetAdminUserIDs() []string { - if x != nil { - return x.AdminUserIDs - } - return nil -} - -func (x *CreateGroupReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -type CreateGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` -} - -func (x *CreateGroupResp) Reset() { - *x = CreateGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateGroupResp) ProtoMessage() {} - -func (x *CreateGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CreateGroupResp.ProtoReflect.Descriptor instead. -func (*CreateGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{1} -} - -func (x *CreateGroupResp) GetGroupInfo() *sdkws.GroupInfo { - if x != nil { - return x.GroupInfo - } - return nil -} - -type GetGroupsInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupIDs []string `protobuf:"bytes,1,rep,name=groupIDs,proto3" json:"groupIDs"` -} - -func (x *GetGroupsInfoReq) Reset() { - *x = GetGroupsInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupsInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupsInfoReq) ProtoMessage() {} - -func (x *GetGroupsInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupsInfoReq.ProtoReflect.Descriptor instead. -func (*GetGroupsInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{2} -} - -func (x *GetGroupsInfoReq) GetGroupIDs() []string { - if x != nil { - return x.GroupIDs - } - return nil -} - -type GetGroupsInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfos []*sdkws.GroupInfo `protobuf:"bytes,1,rep,name=groupInfos,proto3" json:"groupInfos"` -} - -func (x *GetGroupsInfoResp) Reset() { - *x = GetGroupsInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupsInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupsInfoResp) ProtoMessage() {} - -func (x *GetGroupsInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupsInfoResp.ProtoReflect.Descriptor instead. -func (*GetGroupsInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{3} -} - -func (x *GetGroupsInfoResp) GetGroupInfos() []*sdkws.GroupInfo { - if x != nil { - return x.GroupInfos - } - return nil -} - -type SetGroupInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfoForSet *sdkws.GroupInfoForSet `protobuf:"bytes,1,opt,name=groupInfoForSet,proto3" json:"groupInfoForSet"` -} - -func (x *SetGroupInfoReq) Reset() { - *x = SetGroupInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGroupInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGroupInfoReq) ProtoMessage() {} - -func (x *SetGroupInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use SetGroupInfoReq.ProtoReflect.Descriptor instead. -func (*SetGroupInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{4} -} - -func (x *SetGroupInfoReq) GetGroupInfoForSet() *sdkws.GroupInfoForSet { - if x != nil { - return x.GroupInfoForSet - } - return nil -} - -type SetGroupInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetGroupInfoResp) Reset() { - *x = SetGroupInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGroupInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGroupInfoResp) ProtoMessage() {} - -func (x *SetGroupInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use SetGroupInfoResp.ProtoReflect.Descriptor instead. -func (*SetGroupInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{5} -} - -type GetGroupApplicationListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` //owner or admin -} - -func (x *GetGroupApplicationListReq) Reset() { - *x = GetGroupApplicationListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupApplicationListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupApplicationListReq) ProtoMessage() {} - -func (x *GetGroupApplicationListReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupApplicationListReq.ProtoReflect.Descriptor instead. -func (*GetGroupApplicationListReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{6} -} - -func (x *GetGroupApplicationListReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetGroupApplicationListReq) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -type GetGroupApplicationListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` -} - -func (x *GetGroupApplicationListResp) Reset() { - *x = GetGroupApplicationListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupApplicationListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupApplicationListResp) ProtoMessage() {} - -func (x *GetGroupApplicationListResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupApplicationListResp.ProtoReflect.Descriptor instead. -func (*GetGroupApplicationListResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{7} -} - -func (x *GetGroupApplicationListResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetGroupApplicationListResp) GetGroupRequests() []*sdkws.GroupRequest { - if x != nil { - return x.GroupRequests - } - return nil -} - -type GetUserReqApplicationListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetUserReqApplicationListReq) Reset() { - *x = GetUserReqApplicationListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserReqApplicationListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserReqApplicationListReq) ProtoMessage() {} - -func (x *GetUserReqApplicationListReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetUserReqApplicationListReq.ProtoReflect.Descriptor instead. -func (*GetUserReqApplicationListReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{8} -} - -func (x *GetUserReqApplicationListReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetUserReqApplicationListReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetUserReqApplicationListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - GroupRequests []*sdkws.GroupRequest `protobuf:"bytes,2,rep,name=groupRequests,proto3" json:"groupRequests"` -} - -func (x *GetUserReqApplicationListResp) Reset() { - *x = GetUserReqApplicationListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserReqApplicationListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserReqApplicationListResp) ProtoMessage() {} - -func (x *GetUserReqApplicationListResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetUserReqApplicationListResp.ProtoReflect.Descriptor instead. -func (*GetUserReqApplicationListResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{9} -} - -func (x *GetUserReqApplicationListResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetUserReqApplicationListResp) GetGroupRequests() []*sdkws.GroupRequest { - if x != nil { - return x.GroupRequests - } - return nil -} - -type TransferGroupOwnerReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - OldOwnerUserID string `protobuf:"bytes,2,opt,name=oldOwnerUserID,proto3" json:"oldOwnerUserID"` - NewOwnerUserID string `protobuf:"bytes,3,opt,name=newOwnerUserID,proto3" json:"newOwnerUserID"` -} - -func (x *TransferGroupOwnerReq) Reset() { - *x = TransferGroupOwnerReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TransferGroupOwnerReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TransferGroupOwnerReq) ProtoMessage() {} - -func (x *TransferGroupOwnerReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use TransferGroupOwnerReq.ProtoReflect.Descriptor instead. -func (*TransferGroupOwnerReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{10} -} - -func (x *TransferGroupOwnerReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *TransferGroupOwnerReq) GetOldOwnerUserID() string { - if x != nil { - return x.OldOwnerUserID - } - return "" -} - -func (x *TransferGroupOwnerReq) GetNewOwnerUserID() string { - if x != nil { - return x.NewOwnerUserID - } - return "" -} - -type TransferGroupOwnerResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *TransferGroupOwnerResp) Reset() { - *x = TransferGroupOwnerResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TransferGroupOwnerResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TransferGroupOwnerResp) ProtoMessage() {} - -func (x *TransferGroupOwnerResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use TransferGroupOwnerResp.ProtoReflect.Descriptor instead. -func (*TransferGroupOwnerResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{11} -} - -type JoinGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - ReqMessage string `protobuf:"bytes,2,opt,name=reqMessage,proto3" json:"reqMessage"` - JoinSource int32 `protobuf:"varint,3,opt,name=joinSource,proto3" json:"joinSource"` - InviterUserID string `protobuf:"bytes,4,opt,name=inviterUserID,proto3" json:"inviterUserID"` -} - -func (x *JoinGroupReq) Reset() { - *x = JoinGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *JoinGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*JoinGroupReq) ProtoMessage() {} - -func (x *JoinGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[12] - 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 JoinGroupReq.ProtoReflect.Descriptor instead. -func (*JoinGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{12} -} - -func (x *JoinGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *JoinGroupReq) GetReqMessage() string { - if x != nil { - return x.ReqMessage - } - return "" -} - -func (x *JoinGroupReq) GetJoinSource() int32 { - if x != nil { - return x.JoinSource - } - return 0 -} - -func (x *JoinGroupReq) GetInviterUserID() string { - if x != nil { - return x.InviterUserID - } - return "" -} - -type JoinGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *JoinGroupResp) Reset() { - *x = JoinGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *JoinGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*JoinGroupResp) ProtoMessage() {} - -func (x *JoinGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use JoinGroupResp.ProtoReflect.Descriptor instead. -func (*JoinGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{13} -} - -type GroupApplicationResponseReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` // - HandledMsg string `protobuf:"bytes,3,opt,name=handledMsg,proto3" json:"handledMsg"` - HandleResult int32 `protobuf:"varint,4,opt,name=handleResult,proto3" json:"handleResult"` -} - -func (x *GroupApplicationResponseReq) Reset() { - *x = GroupApplicationResponseReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationResponseReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationResponseReq) ProtoMessage() {} - -func (x *GroupApplicationResponseReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[14] - 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 GroupApplicationResponseReq.ProtoReflect.Descriptor instead. -func (*GroupApplicationResponseReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{14} -} - -func (x *GroupApplicationResponseReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GroupApplicationResponseReq) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -func (x *GroupApplicationResponseReq) GetHandledMsg() string { - if x != nil { - return x.HandledMsg - } - return "" -} - -func (x *GroupApplicationResponseReq) GetHandleResult() int32 { - if x != nil { - return x.HandleResult - } - return 0 -} - -type GroupApplicationResponseResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *GroupApplicationResponseResp) Reset() { - *x = GroupApplicationResponseResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationResponseResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationResponseResp) ProtoMessage() {} - -func (x *GroupApplicationResponseResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GroupApplicationResponseResp.ProtoReflect.Descriptor instead. -func (*GroupApplicationResponseResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{15} -} - -type QuitGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *QuitGroupReq) Reset() { - *x = QuitGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QuitGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QuitGroupReq) ProtoMessage() {} - -func (x *QuitGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use QuitGroupReq.ProtoReflect.Descriptor instead. -func (*QuitGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{16} -} - -func (x *QuitGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type QuitGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *QuitGroupResp) Reset() { - *x = QuitGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QuitGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QuitGroupResp) ProtoMessage() {} - -func (x *QuitGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use QuitGroupResp.ProtoReflect.Descriptor instead. -func (*QuitGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{17} -} - -type GetGroupMemberListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - Filter int32 `protobuf:"varint,3,opt,name=filter,proto3" json:"filter"` -} - -func (x *GetGroupMemberListReq) Reset() { - *x = GetGroupMemberListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberListReq) ProtoMessage() {} - -func (x *GetGroupMemberListReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMemberListReq.ProtoReflect.Descriptor instead. -func (*GetGroupMemberListReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{18} -} - -func (x *GetGroupMemberListReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetGroupMemberListReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GetGroupMemberListReq) GetFilter() int32 { - if x != nil { - return x.Filter - } - return 0 -} - -type GetGroupMemberListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` -} - -func (x *GetGroupMemberListResp) Reset() { - *x = GetGroupMemberListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberListResp) ProtoMessage() {} - -func (x *GetGroupMemberListResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMemberListResp.ProtoReflect.Descriptor instead. -func (*GetGroupMemberListResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{19} -} - -func (x *GetGroupMemberListResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetGroupMemberListResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type GetGroupMembersInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserIDs []string `protobuf:"bytes,2,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetGroupMembersInfoReq) Reset() { - *x = GetGroupMembersInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMembersInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMembersInfoReq) ProtoMessage() {} - -func (x *GetGroupMembersInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMembersInfoReq.ProtoReflect.Descriptor instead. -func (*GetGroupMembersInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{20} -} - -func (x *GetGroupMembersInfoReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GetGroupMembersInfoReq) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type GetGroupMembersInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,1,rep,name=members,proto3" json:"members"` -} - -func (x *GetGroupMembersInfoResp) Reset() { - *x = GetGroupMembersInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMembersInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMembersInfoResp) ProtoMessage() {} - -func (x *GetGroupMembersInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMembersInfoResp.ProtoReflect.Descriptor instead. -func (*GetGroupMembersInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{21} -} - -func (x *GetGroupMembersInfoResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type KickGroupMemberReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - KickedUserIDs []string `protobuf:"bytes,2,rep,name=kickedUserIDs,proto3" json:"kickedUserIDs"` - Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason"` -} - -func (x *KickGroupMemberReq) Reset() { - *x = KickGroupMemberReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *KickGroupMemberReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*KickGroupMemberReq) ProtoMessage() {} - -func (x *KickGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use KickGroupMemberReq.ProtoReflect.Descriptor instead. -func (*KickGroupMemberReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{22} -} - -func (x *KickGroupMemberReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *KickGroupMemberReq) GetKickedUserIDs() []string { - if x != nil { - return x.KickedUserIDs - } - return nil -} - -func (x *KickGroupMemberReq) GetReason() string { - if x != nil { - return x.Reason - } - return "" -} - -type KickGroupMemberResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *KickGroupMemberResp) Reset() { - *x = KickGroupMemberResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *KickGroupMemberResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*KickGroupMemberResp) ProtoMessage() {} - -func (x *KickGroupMemberResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use KickGroupMemberResp.ProtoReflect.Descriptor instead. -func (*KickGroupMemberResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{23} -} - -type GetJoinedGroupListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - FromUserID string `protobuf:"bytes,2,opt,name=fromUserID,proto3" json:"fromUserID"` -} - -func (x *GetJoinedGroupListReq) Reset() { - *x = GetJoinedGroupListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetJoinedGroupListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetJoinedGroupListReq) ProtoMessage() {} - -func (x *GetJoinedGroupListReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetJoinedGroupListReq.ProtoReflect.Descriptor instead. -func (*GetJoinedGroupListReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{24} -} - -func (x *GetJoinedGroupListReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetJoinedGroupListReq) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -type GetJoinedGroupListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Groups []*sdkws.GroupInfo `protobuf:"bytes,2,rep,name=groups,proto3" json:"groups"` -} - -func (x *GetJoinedGroupListResp) Reset() { - *x = GetJoinedGroupListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetJoinedGroupListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetJoinedGroupListResp) ProtoMessage() {} - -func (x *GetJoinedGroupListResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetJoinedGroupListResp.ProtoReflect.Descriptor instead. -func (*GetJoinedGroupListResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{25} -} - -func (x *GetJoinedGroupListResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetJoinedGroupListResp) GetGroups() []*sdkws.GroupInfo { - if x != nil { - return x.Groups - } - return nil -} - -type InviteUserToGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason"` - InvitedUserIDs []string `protobuf:"bytes,3,rep,name=invitedUserIDs,proto3" json:"invitedUserIDs"` -} - -func (x *InviteUserToGroupReq) Reset() { - *x = InviteUserToGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InviteUserToGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InviteUserToGroupReq) ProtoMessage() {} - -func (x *InviteUserToGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use InviteUserToGroupReq.ProtoReflect.Descriptor instead. -func (*InviteUserToGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{26} -} - -func (x *InviteUserToGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *InviteUserToGroupReq) GetReason() string { - if x != nil { - return x.Reason - } - return "" -} - -func (x *InviteUserToGroupReq) GetInvitedUserIDs() []string { - if x != nil { - return x.InvitedUserIDs - } - return nil -} - -type InviteUserToGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *InviteUserToGroupResp) Reset() { - *x = InviteUserToGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InviteUserToGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InviteUserToGroupResp) ProtoMessage() {} - -func (x *InviteUserToGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use InviteUserToGroupResp.ProtoReflect.Descriptor instead. -func (*InviteUserToGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{27} -} - -type GetGroupAllMemberReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetGroupAllMemberReq) Reset() { - *x = GetGroupAllMemberReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupAllMemberReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupAllMemberReq) ProtoMessage() {} - -func (x *GetGroupAllMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupAllMemberReq.ProtoReflect.Descriptor instead. -func (*GetGroupAllMemberReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{28} -} - -func (x *GetGroupAllMemberReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetGroupAllMemberReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetGroupAllMemberResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,1,rep,name=members,proto3" json:"members"` -} - -func (x *GetGroupAllMemberResp) Reset() { - *x = GetGroupAllMemberResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupAllMemberResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupAllMemberResp) ProtoMessage() {} - -func (x *GetGroupAllMemberResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupAllMemberResp.ProtoReflect.Descriptor instead. -func (*GetGroupAllMemberResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{29} -} - -func (x *GetGroupAllMemberResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type CMSGroup struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` - GroupOwnerUserName string `protobuf:"bytes,2,opt,name=groupOwnerUserName,proto3" json:"groupOwnerUserName"` - GroupOwnerUserID string `protobuf:"bytes,3,opt,name=groupOwnerUserID,proto3" json:"groupOwnerUserID"` -} - -func (x *CMSGroup) Reset() { - *x = CMSGroup{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CMSGroup) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CMSGroup) ProtoMessage() {} - -func (x *CMSGroup) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CMSGroup.ProtoReflect.Descriptor instead. -func (*CMSGroup) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{30} -} - -func (x *CMSGroup) GetGroupInfo() *sdkws.GroupInfo { - if x != nil { - return x.GroupInfo - } - return nil -} - -func (x *CMSGroup) GetGroupOwnerUserName() string { - if x != nil { - return x.GroupOwnerUserName - } - return "" -} - -func (x *CMSGroup) GetGroupOwnerUserID() string { - if x != nil { - return x.GroupOwnerUserID - } - return "" -} - -type GetGroupsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetGroupsReq) Reset() { - *x = GetGroupsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupsReq) ProtoMessage() {} - -func (x *GetGroupsReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupsReq.ProtoReflect.Descriptor instead. -func (*GetGroupsReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{31} -} - -func (x *GetGroupsReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetGroupsReq) GetGroupName() string { - if x != nil { - return x.GroupName - } - return "" -} - -func (x *GetGroupsReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetGroupsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Groups []*CMSGroup `protobuf:"bytes,2,rep,name=groups,proto3" json:"groups"` -} - -func (x *GetGroupsResp) Reset() { - *x = GetGroupsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupsResp) ProtoMessage() {} - -func (x *GetGroupsResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupsResp.ProtoReflect.Descriptor instead. -func (*GetGroupsResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{32} -} - -func (x *GetGroupsResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetGroupsResp) GetGroups() []*CMSGroup { - if x != nil { - return x.Groups - } - return nil -} - -type GetGroupMemberReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetGroupMemberReq) Reset() { - *x = GetGroupMemberReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberReq) ProtoMessage() {} - -func (x *GetGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMemberReq.ProtoReflect.Descriptor instead. -func (*GetGroupMemberReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{33} -} - -func (x *GetGroupMemberReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetGroupMembersCMSReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` - GroupID string `protobuf:"bytes,2,opt,name=groupID,proto3" json:"groupID"` - UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName"` -} - -func (x *GetGroupMembersCMSReq) Reset() { - *x = GetGroupMembersCMSReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMembersCMSReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMembersCMSReq) ProtoMessage() {} - -func (x *GetGroupMembersCMSReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMembersCMSReq.ProtoReflect.Descriptor instead. -func (*GetGroupMembersCMSReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{34} -} - -func (x *GetGroupMembersCMSReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -func (x *GetGroupMembersCMSReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GetGroupMembersCMSReq) GetUserName() string { - if x != nil { - return x.UserName - } - return "" -} - -type GetGroupMembersCMSResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total uint32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,2,rep,name=members,proto3" json:"members"` -} - -func (x *GetGroupMembersCMSResp) Reset() { - *x = GetGroupMembersCMSResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMembersCMSResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMembersCMSResp) ProtoMessage() {} - -func (x *GetGroupMembersCMSResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetGroupMembersCMSResp.ProtoReflect.Descriptor instead. -func (*GetGroupMembersCMSResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{35} -} - -func (x *GetGroupMembersCMSResp) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetGroupMembersCMSResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type DismissGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - DeleteMember bool `protobuf:"varint,2,opt,name=deleteMember,proto3" json:"deleteMember"` -} - -func (x *DismissGroupReq) Reset() { - *x = DismissGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DismissGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DismissGroupReq) ProtoMessage() {} - -func (x *DismissGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use DismissGroupReq.ProtoReflect.Descriptor instead. -func (*DismissGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{36} -} - -func (x *DismissGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *DismissGroupReq) GetDeleteMember() bool { - if x != nil { - return x.DeleteMember - } - return false -} - -type DismissGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DismissGroupResp) Reset() { - *x = DismissGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DismissGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DismissGroupResp) ProtoMessage() {} - -func (x *DismissGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use DismissGroupResp.ProtoReflect.Descriptor instead. -func (*DismissGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{37} -} - -type MuteGroupMemberReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - MutedSeconds uint32 `protobuf:"varint,3,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` -} - -func (x *MuteGroupMemberReq) Reset() { - *x = MuteGroupMemberReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MuteGroupMemberReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MuteGroupMemberReq) ProtoMessage() {} - -func (x *MuteGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use MuteGroupMemberReq.ProtoReflect.Descriptor instead. -func (*MuteGroupMemberReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{38} -} - -func (x *MuteGroupMemberReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *MuteGroupMemberReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *MuteGroupMemberReq) GetMutedSeconds() uint32 { - if x != nil { - return x.MutedSeconds - } - return 0 -} - -type MuteGroupMemberResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MuteGroupMemberResp) Reset() { - *x = MuteGroupMemberResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MuteGroupMemberResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MuteGroupMemberResp) ProtoMessage() {} - -func (x *MuteGroupMemberResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use MuteGroupMemberResp.ProtoReflect.Descriptor instead. -func (*MuteGroupMemberResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{39} -} - -type CancelMuteGroupMemberReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` -} - -func (x *CancelMuteGroupMemberReq) Reset() { - *x = CancelMuteGroupMemberReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CancelMuteGroupMemberReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CancelMuteGroupMemberReq) ProtoMessage() {} - -func (x *CancelMuteGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CancelMuteGroupMemberReq.ProtoReflect.Descriptor instead. -func (*CancelMuteGroupMemberReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{40} -} - -func (x *CancelMuteGroupMemberReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *CancelMuteGroupMemberReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type CancelMuteGroupMemberResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CancelMuteGroupMemberResp) Reset() { - *x = CancelMuteGroupMemberResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CancelMuteGroupMemberResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CancelMuteGroupMemberResp) ProtoMessage() {} - -func (x *CancelMuteGroupMemberResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CancelMuteGroupMemberResp.ProtoReflect.Descriptor instead. -func (*CancelMuteGroupMemberResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{41} -} - -type MuteGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *MuteGroupReq) Reset() { - *x = MuteGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MuteGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MuteGroupReq) ProtoMessage() {} - -func (x *MuteGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use MuteGroupReq.ProtoReflect.Descriptor instead. -func (*MuteGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{42} -} - -func (x *MuteGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type MuteGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MuteGroupResp) Reset() { - *x = MuteGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MuteGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MuteGroupResp) ProtoMessage() {} - -func (x *MuteGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use MuteGroupResp.ProtoReflect.Descriptor instead. -func (*MuteGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{43} -} - -type CancelMuteGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *CancelMuteGroupReq) Reset() { - *x = CancelMuteGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CancelMuteGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CancelMuteGroupReq) ProtoMessage() {} - -func (x *CancelMuteGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CancelMuteGroupReq.ProtoReflect.Descriptor instead. -func (*CancelMuteGroupReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{44} -} - -func (x *CancelMuteGroupReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type CancelMuteGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CancelMuteGroupResp) Reset() { - *x = CancelMuteGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CancelMuteGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CancelMuteGroupResp) ProtoMessage() {} - -func (x *CancelMuteGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use CancelMuteGroupResp.ProtoReflect.Descriptor instead. -func (*CancelMuteGroupResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{45} -} - -type GetJoinedSuperGroupListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetJoinedSuperGroupListReq) Reset() { - *x = GetJoinedSuperGroupListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetJoinedSuperGroupListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetJoinedSuperGroupListReq) ProtoMessage() {} - -func (x *GetJoinedSuperGroupListReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetJoinedSuperGroupListReq.ProtoReflect.Descriptor instead. -func (*GetJoinedSuperGroupListReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{46} -} - -func (x *GetJoinedSuperGroupListReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetJoinedSuperGroupListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Groups []*sdkws.GroupInfo `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups"` -} - -func (x *GetJoinedSuperGroupListResp) Reset() { - *x = GetJoinedSuperGroupListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetJoinedSuperGroupListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetJoinedSuperGroupListResp) ProtoMessage() {} - -func (x *GetJoinedSuperGroupListResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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 GetJoinedSuperGroupListResp.ProtoReflect.Descriptor instead. -func (*GetJoinedSuperGroupListResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{47} -} - -func (x *GetJoinedSuperGroupListResp) GetGroups() []*sdkws.GroupInfo { - if x != nil { - return x.Groups - } - return nil -} - -type GetSuperGroupsInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupIDs []string `protobuf:"bytes,1,rep,name=groupIDs,proto3" json:"groupIDs"` -} - -func (x *GetSuperGroupsInfoReq) Reset() { - *x = GetSuperGroupsInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSuperGroupsInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSuperGroupsInfoReq) ProtoMessage() {} - -func (x *GetSuperGroupsInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_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) -} - -// Deprecated: Use GetSuperGroupsInfoReq.ProtoReflect.Descriptor instead. -func (*GetSuperGroupsInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{48} -} - -func (x *GetSuperGroupsInfoReq) GetGroupIDs() []string { - if x != nil { - return x.GroupIDs - } - return nil -} - -type GetSuperGroupsInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfos []*sdkws.GroupInfo `protobuf:"bytes,1,rep,name=groupInfos,proto3" json:"groupInfos"` -} - -func (x *GetSuperGroupsInfoResp) Reset() { - *x = GetSuperGroupsInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSuperGroupsInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSuperGroupsInfoResp) ProtoMessage() {} - -func (x *GetSuperGroupsInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[49] - 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 GetSuperGroupsInfoResp.ProtoReflect.Descriptor instead. -func (*GetSuperGroupsInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{49} -} - -func (x *GetSuperGroupsInfoResp) GetGroupInfos() []*sdkws.GroupInfo { - if x != nil { - return x.GroupInfos - } - return nil -} - -type SetGroupMemberInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - Nickname *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=nickname,proto3" json:"nickname"` - FaceURL *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=faceURL,proto3" json:"faceURL"` - RoleLevel *wrapperspb.Int32Value `protobuf:"bytes,5,opt,name=roleLevel,proto3" json:"roleLevel"` - Ex *wrapperspb.StringValue `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` -} - -func (x *SetGroupMemberInfo) Reset() { - *x = SetGroupMemberInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGroupMemberInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGroupMemberInfo) ProtoMessage() {} - -func (x *SetGroupMemberInfo) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[50] - 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 SetGroupMemberInfo.ProtoReflect.Descriptor instead. -func (*SetGroupMemberInfo) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{50} -} - -func (x *SetGroupMemberInfo) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *SetGroupMemberInfo) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SetGroupMemberInfo) GetNickname() *wrapperspb.StringValue { - if x != nil { - return x.Nickname - } - return nil -} - -func (x *SetGroupMemberInfo) GetFaceURL() *wrapperspb.StringValue { - if x != nil { - return x.FaceURL - } - return nil -} - -func (x *SetGroupMemberInfo) GetRoleLevel() *wrapperspb.Int32Value { - if x != nil { - return x.RoleLevel - } - return nil -} - -func (x *SetGroupMemberInfo) GetEx() *wrapperspb.StringValue { - if x != nil { - return x.Ex - } - return nil -} - -type SetGroupMemberInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Members []*SetGroupMemberInfo `protobuf:"bytes,1,rep,name=members,proto3" json:"members"` -} - -func (x *SetGroupMemberInfoReq) Reset() { - *x = SetGroupMemberInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGroupMemberInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGroupMemberInfoReq) ProtoMessage() {} - -func (x *SetGroupMemberInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[51] - 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 SetGroupMemberInfoReq.ProtoReflect.Descriptor instead. -func (*SetGroupMemberInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{51} -} - -func (x *SetGroupMemberInfoReq) GetMembers() []*SetGroupMemberInfo { - if x != nil { - return x.Members - } - return nil -} - -type SetGroupMemberInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetGroupMemberInfoResp) Reset() { - *x = SetGroupMemberInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGroupMemberInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGroupMemberInfoResp) ProtoMessage() {} - -func (x *SetGroupMemberInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[52] - 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 SetGroupMemberInfoResp.ProtoReflect.Descriptor instead. -func (*SetGroupMemberInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{52} -} - -type GetGroupAbstractInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupIDs []string `protobuf:"bytes,1,rep,name=groupIDs,proto3" json:"groupIDs"` -} - -func (x *GetGroupAbstractInfoReq) Reset() { - *x = GetGroupAbstractInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[53] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupAbstractInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupAbstractInfoReq) ProtoMessage() {} - -func (x *GetGroupAbstractInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[53] - 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 GetGroupAbstractInfoReq.ProtoReflect.Descriptor instead. -func (*GetGroupAbstractInfoReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{53} -} - -func (x *GetGroupAbstractInfoReq) GetGroupIDs() []string { - if x != nil { - return x.GroupIDs - } - return nil -} - -type GroupAbstractInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupMemberNumber uint32 `protobuf:"varint,2,opt,name=groupMemberNumber,proto3" json:"groupMemberNumber"` - GroupMemberListHash uint64 `protobuf:"varint,3,opt,name=groupMemberListHash,proto3" json:"groupMemberListHash"` -} - -func (x *GroupAbstractInfo) Reset() { - *x = GroupAbstractInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupAbstractInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupAbstractInfo) ProtoMessage() {} - -func (x *GroupAbstractInfo) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[54] - 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 GroupAbstractInfo.ProtoReflect.Descriptor instead. -func (*GroupAbstractInfo) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{54} -} - -func (x *GroupAbstractInfo) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GroupAbstractInfo) GetGroupMemberNumber() uint32 { - if x != nil { - return x.GroupMemberNumber - } - return 0 -} - -func (x *GroupAbstractInfo) GetGroupMemberListHash() uint64 { - if x != nil { - return x.GroupMemberListHash - } - return 0 -} - -type GetGroupAbstractInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupAbstractInfos []*GroupAbstractInfo `protobuf:"bytes,1,rep,name=groupAbstractInfos,proto3" json:"groupAbstractInfos"` -} - -func (x *GetGroupAbstractInfoResp) Reset() { - *x = GetGroupAbstractInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[55] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupAbstractInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupAbstractInfoResp) ProtoMessage() {} - -func (x *GetGroupAbstractInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[55] - 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 GetGroupAbstractInfoResp.ProtoReflect.Descriptor instead. -func (*GetGroupAbstractInfoResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{55} -} - -func (x *GetGroupAbstractInfoResp) GetGroupAbstractInfos() []*GroupAbstractInfo { - if x != nil { - return x.GroupAbstractInfos - } - return nil -} - -type GetUserInGroupMembersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - GroupIDs []string `protobuf:"bytes,2,rep,name=groupIDs,proto3" json:"groupIDs"` -} - -func (x *GetUserInGroupMembersReq) Reset() { - *x = GetUserInGroupMembersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[56] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserInGroupMembersReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserInGroupMembersReq) ProtoMessage() {} - -func (x *GetUserInGroupMembersReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[56] - 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 GetUserInGroupMembersReq.ProtoReflect.Descriptor instead. -func (*GetUserInGroupMembersReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{56} -} - -func (x *GetUserInGroupMembersReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GetUserInGroupMembersReq) GetGroupIDs() []string { - if x != nil { - return x.GroupIDs - } - return nil -} - -type GetUserInGroupMembersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,1,rep,name=members,proto3" json:"members"` -} - -func (x *GetUserInGroupMembersResp) Reset() { - *x = GetUserInGroupMembersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUserInGroupMembersResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUserInGroupMembersResp) ProtoMessage() {} - -func (x *GetUserInGroupMembersResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[57] - 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 GetUserInGroupMembersResp.ProtoReflect.Descriptor instead. -func (*GetUserInGroupMembersResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{57} -} - -func (x *GetUserInGroupMembersResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type GetGroupMemberUserIDsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetGroupMemberUserIDsReq) Reset() { - *x = GetGroupMemberUserIDsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[58] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberUserIDsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberUserIDsReq) ProtoMessage() {} - -func (x *GetGroupMemberUserIDsReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[58] - 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 GetGroupMemberUserIDsReq.ProtoReflect.Descriptor instead. -func (*GetGroupMemberUserIDsReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{58} -} - -func (x *GetGroupMemberUserIDsReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetGroupMemberUserIDsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetGroupMemberUserIDsResp) Reset() { - *x = GetGroupMemberUserIDsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberUserIDsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberUserIDsResp) ProtoMessage() {} - -func (x *GetGroupMemberUserIDsResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[59] - 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 GetGroupMemberUserIDsResp.ProtoReflect.Descriptor instead. -func (*GetGroupMemberUserIDsResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{59} -} - -func (x *GetGroupMemberUserIDsResp) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type GetGroupMemberRoleLevelReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - RoleLevels []int32 `protobuf:"varint,2,rep,packed,name=roleLevels,proto3" json:"roleLevels"` -} - -func (x *GetGroupMemberRoleLevelReq) Reset() { - *x = GetGroupMemberRoleLevelReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberRoleLevelReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberRoleLevelReq) ProtoMessage() {} - -func (x *GetGroupMemberRoleLevelReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[60] - 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 GetGroupMemberRoleLevelReq.ProtoReflect.Descriptor instead. -func (*GetGroupMemberRoleLevelReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{60} -} - -func (x *GetGroupMemberRoleLevelReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GetGroupMemberRoleLevelReq) GetRoleLevels() []int32 { - if x != nil { - return x.RoleLevels - } - return nil -} - -type GetGroupMemberRoleLevelResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Members []*sdkws.GroupMemberFullInfo `protobuf:"bytes,1,rep,name=members,proto3" json:"members"` -} - -func (x *GetGroupMemberRoleLevelResp) Reset() { - *x = GetGroupMemberRoleLevelResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[61] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberRoleLevelResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberRoleLevelResp) ProtoMessage() {} - -func (x *GetGroupMemberRoleLevelResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[61] - 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 GetGroupMemberRoleLevelResp.ProtoReflect.Descriptor instead. -func (*GetGroupMemberRoleLevelResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{61} -} - -func (x *GetGroupMemberRoleLevelResp) GetMembers() []*sdkws.GroupMemberFullInfo { - if x != nil { - return x.Members - } - return nil -} - -type GetGroupInfoCacheReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` -} - -func (x *GetGroupInfoCacheReq) Reset() { - *x = GetGroupInfoCacheReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[62] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupInfoCacheReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupInfoCacheReq) ProtoMessage() {} - -func (x *GetGroupInfoCacheReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[62] - 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 GetGroupInfoCacheReq.ProtoReflect.Descriptor instead. -func (*GetGroupInfoCacheReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{62} -} - -func (x *GetGroupInfoCacheReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -type GetGroupInfoCacheResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupInfo *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=groupInfo,proto3" json:"groupInfo"` -} - -func (x *GetGroupInfoCacheResp) Reset() { - *x = GetGroupInfoCacheResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[63] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupInfoCacheResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupInfoCacheResp) ProtoMessage() {} - -func (x *GetGroupInfoCacheResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[63] - 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 GetGroupInfoCacheResp.ProtoReflect.Descriptor instead. -func (*GetGroupInfoCacheResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{63} -} - -func (x *GetGroupInfoCacheResp) GetGroupInfo() *sdkws.GroupInfo { - if x != nil { - return x.GroupInfo - } - return nil -} - -type GetGroupMemberCacheReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupMemberID string `protobuf:"bytes,2,opt,name=groupMemberID,proto3" json:"groupMemberID"` -} - -func (x *GetGroupMemberCacheReq) Reset() { - *x = GetGroupMemberCacheReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[64] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberCacheReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberCacheReq) ProtoMessage() {} - -func (x *GetGroupMemberCacheReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[64] - 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 GetGroupMemberCacheReq.ProtoReflect.Descriptor instead. -func (*GetGroupMemberCacheReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{64} -} - -func (x *GetGroupMemberCacheReq) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GetGroupMemberCacheReq) GetGroupMemberID() string { - if x != nil { - return x.GroupMemberID - } - return "" -} - -type GetGroupMemberCacheResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Member *sdkws.GroupMemberFullInfo `protobuf:"bytes,1,opt,name=member,proto3" json:"member"` -} - -func (x *GetGroupMemberCacheResp) Reset() { - *x = GetGroupMemberCacheResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGroupMemberCacheResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGroupMemberCacheResp) ProtoMessage() {} - -func (x *GetGroupMemberCacheResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[65] - 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 GetGroupMemberCacheResp.ProtoReflect.Descriptor instead. -func (*GetGroupMemberCacheResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{65} -} - -func (x *GetGroupMemberCacheResp) GetMember() *sdkws.GroupMemberFullInfo { - if x != nil { - return x.Member - } - return nil -} - -type GroupCreateCountReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` -} - -func (x *GroupCreateCountReq) Reset() { - *x = GroupCreateCountReq{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[66] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupCreateCountReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupCreateCountReq) ProtoMessage() {} - -func (x *GroupCreateCountReq) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[66] - 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 GroupCreateCountReq.ProtoReflect.Descriptor instead. -func (*GroupCreateCountReq) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{66} -} - -func (x *GroupCreateCountReq) GetStart() int64 { - if x != nil { - return x.Start - } - return 0 -} - -func (x *GroupCreateCountReq) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -type GroupCreateCountResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` -} - -func (x *GroupCreateCountResp) Reset() { - *x = GroupCreateCountResp{} - if protoimpl.UnsafeEnabled { - mi := &file_group_group_proto_msgTypes[67] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupCreateCountResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupCreateCountResp) ProtoMessage() {} - -func (x *GroupCreateCountResp) ProtoReflect() protoreflect.Message { - mi := &file_group_group_proto_msgTypes[67] - 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 GroupCreateCountResp.ProtoReflect.Descriptor instead. -func (*GroupCreateCountResp) Descriptor() ([]byte, []int) { - return file_group_group_proto_rawDescGZIP(), []int{67} -} - -func (x *GroupCreateCountResp) GetTotal() int64 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GroupCreateCountResp) GetBefore() int64 { - if x != nil { - return x.Before - } - return 0 -} - -func (x *GroupCreateCountResp) GetCount() map[string]int64 { - if x != nil { - return x.Count - } - return nil -} - -var File_group_group_proto protoreflect.FileDescriptor - -var file_group_group_proto_rawDesc = []byte{ - 0x0a, 0x11, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x77, 0x72, 0x61, 0x70, - 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, - 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb9, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0d, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, - 0x12, 0x3b, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, - 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x22, 0x4e, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3b, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x22, 0x2e, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x73, 0x22, 0x52, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3d, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x60, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x4d, 0x0a, 0x0f, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x52, 0x0f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x83, 0x01, - 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x22, 0x7b, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x46, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, - 0x22, 0x7d, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, - 0x7d, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x46, 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, - 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x81, - 0x01, 0x0a, 0x15, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x6c, 0x64, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x6c, 0x64, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x65, - 0x77, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x22, 0x18, 0x0a, 0x16, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x8e, 0x01, 0x0a, - 0x0c, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x71, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6a, 0x6f, 0x69, - 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x0f, 0x0a, - 0x0d, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x22, 0x9b, - 0x01, 0x0a, 0x1b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x18, - 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, - 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0x1e, 0x0a, 0x1c, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x28, 0x0a, 0x0c, - 0x51, 0x75, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, 0x0f, 0x0a, 0x0d, 0x51, 0x75, 0x69, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x22, 0x90, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x71, 0x0a, 0x16, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x41, 0x0a, 0x07, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x4c, 0x0a, - 0x16, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x5c, 0x0a, 0x17, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x6c, 0x0a, 0x12, 0x4b, 0x69, 0x63, - 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, - 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x6b, 0x69, 0x63, - 0x6b, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0d, 0x6b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x15, 0x0a, 0x13, 0x4b, 0x69, 0x63, 0x6b, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x7e, - 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, - 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x65, - 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x35, - 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x70, 0x0a, 0x14, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, - 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, - 0x26, 0x0a, 0x0e, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x17, 0x0a, 0x15, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x77, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x6c, 0x6c, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, 0x5a, 0x0a, 0x15, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x41, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xa3, 0x01, 0x0a, 0x08, 0x43, 0x4d, 0x53, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x12, 0x3b, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x2e, 0x0a, 0x12, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x2a, 0x0a, 0x10, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x8d, 0x01, 0x0a, 0x0c, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, 0x5b, 0x0a, 0x0d, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, - 0x61, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x4d, 0x53, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x22, 0x2d, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, 0x94, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x43, 0x4d, 0x53, 0x52, 0x65, - 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, - 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x71, - 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x43, 0x4d, 0x53, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x41, - 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x22, 0x4f, 0x0a, 0x0f, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x22, - 0x0a, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x22, 0x12, 0x0a, 0x10, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x22, 0x6a, 0x0a, 0x12, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, - 0x0a, 0x0c, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, - 0x64, 0x73, 0x22, 0x15, 0x0a, 0x13, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x4c, 0x0a, 0x18, 0x43, 0x61, 0x6e, - 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, - 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x61, 0x6e, 0x63, 0x65, - 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x28, 0x0a, 0x0c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, 0x0f, - 0x0a, 0x0d, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x22, - 0x2e, 0x0a, 0x12, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x22, - 0x15, 0x0a, 0x13, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x22, 0x34, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, - 0x6e, 0x65, 0x64, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x54, 0x0a, 0x1b, - 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x35, 0x0a, 0x06, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x73, 0x22, 0x33, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x22, 0x57, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x53, 0x75, - 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x3d, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x73, - 0x22, 0xb9, 0x02, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x3e, 0x0a, 0x08, 0x6e, 0x69, 0x63, - 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x66, 0x61, 0x63, - 0x65, 0x55, 0x52, 0x4c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, - 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x3f, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x72, - 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x32, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x02, 0x65, 0x78, 0x22, 0x59, 0x0a, 0x15, - 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x40, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x18, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, - 0x70, 0x22, 0x35, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x22, 0x8d, 0x01, 0x0a, 0x11, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, - 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x13, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x13, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x4c, 0x69, 0x73, 0x74, 0x48, 0x61, 0x73, 0x68, 0x22, 0x71, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x55, 0x0a, 0x12, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x12, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, - 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0x4e, 0x0a, 0x18, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 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, - 0x1a, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x73, 0x22, 0x5e, 0x0a, 0x19, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x41, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x34, 0x0a, 0x18, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x22, 0x35, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, - 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x56, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, - 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x73, - 0x22, 0x60, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x41, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x22, 0x30, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x44, 0x22, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3b, 0x0a, - 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x58, 0x0a, 0x16, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, - 0x65, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x24, - 0x0a, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x49, 0x44, 0x22, 0x5a, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x3f, 0x0a, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0x3d, 0x0a, 0x13, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, - 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, - 0xc9, 0x01, 0x0a, 0x14, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, - 0x0a, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, - 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x49, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x1a, 0x38, 0x0a, 0x0a, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0xdb, 0x19, 0x0a, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x56, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, - 0x09, 0x6a, 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, - 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x50, 0x0a, 0x09, 0x71, 0x75, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x2e, 0x51, 0x75, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x21, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x2e, 0x51, 0x75, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x5c, 0x0a, 0x0d, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x59, 0x0a, 0x0c, 0x73, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7a, 0x0a, 0x17, 0x67, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x80, 0x01, 0x0a, 0x19, 0x67, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4c, 0x69, 0x73, 0x74, 0x12, 0x30, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x31, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6b, 0x0a, 0x12, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x66, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, - 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7d, 0x0a, 0x18, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x65, 0x71, 0x1a, 0x30, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6b, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x6e, 0x0a, 0x13, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x62, 0x0a, 0x0f, 0x6b, 0x69, 0x63, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x4b, 0x69, 0x63, 0x6b, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x2e, 0x4b, 0x69, 0x63, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x6b, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x4a, 0x6f, 0x69, - 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x29, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x2e, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, - 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x11, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, - 0x72, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x49, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x54, 0x6f, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, - 0x09, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x6b, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x43, 0x4d, 0x53, 0x12, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x43, 0x4d, 0x53, 0x52, 0x65, 0x71, - 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x43, 0x4d, 0x53, 0x52, 0x65, 0x73, 0x70, 0x12, 0x59, 0x0a, 0x0c, - 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x23, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x2e, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, - 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x62, 0x0a, 0x0f, 0x6d, 0x75, 0x74, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, - 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x74, 0x0a, 0x15, 0x63, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, - 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x1a, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, - 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x50, 0x0a, 0x09, 0x6d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x2e, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, - 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x62, 0x0a, 0x0f, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, - 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x27, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7a, 0x0a, 0x17, 0x67, 0x65, 0x74, 0x4a, 0x6f, - 0x69, 0x6e, 0x65, 0x64, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, - 0x64, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x4a, 0x6f, 0x69, 0x6e, 0x65, - 0x64, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x6b, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, - 0x65, 0x74, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 0x70, - 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x6b, 0x0a, 0x12, 0x73, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x71, 0x1a, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x71, 0x0a, - 0x14, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x41, 0x62, 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x74, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x74, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x12, - 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x2d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7a, 0x0a, 0x17, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, - 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x28, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x6e, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x12, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x63, - 0x68, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x63, 0x68, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x65, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, - 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x42, 0x35, 0x5a, 0x33, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, - 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_group_group_proto_rawDescOnce sync.Once - file_group_group_proto_rawDescData = file_group_group_proto_rawDesc -) - -func file_group_group_proto_rawDescGZIP() []byte { - file_group_group_proto_rawDescOnce.Do(func() { - file_group_group_proto_rawDescData = protoimpl.X.CompressGZIP(file_group_group_proto_rawDescData) - }) - return file_group_group_proto_rawDescData -} - -var file_group_group_proto_msgTypes = make([]protoimpl.MessageInfo, 69) -var file_group_group_proto_goTypes = []interface{}{ - (*CreateGroupReq)(nil), // 0: OpenIMServer.group.CreateGroupReq - (*CreateGroupResp)(nil), // 1: OpenIMServer.group.CreateGroupResp - (*GetGroupsInfoReq)(nil), // 2: OpenIMServer.group.GetGroupsInfoReq - (*GetGroupsInfoResp)(nil), // 3: OpenIMServer.group.GetGroupsInfoResp - (*SetGroupInfoReq)(nil), // 4: OpenIMServer.group.SetGroupInfoReq - (*SetGroupInfoResp)(nil), // 5: OpenIMServer.group.SetGroupInfoResp - (*GetGroupApplicationListReq)(nil), // 6: OpenIMServer.group.GetGroupApplicationListReq - (*GetGroupApplicationListResp)(nil), // 7: OpenIMServer.group.GetGroupApplicationListResp - (*GetUserReqApplicationListReq)(nil), // 8: OpenIMServer.group.GetUserReqApplicationListReq - (*GetUserReqApplicationListResp)(nil), // 9: OpenIMServer.group.GetUserReqApplicationListResp - (*TransferGroupOwnerReq)(nil), // 10: OpenIMServer.group.TransferGroupOwnerReq - (*TransferGroupOwnerResp)(nil), // 11: OpenIMServer.group.TransferGroupOwnerResp - (*JoinGroupReq)(nil), // 12: OpenIMServer.group.JoinGroupReq - (*JoinGroupResp)(nil), // 13: OpenIMServer.group.JoinGroupResp - (*GroupApplicationResponseReq)(nil), // 14: OpenIMServer.group.GroupApplicationResponseReq - (*GroupApplicationResponseResp)(nil), // 15: OpenIMServer.group.GroupApplicationResponseResp - (*QuitGroupReq)(nil), // 16: OpenIMServer.group.QuitGroupReq - (*QuitGroupResp)(nil), // 17: OpenIMServer.group.QuitGroupResp - (*GetGroupMemberListReq)(nil), // 18: OpenIMServer.group.GetGroupMemberListReq - (*GetGroupMemberListResp)(nil), // 19: OpenIMServer.group.GetGroupMemberListResp - (*GetGroupMembersInfoReq)(nil), // 20: OpenIMServer.group.GetGroupMembersInfoReq - (*GetGroupMembersInfoResp)(nil), // 21: OpenIMServer.group.GetGroupMembersInfoResp - (*KickGroupMemberReq)(nil), // 22: OpenIMServer.group.KickGroupMemberReq - (*KickGroupMemberResp)(nil), // 23: OpenIMServer.group.KickGroupMemberResp - (*GetJoinedGroupListReq)(nil), // 24: OpenIMServer.group.GetJoinedGroupListReq - (*GetJoinedGroupListResp)(nil), // 25: OpenIMServer.group.GetJoinedGroupListResp - (*InviteUserToGroupReq)(nil), // 26: OpenIMServer.group.InviteUserToGroupReq - (*InviteUserToGroupResp)(nil), // 27: OpenIMServer.group.InviteUserToGroupResp - (*GetGroupAllMemberReq)(nil), // 28: OpenIMServer.group.GetGroupAllMemberReq - (*GetGroupAllMemberResp)(nil), // 29: OpenIMServer.group.GetGroupAllMemberResp - (*CMSGroup)(nil), // 30: OpenIMServer.group.CMSGroup - (*GetGroupsReq)(nil), // 31: OpenIMServer.group.GetGroupsReq - (*GetGroupsResp)(nil), // 32: OpenIMServer.group.GetGroupsResp - (*GetGroupMemberReq)(nil), // 33: OpenIMServer.group.GetGroupMemberReq - (*GetGroupMembersCMSReq)(nil), // 34: OpenIMServer.group.GetGroupMembersCMSReq - (*GetGroupMembersCMSResp)(nil), // 35: OpenIMServer.group.GetGroupMembersCMSResp - (*DismissGroupReq)(nil), // 36: OpenIMServer.group.DismissGroupReq - (*DismissGroupResp)(nil), // 37: OpenIMServer.group.DismissGroupResp - (*MuteGroupMemberReq)(nil), // 38: OpenIMServer.group.MuteGroupMemberReq - (*MuteGroupMemberResp)(nil), // 39: OpenIMServer.group.MuteGroupMemberResp - (*CancelMuteGroupMemberReq)(nil), // 40: OpenIMServer.group.CancelMuteGroupMemberReq - (*CancelMuteGroupMemberResp)(nil), // 41: OpenIMServer.group.CancelMuteGroupMemberResp - (*MuteGroupReq)(nil), // 42: OpenIMServer.group.MuteGroupReq - (*MuteGroupResp)(nil), // 43: OpenIMServer.group.MuteGroupResp - (*CancelMuteGroupReq)(nil), // 44: OpenIMServer.group.CancelMuteGroupReq - (*CancelMuteGroupResp)(nil), // 45: OpenIMServer.group.CancelMuteGroupResp - (*GetJoinedSuperGroupListReq)(nil), // 46: OpenIMServer.group.GetJoinedSuperGroupListReq - (*GetJoinedSuperGroupListResp)(nil), // 47: OpenIMServer.group.GetJoinedSuperGroupListResp - (*GetSuperGroupsInfoReq)(nil), // 48: OpenIMServer.group.GetSuperGroupsInfoReq - (*GetSuperGroupsInfoResp)(nil), // 49: OpenIMServer.group.GetSuperGroupsInfoResp - (*SetGroupMemberInfo)(nil), // 50: OpenIMServer.group.SetGroupMemberInfo - (*SetGroupMemberInfoReq)(nil), // 51: OpenIMServer.group.SetGroupMemberInfoReq - (*SetGroupMemberInfoResp)(nil), // 52: OpenIMServer.group.SetGroupMemberInfoResp - (*GetGroupAbstractInfoReq)(nil), // 53: OpenIMServer.group.GetGroupAbstractInfoReq - (*GroupAbstractInfo)(nil), // 54: OpenIMServer.group.GroupAbstractInfo - (*GetGroupAbstractInfoResp)(nil), // 55: OpenIMServer.group.GetGroupAbstractInfoResp - (*GetUserInGroupMembersReq)(nil), // 56: OpenIMServer.group.GetUserInGroupMembersReq - (*GetUserInGroupMembersResp)(nil), // 57: OpenIMServer.group.GetUserInGroupMembersResp - (*GetGroupMemberUserIDsReq)(nil), // 58: OpenIMServer.group.GetGroupMemberUserIDsReq - (*GetGroupMemberUserIDsResp)(nil), // 59: OpenIMServer.group.GetGroupMemberUserIDsResp - (*GetGroupMemberRoleLevelReq)(nil), // 60: OpenIMServer.group.GetGroupMemberRoleLevelReq - (*GetGroupMemberRoleLevelResp)(nil), // 61: OpenIMServer.group.GetGroupMemberRoleLevelResp - (*GetGroupInfoCacheReq)(nil), // 62: OpenIMServer.group.GetGroupInfoCacheReq - (*GetGroupInfoCacheResp)(nil), // 63: OpenIMServer.group.GetGroupInfoCacheResp - (*GetGroupMemberCacheReq)(nil), // 64: OpenIMServer.group.GetGroupMemberCacheReq - (*GetGroupMemberCacheResp)(nil), // 65: OpenIMServer.group.GetGroupMemberCacheResp - (*GroupCreateCountReq)(nil), // 66: OpenIMServer.group.GroupCreateCountReq - (*GroupCreateCountResp)(nil), // 67: OpenIMServer.group.GroupCreateCountResp - nil, // 68: OpenIMServer.group.GroupCreateCountResp.CountEntry - (*sdkws.GroupInfo)(nil), // 69: OpenIMServer.sdkws.GroupInfo - (*sdkws.GroupInfoForSet)(nil), // 70: OpenIMServer.sdkws.GroupInfoForSet - (*sdkws.RequestPagination)(nil), // 71: OpenIMServer.sdkws.RequestPagination - (*sdkws.GroupRequest)(nil), // 72: OpenIMServer.sdkws.GroupRequest - (*sdkws.GroupMemberFullInfo)(nil), // 73: OpenIMServer.sdkws.GroupMemberFullInfo - (*wrapperspb.StringValue)(nil), // 74: OpenIMServer.protobuf.StringValue - (*wrapperspb.Int32Value)(nil), // 75: OpenIMServer.protobuf.Int32Value -} -var file_group_group_proto_depIdxs = []int32{ - 69, // 0: OpenIMServer.group.CreateGroupReq.groupInfo:type_name -> OpenIMServer.sdkws.GroupInfo - 69, // 1: OpenIMServer.group.CreateGroupResp.groupInfo:type_name -> OpenIMServer.sdkws.GroupInfo - 69, // 2: OpenIMServer.group.GetGroupsInfoResp.groupInfos:type_name -> OpenIMServer.sdkws.GroupInfo - 70, // 3: OpenIMServer.group.SetGroupInfoReq.groupInfoForSet:type_name -> OpenIMServer.sdkws.GroupInfoForSet - 71, // 4: OpenIMServer.group.GetGroupApplicationListReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 72, // 5: OpenIMServer.group.GetGroupApplicationListResp.groupRequests:type_name -> OpenIMServer.sdkws.GroupRequest - 71, // 6: OpenIMServer.group.GetUserReqApplicationListReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 72, // 7: OpenIMServer.group.GetUserReqApplicationListResp.groupRequests:type_name -> OpenIMServer.sdkws.GroupRequest - 71, // 8: OpenIMServer.group.GetGroupMemberListReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 73, // 9: OpenIMServer.group.GetGroupMemberListResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 73, // 10: OpenIMServer.group.GetGroupMembersInfoResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 71, // 11: OpenIMServer.group.GetJoinedGroupListReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 69, // 12: OpenIMServer.group.GetJoinedGroupListResp.groups:type_name -> OpenIMServer.sdkws.GroupInfo - 71, // 13: OpenIMServer.group.GetGroupAllMemberReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 73, // 14: OpenIMServer.group.GetGroupAllMemberResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 69, // 15: OpenIMServer.group.CMSGroup.groupInfo:type_name -> OpenIMServer.sdkws.GroupInfo - 71, // 16: OpenIMServer.group.GetGroupsReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 30, // 17: OpenIMServer.group.GetGroupsResp.groups:type_name -> OpenIMServer.group.CMSGroup - 71, // 18: OpenIMServer.group.GetGroupMembersCMSReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 73, // 19: OpenIMServer.group.GetGroupMembersCMSResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 69, // 20: OpenIMServer.group.GetJoinedSuperGroupListResp.groups:type_name -> OpenIMServer.sdkws.GroupInfo - 69, // 21: OpenIMServer.group.GetSuperGroupsInfoResp.groupInfos:type_name -> OpenIMServer.sdkws.GroupInfo - 74, // 22: OpenIMServer.group.SetGroupMemberInfo.nickname:type_name -> OpenIMServer.protobuf.StringValue - 74, // 23: OpenIMServer.group.SetGroupMemberInfo.faceURL:type_name -> OpenIMServer.protobuf.StringValue - 75, // 24: OpenIMServer.group.SetGroupMemberInfo.roleLevel:type_name -> OpenIMServer.protobuf.Int32Value - 74, // 25: OpenIMServer.group.SetGroupMemberInfo.ex:type_name -> OpenIMServer.protobuf.StringValue - 50, // 26: OpenIMServer.group.SetGroupMemberInfoReq.members:type_name -> OpenIMServer.group.SetGroupMemberInfo - 54, // 27: OpenIMServer.group.GetGroupAbstractInfoResp.groupAbstractInfos:type_name -> OpenIMServer.group.GroupAbstractInfo - 73, // 28: OpenIMServer.group.GetUserInGroupMembersResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 73, // 29: OpenIMServer.group.GetGroupMemberRoleLevelResp.members:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 69, // 30: OpenIMServer.group.GetGroupInfoCacheResp.groupInfo:type_name -> OpenIMServer.sdkws.GroupInfo - 73, // 31: OpenIMServer.group.GetGroupMemberCacheResp.member:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 68, // 32: OpenIMServer.group.GroupCreateCountResp.count:type_name -> OpenIMServer.group.GroupCreateCountResp.CountEntry - 0, // 33: OpenIMServer.group.group.createGroup:input_type -> OpenIMServer.group.CreateGroupReq - 12, // 34: OpenIMServer.group.group.joinGroup:input_type -> OpenIMServer.group.JoinGroupReq - 16, // 35: OpenIMServer.group.group.quitGroup:input_type -> OpenIMServer.group.QuitGroupReq - 2, // 36: OpenIMServer.group.group.getGroupsInfo:input_type -> OpenIMServer.group.GetGroupsInfoReq - 4, // 37: OpenIMServer.group.group.setGroupInfo:input_type -> OpenIMServer.group.SetGroupInfoReq - 6, // 38: OpenIMServer.group.group.getGroupApplicationList:input_type -> OpenIMServer.group.GetGroupApplicationListReq - 8, // 39: OpenIMServer.group.group.getUserReqApplicationList:input_type -> OpenIMServer.group.GetUserReqApplicationListReq - 10, // 40: OpenIMServer.group.group.transferGroupOwner:input_type -> OpenIMServer.group.TransferGroupOwnerReq - 14, // 41: OpenIMServer.group.group.groupApplicationResponse:input_type -> OpenIMServer.group.GroupApplicationResponseReq - 18, // 42: OpenIMServer.group.group.getGroupMemberList:input_type -> OpenIMServer.group.GetGroupMemberListReq - 20, // 43: OpenIMServer.group.group.getGroupMembersInfo:input_type -> OpenIMServer.group.GetGroupMembersInfoReq - 22, // 44: OpenIMServer.group.group.kickGroupMember:input_type -> OpenIMServer.group.KickGroupMemberReq - 24, // 45: OpenIMServer.group.group.getJoinedGroupList:input_type -> OpenIMServer.group.GetJoinedGroupListReq - 26, // 46: OpenIMServer.group.group.inviteUserToGroup:input_type -> OpenIMServer.group.InviteUserToGroupReq - 31, // 47: OpenIMServer.group.group.getGroups:input_type -> OpenIMServer.group.GetGroupsReq - 34, // 48: OpenIMServer.group.group.getGroupMembersCMS:input_type -> OpenIMServer.group.GetGroupMembersCMSReq - 36, // 49: OpenIMServer.group.group.dismissGroup:input_type -> OpenIMServer.group.DismissGroupReq - 38, // 50: OpenIMServer.group.group.muteGroupMember:input_type -> OpenIMServer.group.MuteGroupMemberReq - 40, // 51: OpenIMServer.group.group.cancelMuteGroupMember:input_type -> OpenIMServer.group.CancelMuteGroupMemberReq - 42, // 52: OpenIMServer.group.group.muteGroup:input_type -> OpenIMServer.group.MuteGroupReq - 44, // 53: OpenIMServer.group.group.cancelMuteGroup:input_type -> OpenIMServer.group.CancelMuteGroupReq - 46, // 54: OpenIMServer.group.group.getJoinedSuperGroupList:input_type -> OpenIMServer.group.GetJoinedSuperGroupListReq - 48, // 55: OpenIMServer.group.group.getSuperGroupsInfo:input_type -> OpenIMServer.group.GetSuperGroupsInfoReq - 51, // 56: OpenIMServer.group.group.setGroupMemberInfo:input_type -> OpenIMServer.group.SetGroupMemberInfoReq - 53, // 57: OpenIMServer.group.group.getGroupAbstractInfo:input_type -> OpenIMServer.group.GetGroupAbstractInfoReq - 56, // 58: OpenIMServer.group.group.getUserInGroupMembers:input_type -> OpenIMServer.group.GetUserInGroupMembersReq - 58, // 59: OpenIMServer.group.group.getGroupMemberUserIDs:input_type -> OpenIMServer.group.GetGroupMemberUserIDsReq - 60, // 60: OpenIMServer.group.group.GetGroupMemberRoleLevel:input_type -> OpenIMServer.group.GetGroupMemberRoleLevelReq - 62, // 61: OpenIMServer.group.group.GetGroupInfoCache:input_type -> OpenIMServer.group.GetGroupInfoCacheReq - 64, // 62: OpenIMServer.group.group.GetGroupMemberCache:input_type -> OpenIMServer.group.GetGroupMemberCacheReq - 66, // 63: OpenIMServer.group.group.GroupCreateCount:input_type -> OpenIMServer.group.GroupCreateCountReq - 1, // 64: OpenIMServer.group.group.createGroup:output_type -> OpenIMServer.group.CreateGroupResp - 13, // 65: OpenIMServer.group.group.joinGroup:output_type -> OpenIMServer.group.JoinGroupResp - 17, // 66: OpenIMServer.group.group.quitGroup:output_type -> OpenIMServer.group.QuitGroupResp - 3, // 67: OpenIMServer.group.group.getGroupsInfo:output_type -> OpenIMServer.group.GetGroupsInfoResp - 5, // 68: OpenIMServer.group.group.setGroupInfo:output_type -> OpenIMServer.group.SetGroupInfoResp - 7, // 69: OpenIMServer.group.group.getGroupApplicationList:output_type -> OpenIMServer.group.GetGroupApplicationListResp - 9, // 70: OpenIMServer.group.group.getUserReqApplicationList:output_type -> OpenIMServer.group.GetUserReqApplicationListResp - 11, // 71: OpenIMServer.group.group.transferGroupOwner:output_type -> OpenIMServer.group.TransferGroupOwnerResp - 15, // 72: OpenIMServer.group.group.groupApplicationResponse:output_type -> OpenIMServer.group.GroupApplicationResponseResp - 19, // 73: OpenIMServer.group.group.getGroupMemberList:output_type -> OpenIMServer.group.GetGroupMemberListResp - 21, // 74: OpenIMServer.group.group.getGroupMembersInfo:output_type -> OpenIMServer.group.GetGroupMembersInfoResp - 23, // 75: OpenIMServer.group.group.kickGroupMember:output_type -> OpenIMServer.group.KickGroupMemberResp - 25, // 76: OpenIMServer.group.group.getJoinedGroupList:output_type -> OpenIMServer.group.GetJoinedGroupListResp - 27, // 77: OpenIMServer.group.group.inviteUserToGroup:output_type -> OpenIMServer.group.InviteUserToGroupResp - 32, // 78: OpenIMServer.group.group.getGroups:output_type -> OpenIMServer.group.GetGroupsResp - 35, // 79: OpenIMServer.group.group.getGroupMembersCMS:output_type -> OpenIMServer.group.GetGroupMembersCMSResp - 37, // 80: OpenIMServer.group.group.dismissGroup:output_type -> OpenIMServer.group.DismissGroupResp - 39, // 81: OpenIMServer.group.group.muteGroupMember:output_type -> OpenIMServer.group.MuteGroupMemberResp - 41, // 82: OpenIMServer.group.group.cancelMuteGroupMember:output_type -> OpenIMServer.group.CancelMuteGroupMemberResp - 43, // 83: OpenIMServer.group.group.muteGroup:output_type -> OpenIMServer.group.MuteGroupResp - 45, // 84: OpenIMServer.group.group.cancelMuteGroup:output_type -> OpenIMServer.group.CancelMuteGroupResp - 47, // 85: OpenIMServer.group.group.getJoinedSuperGroupList:output_type -> OpenIMServer.group.GetJoinedSuperGroupListResp - 49, // 86: OpenIMServer.group.group.getSuperGroupsInfo:output_type -> OpenIMServer.group.GetSuperGroupsInfoResp - 52, // 87: OpenIMServer.group.group.setGroupMemberInfo:output_type -> OpenIMServer.group.SetGroupMemberInfoResp - 55, // 88: OpenIMServer.group.group.getGroupAbstractInfo:output_type -> OpenIMServer.group.GetGroupAbstractInfoResp - 57, // 89: OpenIMServer.group.group.getUserInGroupMembers:output_type -> OpenIMServer.group.GetUserInGroupMembersResp - 59, // 90: OpenIMServer.group.group.getGroupMemberUserIDs:output_type -> OpenIMServer.group.GetGroupMemberUserIDsResp - 61, // 91: OpenIMServer.group.group.GetGroupMemberRoleLevel:output_type -> OpenIMServer.group.GetGroupMemberRoleLevelResp - 63, // 92: OpenIMServer.group.group.GetGroupInfoCache:output_type -> OpenIMServer.group.GetGroupInfoCacheResp - 65, // 93: OpenIMServer.group.group.GetGroupMemberCache:output_type -> OpenIMServer.group.GetGroupMemberCacheResp - 67, // 94: OpenIMServer.group.group.GroupCreateCount:output_type -> OpenIMServer.group.GroupCreateCountResp - 64, // [64:95] is the sub-list for method output_type - 33, // [33:64] is the sub-list for method input_type - 33, // [33:33] is the sub-list for extension type_name - 33, // [33:33] is the sub-list for extension extendee - 0, // [0:33] is the sub-list for field type_name -} - -func init() { file_group_group_proto_init() } -func file_group_group_proto_init() { - if File_group_group_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_group_group_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGroupInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGroupInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupApplicationListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupApplicationListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserReqApplicationListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserReqApplicationListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TransferGroupOwnerReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TransferGroupOwnerResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JoinGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JoinGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationResponseReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationResponseResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QuitGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QuitGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*KickGroupMemberReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*KickGroupMemberResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinedGroupListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinedGroupListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InviteUserToGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InviteUserToGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupAllMemberReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupAllMemberResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CMSGroup); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersCMSReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersCMSResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DismissGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DismissGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MuteGroupMemberReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MuteGroupMemberResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CancelMuteGroupMemberReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CancelMuteGroupMemberResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MuteGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MuteGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CancelMuteGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CancelMuteGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinedSuperGroupListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetJoinedSuperGroupListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetSuperGroupsInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetSuperGroupsInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGroupMemberInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGroupMemberInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGroupMemberInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupAbstractInfoReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupAbstractInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupAbstractInfoResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserInGroupMembersReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserInGroupMembersResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberUserIDsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberUserIDsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberRoleLevelReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberRoleLevelResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupInfoCacheReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupInfoCacheResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberCacheReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMemberCacheResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupCreateCountReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_group_group_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupCreateCountResp); 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_group_group_proto_rawDesc, - NumEnums: 0, - NumMessages: 69, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_group_group_proto_goTypes, - DependencyIndexes: file_group_group_proto_depIdxs, - MessageInfos: file_group_group_proto_msgTypes, - }.Build() - File_group_group_proto = out.File - file_group_group_proto_rawDesc = nil - file_group_group_proto_goTypes = nil - file_group_group_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// GroupClient is the client API for Group service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type GroupClient interface { - // 创建群 - CreateGroup(ctx context.Context, in *CreateGroupReq, opts ...grpc.CallOption) (*CreateGroupResp, error) - // 申请加群 - JoinGroup(ctx context.Context, in *JoinGroupReq, opts ...grpc.CallOption) (*JoinGroupResp, error) - // 退出群 - QuitGroup(ctx context.Context, in *QuitGroupReq, opts ...grpc.CallOption) (*QuitGroupResp, error) - // 获取指定群信息 - GetGroupsInfo(ctx context.Context, in *GetGroupsInfoReq, opts ...grpc.CallOption) (*GetGroupsInfoResp, error) - // 设置群信息 - SetGroupInfo(ctx context.Context, in *SetGroupInfoReq, opts ...grpc.CallOption) (*SetGroupInfoResp, error) - // (以管理员或群主身份)获取群的加群申请 - GetGroupApplicationList(ctx context.Context, in *GetGroupApplicationListReq, opts ...grpc.CallOption) (*GetGroupApplicationListResp, error) - // 获取用户自己的主动加群申请 - GetUserReqApplicationList(ctx context.Context, in *GetUserReqApplicationListReq, opts ...grpc.CallOption) (*GetUserReqApplicationListResp, error) - // 转让群主 - TransferGroupOwner(ctx context.Context, in *TransferGroupOwnerReq, opts ...grpc.CallOption) (*TransferGroupOwnerResp, error) - // 群主或管理员处理进群申请 - GroupApplicationResponse(ctx context.Context, in *GroupApplicationResponseReq, opts ...grpc.CallOption) (*GroupApplicationResponseResp, error) - // 获取某个群的群成员 - GetGroupMemberList(ctx context.Context, in *GetGroupMemberListReq, opts ...grpc.CallOption) (*GetGroupMemberListResp, error) - // 获取某个群的指定群成员 - GetGroupMembersInfo(ctx context.Context, in *GetGroupMembersInfoReq, opts ...grpc.CallOption) (*GetGroupMembersInfoResp, error) - // 踢出群 - KickGroupMember(ctx context.Context, in *KickGroupMemberReq, opts ...grpc.CallOption) (*KickGroupMemberResp, error) - // 获取某个人已加入群 - GetJoinedGroupList(ctx context.Context, in *GetJoinedGroupListReq, opts ...grpc.CallOption) (*GetJoinedGroupListResp, error) - // 邀请某些人进群 - InviteUserToGroup(ctx context.Context, in *InviteUserToGroupReq, opts ...grpc.CallOption) (*InviteUserToGroupResp, error) - GetGroups(ctx context.Context, in *GetGroupsReq, opts ...grpc.CallOption) (*GetGroupsResp, error) - GetGroupMembersCMS(ctx context.Context, in *GetGroupMembersCMSReq, opts ...grpc.CallOption) (*GetGroupMembersCMSResp, error) - // 解散群 - DismissGroup(ctx context.Context, in *DismissGroupReq, opts ...grpc.CallOption) (*DismissGroupResp, error) - // 对某个群成员禁言 - MuteGroupMember(ctx context.Context, in *MuteGroupMemberReq, opts ...grpc.CallOption) (*MuteGroupMemberResp, error) - // 对某个群成员取消禁言 - CancelMuteGroupMember(ctx context.Context, in *CancelMuteGroupMemberReq, opts ...grpc.CallOption) (*CancelMuteGroupMemberResp, error) - // 对某个群禁言 - MuteGroup(ctx context.Context, in *MuteGroupReq, opts ...grpc.CallOption) (*MuteGroupResp, error) - // 对某个群取消禁言 - CancelMuteGroup(ctx context.Context, in *CancelMuteGroupReq, opts ...grpc.CallOption) (*CancelMuteGroupResp, error) - // 获取某个用户加入的超级群 - GetJoinedSuperGroupList(ctx context.Context, in *GetJoinedSuperGroupListReq, opts ...grpc.CallOption) (*GetJoinedSuperGroupListResp, error) - // 获取指定的超级群信息 - GetSuperGroupsInfo(ctx context.Context, in *GetSuperGroupsInfoReq, opts ...grpc.CallOption) (*GetSuperGroupsInfoResp, error) - // 设置群成员昵称 - // 设置群成员信息 - SetGroupMemberInfo(ctx context.Context, in *SetGroupMemberInfoReq, opts ...grpc.CallOption) (*SetGroupMemberInfoResp, error) - // 获取群信息hash值 - GetGroupAbstractInfo(ctx context.Context, in *GetGroupAbstractInfoReq, opts ...grpc.CallOption) (*GetGroupAbstractInfoResp, error) - // 获取某个用户在指定群中的信息 - GetUserInGroupMembers(ctx context.Context, in *GetUserInGroupMembersReq, opts ...grpc.CallOption) (*GetUserInGroupMembersResp, error) - // 获取群成员用户ID - GetGroupMemberUserIDs(ctx context.Context, in *GetGroupMemberUserIDsReq, opts ...grpc.CallOption) (*GetGroupMemberUserIDsResp, error) - // 查询群组中对应级别的成员 - GetGroupMemberRoleLevel(ctx context.Context, in *GetGroupMemberRoleLevelReq, opts ...grpc.CallOption) (*GetGroupMemberRoleLevelResp, error) - GetGroupInfoCache(ctx context.Context, in *GetGroupInfoCacheReq, opts ...grpc.CallOption) (*GetGroupInfoCacheResp, error) - GetGroupMemberCache(ctx context.Context, in *GetGroupMemberCacheReq, opts ...grpc.CallOption) (*GetGroupMemberCacheResp, error) - GroupCreateCount(ctx context.Context, in *GroupCreateCountReq, opts ...grpc.CallOption) (*GroupCreateCountResp, error) -} - -type groupClient struct { - cc grpc.ClientConnInterface -} - -func NewGroupClient(cc grpc.ClientConnInterface) GroupClient { - return &groupClient{cc} -} - -func (c *groupClient) CreateGroup(ctx context.Context, in *CreateGroupReq, opts ...grpc.CallOption) (*CreateGroupResp, error) { - out := new(CreateGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/createGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) JoinGroup(ctx context.Context, in *JoinGroupReq, opts ...grpc.CallOption) (*JoinGroupResp, error) { - out := new(JoinGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/joinGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) QuitGroup(ctx context.Context, in *QuitGroupReq, opts ...grpc.CallOption) (*QuitGroupResp, error) { - out := new(QuitGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/quitGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupsInfo(ctx context.Context, in *GetGroupsInfoReq, opts ...grpc.CallOption) (*GetGroupsInfoResp, error) { - out := new(GetGroupsInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupsInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) SetGroupInfo(ctx context.Context, in *SetGroupInfoReq, opts ...grpc.CallOption) (*SetGroupInfoResp, error) { - out := new(SetGroupInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/setGroupInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupApplicationList(ctx context.Context, in *GetGroupApplicationListReq, opts ...grpc.CallOption) (*GetGroupApplicationListResp, error) { - out := new(GetGroupApplicationListResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupApplicationList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetUserReqApplicationList(ctx context.Context, in *GetUserReqApplicationListReq, opts ...grpc.CallOption) (*GetUserReqApplicationListResp, error) { - out := new(GetUserReqApplicationListResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getUserReqApplicationList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) TransferGroupOwner(ctx context.Context, in *TransferGroupOwnerReq, opts ...grpc.CallOption) (*TransferGroupOwnerResp, error) { - out := new(TransferGroupOwnerResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/transferGroupOwner", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GroupApplicationResponse(ctx context.Context, in *GroupApplicationResponseReq, opts ...grpc.CallOption) (*GroupApplicationResponseResp, error) { - out := new(GroupApplicationResponseResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/groupApplicationResponse", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMemberList(ctx context.Context, in *GetGroupMemberListReq, opts ...grpc.CallOption) (*GetGroupMemberListResp, error) { - out := new(GetGroupMemberListResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupMemberList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMembersInfo(ctx context.Context, in *GetGroupMembersInfoReq, opts ...grpc.CallOption) (*GetGroupMembersInfoResp, error) { - out := new(GetGroupMembersInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupMembersInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) KickGroupMember(ctx context.Context, in *KickGroupMemberReq, opts ...grpc.CallOption) (*KickGroupMemberResp, error) { - out := new(KickGroupMemberResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/kickGroupMember", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetJoinedGroupList(ctx context.Context, in *GetJoinedGroupListReq, opts ...grpc.CallOption) (*GetJoinedGroupListResp, error) { - out := new(GetJoinedGroupListResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getJoinedGroupList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) InviteUserToGroup(ctx context.Context, in *InviteUserToGroupReq, opts ...grpc.CallOption) (*InviteUserToGroupResp, error) { - out := new(InviteUserToGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/inviteUserToGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroups(ctx context.Context, in *GetGroupsReq, opts ...grpc.CallOption) (*GetGroupsResp, error) { - out := new(GetGroupsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroups", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMembersCMS(ctx context.Context, in *GetGroupMembersCMSReq, opts ...grpc.CallOption) (*GetGroupMembersCMSResp, error) { - out := new(GetGroupMembersCMSResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupMembersCMS", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) DismissGroup(ctx context.Context, in *DismissGroupReq, opts ...grpc.CallOption) (*DismissGroupResp, error) { - out := new(DismissGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/dismissGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) MuteGroupMember(ctx context.Context, in *MuteGroupMemberReq, opts ...grpc.CallOption) (*MuteGroupMemberResp, error) { - out := new(MuteGroupMemberResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/muteGroupMember", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) CancelMuteGroupMember(ctx context.Context, in *CancelMuteGroupMemberReq, opts ...grpc.CallOption) (*CancelMuteGroupMemberResp, error) { - out := new(CancelMuteGroupMemberResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/cancelMuteGroupMember", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) MuteGroup(ctx context.Context, in *MuteGroupReq, opts ...grpc.CallOption) (*MuteGroupResp, error) { - out := new(MuteGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/muteGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) CancelMuteGroup(ctx context.Context, in *CancelMuteGroupReq, opts ...grpc.CallOption) (*CancelMuteGroupResp, error) { - out := new(CancelMuteGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/cancelMuteGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetJoinedSuperGroupList(ctx context.Context, in *GetJoinedSuperGroupListReq, opts ...grpc.CallOption) (*GetJoinedSuperGroupListResp, error) { - out := new(GetJoinedSuperGroupListResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getJoinedSuperGroupList", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetSuperGroupsInfo(ctx context.Context, in *GetSuperGroupsInfoReq, opts ...grpc.CallOption) (*GetSuperGroupsInfoResp, error) { - out := new(GetSuperGroupsInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getSuperGroupsInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) SetGroupMemberInfo(ctx context.Context, in *SetGroupMemberInfoReq, opts ...grpc.CallOption) (*SetGroupMemberInfoResp, error) { - out := new(SetGroupMemberInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/setGroupMemberInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupAbstractInfo(ctx context.Context, in *GetGroupAbstractInfoReq, opts ...grpc.CallOption) (*GetGroupAbstractInfoResp, error) { - out := new(GetGroupAbstractInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupAbstractInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetUserInGroupMembers(ctx context.Context, in *GetUserInGroupMembersReq, opts ...grpc.CallOption) (*GetUserInGroupMembersResp, error) { - out := new(GetUserInGroupMembersResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getUserInGroupMembers", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMemberUserIDs(ctx context.Context, in *GetGroupMemberUserIDsReq, opts ...grpc.CallOption) (*GetGroupMemberUserIDsResp, error) { - out := new(GetGroupMemberUserIDsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/getGroupMemberUserIDs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMemberRoleLevel(ctx context.Context, in *GetGroupMemberRoleLevelReq, opts ...grpc.CallOption) (*GetGroupMemberRoleLevelResp, error) { - out := new(GetGroupMemberRoleLevelResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/GetGroupMemberRoleLevel", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupInfoCache(ctx context.Context, in *GetGroupInfoCacheReq, opts ...grpc.CallOption) (*GetGroupInfoCacheResp, error) { - out := new(GetGroupInfoCacheResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/GetGroupInfoCache", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GetGroupMemberCache(ctx context.Context, in *GetGroupMemberCacheReq, opts ...grpc.CallOption) (*GetGroupMemberCacheResp, error) { - out := new(GetGroupMemberCacheResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/GetGroupMemberCache", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *groupClient) GroupCreateCount(ctx context.Context, in *GroupCreateCountReq, opts ...grpc.CallOption) (*GroupCreateCountResp, error) { - out := new(GroupCreateCountResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.group.group/GroupCreateCount", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// GroupServer is the server API for Group service. -type GroupServer interface { - // 创建群 - CreateGroup(context.Context, *CreateGroupReq) (*CreateGroupResp, error) - // 申请加群 - JoinGroup(context.Context, *JoinGroupReq) (*JoinGroupResp, error) - // 退出群 - QuitGroup(context.Context, *QuitGroupReq) (*QuitGroupResp, error) - // 获取指定群信息 - GetGroupsInfo(context.Context, *GetGroupsInfoReq) (*GetGroupsInfoResp, error) - // 设置群信息 - SetGroupInfo(context.Context, *SetGroupInfoReq) (*SetGroupInfoResp, error) - // (以管理员或群主身份)获取群的加群申请 - GetGroupApplicationList(context.Context, *GetGroupApplicationListReq) (*GetGroupApplicationListResp, error) - // 获取用户自己的主动加群申请 - GetUserReqApplicationList(context.Context, *GetUserReqApplicationListReq) (*GetUserReqApplicationListResp, error) - // 转让群主 - TransferGroupOwner(context.Context, *TransferGroupOwnerReq) (*TransferGroupOwnerResp, error) - // 群主或管理员处理进群申请 - GroupApplicationResponse(context.Context, *GroupApplicationResponseReq) (*GroupApplicationResponseResp, error) - // 获取某个群的群成员 - GetGroupMemberList(context.Context, *GetGroupMemberListReq) (*GetGroupMemberListResp, error) - // 获取某个群的指定群成员 - GetGroupMembersInfo(context.Context, *GetGroupMembersInfoReq) (*GetGroupMembersInfoResp, error) - // 踢出群 - KickGroupMember(context.Context, *KickGroupMemberReq) (*KickGroupMemberResp, error) - // 获取某个人已加入群 - GetJoinedGroupList(context.Context, *GetJoinedGroupListReq) (*GetJoinedGroupListResp, error) - // 邀请某些人进群 - InviteUserToGroup(context.Context, *InviteUserToGroupReq) (*InviteUserToGroupResp, error) - GetGroups(context.Context, *GetGroupsReq) (*GetGroupsResp, error) - GetGroupMembersCMS(context.Context, *GetGroupMembersCMSReq) (*GetGroupMembersCMSResp, error) - // 解散群 - DismissGroup(context.Context, *DismissGroupReq) (*DismissGroupResp, error) - // 对某个群成员禁言 - MuteGroupMember(context.Context, *MuteGroupMemberReq) (*MuteGroupMemberResp, error) - // 对某个群成员取消禁言 - CancelMuteGroupMember(context.Context, *CancelMuteGroupMemberReq) (*CancelMuteGroupMemberResp, error) - // 对某个群禁言 - MuteGroup(context.Context, *MuteGroupReq) (*MuteGroupResp, error) - // 对某个群取消禁言 - CancelMuteGroup(context.Context, *CancelMuteGroupReq) (*CancelMuteGroupResp, error) - // 获取某个用户加入的超级群 - GetJoinedSuperGroupList(context.Context, *GetJoinedSuperGroupListReq) (*GetJoinedSuperGroupListResp, error) - // 获取指定的超级群信息 - GetSuperGroupsInfo(context.Context, *GetSuperGroupsInfoReq) (*GetSuperGroupsInfoResp, error) - // 设置群成员昵称 - // 设置群成员信息 - SetGroupMemberInfo(context.Context, *SetGroupMemberInfoReq) (*SetGroupMemberInfoResp, error) - // 获取群信息hash值 - GetGroupAbstractInfo(context.Context, *GetGroupAbstractInfoReq) (*GetGroupAbstractInfoResp, error) - // 获取某个用户在指定群中的信息 - GetUserInGroupMembers(context.Context, *GetUserInGroupMembersReq) (*GetUserInGroupMembersResp, error) - // 获取群成员用户ID - GetGroupMemberUserIDs(context.Context, *GetGroupMemberUserIDsReq) (*GetGroupMemberUserIDsResp, error) - // 查询群组中对应级别的成员 - GetGroupMemberRoleLevel(context.Context, *GetGroupMemberRoleLevelReq) (*GetGroupMemberRoleLevelResp, error) - GetGroupInfoCache(context.Context, *GetGroupInfoCacheReq) (*GetGroupInfoCacheResp, error) - GetGroupMemberCache(context.Context, *GetGroupMemberCacheReq) (*GetGroupMemberCacheResp, error) - GroupCreateCount(context.Context, *GroupCreateCountReq) (*GroupCreateCountResp, error) -} - -// UnimplementedGroupServer can be embedded to have forward compatible implementations. -type UnimplementedGroupServer struct { -} - -func (*UnimplementedGroupServer) CreateGroup(context.Context, *CreateGroupReq) (*CreateGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateGroup not implemented") -} -func (*UnimplementedGroupServer) JoinGroup(context.Context, *JoinGroupReq) (*JoinGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method JoinGroup not implemented") -} -func (*UnimplementedGroupServer) QuitGroup(context.Context, *QuitGroupReq) (*QuitGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method QuitGroup not implemented") -} -func (*UnimplementedGroupServer) GetGroupsInfo(context.Context, *GetGroupsInfoReq) (*GetGroupsInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupsInfo not implemented") -} -func (*UnimplementedGroupServer) SetGroupInfo(context.Context, *SetGroupInfoReq) (*SetGroupInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetGroupInfo not implemented") -} -func (*UnimplementedGroupServer) GetGroupApplicationList(context.Context, *GetGroupApplicationListReq) (*GetGroupApplicationListResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupApplicationList not implemented") -} -func (*UnimplementedGroupServer) GetUserReqApplicationList(context.Context, *GetUserReqApplicationListReq) (*GetUserReqApplicationListResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUserReqApplicationList not implemented") -} -func (*UnimplementedGroupServer) TransferGroupOwner(context.Context, *TransferGroupOwnerReq) (*TransferGroupOwnerResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method TransferGroupOwner not implemented") -} -func (*UnimplementedGroupServer) GroupApplicationResponse(context.Context, *GroupApplicationResponseReq) (*GroupApplicationResponseResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GroupApplicationResponse not implemented") -} -func (*UnimplementedGroupServer) GetGroupMemberList(context.Context, *GetGroupMemberListReq) (*GetGroupMemberListResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMemberList not implemented") -} -func (*UnimplementedGroupServer) GetGroupMembersInfo(context.Context, *GetGroupMembersInfoReq) (*GetGroupMembersInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMembersInfo not implemented") -} -func (*UnimplementedGroupServer) KickGroupMember(context.Context, *KickGroupMemberReq) (*KickGroupMemberResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method KickGroupMember not implemented") -} -func (*UnimplementedGroupServer) GetJoinedGroupList(context.Context, *GetJoinedGroupListReq) (*GetJoinedGroupListResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetJoinedGroupList not implemented") -} -func (*UnimplementedGroupServer) InviteUserToGroup(context.Context, *InviteUserToGroupReq) (*InviteUserToGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method InviteUserToGroup not implemented") -} -func (*UnimplementedGroupServer) GetGroups(context.Context, *GetGroupsReq) (*GetGroupsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroups not implemented") -} -func (*UnimplementedGroupServer) GetGroupMembersCMS(context.Context, *GetGroupMembersCMSReq) (*GetGroupMembersCMSResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMembersCMS not implemented") -} -func (*UnimplementedGroupServer) DismissGroup(context.Context, *DismissGroupReq) (*DismissGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DismissGroup not implemented") -} -func (*UnimplementedGroupServer) MuteGroupMember(context.Context, *MuteGroupMemberReq) (*MuteGroupMemberResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method MuteGroupMember not implemented") -} -func (*UnimplementedGroupServer) CancelMuteGroupMember(context.Context, *CancelMuteGroupMemberReq) (*CancelMuteGroupMemberResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CancelMuteGroupMember not implemented") -} -func (*UnimplementedGroupServer) MuteGroup(context.Context, *MuteGroupReq) (*MuteGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method MuteGroup not implemented") -} -func (*UnimplementedGroupServer) CancelMuteGroup(context.Context, *CancelMuteGroupReq) (*CancelMuteGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CancelMuteGroup not implemented") -} -func (*UnimplementedGroupServer) GetJoinedSuperGroupList(context.Context, *GetJoinedSuperGroupListReq) (*GetJoinedSuperGroupListResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetJoinedSuperGroupList not implemented") -} -func (*UnimplementedGroupServer) GetSuperGroupsInfo(context.Context, *GetSuperGroupsInfoReq) (*GetSuperGroupsInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetSuperGroupsInfo not implemented") -} -func (*UnimplementedGroupServer) SetGroupMemberInfo(context.Context, *SetGroupMemberInfoReq) (*SetGroupMemberInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetGroupMemberInfo not implemented") -} -func (*UnimplementedGroupServer) GetGroupAbstractInfo(context.Context, *GetGroupAbstractInfoReq) (*GetGroupAbstractInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupAbstractInfo not implemented") -} -func (*UnimplementedGroupServer) GetUserInGroupMembers(context.Context, *GetUserInGroupMembersReq) (*GetUserInGroupMembersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUserInGroupMembers not implemented") -} -func (*UnimplementedGroupServer) GetGroupMemberUserIDs(context.Context, *GetGroupMemberUserIDsReq) (*GetGroupMemberUserIDsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMemberUserIDs not implemented") -} -func (*UnimplementedGroupServer) GetGroupMemberRoleLevel(context.Context, *GetGroupMemberRoleLevelReq) (*GetGroupMemberRoleLevelResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMemberRoleLevel not implemented") -} -func (*UnimplementedGroupServer) GetGroupInfoCache(context.Context, *GetGroupInfoCacheReq) (*GetGroupInfoCacheResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupInfoCache not implemented") -} -func (*UnimplementedGroupServer) GetGroupMemberCache(context.Context, *GetGroupMemberCacheReq) (*GetGroupMemberCacheResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGroupMemberCache not implemented") -} -func (*UnimplementedGroupServer) GroupCreateCount(context.Context, *GroupCreateCountReq) (*GroupCreateCountResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GroupCreateCount not implemented") -} - -func RegisterGroupServer(s *grpc.Server, srv GroupServer) { - s.RegisterService(&_Group_serviceDesc, srv) -} - -func _Group_CreateGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).CreateGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/CreateGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).CreateGroup(ctx, req.(*CreateGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_JoinGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(JoinGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).JoinGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/JoinGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).JoinGroup(ctx, req.(*JoinGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_QuitGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QuitGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).QuitGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/QuitGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).QuitGroup(ctx, req.(*QuitGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupsInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupsInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupsInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupsInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupsInfo(ctx, req.(*GetGroupsInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_SetGroupInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetGroupInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).SetGroupInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/SetGroupInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).SetGroupInfo(ctx, req.(*SetGroupInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupApplicationList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupApplicationListReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupApplicationList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupApplicationList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupApplicationList(ctx, req.(*GetGroupApplicationListReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetUserReqApplicationList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetUserReqApplicationListReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetUserReqApplicationList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetUserReqApplicationList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetUserReqApplicationList(ctx, req.(*GetUserReqApplicationListReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_TransferGroupOwner_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(TransferGroupOwnerReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).TransferGroupOwner(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/TransferGroupOwner", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).TransferGroupOwner(ctx, req.(*TransferGroupOwnerReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GroupApplicationResponse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GroupApplicationResponseReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GroupApplicationResponse(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GroupApplicationResponse", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GroupApplicationResponse(ctx, req.(*GroupApplicationResponseReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMemberList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMemberListReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMemberList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMemberList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMemberList(ctx, req.(*GetGroupMemberListReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMembersInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMembersInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMembersInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMembersInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMembersInfo(ctx, req.(*GetGroupMembersInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_KickGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(KickGroupMemberReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).KickGroupMember(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/KickGroupMember", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).KickGroupMember(ctx, req.(*KickGroupMemberReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetJoinedGroupList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetJoinedGroupListReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetJoinedGroupList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetJoinedGroupList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetJoinedGroupList(ctx, req.(*GetJoinedGroupListReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_InviteUserToGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(InviteUserToGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).InviteUserToGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/InviteUserToGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).InviteUserToGroup(ctx, req.(*InviteUserToGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroups(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroups", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroups(ctx, req.(*GetGroupsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMembersCMS_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMembersCMSReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMembersCMS(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMembersCMS", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMembersCMS(ctx, req.(*GetGroupMembersCMSReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_DismissGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DismissGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).DismissGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/DismissGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).DismissGroup(ctx, req.(*DismissGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_MuteGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MuteGroupMemberReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).MuteGroupMember(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/MuteGroupMember", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).MuteGroupMember(ctx, req.(*MuteGroupMemberReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_CancelMuteGroupMember_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CancelMuteGroupMemberReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).CancelMuteGroupMember(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/CancelMuteGroupMember", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).CancelMuteGroupMember(ctx, req.(*CancelMuteGroupMemberReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_MuteGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MuteGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).MuteGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/MuteGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).MuteGroup(ctx, req.(*MuteGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_CancelMuteGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CancelMuteGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).CancelMuteGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/CancelMuteGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).CancelMuteGroup(ctx, req.(*CancelMuteGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetJoinedSuperGroupList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetJoinedSuperGroupListReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetJoinedSuperGroupList(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetJoinedSuperGroupList", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetJoinedSuperGroupList(ctx, req.(*GetJoinedSuperGroupListReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetSuperGroupsInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetSuperGroupsInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetSuperGroupsInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetSuperGroupsInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetSuperGroupsInfo(ctx, req.(*GetSuperGroupsInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_SetGroupMemberInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetGroupMemberInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).SetGroupMemberInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/SetGroupMemberInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).SetGroupMemberInfo(ctx, req.(*SetGroupMemberInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupAbstractInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupAbstractInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupAbstractInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupAbstractInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupAbstractInfo(ctx, req.(*GetGroupAbstractInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetUserInGroupMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetUserInGroupMembersReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetUserInGroupMembers(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetUserInGroupMembers", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetUserInGroupMembers(ctx, req.(*GetUserInGroupMembersReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMemberUserIDs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMemberUserIDsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMemberUserIDs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMemberUserIDs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMemberUserIDs(ctx, req.(*GetGroupMemberUserIDsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMemberRoleLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMemberRoleLevelReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMemberRoleLevel(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMemberRoleLevel", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMemberRoleLevel(ctx, req.(*GetGroupMemberRoleLevelReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupInfoCache_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupInfoCacheReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupInfoCache(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupInfoCache", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupInfoCache(ctx, req.(*GetGroupInfoCacheReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GetGroupMemberCache_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGroupMemberCacheReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GetGroupMemberCache(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GetGroupMemberCache", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GetGroupMemberCache(ctx, req.(*GetGroupMemberCacheReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Group_GroupCreateCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GroupCreateCountReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(GroupServer).GroupCreateCount(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.group.group/GroupCreateCount", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(GroupServer).GroupCreateCount(ctx, req.(*GroupCreateCountReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Group_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.group.group", - HandlerType: (*GroupServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "createGroup", - Handler: _Group_CreateGroup_Handler, - }, - { - MethodName: "joinGroup", - Handler: _Group_JoinGroup_Handler, - }, - { - MethodName: "quitGroup", - Handler: _Group_QuitGroup_Handler, - }, - { - MethodName: "getGroupsInfo", - Handler: _Group_GetGroupsInfo_Handler, - }, - { - MethodName: "setGroupInfo", - Handler: _Group_SetGroupInfo_Handler, - }, - { - MethodName: "getGroupApplicationList", - Handler: _Group_GetGroupApplicationList_Handler, - }, - { - MethodName: "getUserReqApplicationList", - Handler: _Group_GetUserReqApplicationList_Handler, - }, - { - MethodName: "transferGroupOwner", - Handler: _Group_TransferGroupOwner_Handler, - }, - { - MethodName: "groupApplicationResponse", - Handler: _Group_GroupApplicationResponse_Handler, - }, - { - MethodName: "getGroupMemberList", - Handler: _Group_GetGroupMemberList_Handler, - }, - { - MethodName: "getGroupMembersInfo", - Handler: _Group_GetGroupMembersInfo_Handler, - }, - { - MethodName: "kickGroupMember", - Handler: _Group_KickGroupMember_Handler, - }, - { - MethodName: "getJoinedGroupList", - Handler: _Group_GetJoinedGroupList_Handler, - }, - { - MethodName: "inviteUserToGroup", - Handler: _Group_InviteUserToGroup_Handler, - }, - { - MethodName: "getGroups", - Handler: _Group_GetGroups_Handler, - }, - { - MethodName: "getGroupMembersCMS", - Handler: _Group_GetGroupMembersCMS_Handler, - }, - { - MethodName: "dismissGroup", - Handler: _Group_DismissGroup_Handler, - }, - { - MethodName: "muteGroupMember", - Handler: _Group_MuteGroupMember_Handler, - }, - { - MethodName: "cancelMuteGroupMember", - Handler: _Group_CancelMuteGroupMember_Handler, - }, - { - MethodName: "muteGroup", - Handler: _Group_MuteGroup_Handler, - }, - { - MethodName: "cancelMuteGroup", - Handler: _Group_CancelMuteGroup_Handler, - }, - { - MethodName: "getJoinedSuperGroupList", - Handler: _Group_GetJoinedSuperGroupList_Handler, - }, - { - MethodName: "getSuperGroupsInfo", - Handler: _Group_GetSuperGroupsInfo_Handler, - }, - { - MethodName: "setGroupMemberInfo", - Handler: _Group_SetGroupMemberInfo_Handler, - }, - { - MethodName: "getGroupAbstractInfo", - Handler: _Group_GetGroupAbstractInfo_Handler, - }, - { - MethodName: "getUserInGroupMembers", - Handler: _Group_GetUserInGroupMembers_Handler, - }, - { - MethodName: "getGroupMemberUserIDs", - Handler: _Group_GetGroupMemberUserIDs_Handler, - }, - { - MethodName: "GetGroupMemberRoleLevel", - Handler: _Group_GetGroupMemberRoleLevel_Handler, - }, - { - MethodName: "GetGroupInfoCache", - Handler: _Group_GetGroupInfoCache_Handler, - }, - { - MethodName: "GetGroupMemberCache", - Handler: _Group_GetGroupMemberCache_Handler, - }, - { - MethodName: "GroupCreateCount", - Handler: _Group_GroupCreateCount_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "group/group.proto", -} diff --git a/pkg/proto/group/group.proto b/pkg/proto/group/group.proto deleted file mode 100644 index 9379ebe86..000000000 --- a/pkg/proto/group/group.proto +++ /dev/null @@ -1,417 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.group; -import "sdkws/sdkws.proto"; -import "wrapperspb/wrapperspb.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group"; - - - -message CreateGroupReq{ - repeated string memberUserIDs = 1; - sdkws.GroupInfo groupInfo = 2; - repeated string adminUserIDs = 3; - string ownerUserID = 4; //owner -} -message CreateGroupResp{ - sdkws.GroupInfo groupInfo = 1; -} - - -message GetGroupsInfoReq{ - repeated string groupIDs = 1; -} -message GetGroupsInfoResp{ - repeated sdkws.GroupInfo groupInfos = 1; -} - - -message SetGroupInfoReq{ - sdkws.GroupInfoForSet groupInfoForSet = 1; -} -message SetGroupInfoResp{ -} - - -message GetGroupApplicationListReq { - sdkws.RequestPagination pagination = 1; - string fromUserID = 2; //owner or admin -} -message GetGroupApplicationListResp { - uint32 total = 1; - repeated sdkws.GroupRequest groupRequests = 2; -} - -message GetUserReqApplicationListReq{ - sdkws.RequestPagination pagination = 1; - string userID = 2; -} - -message GetUserReqApplicationListResp{ - uint32 total = 1; - repeated sdkws.GroupRequest groupRequests = 2; -} - - -message TransferGroupOwnerReq { - string groupID = 1; - string oldOwnerUserID = 2; - string newOwnerUserID = 3; -} -message TransferGroupOwnerResp{ - -} - -message JoinGroupReq{ - string groupID = 1; - string reqMessage = 2; - int32 joinSource = 3; - string inviterUserID = 4; -} -message JoinGroupResp{ -} - - -message GroupApplicationResponseReq{ - string groupID = 1; - string fromUserID = 2; // - string handledMsg = 3; - int32 handleResult = 4; -} -message GroupApplicationResponseResp{ - -} - - - -message QuitGroupReq{ - string groupID = 1; -} -message QuitGroupResp{ -} - - -message GetGroupMemberListReq { - sdkws.RequestPagination pagination = 1; - string groupID = 2; - int32 filter = 3; -} - -message GetGroupMemberListResp { - uint32 total = 1; - repeated sdkws.GroupMemberFullInfo members = 2; -} - - -message GetGroupMembersInfoReq { - string groupID = 1; - repeated string userIDs = 2; -} - -message GetGroupMembersInfoResp { - repeated sdkws.GroupMemberFullInfo members = 1; -} - -message KickGroupMemberReq { - string groupID = 1; - repeated string kickedUserIDs = 2; - string reason = 3; -} - -message KickGroupMemberResp { - -} - - -message GetJoinedGroupListReq { - sdkws.RequestPagination pagination = 1; - string fromUserID = 2; -} -message GetJoinedGroupListResp{ - uint32 total = 1; - repeated sdkws.GroupInfo groups = 2; -} - - -message InviteUserToGroupReq { - string groupID = 1; - string reason = 2; - repeated string invitedUserIDs = 3; -} -message InviteUserToGroupResp { - -} - - -message GetGroupAllMemberReq { - sdkws.RequestPagination pagination = 1; - string groupID = 2; -} -message GetGroupAllMemberResp { - repeated sdkws.GroupMemberFullInfo members = 1; -} - -message CMSGroup { - sdkws.GroupInfo groupInfo = 1; - string groupOwnerUserName = 2; - string groupOwnerUserID = 3; -} - - -message GetGroupsReq { - sdkws.RequestPagination pagination = 1; - string groupName = 2; - string groupID = 3; -} - -message GetGroupsResp { - uint32 total = 1; - repeated CMSGroup groups = 2; -} - -message GetGroupMemberReq { - string groupID = 1; -} - -message GetGroupMembersCMSReq { - sdkws.RequestPagination pagination = 1; - string groupID = 2; - string userName = 3; -} - -message GetGroupMembersCMSResp { - uint32 total = 1; - repeated sdkws.GroupMemberFullInfo members = 2; -} - -message DismissGroupReq{ - string groupID = 1; - bool deleteMember = 2; -} - -message DismissGroupResp{ -} - - -message MuteGroupMemberReq{ - string groupID = 1; - string userID = 2; - uint32 mutedSeconds = 3; -} - -message MuteGroupMemberResp{ -} - - - -message CancelMuteGroupMemberReq{ - string groupID = 1; - string userID = 2; -} - -message CancelMuteGroupMemberResp{ -} - - -message MuteGroupReq{ - string groupID = 1; -} - -message MuteGroupResp{ -} - - - -message CancelMuteGroupReq{ - string groupID = 1; -} - -message CancelMuteGroupResp{ -} - -message GetJoinedSuperGroupListReq { - string userID = 1; -} - -message GetJoinedSuperGroupListResp { - repeated sdkws.GroupInfo groups = 1; -} - -message GetSuperGroupsInfoReq { - repeated string groupIDs = 1; -} - -message GetSuperGroupsInfoResp { - repeated sdkws.GroupInfo groupInfos = 1; -} - -message SetGroupMemberInfo{ - string groupID = 1; - string userID = 2; - OpenIMServer.protobuf.StringValue nickname = 3; - OpenIMServer.protobuf.StringValue faceURL = 4; - OpenIMServer.protobuf.Int32Value roleLevel = 5; - OpenIMServer.protobuf.StringValue ex = 6; -} - -message SetGroupMemberInfoReq{ - repeated SetGroupMemberInfo members = 1; -} - -message SetGroupMemberInfoResp{ - -} - -message GetGroupAbstractInfoReq{ - repeated string groupIDs = 1; -} - -message GroupAbstractInfo{ - string groupID = 1; - uint32 groupMemberNumber = 2; - uint64 groupMemberListHash = 3; -} - -message GetGroupAbstractInfoResp{ - repeated GroupAbstractInfo groupAbstractInfos = 1; -} - -message GetUserInGroupMembersReq { - string userID = 1; - repeated string groupIDs = 2; -} - -message GetUserInGroupMembersResp{ - repeated sdkws.GroupMemberFullInfo members = 1; -} - -message GetGroupMemberUserIDsReq{ - string groupID = 1; -} - -message GetGroupMemberUserIDsResp{ - repeated string userIDs = 1; -} - -message GetGroupMemberRoleLevelReq{ - string groupID = 1; - repeated int32 roleLevels = 2; -} - -message GetGroupMemberRoleLevelResp { - repeated sdkws.GroupMemberFullInfo members = 1; -} - -message GetGroupInfoCacheReq { - string groupID = 1; -} - -message GetGroupInfoCacheResp { - sdkws.GroupInfo groupInfo = 1; -} - -message GetGroupMemberCacheReq { - string groupID = 1; - string groupMemberID = 2; -} - -message GetGroupMemberCacheResp { - sdkws.GroupMemberFullInfo member = 1; -} - -message GroupCreateCountReq { - int64 start = 1; - int64 end = 2; -} - -message GroupCreateCountResp { - int64 total = 1; - int64 before = 2; - map<string, int64> count = 3; -} - -service group{ - //创建群 - rpc createGroup(CreateGroupReq) returns(CreateGroupResp); - //申请加群 - rpc joinGroup(JoinGroupReq) returns(JoinGroupResp); - //退出群 - rpc quitGroup(QuitGroupReq) returns(QuitGroupResp); - //获取指定群信息 - rpc getGroupsInfo(GetGroupsInfoReq) returns(GetGroupsInfoResp); - //设置群信息 - rpc setGroupInfo(SetGroupInfoReq) returns(SetGroupInfoResp); - //(以管理员或群主身份)获取群的加群申请 - rpc getGroupApplicationList(GetGroupApplicationListReq) returns(GetGroupApplicationListResp); - //获取用户自己的主动加群申请 - rpc getUserReqApplicationList(GetUserReqApplicationListReq) returns(GetUserReqApplicationListResp); - //转让群主 - rpc transferGroupOwner(TransferGroupOwnerReq) returns(TransferGroupOwnerResp); - //群主或管理员处理进群申请 - rpc groupApplicationResponse(GroupApplicationResponseReq) returns(GroupApplicationResponseResp); - //获取某个群的群成员 - rpc getGroupMemberList(GetGroupMemberListReq) returns(GetGroupMemberListResp); - //获取某个群的指定群成员 - rpc getGroupMembersInfo(GetGroupMembersInfoReq) returns(GetGroupMembersInfoResp); - //踢出群 - rpc kickGroupMember(KickGroupMemberReq) returns (KickGroupMemberResp); - //获取某个人已加入群 - rpc getJoinedGroupList(GetJoinedGroupListReq) returns (GetJoinedGroupListResp); - //邀请某些人进群 - rpc inviteUserToGroup(InviteUserToGroupReq) returns (InviteUserToGroupResp); - - rpc getGroups(GetGroupsReq) returns(GetGroupsResp); - rpc getGroupMembersCMS(GetGroupMembersCMSReq) returns(GetGroupMembersCMSResp); - - //解散群 - rpc dismissGroup(DismissGroupReq) returns(DismissGroupResp); - //对某个群成员禁言 - rpc muteGroupMember(MuteGroupMemberReq) returns(MuteGroupMemberResp); - //对某个群成员取消禁言 - rpc cancelMuteGroupMember(CancelMuteGroupMemberReq) returns(CancelMuteGroupMemberResp); - //对某个群禁言 - rpc muteGroup(MuteGroupReq) returns(MuteGroupResp); - //对某个群取消禁言 - rpc cancelMuteGroup(CancelMuteGroupReq) returns(CancelMuteGroupResp); - - //获取某个用户加入的超级群 - rpc getJoinedSuperGroupList(GetJoinedSuperGroupListReq) returns (GetJoinedSuperGroupListResp); - //获取指定的超级群信息 - rpc getSuperGroupsInfo(GetSuperGroupsInfoReq) returns (GetSuperGroupsInfoResp); - //设置群成员昵称 - //设置群成员信息 - rpc setGroupMemberInfo(SetGroupMemberInfoReq) returns (SetGroupMemberInfoResp); - //获取群信息hash值 - rpc getGroupAbstractInfo(GetGroupAbstractInfoReq) returns (GetGroupAbstractInfoResp); - //获取某个用户在指定群中的信息 - rpc getUserInGroupMembers(GetUserInGroupMembersReq) returns (GetUserInGroupMembersResp); - //获取群成员用户ID - rpc getGroupMemberUserIDs(GetGroupMemberUserIDsReq) returns (GetGroupMemberUserIDsResp); - //查询群组中对应级别的成员 - rpc GetGroupMemberRoleLevel(GetGroupMemberRoleLevelReq)returns (GetGroupMemberRoleLevelResp); - - rpc GetGroupInfoCache(GetGroupInfoCacheReq) returns (GetGroupInfoCacheResp); - rpc GetGroupMemberCache(GetGroupMemberCacheReq) returns (GetGroupMemberCacheResp); - - rpc GroupCreateCount(GroupCreateCountReq) returns (GroupCreateCountResp); -} - - - - - - - diff --git a/pkg/proto/msg/msg.go b/pkg/proto/msg/msg.go deleted file mode 100644 index 03c9da915..000000000 --- a/pkg/proto/msg/msg.go +++ /dev/null @@ -1,217 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package msg - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *GetMaxAndMinSeqReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *SendMsgReq) Check() error { - if x.MsgData == nil { - return errs.ErrArgs.Wrap("MsgData is empty") - } - if err := x.MsgData.Check(); err != nil { - return err - } - return nil -} - -func (x *SetSendMsgStatusReq) Check() error { - if x.Status < 0 || x.Status > 3 { - return errs.ErrArgs.Wrap("status is invalid") - } - return nil -} - -func (x *GetSendMsgStatusReq) Check() error { - return nil -} - -//func (x *ModifyMessageReactionExtensionsReq) Check() error { -// if x.ConversationID == "" { -// return errs.ErrArgs.Wrap("conversationID is empty") -// } -// if x.SessionType < 1 || x.SessionType > 4 { -// return errs.ErrArgs.Wrap("sessionType is invalid") -// } -// if x.ReactionExtensions == nil { -// return errs.ErrArgs.Wrap("reactionExtensions is empty") -// } -// return nil -//} -// -//func (x *SetMessageReactionExtensionsReq) Check() error { -// if x.ConversationID == "" { -// return errs.ErrArgs.Wrap("conversationID is empty") -// } -// if x.SessionType < 1 || x.SessionType > 4 { -// return errs.ErrArgs.Wrap("sessionType is invalid") -// } -// if x.ReactionExtensions == nil { -// return errs.ErrArgs.Wrap("reactionExtensions is empty") -// } -// return nil -//} -// -//func (x *GetMessagesReactionExtensionsReq) Check() error { -// if x.ConversationID == "" { -// return errs.ErrArgs.Wrap("conversationID is empty") -// } -// if x.SessionType < 1 || x.SessionType > 4 { -// return errs.ErrArgs.Wrap("sessionType is invalid") -// } -// if x.MessageReactionKeys == nil { -// return errs.ErrArgs.Wrap("MessageReactionKeys is empty") -// } -// if x.TypeKeys == nil { -// return errs.ErrArgs.Wrap("TypeKeys is empty") -// } -// return nil -//} -// -//func (x *DeleteMessagesReactionExtensionsReq) Check() error { -// if x.ConversationID == "" { -// return errs.ErrArgs.Wrap("conversationID is empty") -// } -// if x.SessionType < 1 || x.SessionType > 4 { -// return errs.ErrArgs.Wrap("sessionType is invalid") -// } -// if x.ReactionExtensions == nil { -// return errs.ErrArgs.Wrap("ReactionExtensions is empty") -// } -// return nil -//} - -func (x *DelMsgsReq) Check() error { - return nil -} - -func (x *RevokeMsgReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.Seq < 1 { - return errs.ErrArgs.Wrap("seq is invalid") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *MarkMsgsAsReadReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.Seqs == nil { - return errs.ErrArgs.Wrap("seqs is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - for _, seq := range x.Seqs { - if seq == 0 { - return errs.ErrArgs.Wrap("seqs has 0 value is invalid") - } - } - return nil -} - -func (x *MarkConversationAsReadReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.HasReadSeq < 1 { - return errs.ErrArgs.Wrap("hasReadSeq is invalid") - } - for _, seq := range x.Seqs { - if seq == 0 { - return errs.ErrArgs.Wrap("seqs has 0 value is invalid") - } - } - return nil -} - -func (x *SetConversationHasReadSeqReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.HasReadSeq < 1 { - return errs.ErrArgs.Wrap("hasReadSeq is invalid") - } - return nil -} - -func (x *ClearConversationsMsgReq) Check() error { - if x.ConversationIDs == nil { - return errs.ErrArgs.Wrap("conversationIDs is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *UserClearAllMsgReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} - -func (x *DeleteMsgsReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - if x.Seqs == nil { - return errs.ErrArgs.Wrap("seqs is empty") - } - return nil -} - -func (x *DeleteMsgPhysicalReq) Check() error { - if x.ConversationIDs == nil { - return errs.ErrArgs.Wrap("conversationIDs is empty") - } - return nil -} - -func (x *GetConversationMaxSeqReq) Check() error { - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("conversationID is empty") - } - return nil -} - -func (x *GetConversationsHasReadAndMaxSeqReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("userID is empty") - } - return nil -} diff --git a/pkg/proto/msg/msg.pb.go b/pkg/proto/msg/msg.pb.go deleted file mode 100644 index db1f019c2..000000000 --- a/pkg/proto/msg/msg.pb.go +++ /dev/null @@ -1,4807 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: msg/msg.proto - -package msg - -import ( - context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - 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) -) - -type MsgDataToMQ struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token"` - MsgData *sdkws.MsgData `protobuf:"bytes,2,opt,name=msgData,proto3" json:"msgData"` -} - -func (x *MsgDataToMQ) Reset() { - *x = MsgDataToMQ{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgDataToMQ) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgDataToMQ) ProtoMessage() {} - -func (x *MsgDataToMQ) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MsgDataToMQ.ProtoReflect.Descriptor instead. -func (*MsgDataToMQ) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{0} -} - -func (x *MsgDataToMQ) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -func (x *MsgDataToMQ) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -type MsgDataToDB struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` -} - -func (x *MsgDataToDB) Reset() { - *x = MsgDataToDB{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgDataToDB) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgDataToDB) ProtoMessage() {} - -func (x *MsgDataToDB) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MsgDataToDB.ProtoReflect.Descriptor instead. -func (*MsgDataToDB) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{1} -} - -func (x *MsgDataToDB) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -type PushMsgDataToMQ struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` -} - -func (x *PushMsgDataToMQ) Reset() { - *x = PushMsgDataToMQ{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushMsgDataToMQ) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushMsgDataToMQ) ProtoMessage() {} - -func (x *PushMsgDataToMQ) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use PushMsgDataToMQ.ProtoReflect.Descriptor instead. -func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{2} -} - -func (x *PushMsgDataToMQ) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -func (x *PushMsgDataToMQ) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -type MsgDataToMongoByMQ struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - LastSeq int64 `protobuf:"varint,1,opt,name=lastSeq,proto3" json:"lastSeq"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - MsgData []*sdkws.MsgData `protobuf:"bytes,3,rep,name=msgData,proto3" json:"msgData"` -} - -func (x *MsgDataToMongoByMQ) Reset() { - *x = MsgDataToMongoByMQ{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgDataToMongoByMQ) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgDataToMongoByMQ) ProtoMessage() {} - -func (x *MsgDataToMongoByMQ) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MsgDataToMongoByMQ.ProtoReflect.Descriptor instead. -func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{3} -} - -func (x *MsgDataToMongoByMQ) GetLastSeq() int64 { - if x != nil { - return x.LastSeq - } - return 0 -} - -func (x *MsgDataToMongoByMQ) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *MsgDataToMongoByMQ) GetMsgData() []*sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -type GetMaxAndMinSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=UserID,proto3" json:"UserID"` -} - -func (x *GetMaxAndMinSeqReq) Reset() { - *x = GetMaxAndMinSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxAndMinSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxAndMinSeqReq) ProtoMessage() {} - -func (x *GetMaxAndMinSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetMaxAndMinSeqReq.ProtoReflect.Descriptor instead. -func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{4} -} - -func (x *GetMaxAndMinSeqReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetMaxAndMinSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MaxSeq int64 `protobuf:"varint,1,opt,name=MaxSeq,proto3" json:"MaxSeq"` - MinSeq int64 `protobuf:"varint,2,opt,name=MinSeq,proto3" json:"MinSeq"` -} - -func (x *GetMaxAndMinSeqResp) Reset() { - *x = GetMaxAndMinSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxAndMinSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxAndMinSeqResp) ProtoMessage() {} - -func (x *GetMaxAndMinSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetMaxAndMinSeqResp.ProtoReflect.Descriptor instead. -func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{5} -} - -func (x *GetMaxAndMinSeqResp) GetMaxSeq() int64 { - if x != nil { - return x.MaxSeq - } - return 0 -} - -func (x *GetMaxAndMinSeqResp) GetMinSeq() int64 { - if x != nil { - return x.MinSeq - } - return 0 -} - -type SendMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,3,opt,name=msgData,proto3" json:"msgData"` -} - -func (x *SendMsgReq) Reset() { - *x = SendMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SendMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SendMsgReq) ProtoMessage() {} - -func (x *SendMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SendMsgReq.ProtoReflect.Descriptor instead. -func (*SendMsgReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{6} -} - -func (x *SendMsgReq) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -type SendMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` -} - -func (x *SendMsgResp) Reset() { - *x = SendMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SendMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SendMsgResp) ProtoMessage() {} - -func (x *SendMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SendMsgResp.ProtoReflect.Descriptor instead. -func (*SendMsgResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{7} -} - -func (x *SendMsgResp) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID - } - return "" -} - -func (x *SendMsgResp) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *SendMsgResp) GetSendTime() int64 { - if x != nil { - return x.SendTime - } - return 0 -} - -type SetSendMsgStatusReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Status int32 `protobuf:"varint,1,opt,name=status,proto3" json:"status"` -} - -func (x *SetSendMsgStatusReq) Reset() { - *x = SetSendMsgStatusReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetSendMsgStatusReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetSendMsgStatusReq) ProtoMessage() {} - -func (x *SetSendMsgStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SetSendMsgStatusReq.ProtoReflect.Descriptor instead. -func (*SetSendMsgStatusReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{8} -} - -func (x *SetSendMsgStatusReq) GetStatus() int32 { - if x != nil { - return x.Status - } - return 0 -} - -type SetSendMsgStatusResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetSendMsgStatusResp) Reset() { - *x = SetSendMsgStatusResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetSendMsgStatusResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetSendMsgStatusResp) ProtoMessage() {} - -func (x *SetSendMsgStatusResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SetSendMsgStatusResp.ProtoReflect.Descriptor instead. -func (*SetSendMsgStatusResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{9} -} - -type GetSendMsgStatusReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *GetSendMsgStatusReq) Reset() { - *x = GetSendMsgStatusReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSendMsgStatusReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSendMsgStatusReq) ProtoMessage() {} - -func (x *GetSendMsgStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetSendMsgStatusReq.ProtoReflect.Descriptor instead. -func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{10} -} - -type GetSendMsgStatusResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Status int32 `protobuf:"varint,1,opt,name=status,proto3" json:"status"` -} - -func (x *GetSendMsgStatusResp) Reset() { - *x = GetSendMsgStatusResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSendMsgStatusResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSendMsgStatusResp) ProtoMessage() {} - -func (x *GetSendMsgStatusResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetSendMsgStatusResp.ProtoReflect.Descriptor instead. -func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{11} -} - -func (x *GetSendMsgStatusResp) GetStatus() int32 { - if x != nil { - return x.Status - } - return 0 -} - -type MsgDataToModifyByMQ struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Messages []*sdkws.MsgData `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` -} - -func (x *MsgDataToModifyByMQ) Reset() { - *x = MsgDataToModifyByMQ{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgDataToModifyByMQ) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgDataToModifyByMQ) ProtoMessage() {} - -func (x *MsgDataToModifyByMQ) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_proto_msgTypes[12] - 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 MsgDataToModifyByMQ.ProtoReflect.Descriptor instead. -func (*MsgDataToModifyByMQ) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{12} -} - -func (x *MsgDataToModifyByMQ) GetMessages() []*sdkws.MsgData { - if x != nil { - return x.Messages - } - return nil -} - -func (x *MsgDataToModifyByMQ) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -type DelMsgsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DelMsgsReq) Reset() { - *x = DelMsgsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DelMsgsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DelMsgsReq) ProtoMessage() {} - -func (x *DelMsgsReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DelMsgsReq.ProtoReflect.Descriptor instead. -func (*DelMsgsReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{13} -} - -type DelMsgsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DelMsgsResp) Reset() { - *x = DelMsgsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DelMsgsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DelMsgsResp) ProtoMessage() {} - -func (x *DelMsgsResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_proto_msgTypes[14] - 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 DelMsgsResp.ProtoReflect.Descriptor instead. -func (*DelMsgsResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{14} -} - -type RevokeMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seq int64 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` -} - -func (x *RevokeMsgReq) Reset() { - *x = RevokeMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RevokeMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RevokeMsgReq) ProtoMessage() {} - -func (x *RevokeMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use RevokeMsgReq.ProtoReflect.Descriptor instead. -func (*RevokeMsgReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{15} -} - -func (x *RevokeMsgReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *RevokeMsgReq) GetSeq() int64 { - if x != nil { - return x.Seq - } - return 0 -} - -func (x *RevokeMsgReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type RevokeMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *RevokeMsgResp) Reset() { - *x = RevokeMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RevokeMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RevokeMsgResp) ProtoMessage() {} - -func (x *RevokeMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use RevokeMsgResp.ProtoReflect.Descriptor instead. -func (*RevokeMsgResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{16} -} - -type MarkMsgsAsReadReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` -} - -func (x *MarkMsgsAsReadReq) Reset() { - *x = MarkMsgsAsReadReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MarkMsgsAsReadReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MarkMsgsAsReadReq) ProtoMessage() {} - -func (x *MarkMsgsAsReadReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MarkMsgsAsReadReq.ProtoReflect.Descriptor instead. -func (*MarkMsgsAsReadReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{17} -} - -func (x *MarkMsgsAsReadReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *MarkMsgsAsReadReq) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -func (x *MarkMsgsAsReadReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type MarkMsgsAsReadResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MarkMsgsAsReadResp) Reset() { - *x = MarkMsgsAsReadResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MarkMsgsAsReadResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MarkMsgsAsReadResp) ProtoMessage() {} - -func (x *MarkMsgsAsReadResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MarkMsgsAsReadResp.ProtoReflect.Descriptor instead. -func (*MarkMsgsAsReadResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{18} -} - -type MarkConversationAsReadReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` - Seqs []int64 `protobuf:"varint,4,rep,packed,name=seqs,proto3" json:"seqs"` -} - -func (x *MarkConversationAsReadReq) Reset() { - *x = MarkConversationAsReadReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MarkConversationAsReadReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MarkConversationAsReadReq) ProtoMessage() {} - -func (x *MarkConversationAsReadReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MarkConversationAsReadReq.ProtoReflect.Descriptor instead. -func (*MarkConversationAsReadReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{19} -} - -func (x *MarkConversationAsReadReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *MarkConversationAsReadReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *MarkConversationAsReadReq) GetHasReadSeq() int64 { - if x != nil { - return x.HasReadSeq - } - return 0 -} - -func (x *MarkConversationAsReadReq) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -type MarkConversationAsReadResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MarkConversationAsReadResp) Reset() { - *x = MarkConversationAsReadResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MarkConversationAsReadResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MarkConversationAsReadResp) ProtoMessage() {} - -func (x *MarkConversationAsReadResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use MarkConversationAsReadResp.ProtoReflect.Descriptor instead. -func (*MarkConversationAsReadResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{20} -} - -type SetConversationHasReadSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` -} - -func (x *SetConversationHasReadSeqReq) Reset() { - *x = SetConversationHasReadSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationHasReadSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationHasReadSeqReq) ProtoMessage() {} - -func (x *SetConversationHasReadSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SetConversationHasReadSeqReq.ProtoReflect.Descriptor instead. -func (*SetConversationHasReadSeqReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{21} -} - -func (x *SetConversationHasReadSeqReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *SetConversationHasReadSeqReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SetConversationHasReadSeqReq) GetHasReadSeq() int64 { - if x != nil { - return x.HasReadSeq - } - return 0 -} - -type SetConversationHasReadSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConversationHasReadSeqResp) Reset() { - *x = SetConversationHasReadSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationHasReadSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationHasReadSeqResp) ProtoMessage() {} - -func (x *SetConversationHasReadSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SetConversationHasReadSeqResp.ProtoReflect.Descriptor instead. -func (*SetConversationHasReadSeqResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{22} -} - -type DeleteSyncOpt struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - IsSyncSelf bool `protobuf:"varint,3,opt,name=IsSyncSelf,proto3" json:"IsSyncSelf"` - IsSyncOther bool `protobuf:"varint,4,opt,name=IsSyncOther,proto3" json:"IsSyncOther"` -} - -func (x *DeleteSyncOpt) Reset() { - *x = DeleteSyncOpt{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteSyncOpt) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteSyncOpt) ProtoMessage() {} - -func (x *DeleteSyncOpt) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteSyncOpt.ProtoReflect.Descriptor instead. -func (*DeleteSyncOpt) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{23} -} - -func (x *DeleteSyncOpt) GetIsSyncSelf() bool { - if x != nil { - return x.IsSyncSelf - } - return false -} - -func (x *DeleteSyncOpt) GetIsSyncOther() bool { - if x != nil { - return x.IsSyncOther - } - return false -} - -type ClearConversationsMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` -} - -func (x *ClearConversationsMsgReq) Reset() { - *x = ClearConversationsMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ClearConversationsMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ClearConversationsMsgReq) ProtoMessage() {} - -func (x *ClearConversationsMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use ClearConversationsMsgReq.ProtoReflect.Descriptor instead. -func (*ClearConversationsMsgReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{24} -} - -func (x *ClearConversationsMsgReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -func (x *ClearConversationsMsgReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ClearConversationsMsgReq) GetDeleteSyncOpt() *DeleteSyncOpt { - if x != nil { - return x.DeleteSyncOpt - } - return nil -} - -type ClearConversationsMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ClearConversationsMsgResp) Reset() { - *x = ClearConversationsMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ClearConversationsMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ClearConversationsMsgResp) ProtoMessage() {} - -func (x *ClearConversationsMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use ClearConversationsMsgResp.ProtoReflect.Descriptor instead. -func (*ClearConversationsMsgResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{25} -} - -type UserClearAllMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,3,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` -} - -func (x *UserClearAllMsgReq) Reset() { - *x = UserClearAllMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserClearAllMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserClearAllMsgReq) ProtoMessage() {} - -func (x *UserClearAllMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use UserClearAllMsgReq.ProtoReflect.Descriptor instead. -func (*UserClearAllMsgReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{26} -} - -func (x *UserClearAllMsgReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *UserClearAllMsgReq) GetDeleteSyncOpt() *DeleteSyncOpt { - if x != nil { - return x.DeleteSyncOpt - } - return nil -} - -type UserClearAllMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UserClearAllMsgResp) Reset() { - *x = UserClearAllMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserClearAllMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserClearAllMsgResp) ProtoMessage() {} - -func (x *UserClearAllMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use UserClearAllMsgResp.ProtoReflect.Descriptor instead. -func (*UserClearAllMsgResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{27} -} - -type DeleteMsgsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - DeleteSyncOpt *DeleteSyncOpt `protobuf:"bytes,4,opt,name=deleteSyncOpt,proto3" json:"deleteSyncOpt"` -} - -func (x *DeleteMsgsReq) Reset() { - *x = DeleteMsgsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgsReq) ProtoMessage() {} - -func (x *DeleteMsgsReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgsReq.ProtoReflect.Descriptor instead. -func (*DeleteMsgsReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{28} -} - -func (x *DeleteMsgsReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *DeleteMsgsReq) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -func (x *DeleteMsgsReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *DeleteMsgsReq) GetDeleteSyncOpt() *DeleteSyncOpt { - if x != nil { - return x.DeleteSyncOpt - } - return nil -} - -type DeleteMsgsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteMsgsResp) Reset() { - *x = DeleteMsgsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgsResp) ProtoMessage() {} - -func (x *DeleteMsgsResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgsResp.ProtoReflect.Descriptor instead. -func (*DeleteMsgsResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{29} -} - -type DeleteMsgPhysicalReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationIDs []string `protobuf:"bytes,1,rep,name=conversationIDs,proto3" json:"conversationIDs"` - Timestamp int64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp"` -} - -func (x *DeleteMsgPhysicalReq) Reset() { - *x = DeleteMsgPhysicalReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgPhysicalReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgPhysicalReq) ProtoMessage() {} - -func (x *DeleteMsgPhysicalReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgPhysicalReq.ProtoReflect.Descriptor instead. -func (*DeleteMsgPhysicalReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{30} -} - -func (x *DeleteMsgPhysicalReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -func (x *DeleteMsgPhysicalReq) GetTimestamp() int64 { - if x != nil { - return x.Timestamp - } - return 0 -} - -type DeleteMsgPhysicalResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteMsgPhysicalResp) Reset() { - *x = DeleteMsgPhysicalResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgPhysicalResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgPhysicalResp) ProtoMessage() {} - -func (x *DeleteMsgPhysicalResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgPhysicalResp.ProtoReflect.Descriptor instead. -func (*DeleteMsgPhysicalResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{31} -} - -type DeleteMsgPhysicalBySeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,2,rep,packed,name=seqs,proto3" json:"seqs"` -} - -func (x *DeleteMsgPhysicalBySeqReq) Reset() { - *x = DeleteMsgPhysicalBySeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgPhysicalBySeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgPhysicalBySeqReq) ProtoMessage() {} - -func (x *DeleteMsgPhysicalBySeqReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgPhysicalBySeqReq.ProtoReflect.Descriptor instead. -func (*DeleteMsgPhysicalBySeqReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{32} -} - -func (x *DeleteMsgPhysicalBySeqReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *DeleteMsgPhysicalBySeqReq) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -type DeleteMsgPhysicalBySeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteMsgPhysicalBySeqResp) Reset() { - *x = DeleteMsgPhysicalBySeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgPhysicalBySeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgPhysicalBySeqResp) ProtoMessage() {} - -func (x *DeleteMsgPhysicalBySeqResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use DeleteMsgPhysicalBySeqResp.ProtoReflect.Descriptor instead. -func (*DeleteMsgPhysicalBySeqResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{33} -} - -type GetConversationMaxSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` -} - -func (x *GetConversationMaxSeqReq) Reset() { - *x = GetConversationMaxSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationMaxSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationMaxSeqReq) ProtoMessage() {} - -func (x *GetConversationMaxSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetConversationMaxSeqReq.ProtoReflect.Descriptor instead. -func (*GetConversationMaxSeqReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{34} -} - -func (x *GetConversationMaxSeqReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -type GetConversationMaxSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` -} - -func (x *GetConversationMaxSeqResp) Reset() { - *x = GetConversationMaxSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationMaxSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationMaxSeqResp) ProtoMessage() {} - -func (x *GetConversationMaxSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetConversationMaxSeqResp.ProtoReflect.Descriptor instead. -func (*GetConversationMaxSeqResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{35} -} - -func (x *GetConversationMaxSeqResp) GetMaxSeq() int64 { - if x != nil { - return x.MaxSeq - } - return 0 -} - -type GetConversationsHasReadAndMaxSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetConversationsHasReadAndMaxSeqReq) Reset() { - *x = GetConversationsHasReadAndMaxSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsHasReadAndMaxSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsHasReadAndMaxSeqReq) ProtoMessage() {} - -func (x *GetConversationsHasReadAndMaxSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetConversationsHasReadAndMaxSeqReq.ProtoReflect.Descriptor instead. -func (*GetConversationsHasReadAndMaxSeqReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{36} -} - -func (x *GetConversationsHasReadAndMaxSeqReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type Seqs struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MaxSeq int64 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq"` - HasReadSeq int64 `protobuf:"varint,2,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` -} - -func (x *Seqs) Reset() { - *x = Seqs{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Seqs) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Seqs) ProtoMessage() {} - -func (x *Seqs) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use Seqs.ProtoReflect.Descriptor instead. -func (*Seqs) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{37} -} - -func (x *Seqs) GetMaxSeq() int64 { - if x != nil { - return x.MaxSeq - } - return 0 -} - -func (x *Seqs) GetHasReadSeq() int64 { - if x != nil { - return x.HasReadSeq - } - return 0 -} - -type GetConversationsHasReadAndMaxSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Seqs map[string]*Seqs `protobuf:"bytes,1,rep,name=seqs,proto3" json:"seqs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *GetConversationsHasReadAndMaxSeqResp) Reset() { - *x = GetConversationsHasReadAndMaxSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsHasReadAndMaxSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsHasReadAndMaxSeqResp) ProtoMessage() {} - -func (x *GetConversationsHasReadAndMaxSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetConversationsHasReadAndMaxSeqResp.ProtoReflect.Descriptor instead. -func (*GetConversationsHasReadAndMaxSeqResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{38} -} - -func (x *GetConversationsHasReadAndMaxSeqResp) GetSeqs() map[string]*Seqs { - if x != nil { - return x.Seqs - } - return nil -} - -type GetActiveUserReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` - Group bool `protobuf:"varint,4,opt,name=group,proto3" json:"group"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetActiveUserReq) Reset() { - *x = GetActiveUserReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetActiveUserReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetActiveUserReq) ProtoMessage() {} - -func (x *GetActiveUserReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetActiveUserReq.ProtoReflect.Descriptor instead. -func (*GetActiveUserReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{39} -} - -func (x *GetActiveUserReq) GetStart() int64 { - if x != nil { - return x.Start - } - return 0 -} - -func (x *GetActiveUserReq) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -func (x *GetActiveUserReq) GetAse() bool { - if x != nil { - return x.Ase - } - return false -} - -func (x *GetActiveUserReq) GetGroup() bool { - if x != nil { - return x.Group - } - return false -} - -func (x *GetActiveUserReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type ActiveUser struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - User *sdkws.UserInfo `protobuf:"bytes,1,opt,name=user,proto3" json:"user"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` -} - -func (x *ActiveUser) Reset() { - *x = ActiveUser{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ActiveUser) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ActiveUser) ProtoMessage() {} - -func (x *ActiveUser) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use ActiveUser.ProtoReflect.Descriptor instead. -func (*ActiveUser) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{40} -} - -func (x *ActiveUser) GetUser() *sdkws.UserInfo { - if x != nil { - return x.User - } - return nil -} - -func (x *ActiveUser) GetCount() int64 { - if x != nil { - return x.Count - } - return 0 -} - -type GetActiveUserResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` - UserCount int64 `protobuf:"varint,2,opt,name=userCount,proto3" json:"userCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Users []*ActiveUser `protobuf:"bytes,4,rep,name=users,proto3" json:"users"` -} - -func (x *GetActiveUserResp) Reset() { - *x = GetActiveUserResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetActiveUserResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetActiveUserResp) ProtoMessage() {} - -func (x *GetActiveUserResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetActiveUserResp.ProtoReflect.Descriptor instead. -func (*GetActiveUserResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{41} -} - -func (x *GetActiveUserResp) GetMsgCount() int64 { - if x != nil { - return x.MsgCount - } - return 0 -} - -func (x *GetActiveUserResp) GetUserCount() int64 { - if x != nil { - return x.UserCount - } - return 0 -} - -func (x *GetActiveUserResp) GetDateCount() map[string]int64 { - if x != nil { - return x.DateCount - } - return nil -} - -func (x *GetActiveUserResp) GetUsers() []*ActiveUser { - if x != nil { - return x.Users - } - return nil -} - -type GetActiveGroupReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` - Ase bool `protobuf:"varint,3,opt,name=ase,proto3" json:"ase"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,4,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetActiveGroupReq) Reset() { - *x = GetActiveGroupReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetActiveGroupReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetActiveGroupReq) ProtoMessage() {} - -func (x *GetActiveGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetActiveGroupReq.ProtoReflect.Descriptor instead. -func (*GetActiveGroupReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{42} -} - -func (x *GetActiveGroupReq) GetStart() int64 { - if x != nil { - return x.Start - } - return 0 -} - -func (x *GetActiveGroupReq) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -func (x *GetActiveGroupReq) GetAse() bool { - if x != nil { - return x.Ase - } - return false -} - -func (x *GetActiveGroupReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type ActiveGroup struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *sdkws.GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` -} - -func (x *ActiveGroup) Reset() { - *x = ActiveGroup{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ActiveGroup) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ActiveGroup) ProtoMessage() {} - -func (x *ActiveGroup) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use ActiveGroup.ProtoReflect.Descriptor instead. -func (*ActiveGroup) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{43} -} - -func (x *ActiveGroup) GetGroup() *sdkws.GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *ActiveGroup) GetCount() int64 { - if x != nil { - return x.Count - } - return 0 -} - -type GetActiveGroupResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgCount int64 `protobuf:"varint,1,opt,name=msgCount,proto3" json:"msgCount"` - GroupCount int64 `protobuf:"varint,2,opt,name=groupCount,proto3" json:"groupCount"` - DateCount map[string]int64 `protobuf:"bytes,3,rep,name=dateCount,proto3" json:"dateCount" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Groups []*ActiveGroup `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups"` -} - -func (x *GetActiveGroupResp) Reset() { - *x = GetActiveGroupResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetActiveGroupResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetActiveGroupResp) ProtoMessage() {} - -func (x *GetActiveGroupResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use GetActiveGroupResp.ProtoReflect.Descriptor instead. -func (*GetActiveGroupResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{44} -} - -func (x *GetActiveGroupResp) GetMsgCount() int64 { - if x != nil { - return x.MsgCount - } - return 0 -} - -func (x *GetActiveGroupResp) GetGroupCount() int64 { - if x != nil { - return x.GroupCount - } - return 0 -} - -func (x *GetActiveGroupResp) GetDateCount() map[string]int64 { - if x != nil { - return x.DateCount - } - return nil -} - -func (x *GetActiveGroupResp) GetGroups() []*ActiveGroup { - if x != nil { - return x.Groups - } - return nil -} - -type SearchMessageReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` //发送者ID - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` //接收者ID - MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType"` - SendTime string `protobuf:"bytes,4,opt,name=sendTime,proto3" json:"sendTime"` - SessionType int32 `protobuf:"varint,5,opt,name=sessionType,proto3" json:"sessionType"` - Pagination *sdkws.RequestPagination `protobuf:"bytes,6,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *SearchMessageReq) Reset() { - *x = SearchMessageReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SearchMessageReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SearchMessageReq) ProtoMessage() {} - -func (x *SearchMessageReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SearchMessageReq.ProtoReflect.Descriptor instead. -func (*SearchMessageReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{45} -} - -func (x *SearchMessageReq) GetSendID() string { - if x != nil { - return x.SendID - } - return "" -} - -func (x *SearchMessageReq) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *SearchMessageReq) GetMsgType() int32 { - if x != nil { - return x.MsgType - } - return 0 -} - -func (x *SearchMessageReq) GetSendTime() string { - if x != nil { - return x.SendTime - } - return "" -} - -func (x *SearchMessageReq) GetSessionType() int32 { - if x != nil { - return x.SessionType - } - return 0 -} - -func (x *SearchMessageReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type SearchMessageResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ChatLogs []*ChatLog `protobuf:"bytes,1,rep,name=chatLogs,proto3" json:"chatLogs"` - ChatLogsNum int32 `protobuf:"varint,2,opt,name=chatLogsNum,proto3" json:"chatLogsNum"` -} - -func (x *SearchMessageResp) Reset() { - *x = SearchMessageResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SearchMessageResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SearchMessageResp) ProtoMessage() {} - -func (x *SearchMessageResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use SearchMessageResp.ProtoReflect.Descriptor instead. -func (*SearchMessageResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{46} -} - -func (x *SearchMessageResp) GetChatLogs() []*ChatLog { - if x != nil { - return x.ChatLogs - } - return nil -} - -func (x *SearchMessageResp) GetChatLogsNum() int32 { - if x != nil { - return x.ChatLogsNum - } - return 0 -} - -type ChatLog struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendID string `protobuf:"bytes,3,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,4,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,5,opt,name=groupID,proto3" json:"groupID"` - RecvNickname string `protobuf:"bytes,6,opt,name=recvNickname,proto3" json:"recvNickname"` - SenderPlatformID int32 `protobuf:"varint,7,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,8,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,9,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - GroupName string `protobuf:"bytes,10,opt,name=groupName,proto3" json:"groupName"` - SessionType int32 `protobuf:"varint,11,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,12,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,13,opt,name=contentType,proto3" json:"contentType"` - Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content"` - Status int32 `protobuf:"varint,15,opt,name=status,proto3" json:"status"` - SendTime int64 `protobuf:"varint,16,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,17,opt,name=createTime,proto3" json:"createTime"` - Ex string `protobuf:"bytes,18,opt,name=ex,proto3" json:"ex"` - GroupFaceURL string `protobuf:"bytes,19,opt,name=groupFaceURL,proto3" json:"groupFaceURL"` - GroupMemberCount uint32 `protobuf:"varint,20,opt,name=groupMemberCount,proto3" json:"groupMemberCount"` - Seq int64 `protobuf:"varint,21,opt,name=seq,proto3" json:"seq"` - GroupOwner string `protobuf:"bytes,22,opt,name=groupOwner,proto3" json:"groupOwner"` - GroupType int32 `protobuf:"varint,23,opt,name=groupType,proto3" json:"groupType"` -} - -func (x *ChatLog) Reset() { - *x = ChatLog{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChatLog) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChatLog) ProtoMessage() {} - -func (x *ChatLog) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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 ChatLog.ProtoReflect.Descriptor instead. -func (*ChatLog) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{47} -} - -func (x *ChatLog) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID - } - return "" -} - -func (x *ChatLog) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *ChatLog) GetSendID() string { - if x != nil { - return x.SendID - } - return "" -} - -func (x *ChatLog) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *ChatLog) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *ChatLog) GetRecvNickname() string { - if x != nil { - return x.RecvNickname - } - return "" -} - -func (x *ChatLog) GetSenderPlatformID() int32 { - if x != nil { - return x.SenderPlatformID - } - return 0 -} - -func (x *ChatLog) GetSenderNickname() string { - if x != nil { - return x.SenderNickname - } - return "" -} - -func (x *ChatLog) GetSenderFaceURL() string { - if x != nil { - return x.SenderFaceURL - } - return "" -} - -func (x *ChatLog) GetGroupName() string { - if x != nil { - return x.GroupName - } - return "" -} - -func (x *ChatLog) GetSessionType() int32 { - if x != nil { - return x.SessionType - } - return 0 -} - -func (x *ChatLog) GetMsgFrom() int32 { - if x != nil { - return x.MsgFrom - } - return 0 -} - -func (x *ChatLog) GetContentType() int32 { - if x != nil { - return x.ContentType - } - return 0 -} - -func (x *ChatLog) GetContent() string { - if x != nil { - return x.Content - } - return "" -} - -func (x *ChatLog) GetStatus() int32 { - if x != nil { - return x.Status - } - return 0 -} - -func (x *ChatLog) GetSendTime() int64 { - if x != nil { - return x.SendTime - } - return 0 -} - -func (x *ChatLog) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *ChatLog) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *ChatLog) GetGroupFaceURL() string { - if x != nil { - return x.GroupFaceURL - } - return "" -} - -func (x *ChatLog) GetGroupMemberCount() uint32 { - if x != nil { - return x.GroupMemberCount - } - return 0 -} - -func (x *ChatLog) GetSeq() int64 { - if x != nil { - return x.Seq - } - return 0 -} - -func (x *ChatLog) GetGroupOwner() string { - if x != nil { - return x.GroupOwner - } - return "" -} - -func (x *ChatLog) GetGroupType() int32 { - if x != nil { - return x.GroupType - } - return 0 -} - -type BatchSendMessageReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RecvIDList []string `protobuf:"bytes,1,rep,name=recvIDList,proto3" json:"recvIDList"` - MsgData *sdkws.MsgData `protobuf:"bytes,2,opt,name=msgData,proto3" json:"msgData"` -} - -func (x *BatchSendMessageReq) Reset() { - *x = BatchSendMessageReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BatchSendMessageReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchSendMessageReq) ProtoMessage() {} - -func (x *BatchSendMessageReq) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_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) -} - -// Deprecated: Use BatchSendMessageReq.ProtoReflect.Descriptor instead. -func (*BatchSendMessageReq) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{48} -} - -func (x *BatchSendMessageReq) GetRecvIDList() []string { - if x != nil { - return x.RecvIDList - } - return nil -} - -func (x *BatchSendMessageReq) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -type BatchSendMessageResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *BatchSendMessageResp) Reset() { - *x = BatchSendMessageResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msg_msg_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BatchSendMessageResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchSendMessageResp) ProtoMessage() {} - -func (x *BatchSendMessageResp) ProtoReflect() protoreflect.Message { - mi := &file_msg_msg_proto_msgTypes[49] - 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 BatchSendMessageResp.ProtoReflect.Descriptor instead. -func (*BatchSendMessageResp) Descriptor() ([]byte, []int) { - return file_msg_msg_proto_rawDescGZIP(), []int{49} -} - -var File_msg_msg_proto protoreflect.FileDescriptor - -var file_msg_msg_proto_rawDesc = []byte{ - 0x0a, 0x0d, 0x6d, 0x73, 0x67, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x10, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, - 0x67, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5a, 0x0a, 0x0b, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x54, - 0x6f, 0x4d, 0x51, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, - 0x22, 0x44, 0x0a, 0x0b, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x54, 0x6f, 0x44, 0x42, 0x12, - 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, - 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x70, 0x0a, 0x0f, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, - 0x67, 0x44, 0x61, 0x74, 0x61, 0x54, 0x6f, 0x4d, 0x51, 0x12, 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x8d, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x54, 0x6f, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x42, 0x79, 0x4d, 0x51, 0x12, - 0x18, 0x0a, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x12, 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, - 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x22, 0x2c, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, - 0x61, 0x78, 0x41, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, 0x16, - 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, - 0x41, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, - 0x06, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x22, 0x43, 0x0a, - 0x0a, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x07, 0x6d, - 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, - 0x74, 0x61, 0x22, 0x6d, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x22, 0x16, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x15, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, - 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x22, - 0x2e, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, - 0x76, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x54, 0x6f, 0x4d, 0x6f, 0x64, 0x69, - 0x66, 0x79, 0x42, 0x79, 0x4d, 0x51, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, - 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, - 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x0c, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x4d, 0x73, - 0x67, 0x73, 0x52, 0x65, 0x71, 0x22, 0x0d, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x4d, 0x73, 0x67, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x60, 0x0a, 0x0c, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x10, 0x0a, 0x03, - 0x73, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x16, - 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x22, 0x67, 0x0a, 0x11, 0x4d, 0x61, 0x72, 0x6b, 0x4d, - 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x22, 0x14, 0x0a, 0x12, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x8f, 0x01, 0x0a, 0x19, 0x4d, 0x61, 0x72, 0x6b, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, - 0x64, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, - 0x65, 0x71, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, - 0x64, 0x53, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x61, 0x72, 0x6b, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x7e, 0x0a, 0x1c, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, - 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, - 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, - 0x64, 0x53, 0x65, 0x71, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, - 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x22, 0x1f, 0x0a, 0x1d, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, - 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x22, 0x51, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x49, 0x73, 0x53, 0x79, - 0x6e, 0x63, 0x53, 0x65, 0x6c, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x49, 0x73, - 0x53, 0x79, 0x6e, 0x63, 0x53, 0x65, 0x6c, 0x66, 0x12, 0x20, 0x0a, 0x0b, 0x49, 0x73, 0x53, 0x79, - 0x6e, 0x63, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x49, - 0x73, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x22, 0xa3, 0x01, 0x0a, 0x18, 0x43, - 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x45, 0x0a, 0x0d, 0x64, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, - 0x74, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, - 0x22, 0x1b, 0x0a, 0x19, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x22, 0x73, 0x0a, - 0x12, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x71, 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, 0x45, 0x0a, 0x0d, 0x64, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, - 0x4f, 0x70, 0x74, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, - 0x70, 0x74, 0x22, 0x15, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, - 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x22, 0xaa, 0x01, 0x0a, 0x0d, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, - 0x45, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x53, 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, - 0x79, 0x6e, 0x63, 0x4f, 0x70, 0x74, 0x22, 0x10, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x4d, 0x73, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x5e, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x71, - 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x73, - 0x70, 0x22, 0x57, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, - 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, 0x26, - 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x22, 0x1c, 0x0a, 0x1a, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, - 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x22, 0x42, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, - 0x71, 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x33, 0x0a, 0x19, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x78, - 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, - 0x71, 0x22, 0x3d, 0x0a, 0x23, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x22, 0x3e, 0x0a, 0x04, 0x53, 0x65, 0x71, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x53, - 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, - 0x22, 0xcd, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x54, 0x0a, 0x04, 0x73, 0x65, 0x71, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x2e, - 0x53, 0x65, 0x71, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x1a, - 0x4f, 0x0a, 0x09, 0x53, 0x65, 0x71, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x53, 0x65, 0x71, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xa9, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, - 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x0a, - 0x03, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x61, 0x73, 0x65, 0x12, - 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x0a, 0x0a, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x30, 0x0a, 0x04, 0x75, 0x73, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0x91, 0x02, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x73, 0x67, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x09, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, - 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x1a, 0x3c, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x94, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, - 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x03, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x03, 0x61, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x58, 0x0a, - 0x0b, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x33, 0x0a, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x98, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, - 0x0a, 0x08, 0x6d, 0x73, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x08, 0x6d, 0x73, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x51, 0x0a, 0x09, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x73, 0x70, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x35, 0x0a, - 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x73, 0x1a, 0x3c, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0xe1, 0x01, 0x0a, 0x10, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, - 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, - 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x45, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0x0a, 0x11, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x35, 0x0a, 0x08, 0x63, - 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x43, 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x52, 0x08, 0x63, 0x68, 0x61, 0x74, 0x4c, 0x6f, - 0x67, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x4e, 0x75, - 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, - 0x73, 0x4e, 0x75, 0x6d, 0x22, 0xcf, 0x05, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, - 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, - 0x73, 0x67, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x63, 0x76, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x22, - 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x76, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x76, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x26, - 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, - 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x1c, 0x0a, 0x09, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x6d, 0x73, 0x67, 0x46, 0x72, 0x6f, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, - 0x73, 0x67, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, - 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, - 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x22, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x46, - 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x2a, 0x0a, 0x10, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x15, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x22, 0x6c, 0x0a, 0x13, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, - 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, - 0x0a, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x35, 0x0a, - 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x22, 0x16, 0x0a, 0x14, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x65, 0x6e, - 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x32, 0x82, 0x0f, 0x0a, - 0x03, 0x6d, 0x73, 0x67, 0x12, 0x50, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, - 0x71, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, - 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, - 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x68, 0x0a, 0x11, 0x50, 0x75, 0x6c, 0x6c, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x12, 0x28, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, - 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, - 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x07, - 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x70, 0x0a, 0x15, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x12, 0x2a, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x43, 0x6c, 0x65, - 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5e, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, - 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x12, 0x24, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x55, 0x73, 0x65, - 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, - 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x6c, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x4d, 0x73, 0x67, 0x73, 0x12, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, - 0x67, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, - 0x73, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, - 0x71, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, - 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2c, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, - 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, - 0x63, 0x61, 0x6c, 0x42, 0x79, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x64, 0x0a, 0x11, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, - 0x6c, 0x12, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, - 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x61, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, - 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x53, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x61, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 0x1a, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4c, 0x0a, 0x09, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x0e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, - 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, 0x72, 0x6b, - 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x4d, 0x73, 0x67, 0x73, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x73, 0x0a, 0x16, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x2b, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, - 0x2e, 0x4d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4d, 0x61, - 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, - 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7c, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x53, 0x65, 0x71, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x91, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, - 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x35, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, - 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, - 0x65, 0x71, 0x1a, 0x36, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6e, 0x64, - 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x58, 0x0a, 0x0d, 0x47, 0x65, - 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, - 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x24, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x47, - 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x42, 0x33, 0x5a, 0x31, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, - 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2f, 0x6d, 0x73, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_msg_msg_proto_rawDescOnce sync.Once - file_msg_msg_proto_rawDescData = file_msg_msg_proto_rawDesc -) - -func file_msg_msg_proto_rawDescGZIP() []byte { - file_msg_msg_proto_rawDescOnce.Do(func() { - file_msg_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_msg_msg_proto_rawDescData) - }) - return file_msg_msg_proto_rawDescData -} - -var file_msg_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 53) -var file_msg_msg_proto_goTypes = []interface{}{ - (*MsgDataToMQ)(nil), // 0: OpenIMServer.msg.MsgDataToMQ - (*MsgDataToDB)(nil), // 1: OpenIMServer.msg.MsgDataToDB - (*PushMsgDataToMQ)(nil), // 2: OpenIMServer.msg.PushMsgDataToMQ - (*MsgDataToMongoByMQ)(nil), // 3: OpenIMServer.msg.MsgDataToMongoByMQ - (*GetMaxAndMinSeqReq)(nil), // 4: OpenIMServer.msg.GetMaxAndMinSeqReq - (*GetMaxAndMinSeqResp)(nil), // 5: OpenIMServer.msg.GetMaxAndMinSeqResp - (*SendMsgReq)(nil), // 6: OpenIMServer.msg.SendMsgReq - (*SendMsgResp)(nil), // 7: OpenIMServer.msg.SendMsgResp - (*SetSendMsgStatusReq)(nil), // 8: OpenIMServer.msg.SetSendMsgStatusReq - (*SetSendMsgStatusResp)(nil), // 9: OpenIMServer.msg.SetSendMsgStatusResp - (*GetSendMsgStatusReq)(nil), // 10: OpenIMServer.msg.GetSendMsgStatusReq - (*GetSendMsgStatusResp)(nil), // 11: OpenIMServer.msg.GetSendMsgStatusResp - (*MsgDataToModifyByMQ)(nil), // 12: OpenIMServer.msg.MsgDataToModifyByMQ - (*DelMsgsReq)(nil), // 13: OpenIMServer.msg.DelMsgsReq - (*DelMsgsResp)(nil), // 14: OpenIMServer.msg.DelMsgsResp - (*RevokeMsgReq)(nil), // 15: OpenIMServer.msg.RevokeMsgReq - (*RevokeMsgResp)(nil), // 16: OpenIMServer.msg.RevokeMsgResp - (*MarkMsgsAsReadReq)(nil), // 17: OpenIMServer.msg.MarkMsgsAsReadReq - (*MarkMsgsAsReadResp)(nil), // 18: OpenIMServer.msg.MarkMsgsAsReadResp - (*MarkConversationAsReadReq)(nil), // 19: OpenIMServer.msg.MarkConversationAsReadReq - (*MarkConversationAsReadResp)(nil), // 20: OpenIMServer.msg.MarkConversationAsReadResp - (*SetConversationHasReadSeqReq)(nil), // 21: OpenIMServer.msg.SetConversationHasReadSeqReq - (*SetConversationHasReadSeqResp)(nil), // 22: OpenIMServer.msg.SetConversationHasReadSeqResp - (*DeleteSyncOpt)(nil), // 23: OpenIMServer.msg.DeleteSyncOpt - (*ClearConversationsMsgReq)(nil), // 24: OpenIMServer.msg.ClearConversationsMsgReq - (*ClearConversationsMsgResp)(nil), // 25: OpenIMServer.msg.ClearConversationsMsgResp - (*UserClearAllMsgReq)(nil), // 26: OpenIMServer.msg.UserClearAllMsgReq - (*UserClearAllMsgResp)(nil), // 27: OpenIMServer.msg.UserClearAllMsgResp - (*DeleteMsgsReq)(nil), // 28: OpenIMServer.msg.DeleteMsgsReq - (*DeleteMsgsResp)(nil), // 29: OpenIMServer.msg.DeleteMsgsResp - (*DeleteMsgPhysicalReq)(nil), // 30: OpenIMServer.msg.DeleteMsgPhysicalReq - (*DeleteMsgPhysicalResp)(nil), // 31: OpenIMServer.msg.DeleteMsgPhysicalResp - (*DeleteMsgPhysicalBySeqReq)(nil), // 32: OpenIMServer.msg.DeleteMsgPhysicalBySeqReq - (*DeleteMsgPhysicalBySeqResp)(nil), // 33: OpenIMServer.msg.DeleteMsgPhysicalBySeqResp - (*GetConversationMaxSeqReq)(nil), // 34: OpenIMServer.msg.GetConversationMaxSeqReq - (*GetConversationMaxSeqResp)(nil), // 35: OpenIMServer.msg.GetConversationMaxSeqResp - (*GetConversationsHasReadAndMaxSeqReq)(nil), // 36: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqReq - (*Seqs)(nil), // 37: OpenIMServer.msg.Seqs - (*GetConversationsHasReadAndMaxSeqResp)(nil), // 38: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp - (*GetActiveUserReq)(nil), // 39: OpenIMServer.msg.GetActiveUserReq - (*ActiveUser)(nil), // 40: OpenIMServer.msg.ActiveUser - (*GetActiveUserResp)(nil), // 41: OpenIMServer.msg.GetActiveUserResp - (*GetActiveGroupReq)(nil), // 42: OpenIMServer.msg.GetActiveGroupReq - (*ActiveGroup)(nil), // 43: OpenIMServer.msg.ActiveGroup - (*GetActiveGroupResp)(nil), // 44: OpenIMServer.msg.GetActiveGroupResp - (*SearchMessageReq)(nil), // 45: OpenIMServer.msg.SearchMessageReq - (*SearchMessageResp)(nil), // 46: OpenIMServer.msg.SearchMessageResp - (*ChatLog)(nil), // 47: OpenIMServer.msg.ChatLog - (*BatchSendMessageReq)(nil), // 48: OpenIMServer.msg.batchSendMessageReq - (*BatchSendMessageResp)(nil), // 49: OpenIMServer.msg.batchSendMessageResp - nil, // 50: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry - nil, // 51: OpenIMServer.msg.GetActiveUserResp.DateCountEntry - nil, // 52: OpenIMServer.msg.GetActiveGroupResp.DateCountEntry - (*sdkws.MsgData)(nil), // 53: OpenIMServer.sdkws.MsgData - (*sdkws.RequestPagination)(nil), // 54: OpenIMServer.sdkws.RequestPagination - (*sdkws.UserInfo)(nil), // 55: OpenIMServer.sdkws.UserInfo - (*sdkws.GroupInfo)(nil), // 56: OpenIMServer.sdkws.GroupInfo - (*sdkws.GetMaxSeqReq)(nil), // 57: OpenIMServer.sdkws.GetMaxSeqReq - (*sdkws.PullMessageBySeqsReq)(nil), // 58: OpenIMServer.sdkws.PullMessageBySeqsReq - (*sdkws.GetMaxSeqResp)(nil), // 59: OpenIMServer.sdkws.GetMaxSeqResp - (*sdkws.PullMessageBySeqsResp)(nil), // 60: OpenIMServer.sdkws.PullMessageBySeqsResp -} -var file_msg_msg_proto_depIdxs = []int32{ - 53, // 0: OpenIMServer.msg.MsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 53, // 1: OpenIMServer.msg.MsgDataToDB.msgData:type_name -> OpenIMServer.sdkws.MsgData - 53, // 2: OpenIMServer.msg.PushMsgDataToMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 53, // 3: OpenIMServer.msg.MsgDataToMongoByMQ.msgData:type_name -> OpenIMServer.sdkws.MsgData - 53, // 4: OpenIMServer.msg.SendMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 53, // 5: OpenIMServer.msg.MsgDataToModifyByMQ.messages:type_name -> OpenIMServer.sdkws.MsgData - 23, // 6: OpenIMServer.msg.ClearConversationsMsgReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt - 23, // 7: OpenIMServer.msg.UserClearAllMsgReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt - 23, // 8: OpenIMServer.msg.DeleteMsgsReq.deleteSyncOpt:type_name -> OpenIMServer.msg.DeleteSyncOpt - 50, // 9: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.seqs:type_name -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry - 54, // 10: OpenIMServer.msg.GetActiveUserReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 55, // 11: OpenIMServer.msg.ActiveUser.user:type_name -> OpenIMServer.sdkws.UserInfo - 51, // 12: OpenIMServer.msg.GetActiveUserResp.dateCount:type_name -> OpenIMServer.msg.GetActiveUserResp.DateCountEntry - 40, // 13: OpenIMServer.msg.GetActiveUserResp.users:type_name -> OpenIMServer.msg.ActiveUser - 54, // 14: OpenIMServer.msg.GetActiveGroupReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 56, // 15: OpenIMServer.msg.ActiveGroup.group:type_name -> OpenIMServer.sdkws.GroupInfo - 52, // 16: OpenIMServer.msg.GetActiveGroupResp.dateCount:type_name -> OpenIMServer.msg.GetActiveGroupResp.DateCountEntry - 43, // 17: OpenIMServer.msg.GetActiveGroupResp.groups:type_name -> OpenIMServer.msg.ActiveGroup - 54, // 18: OpenIMServer.msg.SearchMessageReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 47, // 19: OpenIMServer.msg.SearchMessageResp.chatLogs:type_name -> OpenIMServer.msg.ChatLog - 53, // 20: OpenIMServer.msg.batchSendMessageReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 37, // 21: OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp.SeqsEntry.value:type_name -> OpenIMServer.msg.Seqs - 57, // 22: OpenIMServer.msg.msg.GetMaxSeq:input_type -> OpenIMServer.sdkws.GetMaxSeqReq - 34, // 23: OpenIMServer.msg.msg.GetConversationMaxSeq:input_type -> OpenIMServer.msg.GetConversationMaxSeqReq - 58, // 24: OpenIMServer.msg.msg.PullMessageBySeqs:input_type -> OpenIMServer.sdkws.PullMessageBySeqsReq - 45, // 25: OpenIMServer.msg.msg.SearchMessage:input_type -> OpenIMServer.msg.SearchMessageReq - 6, // 26: OpenIMServer.msg.msg.SendMsg:input_type -> OpenIMServer.msg.SendMsgReq - 24, // 27: OpenIMServer.msg.msg.ClearConversationsMsg:input_type -> OpenIMServer.msg.ClearConversationsMsgReq - 26, // 28: OpenIMServer.msg.msg.UserClearAllMsg:input_type -> OpenIMServer.msg.UserClearAllMsgReq - 28, // 29: OpenIMServer.msg.msg.DeleteMsgs:input_type -> OpenIMServer.msg.DeleteMsgsReq - 32, // 30: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:input_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqReq - 30, // 31: OpenIMServer.msg.msg.DeleteMsgPhysical:input_type -> OpenIMServer.msg.DeleteMsgPhysicalReq - 8, // 32: OpenIMServer.msg.msg.SetSendMsgStatus:input_type -> OpenIMServer.msg.SetSendMsgStatusReq - 10, // 33: OpenIMServer.msg.msg.GetSendMsgStatus:input_type -> OpenIMServer.msg.GetSendMsgStatusReq - 15, // 34: OpenIMServer.msg.msg.RevokeMsg:input_type -> OpenIMServer.msg.RevokeMsgReq - 17, // 35: OpenIMServer.msg.msg.MarkMsgsAsRead:input_type -> OpenIMServer.msg.MarkMsgsAsReadReq - 19, // 36: OpenIMServer.msg.msg.MarkConversationAsRead:input_type -> OpenIMServer.msg.MarkConversationAsReadReq - 21, // 37: OpenIMServer.msg.msg.SetConversationHasReadSeq:input_type -> OpenIMServer.msg.SetConversationHasReadSeqReq - 36, // 38: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:input_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqReq - 39, // 39: OpenIMServer.msg.msg.GetActiveUser:input_type -> OpenIMServer.msg.GetActiveUserReq - 42, // 40: OpenIMServer.msg.msg.GetActiveGroup:input_type -> OpenIMServer.msg.GetActiveGroupReq - 59, // 41: OpenIMServer.msg.msg.GetMaxSeq:output_type -> OpenIMServer.sdkws.GetMaxSeqResp - 35, // 42: OpenIMServer.msg.msg.GetConversationMaxSeq:output_type -> OpenIMServer.msg.GetConversationMaxSeqResp - 60, // 43: OpenIMServer.msg.msg.PullMessageBySeqs:output_type -> OpenIMServer.sdkws.PullMessageBySeqsResp - 46, // 44: OpenIMServer.msg.msg.SearchMessage:output_type -> OpenIMServer.msg.SearchMessageResp - 7, // 45: OpenIMServer.msg.msg.SendMsg:output_type -> OpenIMServer.msg.SendMsgResp - 25, // 46: OpenIMServer.msg.msg.ClearConversationsMsg:output_type -> OpenIMServer.msg.ClearConversationsMsgResp - 27, // 47: OpenIMServer.msg.msg.UserClearAllMsg:output_type -> OpenIMServer.msg.UserClearAllMsgResp - 29, // 48: OpenIMServer.msg.msg.DeleteMsgs:output_type -> OpenIMServer.msg.DeleteMsgsResp - 33, // 49: OpenIMServer.msg.msg.DeleteMsgPhysicalBySeq:output_type -> OpenIMServer.msg.DeleteMsgPhysicalBySeqResp - 31, // 50: OpenIMServer.msg.msg.DeleteMsgPhysical:output_type -> OpenIMServer.msg.DeleteMsgPhysicalResp - 9, // 51: OpenIMServer.msg.msg.SetSendMsgStatus:output_type -> OpenIMServer.msg.SetSendMsgStatusResp - 11, // 52: OpenIMServer.msg.msg.GetSendMsgStatus:output_type -> OpenIMServer.msg.GetSendMsgStatusResp - 16, // 53: OpenIMServer.msg.msg.RevokeMsg:output_type -> OpenIMServer.msg.RevokeMsgResp - 18, // 54: OpenIMServer.msg.msg.MarkMsgsAsRead:output_type -> OpenIMServer.msg.MarkMsgsAsReadResp - 20, // 55: OpenIMServer.msg.msg.MarkConversationAsRead:output_type -> OpenIMServer.msg.MarkConversationAsReadResp - 22, // 56: OpenIMServer.msg.msg.SetConversationHasReadSeq:output_type -> OpenIMServer.msg.SetConversationHasReadSeqResp - 38, // 57: OpenIMServer.msg.msg.GetConversationsHasReadAndMaxSeq:output_type -> OpenIMServer.msg.GetConversationsHasReadAndMaxSeqResp - 41, // 58: OpenIMServer.msg.msg.GetActiveUser:output_type -> OpenIMServer.msg.GetActiveUserResp - 44, // 59: OpenIMServer.msg.msg.GetActiveGroup:output_type -> OpenIMServer.msg.GetActiveGroupResp - 41, // [41:60] is the sub-list for method output_type - 22, // [22:41] is the sub-list for method input_type - 22, // [22:22] is the sub-list for extension type_name - 22, // [22:22] is the sub-list for extension extendee - 0, // [0:22] is the sub-list for field type_name -} - -func init() { file_msg_msg_proto_init() } -func file_msg_msg_proto_init() { - if File_msg_msg_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_msg_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgDataToMQ); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgDataToDB); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PushMsgDataToMQ); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgDataToMongoByMQ); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxAndMinSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxAndMinSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SendMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SendMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetSendMsgStatusReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetSendMsgStatusResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetSendMsgStatusReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetSendMsgStatusResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgDataToModifyByMQ); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelMsgsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelMsgsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RevokeMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RevokeMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MarkMsgsAsReadReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MarkMsgsAsReadResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MarkConversationAsReadReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MarkConversationAsReadResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationHasReadSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetConversationHasReadSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteSyncOpt); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ClearConversationsMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ClearConversationsMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserClearAllMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserClearAllMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgPhysicalReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgPhysicalResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgPhysicalBySeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgPhysicalBySeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationMaxSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationMaxSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsHasReadAndMaxSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Seqs); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetConversationsHasReadAndMaxSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActiveUserReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ActiveUser); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActiveUserResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActiveGroupReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ActiveGroup); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetActiveGroupResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SearchMessageReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SearchMessageResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChatLog); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchSendMessageReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msg_msg_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BatchSendMessageResp); 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_msg_msg_proto_rawDesc, - NumEnums: 0, - NumMessages: 53, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_msg_msg_proto_goTypes, - DependencyIndexes: file_msg_msg_proto_depIdxs, - MessageInfos: file_msg_msg_proto_msgTypes, - }.Build() - File_msg_msg_proto = out.File - file_msg_msg_proto_rawDesc = nil - file_msg_msg_proto_goTypes = nil - file_msg_msg_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// MsgClient is the client API for Msg service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type MsgClient interface { - // 获取最小最大seq(包括用户的,以及指定群组的) - GetMaxSeq(ctx context.Context, in *sdkws.GetMaxSeqReq, opts ...grpc.CallOption) (*sdkws.GetMaxSeqResp, error) - GetConversationMaxSeq(ctx context.Context, in *GetConversationMaxSeqReq, opts ...grpc.CallOption) (*GetConversationMaxSeqResp, error) - // 拉取历史消息(包括用户的,以及指定群组的) - PullMessageBySeqs(ctx context.Context, in *sdkws.PullMessageBySeqsReq, opts ...grpc.CallOption) (*sdkws.PullMessageBySeqsResp, error) - SearchMessage(ctx context.Context, in *SearchMessageReq, opts ...grpc.CallOption) (*SearchMessageResp, error) - // 发送消息 - SendMsg(ctx context.Context, in *SendMsgReq, opts ...grpc.CallOption) (*SendMsgResp, error) - // 全量清空指定会话消息 重置min seq 比最大seq大1 - ClearConversationsMsg(ctx context.Context, in *ClearConversationsMsgReq, opts ...grpc.CallOption) (*ClearConversationsMsgResp, error) - // 删除用户全部消息 重置min seq 比最大seq大1 - UserClearAllMsg(ctx context.Context, in *UserClearAllMsgReq, opts ...grpc.CallOption) (*UserClearAllMsgResp, error) - // 用户标记删除部分消息by Seq - DeleteMsgs(ctx context.Context, in *DeleteMsgsReq, opts ...grpc.CallOption) (*DeleteMsgsResp, error) - // seq物理删除消息 - DeleteMsgPhysicalBySeq(ctx context.Context, in *DeleteMsgPhysicalBySeqReq, opts ...grpc.CallOption) (*DeleteMsgPhysicalBySeqResp, error) - // 物理删除消息by 时间 - DeleteMsgPhysical(ctx context.Context, in *DeleteMsgPhysicalReq, opts ...grpc.CallOption) (*DeleteMsgPhysicalResp, error) - // 设置消息是否发送成功-针对api发送的消息 - SetSendMsgStatus(ctx context.Context, in *SetSendMsgStatusReq, opts ...grpc.CallOption) (*SetSendMsgStatusResp, error) - // 获取消息发送状态 - GetSendMsgStatus(ctx context.Context, in *GetSendMsgStatusReq, opts ...grpc.CallOption) (*GetSendMsgStatusResp, error) - RevokeMsg(ctx context.Context, in *RevokeMsgReq, opts ...grpc.CallOption) (*RevokeMsgResp, error) - // mark as read - MarkMsgsAsRead(ctx context.Context, in *MarkMsgsAsReadReq, opts ...grpc.CallOption) (*MarkMsgsAsReadResp, error) - MarkConversationAsRead(ctx context.Context, in *MarkConversationAsReadReq, opts ...grpc.CallOption) (*MarkConversationAsReadResp, error) - SetConversationHasReadSeq(ctx context.Context, in *SetConversationHasReadSeqReq, opts ...grpc.CallOption) (*SetConversationHasReadSeqResp, error) - GetConversationsHasReadAndMaxSeq(ctx context.Context, in *GetConversationsHasReadAndMaxSeqReq, opts ...grpc.CallOption) (*GetConversationsHasReadAndMaxSeqResp, error) - GetActiveUser(ctx context.Context, in *GetActiveUserReq, opts ...grpc.CallOption) (*GetActiveUserResp, error) - GetActiveGroup(ctx context.Context, in *GetActiveGroupReq, opts ...grpc.CallOption) (*GetActiveGroupResp, error) -} - -type msgClient struct { - cc grpc.ClientConnInterface -} - -func NewMsgClient(cc grpc.ClientConnInterface) MsgClient { - return &msgClient{cc} -} - -func (c *msgClient) GetMaxSeq(ctx context.Context, in *sdkws.GetMaxSeqReq, opts ...grpc.CallOption) (*sdkws.GetMaxSeqResp, error) { - out := new(sdkws.GetMaxSeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetMaxSeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) GetConversationMaxSeq(ctx context.Context, in *GetConversationMaxSeqReq, opts ...grpc.CallOption) (*GetConversationMaxSeqResp, error) { - out := new(GetConversationMaxSeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetConversationMaxSeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) PullMessageBySeqs(ctx context.Context, in *sdkws.PullMessageBySeqsReq, opts ...grpc.CallOption) (*sdkws.PullMessageBySeqsResp, error) { - out := new(sdkws.PullMessageBySeqsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/PullMessageBySeqs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) SearchMessage(ctx context.Context, in *SearchMessageReq, opts ...grpc.CallOption) (*SearchMessageResp, error) { - out := new(SearchMessageResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/SearchMessage", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) SendMsg(ctx context.Context, in *SendMsgReq, opts ...grpc.CallOption) (*SendMsgResp, error) { - out := new(SendMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/SendMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) ClearConversationsMsg(ctx context.Context, in *ClearConversationsMsgReq, opts ...grpc.CallOption) (*ClearConversationsMsgResp, error) { - out := new(ClearConversationsMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/ClearConversationsMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) UserClearAllMsg(ctx context.Context, in *UserClearAllMsgReq, opts ...grpc.CallOption) (*UserClearAllMsgResp, error) { - out := new(UserClearAllMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/UserClearAllMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) DeleteMsgs(ctx context.Context, in *DeleteMsgsReq, opts ...grpc.CallOption) (*DeleteMsgsResp, error) { - out := new(DeleteMsgsResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/DeleteMsgs", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) DeleteMsgPhysicalBySeq(ctx context.Context, in *DeleteMsgPhysicalBySeqReq, opts ...grpc.CallOption) (*DeleteMsgPhysicalBySeqResp, error) { - out := new(DeleteMsgPhysicalBySeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/DeleteMsgPhysicalBySeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) DeleteMsgPhysical(ctx context.Context, in *DeleteMsgPhysicalReq, opts ...grpc.CallOption) (*DeleteMsgPhysicalResp, error) { - out := new(DeleteMsgPhysicalResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/DeleteMsgPhysical", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) SetSendMsgStatus(ctx context.Context, in *SetSendMsgStatusReq, opts ...grpc.CallOption) (*SetSendMsgStatusResp, error) { - out := new(SetSendMsgStatusResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/SetSendMsgStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) GetSendMsgStatus(ctx context.Context, in *GetSendMsgStatusReq, opts ...grpc.CallOption) (*GetSendMsgStatusResp, error) { - out := new(GetSendMsgStatusResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetSendMsgStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) RevokeMsg(ctx context.Context, in *RevokeMsgReq, opts ...grpc.CallOption) (*RevokeMsgResp, error) { - out := new(RevokeMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/RevokeMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) MarkMsgsAsRead(ctx context.Context, in *MarkMsgsAsReadReq, opts ...grpc.CallOption) (*MarkMsgsAsReadResp, error) { - out := new(MarkMsgsAsReadResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/MarkMsgsAsRead", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) MarkConversationAsRead(ctx context.Context, in *MarkConversationAsReadReq, opts ...grpc.CallOption) (*MarkConversationAsReadResp, error) { - out := new(MarkConversationAsReadResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/MarkConversationAsRead", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) SetConversationHasReadSeq(ctx context.Context, in *SetConversationHasReadSeqReq, opts ...grpc.CallOption) (*SetConversationHasReadSeqResp, error) { - out := new(SetConversationHasReadSeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/SetConversationHasReadSeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) GetConversationsHasReadAndMaxSeq(ctx context.Context, in *GetConversationsHasReadAndMaxSeqReq, opts ...grpc.CallOption) (*GetConversationsHasReadAndMaxSeqResp, error) { - out := new(GetConversationsHasReadAndMaxSeqResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetConversationsHasReadAndMaxSeq", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) GetActiveUser(ctx context.Context, in *GetActiveUserReq, opts ...grpc.CallOption) (*GetActiveUserResp, error) { - out := new(GetActiveUserResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetActiveUser", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgClient) GetActiveGroup(ctx context.Context, in *GetActiveGroupReq, opts ...grpc.CallOption) (*GetActiveGroupResp, error) { - out := new(GetActiveGroupResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msg.msg/GetActiveGroup", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// MsgServer is the server API for Msg service. -type MsgServer interface { - // 获取最小最大seq(包括用户的,以及指定群组的) - GetMaxSeq(context.Context, *sdkws.GetMaxSeqReq) (*sdkws.GetMaxSeqResp, error) - GetConversationMaxSeq(context.Context, *GetConversationMaxSeqReq) (*GetConversationMaxSeqResp, error) - // 拉取历史消息(包括用户的,以及指定群组的) - PullMessageBySeqs(context.Context, *sdkws.PullMessageBySeqsReq) (*sdkws.PullMessageBySeqsResp, error) - SearchMessage(context.Context, *SearchMessageReq) (*SearchMessageResp, error) - // 发送消息 - SendMsg(context.Context, *SendMsgReq) (*SendMsgResp, error) - // 全量清空指定会话消息 重置min seq 比最大seq大1 - ClearConversationsMsg(context.Context, *ClearConversationsMsgReq) (*ClearConversationsMsgResp, error) - // 删除用户全部消息 重置min seq 比最大seq大1 - UserClearAllMsg(context.Context, *UserClearAllMsgReq) (*UserClearAllMsgResp, error) - // 用户标记删除部分消息by Seq - DeleteMsgs(context.Context, *DeleteMsgsReq) (*DeleteMsgsResp, error) - // seq物理删除消息 - DeleteMsgPhysicalBySeq(context.Context, *DeleteMsgPhysicalBySeqReq) (*DeleteMsgPhysicalBySeqResp, error) - // 物理删除消息by 时间 - DeleteMsgPhysical(context.Context, *DeleteMsgPhysicalReq) (*DeleteMsgPhysicalResp, error) - // 设置消息是否发送成功-针对api发送的消息 - SetSendMsgStatus(context.Context, *SetSendMsgStatusReq) (*SetSendMsgStatusResp, error) - // 获取消息发送状态 - GetSendMsgStatus(context.Context, *GetSendMsgStatusReq) (*GetSendMsgStatusResp, error) - RevokeMsg(context.Context, *RevokeMsgReq) (*RevokeMsgResp, error) - // mark as read - MarkMsgsAsRead(context.Context, *MarkMsgsAsReadReq) (*MarkMsgsAsReadResp, error) - MarkConversationAsRead(context.Context, *MarkConversationAsReadReq) (*MarkConversationAsReadResp, error) - SetConversationHasReadSeq(context.Context, *SetConversationHasReadSeqReq) (*SetConversationHasReadSeqResp, error) - GetConversationsHasReadAndMaxSeq(context.Context, *GetConversationsHasReadAndMaxSeqReq) (*GetConversationsHasReadAndMaxSeqResp, error) - GetActiveUser(context.Context, *GetActiveUserReq) (*GetActiveUserResp, error) - GetActiveGroup(context.Context, *GetActiveGroupReq) (*GetActiveGroupResp, error) -} - -// UnimplementedMsgServer can be embedded to have forward compatible implementations. -type UnimplementedMsgServer struct { -} - -func (*UnimplementedMsgServer) GetMaxSeq(context.Context, *sdkws.GetMaxSeqReq) (*sdkws.GetMaxSeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetMaxSeq not implemented") -} -func (*UnimplementedMsgServer) GetConversationMaxSeq(context.Context, *GetConversationMaxSeqReq) (*GetConversationMaxSeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversationMaxSeq not implemented") -} -func (*UnimplementedMsgServer) PullMessageBySeqs(context.Context, *sdkws.PullMessageBySeqsReq) (*sdkws.PullMessageBySeqsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method PullMessageBySeqs not implemented") -} -func (*UnimplementedMsgServer) SearchMessage(context.Context, *SearchMessageReq) (*SearchMessageResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SearchMessage not implemented") -} -func (*UnimplementedMsgServer) SendMsg(context.Context, *SendMsgReq) (*SendMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SendMsg not implemented") -} -func (*UnimplementedMsgServer) ClearConversationsMsg(context.Context, *ClearConversationsMsgReq) (*ClearConversationsMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method ClearConversationsMsg not implemented") -} -func (*UnimplementedMsgServer) UserClearAllMsg(context.Context, *UserClearAllMsgReq) (*UserClearAllMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UserClearAllMsg not implemented") -} -func (*UnimplementedMsgServer) DeleteMsgs(context.Context, *DeleteMsgsReq) (*DeleteMsgsResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteMsgs not implemented") -} -func (*UnimplementedMsgServer) DeleteMsgPhysicalBySeq(context.Context, *DeleteMsgPhysicalBySeqReq) (*DeleteMsgPhysicalBySeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteMsgPhysicalBySeq not implemented") -} -func (*UnimplementedMsgServer) DeleteMsgPhysical(context.Context, *DeleteMsgPhysicalReq) (*DeleteMsgPhysicalResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteMsgPhysical not implemented") -} -func (*UnimplementedMsgServer) SetSendMsgStatus(context.Context, *SetSendMsgStatusReq) (*SetSendMsgStatusResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetSendMsgStatus not implemented") -} -func (*UnimplementedMsgServer) GetSendMsgStatus(context.Context, *GetSendMsgStatusReq) (*GetSendMsgStatusResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetSendMsgStatus not implemented") -} -func (*UnimplementedMsgServer) RevokeMsg(context.Context, *RevokeMsgReq) (*RevokeMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method RevokeMsg not implemented") -} -func (*UnimplementedMsgServer) MarkMsgsAsRead(context.Context, *MarkMsgsAsReadReq) (*MarkMsgsAsReadResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method MarkMsgsAsRead not implemented") -} -func (*UnimplementedMsgServer) MarkConversationAsRead(context.Context, *MarkConversationAsReadReq) (*MarkConversationAsReadResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method MarkConversationAsRead not implemented") -} -func (*UnimplementedMsgServer) SetConversationHasReadSeq(context.Context, *SetConversationHasReadSeqReq) (*SetConversationHasReadSeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetConversationHasReadSeq not implemented") -} -func (*UnimplementedMsgServer) GetConversationsHasReadAndMaxSeq(context.Context, *GetConversationsHasReadAndMaxSeqReq) (*GetConversationsHasReadAndMaxSeqResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetConversationsHasReadAndMaxSeq not implemented") -} -func (*UnimplementedMsgServer) GetActiveUser(context.Context, *GetActiveUserReq) (*GetActiveUserResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetActiveUser not implemented") -} -func (*UnimplementedMsgServer) GetActiveGroup(context.Context, *GetActiveGroupReq) (*GetActiveGroupResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetActiveGroup not implemented") -} - -func RegisterMsgServer(s *grpc.Server, srv MsgServer) { - s.RegisterService(&_Msg_serviceDesc, srv) -} - -func _Msg_GetMaxSeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(sdkws.GetMaxSeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetMaxSeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetMaxSeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetMaxSeq(ctx, req.(*sdkws.GetMaxSeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_GetConversationMaxSeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationMaxSeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetConversationMaxSeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetConversationMaxSeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetConversationMaxSeq(ctx, req.(*GetConversationMaxSeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_PullMessageBySeqs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(sdkws.PullMessageBySeqsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).PullMessageBySeqs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/PullMessageBySeqs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).PullMessageBySeqs(ctx, req.(*sdkws.PullMessageBySeqsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_SearchMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SearchMessageReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).SearchMessage(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/SearchMessage", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).SearchMessage(ctx, req.(*SearchMessageReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_SendMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SendMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).SendMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/SendMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).SendMsg(ctx, req.(*SendMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_ClearConversationsMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ClearConversationsMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).ClearConversationsMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/ClearConversationsMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).ClearConversationsMsg(ctx, req.(*ClearConversationsMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_UserClearAllMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UserClearAllMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).UserClearAllMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/UserClearAllMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).UserClearAllMsg(ctx, req.(*UserClearAllMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_DeleteMsgs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteMsgsReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).DeleteMsgs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/DeleteMsgs", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).DeleteMsgs(ctx, req.(*DeleteMsgsReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_DeleteMsgPhysicalBySeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteMsgPhysicalBySeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).DeleteMsgPhysicalBySeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/DeleteMsgPhysicalBySeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).DeleteMsgPhysicalBySeq(ctx, req.(*DeleteMsgPhysicalBySeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_DeleteMsgPhysical_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteMsgPhysicalReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).DeleteMsgPhysical(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/DeleteMsgPhysical", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).DeleteMsgPhysical(ctx, req.(*DeleteMsgPhysicalReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_SetSendMsgStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetSendMsgStatusReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).SetSendMsgStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/SetSendMsgStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).SetSendMsgStatus(ctx, req.(*SetSendMsgStatusReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_GetSendMsgStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetSendMsgStatusReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetSendMsgStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetSendMsgStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetSendMsgStatus(ctx, req.(*GetSendMsgStatusReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_RevokeMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RevokeMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).RevokeMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/RevokeMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).RevokeMsg(ctx, req.(*RevokeMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_MarkMsgsAsRead_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MarkMsgsAsReadReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).MarkMsgsAsRead(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/MarkMsgsAsRead", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).MarkMsgsAsRead(ctx, req.(*MarkMsgsAsReadReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_MarkConversationAsRead_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MarkConversationAsReadReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).MarkConversationAsRead(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/MarkConversationAsRead", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).MarkConversationAsRead(ctx, req.(*MarkConversationAsReadReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_SetConversationHasReadSeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetConversationHasReadSeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).SetConversationHasReadSeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/SetConversationHasReadSeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).SetConversationHasReadSeq(ctx, req.(*SetConversationHasReadSeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_GetConversationsHasReadAndMaxSeq_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetConversationsHasReadAndMaxSeqReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetConversationsHasReadAndMaxSeq(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetConversationsHasReadAndMaxSeq", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetConversationsHasReadAndMaxSeq(ctx, req.(*GetConversationsHasReadAndMaxSeqReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_GetActiveUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetActiveUserReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetActiveUser(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetActiveUser", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetActiveUser(ctx, req.(*GetActiveUserReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Msg_GetActiveGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetActiveGroupReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgServer).GetActiveGroup(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msg.msg/GetActiveGroup", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgServer).GetActiveGroup(ctx, req.(*GetActiveGroupReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Msg_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.msg.msg", - HandlerType: (*MsgServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetMaxSeq", - Handler: _Msg_GetMaxSeq_Handler, - }, - { - MethodName: "GetConversationMaxSeq", - Handler: _Msg_GetConversationMaxSeq_Handler, - }, - { - MethodName: "PullMessageBySeqs", - Handler: _Msg_PullMessageBySeqs_Handler, - }, - { - MethodName: "SearchMessage", - Handler: _Msg_SearchMessage_Handler, - }, - { - MethodName: "SendMsg", - Handler: _Msg_SendMsg_Handler, - }, - { - MethodName: "ClearConversationsMsg", - Handler: _Msg_ClearConversationsMsg_Handler, - }, - { - MethodName: "UserClearAllMsg", - Handler: _Msg_UserClearAllMsg_Handler, - }, - { - MethodName: "DeleteMsgs", - Handler: _Msg_DeleteMsgs_Handler, - }, - { - MethodName: "DeleteMsgPhysicalBySeq", - Handler: _Msg_DeleteMsgPhysicalBySeq_Handler, - }, - { - MethodName: "DeleteMsgPhysical", - Handler: _Msg_DeleteMsgPhysical_Handler, - }, - { - MethodName: "SetSendMsgStatus", - Handler: _Msg_SetSendMsgStatus_Handler, - }, - { - MethodName: "GetSendMsgStatus", - Handler: _Msg_GetSendMsgStatus_Handler, - }, - { - MethodName: "RevokeMsg", - Handler: _Msg_RevokeMsg_Handler, - }, - { - MethodName: "MarkMsgsAsRead", - Handler: _Msg_MarkMsgsAsRead_Handler, - }, - { - MethodName: "MarkConversationAsRead", - Handler: _Msg_MarkConversationAsRead_Handler, - }, - { - MethodName: "SetConversationHasReadSeq", - Handler: _Msg_SetConversationHasReadSeq_Handler, - }, - { - MethodName: "GetConversationsHasReadAndMaxSeq", - Handler: _Msg_GetConversationsHasReadAndMaxSeq_Handler, - }, - { - MethodName: "GetActiveUser", - Handler: _Msg_GetActiveUser_Handler, - }, - { - MethodName: "GetActiveGroup", - Handler: _Msg_GetActiveGroup_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "msg/msg.proto", -} diff --git a/pkg/proto/msg/msg.proto b/pkg/proto/msg/msg.proto deleted file mode 100644 index af1d137b9..000000000 --- a/pkg/proto/msg/msg.proto +++ /dev/null @@ -1,319 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.msg; -import "sdkws/sdkws.proto"; -// import "wrapperspb/wrapperspb.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg"; - -message MsgDataToMQ{ - string token = 1; - sdkws.MsgData msgData = 2; -} - - -message MsgDataToDB { - sdkws.MsgData msgData = 1; -} - -message PushMsgDataToMQ{ - sdkws.MsgData msgData = 1; - string conversationID = 2; -} - -message MsgDataToMongoByMQ{ - int64 lastSeq = 1; - string conversationID = 2; - repeated sdkws.MsgData msgData = 3; -} - -message GetMaxAndMinSeqReq { - string UserID = 1; -} -message GetMaxAndMinSeqResp { - int64 MaxSeq = 1; - int64 MinSeq = 2; -} - -message SendMsgReq { - sdkws.MsgData msgData = 3; -} - -message SendMsgResp { - string serverMsgID = 1; - string clientMsgID = 2; - int64 sendTime = 3; -} - - - -message SetSendMsgStatusReq{ - int32 status = 1; -} - -message SetSendMsgStatusResp{ -} - -message GetSendMsgStatusReq{ -} - -message GetSendMsgStatusResp{ - int32 status = 1; -} - - -message MsgDataToModifyByMQ{ - repeated sdkws.MsgData messages = 1; - string conversationID = 2; -} - -message DelMsgsReq{ -} - -message DelMsgsResp{ -} - -message RevokeMsgReq { - string conversationID = 1; - int64 seq = 2; - string userID = 3; -} - -message RevokeMsgResp { -} - -message MarkMsgsAsReadReq { - string conversationID = 1; - repeated int64 seqs = 2; - string userID = 3; -} - -message MarkMsgsAsReadResp { -} - -message MarkConversationAsReadReq { - string conversationID = 1; - string userID = 2; - int64 hasReadSeq = 3; - repeated int64 seqs = 4; -} - -message MarkConversationAsReadResp { -} - -message SetConversationHasReadSeqReq { - string conversationID = 1; - string userID = 2; - int64 hasReadSeq = 3; -} - -message SetConversationHasReadSeqResp { -} - -message DeleteSyncOpt { - bool IsSyncSelf = 3; - bool IsSyncOther = 4; -} - -message ClearConversationsMsgReq { - repeated string conversationIDs = 1; - string userID = 2; - DeleteSyncOpt deleteSyncOpt = 3; -} - -message ClearConversationsMsgResp { -} - -message UserClearAllMsgReq { - string userID = 1; - DeleteSyncOpt deleteSyncOpt = 3; -} - -message UserClearAllMsgResp { -} - -message DeleteMsgsReq { - string conversationID = 1; - repeated int64 seqs = 2; - string userID = 3; - DeleteSyncOpt deleteSyncOpt = 4; -} - -message DeleteMsgsResp { -} - -message DeleteMsgPhysicalReq { - repeated string conversationIDs = 1; - int64 timestamp = 2; -} - -message DeleteMsgPhysicalResp { -} - -message DeleteMsgPhysicalBySeqReq { - string conversationID = 1; - repeated int64 seqs = 2; -} - -message DeleteMsgPhysicalBySeqResp { - -} - -message GetConversationMaxSeqReq { - string conversationID = 1; -} - -message GetConversationMaxSeqResp { - int64 maxSeq = 1; -} - - -message GetConversationsHasReadAndMaxSeqReq { - string userID = 1; -} - -message Seqs { - int64 maxSeq = 1; - int64 hasReadSeq = 2; -} - -message GetConversationsHasReadAndMaxSeqResp { - map<string, Seqs> seqs = 1; -} - -message GetActiveUserReq { - int64 start = 1; - int64 end = 2; - bool ase = 3; - bool group = 4; - sdkws.RequestPagination pagination = 5; -} - -message ActiveUser { - sdkws.UserInfo user = 1; - int64 count = 2; -} - -message GetActiveUserResp { - int64 msgCount = 1; - int64 userCount = 2; - map<string, int64> dateCount = 3; - repeated ActiveUser users = 4; -} - -message GetActiveGroupReq { - int64 start = 1; - int64 end = 2; - bool ase = 3; - sdkws.RequestPagination pagination = 4; -} - -message ActiveGroup { - sdkws.GroupInfo group = 1; - int64 count = 2; -} - -message GetActiveGroupResp { - int64 msgCount = 1; - int64 groupCount = 2; - map<string, int64> dateCount = 3; - repeated ActiveGroup groups = 4; -} - -message SearchMessageReq{ - string sendID=1;//发送者ID - string recvID=2;//接收者ID - int32 msgType=3; - string sendTime=4; - int32 sessionType=5; - sdkws.RequestPagination pagination = 6; -} - -message SearchMessageResp{ - repeated ChatLog chatLogs=1; - int32 chatLogsNum = 2; -} - - -message ChatLog { - string serverMsgID = 1; - string clientMsgID = 2; - string sendID = 3; - string recvID = 4; - string groupID = 5; - string recvNickname = 6; - int32 senderPlatformID = 7; - string senderNickname = 8; - string senderFaceURL = 9; - string groupName = 10; - int32 sessionType = 11; - int32 msgFrom = 12; - int32 contentType = 13; - string content = 14; - int32 status = 15; - int64 sendTime = 16; - int64 createTime = 17; - string ex = 18; - string groupFaceURL=19; - uint32 groupMemberCount=20; - int64 seq=21; - string groupOwner=22; - int32 groupType=23; -} - -message batchSendMessageReq{ - repeated string recvIDList=1; - sdkws.MsgData msgData = 2; -} - -message batchSendMessageResp{ -} - -service msg { - //获取最小最大seq(包括用户的,以及指定群组的) - rpc GetMaxSeq(sdkws.GetMaxSeqReq) returns(sdkws.GetMaxSeqResp); - rpc GetConversationMaxSeq(GetConversationMaxSeqReq) returns(GetConversationMaxSeqResp); - //拉取历史消息(包括用户的,以及指定群组的) - rpc PullMessageBySeqs(sdkws.PullMessageBySeqsReq) returns(sdkws.PullMessageBySeqsResp); - rpc SearchMessage(SearchMessageReq) returns(SearchMessageResp); - //发送消息 - rpc SendMsg(SendMsgReq) returns(SendMsgResp); - - // 全量清空指定会话消息 重置min seq 比最大seq大1 - rpc ClearConversationsMsg(ClearConversationsMsgReq) returns(ClearConversationsMsgResp); - // 删除用户全部消息 重置min seq 比最大seq大1 - rpc UserClearAllMsg(UserClearAllMsgReq) returns(UserClearAllMsgResp); - // 用户标记删除部分消息by Seq - rpc DeleteMsgs(DeleteMsgsReq) returns(DeleteMsgsResp); - // seq物理删除消息 - rpc DeleteMsgPhysicalBySeq(DeleteMsgPhysicalBySeqReq) returns(DeleteMsgPhysicalBySeqResp); - // 物理删除消息by 时间 - rpc DeleteMsgPhysical(DeleteMsgPhysicalReq) returns(DeleteMsgPhysicalResp); - - //设置消息是否发送成功-针对api发送的消息 - rpc SetSendMsgStatus(SetSendMsgStatusReq) returns(SetSendMsgStatusResp); - //获取消息发送状态 - rpc GetSendMsgStatus(GetSendMsgStatusReq) returns(GetSendMsgStatusResp); - rpc RevokeMsg(RevokeMsgReq) returns(RevokeMsgResp); - // mark as read - rpc MarkMsgsAsRead(MarkMsgsAsReadReq) returns(MarkMsgsAsReadResp); - rpc MarkConversationAsRead(MarkConversationAsReadReq) returns(MarkConversationAsReadResp); - rpc SetConversationHasReadSeq(SetConversationHasReadSeqReq) returns(SetConversationHasReadSeqResp); - - rpc GetConversationsHasReadAndMaxSeq(GetConversationsHasReadAndMaxSeqReq) returns(GetConversationsHasReadAndMaxSeqResp); - - rpc GetActiveUser(GetActiveUserReq) returns(GetActiveUserResp); - rpc GetActiveGroup(GetActiveGroupReq) returns(GetActiveGroupResp); -} diff --git a/pkg/proto/msggateway/msggateway.go b/pkg/proto/msggateway/msggateway.go deleted file mode 100644 index 5e0c85b45..000000000 --- a/pkg/proto/msggateway/msggateway.go +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package msggateway - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *OnlinePushMsgReq) Check() error { - if x.MsgData == nil { - return errs.ErrArgs.Wrap("MsgData is empty") - } - if err := x.MsgData.Check(); err != nil { - return err - } - if x.PushToUserID == "" { - return errs.ErrArgs.Wrap("PushToUserID is empty") - } - return nil -} - -func (x *OnlineBatchPushOneMsgReq) Check() error { - if x.MsgData == nil { - return errs.ErrArgs.Wrap("MsgData is empty") - } - if err := x.MsgData.Check(); err != nil { - return err - } - if x.PushToUserIDs == nil { - return errs.ErrArgs.Wrap("PushToUserIDs is empty") - } - return nil -} - -func (x *GetUsersOnlineStatusReq) Check() error { - if x.UserIDs == nil { - return errs.ErrArgs.Wrap("UserIDs is empty") - } - return nil -} - -func (x *KickUserOfflineReq) Check() error { - if x.PlatformID < 1 || x.PlatformID > 9 { - return errs.ErrArgs.Wrap("PlatformID is invalid") - } - if x.KickUserIDList == nil { - return errs.ErrArgs.Wrap("KickUserIDList is empty") - } - return nil -} - -func (x *MultiTerminalLoginCheckReq) Check() error { - if x.PlatformID < 1 || x.PlatformID > 9 { - return errs.ErrArgs.Wrap("PlatformID is invalid") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - if x.Token == "" { - return errs.ErrArgs.Wrap("Token is empty") - } - return nil -} diff --git a/pkg/proto/msggateway/msggateway.pb.go b/pkg/proto/msggateway/msggateway.pb.go deleted file mode 100644 index d922d98b4..000000000 --- a/pkg/proto/msggateway/msggateway.pb.go +++ /dev/null @@ -1,1724 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: msggateway/msggateway.proto - -package msggateway - -import ( - context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - 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) -) - -type OnlinePushMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` - PushToUserID string `protobuf:"bytes,2,opt,name=pushToUserID,proto3" json:"pushToUserID"` -} - -func (x *OnlinePushMsgReq) Reset() { - *x = OnlinePushMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OnlinePushMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OnlinePushMsgReq) ProtoMessage() {} - -func (x *OnlinePushMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use OnlinePushMsgReq.ProtoReflect.Descriptor instead. -func (*OnlinePushMsgReq) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{0} -} - -func (x *OnlinePushMsgReq) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -func (x *OnlinePushMsgReq) GetPushToUserID() string { - if x != nil { - return x.PushToUserID - } - return "" -} - -type OnlinePushMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Resp []*SingleMsgToUserPlatform `protobuf:"bytes,1,rep,name=resp,proto3" json:"resp"` -} - -func (x *OnlinePushMsgResp) Reset() { - *x = OnlinePushMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OnlinePushMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OnlinePushMsgResp) ProtoMessage() {} - -func (x *OnlinePushMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use OnlinePushMsgResp.ProtoReflect.Descriptor instead. -func (*OnlinePushMsgResp) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{1} -} - -func (x *OnlinePushMsgResp) GetResp() []*SingleMsgToUserPlatform { - if x != nil { - return x.Resp - } - return nil -} - -type SingleMsgToUserResults struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Resp []*SingleMsgToUserPlatform `protobuf:"bytes,2,rep,name=resp,proto3" json:"resp"` - OnlinePush bool `protobuf:"varint,3,opt,name=onlinePush,proto3" json:"onlinePush"` -} - -func (x *SingleMsgToUserResults) Reset() { - *x = SingleMsgToUserResults{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleMsgToUserResults) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleMsgToUserResults) ProtoMessage() {} - -func (x *SingleMsgToUserResults) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use SingleMsgToUserResults.ProtoReflect.Descriptor instead. -func (*SingleMsgToUserResults) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{2} -} - -func (x *SingleMsgToUserResults) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SingleMsgToUserResults) GetResp() []*SingleMsgToUserPlatform { - if x != nil { - return x.Resp - } - return nil -} - -func (x *SingleMsgToUserResults) GetOnlinePush() bool { - if x != nil { - return x.OnlinePush - } - return false -} - -type OnlineBatchPushOneMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` - PushToUserIDs []string `protobuf:"bytes,2,rep,name=pushToUserIDs,proto3" json:"pushToUserIDs"` -} - -func (x *OnlineBatchPushOneMsgReq) Reset() { - *x = OnlineBatchPushOneMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OnlineBatchPushOneMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OnlineBatchPushOneMsgReq) ProtoMessage() {} - -func (x *OnlineBatchPushOneMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use OnlineBatchPushOneMsgReq.ProtoReflect.Descriptor instead. -func (*OnlineBatchPushOneMsgReq) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{3} -} - -func (x *OnlineBatchPushOneMsgReq) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -func (x *OnlineBatchPushOneMsgReq) GetPushToUserIDs() []string { - if x != nil { - return x.PushToUserIDs - } - return nil -} - -type OnlineBatchPushOneMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SinglePushResult []*SingleMsgToUserResults `protobuf:"bytes,1,rep,name=singlePushResult,proto3" json:"singlePushResult"` -} - -func (x *OnlineBatchPushOneMsgResp) Reset() { - *x = OnlineBatchPushOneMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OnlineBatchPushOneMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OnlineBatchPushOneMsgResp) ProtoMessage() {} - -func (x *OnlineBatchPushOneMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use OnlineBatchPushOneMsgResp.ProtoReflect.Descriptor instead. -func (*OnlineBatchPushOneMsgResp) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{4} -} - -func (x *OnlineBatchPushOneMsgResp) GetSinglePushResult() []*SingleMsgToUserResults { - if x != nil { - return x.SinglePushResult - } - return nil -} - -type SingleMsgToUserPlatform struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ResultCode int64 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode"` - RecvID string `protobuf:"bytes,2,opt,name=RecvID,proto3" json:"RecvID"` - RecvPlatFormID int32 `protobuf:"varint,3,opt,name=RecvPlatFormID,proto3" json:"RecvPlatFormID"` -} - -func (x *SingleMsgToUserPlatform) Reset() { - *x = SingleMsgToUserPlatform{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleMsgToUserPlatform) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleMsgToUserPlatform) ProtoMessage() {} - -func (x *SingleMsgToUserPlatform) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use SingleMsgToUserPlatform.ProtoReflect.Descriptor instead. -func (*SingleMsgToUserPlatform) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{5} -} - -func (x *SingleMsgToUserPlatform) GetResultCode() int64 { - if x != nil { - return x.ResultCode - } - return 0 -} - -func (x *SingleMsgToUserPlatform) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *SingleMsgToUserPlatform) GetRecvPlatFormID() int32 { - if x != nil { - return x.RecvPlatFormID - } - return 0 -} - -type GetUsersOnlineStatusReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetUsersOnlineStatusReq) Reset() { - *x = GetUsersOnlineStatusReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUsersOnlineStatusReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUsersOnlineStatusReq) ProtoMessage() {} - -func (x *GetUsersOnlineStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use GetUsersOnlineStatusReq.ProtoReflect.Descriptor instead. -func (*GetUsersOnlineStatusReq) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{6} -} - -func (x *GetUsersOnlineStatusReq) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type GetUsersOnlineStatusResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SuccessResult []*GetUsersOnlineStatusResp_SuccessResult `protobuf:"bytes,1,rep,name=successResult,proto3" json:"successResult"` - FailedResult []*GetUsersOnlineStatusResp_FailedDetail `protobuf:"bytes,2,rep,name=failedResult,proto3" json:"failedResult"` -} - -func (x *GetUsersOnlineStatusResp) Reset() { - *x = GetUsersOnlineStatusResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUsersOnlineStatusResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUsersOnlineStatusResp) ProtoMessage() {} - -func (x *GetUsersOnlineStatusResp) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use GetUsersOnlineStatusResp.ProtoReflect.Descriptor instead. -func (*GetUsersOnlineStatusResp) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{7} -} - -func (x *GetUsersOnlineStatusResp) GetSuccessResult() []*GetUsersOnlineStatusResp_SuccessResult { - if x != nil { - return x.SuccessResult - } - return nil -} - -func (x *GetUsersOnlineStatusResp) GetFailedResult() []*GetUsersOnlineStatusResp_FailedDetail { - if x != nil { - return x.FailedResult - } - return nil -} - -type SingleDetail struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` - SinglePlatformToken []*SinglePlatformToken `protobuf:"bytes,3,rep,name=singlePlatformToken,proto3" json:"singlePlatformToken"` -} - -func (x *SingleDetail) Reset() { - *x = SingleDetail{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleDetail) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleDetail) ProtoMessage() {} - -func (x *SingleDetail) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use SingleDetail.ProtoReflect.Descriptor instead. -func (*SingleDetail) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{8} -} - -func (x *SingleDetail) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SingleDetail) GetStatus() string { - if x != nil { - return x.Status - } - return "" -} - -func (x *SingleDetail) GetSinglePlatformToken() []*SinglePlatformToken { - if x != nil { - return x.SinglePlatformToken - } - return nil -} - -type SinglePlatformToken struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Total int32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` - Token []string `protobuf:"bytes,3,rep,name=token,proto3" json:"token"` -} - -func (x *SinglePlatformToken) Reset() { - *x = SinglePlatformToken{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SinglePlatformToken) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SinglePlatformToken) ProtoMessage() {} - -func (x *SinglePlatformToken) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use SinglePlatformToken.ProtoReflect.Descriptor instead. -func (*SinglePlatformToken) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{9} -} - -func (x *SinglePlatformToken) GetPlatform() string { - if x != nil { - return x.Platform - } - return "" -} - -func (x *SinglePlatformToken) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *SinglePlatformToken) GetToken() []string { - if x != nil { - return x.Token - } - return nil -} - -type KickUserOfflineReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - KickUserIDList []string `protobuf:"bytes,2,rep,name=kickUserIDList,proto3" json:"kickUserIDList"` -} - -func (x *KickUserOfflineReq) Reset() { - *x = KickUserOfflineReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *KickUserOfflineReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*KickUserOfflineReq) ProtoMessage() {} - -func (x *KickUserOfflineReq) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use KickUserOfflineReq.ProtoReflect.Descriptor instead. -func (*KickUserOfflineReq) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{10} -} - -func (x *KickUserOfflineReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -func (x *KickUserOfflineReq) GetKickUserIDList() []string { - if x != nil { - return x.KickUserIDList - } - return nil -} - -type KickUserOfflineResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *KickUserOfflineResp) Reset() { - *x = KickUserOfflineResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *KickUserOfflineResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*KickUserOfflineResp) ProtoMessage() {} - -func (x *KickUserOfflineResp) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use KickUserOfflineResp.ProtoReflect.Descriptor instead. -func (*KickUserOfflineResp) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{11} -} - -type MultiTerminalLoginCheckReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` - OperationID string `protobuf:"bytes,4,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *MultiTerminalLoginCheckReq) Reset() { - *x = MultiTerminalLoginCheckReq{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MultiTerminalLoginCheckReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MultiTerminalLoginCheckReq) ProtoMessage() {} - -func (x *MultiTerminalLoginCheckReq) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_proto_msgTypes[12] - 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 MultiTerminalLoginCheckReq.ProtoReflect.Descriptor instead. -func (*MultiTerminalLoginCheckReq) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{12} -} - -func (x *MultiTerminalLoginCheckReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *MultiTerminalLoginCheckReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -func (x *MultiTerminalLoginCheckReq) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -func (x *MultiTerminalLoginCheckReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type MultiTerminalLoginCheckResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *MultiTerminalLoginCheckResp) Reset() { - *x = MultiTerminalLoginCheckResp{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MultiTerminalLoginCheckResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MultiTerminalLoginCheckResp) ProtoMessage() {} - -func (x *MultiTerminalLoginCheckResp) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use MultiTerminalLoginCheckResp.ProtoReflect.Descriptor instead. -func (*MultiTerminalLoginCheckResp) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{13} -} - -type GetUsersOnlineStatusResp_SuccessDetail struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` - ConnID string `protobuf:"bytes,3,opt,name=connID,proto3" json:"connID"` - IsBackground bool `protobuf:"varint,4,opt,name=isBackground,proto3" json:"isBackground"` - Token string `protobuf:"bytes,5,opt,name=token,proto3" json:"token"` -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) Reset() { - *x = GetUsersOnlineStatusResp_SuccessDetail{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUsersOnlineStatusResp_SuccessDetail) ProtoMessage() {} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_proto_msgTypes[14] - 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 GetUsersOnlineStatusResp_SuccessDetail.ProtoReflect.Descriptor instead. -func (*GetUsersOnlineStatusResp_SuccessDetail) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{7, 0} -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) GetPlatform() string { - if x != nil { - return x.Platform - } - return "" -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) GetStatus() string { - if x != nil { - return x.Status - } - return "" -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) GetConnID() string { - if x != nil { - return x.ConnID - } - return "" -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) GetIsBackground() bool { - if x != nil { - return x.IsBackground - } - return false -} - -func (x *GetUsersOnlineStatusResp_SuccessDetail) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -type GetUsersOnlineStatusResp_FailedDetail struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetUsersOnlineStatusResp_FailedDetail) Reset() { - *x = GetUsersOnlineStatusResp_FailedDetail{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUsersOnlineStatusResp_FailedDetail) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUsersOnlineStatusResp_FailedDetail) ProtoMessage() {} - -func (x *GetUsersOnlineStatusResp_FailedDetail) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use GetUsersOnlineStatusResp_FailedDetail.ProtoReflect.Descriptor instead. -func (*GetUsersOnlineStatusResp_FailedDetail) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{7, 1} -} - -func (x *GetUsersOnlineStatusResp_FailedDetail) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetUsersOnlineStatusResp_SuccessResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` - DetailPlatformStatus []*GetUsersOnlineStatusResp_SuccessDetail `protobuf:"bytes,3,rep,name=detailPlatformStatus,proto3" json:"detailPlatformStatus"` -} - -func (x *GetUsersOnlineStatusResp_SuccessResult) Reset() { - *x = GetUsersOnlineStatusResp_SuccessResult{} - if protoimpl.UnsafeEnabled { - mi := &file_msggateway_msggateway_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetUsersOnlineStatusResp_SuccessResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetUsersOnlineStatusResp_SuccessResult) ProtoMessage() {} - -func (x *GetUsersOnlineStatusResp_SuccessResult) ProtoReflect() protoreflect.Message { - mi := &file_msggateway_msggateway_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) -} - -// Deprecated: Use GetUsersOnlineStatusResp_SuccessResult.ProtoReflect.Descriptor instead. -func (*GetUsersOnlineStatusResp_SuccessResult) Descriptor() ([]byte, []int) { - return file_msggateway_msggateway_proto_rawDescGZIP(), []int{7, 2} -} - -func (x *GetUsersOnlineStatusResp_SuccessResult) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GetUsersOnlineStatusResp_SuccessResult) GetStatus() string { - if x != nil { - return x.Status - } - return "" -} - -func (x *GetUsersOnlineStatusResp_SuccessResult) GetDetailPlatformStatus() []*GetUsersOnlineStatusResp_SuccessDetail { - if x != nil { - return x.DetailPlatformStatus - } - return nil -} - -var File_msggateway_msggateway_proto protoreflect.FileDescriptor - -var file_msggateway_msggateway_proto_rawDesc = []byte{ - 0x0a, 0x1b, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2f, 0x6d, 0x73, 0x67, - 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6d, 0x0a, 0x10, 0x4f, 0x6e, 0x6c, - 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, - 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x75, 0x73, 0x68, - 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x59, 0x0a, 0x11, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x44, 0x0a, - 0x04, 0x72, 0x65, 0x73, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, - 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x54, - 0x6f, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x04, 0x72, - 0x65, 0x73, 0x70, 0x22, 0x96, 0x01, 0x0a, 0x16, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x73, - 0x67, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 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, 0x44, 0x0a, 0x04, 0x72, 0x65, 0x73, 0x70, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x50, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x04, 0x72, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, - 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0a, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x22, 0x77, 0x0a, 0x18, - 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, - 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x44, - 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, - 0x24, 0x0a, 0x0d, 0x70, 0x75, 0x73, 0x68, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x75, 0x73, 0x68, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x78, 0x0a, 0x19, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x5b, 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x73, 0x67, - 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x10, 0x73, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, - 0x79, 0x0a, 0x17, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, - 0x63, 0x76, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x52, 0x65, 0x63, 0x76, - 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x52, 0x65, 0x63, 0x76, 0x50, 0x6c, 0x61, 0x74, 0x46, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x52, 0x65, 0x63, 0x76, - 0x50, 0x6c, 0x61, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x33, 0x0a, 0x17, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, - 0xdc, 0x04, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x65, 0x0a, 0x0d, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0d, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x62, 0x0a, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, - 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x46, 0x61, 0x69, - 0x6c, 0x65, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0c, 0x66, 0x61, 0x69, 0x6c, 0x65, - 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x1a, 0x95, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x63, 0x6f, 0x6e, 0x6e, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, - 0x6f, 0x6e, 0x6e, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x67, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x42, - 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, - 0x26, 0x0a, 0x0c, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, - 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x1a, 0xb4, 0x01, 0x0a, 0x0d, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 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, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x73, 0x0a, 0x14, 0x64, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, - 0x79, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x53, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x14, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x9e, - 0x01, 0x0a, 0x0c, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 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, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x5e, 0x0a, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x13, 0x73, 0x69, 0x6e, 0x67, - 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, - 0x5d, 0x0a, 0x13, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x5c, - 0x0a, 0x12, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, - 0x65, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x6b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x6b, 0x69, - 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x15, 0x0a, 0x13, - 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x8c, 0x01, 0x0a, 0x1a, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x54, 0x65, 0x72, - 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, - 0x65, 0x71, 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, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x44, 0x22, 0x1d, 0x0a, 0x1b, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x54, 0x65, 0x72, 0x6d, 0x69, - 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, - 0x70, 0x32, 0xf1, 0x05, 0x0a, 0x0a, 0x6d, 0x73, 0x67, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, - 0x12, 0x66, 0x0a, 0x0d, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, - 0x67, 0x12, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x2a, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, - 0x68, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7b, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x30, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x65, 0x71, 0x1a, 0x31, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7e, 0x0a, 0x15, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x31, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, - 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, - 0x71, 0x1a, 0x32, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, - 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x88, 0x01, 0x0a, 0x1f, 0x53, 0x75, 0x70, 0x65, 0x72, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x31, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, - 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, - 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x32, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, - 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x50, 0x75, 0x73, 0x68, 0x4f, 0x6e, 0x65, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x6c, 0x0a, 0x0f, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x6c, - 0x69, 0x6e, 0x65, 0x12, 0x2b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4b, 0x69, - 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, - 0x1a, 0x2c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4b, 0x69, 0x63, 0x6b, 0x55, - 0x73, 0x65, 0x72, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x84, - 0x01, 0x0a, 0x17, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, - 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x33, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, - 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, - 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x1a, - 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x6d, - 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x2e, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x54, - 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, - 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, - 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6d, 0x73, 0x67, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, - 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_msggateway_msggateway_proto_rawDescOnce sync.Once - file_msggateway_msggateway_proto_rawDescData = file_msggateway_msggateway_proto_rawDesc -) - -func file_msggateway_msggateway_proto_rawDescGZIP() []byte { - file_msggateway_msggateway_proto_rawDescOnce.Do(func() { - file_msggateway_msggateway_proto_rawDescData = protoimpl.X.CompressGZIP(file_msggateway_msggateway_proto_rawDescData) - }) - return file_msggateway_msggateway_proto_rawDescData -} - -var file_msggateway_msggateway_proto_msgTypes = make([]protoimpl.MessageInfo, 17) -var file_msggateway_msggateway_proto_goTypes = []interface{}{ - (*OnlinePushMsgReq)(nil), // 0: OpenIMServer.msggateway.OnlinePushMsgReq - (*OnlinePushMsgResp)(nil), // 1: OpenIMServer.msggateway.OnlinePushMsgResp - (*SingleMsgToUserResults)(nil), // 2: OpenIMServer.msggateway.SingleMsgToUserResults - (*OnlineBatchPushOneMsgReq)(nil), // 3: OpenIMServer.msggateway.OnlineBatchPushOneMsgReq - (*OnlineBatchPushOneMsgResp)(nil), // 4: OpenIMServer.msggateway.OnlineBatchPushOneMsgResp - (*SingleMsgToUserPlatform)(nil), // 5: OpenIMServer.msggateway.SingleMsgToUserPlatform - (*GetUsersOnlineStatusReq)(nil), // 6: OpenIMServer.msggateway.GetUsersOnlineStatusReq - (*GetUsersOnlineStatusResp)(nil), // 7: OpenIMServer.msggateway.GetUsersOnlineStatusResp - (*SingleDetail)(nil), // 8: OpenIMServer.msggateway.SingleDetail - (*SinglePlatformToken)(nil), // 9: OpenIMServer.msggateway.SinglePlatformToken - (*KickUserOfflineReq)(nil), // 10: OpenIMServer.msggateway.KickUserOfflineReq - (*KickUserOfflineResp)(nil), // 11: OpenIMServer.msggateway.KickUserOfflineResp - (*MultiTerminalLoginCheckReq)(nil), // 12: OpenIMServer.msggateway.MultiTerminalLoginCheckReq - (*MultiTerminalLoginCheckResp)(nil), // 13: OpenIMServer.msggateway.MultiTerminalLoginCheckResp - (*GetUsersOnlineStatusResp_SuccessDetail)(nil), // 14: OpenIMServer.msggateway.GetUsersOnlineStatusResp.SuccessDetail - (*GetUsersOnlineStatusResp_FailedDetail)(nil), // 15: OpenIMServer.msggateway.GetUsersOnlineStatusResp.FailedDetail - (*GetUsersOnlineStatusResp_SuccessResult)(nil), // 16: OpenIMServer.msggateway.GetUsersOnlineStatusResp.SuccessResult - (*sdkws.MsgData)(nil), // 17: OpenIMServer.sdkws.MsgData -} -var file_msggateway_msggateway_proto_depIdxs = []int32{ - 17, // 0: OpenIMServer.msggateway.OnlinePushMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 5, // 1: OpenIMServer.msggateway.OnlinePushMsgResp.resp:type_name -> OpenIMServer.msggateway.SingleMsgToUserPlatform - 5, // 2: OpenIMServer.msggateway.SingleMsgToUserResults.resp:type_name -> OpenIMServer.msggateway.SingleMsgToUserPlatform - 17, // 3: OpenIMServer.msggateway.OnlineBatchPushOneMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 2, // 4: OpenIMServer.msggateway.OnlineBatchPushOneMsgResp.singlePushResult:type_name -> OpenIMServer.msggateway.SingleMsgToUserResults - 16, // 5: OpenIMServer.msggateway.GetUsersOnlineStatusResp.successResult:type_name -> OpenIMServer.msggateway.GetUsersOnlineStatusResp.SuccessResult - 15, // 6: OpenIMServer.msggateway.GetUsersOnlineStatusResp.failedResult:type_name -> OpenIMServer.msggateway.GetUsersOnlineStatusResp.FailedDetail - 9, // 7: OpenIMServer.msggateway.SingleDetail.singlePlatformToken:type_name -> OpenIMServer.msggateway.SinglePlatformToken - 14, // 8: OpenIMServer.msggateway.GetUsersOnlineStatusResp.SuccessResult.detailPlatformStatus:type_name -> OpenIMServer.msggateway.GetUsersOnlineStatusResp.SuccessDetail - 0, // 9: OpenIMServer.msggateway.msgGateway.OnlinePushMsg:input_type -> OpenIMServer.msggateway.OnlinePushMsgReq - 6, // 10: OpenIMServer.msggateway.msgGateway.GetUsersOnlineStatus:input_type -> OpenIMServer.msggateway.GetUsersOnlineStatusReq - 3, // 11: OpenIMServer.msggateway.msgGateway.OnlineBatchPushOneMsg:input_type -> OpenIMServer.msggateway.OnlineBatchPushOneMsgReq - 3, // 12: OpenIMServer.msggateway.msgGateway.SuperGroupOnlineBatchPushOneMsg:input_type -> OpenIMServer.msggateway.OnlineBatchPushOneMsgReq - 10, // 13: OpenIMServer.msggateway.msgGateway.KickUserOffline:input_type -> OpenIMServer.msggateway.KickUserOfflineReq - 12, // 14: OpenIMServer.msggateway.msgGateway.MultiTerminalLoginCheck:input_type -> OpenIMServer.msggateway.MultiTerminalLoginCheckReq - 1, // 15: OpenIMServer.msggateway.msgGateway.OnlinePushMsg:output_type -> OpenIMServer.msggateway.OnlinePushMsgResp - 7, // 16: OpenIMServer.msggateway.msgGateway.GetUsersOnlineStatus:output_type -> OpenIMServer.msggateway.GetUsersOnlineStatusResp - 4, // 17: OpenIMServer.msggateway.msgGateway.OnlineBatchPushOneMsg:output_type -> OpenIMServer.msggateway.OnlineBatchPushOneMsgResp - 4, // 18: OpenIMServer.msggateway.msgGateway.SuperGroupOnlineBatchPushOneMsg:output_type -> OpenIMServer.msggateway.OnlineBatchPushOneMsgResp - 11, // 19: OpenIMServer.msggateway.msgGateway.KickUserOffline:output_type -> OpenIMServer.msggateway.KickUserOfflineResp - 13, // 20: OpenIMServer.msggateway.msgGateway.MultiTerminalLoginCheck:output_type -> OpenIMServer.msggateway.MultiTerminalLoginCheckResp - 15, // [15:21] is the sub-list for method output_type - 9, // [9:15] is the sub-list for method input_type - 9, // [9:9] is the sub-list for extension type_name - 9, // [9:9] is the sub-list for extension extendee - 0, // [0:9] is the sub-list for field type_name -} - -func init() { file_msggateway_msggateway_proto_init() } -func file_msggateway_msggateway_proto_init() { - if File_msggateway_msggateway_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_msggateway_msggateway_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnlinePushMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnlinePushMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SingleMsgToUserResults); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnlineBatchPushOneMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OnlineBatchPushOneMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SingleMsgToUserPlatform); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersOnlineStatusReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersOnlineStatusResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SingleDetail); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SinglePlatformToken); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*KickUserOfflineReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*KickUserOfflineResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MultiTerminalLoginCheckReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MultiTerminalLoginCheckResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersOnlineStatusResp_SuccessDetail); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersOnlineStatusResp_FailedDetail); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_msggateway_msggateway_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUsersOnlineStatusResp_SuccessResult); 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_msggateway_msggateway_proto_rawDesc, - NumEnums: 0, - NumMessages: 17, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_msggateway_msggateway_proto_goTypes, - DependencyIndexes: file_msggateway_msggateway_proto_depIdxs, - MessageInfos: file_msggateway_msggateway_proto_msgTypes, - }.Build() - File_msggateway_msggateway_proto = out.File - file_msggateway_msggateway_proto_rawDesc = nil - file_msggateway_msggateway_proto_goTypes = nil - file_msggateway_msggateway_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// MsgGatewayClient is the client API for MsgGateway service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type MsgGatewayClient interface { - OnlinePushMsg(ctx context.Context, in *OnlinePushMsgReq, opts ...grpc.CallOption) (*OnlinePushMsgResp, error) - GetUsersOnlineStatus(ctx context.Context, in *GetUsersOnlineStatusReq, opts ...grpc.CallOption) (*GetUsersOnlineStatusResp, error) - OnlineBatchPushOneMsg(ctx context.Context, in *OnlineBatchPushOneMsgReq, opts ...grpc.CallOption) (*OnlineBatchPushOneMsgResp, error) - SuperGroupOnlineBatchPushOneMsg(ctx context.Context, in *OnlineBatchPushOneMsgReq, opts ...grpc.CallOption) (*OnlineBatchPushOneMsgResp, error) - KickUserOffline(ctx context.Context, in *KickUserOfflineReq, opts ...grpc.CallOption) (*KickUserOfflineResp, error) - MultiTerminalLoginCheck(ctx context.Context, in *MultiTerminalLoginCheckReq, opts ...grpc.CallOption) (*MultiTerminalLoginCheckResp, error) -} - -type msgGatewayClient struct { - cc grpc.ClientConnInterface -} - -func NewMsgGatewayClient(cc grpc.ClientConnInterface) MsgGatewayClient { - return &msgGatewayClient{cc} -} - -func (c *msgGatewayClient) OnlinePushMsg(ctx context.Context, in *OnlinePushMsgReq, opts ...grpc.CallOption) (*OnlinePushMsgResp, error) { - out := new(OnlinePushMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/OnlinePushMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgGatewayClient) GetUsersOnlineStatus(ctx context.Context, in *GetUsersOnlineStatusReq, opts ...grpc.CallOption) (*GetUsersOnlineStatusResp, error) { - out := new(GetUsersOnlineStatusResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/GetUsersOnlineStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgGatewayClient) OnlineBatchPushOneMsg(ctx context.Context, in *OnlineBatchPushOneMsgReq, opts ...grpc.CallOption) (*OnlineBatchPushOneMsgResp, error) { - out := new(OnlineBatchPushOneMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/OnlineBatchPushOneMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgGatewayClient) SuperGroupOnlineBatchPushOneMsg(ctx context.Context, in *OnlineBatchPushOneMsgReq, opts ...grpc.CallOption) (*OnlineBatchPushOneMsgResp, error) { - out := new(OnlineBatchPushOneMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/SuperGroupOnlineBatchPushOneMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgGatewayClient) KickUserOffline(ctx context.Context, in *KickUserOfflineReq, opts ...grpc.CallOption) (*KickUserOfflineResp, error) { - out := new(KickUserOfflineResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/KickUserOffline", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *msgGatewayClient) MultiTerminalLoginCheck(ctx context.Context, in *MultiTerminalLoginCheckReq, opts ...grpc.CallOption) (*MultiTerminalLoginCheckResp, error) { - out := new(MultiTerminalLoginCheckResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.msggateway.msgGateway/MultiTerminalLoginCheck", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// MsgGatewayServer is the server API for MsgGateway service. -type MsgGatewayServer interface { - OnlinePushMsg(context.Context, *OnlinePushMsgReq) (*OnlinePushMsgResp, error) - GetUsersOnlineStatus(context.Context, *GetUsersOnlineStatusReq) (*GetUsersOnlineStatusResp, error) - OnlineBatchPushOneMsg(context.Context, *OnlineBatchPushOneMsgReq) (*OnlineBatchPushOneMsgResp, error) - SuperGroupOnlineBatchPushOneMsg(context.Context, *OnlineBatchPushOneMsgReq) (*OnlineBatchPushOneMsgResp, error) - KickUserOffline(context.Context, *KickUserOfflineReq) (*KickUserOfflineResp, error) - MultiTerminalLoginCheck(context.Context, *MultiTerminalLoginCheckReq) (*MultiTerminalLoginCheckResp, error) -} - -// UnimplementedMsgGatewayServer can be embedded to have forward compatible implementations. -type UnimplementedMsgGatewayServer struct { -} - -func (*UnimplementedMsgGatewayServer) OnlinePushMsg(context.Context, *OnlinePushMsgReq) (*OnlinePushMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method OnlinePushMsg not implemented") -} -func (*UnimplementedMsgGatewayServer) GetUsersOnlineStatus(context.Context, *GetUsersOnlineStatusReq) (*GetUsersOnlineStatusResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetUsersOnlineStatus not implemented") -} -func (*UnimplementedMsgGatewayServer) OnlineBatchPushOneMsg(context.Context, *OnlineBatchPushOneMsgReq) (*OnlineBatchPushOneMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method OnlineBatchPushOneMsg not implemented") -} -func (*UnimplementedMsgGatewayServer) SuperGroupOnlineBatchPushOneMsg(context.Context, *OnlineBatchPushOneMsgReq) (*OnlineBatchPushOneMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SuperGroupOnlineBatchPushOneMsg not implemented") -} -func (*UnimplementedMsgGatewayServer) KickUserOffline(context.Context, *KickUserOfflineReq) (*KickUserOfflineResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method KickUserOffline not implemented") -} -func (*UnimplementedMsgGatewayServer) MultiTerminalLoginCheck(context.Context, *MultiTerminalLoginCheckReq) (*MultiTerminalLoginCheckResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method MultiTerminalLoginCheck not implemented") -} - -func RegisterMsgGatewayServer(s *grpc.Server, srv MsgGatewayServer) { - s.RegisterService(&_MsgGateway_serviceDesc, srv) -} - -func _MsgGateway_OnlinePushMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(OnlinePushMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).OnlinePushMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/OnlinePushMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).OnlinePushMsg(ctx, req.(*OnlinePushMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _MsgGateway_GetUsersOnlineStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetUsersOnlineStatusReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).GetUsersOnlineStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/GetUsersOnlineStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).GetUsersOnlineStatus(ctx, req.(*GetUsersOnlineStatusReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _MsgGateway_OnlineBatchPushOneMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(OnlineBatchPushOneMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).OnlineBatchPushOneMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/OnlineBatchPushOneMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).OnlineBatchPushOneMsg(ctx, req.(*OnlineBatchPushOneMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _MsgGateway_SuperGroupOnlineBatchPushOneMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(OnlineBatchPushOneMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).SuperGroupOnlineBatchPushOneMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/SuperGroupOnlineBatchPushOneMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).SuperGroupOnlineBatchPushOneMsg(ctx, req.(*OnlineBatchPushOneMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _MsgGateway_KickUserOffline_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(KickUserOfflineReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).KickUserOffline(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/KickUserOffline", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).KickUserOffline(ctx, req.(*KickUserOfflineReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _MsgGateway_MultiTerminalLoginCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MultiTerminalLoginCheckReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MsgGatewayServer).MultiTerminalLoginCheck(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.msggateway.msgGateway/MultiTerminalLoginCheck", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MsgGatewayServer).MultiTerminalLoginCheck(ctx, req.(*MultiTerminalLoginCheckReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _MsgGateway_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.msggateway.msgGateway", - HandlerType: (*MsgGatewayServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "OnlinePushMsg", - Handler: _MsgGateway_OnlinePushMsg_Handler, - }, - { - MethodName: "GetUsersOnlineStatus", - Handler: _MsgGateway_GetUsersOnlineStatus_Handler, - }, - { - MethodName: "OnlineBatchPushOneMsg", - Handler: _MsgGateway_OnlineBatchPushOneMsg_Handler, - }, - { - MethodName: "SuperGroupOnlineBatchPushOneMsg", - Handler: _MsgGateway_SuperGroupOnlineBatchPushOneMsg_Handler, - }, - { - MethodName: "KickUserOffline", - Handler: _MsgGateway_KickUserOffline_Handler, - }, - { - MethodName: "MultiTerminalLoginCheck", - Handler: _MsgGateway_MultiTerminalLoginCheck_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "msggateway/msggateway.proto", -} diff --git a/pkg/proto/msggateway/msggateway.proto b/pkg/proto/msggateway/msggateway.proto deleted file mode 100644 index 77f0fcbf3..000000000 --- a/pkg/proto/msggateway/msggateway.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.msggateway; -import "sdkws/sdkws.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway"; - -message OnlinePushMsgReq { - sdkws.MsgData msgData = 1; - string pushToUserID = 2; -} - -message OnlinePushMsgResp{ - repeated SingleMsgToUserPlatform resp = 1; -} - -message SingleMsgToUserResults { - string userID =1; - repeated SingleMsgToUserPlatform resp = 2; - bool onlinePush = 3; - -} -message OnlineBatchPushOneMsgReq{ - sdkws.MsgData msgData = 1; - repeated string pushToUserIDs = 2; -} - -message OnlineBatchPushOneMsgResp{ - repeated SingleMsgToUserResults singlePushResult= 1; -} -//message SendMsgByWSReq{ -// string SendID = 1; -// string RecvID = 2; -// string Content = 3; -// int64 SendTime = 4; -// int64 MsgFrom = 5; -// int64 ContentType = 6; -// int64 SessionType = 7; -// string OperationID = 8; -// int64 PlatformID = 9; -//} - -message SingleMsgToUserPlatform{ - int64 ResultCode = 1; - string RecvID = 2; - int32 RecvPlatFormID = 3; -} - -message GetUsersOnlineStatusReq{ - repeated string userIDs = 1; -} - -message GetUsersOnlineStatusResp{ - repeated SuccessResult successResult = 1; - repeated FailedDetail failedResult = 2; - message SuccessDetail{ - string platform = 1; - string status = 2; - string connID = 3; - bool isBackground = 4; - string token =5; - } - message FailedDetail{ - string userID = 1; - } - message SuccessResult{ - string userID = 1; - string status = 2; - repeated SuccessDetail detailPlatformStatus = 3; - } -} -message SingleDetail{ - string userID = 1; - string status = 2; - repeated SinglePlatformToken singlePlatformToken = 3; -} -message SinglePlatformToken{ - string platform = 1; - int32 total =2; - repeated string token = 3; -} - - -message KickUserOfflineReq{ - int32 platformID = 1; - repeated string kickUserIDList = 2; -} - -message KickUserOfflineResp{ -} - - -message MultiTerminalLoginCheckReq{ - string userID = 1; - int32 platformID = 2; - string token = 3; - string operationID = 4; -} -message MultiTerminalLoginCheckResp{ -} - -service msgGateway { - rpc OnlinePushMsg(OnlinePushMsgReq) returns(OnlinePushMsgResp); - rpc GetUsersOnlineStatus(GetUsersOnlineStatusReq) returns(GetUsersOnlineStatusResp); - rpc OnlineBatchPushOneMsg(OnlineBatchPushOneMsgReq) returns(OnlineBatchPushOneMsgResp); - rpc SuperGroupOnlineBatchPushOneMsg(OnlineBatchPushOneMsgReq) returns(OnlineBatchPushOneMsgResp); - rpc KickUserOffline(KickUserOfflineReq) returns(KickUserOfflineResp); - rpc MultiTerminalLoginCheck(MultiTerminalLoginCheckReq) returns(MultiTerminalLoginCheckResp); -} - diff --git a/pkg/proto/push/push.go b/pkg/proto/push/push.go deleted file mode 100644 index 2f117acda..000000000 --- a/pkg/proto/push/push.go +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package push - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *PushMsgReq) Check() error { - if x.MsgData == nil { - return errs.ErrArgs.Wrap("MsgData is empty") - } - if err := x.MsgData.Check(); err != nil { - return err - } - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("ConversationID is empty") - } - return nil -} - -func (x *DelUserPushTokenReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - if x.PlatformID < 1 || x.PlatformID > 9 { - return errs.ErrArgs.Wrap("PlatformID is invalid") - } - return nil -} diff --git a/pkg/proto/push/push.pb.go b/pkg/proto/push/push.pb.go deleted file mode 100644 index 1dc9d2ab9..000000000 --- a/pkg/proto/push/push.pb.go +++ /dev/null @@ -1,489 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: push/push.proto - -package push - -import ( - context "context" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - 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) -) - -type PushMsgReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MsgData *sdkws.MsgData `protobuf:"bytes,1,opt,name=msgData,proto3" json:"msgData"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` -} - -func (x *PushMsgReq) Reset() { - *x = PushMsgReq{} - if protoimpl.UnsafeEnabled { - mi := &file_push_push_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushMsgReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushMsgReq) ProtoMessage() {} - -func (x *PushMsgReq) ProtoReflect() protoreflect.Message { - mi := &file_push_push_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) -} - -// Deprecated: Use PushMsgReq.ProtoReflect.Descriptor instead. -func (*PushMsgReq) Descriptor() ([]byte, []int) { - return file_push_push_proto_rawDescGZIP(), []int{0} -} - -func (x *PushMsgReq) GetMsgData() *sdkws.MsgData { - if x != nil { - return x.MsgData - } - return nil -} - -func (x *PushMsgReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -type PushMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *PushMsgResp) Reset() { - *x = PushMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_push_push_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushMsgResp) ProtoMessage() {} - -func (x *PushMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_push_push_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) -} - -// Deprecated: Use PushMsgResp.ProtoReflect.Descriptor instead. -func (*PushMsgResp) Descriptor() ([]byte, []int) { - return file_push_push_proto_rawDescGZIP(), []int{1} -} - -type DelUserPushTokenReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` -} - -func (x *DelUserPushTokenReq) Reset() { - *x = DelUserPushTokenReq{} - if protoimpl.UnsafeEnabled { - mi := &file_push_push_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DelUserPushTokenReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DelUserPushTokenReq) ProtoMessage() {} - -func (x *DelUserPushTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_push_push_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) -} - -// Deprecated: Use DelUserPushTokenReq.ProtoReflect.Descriptor instead. -func (*DelUserPushTokenReq) Descriptor() ([]byte, []int) { - return file_push_push_proto_rawDescGZIP(), []int{2} -} - -func (x *DelUserPushTokenReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *DelUserPushTokenReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -type DelUserPushTokenResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DelUserPushTokenResp) Reset() { - *x = DelUserPushTokenResp{} - if protoimpl.UnsafeEnabled { - mi := &file_push_push_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DelUserPushTokenResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DelUserPushTokenResp) ProtoMessage() {} - -func (x *DelUserPushTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_push_push_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) -} - -// Deprecated: Use DelUserPushTokenResp.ProtoReflect.Descriptor instead. -func (*DelUserPushTokenResp) Descriptor() ([]byte, []int) { - return file_push_push_proto_rawDescGZIP(), []int{3} -} - -var File_push_push_proto protoreflect.FileDescriptor - -var file_push_push_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x70, 0x75, 0x73, 0x68, 0x2f, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x11, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x70, 0x75, 0x73, 0x68, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6b, 0x0a, 0x0a, 0x50, 0x75, 0x73, 0x68, 0x4d, - 0x73, 0x67, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x26, 0x0a, 0x0e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x0d, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x4d, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, - 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 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, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x22, 0x16, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x73, - 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x32, 0xbf, 0x01, 0x0a, 0x0e, 0x50, - 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x48, 0x0a, - 0x07, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x73, 0x67, 0x12, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x50, 0x75, 0x73, - 0x68, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x50, 0x75, 0x73, 0x68, - 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x63, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x55, 0x73, - 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, - 0x44, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x52, 0x65, 0x71, 0x1a, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x44, 0x65, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x50, - 0x75, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x42, 0x34, 0x5a, 0x32, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x75, - 0x73, 0x68, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_push_push_proto_rawDescOnce sync.Once - file_push_push_proto_rawDescData = file_push_push_proto_rawDesc -) - -func file_push_push_proto_rawDescGZIP() []byte { - file_push_push_proto_rawDescOnce.Do(func() { - file_push_push_proto_rawDescData = protoimpl.X.CompressGZIP(file_push_push_proto_rawDescData) - }) - return file_push_push_proto_rawDescData -} - -var file_push_push_proto_msgTypes = make([]protoimpl.MessageInfo, 4) -var file_push_push_proto_goTypes = []interface{}{ - (*PushMsgReq)(nil), // 0: OpenIMServer.push.PushMsgReq - (*PushMsgResp)(nil), // 1: OpenIMServer.push.PushMsgResp - (*DelUserPushTokenReq)(nil), // 2: OpenIMServer.push.DelUserPushTokenReq - (*DelUserPushTokenResp)(nil), // 3: OpenIMServer.push.DelUserPushTokenResp - (*sdkws.MsgData)(nil), // 4: OpenIMServer.sdkws.MsgData -} -var file_push_push_proto_depIdxs = []int32{ - 4, // 0: OpenIMServer.push.PushMsgReq.msgData:type_name -> OpenIMServer.sdkws.MsgData - 0, // 1: OpenIMServer.push.PushMsgService.PushMsg:input_type -> OpenIMServer.push.PushMsgReq - 2, // 2: OpenIMServer.push.PushMsgService.DelUserPushToken:input_type -> OpenIMServer.push.DelUserPushTokenReq - 1, // 3: OpenIMServer.push.PushMsgService.PushMsg:output_type -> OpenIMServer.push.PushMsgResp - 3, // 4: OpenIMServer.push.PushMsgService.DelUserPushToken:output_type -> OpenIMServer.push.DelUserPushTokenResp - 3, // [3:5] is the sub-list for method output_type - 1, // [1:3] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 1, // [1:1] is the sub-list for extension extendee - 0, // [0:1] is the sub-list for field type_name -} - -func init() { file_push_push_proto_init() } -func file_push_push_proto_init() { - if File_push_push_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_push_push_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PushMsgReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_push_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PushMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_push_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelUserPushTokenReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_push_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelUserPushTokenResp); 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_push_push_proto_rawDesc, - NumEnums: 0, - NumMessages: 4, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_push_push_proto_goTypes, - DependencyIndexes: file_push_push_proto_depIdxs, - MessageInfos: file_push_push_proto_msgTypes, - }.Build() - File_push_push_proto = out.File - file_push_push_proto_rawDesc = nil - file_push_push_proto_goTypes = nil - file_push_push_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// PushMsgServiceClient is the client API for PushMsgService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type PushMsgServiceClient interface { - PushMsg(ctx context.Context, in *PushMsgReq, opts ...grpc.CallOption) (*PushMsgResp, error) - DelUserPushToken(ctx context.Context, in *DelUserPushTokenReq, opts ...grpc.CallOption) (*DelUserPushTokenResp, error) -} - -type pushMsgServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewPushMsgServiceClient(cc grpc.ClientConnInterface) PushMsgServiceClient { - return &pushMsgServiceClient{cc} -} - -func (c *pushMsgServiceClient) PushMsg(ctx context.Context, in *PushMsgReq, opts ...grpc.CallOption) (*PushMsgResp, error) { - out := new(PushMsgResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.push.PushMsgService/PushMsg", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *pushMsgServiceClient) DelUserPushToken(ctx context.Context, in *DelUserPushTokenReq, opts ...grpc.CallOption) (*DelUserPushTokenResp, error) { - out := new(DelUserPushTokenResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.push.PushMsgService/DelUserPushToken", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// PushMsgServiceServer is the server API for PushMsgService service. -type PushMsgServiceServer interface { - PushMsg(context.Context, *PushMsgReq) (*PushMsgResp, error) - DelUserPushToken(context.Context, *DelUserPushTokenReq) (*DelUserPushTokenResp, error) -} - -// UnimplementedPushMsgServiceServer can be embedded to have forward compatible implementations. -type UnimplementedPushMsgServiceServer struct { -} - -func (*UnimplementedPushMsgServiceServer) PushMsg(context.Context, *PushMsgReq) (*PushMsgResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method PushMsg not implemented") -} -func (*UnimplementedPushMsgServiceServer) DelUserPushToken(context.Context, *DelUserPushTokenReq) (*DelUserPushTokenResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method DelUserPushToken not implemented") -} - -func RegisterPushMsgServiceServer(s *grpc.Server, srv PushMsgServiceServer) { - s.RegisterService(&_PushMsgService_serviceDesc, srv) -} - -func _PushMsgService_PushMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PushMsgReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(PushMsgServiceServer).PushMsg(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.push.PushMsgService/PushMsg", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(PushMsgServiceServer).PushMsg(ctx, req.(*PushMsgReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _PushMsgService_DelUserPushToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DelUserPushTokenReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(PushMsgServiceServer).DelUserPushToken(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.push.PushMsgService/DelUserPushToken", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(PushMsgServiceServer).DelUserPushToken(ctx, req.(*DelUserPushTokenReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _PushMsgService_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.push.PushMsgService", - HandlerType: (*PushMsgServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "PushMsg", - Handler: _PushMsgService_PushMsg_Handler, - }, - { - MethodName: "DelUserPushToken", - Handler: _PushMsgService_DelUserPushToken_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "push/push.proto", -} diff --git a/pkg/proto/push/push.proto b/pkg/proto/push/push.proto deleted file mode 100644 index 1f511b225..000000000 --- a/pkg/proto/push/push.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.push; -import "sdkws/sdkws.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push"; - -message PushMsgReq { - sdkws.MsgData msgData = 1; - string conversationID = 2; -} - -message PushMsgResp{ -} - -message DelUserPushTokenReq{ - string userID = 1; - int32 platformID = 2; -} - -message DelUserPushTokenResp{ -} - -service PushMsgService { - rpc PushMsg(PushMsgReq) returns(PushMsgResp); - rpc DelUserPushToken(DelUserPushTokenReq) returns(DelUserPushTokenResp); -} - diff --git a/pkg/proto/sdkws/sdkws.go b/pkg/proto/sdkws/sdkws.go deleted file mode 100644 index d0b0ae8aa..000000000 --- a/pkg/proto/sdkws/sdkws.go +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package sdkws - -import ( - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" -) - -func (x *MsgData) Check() error { - if x.SendID == "" { - return errs.ErrArgs.Wrap("sendID is empty") - } - if x.Content == nil { - return errs.ErrArgs.Wrap("content is empty") - } - if x.ContentType <= constant.ContentTypeBegin || x.ContentType >= constant.NotificationEnd { - return errs.ErrArgs.Wrap("content type is invalid") - } - if x.SessionType < constant.SingleChatType || x.SessionType > constant.NotificationChatType { - return errs.ErrArgs.Wrap("sessionType is invalid") - } - if x.SessionType == constant.SingleChatType || x.SessionType == constant.NotificationChatType { - if x.RecvID == "" { - return errs.ErrArgs.Wrap("recvID is empty") - } - } - if x.SessionType == constant.GroupChatType || x.SessionType == constant.SuperGroupChatType { - if x.GroupID == "" { - return errs.ErrArgs.Wrap("GroupID is empty") - } - } - return nil -} diff --git a/pkg/proto/sdkws/sdkws.pb.go b/pkg/proto/sdkws/sdkws.pb.go deleted file mode 100644 index b45d46d4c..000000000 --- a/pkg/proto/sdkws/sdkws.pb.go +++ /dev/null @@ -1,6399 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: sdkws/sdkws.proto - -package sdkws - -import ( - wrapperspb "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" - 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) -) - -// /////////////////////////////////base end///////////////////////////////////// -type PullOrder int32 - -const ( - PullOrder_PullOrderAsc PullOrder = 0 - PullOrder_PullOrderDesc PullOrder = 1 -) - -// Enum value maps for PullOrder. -var ( - PullOrder_name = map[int32]string{ - 0: "PullOrderAsc", - 1: "PullOrderDesc", - } - PullOrder_value = map[string]int32{ - "PullOrderAsc": 0, - "PullOrderDesc": 1, - } -) - -func (x PullOrder) Enum() *PullOrder { - p := new(PullOrder) - *p = x - return p -} - -func (x PullOrder) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (PullOrder) Descriptor() protoreflect.EnumDescriptor { - return file_sdkws_sdkws_proto_enumTypes[0].Descriptor() -} - -func (PullOrder) Type() protoreflect.EnumType { - return &file_sdkws_sdkws_proto_enumTypes[0] -} - -func (x PullOrder) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use PullOrder.Descriptor instead. -func (PullOrder) EnumDescriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{0} -} - -type GroupInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime"` - MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` - CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID"` - GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType"` - NeedVerification int32 `protobuf:"varint,13,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo int32 `protobuf:"varint,14,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` - ApplyMemberFriend int32 `protobuf:"varint,15,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` - NotificationUpdateTime int64 `protobuf:"varint,16,opt,name=notificationUpdateTime,proto3" json:"notificationUpdateTime"` - NotificationUserID string `protobuf:"bytes,17,opt,name=notificationUserID,proto3" json:"notificationUserID"` -} - -func (x *GroupInfo) Reset() { - *x = GroupInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfo) ProtoMessage() {} - -func (x *GroupInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupInfo.ProtoReflect.Descriptor instead. -func (*GroupInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{0} -} - -func (x *GroupInfo) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GroupInfo) GetGroupName() string { - if x != nil { - return x.GroupName - } - return "" -} - -func (x *GroupInfo) GetNotification() string { - if x != nil { - return x.Notification - } - return "" -} - -func (x *GroupInfo) GetIntroduction() string { - if x != nil { - return x.Introduction - } - return "" -} - -func (x *GroupInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL - } - return "" -} - -func (x *GroupInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GroupInfo) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *GroupInfo) GetMemberCount() uint32 { - if x != nil { - return x.MemberCount - } - return 0 -} - -func (x *GroupInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *GroupInfo) GetStatus() int32 { - if x != nil { - return x.Status - } - return 0 -} - -func (x *GroupInfo) GetCreatorUserID() string { - if x != nil { - return x.CreatorUserID - } - return "" -} - -func (x *GroupInfo) GetGroupType() int32 { - if x != nil { - return x.GroupType - } - return 0 -} - -func (x *GroupInfo) GetNeedVerification() int32 { - if x != nil { - return x.NeedVerification - } - return 0 -} - -func (x *GroupInfo) GetLookMemberInfo() int32 { - if x != nil { - return x.LookMemberInfo - } - return 0 -} - -func (x *GroupInfo) GetApplyMemberFriend() int32 { - if x != nil { - return x.ApplyMemberFriend - } - return 0 -} - -func (x *GroupInfo) GetNotificationUpdateTime() int64 { - if x != nil { - return x.NotificationUpdateTime - } - return 0 -} - -func (x *GroupInfo) GetNotificationUserID() string { - if x != nil { - return x.NotificationUserID - } - return "" -} - -type GroupInfoForSet struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` - NeedVerification *wrapperspb.Int32Value `protobuf:"bytes,7,opt,name=needVerification,proto3" json:"needVerification"` - LookMemberInfo *wrapperspb.Int32Value `protobuf:"bytes,8,opt,name=lookMemberInfo,proto3" json:"lookMemberInfo"` - ApplyMemberFriend *wrapperspb.Int32Value `protobuf:"bytes,9,opt,name=applyMemberFriend,proto3" json:"applyMemberFriend"` -} - -func (x *GroupInfoForSet) Reset() { - *x = GroupInfoForSet{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfoForSet) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfoForSet) ProtoMessage() {} - -func (x *GroupInfoForSet) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupInfoForSet.ProtoReflect.Descriptor instead. -func (*GroupInfoForSet) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{1} -} - -func (x *GroupInfoForSet) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GroupInfoForSet) GetGroupName() string { - if x != nil { - return x.GroupName - } - return "" -} - -func (x *GroupInfoForSet) GetNotification() string { - if x != nil { - return x.Notification - } - return "" -} - -func (x *GroupInfoForSet) GetIntroduction() string { - if x != nil { - return x.Introduction - } - return "" -} - -func (x *GroupInfoForSet) GetFaceURL() string { - if x != nil { - return x.FaceURL - } - return "" -} - -func (x *GroupInfoForSet) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *GroupInfoForSet) GetNeedVerification() *wrapperspb.Int32Value { - if x != nil { - return x.NeedVerification - } - return nil -} - -func (x *GroupInfoForSet) GetLookMemberInfo() *wrapperspb.Int32Value { - if x != nil { - return x.LookMemberInfo - } - return nil -} - -func (x *GroupInfoForSet) GetApplyMemberFriend() *wrapperspb.Int32Value { - if x != nil { - return x.ApplyMemberFriend - } - return nil -} - -type GroupMemberFullInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel"` - JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime"` - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL"` - AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` //if >0 - JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource"` - OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex"` - MuteEndTime int64 `protobuf:"varint,11,opt,name=muteEndTime,proto3" json:"muteEndTime"` - InviterUserID string `protobuf:"bytes,12,opt,name=inviterUserID,proto3" json:"inviterUserID"` -} - -func (x *GroupMemberFullInfo) Reset() { - *x = GroupMemberFullInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMemberFullInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMemberFullInfo) ProtoMessage() {} - -func (x *GroupMemberFullInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupMemberFullInfo.ProtoReflect.Descriptor instead. -func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{2} -} - -func (x *GroupMemberFullInfo) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *GroupMemberFullInfo) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *GroupMemberFullInfo) GetRoleLevel() int32 { - if x != nil { - return x.RoleLevel - } - return 0 -} - -func (x *GroupMemberFullInfo) GetJoinTime() int64 { - if x != nil { - return x.JoinTime - } - return 0 -} - -func (x *GroupMemberFullInfo) GetNickname() string { - if x != nil { - return x.Nickname - } - return "" -} - -func (x *GroupMemberFullInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL - } - return "" -} - -func (x *GroupMemberFullInfo) GetAppMangerLevel() int32 { - if x != nil { - return x.AppMangerLevel - } - return 0 -} - -func (x *GroupMemberFullInfo) GetJoinSource() int32 { - if x != nil { - return x.JoinSource - } - return 0 -} - -func (x *GroupMemberFullInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID - } - return "" -} - -func (x *GroupMemberFullInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *GroupMemberFullInfo) GetMuteEndTime() int64 { - if x != nil { - return x.MuteEndTime - } - return 0 -} - -func (x *GroupMemberFullInfo) GetInviterUserID() string { - if x != nil { - return x.InviterUserID - } - return "" -} - -type PublicUserInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` -} - -func (x *PublicUserInfo) Reset() { - *x = PublicUserInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PublicUserInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PublicUserInfo) ProtoMessage() {} - -func (x *PublicUserInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use PublicUserInfo.ProtoReflect.Descriptor instead. -func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{3} -} - -func (x *PublicUserInfo) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *PublicUserInfo) GetNickname() string { - if x != nil { - return x.Nickname - } - return "" -} - -func (x *PublicUserInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL - } - return "" -} - -func (x *PublicUserInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type UserInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL"` - Ex string `protobuf:"bytes,4,opt,name=ex,proto3" json:"ex"` - CreateTime int64 `protobuf:"varint,5,opt,name=createTime,proto3" json:"createTime"` - AppMangerLevel int32 `protobuf:"varint,6,opt,name=appMangerLevel,proto3" json:"appMangerLevel"` - GlobalRecvMsgOpt int32 `protobuf:"varint,7,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` -} - -func (x *UserInfo) Reset() { - *x = UserInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserInfo) ProtoMessage() {} - -func (x *UserInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use UserInfo.ProtoReflect.Descriptor instead. -func (*UserInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{4} -} - -func (x *UserInfo) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *UserInfo) GetNickname() string { - if x != nil { - return x.Nickname - } - return "" -} - -func (x *UserInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL - } - return "" -} - -func (x *UserInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *UserInfo) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *UserInfo) GetAppMangerLevel() int32 { - if x != nil { - return x.AppMangerLevel - } - return 0 -} - -func (x *UserInfo) GetGlobalRecvMsgOpt() int32 { - if x != nil { - return x.GlobalRecvMsgOpt - } - return 0 -} - -type FriendInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark"` - CreateTime int64 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime"` - FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser"` - AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource"` - OperatorUserID string `protobuf:"bytes,6,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex"` -} - -func (x *FriendInfo) Reset() { - *x = FriendInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendInfo) ProtoMessage() {} - -func (x *FriendInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendInfo.ProtoReflect.Descriptor instead. -func (*FriendInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{5} -} - -func (x *FriendInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *FriendInfo) GetRemark() string { - if x != nil { - return x.Remark - } - return "" -} - -func (x *FriendInfo) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *FriendInfo) GetFriendUser() *UserInfo { - if x != nil { - return x.FriendUser - } - return nil -} - -func (x *FriendInfo) GetAddSource() int32 { - if x != nil { - return x.AddSource - } - return 0 -} - -func (x *FriendInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID - } - return "" -} - -func (x *FriendInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type BlackInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - CreateTime int64 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime"` - BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo"` - AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource"` - OperatorUserID string `protobuf:"bytes,5,opt,name=operatorUserID,proto3" json:"operatorUserID"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex"` -} - -func (x *BlackInfo) Reset() { - *x = BlackInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackInfo) ProtoMessage() {} - -func (x *BlackInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use BlackInfo.ProtoReflect.Descriptor instead. -func (*BlackInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{6} -} - -func (x *BlackInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *BlackInfo) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *BlackInfo) GetBlackUserInfo() *PublicUserInfo { - if x != nil { - return x.BlackUserInfo - } - return nil -} - -func (x *BlackInfo) GetAddSource() int32 { - if x != nil { - return x.AddSource - } - return 0 -} - -func (x *BlackInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID - } - return "" -} - -func (x *BlackInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type GroupRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` - GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo"` - HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg"` - HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg"` - ReqTime int64 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime"` - HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID"` - HandleTime int64 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex"` - JoinSource int32 `protobuf:"varint,10,opt,name=joinSource,proto3" json:"joinSource"` - InviterUserID string `protobuf:"bytes,11,opt,name=inviterUserID,proto3" json:"inviterUserID"` -} - -func (x *GroupRequest) Reset() { - *x = GroupRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupRequest) ProtoMessage() {} - -func (x *GroupRequest) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupRequest.ProtoReflect.Descriptor instead. -func (*GroupRequest) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{7} -} - -func (x *GroupRequest) GetUserInfo() *PublicUserInfo { - if x != nil { - return x.UserInfo - } - return nil -} - -func (x *GroupRequest) GetGroupInfo() *GroupInfo { - if x != nil { - return x.GroupInfo - } - return nil -} - -func (x *GroupRequest) GetHandleResult() int32 { - if x != nil { - return x.HandleResult - } - return 0 -} - -func (x *GroupRequest) GetReqMsg() string { - if x != nil { - return x.ReqMsg - } - return "" -} - -func (x *GroupRequest) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -func (x *GroupRequest) GetReqTime() int64 { - if x != nil { - return x.ReqTime - } - return 0 -} - -func (x *GroupRequest) GetHandleUserID() string { - if x != nil { - return x.HandleUserID - } - return "" -} - -func (x *GroupRequest) GetHandleTime() int64 { - if x != nil { - return x.HandleTime - } - return 0 -} - -func (x *GroupRequest) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *GroupRequest) GetJoinSource() int32 { - if x != nil { - return x.JoinSource - } - return 0 -} - -func (x *GroupRequest) GetInviterUserID() string { - if x != nil { - return x.InviterUserID - } - return "" -} - -type FriendRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname"` - FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL"` - ToUserID string `protobuf:"bytes,4,opt,name=toUserID,proto3" json:"toUserID"` - ToNickname string `protobuf:"bytes,5,opt,name=toNickname,proto3" json:"toNickname"` - ToFaceURL string `protobuf:"bytes,6,opt,name=toFaceURL,proto3" json:"toFaceURL"` - HandleResult int32 `protobuf:"varint,7,opt,name=handleResult,proto3" json:"handleResult"` - ReqMsg string `protobuf:"bytes,8,opt,name=reqMsg,proto3" json:"reqMsg"` - CreateTime int64 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime"` - HandlerUserID string `protobuf:"bytes,10,opt,name=handlerUserID,proto3" json:"handlerUserID"` - HandleMsg string `protobuf:"bytes,11,opt,name=handleMsg,proto3" json:"handleMsg"` - HandleTime int64 `protobuf:"varint,12,opt,name=handleTime,proto3" json:"handleTime"` - Ex string `protobuf:"bytes,13,opt,name=ex,proto3" json:"ex"` -} - -func (x *FriendRequest) Reset() { - *x = FriendRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendRequest) ProtoMessage() {} - -func (x *FriendRequest) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendRequest.ProtoReflect.Descriptor instead. -func (*FriendRequest) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{8} -} - -func (x *FriendRequest) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -func (x *FriendRequest) GetFromNickname() string { - if x != nil { - return x.FromNickname - } - return "" -} - -func (x *FriendRequest) GetFromFaceURL() string { - if x != nil { - return x.FromFaceURL - } - return "" -} - -func (x *FriendRequest) GetToUserID() string { - if x != nil { - return x.ToUserID - } - return "" -} - -func (x *FriendRequest) GetToNickname() string { - if x != nil { - return x.ToNickname - } - return "" -} - -func (x *FriendRequest) GetToFaceURL() string { - if x != nil { - return x.ToFaceURL - } - return "" -} - -func (x *FriendRequest) GetHandleResult() int32 { - if x != nil { - return x.HandleResult - } - return 0 -} - -func (x *FriendRequest) GetReqMsg() string { - if x != nil { - return x.ReqMsg - } - return "" -} - -func (x *FriendRequest) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *FriendRequest) GetHandlerUserID() string { - if x != nil { - return x.HandlerUserID - } - return "" -} - -func (x *FriendRequest) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -func (x *FriendRequest) GetHandleTime() int64 { - if x != nil { - return x.HandleTime - } - return 0 -} - -func (x *FriendRequest) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type PullMessageBySeqsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - SeqRanges []*SeqRange `protobuf:"bytes,2,rep,name=seqRanges,proto3" json:"seqRanges"` - Order PullOrder `protobuf:"varint,3,opt,name=order,proto3,enum=OpenIMServer.sdkws.PullOrder" json:"order"` -} - -func (x *PullMessageBySeqsReq) Reset() { - *x = PullMessageBySeqsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullMessageBySeqsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullMessageBySeqsReq) ProtoMessage() {} - -func (x *PullMessageBySeqsReq) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use PullMessageBySeqsReq.ProtoReflect.Descriptor instead. -func (*PullMessageBySeqsReq) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{9} -} - -func (x *PullMessageBySeqsReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *PullMessageBySeqsReq) GetSeqRanges() []*SeqRange { - if x != nil { - return x.SeqRanges - } - return nil -} - -func (x *PullMessageBySeqsReq) GetOrder() PullOrder { - if x != nil { - return x.Order - } - return PullOrder_PullOrderAsc -} - -type SeqRange struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - Begin int64 `protobuf:"varint,2,opt,name=begin,proto3" json:"begin"` - End int64 `protobuf:"varint,3,opt,name=end,proto3" json:"end"` - Num int64 `protobuf:"varint,4,opt,name=num,proto3" json:"num"` -} - -func (x *SeqRange) Reset() { - *x = SeqRange{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SeqRange) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SeqRange) ProtoMessage() {} - -func (x *SeqRange) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use SeqRange.ProtoReflect.Descriptor instead. -func (*SeqRange) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{10} -} - -func (x *SeqRange) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *SeqRange) GetBegin() int64 { - if x != nil { - return x.Begin - } - return 0 -} - -func (x *SeqRange) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -func (x *SeqRange) GetNum() int64 { - if x != nil { - return x.Num - } - return 0 -} - -type PullMsgs struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Msgs []*MsgData `protobuf:"bytes,1,rep,name=Msgs,proto3" json:"Msgs"` - IsEnd bool `protobuf:"varint,2,opt,name=isEnd,proto3" json:"isEnd"` -} - -func (x *PullMsgs) Reset() { - *x = PullMsgs{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullMsgs) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullMsgs) ProtoMessage() {} - -func (x *PullMsgs) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use PullMsgs.ProtoReflect.Descriptor instead. -func (*PullMsgs) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{11} -} - -func (x *PullMsgs) GetMsgs() []*MsgData { - if x != nil { - return x.Msgs - } - return nil -} - -func (x *PullMsgs) GetIsEnd() bool { - if x != nil { - return x.IsEnd - } - return false -} - -type PullMessageBySeqsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *PullMessageBySeqsResp) Reset() { - *x = PullMessageBySeqsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullMessageBySeqsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullMessageBySeqsResp) ProtoMessage() {} - -func (x *PullMessageBySeqsResp) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[12] - 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 PullMessageBySeqsResp.ProtoReflect.Descriptor instead. -func (*PullMessageBySeqsResp) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{12} -} - -func (x *PullMessageBySeqsResp) GetMsgs() map[string]*PullMsgs { - if x != nil { - return x.Msgs - } - return nil -} - -func (x *PullMessageBySeqsResp) GetNotificationMsgs() map[string]*PullMsgs { - if x != nil { - return x.NotificationMsgs - } - return nil -} - -type GetMaxSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetMaxSeqReq) Reset() { - *x = GetMaxSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxSeqReq) ProtoMessage() {} - -func (x *GetMaxSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GetMaxSeqReq.ProtoReflect.Descriptor instead. -func (*GetMaxSeqReq) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{13} -} - -func (x *GetMaxSeqReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetMaxSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MaxSeqs map[string]int64 `protobuf:"bytes,1,rep,name=maxSeqs,proto3" json:"maxSeqs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - MinSeqs map[string]int64 `protobuf:"bytes,2,rep,name=minSeqs,proto3" json:"minSeqs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` -} - -func (x *GetMaxSeqResp) Reset() { - *x = GetMaxSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxSeqResp) ProtoMessage() {} - -func (x *GetMaxSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[14] - 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 GetMaxSeqResp.ProtoReflect.Descriptor instead. -func (*GetMaxSeqResp) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{14} -} - -func (x *GetMaxSeqResp) GetMaxSeqs() map[string]int64 { - if x != nil { - return x.MaxSeqs - } - return nil -} - -func (x *GetMaxSeqResp) GetMinSeqs() map[string]int64 { - if x != nil { - return x.MinSeqs - } - return nil -} - -type UserSendMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime"` -} - -func (x *UserSendMsgResp) Reset() { - *x = UserSendMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserSendMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserSendMsgResp) ProtoMessage() {} - -func (x *UserSendMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use UserSendMsgResp.ProtoReflect.Descriptor instead. -func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{15} -} - -func (x *UserSendMsgResp) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID - } - return "" -} - -func (x *UserSendMsgResp) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *UserSendMsgResp) GetSendTime() int64 { - if x != nil { - return x.SendTime - } - return 0 -} - -type MsgData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID"` - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID"` - ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID"` - ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID"` - SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID,proto3" json:"senderPlatformID"` - SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname"` - SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType"` - MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom"` - ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType"` - Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content"` - Seq int64 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq"` - SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime"` - CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime"` - Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status"` - IsRead bool `protobuf:"varint,18,opt,name=isRead,proto3" json:"isRead"` - Options map[string]bool `protobuf:"bytes,19,rep,name=options,proto3" json:"options" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,20,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo"` - AtUserIDList []string `protobuf:"bytes,21,rep,name=atUserIDList,proto3" json:"atUserIDList"` - AttachedInfo string `protobuf:"bytes,22,opt,name=attachedInfo,proto3" json:"attachedInfo"` - Ex string `protobuf:"bytes,23,opt,name=ex,proto3" json:"ex"` -} - -func (x *MsgData) Reset() { - *x = MsgData{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgData) ProtoMessage() {} - -func (x *MsgData) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use MsgData.ProtoReflect.Descriptor instead. -func (*MsgData) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{16} -} - -func (x *MsgData) GetSendID() string { - if x != nil { - return x.SendID - } - return "" -} - -func (x *MsgData) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *MsgData) GetGroupID() string { - if x != nil { - return x.GroupID - } - return "" -} - -func (x *MsgData) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *MsgData) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID - } - return "" -} - -func (x *MsgData) GetSenderPlatformID() int32 { - if x != nil { - return x.SenderPlatformID - } - return 0 -} - -func (x *MsgData) GetSenderNickname() string { - if x != nil { - return x.SenderNickname - } - return "" -} - -func (x *MsgData) GetSenderFaceURL() string { - if x != nil { - return x.SenderFaceURL - } - return "" -} - -func (x *MsgData) GetSessionType() int32 { - if x != nil { - return x.SessionType - } - return 0 -} - -func (x *MsgData) GetMsgFrom() int32 { - if x != nil { - return x.MsgFrom - } - return 0 -} - -func (x *MsgData) GetContentType() int32 { - if x != nil { - return x.ContentType - } - return 0 -} - -func (x *MsgData) GetContent() []byte { - if x != nil { - return x.Content - } - return nil -} - -func (x *MsgData) GetSeq() int64 { - if x != nil { - return x.Seq - } - return 0 -} - -func (x *MsgData) GetSendTime() int64 { - if x != nil { - return x.SendTime - } - return 0 -} - -func (x *MsgData) GetCreateTime() int64 { - if x != nil { - return x.CreateTime - } - return 0 -} - -func (x *MsgData) GetStatus() int32 { - if x != nil { - return x.Status - } - return 0 -} - -func (x *MsgData) GetIsRead() bool { - if x != nil { - return x.IsRead - } - return false -} - -func (x *MsgData) GetOptions() map[string]bool { - if x != nil { - return x.Options - } - return nil -} - -func (x *MsgData) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo - } - return nil -} - -func (x *MsgData) GetAtUserIDList() []string { - if x != nil { - return x.AtUserIDList - } - return nil -} - -func (x *MsgData) GetAttachedInfo() string { - if x != nil { - return x.AttachedInfo - } - return "" -} - -func (x *MsgData) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type PushMessages struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Msgs map[string]*PullMsgs `protobuf:"bytes,1,rep,name=msgs,proto3" json:"msgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - NotificationMsgs map[string]*PullMsgs `protobuf:"bytes,2,rep,name=notificationMsgs,proto3" json:"notificationMsgs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *PushMessages) Reset() { - *x = PushMessages{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushMessages) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushMessages) ProtoMessage() {} - -func (x *PushMessages) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use PushMessages.ProtoReflect.Descriptor instead. -func (*PushMessages) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{17} -} - -func (x *PushMessages) GetMsgs() map[string]*PullMsgs { - if x != nil { - return x.Msgs - } - return nil -} - -func (x *PushMessages) GetNotificationMsgs() map[string]*PullMsgs { - if x != nil { - return x.NotificationMsgs - } - return nil -} - -type OfflinePushInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc"` - Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex"` - IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound"` - IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount,proto3" json:"iOSBadgeCount"` - SignalInfo string `protobuf:"bytes,6,opt,name=signalInfo,proto3" json:"signalInfo"` -} - -func (x *OfflinePushInfo) Reset() { - *x = OfflinePushInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OfflinePushInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OfflinePushInfo) ProtoMessage() {} - -func (x *OfflinePushInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use OfflinePushInfo.ProtoReflect.Descriptor instead. -func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{18} -} - -func (x *OfflinePushInfo) GetTitle() string { - if x != nil { - return x.Title - } - return "" -} - -func (x *OfflinePushInfo) GetDesc() string { - if x != nil { - return x.Desc - } - return "" -} - -func (x *OfflinePushInfo) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -func (x *OfflinePushInfo) GetIOSPushSound() string { - if x != nil { - return x.IOSPushSound - } - return "" -} - -func (x *OfflinePushInfo) GetIOSBadgeCount() bool { - if x != nil { - return x.IOSBadgeCount - } - return false -} - -func (x *OfflinePushInfo) GetSignalInfo() string { - if x != nil { - return x.SignalInfo - } - return "" -} - -type TipsComm struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` - DefaultTips string `protobuf:"bytes,2,opt,name=defaultTips,proto3" json:"defaultTips"` - JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail"` -} - -func (x *TipsComm) Reset() { - *x = TipsComm{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TipsComm) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TipsComm) ProtoMessage() {} - -func (x *TipsComm) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use TipsComm.ProtoReflect.Descriptor instead. -func (*TipsComm) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{19} -} - -func (x *TipsComm) GetDetail() []byte { - if x != nil { - return x.Detail - } - return nil -} - -func (x *TipsComm) GetDefaultTips() string { - if x != nil { - return x.DefaultTips - } - return "" -} - -func (x *TipsComm) GetJsonDetail() string { - if x != nil { - return x.JsonDetail - } - return "" -} - -// OnGroupCreated() -type GroupCreatedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` - GroupOwnerUser *GroupMemberFullInfo `protobuf:"bytes,5,opt,name=groupOwnerUser,proto3" json:"groupOwnerUser"` -} - -func (x *GroupCreatedTips) Reset() { - *x = GroupCreatedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupCreatedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupCreatedTips) ProtoMessage() {} - -func (x *GroupCreatedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupCreatedTips.ProtoReflect.Descriptor instead. -func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{20} -} - -func (x *GroupCreatedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupCreatedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupCreatedTips) GetMemberList() []*GroupMemberFullInfo { - if x != nil { - return x.MemberList - } - return nil -} - -func (x *GroupCreatedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -func (x *GroupCreatedTips) GetGroupOwnerUser() *GroupMemberFullInfo { - if x != nil { - return x.GroupOwnerUser - } - return nil -} - -// OnGroupInfoSet() -type GroupInfoSetTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - MuteTime int64 `protobuf:"varint,2,opt,name=muteTime,proto3" json:"muteTime"` - Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group"` -} - -func (x *GroupInfoSetTips) Reset() { - *x = GroupInfoSetTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfoSetTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfoSetTips) ProtoMessage() {} - -func (x *GroupInfoSetTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupInfoSetTips.ProtoReflect.Descriptor instead. -func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{21} -} - -func (x *GroupInfoSetTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupInfoSetTips) GetMuteTime() int64 { - if x != nil { - return x.MuteTime - } - return 0 -} - -func (x *GroupInfoSetTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -type GroupInfoSetNameTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` -} - -func (x *GroupInfoSetNameTips) Reset() { - *x = GroupInfoSetNameTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfoSetNameTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfoSetNameTips) ProtoMessage() {} - -func (x *GroupInfoSetNameTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupInfoSetNameTips.ProtoReflect.Descriptor instead. -func (*GroupInfoSetNameTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{22} -} - -func (x *GroupInfoSetNameTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupInfoSetNameTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -type GroupInfoSetAnnouncementTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser"` //who do this - Group *GroupInfo `protobuf:"bytes,2,opt,name=group,proto3" json:"group"` -} - -func (x *GroupInfoSetAnnouncementTips) Reset() { - *x = GroupInfoSetAnnouncementTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfoSetAnnouncementTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfoSetAnnouncementTips) ProtoMessage() {} - -func (x *GroupInfoSetAnnouncementTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupInfoSetAnnouncementTips.ProtoReflect.Descriptor instead. -func (*GroupInfoSetAnnouncementTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{23} -} - -func (x *GroupInfoSetAnnouncementTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupInfoSetAnnouncementTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -// OnJoinGroupApplication() -type JoinGroupApplicationTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - Applicant *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant,proto3" json:"applicant"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg"` -} - -func (x *JoinGroupApplicationTips) Reset() { - *x = JoinGroupApplicationTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *JoinGroupApplicationTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*JoinGroupApplicationTips) ProtoMessage() {} - -func (x *JoinGroupApplicationTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use JoinGroupApplicationTips.ProtoReflect.Descriptor instead. -func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{24} -} - -func (x *JoinGroupApplicationTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *JoinGroupApplicationTips) GetApplicant() *PublicUserInfo { - if x != nil { - return x.Applicant - } - return nil -} - -func (x *JoinGroupApplicationTips) GetReqMsg() string { - if x != nil { - return x.ReqMsg - } - return "" -} - -// OnQuitGroup() -// -// Actively leave the group -type MemberQuitTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *MemberQuitTips) Reset() { - *x = MemberQuitTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberQuitTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberQuitTips) ProtoMessage() {} - -func (x *MemberQuitTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use MemberQuitTips.ProtoReflect.Descriptor instead. -func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{25} -} - -func (x *MemberQuitTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *MemberQuitTips) GetQuitUser() *GroupMemberFullInfo { - if x != nil { - return x.QuitUser - } - return nil -} - -func (x *MemberQuitTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -// OnApplicationGroupAccepted() -type GroupApplicationAcceptedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` - ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) -} - -func (x *GroupApplicationAcceptedTips) Reset() { - *x = GroupApplicationAcceptedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationAcceptedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationAcceptedTips) ProtoMessage() {} - -func (x *GroupApplicationAcceptedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupApplicationAcceptedTips.ProtoReflect.Descriptor instead. -func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{26} -} - -func (x *GroupApplicationAcceptedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupApplicationAcceptedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupApplicationAcceptedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -func (x *GroupApplicationAcceptedTips) GetReceiverAs() int32 { - if x != nil { - return x.ReceiverAs - } - return 0 -} - -// OnApplicationGroupRejected() -type GroupApplicationRejectedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg"` - ReceiverAs int32 `protobuf:"varint,5,opt,name=receiverAs,proto3" json:"receiverAs"` // admin(==1) or applicant(==0) -} - -func (x *GroupApplicationRejectedTips) Reset() { - *x = GroupApplicationRejectedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationRejectedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationRejectedTips) ProtoMessage() {} - -func (x *GroupApplicationRejectedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupApplicationRejectedTips.ProtoReflect.Descriptor instead. -func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{27} -} - -func (x *GroupApplicationRejectedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupApplicationRejectedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupApplicationRejectedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -func (x *GroupApplicationRejectedTips) GetReceiverAs() int32 { - if x != nil { - return x.ReceiverAs - } - return 0 -} - -// OnTransferGroupOwner() -type GroupOwnerTransferredTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *GroupOwnerTransferredTips) Reset() { - *x = GroupOwnerTransferredTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupOwnerTransferredTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupOwnerTransferredTips) ProtoMessage() {} - -func (x *GroupOwnerTransferredTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupOwnerTransferredTips.ProtoReflect.Descriptor instead. -func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{28} -} - -func (x *GroupOwnerTransferredTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupOwnerTransferredTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupOwnerTransferredTips) GetNewGroupOwner() *GroupMemberFullInfo { - if x != nil { - return x.NewGroupOwner - } - return nil -} - -func (x *GroupOwnerTransferredTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -// OnMemberKicked() -type MemberKickedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - KickedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList,proto3" json:"kickedUserList"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *MemberKickedTips) Reset() { - *x = MemberKickedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberKickedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberKickedTips) ProtoMessage() {} - -func (x *MemberKickedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use MemberKickedTips.ProtoReflect.Descriptor instead. -func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{29} -} - -func (x *MemberKickedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *MemberKickedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *MemberKickedTips) GetKickedUserList() []*GroupMemberFullInfo { - if x != nil { - return x.KickedUserList - } - return nil -} - -func (x *MemberKickedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -// OnMemberInvited() -type MemberInvitedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - InvitedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList,proto3" json:"invitedUserList"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *MemberInvitedTips) Reset() { - *x = MemberInvitedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberInvitedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberInvitedTips) ProtoMessage() {} - -func (x *MemberInvitedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use MemberInvitedTips.ProtoReflect.Descriptor instead. -func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{30} -} - -func (x *MemberInvitedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *MemberInvitedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *MemberInvitedTips) GetInvitedUserList() []*GroupMemberFullInfo { - if x != nil { - return x.InvitedUserList - } - return nil -} - -func (x *MemberInvitedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -// Actively join the group -type MemberEnterTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *MemberEnterTips) Reset() { - *x = MemberEnterTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberEnterTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberEnterTips) ProtoMessage() {} - -func (x *MemberEnterTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use MemberEnterTips.ProtoReflect.Descriptor instead. -func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{31} -} - -func (x *MemberEnterTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *MemberEnterTips) GetEntrantUser() *GroupMemberFullInfo { - if x != nil { - return x.EntrantUser - } - return nil -} - -func (x *MemberEnterTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -type GroupDismissedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *GroupDismissedTips) Reset() { - *x = GroupDismissedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupDismissedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupDismissedTips) ProtoMessage() {} - -func (x *GroupDismissedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupDismissedTips.ProtoReflect.Descriptor instead. -func (*GroupDismissedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{32} -} - -func (x *GroupDismissedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupDismissedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupDismissedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -type GroupMemberMutedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` - MutedSeconds uint32 `protobuf:"varint,5,opt,name=mutedSeconds,proto3" json:"mutedSeconds"` -} - -func (x *GroupMemberMutedTips) Reset() { - *x = GroupMemberMutedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMemberMutedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMemberMutedTips) ProtoMessage() {} - -func (x *GroupMemberMutedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupMemberMutedTips.ProtoReflect.Descriptor instead. -func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{33} -} - -func (x *GroupMemberMutedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupMemberMutedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupMemberMutedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -func (x *GroupMemberMutedTips) GetMutedUser() *GroupMemberFullInfo { - if x != nil { - return x.MutedUser - } - return nil -} - -func (x *GroupMemberMutedTips) GetMutedSeconds() uint32 { - if x != nil { - return x.MutedSeconds - } - return 0 -} - -type GroupMemberCancelMutedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - MutedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=mutedUser,proto3" json:"mutedUser"` -} - -func (x *GroupMemberCancelMutedTips) Reset() { - *x = GroupMemberCancelMutedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMemberCancelMutedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMemberCancelMutedTips) ProtoMessage() {} - -func (x *GroupMemberCancelMutedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupMemberCancelMutedTips.ProtoReflect.Descriptor instead. -func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{34} -} - -func (x *GroupMemberCancelMutedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupMemberCancelMutedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupMemberCancelMutedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -func (x *GroupMemberCancelMutedTips) GetMutedUser() *GroupMemberFullInfo { - if x != nil { - return x.MutedUser - } - return nil -} - -type GroupMutedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *GroupMutedTips) Reset() { - *x = GroupMutedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMutedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMutedTips) ProtoMessage() {} - -func (x *GroupMutedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupMutedTips.ProtoReflect.Descriptor instead. -func (*GroupMutedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{35} -} - -func (x *GroupMutedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupMutedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupMutedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -type GroupCancelMutedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` -} - -func (x *GroupCancelMutedTips) Reset() { - *x = GroupCancelMutedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupCancelMutedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupCancelMutedTips) ProtoMessage() {} - -func (x *GroupCancelMutedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupCancelMutedTips.ProtoReflect.Descriptor instead. -func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{36} -} - -func (x *GroupCancelMutedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupCancelMutedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupCancelMutedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -type GroupMemberInfoSetTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime"` - ChangedUser *GroupMemberFullInfo `protobuf:"bytes,4,opt,name=changedUser,proto3" json:"changedUser"` -} - -func (x *GroupMemberInfoSetTips) Reset() { - *x = GroupMemberInfoSetTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMemberInfoSetTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMemberInfoSetTips) ProtoMessage() {} - -func (x *GroupMemberInfoSetTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use GroupMemberInfoSetTips.ProtoReflect.Descriptor instead. -func (*GroupMemberInfoSetTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{37} -} - -func (x *GroupMemberInfoSetTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group - } - return nil -} - -func (x *GroupMemberInfoSetTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser - } - return nil -} - -func (x *GroupMemberInfoSetTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -func (x *GroupMemberInfoSetTips) GetChangedUser() *GroupMemberFullInfo { - if x != nil { - return x.ChangedUser - } - return nil -} - -type FriendApplication struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime"` - AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource"` - AddWording string `protobuf:"bytes,3,opt,name=addWording,proto3" json:"addWording"` -} - -func (x *FriendApplication) Reset() { - *x = FriendApplication{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplication) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplication) ProtoMessage() {} - -func (x *FriendApplication) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendApplication.ProtoReflect.Descriptor instead. -func (*FriendApplication) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{38} -} - -func (x *FriendApplication) GetAddTime() int64 { - if x != nil { - return x.AddTime - } - return 0 -} - -func (x *FriendApplication) GetAddSource() string { - if x != nil { - return x.AddSource - } - return "" -} - -func (x *FriendApplication) GetAddWording() string { - if x != nil { - return x.AddWording - } - return "" -} - -type FromToUserID struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID"` -} - -func (x *FromToUserID) Reset() { - *x = FromToUserID{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FromToUserID) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FromToUserID) ProtoMessage() {} - -func (x *FromToUserID) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FromToUserID.ProtoReflect.Descriptor instead. -func (*FromToUserID) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{39} -} - -func (x *FromToUserID) GetFromUserID() string { - if x != nil { - return x.FromUserID - } - return "" -} - -func (x *FromToUserID) GetToUserID() string { - if x != nil { - return x.ToUserID - } - return "" -} - -// FromUserID apply to add ToUserID -type FriendApplicationTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:发起者; to:接收者 -} - -func (x *FriendApplicationTips) Reset() { - *x = FriendApplicationTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationTips) ProtoMessage() {} - -func (x *FriendApplicationTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendApplicationTips.ProtoReflect.Descriptor instead. -func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{40} -} - -func (x *FriendApplicationTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -// FromUserID accept or reject ToUserID -type FriendApplicationApprovedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:同意者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` -} - -func (x *FriendApplicationApprovedTips) Reset() { - *x = FriendApplicationApprovedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationApprovedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationApprovedTips) ProtoMessage() {} - -func (x *FriendApplicationApprovedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendApplicationApprovedTips.ProtoReflect.Descriptor instead. -func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{41} -} - -func (x *FriendApplicationApprovedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -func (x *FriendApplicationApprovedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -// FromUserID accept or reject ToUserID -type FriendApplicationRejectedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:拒绝者;to:请求发起者 - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg"` -} - -func (x *FriendApplicationRejectedTips) Reset() { - *x = FriendApplicationRejectedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationRejectedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationRejectedTips) ProtoMessage() {} - -func (x *FriendApplicationRejectedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendApplicationRejectedTips.ProtoReflect.Descriptor instead. -func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{42} -} - -func (x *FriendApplicationRejectedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -func (x *FriendApplicationRejectedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg - } - return "" -} - -// FromUserID Added a friend ToUserID -type FriendAddedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` - OperationTime int64 `protobuf:"varint,2,opt,name=operationTime,proto3" json:"operationTime"` - OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser"` //who do this -} - -func (x *FriendAddedTips) Reset() { - *x = FriendAddedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendAddedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendAddedTips) ProtoMessage() {} - -func (x *FriendAddedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendAddedTips.ProtoReflect.Descriptor instead. -func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{43} -} - -func (x *FriendAddedTips) GetFriend() *FriendInfo { - if x != nil { - return x.Friend - } - return nil -} - -func (x *FriendAddedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime - } - return 0 -} - -func (x *FriendAddedTips) GetOpUser() *PublicUserInfo { - if x != nil { - return x.OpUser - } - return nil -} - -// FromUserID deleted a friend ToUserID -type FriendDeletedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:owner; to:friend -} - -func (x *FriendDeletedTips) Reset() { - *x = FriendDeletedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendDeletedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendDeletedTips) ProtoMessage() {} - -func (x *FriendDeletedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use FriendDeletedTips.ProtoReflect.Descriptor instead. -func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{44} -} - -func (x *FriendDeletedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -type BlackAddedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:owner; to:black -} - -func (x *BlackAddedTips) Reset() { - *x = BlackAddedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackAddedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackAddedTips) ProtoMessage() {} - -func (x *BlackAddedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use BlackAddedTips.ProtoReflect.Descriptor instead. -func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{45} -} - -func (x *BlackAddedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -type BlackDeletedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:owner; to:black -} - -func (x *BlackDeletedTips) Reset() { - *x = BlackDeletedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackDeletedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackDeletedTips) ProtoMessage() {} - -func (x *BlackDeletedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use BlackDeletedTips.ProtoReflect.Descriptor instead. -func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{46} -} - -func (x *BlackDeletedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -type FriendInfoChangedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID"` //from:changed; to:friend -} - -func (x *FriendInfoChangedTips) Reset() { - *x = FriendInfoChangedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendInfoChangedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendInfoChangedTips) ProtoMessage() {} - -func (x *FriendInfoChangedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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 FriendInfoChangedTips.ProtoReflect.Descriptor instead. -func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{47} -} - -func (x *FriendInfoChangedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID - } - return nil -} - -// ////////////////////user///////////////////// -type UserInfoUpdatedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *UserInfoUpdatedTips) Reset() { - *x = UserInfoUpdatedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserInfoUpdatedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserInfoUpdatedTips) ProtoMessage() {} - -func (x *UserInfoUpdatedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_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) -} - -// Deprecated: Use UserInfoUpdatedTips.ProtoReflect.Descriptor instead. -func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{48} -} - -func (x *UserInfoUpdatedTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -// ////////////////////conversation///////////////////// -type ConversationUpdateTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationIDList []string `protobuf:"bytes,2,rep,name=conversationIDList,proto3" json:"conversationIDList"` -} - -func (x *ConversationUpdateTips) Reset() { - *x = ConversationUpdateTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ConversationUpdateTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConversationUpdateTips) ProtoMessage() {} - -func (x *ConversationUpdateTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[49] - 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 ConversationUpdateTips.ProtoReflect.Descriptor instead. -func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{49} -} - -func (x *ConversationUpdateTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ConversationUpdateTips) GetConversationIDList() []string { - if x != nil { - return x.ConversationIDList - } - return nil -} - -type ConversationSetPrivateTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RecvID string `protobuf:"bytes,1,opt,name=recvID,proto3" json:"recvID"` - SendID string `protobuf:"bytes,2,opt,name=sendID,proto3" json:"sendID"` - IsPrivate bool `protobuf:"varint,3,opt,name=isPrivate,proto3" json:"isPrivate"` -} - -func (x *ConversationSetPrivateTips) Reset() { - *x = ConversationSetPrivateTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ConversationSetPrivateTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConversationSetPrivateTips) ProtoMessage() {} - -func (x *ConversationSetPrivateTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[50] - 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 ConversationSetPrivateTips.ProtoReflect.Descriptor instead. -func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{50} -} - -func (x *ConversationSetPrivateTips) GetRecvID() string { - if x != nil { - return x.RecvID - } - return "" -} - -func (x *ConversationSetPrivateTips) GetSendID() string { - if x != nil { - return x.SendID - } - return "" -} - -func (x *ConversationSetPrivateTips) GetIsPrivate() bool { - if x != nil { - return x.IsPrivate - } - return false -} - -type ConversationHasReadTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - HasReadSeq int64 `protobuf:"varint,3,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` - UnreadCountTime int64 `protobuf:"varint,4,opt,name=unreadCountTime,proto3" json:"unreadCountTime"` -} - -func (x *ConversationHasReadTips) Reset() { - *x = ConversationHasReadTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ConversationHasReadTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConversationHasReadTips) ProtoMessage() {} - -func (x *ConversationHasReadTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[51] - 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 ConversationHasReadTips.ProtoReflect.Descriptor instead. -func (*ConversationHasReadTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{51} -} - -func (x *ConversationHasReadTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ConversationHasReadTips) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *ConversationHasReadTips) GetHasReadSeq() int64 { - if x != nil { - return x.HasReadSeq - } - return 0 -} - -func (x *ConversationHasReadTips) GetUnreadCountTime() int64 { - if x != nil { - return x.UnreadCountTime - } - return 0 -} - -type NotificationElem struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Detail string `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail"` -} - -func (x *NotificationElem) Reset() { - *x = NotificationElem{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *NotificationElem) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*NotificationElem) ProtoMessage() {} - -func (x *NotificationElem) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[52] - 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 NotificationElem.ProtoReflect.Descriptor instead. -func (*NotificationElem) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{52} -} - -func (x *NotificationElem) GetDetail() string { - if x != nil { - return x.Detail - } - return "" -} - -// //////////////////message/////////////////////// -type Seqs struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Seqs []int64 `protobuf:"varint,1,rep,packed,name=seqs,proto3" json:"seqs"` -} - -func (x *Seqs) Reset() { - *x = Seqs{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[53] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Seqs) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Seqs) ProtoMessage() {} - -func (x *Seqs) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[53] - 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 Seqs.ProtoReflect.Descriptor instead. -func (*Seqs) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{53} -} - -func (x *Seqs) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -type DeleteMessageTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUserID string `protobuf:"bytes,1,opt,name=opUserID,proto3" json:"opUserID"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` -} - -func (x *DeleteMessageTips) Reset() { - *x = DeleteMessageTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMessageTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMessageTips) ProtoMessage() {} - -func (x *DeleteMessageTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[54] - 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 DeleteMessageTips.ProtoReflect.Descriptor instead. -func (*DeleteMessageTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{54} -} - -func (x *DeleteMessageTips) GetOpUserID() string { - if x != nil { - return x.OpUserID - } - return "" -} - -func (x *DeleteMessageTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *DeleteMessageTips) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -type RevokeMsgTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RevokerUserID string `protobuf:"bytes,1,opt,name=revokerUserID,proto3" json:"revokerUserID"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokeTime int64 `protobuf:"varint,3,opt,name=revokeTime,proto3" json:"revokeTime"` - SesstionType int32 `protobuf:"varint,5,opt,name=sesstionType,proto3" json:"sesstionType"` - Seq int64 `protobuf:"varint,6,opt,name=seq,proto3" json:"seq"` - ConversationID string `protobuf:"bytes,7,opt,name=conversationID,proto3" json:"conversationID"` -} - -func (x *RevokeMsgTips) Reset() { - *x = RevokeMsgTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[55] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RevokeMsgTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RevokeMsgTips) ProtoMessage() {} - -func (x *RevokeMsgTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[55] - 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 RevokeMsgTips.ProtoReflect.Descriptor instead. -func (*RevokeMsgTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{55} -} - -func (x *RevokeMsgTips) GetRevokerUserID() string { - if x != nil { - return x.RevokerUserID - } - return "" -} - -func (x *RevokeMsgTips) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *RevokeMsgTips) GetRevokeTime() int64 { - if x != nil { - return x.RevokeTime - } - return 0 -} - -func (x *RevokeMsgTips) GetSesstionType() int32 { - if x != nil { - return x.SesstionType - } - return 0 -} - -func (x *RevokeMsgTips) GetSeq() int64 { - if x != nil { - return x.Seq - } - return 0 -} - -func (x *RevokeMsgTips) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -type MessageRevokedContent struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RevokerID string `protobuf:"bytes,1,opt,name=revokerID,proto3" json:"revokerID"` - RevokerRole int32 `protobuf:"varint,2,opt,name=revokerRole,proto3" json:"revokerRole"` - ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID,proto3" json:"clientMsgID"` - RevokerNickname string `protobuf:"bytes,4,opt,name=revokerNickname,proto3" json:"revokerNickname"` - RevokeTime int64 `protobuf:"varint,5,opt,name=revokeTime,proto3" json:"revokeTime"` - SourceMessageSendTime int64 `protobuf:"varint,6,opt,name=sourceMessageSendTime,proto3" json:"sourceMessageSendTime"` - SourceMessageSendID string `protobuf:"bytes,7,opt,name=sourceMessageSendID,proto3" json:"sourceMessageSendID"` - SourceMessageSenderNickname string `protobuf:"bytes,8,opt,name=sourceMessageSenderNickname,proto3" json:"sourceMessageSenderNickname"` - SessionType int32 `protobuf:"varint,10,opt,name=sessionType,proto3" json:"sessionType"` - Seq int64 `protobuf:"varint,11,opt,name=seq,proto3" json:"seq"` - Ex string `protobuf:"bytes,12,opt,name=ex,proto3" json:"ex"` -} - -func (x *MessageRevokedContent) Reset() { - *x = MessageRevokedContent{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[56] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MessageRevokedContent) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MessageRevokedContent) ProtoMessage() {} - -func (x *MessageRevokedContent) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[56] - 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 MessageRevokedContent.ProtoReflect.Descriptor instead. -func (*MessageRevokedContent) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{56} -} - -func (x *MessageRevokedContent) GetRevokerID() string { - if x != nil { - return x.RevokerID - } - return "" -} - -func (x *MessageRevokedContent) GetRevokerRole() int32 { - if x != nil { - return x.RevokerRole - } - return 0 -} - -func (x *MessageRevokedContent) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID - } - return "" -} - -func (x *MessageRevokedContent) GetRevokerNickname() string { - if x != nil { - return x.RevokerNickname - } - return "" -} - -func (x *MessageRevokedContent) GetRevokeTime() int64 { - if x != nil { - return x.RevokeTime - } - return 0 -} - -func (x *MessageRevokedContent) GetSourceMessageSendTime() int64 { - if x != nil { - return x.SourceMessageSendTime - } - return 0 -} - -func (x *MessageRevokedContent) GetSourceMessageSendID() string { - if x != nil { - return x.SourceMessageSendID - } - return "" -} - -func (x *MessageRevokedContent) GetSourceMessageSenderNickname() string { - if x != nil { - return x.SourceMessageSenderNickname - } - return "" -} - -func (x *MessageRevokedContent) GetSessionType() int32 { - if x != nil { - return x.SessionType - } - return 0 -} - -func (x *MessageRevokedContent) GetSeq() int64 { - if x != nil { - return x.Seq - } - return 0 -} - -func (x *MessageRevokedContent) GetEx() string { - if x != nil { - return x.Ex - } - return "" -} - -type ClearConversationTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` -} - -func (x *ClearConversationTips) Reset() { - *x = ClearConversationTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ClearConversationTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ClearConversationTips) ProtoMessage() {} - -func (x *ClearConversationTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[57] - 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 ClearConversationTips.ProtoReflect.Descriptor instead. -func (*ClearConversationTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{57} -} - -func (x *ClearConversationTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *ClearConversationTips) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -type DeleteMsgsTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` -} - -func (x *DeleteMsgsTips) Reset() { - *x = DeleteMsgsTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[58] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteMsgsTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteMsgsTips) ProtoMessage() {} - -func (x *DeleteMsgsTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[58] - 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 DeleteMsgsTips.ProtoReflect.Descriptor instead. -func (*DeleteMsgsTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{58} -} - -func (x *DeleteMsgsTips) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *DeleteMsgsTips) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *DeleteMsgsTips) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -type MarkAsReadTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MarkAsReadUserID string `protobuf:"bytes,1,opt,name=markAsReadUserID,proto3" json:"markAsReadUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - Seqs []int64 `protobuf:"varint,3,rep,packed,name=seqs,proto3" json:"seqs"` - HasReadSeq int64 `protobuf:"varint,4,opt,name=hasReadSeq,proto3" json:"hasReadSeq"` -} - -func (x *MarkAsReadTips) Reset() { - *x = MarkAsReadTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MarkAsReadTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MarkAsReadTips) ProtoMessage() {} - -func (x *MarkAsReadTips) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[59] - 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 MarkAsReadTips.ProtoReflect.Descriptor instead. -func (*MarkAsReadTips) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{59} -} - -func (x *MarkAsReadTips) GetMarkAsReadUserID() string { - if x != nil { - return x.MarkAsReadUserID - } - return "" -} - -func (x *MarkAsReadTips) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *MarkAsReadTips) GetSeqs() []int64 { - if x != nil { - return x.Seqs - } - return nil -} - -func (x *MarkAsReadTips) GetHasReadSeq() int64 { - if x != nil { - return x.HasReadSeq - } - return 0 -} - -type SetAppBackgroundStatusReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - IsBackground bool `protobuf:"varint,2,opt,name=isBackground,proto3" json:"isBackground"` -} - -func (x *SetAppBackgroundStatusReq) Reset() { - *x = SetAppBackgroundStatusReq{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetAppBackgroundStatusReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetAppBackgroundStatusReq) ProtoMessage() {} - -func (x *SetAppBackgroundStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[60] - 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 SetAppBackgroundStatusReq.ProtoReflect.Descriptor instead. -func (*SetAppBackgroundStatusReq) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{60} -} - -func (x *SetAppBackgroundStatusReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SetAppBackgroundStatusReq) GetIsBackground() bool { - if x != nil { - return x.IsBackground - } - return false -} - -type SetAppBackgroundStatusResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetAppBackgroundStatusResp) Reset() { - *x = SetAppBackgroundStatusResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[61] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetAppBackgroundStatusResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetAppBackgroundStatusResp) ProtoMessage() {} - -func (x *SetAppBackgroundStatusResp) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[61] - 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 SetAppBackgroundStatusResp.ProtoReflect.Descriptor instead. -func (*SetAppBackgroundStatusResp) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{61} -} - -type RequestPagination struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PageNumber int32 `protobuf:"varint,1,opt,name=pageNumber,proto3" json:"pageNumber"` - ShowNumber int32 `protobuf:"varint,2,opt,name=showNumber,proto3" json:"showNumber"` -} - -func (x *RequestPagination) Reset() { - *x = RequestPagination{} - if protoimpl.UnsafeEnabled { - mi := &file_sdkws_sdkws_proto_msgTypes[62] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RequestPagination) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RequestPagination) ProtoMessage() {} - -func (x *RequestPagination) ProtoReflect() protoreflect.Message { - mi := &file_sdkws_sdkws_proto_msgTypes[62] - 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 RequestPagination.ProtoReflect.Descriptor instead. -func (*RequestPagination) Descriptor() ([]byte, []int) { - return file_sdkws_sdkws_proto_rawDescGZIP(), []int{62} -} - -func (x *RequestPagination) GetPageNumber() int32 { - if x != nil { - return x.PageNumber - } - return 0 -} - -func (x *RequestPagination) GetShowNumber() int32 { - if x != nil { - return x.ShowNumber - } - return 0 -} - -var File_sdkws_sdkws_proto protoreflect.FileDescriptor - -var file_sdkws_sdkws_proto_rawDesc = []byte{ - 0x0a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x1a, 0x1b, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, - 0x73, 0x70, 0x62, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xdf, 0x04, 0x0a, 0x09, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, - 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, - 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x10, - 0x6e, 0x65, 0x65, 0x64, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x65, 0x65, 0x64, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x6b, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x6c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x61, 0x70, 0x70, - 0x6c, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x36, - 0x0a, 0x16, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, - 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x11, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0xa6, 0x03, 0x0a, 0x0f, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x6f, 0x72, 0x53, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, - 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, - 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, - 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, - 0x65, 0x55, 0x52, 0x4c, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x65, 0x78, 0x12, 0x4d, 0x0a, 0x10, 0x6e, 0x65, 0x65, 0x64, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x10, 0x6e, 0x65, 0x65, 0x64, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x0e, 0x6c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, - 0x6c, 0x6f, 0x6f, 0x6b, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x4f, - 0x0a, 0x11, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x61, 0x70, - 0x70, 0x6c, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, - 0xff, 0x02, 0x0a, 0x13, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, - 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x6f, 0x6c, - 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, - 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x70, 0x70, - 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x75, 0x74, - 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, - 0x6d, 0x75, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, - 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x22, 0x6e, 0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x6e, 0x66, 0x6f, 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, 0x1a, 0x0a, 0x08, 0x6e, - 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, - 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, - 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, - 0x4c, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, - 0x78, 0x22, 0xdc, 0x01, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 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, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x0e, 0x0a, 0x02, - 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x1e, 0x0a, 0x0a, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, - 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, - 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, - 0x22, 0xfa, 0x01, 0x0a, 0x0a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x64, 0x64, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x0e, 0x0a, - 0x02, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0xed, 0x01, - 0x0a, 0x09, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, - 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x48, 0x0a, - 0x0d, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x61, 0x64, 0x64, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x0e, 0x0a, - 0x02, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x99, 0x03, - 0x0a, 0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, - 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, - 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x4d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x72, 0x65, 0x71, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x65, 0x78, 0x12, 0x1e, 0x0a, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x9f, 0x03, 0x0a, 0x0d, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x66, - 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x66, - 0x72, 0x6f, 0x6d, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x20, 0x0a, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, - 0x4c, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, - 0x0a, 0x74, 0x6f, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x74, 0x6f, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x74, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x74, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x22, 0x0a, 0x0c, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, - 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, - 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x9f, 0x01, 0x0a, 0x14, - 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, - 0x73, 0x52, 0x65, 0x71, 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, 0x3a, 0x0a, 0x09, - 0x73, 0x65, 0x71, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x53, 0x65, 0x71, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x09, 0x73, - 0x65, 0x71, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, - 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x6c, 0x0a, - 0x08, 0x53, 0x65, 0x71, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x22, 0x51, 0x0a, 0x08, 0x50, - 0x75, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x4d, 0x73, 0x67, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x04, 0x4d, 0x73, 0x67, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x45, 0x6e, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x45, 0x6e, 0x64, 0x22, 0x87, - 0x03, 0x0a, 0x15, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, - 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x47, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x2e, 0x4d, 0x73, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6d, 0x73, 0x67, - 0x73, 0x12, 0x6b, 0x0a, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, - 0x71, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x6e, 0x6f, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x1a, 0x55, - 0x0a, 0x09, 0x4d, 0x73, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x61, 0x0a, 0x15, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x26, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4d, - 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x22, 0x9b, 0x02, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x48, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, - 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x07, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x73, 0x12, 0x48, 0x0a, 0x07, - 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, - 0x2e, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6d, - 0x69, 0x6e, 0x53, 0x65, 0x71, 0x73, 0x1a, 0x3a, 0x0a, 0x0c, 0x4d, 0x61, 0x78, 0x53, 0x65, 0x71, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0c, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x71, - 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x22, 0xae, 0x06, 0x0a, 0x07, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x24, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, - 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, - 0x6f, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, 0x6f, - 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, - 0x03, 0x73, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, - 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x52, 0x65, 0x61, 0x64, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x52, 0x65, 0x61, 0x64, 0x12, 0x42, 0x0a, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x4d, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, - 0x66, 0x6f, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x4f, 0x66, - 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x6f, - 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, - 0x0a, 0x0c, 0x61, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x15, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x4c, 0x69, - 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x49, 0x6e, - 0x66, 0x6f, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, - 0x65, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x17, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x1a, 0x3a, 0x0a, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0xec, 0x02, 0x0a, 0x0c, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x04, 0x6d, 0x73, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x2a, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x6d, - 0x73, 0x67, 0x73, 0x12, 0x62, 0x0a, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, - 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x67, 0x73, 0x1a, 0x55, 0x0a, 0x09, 0x4d, 0x73, 0x67, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4d, - 0x73, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x61, - 0x0a, 0x15, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, - 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x32, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x50, 0x75, - 0x6c, 0x6c, 0x4d, 0x73, 0x67, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0xb5, 0x01, 0x0a, 0x0f, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, - 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, - 0x65, 0x73, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x65, 0x73, 0x63, 0x12, - 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, - 0x22, 0x0a, 0x0c, 0x69, 0x4f, 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x4f, 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, - 0x75, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x4f, 0x53, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x4f, 0x53, 0x42, - 0x61, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x64, 0x0a, 0x08, 0x54, 0x69, 0x70, - 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, - 0x0b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, - 0x1e, 0x0a, 0x0a, 0x6a, 0x73, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6a, 0x73, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, - 0xc8, 0x02, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, - 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0a, 0x6d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, - 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x22, 0xa4, 0x01, 0x0a, 0x10, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x65, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, - 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, - 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x08, 0x6d, 0x75, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x22, 0x8c, 0x01, 0x0a, 0x14, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x53, - 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x54, 0x69, 0x70, 0x73, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x05, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x22, 0x94, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x65, - 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x70, - 0x73, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0xa9, 0x01, 0x0a, 0x18, 0x4a, 0x6f, 0x69, 0x6e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x40, 0x0a, 0x09, 0x61, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, - 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x71, - 0x4d, 0x73, 0x67, 0x22, 0xb0, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x51, 0x75, - 0x69, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x43, 0x0a, 0x08, 0x71, - 0x75, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, - 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x71, 0x75, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, - 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xd2, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x0a, - 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x72, - 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x73, 0x22, 0xd2, 0x01, 0x0a, 0x1c, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, - 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x73, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x41, 0x73, - 0x22, 0x86, 0x02, 0x0a, 0x19, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, - 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x6e, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6e, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, - 0x6e, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xff, 0x01, 0x0a, 0x10, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x4b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, - 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x4f, 0x0a, 0x0e, 0x6b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x55, 0x73, - 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x6b, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x55, 0x73, 0x65, - 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x82, 0x02, 0x0a, 0x11, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, - 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x51, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x22, 0xb7, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x65, 0x72, - 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x49, 0x0a, 0x0b, 0x65, 0x6e, 0x74, - 0x72, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, - 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, - 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x12, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x65, 0x64, 0x54, 0x69, 0x70, - 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x9d, 0x02, - 0x0a, 0x14, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x75, 0x74, - 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, - 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, - 0x6d, 0x75, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x75, 0x74, - 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0c, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x22, 0xff, 0x01, - 0x0a, 0x1a, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x61, 0x6e, - 0x63, 0x65, 0x6c, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, - 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x45, 0x0a, 0x09, 0x6d, 0x75, 0x74, 0x65, - 0x64, 0x55, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x6d, 0x75, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x22, - 0xac, 0x01, 0x0a, 0x0e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x54, 0x69, - 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xb2, - 0x01, 0x0a, 0x14, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4d, 0x75, - 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, - 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x22, 0xff, 0x01, 0x0a, 0x16, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x65, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, 0x33, - 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, - 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x0b, 0x63, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x64, 0x55, 0x73, 0x65, 0x72, 0x22, 0x6b, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, - 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x61, 0x64, 0x64, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x64, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x64, 0x64, 0x57, 0x6f, 0x72, 0x64, 0x69, - 0x6e, 0x67, 0x22, 0x4a, 0x0a, 0x0c, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x5d, - 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, - 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, - 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x83, 0x01, - 0x0a, 0x1d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, - 0x44, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, - 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, - 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x4d, 0x73, 0x67, 0x22, 0x83, 0x01, 0x0a, 0x1d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, - 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, - 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, - 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0xab, 0x01, 0x0a, 0x0f, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x36, 0x0a, - 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, - 0x77, 0x73, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x66, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x6f, - 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, - 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x22, 0x59, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, 0x0c, - 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x22, 0x56, 0x0a, 0x0e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, - 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, - 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, - 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x58, 0x0a, 0x10, 0x42, 0x6c, - 0x61, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, - 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x22, 0x5d, 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, - 0x66, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x44, 0x0a, - 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x22, 0x2d, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 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, 0x22, 0x60, 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x70, 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, 0x2e, 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, - 0x4c, 0x69, 0x73, 0x74, 0x22, 0x6a, 0x0a, 0x1a, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, - 0x6e, 0x64, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x6e, 0x64, - 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x22, 0xa3, 0x01, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x48, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x54, 0x69, 0x70, 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, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, - 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, 0x71, 0x12, 0x28, 0x0a, 0x0f, - 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x75, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x2a, 0x0a, 0x10, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6c, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x22, 0x1a, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, - 0x71, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x22, 0x5b, - 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, - 0x69, 0x70, 0x73, 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, - 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x22, 0xd5, 0x01, 0x0a, 0x0d, - 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4d, 0x73, 0x67, 0x54, 0x69, 0x70, 0x73, 0x12, 0x24, 0x0a, - 0x0d, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x6f, 0x6b, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x65, 0x73, 0x73, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x65, 0x73, - 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x22, 0xb1, 0x03, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x72, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0b, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x20, 0x0a, - 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, - 0x28, 0x0a, 0x0f, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x76, - 0x6f, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x30, 0x0a, 0x13, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x53, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x49, - 0x44, 0x12, 0x40, 0x0a, 0x1b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x59, 0x0a, 0x15, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x70, 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, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x44, 0x73, 0x22, 0x64, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x73, 0x67, 0x73, - 0x54, 0x69, 0x70, 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, 0x26, 0x0a, 0x0e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x03, 0x52, 0x04, 0x73, 0x65, 0x71, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x4d, 0x61, 0x72, - 0x6b, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, - 0x61, 0x72, 0x6b, 0x41, 0x73, 0x52, 0x65, 0x61, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x61, 0x72, 0x6b, 0x41, 0x73, 0x52, 0x65, 0x61, - 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x65, 0x71, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x04, 0x73, - 0x65, 0x71, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, 0x53, 0x65, - 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x61, 0x64, - 0x53, 0x65, 0x71, 0x22, 0x57, 0x0a, 0x19, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x63, - 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 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, 0x22, 0x0a, 0x0c, 0x69, 0x73, 0x42, 0x61, - 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, - 0x69, 0x73, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x22, 0x1c, 0x0a, 0x1a, - 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x53, 0x0a, 0x11, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x1e, 0x0a, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x2a, - 0x30, 0x0a, 0x09, 0x50, 0x75, 0x6c, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x0c, - 0x50, 0x75, 0x6c, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x41, 0x73, 0x63, 0x10, 0x00, 0x12, 0x11, - 0x0a, 0x0d, 0x50, 0x75, 0x6c, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x44, 0x65, 0x73, 0x63, 0x10, - 0x01, 0x42, 0x35, 0x5a, 0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, - 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x2f, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_sdkws_sdkws_proto_rawDescOnce sync.Once - file_sdkws_sdkws_proto_rawDescData = file_sdkws_sdkws_proto_rawDesc -) - -func file_sdkws_sdkws_proto_rawDescGZIP() []byte { - file_sdkws_sdkws_proto_rawDescOnce.Do(func() { - file_sdkws_sdkws_proto_rawDescData = protoimpl.X.CompressGZIP(file_sdkws_sdkws_proto_rawDescData) - }) - return file_sdkws_sdkws_proto_rawDescData -} - -var file_sdkws_sdkws_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_sdkws_sdkws_proto_msgTypes = make([]protoimpl.MessageInfo, 70) -var file_sdkws_sdkws_proto_goTypes = []interface{}{ - (PullOrder)(0), // 0: OpenIMServer.sdkws.PullOrder - (*GroupInfo)(nil), // 1: OpenIMServer.sdkws.GroupInfo - (*GroupInfoForSet)(nil), // 2: OpenIMServer.sdkws.GroupInfoForSet - (*GroupMemberFullInfo)(nil), // 3: OpenIMServer.sdkws.GroupMemberFullInfo - (*PublicUserInfo)(nil), // 4: OpenIMServer.sdkws.PublicUserInfo - (*UserInfo)(nil), // 5: OpenIMServer.sdkws.UserInfo - (*FriendInfo)(nil), // 6: OpenIMServer.sdkws.FriendInfo - (*BlackInfo)(nil), // 7: OpenIMServer.sdkws.BlackInfo - (*GroupRequest)(nil), // 8: OpenIMServer.sdkws.GroupRequest - (*FriendRequest)(nil), // 9: OpenIMServer.sdkws.FriendRequest - (*PullMessageBySeqsReq)(nil), // 10: OpenIMServer.sdkws.PullMessageBySeqsReq - (*SeqRange)(nil), // 11: OpenIMServer.sdkws.SeqRange - (*PullMsgs)(nil), // 12: OpenIMServer.sdkws.PullMsgs - (*PullMessageBySeqsResp)(nil), // 13: OpenIMServer.sdkws.PullMessageBySeqsResp - (*GetMaxSeqReq)(nil), // 14: OpenIMServer.sdkws.GetMaxSeqReq - (*GetMaxSeqResp)(nil), // 15: OpenIMServer.sdkws.GetMaxSeqResp - (*UserSendMsgResp)(nil), // 16: OpenIMServer.sdkws.UserSendMsgResp - (*MsgData)(nil), // 17: OpenIMServer.sdkws.MsgData - (*PushMessages)(nil), // 18: OpenIMServer.sdkws.PushMessages - (*OfflinePushInfo)(nil), // 19: OpenIMServer.sdkws.OfflinePushInfo - (*TipsComm)(nil), // 20: OpenIMServer.sdkws.TipsComm - (*GroupCreatedTips)(nil), // 21: OpenIMServer.sdkws.GroupCreatedTips - (*GroupInfoSetTips)(nil), // 22: OpenIMServer.sdkws.GroupInfoSetTips - (*GroupInfoSetNameTips)(nil), // 23: OpenIMServer.sdkws.GroupInfoSetNameTips - (*GroupInfoSetAnnouncementTips)(nil), // 24: OpenIMServer.sdkws.GroupInfoSetAnnouncementTips - (*JoinGroupApplicationTips)(nil), // 25: OpenIMServer.sdkws.JoinGroupApplicationTips - (*MemberQuitTips)(nil), // 26: OpenIMServer.sdkws.MemberQuitTips - (*GroupApplicationAcceptedTips)(nil), // 27: OpenIMServer.sdkws.GroupApplicationAcceptedTips - (*GroupApplicationRejectedTips)(nil), // 28: OpenIMServer.sdkws.GroupApplicationRejectedTips - (*GroupOwnerTransferredTips)(nil), // 29: OpenIMServer.sdkws.GroupOwnerTransferredTips - (*MemberKickedTips)(nil), // 30: OpenIMServer.sdkws.MemberKickedTips - (*MemberInvitedTips)(nil), // 31: OpenIMServer.sdkws.MemberInvitedTips - (*MemberEnterTips)(nil), // 32: OpenIMServer.sdkws.MemberEnterTips - (*GroupDismissedTips)(nil), // 33: OpenIMServer.sdkws.GroupDismissedTips - (*GroupMemberMutedTips)(nil), // 34: OpenIMServer.sdkws.GroupMemberMutedTips - (*GroupMemberCancelMutedTips)(nil), // 35: OpenIMServer.sdkws.GroupMemberCancelMutedTips - (*GroupMutedTips)(nil), // 36: OpenIMServer.sdkws.GroupMutedTips - (*GroupCancelMutedTips)(nil), // 37: OpenIMServer.sdkws.GroupCancelMutedTips - (*GroupMemberInfoSetTips)(nil), // 38: OpenIMServer.sdkws.GroupMemberInfoSetTips - (*FriendApplication)(nil), // 39: OpenIMServer.sdkws.FriendApplication - (*FromToUserID)(nil), // 40: OpenIMServer.sdkws.FromToUserID - (*FriendApplicationTips)(nil), // 41: OpenIMServer.sdkws.FriendApplicationTips - (*FriendApplicationApprovedTips)(nil), // 42: OpenIMServer.sdkws.FriendApplicationApprovedTips - (*FriendApplicationRejectedTips)(nil), // 43: OpenIMServer.sdkws.FriendApplicationRejectedTips - (*FriendAddedTips)(nil), // 44: OpenIMServer.sdkws.FriendAddedTips - (*FriendDeletedTips)(nil), // 45: OpenIMServer.sdkws.FriendDeletedTips - (*BlackAddedTips)(nil), // 46: OpenIMServer.sdkws.BlackAddedTips - (*BlackDeletedTips)(nil), // 47: OpenIMServer.sdkws.BlackDeletedTips - (*FriendInfoChangedTips)(nil), // 48: OpenIMServer.sdkws.FriendInfoChangedTips - (*UserInfoUpdatedTips)(nil), // 49: OpenIMServer.sdkws.UserInfoUpdatedTips - (*ConversationUpdateTips)(nil), // 50: OpenIMServer.sdkws.ConversationUpdateTips - (*ConversationSetPrivateTips)(nil), // 51: OpenIMServer.sdkws.ConversationSetPrivateTips - (*ConversationHasReadTips)(nil), // 52: OpenIMServer.sdkws.ConversationHasReadTips - (*NotificationElem)(nil), // 53: OpenIMServer.sdkws.NotificationElem - (*Seqs)(nil), // 54: OpenIMServer.sdkws.seqs - (*DeleteMessageTips)(nil), // 55: OpenIMServer.sdkws.DeleteMessageTips - (*RevokeMsgTips)(nil), // 56: OpenIMServer.sdkws.RevokeMsgTips - (*MessageRevokedContent)(nil), // 57: OpenIMServer.sdkws.MessageRevokedContent - (*ClearConversationTips)(nil), // 58: OpenIMServer.sdkws.ClearConversationTips - (*DeleteMsgsTips)(nil), // 59: OpenIMServer.sdkws.DeleteMsgsTips - (*MarkAsReadTips)(nil), // 60: OpenIMServer.sdkws.MarkAsReadTips - (*SetAppBackgroundStatusReq)(nil), // 61: OpenIMServer.sdkws.SetAppBackgroundStatusReq - (*SetAppBackgroundStatusResp)(nil), // 62: OpenIMServer.sdkws.SetAppBackgroundStatusResp - (*RequestPagination)(nil), // 63: OpenIMServer.sdkws.RequestPagination - nil, // 64: OpenIMServer.sdkws.PullMessageBySeqsResp.MsgsEntry - nil, // 65: OpenIMServer.sdkws.PullMessageBySeqsResp.NotificationMsgsEntry - nil, // 66: OpenIMServer.sdkws.GetMaxSeqResp.MaxSeqsEntry - nil, // 67: OpenIMServer.sdkws.GetMaxSeqResp.MinSeqsEntry - nil, // 68: OpenIMServer.sdkws.MsgData.OptionsEntry - nil, // 69: OpenIMServer.sdkws.PushMessages.MsgsEntry - nil, // 70: OpenIMServer.sdkws.PushMessages.NotificationMsgsEntry - (*wrapperspb.Int32Value)(nil), // 71: OpenIMServer.protobuf.Int32Value -} -var file_sdkws_sdkws_proto_depIdxs = []int32{ - 71, // 0: OpenIMServer.sdkws.GroupInfoForSet.needVerification:type_name -> OpenIMServer.protobuf.Int32Value - 71, // 1: OpenIMServer.sdkws.GroupInfoForSet.lookMemberInfo:type_name -> OpenIMServer.protobuf.Int32Value - 71, // 2: OpenIMServer.sdkws.GroupInfoForSet.applyMemberFriend:type_name -> OpenIMServer.protobuf.Int32Value - 5, // 3: OpenIMServer.sdkws.FriendInfo.friendUser:type_name -> OpenIMServer.sdkws.UserInfo - 4, // 4: OpenIMServer.sdkws.BlackInfo.blackUserInfo:type_name -> OpenIMServer.sdkws.PublicUserInfo - 4, // 5: OpenIMServer.sdkws.GroupRequest.userInfo:type_name -> OpenIMServer.sdkws.PublicUserInfo - 1, // 6: OpenIMServer.sdkws.GroupRequest.groupInfo:type_name -> OpenIMServer.sdkws.GroupInfo - 11, // 7: OpenIMServer.sdkws.PullMessageBySeqsReq.seqRanges:type_name -> OpenIMServer.sdkws.SeqRange - 0, // 8: OpenIMServer.sdkws.PullMessageBySeqsReq.order:type_name -> OpenIMServer.sdkws.PullOrder - 17, // 9: OpenIMServer.sdkws.PullMsgs.Msgs:type_name -> OpenIMServer.sdkws.MsgData - 64, // 10: OpenIMServer.sdkws.PullMessageBySeqsResp.msgs:type_name -> OpenIMServer.sdkws.PullMessageBySeqsResp.MsgsEntry - 65, // 11: OpenIMServer.sdkws.PullMessageBySeqsResp.notificationMsgs:type_name -> OpenIMServer.sdkws.PullMessageBySeqsResp.NotificationMsgsEntry - 66, // 12: OpenIMServer.sdkws.GetMaxSeqResp.maxSeqs:type_name -> OpenIMServer.sdkws.GetMaxSeqResp.MaxSeqsEntry - 67, // 13: OpenIMServer.sdkws.GetMaxSeqResp.minSeqs:type_name -> OpenIMServer.sdkws.GetMaxSeqResp.MinSeqsEntry - 68, // 14: OpenIMServer.sdkws.MsgData.options:type_name -> OpenIMServer.sdkws.MsgData.OptionsEntry - 19, // 15: OpenIMServer.sdkws.MsgData.offlinePushInfo:type_name -> OpenIMServer.sdkws.OfflinePushInfo - 69, // 16: OpenIMServer.sdkws.PushMessages.msgs:type_name -> OpenIMServer.sdkws.PushMessages.MsgsEntry - 70, // 17: OpenIMServer.sdkws.PushMessages.notificationMsgs:type_name -> OpenIMServer.sdkws.PushMessages.NotificationMsgsEntry - 1, // 18: OpenIMServer.sdkws.GroupCreatedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 19: OpenIMServer.sdkws.GroupCreatedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 20: OpenIMServer.sdkws.GroupCreatedTips.memberList:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 21: OpenIMServer.sdkws.GroupCreatedTips.groupOwnerUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 22: OpenIMServer.sdkws.GroupInfoSetTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 23: OpenIMServer.sdkws.GroupInfoSetTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 24: OpenIMServer.sdkws.GroupInfoSetNameTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 25: OpenIMServer.sdkws.GroupInfoSetNameTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 26: OpenIMServer.sdkws.GroupInfoSetAnnouncementTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 27: OpenIMServer.sdkws.GroupInfoSetAnnouncementTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 1, // 28: OpenIMServer.sdkws.JoinGroupApplicationTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 4, // 29: OpenIMServer.sdkws.JoinGroupApplicationTips.applicant:type_name -> OpenIMServer.sdkws.PublicUserInfo - 1, // 30: OpenIMServer.sdkws.MemberQuitTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 31: OpenIMServer.sdkws.MemberQuitTips.quitUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 32: OpenIMServer.sdkws.GroupApplicationAcceptedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 33: OpenIMServer.sdkws.GroupApplicationAcceptedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 34: OpenIMServer.sdkws.GroupApplicationRejectedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 35: OpenIMServer.sdkws.GroupApplicationRejectedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 36: OpenIMServer.sdkws.GroupOwnerTransferredTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 37: OpenIMServer.sdkws.GroupOwnerTransferredTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 38: OpenIMServer.sdkws.GroupOwnerTransferredTips.newGroupOwner:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 39: OpenIMServer.sdkws.MemberKickedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 40: OpenIMServer.sdkws.MemberKickedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 41: OpenIMServer.sdkws.MemberKickedTips.kickedUserList:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 42: OpenIMServer.sdkws.MemberInvitedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 43: OpenIMServer.sdkws.MemberInvitedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 44: OpenIMServer.sdkws.MemberInvitedTips.invitedUserList:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 45: OpenIMServer.sdkws.MemberEnterTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 46: OpenIMServer.sdkws.MemberEnterTips.entrantUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 47: OpenIMServer.sdkws.GroupDismissedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 48: OpenIMServer.sdkws.GroupDismissedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 49: OpenIMServer.sdkws.GroupMemberMutedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 50: OpenIMServer.sdkws.GroupMemberMutedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 51: OpenIMServer.sdkws.GroupMemberMutedTips.mutedUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 52: OpenIMServer.sdkws.GroupMemberCancelMutedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 53: OpenIMServer.sdkws.GroupMemberCancelMutedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 54: OpenIMServer.sdkws.GroupMemberCancelMutedTips.mutedUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 55: OpenIMServer.sdkws.GroupMutedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 56: OpenIMServer.sdkws.GroupMutedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 57: OpenIMServer.sdkws.GroupCancelMutedTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 58: OpenIMServer.sdkws.GroupCancelMutedTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 1, // 59: OpenIMServer.sdkws.GroupMemberInfoSetTips.group:type_name -> OpenIMServer.sdkws.GroupInfo - 3, // 60: OpenIMServer.sdkws.GroupMemberInfoSetTips.opUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 3, // 61: OpenIMServer.sdkws.GroupMemberInfoSetTips.changedUser:type_name -> OpenIMServer.sdkws.GroupMemberFullInfo - 40, // 62: OpenIMServer.sdkws.FriendApplicationTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 40, // 63: OpenIMServer.sdkws.FriendApplicationApprovedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 40, // 64: OpenIMServer.sdkws.FriendApplicationRejectedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 6, // 65: OpenIMServer.sdkws.FriendAddedTips.friend:type_name -> OpenIMServer.sdkws.FriendInfo - 4, // 66: OpenIMServer.sdkws.FriendAddedTips.opUser:type_name -> OpenIMServer.sdkws.PublicUserInfo - 40, // 67: OpenIMServer.sdkws.FriendDeletedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 40, // 68: OpenIMServer.sdkws.BlackAddedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 40, // 69: OpenIMServer.sdkws.BlackDeletedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 40, // 70: OpenIMServer.sdkws.FriendInfoChangedTips.fromToUserID:type_name -> OpenIMServer.sdkws.FromToUserID - 12, // 71: OpenIMServer.sdkws.PullMessageBySeqsResp.MsgsEntry.value:type_name -> OpenIMServer.sdkws.PullMsgs - 12, // 72: OpenIMServer.sdkws.PullMessageBySeqsResp.NotificationMsgsEntry.value:type_name -> OpenIMServer.sdkws.PullMsgs - 12, // 73: OpenIMServer.sdkws.PushMessages.MsgsEntry.value:type_name -> OpenIMServer.sdkws.PullMsgs - 12, // 74: OpenIMServer.sdkws.PushMessages.NotificationMsgsEntry.value:type_name -> OpenIMServer.sdkws.PullMsgs - 75, // [75:75] is the sub-list for method output_type - 75, // [75:75] is the sub-list for method input_type - 75, // [75:75] is the sub-list for extension type_name - 75, // [75:75] is the sub-list for extension extendee - 0, // [0:75] is the sub-list for field type_name -} - -func init() { file_sdkws_sdkws_proto_init() } -func file_sdkws_sdkws_proto_init() { - if File_sdkws_sdkws_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_sdkws_sdkws_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfoForSet); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberFullInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublicUserInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PullMessageBySeqsReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SeqRange); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PullMsgs); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PullMessageBySeqsResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserSendMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PushMessages); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OfflinePushInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TipsComm); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupCreatedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfoSetTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfoSetNameTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfoSetAnnouncementTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JoinGroupApplicationTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberQuitTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationAcceptedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationRejectedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupOwnerTransferredTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberKickedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberInvitedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberEnterTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupDismissedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberMutedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberCancelMutedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMutedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupCancelMutedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberInfoSetTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplication); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FromToUserID); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationApprovedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationRejectedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendAddedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendDeletedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackAddedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackDeletedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendInfoChangedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserInfoUpdatedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConversationUpdateTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConversationSetPrivateTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConversationHasReadTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*NotificationElem); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Seqs); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMessageTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RevokeMsgTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MessageRevokedContent); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ClearConversationTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteMsgsTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MarkAsReadTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetAppBackgroundStatusReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetAppBackgroundStatusResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdkws_sdkws_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RequestPagination); 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_sdkws_sdkws_proto_rawDesc, - NumEnums: 1, - NumMessages: 70, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_sdkws_sdkws_proto_goTypes, - DependencyIndexes: file_sdkws_sdkws_proto_depIdxs, - EnumInfos: file_sdkws_sdkws_proto_enumTypes, - MessageInfos: file_sdkws_sdkws_proto_msgTypes, - }.Build() - File_sdkws_sdkws_proto = out.File - file_sdkws_sdkws_proto_rawDesc = nil - file_sdkws_sdkws_proto_goTypes = nil - file_sdkws_sdkws_proto_depIdxs = nil -} diff --git a/pkg/proto/sdkws/sdkws.proto b/pkg/proto/sdkws/sdkws.proto deleted file mode 100644 index 225172fe2..000000000 --- a/pkg/proto/sdkws/sdkws.proto +++ /dev/null @@ -1,517 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.sdkws; -import "wrapperspb/wrapperspb.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"; - -////////////////////////////////base/////////////////////////////// - -message GroupInfo{ - string groupID = 1; - string groupName = 2; - string notification = 3; - string introduction = 4; - string faceURL = 5; - string ownerUserID = 6; - int64 createTime = 7; - uint32 memberCount = 8; - string ex = 9; - int32 status = 10; - string creatorUserID = 11; - int32 groupType = 12; - int32 needVerification = 13; - int32 lookMemberInfo = 14; - int32 applyMemberFriend = 15; - int64 notificationUpdateTime = 16; - string notificationUserID = 17; -} - -message GroupInfoForSet{ - string groupID = 1; - string groupName = 2; - string notification = 3; - string introduction = 4; - string faceURL = 5; - string ex = 6; - OpenIMServer.protobuf.Int32Value needVerification = 7; - OpenIMServer.protobuf.Int32Value lookMemberInfo = 8; - OpenIMServer.protobuf.Int32Value applyMemberFriend = 9; -} - - -message GroupMemberFullInfo { - string groupID = 1 ; - string userID = 2 ; - int32 roleLevel = 3; - int64 joinTime = 4; - string nickname = 5; - string faceURL = 6; - int32 appMangerLevel = 7; //if >0 - int32 joinSource = 8; - string operatorUserID = 9; - string ex = 10; - int64 muteEndTime = 11; - string inviterUserID = 12; -} - -message PublicUserInfo{ - string userID = 1; - string nickname = 2; - string faceURL = 3; - string ex = 4; -} - -message UserInfo{ - string userID = 1; - string nickname = 2; - string faceURL = 3; - string ex = 4; - int64 createTime = 5; - int32 appMangerLevel = 6; - int32 globalRecvMsgOpt = 7; -} - -message FriendInfo{ - string ownerUserID = 1; - string remark = 2; - int64 createTime = 3; - UserInfo friendUser = 4; - int32 addSource = 5; - string operatorUserID = 6; - string ex = 7; -} - -message BlackInfo{ - string ownerUserID = 1; - int64 createTime = 2; - PublicUserInfo blackUserInfo = 3; - int32 addSource = 4; - string operatorUserID = 5; - string ex = 6; -} - -message GroupRequest{ - PublicUserInfo userInfo = 1; - GroupInfo groupInfo = 2; - int32 handleResult = 3; - string reqMsg = 4; - string handleMsg = 5; - int64 reqTime = 6; - string handleUserID = 7; - int64 handleTime = 8; - string ex = 9; - int32 joinSource = 10; - string inviterUserID = 11; -} - -message FriendRequest{ - string fromUserID = 1; - string fromNickname = 2; - string fromFaceURL = 3; - string toUserID = 4; - string toNickname = 5; - string toFaceURL = 6; - int32 handleResult = 7; - string reqMsg = 8; - int64 createTime = 9; - string handlerUserID = 10; - string handleMsg = 11; - int64 handleTime = 12; - string ex = 13; -} - - -///////////////////////////////////base end///////////////////////////////////// -enum PullOrder{ - PullOrderAsc = 0; - PullOrderDesc = 1; - -} -message PullMessageBySeqsReq{ - string userID = 1; - repeated SeqRange seqRanges = 2; - PullOrder order = 3; -} - -message SeqRange { - string conversationID = 1; - int64 begin = 2; - int64 end = 3; - int64 num = 4; -} - -message PullMsgs { - repeated MsgData Msgs = 1; - bool isEnd = 2; -} - -message PullMessageBySeqsResp { - map<string, PullMsgs> msgs = 1; - map<string, PullMsgs> notificationMsgs = 2; -} - -message GetMaxSeqReq { - string userID = 1; -} - -message GetMaxSeqResp { - map<string, int64> maxSeqs = 1; - map<string, int64> minSeqs = 2; -} - -message UserSendMsgResp { - string serverMsgID = 1; - string clientMsgID = 2; - int64 sendTime = 3; -} - -message MsgData { - string sendID = 1; - string recvID = 2; - string groupID = 3; - string clientMsgID = 4; - string serverMsgID = 5; - int32 senderPlatformID = 6; - string senderNickname = 7; - string senderFaceURL = 8; - int32 sessionType = 9; - int32 msgFrom = 10; - int32 contentType = 11; - bytes content = 12; - int64 seq = 14; - int64 sendTime = 15; - int64 createTime = 16; - int32 status = 17; - bool isRead = 18; - map<string, bool> options = 19; - OfflinePushInfo offlinePushInfo = 20; - repeated string atUserIDList = 21; - string attachedInfo = 22; - string ex = 23; -} -message PushMessages{ - map<string, PullMsgs> msgs = 1; - map<string, PullMsgs> notificationMsgs = 2; -} -message OfflinePushInfo{ - string title = 1; - string desc = 2; - string ex = 3; - string iOSPushSound = 4; - bool iOSBadgeCount = 5; - string signalInfo = 6; -} - - - - - - - - - -message TipsComm{ - bytes detail = 1; - string defaultTips = 2; - string jsonDetail = 3; -} - -//////////////////////group///////////////////// - - -// OnGroupCreated() -message GroupCreatedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - repeated GroupMemberFullInfo memberList = 3; - int64 operationTime = 4; - GroupMemberFullInfo groupOwnerUser = 5; -} - -// OnGroupInfoSet() -message GroupInfoSetTips{ - GroupMemberFullInfo opUser = 1; //who do this - int64 muteTime = 2; - GroupInfo group = 3; -} - -message GroupInfoSetNameTips{ - GroupMemberFullInfo opUser = 1; //who do this - GroupInfo group = 2; -} - -message GroupInfoSetAnnouncementTips{ - GroupMemberFullInfo opUser = 1; //who do this - GroupInfo group = 2; -} - -// OnJoinGroupApplication() -message JoinGroupApplicationTips{ - GroupInfo group = 1; - PublicUserInfo applicant = 2; - string reqMsg = 3; -} - -// OnQuitGroup() -//Actively leave the group -message MemberQuitTips{ - GroupInfo group = 1; - GroupMemberFullInfo quitUser = 2; - int64 operationTime = 3; -} - - -// OnApplicationGroupAccepted() -message GroupApplicationAcceptedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - string handleMsg = 4; - int32 receiverAs = 5; // admin(==1) or applicant(==0) -} - -// OnApplicationGroupRejected() -message GroupApplicationRejectedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - string handleMsg = 4; - int32 receiverAs = 5; // admin(==1) or applicant(==0) -} - -// OnTransferGroupOwner() -message GroupOwnerTransferredTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - GroupMemberFullInfo newGroupOwner = 3; - int64 operationTime = 4; -} - - -// OnMemberKicked() -message MemberKickedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - repeated GroupMemberFullInfo kickedUserList = 3; - int64 operationTime = 4; -} - -// OnMemberInvited() -message MemberInvitedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - repeated GroupMemberFullInfo invitedUserList = 3; - int64 operationTime = 4; -} - -//Actively join the group -message MemberEnterTips{ - GroupInfo group = 1; - GroupMemberFullInfo entrantUser = 2; - int64 operationTime = 3; -} - -message GroupDismissedTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - int64 operationTime = 3; -} - -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; -} - -message GroupMemberInfoSetTips{ - GroupInfo group = 1; - GroupMemberFullInfo opUser = 2; - int64 operationTime = 3; - GroupMemberFullInfo changedUser = 4; -} - -//////////////////////friend///////////////////// - -message FriendApplication{ - int64 addTime = 1; - string addSource = 2; - string addWording = 3; -} - -message FromToUserID{ - string fromUserID = 1; - string toUserID = 2; -} - -//FromUserID apply to add ToUserID -message FriendApplicationTips{ - FromToUserID fromToUserID = 1; //from:发起者; to:接收者 -} - -//FromUserID accept or reject ToUserID -message FriendApplicationApprovedTips{ - FromToUserID fromToUserID = 1; //from:同意者;to:请求发起者 - string handleMsg = 2; -} - -//FromUserID accept or reject ToUserID -message FriendApplicationRejectedTips{ - FromToUserID fromToUserID = 1; //from:拒绝者;to:请求发起者 - string handleMsg = 2; -} - - -// FromUserID Added a friend ToUserID -message FriendAddedTips{ - FriendInfo friend = 1; - int64 operationTime = 2; - PublicUserInfo opUser = 3; //who do this - -} - -// FromUserID deleted a friend ToUserID -message FriendDeletedTips{ - FromToUserID fromToUserID = 1; //from:owner; to:friend -} - - - -message BlackAddedTips{ - FromToUserID fromToUserID = 1; //from:owner; to:black -} - -message BlackDeletedTips{ - FromToUserID fromToUserID = 1; //from:owner; to:black -} - -message FriendInfoChangedTips{ - FromToUserID fromToUserID = 1; //from:changed; to:friend -} -//////////////////////user///////////////////// -message UserInfoUpdatedTips{ - string userID = 1; -} - -//////////////////////conversation///////////////////// -message ConversationUpdateTips{ - string userID = 1; - repeated string conversationIDList = 2; -} - -message ConversationSetPrivateTips{ - string recvID = 1; - string sendID = 2; - bool isPrivate = 3; -} - -message ConversationHasReadTips { - string userID = 1; - string conversationID = 2; - int64 hasReadSeq = 3; - int64 unreadCountTime = 4; -} - -message NotificationElem { - string detail = 1; -} - -////////////////////message/////////////////////// -message seqs { - repeated int64 seqs = 1; -} - -message DeleteMessageTips{ - string opUserID = 1; - string userID = 2; - repeated int64 seqs = 3; -} - - -message RevokeMsgTips{ - string revokerUserID = 1; - string clientMsgID = 2; - int64 revokeTime = 3; - int32 sesstionType = 5; - int64 seq = 6; - string conversationID = 7; -} - - -message MessageRevokedContent { - string revokerID = 1; - int32 revokerRole = 2; - string clientMsgID = 3; - string revokerNickname = 4; - int64 revokeTime = 5; - int64 sourceMessageSendTime = 6; - string sourceMessageSendID = 7; - string sourceMessageSenderNickname = 8; - int32 sessionType = 10; - int64 seq = 11; - string ex = 12; -} - -message ClearConversationTips { - string userID = 1; - repeated string conversationIDs = 2; -} - -message DeleteMsgsTips { - string userID = 1; - string conversationID = 2; - repeated int64 seqs = 3; -} - -message MarkAsReadTips { - string markAsReadUserID = 1; - string conversationID = 2; - repeated int64 seqs = 3; - int64 hasReadSeq = 4; -} - - -message SetAppBackgroundStatusReq { - string userID = 1; - bool isBackground = 2; -} - -message SetAppBackgroundStatusResp { -} - - -message RequestPagination { - int32 pageNumber = 1; - int32 showNumber = 2; -} \ No newline at end of file diff --git a/pkg/proto/statistics/statistics.pb.go b/pkg/proto/statistics/statistics.pb.go deleted file mode 100644 index 5660758f9..000000000 --- a/pkg/proto/statistics/statistics.pb.go +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: statistics/statistics.proto - -package statistics - -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" -) - -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) -) - -var File_statistics_statistics_proto protoreflect.FileDescriptor - -var file_statistics_statistics_proto_rawDesc = []byte{ - 0x0a, 0x1b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2f, 0x73, 0x74, 0x61, - 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, 0x74, 0x61, 0x74, - 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, - 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, - 0x63, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var file_statistics_statistics_proto_goTypes = []interface{}{} -var file_statistics_statistics_proto_depIdxs = []int32{ - 0, // [0:0] is the sub-list for method output_type - 0, // [0:0] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name -} - -func init() { file_statistics_statistics_proto_init() } -func file_statistics_statistics_proto_init() { - if File_statistics_statistics_proto != nil { - return - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_statistics_statistics_proto_rawDesc, - NumEnums: 0, - NumMessages: 0, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_statistics_statistics_proto_goTypes, - DependencyIndexes: file_statistics_statistics_proto_depIdxs, - }.Build() - File_statistics_statistics_proto = out.File - file_statistics_statistics_proto_rawDesc = nil - file_statistics_statistics_proto_goTypes = nil - file_statistics_statistics_proto_depIdxs = nil -} diff --git a/pkg/proto/statistics/statistics.proto b/pkg/proto/statistics/statistics.proto deleted file mode 100644 index 160ad1dcd..000000000 --- a/pkg/proto/statistics/statistics.proto +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.statistics; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/statistics"; - diff --git a/pkg/proto/third/third.go b/pkg/proto/third/third.go deleted file mode 100644 index 0e2072727..000000000 --- a/pkg/proto/third/third.go +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package third - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -//func (x *ApplyPutReq) Check() error { -// if x.PutID == "" { -// return errs.ErrArgs.Wrap("PutID is empty") -// } -// if x.ContentType == "" { -// return errs.ErrArgs.Wrap("ContentType is empty") -// } -// return nil -//} -// -//func (x *ConfirmPutReq) Check() error { -// if x.PutID == "" { -// return errs.ErrArgs.Wrap("PutID is empty") -// } -// return nil -//} -// -//func (x *GetUrlReq) Check() error { -// if x.Name == "" { -// return errs.ErrArgs.Wrap("Name is empty") -// } -// return nil -//} -// -//func (x *GetPutReq) Check() error { -// if x.PutID == "" { -// return errs.ErrArgs.Wrap("PutID is empty") -// } -// return nil -//} -// -//func (x *GetHashInfoReq) Check() error { -// if x.Hash == "" { -// return errs.ErrArgs.Wrap("Hash is empty") -// } -// return nil -//} - -func (x *FcmUpdateTokenReq) Check() error { - if x.PlatformID < 1 || x.PlatformID > 9 { - return errs.ErrArgs.Wrap("PlatformID is invalid") - } - if x.FcmToken == "" { - return errs.ErrArgs.Wrap("FcmToken is empty") - } - if x.Account == "" { - return errs.ErrArgs.Wrap("Account is empty") - } - return nil -} - -func (x *SetAppBadgeReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - return nil -} diff --git a/pkg/proto/third/third.pb.go b/pkg/proto/third/third.pb.go deleted file mode 100644 index 155b5f7cc..000000000 --- a/pkg/proto/third/third.pb.go +++ /dev/null @@ -1,2057 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: third/third.proto - -package third - -import ( - context "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) -) - -type KeyValues struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key"` - Values []string `protobuf:"bytes,2,rep,name=values,proto3" json:"values"` -} - -func (x *KeyValues) Reset() { - *x = KeyValues{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *KeyValues) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*KeyValues) ProtoMessage() {} - -func (x *KeyValues) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use KeyValues.ProtoReflect.Descriptor instead. -func (*KeyValues) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{0} -} - -func (x *KeyValues) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (x *KeyValues) GetValues() []string { - if x != nil { - return x.Values - } - return nil -} - -type SignPart struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PartNumber int32 `protobuf:"varint,1,opt,name=partNumber,proto3" json:"partNumber"` - Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,3,rep,name=query,proto3" json:"query"` - Header []*KeyValues `protobuf:"bytes,4,rep,name=header,proto3" json:"header"` -} - -func (x *SignPart) Reset() { - *x = SignPart{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SignPart) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SignPart) ProtoMessage() {} - -func (x *SignPart) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use SignPart.ProtoReflect.Descriptor instead. -func (*SignPart) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{1} -} - -func (x *SignPart) GetPartNumber() int32 { - if x != nil { - return x.PartNumber - } - return 0 -} - -func (x *SignPart) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -func (x *SignPart) GetQuery() []*KeyValues { - if x != nil { - return x.Query - } - return nil -} - -func (x *SignPart) GetHeader() []*KeyValues { - if x != nil { - return x.Header - } - return nil -} - -type AuthSignParts struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` - Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` -} - -func (x *AuthSignParts) Reset() { - *x = AuthSignParts{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AuthSignParts) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AuthSignParts) ProtoMessage() {} - -func (x *AuthSignParts) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use AuthSignParts.ProtoReflect.Descriptor instead. -func (*AuthSignParts) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{2} -} - -func (x *AuthSignParts) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -func (x *AuthSignParts) GetQuery() []*KeyValues { - if x != nil { - return x.Query - } - return nil -} - -func (x *AuthSignParts) GetHeader() []*KeyValues { - if x != nil { - return x.Header - } - return nil -} - -func (x *AuthSignParts) GetParts() []*SignPart { - if x != nil { - return x.Parts - } - return nil -} - -type PartLimitReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *PartLimitReq) Reset() { - *x = PartLimitReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PartLimitReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PartLimitReq) ProtoMessage() {} - -func (x *PartLimitReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use PartLimitReq.ProtoReflect.Descriptor instead. -func (*PartLimitReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{3} -} - -type PartLimitResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MinPartSize int64 `protobuf:"varint,1,opt,name=minPartSize,proto3" json:"minPartSize"` - MaxPartSize int64 `protobuf:"varint,2,opt,name=maxPartSize,proto3" json:"maxPartSize"` - MaxNumSize int32 `protobuf:"varint,3,opt,name=maxNumSize,proto3" json:"maxNumSize"` -} - -func (x *PartLimitResp) Reset() { - *x = PartLimitResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PartLimitResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PartLimitResp) ProtoMessage() {} - -func (x *PartLimitResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use PartLimitResp.ProtoReflect.Descriptor instead. -func (*PartLimitResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{4} -} - -func (x *PartLimitResp) GetMinPartSize() int64 { - if x != nil { - return x.MinPartSize - } - return 0 -} - -func (x *PartLimitResp) GetMaxPartSize() int64 { - if x != nil { - return x.MaxPartSize - } - return 0 -} - -func (x *PartLimitResp) GetMaxNumSize() int32 { - if x != nil { - return x.MaxNumSize - } - return 0 -} - -type PartSizeReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Size int64 `protobuf:"varint,1,opt,name=size,proto3" json:"size"` -} - -func (x *PartSizeReq) Reset() { - *x = PartSizeReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PartSizeReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PartSizeReq) ProtoMessage() {} - -func (x *PartSizeReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use PartSizeReq.ProtoReflect.Descriptor instead. -func (*PartSizeReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{5} -} - -func (x *PartSizeReq) GetSize() int64 { - if x != nil { - return x.Size - } - return 0 -} - -type PartSizeResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` -} - -func (x *PartSizeResp) Reset() { - *x = PartSizeResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PartSizeResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PartSizeResp) ProtoMessage() {} - -func (x *PartSizeResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use PartSizeResp.ProtoReflect.Descriptor instead. -func (*PartSizeResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{6} -} - -func (x *PartSizeResp) GetSize() int64 { - if x != nil { - return x.Size - } - return 0 -} - -type InitiateMultipartUploadReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash"` - Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size"` - PartSize int64 `protobuf:"varint,3,opt,name=partSize,proto3" json:"partSize"` - MaxParts int32 `protobuf:"varint,4,opt,name=maxParts,proto3" json:"maxParts"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` - Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name"` - ContentType string `protobuf:"bytes,7,opt,name=contentType,proto3" json:"contentType"` -} - -func (x *InitiateMultipartUploadReq) Reset() { - *x = InitiateMultipartUploadReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InitiateMultipartUploadReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InitiateMultipartUploadReq) ProtoMessage() {} - -func (x *InitiateMultipartUploadReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use InitiateMultipartUploadReq.ProtoReflect.Descriptor instead. -func (*InitiateMultipartUploadReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{7} -} - -func (x *InitiateMultipartUploadReq) GetHash() string { - if x != nil { - return x.Hash - } - return "" -} - -func (x *InitiateMultipartUploadReq) GetSize() int64 { - if x != nil { - return x.Size - } - return 0 -} - -func (x *InitiateMultipartUploadReq) GetPartSize() int64 { - if x != nil { - return x.PartSize - } - return 0 -} - -func (x *InitiateMultipartUploadReq) GetMaxParts() int32 { - if x != nil { - return x.MaxParts - } - return 0 -} - -func (x *InitiateMultipartUploadReq) GetCause() string { - if x != nil { - return x.Cause - } - return "" -} - -func (x *InitiateMultipartUploadReq) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *InitiateMultipartUploadReq) GetContentType() string { - if x != nil { - return x.ContentType - } - return "" -} - -type UploadInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - PartSize int64 `protobuf:"varint,2,opt,name=partSize,proto3" json:"partSize"` - Sign *AuthSignParts `protobuf:"bytes,3,opt,name=sign,proto3" json:"sign"` - ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` -} - -func (x *UploadInfo) Reset() { - *x = UploadInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UploadInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UploadInfo) ProtoMessage() {} - -func (x *UploadInfo) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use UploadInfo.ProtoReflect.Descriptor instead. -func (*UploadInfo) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{8} -} - -func (x *UploadInfo) GetUploadID() string { - if x != nil { - return x.UploadID - } - return "" -} - -func (x *UploadInfo) GetPartSize() int64 { - if x != nil { - return x.PartSize - } - return 0 -} - -func (x *UploadInfo) GetSign() *AuthSignParts { - if x != nil { - return x.Sign - } - return nil -} - -func (x *UploadInfo) GetExpireTime() int64 { - if x != nil { - return x.ExpireTime - } - return 0 -} - -type InitiateMultipartUploadResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Upload *UploadInfo `protobuf:"bytes,2,opt,name=upload,proto3" json:"upload"` -} - -func (x *InitiateMultipartUploadResp) Reset() { - *x = InitiateMultipartUploadResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InitiateMultipartUploadResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InitiateMultipartUploadResp) ProtoMessage() {} - -func (x *InitiateMultipartUploadResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use InitiateMultipartUploadResp.ProtoReflect.Descriptor instead. -func (*InitiateMultipartUploadResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{9} -} - -func (x *InitiateMultipartUploadResp) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -func (x *InitiateMultipartUploadResp) GetUpload() *UploadInfo { - if x != nil { - return x.Upload - } - return nil -} - -type AuthSignReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - PartNumbers []int32 `protobuf:"varint,2,rep,packed,name=partNumbers,proto3" json:"partNumbers"` -} - -func (x *AuthSignReq) Reset() { - *x = AuthSignReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AuthSignReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AuthSignReq) ProtoMessage() {} - -func (x *AuthSignReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use AuthSignReq.ProtoReflect.Descriptor instead. -func (*AuthSignReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{10} -} - -func (x *AuthSignReq) GetUploadID() string { - if x != nil { - return x.UploadID - } - return "" -} - -func (x *AuthSignReq) GetPartNumbers() []int32 { - if x != nil { - return x.PartNumbers - } - return nil -} - -type AuthSignResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - Query []*KeyValues `protobuf:"bytes,2,rep,name=query,proto3" json:"query"` - Header []*KeyValues `protobuf:"bytes,3,rep,name=header,proto3" json:"header"` - Parts []*SignPart `protobuf:"bytes,4,rep,name=parts,proto3" json:"parts"` -} - -func (x *AuthSignResp) Reset() { - *x = AuthSignResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AuthSignResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AuthSignResp) ProtoMessage() {} - -func (x *AuthSignResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use AuthSignResp.ProtoReflect.Descriptor instead. -func (*AuthSignResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{11} -} - -func (x *AuthSignResp) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -func (x *AuthSignResp) GetQuery() []*KeyValues { - if x != nil { - return x.Query - } - return nil -} - -func (x *AuthSignResp) GetHeader() []*KeyValues { - if x != nil { - return x.Header - } - return nil -} - -func (x *AuthSignResp) GetParts() []*SignPart { - if x != nil { - return x.Parts - } - return nil -} - -type CompleteMultipartUploadReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UploadID string `protobuf:"bytes,1,opt,name=uploadID,proto3" json:"uploadID"` - Parts []string `protobuf:"bytes,2,rep,name=parts,proto3" json:"parts"` - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name"` - ContentType string `protobuf:"bytes,4,opt,name=contentType,proto3" json:"contentType"` - Cause string `protobuf:"bytes,5,opt,name=cause,proto3" json:"cause"` -} - -func (x *CompleteMultipartUploadReq) Reset() { - *x = CompleteMultipartUploadReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CompleteMultipartUploadReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CompleteMultipartUploadReq) ProtoMessage() {} - -func (x *CompleteMultipartUploadReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_proto_msgTypes[12] - 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 CompleteMultipartUploadReq.ProtoReflect.Descriptor instead. -func (*CompleteMultipartUploadReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{12} -} - -func (x *CompleteMultipartUploadReq) GetUploadID() string { - if x != nil { - return x.UploadID - } - return "" -} - -func (x *CompleteMultipartUploadReq) GetParts() []string { - if x != nil { - return x.Parts - } - return nil -} - -func (x *CompleteMultipartUploadReq) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *CompleteMultipartUploadReq) GetContentType() string { - if x != nil { - return x.ContentType - } - return "" -} - -func (x *CompleteMultipartUploadReq) GetCause() string { - if x != nil { - return x.Cause - } - return "" -} - -type CompleteMultipartUploadResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` -} - -func (x *CompleteMultipartUploadResp) Reset() { - *x = CompleteMultipartUploadResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CompleteMultipartUploadResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CompleteMultipartUploadResp) ProtoMessage() {} - -func (x *CompleteMultipartUploadResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use CompleteMultipartUploadResp.ProtoReflect.Descriptor instead. -func (*CompleteMultipartUploadResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{13} -} - -func (x *CompleteMultipartUploadResp) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -type AccessURLReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` -} - -func (x *AccessURLReq) Reset() { - *x = AccessURLReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccessURLReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccessURLReq) ProtoMessage() {} - -func (x *AccessURLReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_proto_msgTypes[14] - 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 AccessURLReq.ProtoReflect.Descriptor instead. -func (*AccessURLReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{14} -} - -func (x *AccessURLReq) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -type AccessURLResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - ExpireTime int64 `protobuf:"varint,2,opt,name=expireTime,proto3" json:"expireTime"` -} - -func (x *AccessURLResp) Reset() { - *x = AccessURLResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccessURLResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccessURLResp) ProtoMessage() {} - -func (x *AccessURLResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use AccessURLResp.ProtoReflect.Descriptor instead. -func (*AccessURLResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{15} -} - -func (x *AccessURLResp) GetUrl() string { - if x != nil { - return x.Url - } - return "" -} - -func (x *AccessURLResp) GetExpireTime() int64 { - if x != nil { - return x.ExpireTime - } - return 0 -} - -type FcmUpdateTokenReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PlatformID int32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - FcmToken string `protobuf:"bytes,2,opt,name=fcmToken,proto3" json:"fcmToken"` - Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account"` - ExpireTime int64 `protobuf:"varint,4,opt,name=expireTime,proto3" json:"expireTime"` -} - -func (x *FcmUpdateTokenReq) Reset() { - *x = FcmUpdateTokenReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FcmUpdateTokenReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FcmUpdateTokenReq) ProtoMessage() {} - -func (x *FcmUpdateTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use FcmUpdateTokenReq.ProtoReflect.Descriptor instead. -func (*FcmUpdateTokenReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{16} -} - -func (x *FcmUpdateTokenReq) GetPlatformID() int32 { - if x != nil { - return x.PlatformID - } - return 0 -} - -func (x *FcmUpdateTokenReq) GetFcmToken() string { - if x != nil { - return x.FcmToken - } - return "" -} - -func (x *FcmUpdateTokenReq) GetAccount() string { - if x != nil { - return x.Account - } - return "" -} - -func (x *FcmUpdateTokenReq) GetExpireTime() int64 { - if x != nil { - return x.ExpireTime - } - return 0 -} - -type FcmUpdateTokenResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *FcmUpdateTokenResp) Reset() { - *x = FcmUpdateTokenResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FcmUpdateTokenResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FcmUpdateTokenResp) ProtoMessage() {} - -func (x *FcmUpdateTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use FcmUpdateTokenResp.ProtoReflect.Descriptor instead. -func (*FcmUpdateTokenResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{17} -} - -type SetAppBadgeReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - AppUnreadCount int32 `protobuf:"varint,2,opt,name=appUnreadCount,proto3" json:"appUnreadCount"` -} - -func (x *SetAppBadgeReq) Reset() { - *x = SetAppBadgeReq{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetAppBadgeReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetAppBadgeReq) ProtoMessage() {} - -func (x *SetAppBadgeReq) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use SetAppBadgeReq.ProtoReflect.Descriptor instead. -func (*SetAppBadgeReq) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{18} -} - -func (x *SetAppBadgeReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SetAppBadgeReq) GetAppUnreadCount() int32 { - if x != nil { - return x.AppUnreadCount - } - return 0 -} - -type SetAppBadgeResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetAppBadgeResp) Reset() { - *x = SetAppBadgeResp{} - if protoimpl.UnsafeEnabled { - mi := &file_third_third_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetAppBadgeResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetAppBadgeResp) ProtoMessage() {} - -func (x *SetAppBadgeResp) ProtoReflect() protoreflect.Message { - mi := &file_third_third_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) -} - -// Deprecated: Use SetAppBadgeResp.ProtoReflect.Descriptor instead. -func (*SetAppBadgeResp) Descriptor() ([]byte, []int) { - return file_third_third_proto_rawDescGZIP(), []int{19} -} - -var File_third_third_proto protoreflect.FileDescriptor - -var file_third_third_proto_rawDesc = []byte{ - 0x0a, 0x11, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2f, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x22, 0x35, 0x0a, 0x09, 0x4b, 0x65, 0x79, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0xa8, - 0x01, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x61, 0x72, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x70, 0x61, 0x72, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, - 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x33, 0x0a, - 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, - 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x05, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x12, 0x35, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x73, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0xc1, 0x01, 0x0a, 0x0d, 0x41, 0x75, - 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, - 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x33, 0x0a, - 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, - 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x05, 0x71, 0x75, 0x65, - 0x72, 0x79, 0x12, 0x35, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x73, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x61, 0x72, - 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x53, 0x69, - 0x67, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x22, 0x0e, 0x0a, - 0x0c, 0x50, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x22, 0x73, 0x0a, - 0x0d, 0x50, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, - 0x0a, 0x0b, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, - 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x53, 0x69, 0x7a, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x53, 0x69, - 0x7a, 0x65, 0x22, 0x21, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, - 0x71, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x22, 0x0a, 0x0c, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0xc8, 0x01, 0x0a, 0x1a, 0x49, 0x6e, - 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x12, 0x0a, 0x04, - 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x6d, 0x61, 0x78, 0x50, 0x61, 0x72, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x6d, 0x61, 0x78, 0x50, 0x61, 0x72, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x75, 0x73, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x0a, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x70, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x73, - 0x69, 0x67, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x73, 0x52, 0x04, 0x73, 0x69, - 0x67, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0x67, 0x0a, 0x1b, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x4d, 0x75, - 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x72, 0x6c, 0x12, 0x36, 0x0a, 0x06, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x4b, 0x0a, 0x0b, 0x41, - 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x61, 0x72, - 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xc0, 0x01, 0x0a, 0x0c, 0x41, 0x75, 0x74, - 0x68, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x33, 0x0a, 0x05, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, - 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x12, 0x35, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x52, - 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, - 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x53, 0x69, 0x67, 0x6e, - 0x50, 0x61, 0x72, 0x74, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x1a, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, - 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x63, 0x61, 0x75, 0x73, 0x65, 0x22, 0x2f, 0x0a, 0x1b, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x22, 0x0a, 0x0c, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a, - 0x0d, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, - 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, - 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x22, 0x89, 0x01, 0x0a, 0x11, 0x46, 0x63, 0x6d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x63, 0x6d, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x63, 0x6d, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x14, 0x0a, 0x12, - 0x46, 0x63, 0x6d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x22, 0x50, 0x0a, 0x0e, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x64, 0x67, - 0x65, 0x52, 0x65, 0x71, 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, 0x26, 0x0a, 0x0e, - 0x61, 0x70, 0x70, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x55, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x11, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, - 0x64, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x32, 0xfa, 0x05, 0x0a, 0x05, 0x74, 0x68, 0x69, 0x72, - 0x64, 0x12, 0x50, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x20, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, - 0x69, 0x72, 0x64, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, - 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x4d, 0x0a, 0x08, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, - 0x1f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, - 0x68, 0x69, 0x72, 0x64, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, - 0x1a, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x7a, 0x0a, 0x17, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x4d, 0x75, - 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2e, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, - 0x72, 0x64, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, - 0x70, 0x61, 0x72, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, - 0x72, 0x64, 0x2e, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, - 0x70, 0x61, 0x72, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4d, - 0x0a, 0x08, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x1f, 0x2e, 0x4f, 0x70, 0x65, - 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, - 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, - 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x7a, 0x0a, - 0x17, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, - 0x72, 0x74, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x2f, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x61, 0x72, 0x74, 0x55, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x50, 0x0a, 0x09, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x41, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x71, 0x1a, 0x21, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x41, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5f, 0x0a, 0x0e, 0x46, - 0x63, 0x6d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x25, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, - 0x72, 0x64, 0x2e, 0x46, 0x63, 0x6d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, 0x2e, 0x46, 0x63, 0x6d, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x56, 0x0a, 0x0b, - 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x64, 0x67, 0x65, 0x12, 0x22, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, 0x68, 0x69, 0x72, 0x64, - 0x2e, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x64, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, - 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x74, - 0x68, 0x69, 0x72, 0x64, 0x2e, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x42, 0x61, 0x64, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x42, 0x35, 0x5a, 0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, - 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x68, 0x69, 0x72, 0x64, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, -} - -var ( - file_third_third_proto_rawDescOnce sync.Once - file_third_third_proto_rawDescData = file_third_third_proto_rawDesc -) - -func file_third_third_proto_rawDescGZIP() []byte { - file_third_third_proto_rawDescOnce.Do(func() { - file_third_third_proto_rawDescData = protoimpl.X.CompressGZIP(file_third_third_proto_rawDescData) - }) - return file_third_third_proto_rawDescData -} - -var file_third_third_proto_msgTypes = make([]protoimpl.MessageInfo, 20) -var file_third_third_proto_goTypes = []interface{}{ - (*KeyValues)(nil), // 0: OpenIMServer.third.KeyValues - (*SignPart)(nil), // 1: OpenIMServer.third.SignPart - (*AuthSignParts)(nil), // 2: OpenIMServer.third.AuthSignParts - (*PartLimitReq)(nil), // 3: OpenIMServer.third.PartLimitReq - (*PartLimitResp)(nil), // 4: OpenIMServer.third.PartLimitResp - (*PartSizeReq)(nil), // 5: OpenIMServer.third.PartSizeReq - (*PartSizeResp)(nil), // 6: OpenIMServer.third.PartSizeResp - (*InitiateMultipartUploadReq)(nil), // 7: OpenIMServer.third.InitiateMultipartUploadReq - (*UploadInfo)(nil), // 8: OpenIMServer.third.UploadInfo - (*InitiateMultipartUploadResp)(nil), // 9: OpenIMServer.third.InitiateMultipartUploadResp - (*AuthSignReq)(nil), // 10: OpenIMServer.third.AuthSignReq - (*AuthSignResp)(nil), // 11: OpenIMServer.third.AuthSignResp - (*CompleteMultipartUploadReq)(nil), // 12: OpenIMServer.third.CompleteMultipartUploadReq - (*CompleteMultipartUploadResp)(nil), // 13: OpenIMServer.third.CompleteMultipartUploadResp - (*AccessURLReq)(nil), // 14: OpenIMServer.third.AccessURLReq - (*AccessURLResp)(nil), // 15: OpenIMServer.third.AccessURLResp - (*FcmUpdateTokenReq)(nil), // 16: OpenIMServer.third.FcmUpdateTokenReq - (*FcmUpdateTokenResp)(nil), // 17: OpenIMServer.third.FcmUpdateTokenResp - (*SetAppBadgeReq)(nil), // 18: OpenIMServer.third.SetAppBadgeReq - (*SetAppBadgeResp)(nil), // 19: OpenIMServer.third.SetAppBadgeResp -} -var file_third_third_proto_depIdxs = []int32{ - 0, // 0: OpenIMServer.third.SignPart.query:type_name -> OpenIMServer.third.KeyValues - 0, // 1: OpenIMServer.third.SignPart.header:type_name -> OpenIMServer.third.KeyValues - 0, // 2: OpenIMServer.third.AuthSignParts.query:type_name -> OpenIMServer.third.KeyValues - 0, // 3: OpenIMServer.third.AuthSignParts.header:type_name -> OpenIMServer.third.KeyValues - 1, // 4: OpenIMServer.third.AuthSignParts.parts:type_name -> OpenIMServer.third.SignPart - 2, // 5: OpenIMServer.third.UploadInfo.sign:type_name -> OpenIMServer.third.AuthSignParts - 8, // 6: OpenIMServer.third.InitiateMultipartUploadResp.upload:type_name -> OpenIMServer.third.UploadInfo - 0, // 7: OpenIMServer.third.AuthSignResp.query:type_name -> OpenIMServer.third.KeyValues - 0, // 8: OpenIMServer.third.AuthSignResp.header:type_name -> OpenIMServer.third.KeyValues - 1, // 9: OpenIMServer.third.AuthSignResp.parts:type_name -> OpenIMServer.third.SignPart - 3, // 10: OpenIMServer.third.third.PartLimit:input_type -> OpenIMServer.third.PartLimitReq - 5, // 11: OpenIMServer.third.third.PartSize:input_type -> OpenIMServer.third.PartSizeReq - 7, // 12: OpenIMServer.third.third.InitiateMultipartUpload:input_type -> OpenIMServer.third.InitiateMultipartUploadReq - 10, // 13: OpenIMServer.third.third.AuthSign:input_type -> OpenIMServer.third.AuthSignReq - 12, // 14: OpenIMServer.third.third.CompleteMultipartUpload:input_type -> OpenIMServer.third.CompleteMultipartUploadReq - 14, // 15: OpenIMServer.third.third.AccessURL:input_type -> OpenIMServer.third.AccessURLReq - 16, // 16: OpenIMServer.third.third.FcmUpdateToken:input_type -> OpenIMServer.third.FcmUpdateTokenReq - 18, // 17: OpenIMServer.third.third.SetAppBadge:input_type -> OpenIMServer.third.SetAppBadgeReq - 4, // 18: OpenIMServer.third.third.PartLimit:output_type -> OpenIMServer.third.PartLimitResp - 6, // 19: OpenIMServer.third.third.PartSize:output_type -> OpenIMServer.third.PartSizeResp - 9, // 20: OpenIMServer.third.third.InitiateMultipartUpload:output_type -> OpenIMServer.third.InitiateMultipartUploadResp - 11, // 21: OpenIMServer.third.third.AuthSign:output_type -> OpenIMServer.third.AuthSignResp - 13, // 22: OpenIMServer.third.third.CompleteMultipartUpload:output_type -> OpenIMServer.third.CompleteMultipartUploadResp - 15, // 23: OpenIMServer.third.third.AccessURL:output_type -> OpenIMServer.third.AccessURLResp - 17, // 24: OpenIMServer.third.third.FcmUpdateToken:output_type -> OpenIMServer.third.FcmUpdateTokenResp - 19, // 25: OpenIMServer.third.third.SetAppBadge:output_type -> OpenIMServer.third.SetAppBadgeResp - 18, // [18:26] is the sub-list for method output_type - 10, // [10:18] is the sub-list for method input_type - 10, // [10:10] is the sub-list for extension type_name - 10, // [10:10] is the sub-list for extension extendee - 0, // [0:10] is the sub-list for field type_name -} - -func init() { file_third_third_proto_init() } -func file_third_third_proto_init() { - if File_third_third_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_third_third_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*KeyValues); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignPart); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthSignParts); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartLimitReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartLimitResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartSizeReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PartSizeResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InitiateMultipartUploadReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UploadInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InitiateMultipartUploadResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthSignReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AuthSignResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CompleteMultipartUploadReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CompleteMultipartUploadResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccessURLReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AccessURLResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FcmUpdateTokenReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FcmUpdateTokenResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetAppBadgeReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_third_third_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetAppBadgeResp); 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_third_third_proto_rawDesc, - NumEnums: 0, - NumMessages: 20, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_third_third_proto_goTypes, - DependencyIndexes: file_third_third_proto_depIdxs, - MessageInfos: file_third_third_proto_msgTypes, - }.Build() - File_third_third_proto = out.File - file_third_third_proto_rawDesc = nil - file_third_third_proto_goTypes = nil - file_third_third_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// ThirdClient is the client API for Third service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type ThirdClient interface { - PartLimit(ctx context.Context, in *PartLimitReq, opts ...grpc.CallOption) (*PartLimitResp, error) - PartSize(ctx context.Context, in *PartSizeReq, opts ...grpc.CallOption) (*PartSizeResp, error) - InitiateMultipartUpload(ctx context.Context, in *InitiateMultipartUploadReq, opts ...grpc.CallOption) (*InitiateMultipartUploadResp, error) - AuthSign(ctx context.Context, in *AuthSignReq, opts ...grpc.CallOption) (*AuthSignResp, error) - CompleteMultipartUpload(ctx context.Context, in *CompleteMultipartUploadReq, opts ...grpc.CallOption) (*CompleteMultipartUploadResp, error) - AccessURL(ctx context.Context, in *AccessURLReq, opts ...grpc.CallOption) (*AccessURLResp, error) - FcmUpdateToken(ctx context.Context, in *FcmUpdateTokenReq, opts ...grpc.CallOption) (*FcmUpdateTokenResp, error) - SetAppBadge(ctx context.Context, in *SetAppBadgeReq, opts ...grpc.CallOption) (*SetAppBadgeResp, error) -} - -type thirdClient struct { - cc grpc.ClientConnInterface -} - -func NewThirdClient(cc grpc.ClientConnInterface) ThirdClient { - return &thirdClient{cc} -} - -func (c *thirdClient) PartLimit(ctx context.Context, in *PartLimitReq, opts ...grpc.CallOption) (*PartLimitResp, error) { - out := new(PartLimitResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/PartLimit", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) PartSize(ctx context.Context, in *PartSizeReq, opts ...grpc.CallOption) (*PartSizeResp, error) { - out := new(PartSizeResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/PartSize", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) InitiateMultipartUpload(ctx context.Context, in *InitiateMultipartUploadReq, opts ...grpc.CallOption) (*InitiateMultipartUploadResp, error) { - out := new(InitiateMultipartUploadResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/InitiateMultipartUpload", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) AuthSign(ctx context.Context, in *AuthSignReq, opts ...grpc.CallOption) (*AuthSignResp, error) { - out := new(AuthSignResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/AuthSign", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) CompleteMultipartUpload(ctx context.Context, in *CompleteMultipartUploadReq, opts ...grpc.CallOption) (*CompleteMultipartUploadResp, error) { - out := new(CompleteMultipartUploadResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/CompleteMultipartUpload", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) AccessURL(ctx context.Context, in *AccessURLReq, opts ...grpc.CallOption) (*AccessURLResp, error) { - out := new(AccessURLResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/AccessURL", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) FcmUpdateToken(ctx context.Context, in *FcmUpdateTokenReq, opts ...grpc.CallOption) (*FcmUpdateTokenResp, error) { - out := new(FcmUpdateTokenResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/FcmUpdateToken", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *thirdClient) SetAppBadge(ctx context.Context, in *SetAppBadgeReq, opts ...grpc.CallOption) (*SetAppBadgeResp, error) { - out := new(SetAppBadgeResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.third.third/SetAppBadge", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// ThirdServer is the server API for Third service. -type ThirdServer interface { - PartLimit(context.Context, *PartLimitReq) (*PartLimitResp, error) - PartSize(context.Context, *PartSizeReq) (*PartSizeResp, error) - InitiateMultipartUpload(context.Context, *InitiateMultipartUploadReq) (*InitiateMultipartUploadResp, error) - AuthSign(context.Context, *AuthSignReq) (*AuthSignResp, error) - CompleteMultipartUpload(context.Context, *CompleteMultipartUploadReq) (*CompleteMultipartUploadResp, error) - AccessURL(context.Context, *AccessURLReq) (*AccessURLResp, error) - FcmUpdateToken(context.Context, *FcmUpdateTokenReq) (*FcmUpdateTokenResp, error) - SetAppBadge(context.Context, *SetAppBadgeReq) (*SetAppBadgeResp, error) -} - -// UnimplementedThirdServer can be embedded to have forward compatible implementations. -type UnimplementedThirdServer struct { -} - -func (*UnimplementedThirdServer) PartLimit(context.Context, *PartLimitReq) (*PartLimitResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method PartLimit not implemented") -} -func (*UnimplementedThirdServer) PartSize(context.Context, *PartSizeReq) (*PartSizeResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method PartSize not implemented") -} -func (*UnimplementedThirdServer) InitiateMultipartUpload(context.Context, *InitiateMultipartUploadReq) (*InitiateMultipartUploadResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method InitiateMultipartUpload not implemented") -} -func (*UnimplementedThirdServer) AuthSign(context.Context, *AuthSignReq) (*AuthSignResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AuthSign not implemented") -} -func (*UnimplementedThirdServer) CompleteMultipartUpload(context.Context, *CompleteMultipartUploadReq) (*CompleteMultipartUploadResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method CompleteMultipartUpload not implemented") -} -func (*UnimplementedThirdServer) AccessURL(context.Context, *AccessURLReq) (*AccessURLResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AccessURL not implemented") -} -func (*UnimplementedThirdServer) FcmUpdateToken(context.Context, *FcmUpdateTokenReq) (*FcmUpdateTokenResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method FcmUpdateToken not implemented") -} -func (*UnimplementedThirdServer) SetAppBadge(context.Context, *SetAppBadgeReq) (*SetAppBadgeResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetAppBadge not implemented") -} - -func RegisterThirdServer(s *grpc.Server, srv ThirdServer) { - s.RegisterService(&_Third_serviceDesc, srv) -} - -func _Third_PartLimit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PartLimitReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).PartLimit(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/PartLimit", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).PartLimit(ctx, req.(*PartLimitReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_PartSize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PartSizeReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).PartSize(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/PartSize", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).PartSize(ctx, req.(*PartSizeReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_InitiateMultipartUpload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(InitiateMultipartUploadReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).InitiateMultipartUpload(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/InitiateMultipartUpload", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).InitiateMultipartUpload(ctx, req.(*InitiateMultipartUploadReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_AuthSign_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AuthSignReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).AuthSign(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/AuthSign", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).AuthSign(ctx, req.(*AuthSignReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_CompleteMultipartUpload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CompleteMultipartUploadReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).CompleteMultipartUpload(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/CompleteMultipartUpload", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).CompleteMultipartUpload(ctx, req.(*CompleteMultipartUploadReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_AccessURL_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AccessURLReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).AccessURL(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/AccessURL", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).AccessURL(ctx, req.(*AccessURLReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_FcmUpdateToken_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(FcmUpdateTokenReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).FcmUpdateToken(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/FcmUpdateToken", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).FcmUpdateToken(ctx, req.(*FcmUpdateTokenReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _Third_SetAppBadge_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetAppBadgeReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ThirdServer).SetAppBadge(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.third.third/SetAppBadge", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ThirdServer).SetAppBadge(ctx, req.(*SetAppBadgeReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _Third_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.third.third", - HandlerType: (*ThirdServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "PartLimit", - Handler: _Third_PartLimit_Handler, - }, - { - MethodName: "PartSize", - Handler: _Third_PartSize_Handler, - }, - { - MethodName: "InitiateMultipartUpload", - Handler: _Third_InitiateMultipartUpload_Handler, - }, - { - MethodName: "AuthSign", - Handler: _Third_AuthSign_Handler, - }, - { - MethodName: "CompleteMultipartUpload", - Handler: _Third_CompleteMultipartUpload_Handler, - }, - { - MethodName: "AccessURL", - Handler: _Third_AccessURL_Handler, - }, - { - MethodName: "FcmUpdateToken", - Handler: _Third_FcmUpdateToken_Handler, - }, - { - MethodName: "SetAppBadge", - Handler: _Third_SetAppBadge_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "third/third.proto", -} diff --git a/pkg/proto/third/third.proto b/pkg/proto/third/third.proto deleted file mode 100644 index 3b2456983..000000000 --- a/pkg/proto/third/third.proto +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.third; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third"; - -message KeyValues { - string key = 1; - repeated string values = 2; -} - -message SignPart { - int32 partNumber = 1; - string url = 2; - repeated KeyValues query = 3; - repeated KeyValues header = 4; -} - -message AuthSignParts { - string url = 1; - repeated KeyValues query = 2; - repeated KeyValues header = 3; - repeated SignPart parts = 4; -} - -message PartLimitReq { -} - -message PartLimitResp { - int64 minPartSize = 1; - int64 maxPartSize = 2; - int32 maxNumSize = 3; -} - -message PartSizeReq { - int64 size = 1; -} - -message PartSizeResp { - int64 size = 2; -} - -message InitiateMultipartUploadReq { - string hash = 1; - int64 size = 2; - int64 partSize = 3; - int32 maxParts = 4; - string cause = 5; - string name = 6; - string contentType = 7; -} - -message UploadInfo { - string uploadID = 1; - int64 partSize = 2; - AuthSignParts sign = 3; - int64 expireTime = 4; -} - -message InitiateMultipartUploadResp { - string url = 1; - UploadInfo upload = 2; -} - -message AuthSignReq { - string uploadID = 1; - repeated int32 partNumbers = 2; -} - -message AuthSignResp { - string url = 1; - repeated KeyValues query = 2; - repeated KeyValues header = 3; - repeated SignPart parts = 4; -} - -message CompleteMultipartUploadReq { - string uploadID = 1; - repeated string parts = 2; - string name = 3; - string contentType = 4; - string cause = 5; -} - -message CompleteMultipartUploadResp { - string url = 1; -} - -message AccessURLReq { - string name = 1; -} - -message AccessURLResp { - string url = 1; - int64 expireTime = 2; -} - -message FcmUpdateTokenReq { - int32 platformID = 1; - string fcmToken = 2; - string account = 3; - int64 expireTime = 4; -} - -message FcmUpdateTokenResp { -} - -message SetAppBadgeReq { - string userID = 1; - int32 appUnreadCount = 2; -} - -message SetAppBadgeResp { -} - -service third { - rpc PartLimit(PartLimitReq) returns(PartLimitResp); - rpc PartSize(PartSizeReq) returns(PartSizeResp); - rpc InitiateMultipartUpload(InitiateMultipartUploadReq) returns(InitiateMultipartUploadResp); - rpc AuthSign(AuthSignReq) returns(AuthSignResp); - rpc CompleteMultipartUpload(CompleteMultipartUploadReq) returns(CompleteMultipartUploadResp); - rpc AccessURL(AccessURLReq) returns(AccessURLResp); - - rpc FcmUpdateToken(FcmUpdateTokenReq) returns(FcmUpdateTokenResp); - rpc SetAppBadge(SetAppBadgeReq) returns(SetAppBadgeResp); -} - - - - - - diff --git a/pkg/proto/user/user.go b/pkg/proto/user/user.go deleted file mode 100644 index 06f07cb6e..000000000 --- a/pkg/proto/user/user.go +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package user - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - -func (x *GetAllUserIDReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *AccountCheckReq) Check() error { - if x.CheckUserIDs == nil { - return errs.ErrArgs.Wrap("CheckUserIDs is empty") - } - return nil -} - -func (x *GetDesignateUsersReq) Check() error { - if x.UserIDs == nil { - return errs.ErrArgs.Wrap("UserIDs is empty") - } - return nil -} - -func (x *UpdateUserInfoReq) Check() error { - if x.UserInfo == nil { - return errs.ErrArgs.Wrap("UserInfo is empty") - } - if x.UserInfo.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - return nil -} - -func (x *SetGlobalRecvMessageOptReq) Check() error { - if x.GlobalRecvMsgOpt > 2 || x.GlobalRecvMsgOpt < 0 { - return errs.ErrArgs.Wrap("GlobalRecvMsgOpt is invalid") - } - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - return nil -} - -func (x *SetConversationReq) Check() error { - if err := x.Conversation.Check(); err != nil { - return err - } - if x.NotificationType < 1 || x.NotificationType > 3 { - return errs.ErrArgs.Wrap("NotificationType is invalid") - } - return nil -} - -func (x *SetRecvMsgOptReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("ConversationID is empty") - } - if x.RecvMsgOpt < 0 || x.RecvMsgOpt > 2 { - return errs.ErrArgs.Wrap("RecvMsgOpt is invalid") - } - if x.NotificationType < 1 || x.NotificationType > 3 { - return errs.ErrArgs.Wrap("NotificationType is invalid") - } - return nil -} - -func (x *GetConversationReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - if x.ConversationID == "" { - return errs.ErrArgs.Wrap("ConversationID is empty") - } - return nil -} - -func (x *GetConversationsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - if x.ConversationIDs == nil { - return errs.ErrArgs.Wrap("ConversationIDs is empty") - } - return nil -} - -func (x *GetAllConversationsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - return nil -} - -func (x *BatchSetConversationsReq) Check() error { - if x.OwnerUserID == "" { - return errs.ErrArgs.Wrap("OwnerUserID is empty") - } - if x.Conversations == nil { - return errs.ErrArgs.Wrap("ConversationIDs is empty") - } - if x.NotificationType < 1 || x.NotificationType > 3 { - return errs.ErrArgs.Wrap("NotificationType is invalid") - } - return nil -} - -func (x *GetPaginationUsersReq) Check() error { - if x.Pagination == nil { - return errs.ErrArgs.Wrap("pagination is empty") - } - if x.Pagination.PageNumber < 1 { - return errs.ErrArgs.Wrap("pageNumber is invalid") - } - return nil -} - -func (x *UserRegisterReq) Check() error { - if x.Users == nil { - return errs.ErrArgs.Wrap("Users is empty") - } - return nil -} - -func (x *GetGlobalRecvMessageOptReq) Check() error { - if x.UserID == "" { - return errs.ErrArgs.Wrap("UserID is empty") - } - return nil -} - -func (x *UserRegisterCountReq) Check() error { - if x.Start <= 0 { - return errs.ErrArgs.Wrap("start is invalid") - } - if x.End <= 0 { - return errs.ErrArgs.Wrap("end is invalid") - } - return nil -} diff --git a/pkg/proto/user/user.pb.go b/pkg/proto/user/user.pb.go deleted file mode 100644 index 5046505db..000000000 --- a/pkg/proto/user/user.pb.go +++ /dev/null @@ -1,2763 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: user/user.proto - -package user - -import ( - context "context" - conversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - 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) -) - -type GetAllUserIDReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,1,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetAllUserIDReq) Reset() { - *x = GetAllUserIDReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllUserIDReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllUserIDReq) ProtoMessage() {} - -func (x *GetAllUserIDReq) 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) -} - -// Deprecated: Use GetAllUserIDReq.ProtoReflect.Descriptor instead. -func (*GetAllUserIDReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{0} -} - -func (x *GetAllUserIDReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type GetAllUserIDResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - UserIDs []string `protobuf:"bytes,2,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetAllUserIDResp) Reset() { - *x = GetAllUserIDResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllUserIDResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllUserIDResp) ProtoMessage() {} - -func (x *GetAllUserIDResp) 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) -} - -// Deprecated: Use GetAllUserIDResp.ProtoReflect.Descriptor instead. -func (*GetAllUserIDResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{1} -} - -func (x *GetAllUserIDResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetAllUserIDResp) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type AccountCheckReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CheckUserIDs []string `protobuf:"bytes,1,rep,name=checkUserIDs,proto3" json:"checkUserIDs"` -} - -func (x *AccountCheckReq) Reset() { - *x = AccountCheckReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccountCheckReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccountCheckReq) ProtoMessage() {} - -func (x *AccountCheckReq) 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) -} - -// Deprecated: Use AccountCheckReq.ProtoReflect.Descriptor instead. -func (*AccountCheckReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{2} -} - -func (x *AccountCheckReq) GetCheckUserIDs() []string { - if x != nil { - return x.CheckUserIDs - } - return nil -} - -type AccountCheckResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Results []*AccountCheckRespSingleUserStatus `protobuf:"bytes,1,rep,name=results,proto3" json:"results"` -} - -func (x *AccountCheckResp) Reset() { - *x = AccountCheckResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccountCheckResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccountCheckResp) ProtoMessage() {} - -func (x *AccountCheckResp) 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) -} - -// Deprecated: Use AccountCheckResp.ProtoReflect.Descriptor instead. -func (*AccountCheckResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{3} -} - -func (x *AccountCheckResp) GetResults() []*AccountCheckRespSingleUserStatus { - if x != nil { - return x.Results - } - return nil -} - -type GetDesignateUsersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserIDs []string `protobuf:"bytes,1,rep,name=userIDs,proto3" json:"userIDs"` -} - -func (x *GetDesignateUsersReq) Reset() { - *x = GetDesignateUsersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDesignateUsersReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDesignateUsersReq) ProtoMessage() {} - -func (x *GetDesignateUsersReq) 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) -} - -// Deprecated: Use GetDesignateUsersReq.ProtoReflect.Descriptor instead. -func (*GetDesignateUsersReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{4} -} - -func (x *GetDesignateUsersReq) GetUserIDs() []string { - if x != nil { - return x.UserIDs - } - return nil -} - -type GetDesignateUsersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UsersInfo []*sdkws.UserInfo `protobuf:"bytes,1,rep,name=usersInfo,proto3" json:"usersInfo"` -} - -func (x *GetDesignateUsersResp) Reset() { - *x = GetDesignateUsersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDesignateUsersResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDesignateUsersResp) ProtoMessage() {} - -func (x *GetDesignateUsersResp) 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) -} - -// Deprecated: Use GetDesignateUsersResp.ProtoReflect.Descriptor instead. -func (*GetDesignateUsersResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{5} -} - -func (x *GetDesignateUsersResp) GetUsersInfo() []*sdkws.UserInfo { - if x != nil { - return x.UsersInfo - } - return nil -} - -type UpdateUserInfoReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserInfo *sdkws.UserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo"` -} - -func (x *UpdateUserInfoReq) Reset() { - *x = UpdateUserInfoReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateUserInfoReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateUserInfoReq) ProtoMessage() {} - -func (x *UpdateUserInfoReq) 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) -} - -// Deprecated: Use UpdateUserInfoReq.ProtoReflect.Descriptor instead. -func (*UpdateUserInfoReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{6} -} - -func (x *UpdateUserInfoReq) GetUserInfo() *sdkws.UserInfo { - if x != nil { - return x.UserInfo - } - return nil -} - -type UpdateUserInfoResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UpdateUserInfoResp) Reset() { - *x = UpdateUserInfoResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateUserInfoResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateUserInfoResp) ProtoMessage() {} - -func (x *UpdateUserInfoResp) 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) -} - -// Deprecated: Use UpdateUserInfoResp.ProtoReflect.Descriptor instead. -func (*UpdateUserInfoResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{7} -} - -type SetGlobalRecvMessageOptReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - GlobalRecvMsgOpt int32 `protobuf:"varint,3,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` -} - -func (x *SetGlobalRecvMessageOptReq) Reset() { - *x = SetGlobalRecvMessageOptReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGlobalRecvMessageOptReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGlobalRecvMessageOptReq) ProtoMessage() {} - -func (x *SetGlobalRecvMessageOptReq) 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) -} - -// Deprecated: Use SetGlobalRecvMessageOptReq.ProtoReflect.Descriptor instead. -func (*SetGlobalRecvMessageOptReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{8} -} - -func (x *SetGlobalRecvMessageOptReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *SetGlobalRecvMessageOptReq) GetGlobalRecvMsgOpt() int32 { - if x != nil { - return x.GlobalRecvMsgOpt - } - return 0 -} - -type SetGlobalRecvMessageOptResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetGlobalRecvMessageOptResp) Reset() { - *x = SetGlobalRecvMessageOptResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetGlobalRecvMessageOptResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetGlobalRecvMessageOptResp) ProtoMessage() {} - -func (x *SetGlobalRecvMessageOptResp) 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) -} - -// Deprecated: Use SetGlobalRecvMessageOptResp.ProtoReflect.Descriptor instead. -func (*SetGlobalRecvMessageOptResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{9} -} - -type SetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversation *conversation.Conversation `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation"` - NotificationType int32 `protobuf:"varint,2,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *SetConversationReq) Reset() { - *x = SetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationReq) ProtoMessage() {} - -func (x *SetConversationReq) 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) -} - -// Deprecated: Use SetConversationReq.ProtoReflect.Descriptor instead. -func (*SetConversationReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{10} -} - -func (x *SetConversationReq) GetConversation() *conversation.Conversation { - if x != nil { - return x.Conversation - } - return nil -} - -func (x *SetConversationReq) GetNotificationType() int32 { - if x != nil { - return x.NotificationType - } - return 0 -} - -func (x *SetConversationReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type SetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetConversationResp) Reset() { - *x = SetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetConversationResp) ProtoMessage() {} - -func (x *SetConversationResp) 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) -} - -// Deprecated: Use SetConversationResp.ProtoReflect.Descriptor instead. -func (*SetConversationResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{11} -} - -type SetRecvMsgOptReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID"` - ConversationID string `protobuf:"bytes,2,opt,name=conversationID,proto3" json:"conversationID"` - RecvMsgOpt int32 `protobuf:"varint,3,opt,name=recvMsgOpt,proto3" json:"recvMsgOpt"` - NotificationType int32 `protobuf:"varint,4,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,5,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *SetRecvMsgOptReq) Reset() { - *x = SetRecvMsgOptReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetRecvMsgOptReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetRecvMsgOptReq) ProtoMessage() {} - -func (x *SetRecvMsgOptReq) 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 - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetRecvMsgOptReq.ProtoReflect.Descriptor instead. -func (*SetRecvMsgOptReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{12} -} - -func (x *SetRecvMsgOptReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *SetRecvMsgOptReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *SetRecvMsgOptReq) GetRecvMsgOpt() int32 { - if x != nil { - return x.RecvMsgOpt - } - return 0 -} - -func (x *SetRecvMsgOptReq) GetNotificationType() int32 { - if x != nil { - return x.NotificationType - } - return 0 -} - -func (x *SetRecvMsgOptReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type SetRecvMsgOptResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *SetRecvMsgOptResp) Reset() { - *x = SetRecvMsgOptResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetRecvMsgOptResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetRecvMsgOptResp) ProtoMessage() {} - -func (x *SetRecvMsgOptResp) 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) -} - -// Deprecated: Use SetRecvMsgOptResp.ProtoReflect.Descriptor instead. -func (*SetRecvMsgOptResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{13} -} - -type GetConversationReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ConversationID string `protobuf:"bytes,1,opt,name=conversationID,proto3" json:"conversationID"` - OwnerUserID string `protobuf:"bytes,2,opt,name=ownerUserID,proto3" json:"ownerUserID"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *GetConversationReq) Reset() { - *x = GetConversationReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationReq) ProtoMessage() {} - -func (x *GetConversationReq) 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 - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetConversationReq.ProtoReflect.Descriptor instead. -func (*GetConversationReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{14} -} - -func (x *GetConversationReq) GetConversationID() string { - if x != nil { - return x.ConversationID - } - return "" -} - -func (x *GetConversationReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GetConversationReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type GetConversationResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversation *conversation.Conversation `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation"` -} - -func (x *GetConversationResp) Reset() { - *x = GetConversationResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationResp) ProtoMessage() {} - -func (x *GetConversationResp) 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) -} - -// Deprecated: Use GetConversationResp.ProtoReflect.Descriptor instead. -func (*GetConversationResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{15} -} - -func (x *GetConversationResp) GetConversation() *conversation.Conversation { - if x != nil { - return x.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"` - ConversationIDs []string `protobuf:"bytes,2,rep,name=conversationIDs,proto3" json:"conversationIDs"` - OperationID string `protobuf:"bytes,3,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *GetConversationsReq) Reset() { - *x = GetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsReq) ProtoMessage() {} - -func (x *GetConversationsReq) 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) -} - -// Deprecated: Use GetConversationsReq.ProtoReflect.Descriptor instead. -func (*GetConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{16} -} - -func (x *GetConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GetConversationsReq) GetConversationIDs() []string { - if x != nil { - return x.ConversationIDs - } - return nil -} - -func (x *GetConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type GetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*conversation.Conversation `protobuf:"bytes,2,rep,name=conversations,proto3" json:"conversations"` -} - -func (x *GetConversationsResp) Reset() { - *x = GetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetConversationsResp) ProtoMessage() {} - -func (x *GetConversationsResp) 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) -} - -// Deprecated: Use GetConversationsResp.ProtoReflect.Descriptor instead. -func (*GetConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{17} -} - -func (x *GetConversationsResp) GetConversations() []*conversation.Conversation { - if x != nil { - return x.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"` - OperationID string `protobuf:"bytes,2,opt,name=operationID,proto3" json:"operationID"` -} - -func (x *GetAllConversationsReq) Reset() { - *x = GetAllConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllConversationsReq) ProtoMessage() {} - -func (x *GetAllConversationsReq) 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) -} - -// Deprecated: Use GetAllConversationsReq.ProtoReflect.Descriptor instead. -func (*GetAllConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{18} -} - -func (x *GetAllConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *GetAllConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type GetAllConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*conversation.Conversation `protobuf:"bytes,2,rep,name=conversations,proto3" json:"conversations"` -} - -func (x *GetAllConversationsResp) Reset() { - *x = GetAllConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllConversationsResp) ProtoMessage() {} - -func (x *GetAllConversationsResp) 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) -} - -// Deprecated: Use GetAllConversationsResp.ProtoReflect.Descriptor instead. -func (*GetAllConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{19} -} - -func (x *GetAllConversationsResp) GetConversations() []*conversation.Conversation { - if x != nil { - return x.Conversations - } - return nil -} - -type BatchSetConversationsReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Conversations []*conversation.Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations"` - OwnerUserID string `protobuf:"bytes,2,opt,name=OwnerUserID,proto3" json:"OwnerUserID"` - NotificationType int32 `protobuf:"varint,3,opt,name=notificationType,proto3" json:"notificationType"` - OperationID string `protobuf:"bytes,4,opt,name=OperationID,proto3" json:"OperationID"` -} - -func (x *BatchSetConversationsReq) Reset() { - *x = BatchSetConversationsReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BatchSetConversationsReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchSetConversationsReq) ProtoMessage() {} - -func (x *BatchSetConversationsReq) 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) -} - -// Deprecated: Use BatchSetConversationsReq.ProtoReflect.Descriptor instead. -func (*BatchSetConversationsReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{20} -} - -func (x *BatchSetConversationsReq) GetConversations() []*conversation.Conversation { - if x != nil { - return x.Conversations - } - return nil -} - -func (x *BatchSetConversationsReq) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID - } - return "" -} - -func (x *BatchSetConversationsReq) GetNotificationType() int32 { - if x != nil { - return x.NotificationType - } - return 0 -} - -func (x *BatchSetConversationsReq) GetOperationID() string { - if x != nil { - return x.OperationID - } - return "" -} - -type BatchSetConversationsResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Success []string `protobuf:"bytes,2,rep,name=Success,proto3" json:"Success"` - Failed []string `protobuf:"bytes,3,rep,name=Failed,proto3" json:"Failed"` -} - -func (x *BatchSetConversationsResp) Reset() { - *x = BatchSetConversationsResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BatchSetConversationsResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BatchSetConversationsResp) ProtoMessage() {} - -func (x *BatchSetConversationsResp) 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) -} - -// Deprecated: Use BatchSetConversationsResp.ProtoReflect.Descriptor instead. -func (*BatchSetConversationsResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{21} -} - -func (x *BatchSetConversationsResp) GetSuccess() []string { - if x != nil { - return x.Success - } - return nil -} - -func (x *BatchSetConversationsResp) GetFailed() []string { - if x != nil { - return x.Failed - } - return nil -} - -type GetPaginationUsersReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Pagination *sdkws.RequestPagination `protobuf:"bytes,2,opt,name=pagination,proto3" json:"pagination"` -} - -func (x *GetPaginationUsersReq) Reset() { - *x = GetPaginationUsersReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationUsersReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationUsersReq) ProtoMessage() {} - -func (x *GetPaginationUsersReq) 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) -} - -// Deprecated: Use GetPaginationUsersReq.ProtoReflect.Descriptor instead. -func (*GetPaginationUsersReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{22} -} - -func (x *GetPaginationUsersReq) GetPagination() *sdkws.RequestPagination { - if x != nil { - return x.Pagination - } - return nil -} - -type GetPaginationUsersResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total int32 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` -} - -func (x *GetPaginationUsersResp) Reset() { - *x = GetPaginationUsersResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetPaginationUsersResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetPaginationUsersResp) ProtoMessage() {} - -func (x *GetPaginationUsersResp) 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) -} - -// Deprecated: Use GetPaginationUsersResp.ProtoReflect.Descriptor instead. -func (*GetPaginationUsersResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{23} -} - -func (x *GetPaginationUsersResp) GetTotal() int32 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *GetPaginationUsersResp) GetUsers() []*sdkws.UserInfo { - if x != nil { - return x.Users - } - return nil -} - -type UserRegisterReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Secret string `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret"` - Users []*sdkws.UserInfo `protobuf:"bytes,2,rep,name=users,proto3" json:"users"` -} - -func (x *UserRegisterReq) Reset() { - *x = UserRegisterReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserRegisterReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserRegisterReq) ProtoMessage() {} - -func (x *UserRegisterReq) 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) -} - -// Deprecated: Use UserRegisterReq.ProtoReflect.Descriptor instead. -func (*UserRegisterReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{24} -} - -func (x *UserRegisterReq) GetSecret() string { - if x != nil { - return x.Secret - } - return "" -} - -func (x *UserRegisterReq) GetUsers() []*sdkws.UserInfo { - if x != nil { - return x.Users - } - return nil -} - -type UserRegisterResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UserRegisterResp) Reset() { - *x = UserRegisterResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserRegisterResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserRegisterResp) ProtoMessage() {} - -func (x *UserRegisterResp) 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) -} - -// Deprecated: Use UserRegisterResp.ProtoReflect.Descriptor instead. -func (*UserRegisterResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{25} -} - -type GetGlobalRecvMessageOptReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` -} - -func (x *GetGlobalRecvMessageOptReq) Reset() { - *x = GetGlobalRecvMessageOptReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGlobalRecvMessageOptReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGlobalRecvMessageOptReq) ProtoMessage() {} - -func (x *GetGlobalRecvMessageOptReq) 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) -} - -// Deprecated: Use GetGlobalRecvMessageOptReq.ProtoReflect.Descriptor instead. -func (*GetGlobalRecvMessageOptReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{26} -} - -func (x *GetGlobalRecvMessageOptReq) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -type GetGlobalRecvMessageOptResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GlobalRecvMsgOpt int32 `protobuf:"varint,1,opt,name=globalRecvMsgOpt,proto3" json:"globalRecvMsgOpt"` -} - -func (x *GetGlobalRecvMessageOptResp) Reset() { - *x = GetGlobalRecvMessageOptResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetGlobalRecvMessageOptResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetGlobalRecvMessageOptResp) ProtoMessage() {} - -func (x *GetGlobalRecvMessageOptResp) 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) -} - -// Deprecated: Use GetGlobalRecvMessageOptResp.ProtoReflect.Descriptor instead. -func (*GetGlobalRecvMessageOptResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{27} -} - -func (x *GetGlobalRecvMessageOptResp) GetGlobalRecvMsgOpt() int32 { - if x != nil { - return x.GlobalRecvMsgOpt - } - return 0 -} - -type UserRegisterCountReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start"` - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end"` -} - -func (x *UserRegisterCountReq) Reset() { - *x = UserRegisterCountReq{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserRegisterCountReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserRegisterCountReq) ProtoMessage() {} - -func (x *UserRegisterCountReq) 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) -} - -// Deprecated: Use UserRegisterCountReq.ProtoReflect.Descriptor instead. -func (*UserRegisterCountReq) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{28} -} - -func (x *UserRegisterCountReq) GetStart() int64 { - if x != nil { - return x.Start - } - return 0 -} - -func (x *UserRegisterCountReq) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -type UserRegisterCountResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total"` - Before int64 `protobuf:"varint,2,opt,name=before,proto3" json:"before"` - Count map[string]int64 `protobuf:"bytes,3,rep,name=count,proto3" json:"count" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` -} - -func (x *UserRegisterCountResp) Reset() { - *x = UserRegisterCountResp{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserRegisterCountResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserRegisterCountResp) ProtoMessage() {} - -func (x *UserRegisterCountResp) 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) -} - -// Deprecated: Use UserRegisterCountResp.ProtoReflect.Descriptor instead. -func (*UserRegisterCountResp) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{29} -} - -func (x *UserRegisterCountResp) GetTotal() int64 { - if x != nil { - return x.Total - } - return 0 -} - -func (x *UserRegisterCountResp) GetBefore() int64 { - if x != nil { - return x.Before - } - return 0 -} - -func (x *UserRegisterCountResp) GetCount() map[string]int64 { - if x != nil { - return x.Count - } - return nil -} - -type AccountCheckRespSingleUserStatus struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - AccountStatus string `protobuf:"bytes,2,opt,name=accountStatus,proto3" json:"accountStatus"` -} - -func (x *AccountCheckRespSingleUserStatus) Reset() { - *x = AccountCheckRespSingleUserStatus{} - if protoimpl.UnsafeEnabled { - mi := &file_user_user_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AccountCheckRespSingleUserStatus) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AccountCheckRespSingleUserStatus) ProtoMessage() {} - -func (x *AccountCheckRespSingleUserStatus) 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) -} - -// Deprecated: Use AccountCheckRespSingleUserStatus.ProtoReflect.Descriptor instead. -func (*AccountCheckRespSingleUserStatus) Descriptor() ([]byte, []int) { - return file_user_user_proto_rawDescGZIP(), []int{3, 0} -} - -func (x *AccountCheckRespSingleUserStatus) GetUserID() string { - if x != nil { - return x.UserID - } - return "" -} - -func (x *AccountCheckRespSingleUserStatus) GetAccountStatus() string { - if x != nil { - return x.AccountStatus - } - return "" -} - -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, 0x11, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x1a, 0x11, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2f, 0x73, 0x64, 0x6b, 0x77, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x58, 0x0a, 0x0f, 0x67, 0x65, 0x74, 0x41, - 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, 0x70, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x73, - 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x42, 0x0a, 0x10, 0x67, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x18, 0x0a, 0x07, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x35, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0xb4, 0x01, - 0x0a, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x4e, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, - 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x1a, 0x50, 0x0a, 0x10, 0x73, 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, 0x30, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x73, 0x22, 0x53, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, - 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x3a, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x4d, 0x0a, 0x11, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, - 0x12, 0x38, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x14, 0x0a, 0x12, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x60, 0x0a, 0x1a, 0x73, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, - 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 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, 0x2a, 0x0a, 0x10, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x10, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, - 0x70, 0x74, 0x22, 0x1d, 0x0a, 0x1b, 0x73, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, - 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x22, 0xaf, 0x01, 0x0a, 0x12, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x4b, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, - 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, - 0x65, 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, 0x15, 0x0a, 0x13, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0xca, 0x01, 0x0a, 0x10, 0x73, - 0x65, 0x74, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, - 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x63, - 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, - 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6e, 0x6f, 0x74, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x13, 0x0a, 0x11, 0x73, 0x65, 0x74, 0x52, 0x65, - 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x80, 0x01, 0x0a, - 0x12, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 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, - 0x62, 0x0a, 0x13, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4b, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x83, 0x01, 0x0a, 0x13, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x28, 0x0a, - 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x73, 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, 0x65, 0x0a, 0x14, 0x67, 0x65, 0x74, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, - 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0x5c, 0x0a, 0x16, 0x67, 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, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 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, 0x68, - 0x0a, 0x17, 0x67, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xd9, 0x01, 0x0a, 0x18, 0x62, 0x61, 0x74, - 0x63, 0x68, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x71, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6e, 0x76, - 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 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, 0x2a, 0x0a, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x10, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 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, 0x4d, 0x0a, 0x19, 0x62, 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, 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, 0x5e, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x45, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x16, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x12, 0x32, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x5d, 0x0a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, - 0x63, 0x72, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, - 0x65, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x73, 0x64, 0x6b, 0x77, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x34, 0x0a, 0x1a, 0x67, 0x65, - 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x22, 0x49, 0x0a, 0x1b, 0x67, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, - 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x2a, 0x0a, 0x10, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, - 0x4f, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x67, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x74, 0x22, 0x3e, 0x0a, 0x14, 0x75, - 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0xca, 0x01, 0x0a, 0x15, - 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x62, - 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x62, 0x65, 0x66, - 0x6f, 0x72, 0x65, 0x12, 0x49, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, - 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x38, - 0x0a, 0x0a, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0x9f, 0x07, 0x0a, 0x04, 0x75, 0x73, 0x65, - 0x72, 0x12, 0x66, 0x0a, 0x11, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x67, 0x65, 0x74, 0x44, 0x65, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, - 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, - 0x73, 0x65, 0x72, 0x2e, 0x67, 0x65, 0x74, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x5d, 0x0a, 0x0e, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x71, 0x1a, 0x25, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x78, 0x0a, 0x17, 0x73, 0x65, 0x74, 0x47, - 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x4f, 0x70, 0x74, 0x12, 0x2d, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x73, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, - 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, - 0x65, 0x71, 0x1a, 0x2e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x73, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, - 0x52, 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x78, 0x0a, 0x17, 0x67, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, - 0x65, 0x63, 0x76, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x12, 0x2d, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x67, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x2e, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x67, 0x65, 0x74, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x52, 0x65, 0x63, 0x76, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x57, 0x0a, 0x0c, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x22, 0x2e, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, - 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x69, 0x0a, 0x12, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x28, 0x2e, 0x4f, 0x70, - 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, - 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x29, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x67, 0x65, 0x74, 0x50, 0x61, 0x67, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x57, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, - 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x57, 0x0a, 0x0c, 0x67, 0x65, 0x74, - 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x2e, 0x4f, 0x70, 0x65, 0x6e, - 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x67, 0x65, - 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x23, 0x2e, - 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, - 0x72, 0x2e, 0x67, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x66, 0x0a, 0x11, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x1a, 0x28, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, - 0x75, 0x73, 0x65, 0x72, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, - 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, - 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 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, 32) -var file_user_user_proto_goTypes = []interface{}{ - (*GetAllUserIDReq)(nil), // 0: OpenIMServer.user.getAllUserIDReq - (*GetAllUserIDResp)(nil), // 1: OpenIMServer.user.getAllUserIDResp - (*AccountCheckReq)(nil), // 2: OpenIMServer.user.accountCheckReq - (*AccountCheckResp)(nil), // 3: OpenIMServer.user.accountCheckResp - (*GetDesignateUsersReq)(nil), // 4: OpenIMServer.user.getDesignateUsersReq - (*GetDesignateUsersResp)(nil), // 5: OpenIMServer.user.getDesignateUsersResp - (*UpdateUserInfoReq)(nil), // 6: OpenIMServer.user.updateUserInfoReq - (*UpdateUserInfoResp)(nil), // 7: OpenIMServer.user.updateUserInfoResp - (*SetGlobalRecvMessageOptReq)(nil), // 8: OpenIMServer.user.setGlobalRecvMessageOptReq - (*SetGlobalRecvMessageOptResp)(nil), // 9: OpenIMServer.user.setGlobalRecvMessageOptResp - (*SetConversationReq)(nil), // 10: OpenIMServer.user.setConversationReq - (*SetConversationResp)(nil), // 11: OpenIMServer.user.setConversationResp - (*SetRecvMsgOptReq)(nil), // 12: OpenIMServer.user.setRecvMsgOptReq - (*SetRecvMsgOptResp)(nil), // 13: OpenIMServer.user.setRecvMsgOptResp - (*GetConversationReq)(nil), // 14: OpenIMServer.user.getConversationReq - (*GetConversationResp)(nil), // 15: OpenIMServer.user.getConversationResp - (*GetConversationsReq)(nil), // 16: OpenIMServer.user.getConversationsReq - (*GetConversationsResp)(nil), // 17: OpenIMServer.user.getConversationsResp - (*GetAllConversationsReq)(nil), // 18: OpenIMServer.user.getAllConversationsReq - (*GetAllConversationsResp)(nil), // 19: OpenIMServer.user.getAllConversationsResp - (*BatchSetConversationsReq)(nil), // 20: OpenIMServer.user.batchSetConversationsReq - (*BatchSetConversationsResp)(nil), // 21: OpenIMServer.user.batchSetConversationsResp - (*GetPaginationUsersReq)(nil), // 22: OpenIMServer.user.getPaginationUsersReq - (*GetPaginationUsersResp)(nil), // 23: OpenIMServer.user.getPaginationUsersResp - (*UserRegisterReq)(nil), // 24: OpenIMServer.user.userRegisterReq - (*UserRegisterResp)(nil), // 25: OpenIMServer.user.userRegisterResp - (*GetGlobalRecvMessageOptReq)(nil), // 26: OpenIMServer.user.getGlobalRecvMessageOptReq - (*GetGlobalRecvMessageOptResp)(nil), // 27: OpenIMServer.user.getGlobalRecvMessageOptResp - (*UserRegisterCountReq)(nil), // 28: OpenIMServer.user.userRegisterCountReq - (*UserRegisterCountResp)(nil), // 29: OpenIMServer.user.userRegisterCountResp - (*AccountCheckRespSingleUserStatus)(nil), // 30: OpenIMServer.user.accountCheckResp.singleUserStatus - nil, // 31: OpenIMServer.user.userRegisterCountResp.CountEntry - (*sdkws.RequestPagination)(nil), // 32: OpenIMServer.sdkws.RequestPagination - (*sdkws.UserInfo)(nil), // 33: OpenIMServer.sdkws.UserInfo - (*conversation.Conversation)(nil), // 34: OpenIMServer.conversation.Conversation -} -var file_user_user_proto_depIdxs = []int32{ - 32, // 0: OpenIMServer.user.getAllUserIDReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 30, // 1: OpenIMServer.user.accountCheckResp.results:type_name -> OpenIMServer.user.accountCheckResp.singleUserStatus - 33, // 2: OpenIMServer.user.getDesignateUsersResp.usersInfo:type_name -> OpenIMServer.sdkws.UserInfo - 33, // 3: OpenIMServer.user.updateUserInfoReq.userInfo:type_name -> OpenIMServer.sdkws.UserInfo - 34, // 4: OpenIMServer.user.setConversationReq.conversation:type_name -> OpenIMServer.conversation.Conversation - 34, // 5: OpenIMServer.user.getConversationResp.conversation:type_name -> OpenIMServer.conversation.Conversation - 34, // 6: OpenIMServer.user.getConversationsResp.conversations:type_name -> OpenIMServer.conversation.Conversation - 34, // 7: OpenIMServer.user.getAllConversationsResp.conversations:type_name -> OpenIMServer.conversation.Conversation - 34, // 8: OpenIMServer.user.batchSetConversationsReq.conversations:type_name -> OpenIMServer.conversation.Conversation - 32, // 9: OpenIMServer.user.getPaginationUsersReq.pagination:type_name -> OpenIMServer.sdkws.RequestPagination - 33, // 10: OpenIMServer.user.getPaginationUsersResp.users:type_name -> OpenIMServer.sdkws.UserInfo - 33, // 11: OpenIMServer.user.userRegisterReq.users:type_name -> OpenIMServer.sdkws.UserInfo - 31, // 12: OpenIMServer.user.userRegisterCountResp.count:type_name -> OpenIMServer.user.userRegisterCountResp.CountEntry - 4, // 13: OpenIMServer.user.user.getDesignateUsers:input_type -> OpenIMServer.user.getDesignateUsersReq - 6, // 14: OpenIMServer.user.user.updateUserInfo:input_type -> OpenIMServer.user.updateUserInfoReq - 8, // 15: OpenIMServer.user.user.setGlobalRecvMessageOpt:input_type -> OpenIMServer.user.setGlobalRecvMessageOptReq - 26, // 16: OpenIMServer.user.user.getGlobalRecvMessageOpt:input_type -> OpenIMServer.user.getGlobalRecvMessageOptReq - 2, // 17: OpenIMServer.user.user.accountCheck:input_type -> OpenIMServer.user.accountCheckReq - 22, // 18: OpenIMServer.user.user.getPaginationUsers:input_type -> OpenIMServer.user.getPaginationUsersReq - 24, // 19: OpenIMServer.user.user.userRegister:input_type -> OpenIMServer.user.userRegisterReq - 0, // 20: OpenIMServer.user.user.getAllUserID:input_type -> OpenIMServer.user.getAllUserIDReq - 28, // 21: OpenIMServer.user.user.userRegisterCount:input_type -> OpenIMServer.user.userRegisterCountReq - 5, // 22: OpenIMServer.user.user.getDesignateUsers:output_type -> OpenIMServer.user.getDesignateUsersResp - 7, // 23: OpenIMServer.user.user.updateUserInfo:output_type -> OpenIMServer.user.updateUserInfoResp - 9, // 24: OpenIMServer.user.user.setGlobalRecvMessageOpt:output_type -> OpenIMServer.user.setGlobalRecvMessageOptResp - 27, // 25: OpenIMServer.user.user.getGlobalRecvMessageOpt:output_type -> OpenIMServer.user.getGlobalRecvMessageOptResp - 3, // 26: OpenIMServer.user.user.accountCheck:output_type -> OpenIMServer.user.accountCheckResp - 23, // 27: OpenIMServer.user.user.getPaginationUsers:output_type -> OpenIMServer.user.getPaginationUsersResp - 25, // 28: OpenIMServer.user.user.userRegister:output_type -> OpenIMServer.user.userRegisterResp - 1, // 29: OpenIMServer.user.user.getAllUserID:output_type -> OpenIMServer.user.getAllUserIDResp - 29, // 30: OpenIMServer.user.user.userRegisterCount:output_type -> OpenIMServer.user.userRegisterCountResp - 22, // [22:31] is the sub-list for method output_type - 13, // [13:22] is the sub-list for method input_type - 13, // [13:13] is the sub-list for extension type_name - 13, // [13:13] is the sub-list for extension extendee - 0, // [0:13] 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.(*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[1].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[2].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[3].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[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDesignateUsersReq); 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.(*GetDesignateUsersResp); 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.(*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[7].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[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetGlobalRecvMessageOptReq); 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.(*SetGlobalRecvMessageOptResp); 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.(*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[11].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[12].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[13].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[14].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[15].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[16].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[17].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[18].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[19].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[20].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[21].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[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPaginationUsersReq); 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.(*GetPaginationUsersResp); 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.(*UserRegisterReq); 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.(*UserRegisterResp); 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.(*GetGlobalRecvMessageOptReq); 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.(*GetGlobalRecvMessageOptResp); 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.(*UserRegisterCountReq); 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.(*UserRegisterCountResp); 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.(*AccountCheckRespSingleUserStatus); 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: 32, - 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 -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// 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 - -// 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 { - // 获取指定的用户信息 全字段 - GetDesignateUsers(ctx context.Context, in *GetDesignateUsersReq, opts ...grpc.CallOption) (*GetDesignateUsersResp, error) - // 更新用户信息 - UpdateUserInfo(ctx context.Context, in *UpdateUserInfoReq, opts ...grpc.CallOption) (*UpdateUserInfoResp, error) - // 设置用户消息接收选项 - SetGlobalRecvMessageOpt(ctx context.Context, in *SetGlobalRecvMessageOptReq, opts ...grpc.CallOption) (*SetGlobalRecvMessageOptResp, error) - // 获取用户消息接收选项 没找到不返回错误 - GetGlobalRecvMessageOpt(ctx context.Context, in *GetGlobalRecvMessageOptReq, opts ...grpc.CallOption) (*GetGlobalRecvMessageOptResp, error) - // 检查userID是否存在 - AccountCheck(ctx context.Context, in *AccountCheckReq, opts ...grpc.CallOption) (*AccountCheckResp, error) - // 翻页(或指定userID,昵称)拉取用户信息 全字段 - GetPaginationUsers(ctx context.Context, in *GetPaginationUsersReq, opts ...grpc.CallOption) (*GetPaginationUsersResp, error) - // 用户注册 - UserRegister(ctx context.Context, in *UserRegisterReq, opts ...grpc.CallOption) (*UserRegisterResp, error) - // 获取所有用户ID - GetAllUserID(ctx context.Context, in *GetAllUserIDReq, opts ...grpc.CallOption) (*GetAllUserIDResp, error) - // 获取用户总数和指定时间段内的用户增量 - UserRegisterCount(ctx context.Context, in *UserRegisterCountReq, opts ...grpc.CallOption) (*UserRegisterCountResp, error) -} - -type userClient struct { - cc grpc.ClientConnInterface -} - -func NewUserClient(cc grpc.ClientConnInterface) UserClient { - return &userClient{cc} -} - -func (c *userClient) GetDesignateUsers(ctx context.Context, in *GetDesignateUsersReq, opts ...grpc.CallOption) (*GetDesignateUsersResp, error) { - out := new(GetDesignateUsersResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/getDesignateUsers", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) UpdateUserInfo(ctx context.Context, in *UpdateUserInfoReq, opts ...grpc.CallOption) (*UpdateUserInfoResp, error) { - out := new(UpdateUserInfoResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/updateUserInfo", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) SetGlobalRecvMessageOpt(ctx context.Context, in *SetGlobalRecvMessageOptReq, opts ...grpc.CallOption) (*SetGlobalRecvMessageOptResp, error) { - out := new(SetGlobalRecvMessageOptResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/setGlobalRecvMessageOpt", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) GetGlobalRecvMessageOpt(ctx context.Context, in *GetGlobalRecvMessageOptReq, opts ...grpc.CallOption) (*GetGlobalRecvMessageOptResp, error) { - out := new(GetGlobalRecvMessageOptResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/getGlobalRecvMessageOpt", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) AccountCheck(ctx context.Context, in *AccountCheckReq, opts ...grpc.CallOption) (*AccountCheckResp, error) { - out := new(AccountCheckResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/accountCheck", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) GetPaginationUsers(ctx context.Context, in *GetPaginationUsersReq, opts ...grpc.CallOption) (*GetPaginationUsersResp, error) { - out := new(GetPaginationUsersResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/getPaginationUsers", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) UserRegister(ctx context.Context, in *UserRegisterReq, opts ...grpc.CallOption) (*UserRegisterResp, error) { - out := new(UserRegisterResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/userRegister", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) GetAllUserID(ctx context.Context, in *GetAllUserIDReq, opts ...grpc.CallOption) (*GetAllUserIDResp, error) { - out := new(GetAllUserIDResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/getAllUserID", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *userClient) UserRegisterCount(ctx context.Context, in *UserRegisterCountReq, opts ...grpc.CallOption) (*UserRegisterCountResp, error) { - out := new(UserRegisterCountResp) - err := c.cc.Invoke(ctx, "/OpenIMServer.user.user/userRegisterCount", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// UserServer is the server API for User service. -type UserServer interface { - // 获取指定的用户信息 全字段 - GetDesignateUsers(context.Context, *GetDesignateUsersReq) (*GetDesignateUsersResp, error) - // 更新用户信息 - UpdateUserInfo(context.Context, *UpdateUserInfoReq) (*UpdateUserInfoResp, error) - // 设置用户消息接收选项 - SetGlobalRecvMessageOpt(context.Context, *SetGlobalRecvMessageOptReq) (*SetGlobalRecvMessageOptResp, error) - // 获取用户消息接收选项 没找到不返回错误 - GetGlobalRecvMessageOpt(context.Context, *GetGlobalRecvMessageOptReq) (*GetGlobalRecvMessageOptResp, error) - // 检查userID是否存在 - AccountCheck(context.Context, *AccountCheckReq) (*AccountCheckResp, error) - // 翻页(或指定userID,昵称)拉取用户信息 全字段 - GetPaginationUsers(context.Context, *GetPaginationUsersReq) (*GetPaginationUsersResp, error) - // 用户注册 - UserRegister(context.Context, *UserRegisterReq) (*UserRegisterResp, error) - // 获取所有用户ID - GetAllUserID(context.Context, *GetAllUserIDReq) (*GetAllUserIDResp, error) - // 获取用户总数和指定时间段内的用户增量 - UserRegisterCount(context.Context, *UserRegisterCountReq) (*UserRegisterCountResp, error) -} - -// UnimplementedUserServer can be embedded to have forward compatible implementations. -type UnimplementedUserServer struct { -} - -func (*UnimplementedUserServer) GetDesignateUsers(context.Context, *GetDesignateUsersReq) (*GetDesignateUsersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetDesignateUsers not implemented") -} -func (*UnimplementedUserServer) UpdateUserInfo(context.Context, *UpdateUserInfoReq) (*UpdateUserInfoResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateUserInfo not implemented") -} -func (*UnimplementedUserServer) SetGlobalRecvMessageOpt(context.Context, *SetGlobalRecvMessageOptReq) (*SetGlobalRecvMessageOptResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetGlobalRecvMessageOpt not implemented") -} -func (*UnimplementedUserServer) GetGlobalRecvMessageOpt(context.Context, *GetGlobalRecvMessageOptReq) (*GetGlobalRecvMessageOptResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetGlobalRecvMessageOpt not implemented") -} -func (*UnimplementedUserServer) AccountCheck(context.Context, *AccountCheckReq) (*AccountCheckResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method AccountCheck not implemented") -} -func (*UnimplementedUserServer) GetPaginationUsers(context.Context, *GetPaginationUsersReq) (*GetPaginationUsersResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetPaginationUsers not implemented") -} -func (*UnimplementedUserServer) UserRegister(context.Context, *UserRegisterReq) (*UserRegisterResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UserRegister not implemented") -} -func (*UnimplementedUserServer) GetAllUserID(context.Context, *GetAllUserIDReq) (*GetAllUserIDResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAllUserID not implemented") -} -func (*UnimplementedUserServer) UserRegisterCount(context.Context, *UserRegisterCountReq) (*UserRegisterCountResp, error) { - return nil, status.Errorf(codes.Unimplemented, "method UserRegisterCount not implemented") -} - -func RegisterUserServer(s *grpc.Server, srv UserServer) { - s.RegisterService(&_User_serviceDesc, srv) -} - -func _User_GetDesignateUsers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetDesignateUsersReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).GetDesignateUsers(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/GetDesignateUsers", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).GetDesignateUsers(ctx, req.(*GetDesignateUsersReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_UpdateUserInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateUserInfoReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).UpdateUserInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/UpdateUserInfo", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).UpdateUserInfo(ctx, req.(*UpdateUserInfoReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_SetGlobalRecvMessageOpt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetGlobalRecvMessageOptReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).SetGlobalRecvMessageOpt(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/SetGlobalRecvMessageOpt", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).SetGlobalRecvMessageOpt(ctx, req.(*SetGlobalRecvMessageOptReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_GetGlobalRecvMessageOpt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetGlobalRecvMessageOptReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).GetGlobalRecvMessageOpt(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/GetGlobalRecvMessageOpt", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).GetGlobalRecvMessageOpt(ctx, req.(*GetGlobalRecvMessageOptReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_AccountCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AccountCheckReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).AccountCheck(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/AccountCheck", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).AccountCheck(ctx, req.(*AccountCheckReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_GetPaginationUsers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetPaginationUsersReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).GetPaginationUsers(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/GetPaginationUsers", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).GetPaginationUsers(ctx, req.(*GetPaginationUsersReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_UserRegister_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UserRegisterReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).UserRegister(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/UserRegister", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).UserRegister(ctx, req.(*UserRegisterReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_GetAllUserID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetAllUserIDReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).GetAllUserID(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/GetAllUserID", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).GetAllUserID(ctx, req.(*GetAllUserIDReq)) - } - return interceptor(ctx, in, info, handler) -} - -func _User_UserRegisterCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UserRegisterCountReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(UserServer).UserRegisterCount(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/OpenIMServer.user.user/UserRegisterCount", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(UserServer).UserRegisterCount(ctx, req.(*UserRegisterCountReq)) - } - return interceptor(ctx, in, info, handler) -} - -var _User_serviceDesc = grpc.ServiceDesc{ - ServiceName: "OpenIMServer.user.user", - HandlerType: (*UserServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "getDesignateUsers", - Handler: _User_GetDesignateUsers_Handler, - }, - { - MethodName: "updateUserInfo", - Handler: _User_UpdateUserInfo_Handler, - }, - { - MethodName: "setGlobalRecvMessageOpt", - Handler: _User_SetGlobalRecvMessageOpt_Handler, - }, - { - MethodName: "getGlobalRecvMessageOpt", - Handler: _User_GetGlobalRecvMessageOpt_Handler, - }, - { - MethodName: "accountCheck", - Handler: _User_AccountCheck_Handler, - }, - { - MethodName: "getPaginationUsers", - Handler: _User_GetPaginationUsers_Handler, - }, - { - MethodName: "userRegister", - Handler: _User_UserRegister_Handler, - }, - { - MethodName: "getAllUserID", - Handler: _User_GetAllUserID_Handler, - }, - { - MethodName: "userRegisterCount", - Handler: _User_UserRegisterCount_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "user/user.proto", -} diff --git a/pkg/proto/user/user.proto b/pkg/proto/user/user.proto deleted file mode 100644 index 10035642c..000000000 --- a/pkg/proto/user/user.proto +++ /dev/null @@ -1,182 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; -package OpenIMServer.user; -import "sdkws/sdkws.proto"; -import "conversation/conversation.proto"; -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user"; - -message getAllUserIDReq{ - sdkws.RequestPagination pagination = 1; -} -message getAllUserIDResp{ - int32 total = 1; - repeated string userIDs = 2; -} - - -message accountCheckReq{ - repeated string checkUserIDs = 1; -} -message accountCheckResp{ - message singleUserStatus { - string userID = 1; - string accountStatus = 2; - } - repeated singleUserStatus results = 1; -} - - -message getDesignateUsersReq{ - repeated string userIDs = 1; -} -message getDesignateUsersResp{ - repeated sdkws.UserInfo usersInfo = 1; -} - -message updateUserInfoReq{ - sdkws.UserInfo userInfo = 1; -} -message updateUserInfoResp{ -} - -message setGlobalRecvMessageOptReq{ - string userID = 1; - int32 globalRecvMsgOpt = 3; -} -message setGlobalRecvMessageOptResp{ -} - -message setConversationReq{ - OpenIMServer.conversation.Conversation conversation = 1; - int32 notificationType = 2; - string operationID = 3; -} - -message setConversationResp{ - -} - -message setRecvMsgOptReq { - string ownerUserID = 1; - string conversationID = 2; - int32 recvMsgOpt = 3; - int32 notificationType = 4; - string operationID = 5; -} - -message setRecvMsgOptResp { - -} - -message getConversationReq{ - string conversationID = 1; - string ownerUserID = 2; - string operationID = 3; -} - -message getConversationResp{ - OpenIMServer.conversation.Conversation conversation = 2; -} - -message getConversationsReq{ - string ownerUserID = 1; - repeated string conversationIDs = 2; - string operationID = 3; -} - -message getConversationsResp{ - repeated OpenIMServer.conversation.Conversation conversations = 2; -} - -message getAllConversationsReq{ - string ownerUserID = 1; - string operationID = 2; -} - -message getAllConversationsResp{ - repeated OpenIMServer.conversation.Conversation conversations = 2; -} - -message batchSetConversationsReq{ - repeated OpenIMServer.conversation.Conversation conversations = 1; - string OwnerUserID = 2; - int32 notificationType = 3; - string OperationID = 4; -} - -message batchSetConversationsResp{ - repeated string Success = 2; - repeated string Failed = 3; -} - - -message getPaginationUsersReq { - sdkws.RequestPagination pagination = 2; -} - -message getPaginationUsersResp{ - int32 total = 1; - repeated sdkws.UserInfo users = 2; -} - -message userRegisterReq { - string secret = 1; - repeated sdkws.UserInfo users = 2; -} -message userRegisterResp { -} - - -message getGlobalRecvMessageOptReq{ - string userID = 1; -} - -message getGlobalRecvMessageOptResp{ - int32 globalRecvMsgOpt = 1; -} - -message userRegisterCountReq { - int64 start = 1; - int64 end = 2; -} - -message userRegisterCountResp { - int64 total = 1; - int64 before = 2; - map<string, int64> count = 3; -} - -service user { - //获取指定的用户信息 全字段 - rpc getDesignateUsers(getDesignateUsersReq) returns(getDesignateUsersResp); - //更新用户信息 - rpc updateUserInfo(updateUserInfoReq) returns(updateUserInfoResp); - //设置用户消息接收选项 - rpc setGlobalRecvMessageOpt(setGlobalRecvMessageOptReq) returns(setGlobalRecvMessageOptResp); - //获取用户消息接收选项 没找到不返回错误 - rpc getGlobalRecvMessageOpt(getGlobalRecvMessageOptReq) returns(getGlobalRecvMessageOptResp); - //检查userID是否存在 - rpc accountCheck(accountCheckReq) returns (accountCheckResp); - //翻页(或指定userID,昵称)拉取用户信息 全字段 - rpc getPaginationUsers(getPaginationUsersReq) returns (getPaginationUsersResp); - //用户注册 - rpc userRegister(userRegisterReq) returns (userRegisterResp); - //获取所有用户ID - rpc getAllUserID(getAllUserIDReq) returns (getAllUserIDResp); - // 获取用户总数和指定时间段内的用户增量 - rpc userRegisterCount(userRegisterCountReq)returns(userRegisterCountResp); -} - diff --git a/pkg/proto/wrapperspb/wrapperspb.go b/pkg/proto/wrapperspb/wrapperspb.go deleted file mode 100644 index b7d4b0c31..000000000 --- a/pkg/proto/wrapperspb/wrapperspb.go +++ /dev/null @@ -1,299 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package wrapperspb - -import ( - "encoding/base64" - "encoding/json" - "errors" - "strconv" -) - -func Double(value float64) *DoubleValue { - return &DoubleValue{Value: value} -} - -func Float(value float32) *FloatValue { - return &FloatValue{Value: value} -} - -func Int64(value int64) *Int64Value { - return &Int64Value{Value: value} -} - -func UInt64(value uint64) *UInt64Value { - return &UInt64Value{Value: value} -} - -func Int32(value int32) *Int32Value { - return &Int32Value{Value: value} -} - -func UInt32(value uint32) *UInt32Value { - return &UInt32Value{Value: value} -} - -func Bool(value bool) *BoolValue { - return &BoolValue{Value: value} -} - -func String(value string) *StringValue { - return &StringValue{Value: value} -} - -func Bytes(value []byte) *BytesValue { - return &BytesValue{Value: value} -} - -func DoublePtr(value *float64) *DoubleValue { - if value == nil { - return nil - } - return &DoubleValue{Value: *value} -} - -func FloatPtr(value *float32) *FloatValue { - if value == nil { - return nil - } - return &FloatValue{Value: *value} -} - -func Int64Ptr(value *int64) *Int64Value { - if value == nil { - return nil - } - return &Int64Value{Value: *value} -} - -func UInt64Ptr(value *uint64) *UInt64Value { - if value == nil { - return nil - } - return &UInt64Value{Value: *value} -} - -func Int32Ptr(value *int32) *Int32Value { - if value == nil { - return nil - } - return &Int32Value{Value: *value} -} - -func UInt32Ptr(value *uint32) *UInt32Value { - if value == nil { - return nil - } - return &UInt32Value{Value: *value} -} - -func BoolPtr(value *bool) *BoolValue { - if value == nil { - return nil - } - return &BoolValue{Value: *value} -} - -func StringPtr(value *string) *StringValue { - if value == nil { - return nil - } - return &StringValue{Value: *value} -} - -func BytesPtr(value *[]byte) *BytesValue { - if value == nil { - return nil - } - return &BytesValue{Value: *value} -} - -func (m *DoubleValue) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseFloat(string(p), 64) - if err != nil { - return err - } - m.Value = value - return nil -} - -func (m *DoubleValue) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatFloat(m.Value, 'f', -1, 64)), nil -} - -func (m *FloatValue) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseFloat(string(p), 64) - if err != nil { - return err - } - m.Value = float32(value) - return nil -} - -func (m *FloatValue) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatFloat(float64(m.Value), 'f', -1, 32)), nil -} - -func (m *Int64Value) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseInt(string(p), 10, 64) - if err != nil { - return err - } - m.Value = value - return nil -} - -func (m *Int64Value) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatInt(m.Value, 10)), nil -} - -func (m *UInt64Value) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseUint(string(p), 10, 64) - if err != nil { - return err - } - m.Value = value - return nil -} - -func (m *UInt64Value) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatUint(m.Value, 10)), nil -} - -func (m *Int32Value) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseInt(string(p), 10, 32) - if err != nil { - return err - } - m.Value = int32(value) - return nil -} - -func (m *Int32Value) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatInt(int64(m.Value), 10)), nil -} - -func (m *UInt32Value) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseUint(string(p), 10, 32) - if err != nil { - return err - } - m.Value = uint32(value) - return nil -} - -func (m *UInt32Value) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatUint(uint64(m.Value), 10)), nil -} - -func (m *BoolValue) UnmarshalJSON(p []byte) error { - value, err := strconv.ParseBool(string(p)) - if err != nil { - return err - } - m.Value = value - return nil -} - -func (m *BoolValue) MarshalJSON() ([]byte, error) { - return []byte(strconv.FormatBool(m.Value)), nil -} - -func (m *StringValue) UnmarshalJSON(p []byte) error { - return json.Unmarshal(p, &m.Value) -} - -func (m *StringValue) MarshalJSON() ([]byte, error) { - return json.Marshal(m.Value) -} - -func (m *BytesValue) UnmarshalJSON(p []byte) error { - if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' { - return errors.New("invalid bytes value") - } - value, err := base64.StdEncoding.DecodeString(string(p[1 : len(p)-1])) - if err != nil { - return err - } - m.Value = value - return nil -} - -func (m *BytesValue) MarshalJSON() ([]byte, error) { - return []byte(`"` + base64.StdEncoding.EncodeToString(m.Value) + `"`), nil -} - -func (m *DoubleValue) GetValuePtr() *float64 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *FloatValue) GetValuePtr() *float32 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *Int64Value) GetValuePtr() *int64 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *UInt64Value) GetValuePtr() *uint64 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *Int32Value) GetValuePtr() *int32 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *UInt32Value) GetValuePtr() *uint32 { - if m == nil { - return nil - } - return &m.Value -} - -func (m *BoolValue) GetValuePtr() *bool { - if m == nil { - return nil - } - return &m.Value -} - -func (m *StringValue) GetValuePtr() *string { - if m == nil { - return nil - } - return &m.Value -} - -func (m *BytesValue) GetValuePtr() *[]byte { - if m == nil { - return nil - } - return &m.Value -} diff --git a/pkg/proto/wrapperspb/wrapperspb.pb.go b/pkg/proto/wrapperspb/wrapperspb.pb.go deleted file mode 100644 index 9678bb2a0..000000000 --- a/pkg/proto/wrapperspb/wrapperspb.pb.go +++ /dev/null @@ -1,694 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.29.1 -// protoc v4.22.0 -// source: wrapperspb/wrapperspb.proto - -package wrapperspb - -import ( - 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) -) - -// Wrapper message for `double`. -// -// The JSON representation for `DoubleValue` is JSON number. -type DoubleValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The double value. - Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value"` -} - -func (x *DoubleValue) Reset() { - *x = DoubleValue{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DoubleValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DoubleValue) ProtoMessage() {} - -func (x *DoubleValue) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use DoubleValue.ProtoReflect.Descriptor instead. -func (*DoubleValue) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{0} -} - -func (x *DoubleValue) GetValue() float64 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `float`. -// -// The JSON representation for `FloatValue` is JSON number. -type FloatValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The float value. - Value float32 `protobuf:"fixed32,1,opt,name=value,proto3" json:"value"` -} - -func (x *FloatValue) Reset() { - *x = FloatValue{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FloatValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FloatValue) ProtoMessage() {} - -func (x *FloatValue) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use FloatValue.ProtoReflect.Descriptor instead. -func (*FloatValue) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{1} -} - -func (x *FloatValue) GetValue() float32 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `int64`. -// -// The JSON representation for `Int64Value` is JSON string. -type Int64Value struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The int64 value. - Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value"` -} - -func (x *Int64Value) Reset() { - *x = Int64Value{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Int64Value) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Int64Value) ProtoMessage() {} - -func (x *Int64Value) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use Int64Value.ProtoReflect.Descriptor instead. -func (*Int64Value) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{2} -} - -func (x *Int64Value) GetValue() int64 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `uint64`. -// -// The JSON representation for `UInt64Value` is JSON string. -type UInt64Value struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The uint64 value. - Value uint64 `protobuf:"varint,1,opt,name=value,proto3" json:"value"` -} - -func (x *UInt64Value) Reset() { - *x = UInt64Value{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UInt64Value) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UInt64Value) ProtoMessage() {} - -func (x *UInt64Value) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use UInt64Value.ProtoReflect.Descriptor instead. -func (*UInt64Value) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{3} -} - -func (x *UInt64Value) GetValue() uint64 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `int32`. -// -// The JSON representation for `Int32Value` is JSON number. -type Int32Value struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The int32 value. - Value int32 `protobuf:"varint,1,opt,name=value,proto3" json:"value"` -} - -func (x *Int32Value) Reset() { - *x = Int32Value{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Int32Value) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Int32Value) ProtoMessage() {} - -func (x *Int32Value) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use Int32Value.ProtoReflect.Descriptor instead. -func (*Int32Value) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{4} -} - -func (x *Int32Value) GetValue() int32 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `uint32`. -// -// The JSON representation for `UInt32Value` is JSON number. -type UInt32Value struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The uint32 value. - Value uint32 `protobuf:"varint,1,opt,name=value,proto3" json:"value"` -} - -func (x *UInt32Value) Reset() { - *x = UInt32Value{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UInt32Value) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UInt32Value) ProtoMessage() {} - -func (x *UInt32Value) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use UInt32Value.ProtoReflect.Descriptor instead. -func (*UInt32Value) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{5} -} - -func (x *UInt32Value) GetValue() uint32 { - if x != nil { - return x.Value - } - return 0 -} - -// Wrapper message for `bool`. -// -// The JSON representation for `BoolValue` is JSON `true` and `false`. -type BoolValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The bool value. - Value bool `protobuf:"varint,1,opt,name=value,proto3" json:"value"` -} - -func (x *BoolValue) Reset() { - *x = BoolValue{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BoolValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BoolValue) ProtoMessage() {} - -func (x *BoolValue) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use BoolValue.ProtoReflect.Descriptor instead. -func (*BoolValue) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{6} -} - -func (x *BoolValue) GetValue() bool { - if x != nil { - return x.Value - } - return false -} - -// Wrapper message for `string`. -// -// The JSON representation for `StringValue` is JSON string. -type StringValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The string value. - Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value"` -} - -func (x *StringValue) Reset() { - *x = StringValue{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StringValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StringValue) ProtoMessage() {} - -func (x *StringValue) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use StringValue.ProtoReflect.Descriptor instead. -func (*StringValue) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{7} -} - -func (x *StringValue) GetValue() string { - if x != nil { - return x.Value - } - return "" -} - -// Wrapper message for `bytes`. -// -// The JSON representation for `BytesValue` is JSON string. -type BytesValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The bytes value. - Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value"` -} - -func (x *BytesValue) Reset() { - *x = BytesValue{} - if protoimpl.UnsafeEnabled { - mi := &file_wrapperspb_wrapperspb_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BytesValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BytesValue) ProtoMessage() {} - -func (x *BytesValue) ProtoReflect() protoreflect.Message { - mi := &file_wrapperspb_wrapperspb_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) -} - -// Deprecated: Use BytesValue.ProtoReflect.Descriptor instead. -func (*BytesValue) Descriptor() ([]byte, []int) { - return file_wrapperspb_wrapperspb_proto_rawDescGZIP(), []int{8} -} - -func (x *BytesValue) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} - -var File_wrapperspb_wrapperspb_proto protoreflect.FileDescriptor - -var file_wrapperspb_wrapperspb_proto_rawDesc = []byte{ - 0x0a, 0x1b, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x2f, 0x77, 0x72, 0x61, - 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x4f, - 0x70, 0x65, 0x6e, 0x49, 0x4d, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x22, 0x23, 0x0a, 0x0b, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x22, 0x0a, 0x0a, 0x46, 0x6c, 0x6f, - 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x22, 0x0a, - 0x0a, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x22, 0x0a, 0x0a, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x55, 0x49, - 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, - 0x21, 0x0a, 0x09, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x22, 0x23, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x22, 0x0a, 0x0a, 0x42, 0x79, 0x74, 0x65, 0x73, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x3a, 0x5a, 0x38, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x49, 0x4d, - 0x53, 0x44, 0x4b, 0x2f, 0x4f, 0x70, 0x65, 0x6e, 0x2d, 0x49, 0x4d, 0x2d, 0x53, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x77, 0x72, 0x61, - 0x70, 0x70, 0x65, 0x72, 0x73, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_wrapperspb_wrapperspb_proto_rawDescOnce sync.Once - file_wrapperspb_wrapperspb_proto_rawDescData = file_wrapperspb_wrapperspb_proto_rawDesc -) - -func file_wrapperspb_wrapperspb_proto_rawDescGZIP() []byte { - file_wrapperspb_wrapperspb_proto_rawDescOnce.Do(func() { - file_wrapperspb_wrapperspb_proto_rawDescData = protoimpl.X.CompressGZIP(file_wrapperspb_wrapperspb_proto_rawDescData) - }) - return file_wrapperspb_wrapperspb_proto_rawDescData -} - -var file_wrapperspb_wrapperspb_proto_msgTypes = make([]protoimpl.MessageInfo, 9) -var file_wrapperspb_wrapperspb_proto_goTypes = []interface{}{ - (*DoubleValue)(nil), // 0: OpenIMServer.protobuf.DoubleValue - (*FloatValue)(nil), // 1: OpenIMServer.protobuf.FloatValue - (*Int64Value)(nil), // 2: OpenIMServer.protobuf.Int64Value - (*UInt64Value)(nil), // 3: OpenIMServer.protobuf.UInt64Value - (*Int32Value)(nil), // 4: OpenIMServer.protobuf.Int32Value - (*UInt32Value)(nil), // 5: OpenIMServer.protobuf.UInt32Value - (*BoolValue)(nil), // 6: OpenIMServer.protobuf.BoolValue - (*StringValue)(nil), // 7: OpenIMServer.protobuf.StringValue - (*BytesValue)(nil), // 8: OpenIMServer.protobuf.BytesValue -} -var file_wrapperspb_wrapperspb_proto_depIdxs = []int32{ - 0, // [0:0] is the sub-list for method output_type - 0, // [0:0] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name -} - -func init() { file_wrapperspb_wrapperspb_proto_init() } -func file_wrapperspb_wrapperspb_proto_init() { - if File_wrapperspb_wrapperspb_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_wrapperspb_wrapperspb_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DoubleValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FloatValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Int64Value); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UInt64Value); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Int32Value); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UInt32Value); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BoolValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StringValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_wrapperspb_wrapperspb_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BytesValue); 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_wrapperspb_wrapperspb_proto_rawDesc, - NumEnums: 0, - NumMessages: 9, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_wrapperspb_wrapperspb_proto_goTypes, - DependencyIndexes: file_wrapperspb_wrapperspb_proto_depIdxs, - MessageInfos: file_wrapperspb_wrapperspb_proto_msgTypes, - }.Build() - File_wrapperspb_wrapperspb_proto = out.File - file_wrapperspb_wrapperspb_proto_rawDesc = nil - file_wrapperspb_wrapperspb_proto_goTypes = nil - file_wrapperspb_wrapperspb_proto_depIdxs = nil -} diff --git a/pkg/proto/wrapperspb/wrapperspb.proto b/pkg/proto/wrapperspb/wrapperspb.proto deleted file mode 100644 index ec1bdca20..000000000 --- a/pkg/proto/wrapperspb/wrapperspb.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package OpenIMServer.protobuf; - -option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb"; - -// Wrapper message for `double`. -// -// The JSON representation for `DoubleValue` is JSON number. -message DoubleValue { - // The double value. - double value = 1; -} - -// Wrapper message for `float`. -// -// The JSON representation for `FloatValue` is JSON number. -message FloatValue { - // The float value. - float value = 1; -} - -// Wrapper message for `int64`. -// -// The JSON representation for `Int64Value` is JSON string. -message Int64Value { - // The int64 value. - int64 value = 1; -} - -// Wrapper message for `uint64`. -// -// The JSON representation for `UInt64Value` is JSON string. -message UInt64Value { - // The uint64 value. - uint64 value = 1; -} - -// Wrapper message for `int32`. -// -// The JSON representation for `Int32Value` is JSON number. -message Int32Value { - // The int32 value. - int32 value = 1; -} - -// Wrapper message for `uint32`. -// -// The JSON representation for `UInt32Value` is JSON number. -message UInt32Value { - // The uint32 value. - uint32 value = 1; -} - -// Wrapper message for `bool`. -// -// The JSON representation for `BoolValue` is JSON `true` and `false`. -message BoolValue { - // The bool value. - bool value = 1; -} - -// Wrapper message for `string`. -// -// The JSON representation for `StringValue` is JSON string. -message StringValue { - // The string value. - string value = 1; -} - -// Wrapper message for `bytes`. -// -// The JSON representation for `BytesValue` is JSON string. -message BytesValue { - // The bytes value. - bytes value = 1; -} \ No newline at end of file diff --git a/pkg/rpcclient/auth.go b/pkg/rpcclient/auth.go index aa13ed898..9d667f1ad 100644 --- a/pkg/rpcclient/auth.go +++ b/pkg/rpcclient/auth.go @@ -19,9 +19,9 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth" + "github.com/OpenIMSDK/protocol/auth" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" ) func NewAuth(discov discoveryregistry.SvcDiscoveryRegistry) *Auth { diff --git a/pkg/rpcclient/conversation.go b/pkg/rpcclient/conversation.go index 71867620d..d4116e9f9 100644 --- a/pkg/rpcclient/conversation.go +++ b/pkg/rpcclient/conversation.go @@ -20,10 +20,10 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" + pbConversation "github.com/OpenIMSDK/protocol/conversation" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" ) type Conversation struct { diff --git a/pkg/rpcclient/friend.go b/pkg/rpcclient/friend.go index 5a8ac0633..c27f4ef3f 100644 --- a/pkg/rpcclient/friend.go +++ b/pkg/rpcclient/friend.go @@ -19,10 +19,10 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" + "github.com/OpenIMSDK/protocol/friend" + sdkws "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" ) type Friend struct { diff --git a/pkg/rpcclient/group.go b/pkg/rpcclient/group.go index 06333234f..ce624a085 100644 --- a/pkg/rpcclient/group.go +++ b/pkg/rpcclient/group.go @@ -20,13 +20,13 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/utils" ) type Group struct { diff --git a/pkg/rpcclient/msg.go b/pkg/rpcclient/msg.go index a012a5a5f..bfc7bf73f 100644 --- a/pkg/rpcclient/msg.go +++ b/pkg/rpcclient/msg.go @@ -21,13 +21,13 @@ import ( "google.golang.org/grpc" "google.golang.org/protobuf/proto" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/msg" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/utils" // "google.golang.org/protobuf/proto". ) diff --git a/pkg/rpcclient/notification/conevrsation.go b/pkg/rpcclient/notification/conevrsation.go index d2995df3d..ac40eb887 100644 --- a/pkg/rpcclient/notification/conevrsation.go +++ b/pkg/rpcclient/notification/conevrsation.go @@ -17,9 +17,9 @@ package notification import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" ) type ConversationNotificationSender struct { diff --git a/pkg/rpcclient/notification/friend.go b/pkg/rpcclient/notification/friend.go index e7df2e6cd..05c2b1e6f 100644 --- a/pkg/rpcclient/notification/friend.go +++ b/pkg/rpcclient/notification/friend.go @@ -17,15 +17,15 @@ package notification import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" + "github.com/OpenIMSDK/tools/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/convert" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - pbFriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + pbFriend "github.com/OpenIMSDK/protocol/friend" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" ) type FriendNotificationSender struct { diff --git a/pkg/rpcclient/notification/group.go b/pkg/rpcclient/notification/group.go index 22aa694c7..e70bf38e1 100644 --- a/pkg/rpcclient/notification/group.go +++ b/pkg/rpcclient/notification/group.go @@ -18,16 +18,16 @@ import ( "context" "fmt" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + pbGroup "github.com/OpenIMSDK/protocol/group" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/log" + "github.com/OpenIMSDK/tools/mcontext" + "github.com/OpenIMSDK/tools/utils" ) func NewGroupNotificationSender( diff --git a/pkg/rpcclient/notification/msg.go b/pkg/rpcclient/notification/msg.go index bcc6865b1..f9cf68bcb 100644 --- a/pkg/rpcclient/notification/msg.go +++ b/pkg/rpcclient/notification/msg.go @@ -17,9 +17,9 @@ package notification import ( "context" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/tools/constant" ) type MsgNotificationSender struct { diff --git a/pkg/rpcclient/push.go b/pkg/rpcclient/push.go index 8e19782bd..a4b122a29 100644 --- a/pkg/rpcclient/push.go +++ b/pkg/rpcclient/push.go @@ -19,9 +19,9 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push" + "github.com/OpenIMSDK/protocol/push" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" ) type Push struct { diff --git a/pkg/rpcclient/third.go b/pkg/rpcclient/third.go index e1181b8f4..9822f48fa 100644 --- a/pkg/rpcclient/third.go +++ b/pkg/rpcclient/third.go @@ -23,9 +23,9 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/third" + "github.com/OpenIMSDK/protocol/third" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" ) type Third struct { diff --git a/pkg/rpcclient/user.go b/pkg/rpcclient/user.go index 023c26d3c..7e5079f8c 100644 --- a/pkg/rpcclient/user.go +++ b/pkg/rpcclient/user.go @@ -20,13 +20,13 @@ import ( "google.golang.org/grpc" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/user" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" + "github.com/OpenIMSDK/protocol/sdkws" + "github.com/OpenIMSDK/protocol/user" + "github.com/OpenIMSDK/tools/config" + "github.com/OpenIMSDK/tools/discoveryregistry" + "github.com/OpenIMSDK/tools/errs" + "github.com/OpenIMSDK/tools/tokenverify" + "github.com/OpenIMSDK/tools/utils" ) type User struct { diff --git a/pkg/startrpc/start.go b/pkg/startrpc/start.go deleted file mode 100644 index 3eeaaa3a2..000000000 --- a/pkg/startrpc/start.go +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package startrpc - -import ( - "fmt" - "net" - "strconv" - "time" - - grpcPrometheus "github.com/grpc-ecosystem/go-grpc-prometheus" - "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mw" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/network" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" - openKeeper "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry/zookeeper" - "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" -) - -func Start( - rpcPort int, - rpcRegisterName string, - prometheusPort int, - rpcFn func(client discoveryregistry.SvcDiscoveryRegistry, server *grpc.Server) error, - options ...grpc.ServerOption, -) error { - fmt.Println( - "start", - rpcRegisterName, - "server, port: ", - rpcPort, - "prometheusPort:", - prometheusPort, - ", OpenIM version: ", - config.Version, - ) - listener, err := net.Listen( - "tcp", - net.JoinHostPort(network.GetListenIP(config.Config.Rpc.ListenIP), strconv.Itoa(rpcPort)), - ) - if err != nil { - return err - } - defer listener.Close() - zkClient, err := openKeeper.NewClient(config.Config.Zookeeper.ZkAddr, config.Config.Zookeeper.Schema, - openKeeper.WithFreq(time.Hour), openKeeper.WithUserNameAndPassword( - config.Config.Zookeeper.Username, - config.Config.Zookeeper.Password, - ), openKeeper.WithRoundRobin(), openKeeper.WithTimeout(10), openKeeper.WithLogger(log.NewZkLogger())) - if err != nil { - return utils.Wrap1(err) - } - defer zkClient.CloseZK() - zkClient.AddOption(mw.GrpcClient(), grpc.WithTransportCredentials(insecure.NewCredentials())) - registerIP, err := network.GetRpcRegisterIP(config.Config.Rpc.RegisterIP) - if err != nil { - return err - } - // ctx 中间件 - if config.Config.Prometheus.Enable { - prome.NewGrpcRequestCounter() - prome.NewGrpcRequestFailedCounter() - prome.NewGrpcRequestSuccessCounter() - unaryInterceptor := mw.InterceptChain(grpcPrometheus.UnaryServerInterceptor, mw.RpcServerInterceptor) - options = append(options, []grpc.ServerOption{ - grpc.StreamInterceptor(grpcPrometheus.StreamServerInterceptor), - grpc.UnaryInterceptor(unaryInterceptor), - }...) - } else { - options = append(options, mw.GrpcServer()) - } - srv := grpc.NewServer(options...) - defer srv.GracefulStop() - err = rpcFn(zkClient, srv) - if err != nil { - return utils.Wrap1(err) - } - err = zkClient.Register( - rpcRegisterName, - registerIP, - rpcPort, - grpc.WithTransportCredentials(insecure.NewCredentials()), - ) - if err != nil { - return utils.Wrap1(err) - } - go func() { - if config.Config.Prometheus.Enable && prometheusPort != 0 { - if err := prome.StartPrometheusSrv(prometheusPort); err != nil { - panic(err.Error()) - } - } - }() - return utils.Wrap1(srv.Serve(listener)) -} diff --git a/pkg/statistics/statistics.go b/pkg/statistics/statistics.go index 2a6ae01ae..de6d04fec 100644 --- a/pkg/statistics/statistics.go +++ b/pkg/statistics/statistics.go @@ -18,7 +18,7 @@ import ( "context" "time" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/tools/log" ) type Statistics struct { diff --git a/pkg/utils/base64.go b/pkg/utils/base64.go deleted file mode 100644 index 9502dcde8..000000000 --- a/pkg/utils/base64.go +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import "encoding/base64" - -func Base64Encode(data string) string { - return base64.StdEncoding.EncodeToString([]byte(data)) -} - -func Base64Decode(data string) string { - decodedByte, _ := base64.StdEncoding.DecodeString(data) - return string(decodedByte) -} diff --git a/pkg/utils/callback.go b/pkg/utils/callback.go deleted file mode 100644 index 7eed52409..000000000 --- a/pkg/utils/callback.go +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "google.golang.org/protobuf/proto" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" -) - -func GetContent(msg *sdkws.MsgData) string { - if msg.ContentType >= constant.NotificationBegin && msg.ContentType <= constant.NotificationEnd { - var tips sdkws.TipsComm - _ = proto.Unmarshal(msg.Content, &tips) - content := tips.JsonDetail - return content - } else { - return string(msg.Content) - } -} diff --git a/pkg/utils/encryption.go b/pkg/utils/encryption.go deleted file mode 100644 index 23266d8f7..000000000 --- a/pkg/utils/encryption.go +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "bytes" - "crypto/aes" - "crypto/cipher" - "crypto/md5" - "encoding/hex" - "errors" -) - -func Md5(s string, salt ...string) string { - h := md5.New() - h.Write([]byte(s)) - if len(salt) > 0 { - h.Write([]byte(salt[0])) - } - cipher := h.Sum(nil) - return hex.EncodeToString(cipher) -} - -func AesEncrypt(data []byte, key []byte) ([]byte, error) { - block, err := aes.NewCipher(key) - if err != nil { - return nil, err - } - blockSize := block.BlockSize() - encryptBytes := pkcs7Padding(data, blockSize) - crypted := make([]byte, len(encryptBytes)) - blockMode := cipher.NewCBCEncrypter(block, key[:blockSize]) - blockMode.CryptBlocks(crypted, encryptBytes) - return crypted, nil -} - -func AesDecrypt(data []byte, key []byte) ([]byte, error) { - block, err := aes.NewCipher(key) - if err != nil { - return nil, err - } - blockSize := block.BlockSize() - blockMode := cipher.NewCBCDecrypter(block, key[:blockSize]) - crypted := make([]byte, len(data)) - blockMode.CryptBlocks(crypted, data) - crypted, err = pkcs7UnPadding(crypted) - if err != nil { - return nil, err - } - return crypted, nil -} - -func pkcs7Padding(data []byte, blockSize int) []byte { - padding := blockSize - len(data)%blockSize - padText := bytes.Repeat([]byte{byte(padding)}, padding) - return append(data, padText...) -} - -func pkcs7UnPadding(data []byte) ([]byte, error) { - length := len(data) - if length == 0 { - return nil, errors.New("encrypt error") - } - unPadding := int(data[length-1]) - return data[:(length - unPadding)], nil -} diff --git a/pkg/utils/file.go b/pkg/utils/file.go deleted file mode 100644 index 79528661d..000000000 --- a/pkg/utils/file.go +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "fmt" - "math/rand" - "os" - "path" - "strconv" - "strings" - "time" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" -) - -const ( - BYTE = 1 << (10 * iota) - KILOBYTE - MEGABYTE - GIGABYTE - TERABYTE - PETABYTE - EXABYTE -) - -// Determine whether the given path is a folder -func IsDir(path string) bool { - s, err := os.Stat(path) - if err != nil { - return false - } - return s.IsDir() -} - -// Determine whether the given path is a file -func IsFile(path string) bool { - return !IsDir(path) -} - -// Create a directory -func MkDir(path string) error { - return os.MkdirAll(path, os.ModePerm) -} - -func GetNewFileNameAndContentType(fileName string, fileType int) (string, string) { - suffix := path.Ext(fileName) - newName := fmt.Sprintf("%d-%d%s", time.Now().UnixNano(), rand.Int(), fileName) - contentType := "" - if fileType == constant.ImageType { - contentType = "image/" + suffix[1:] - } - return newName, contentType -} - -func ByteSize(bytes uint64) string { - unit := "" - value := float64(bytes) - switch { - case bytes >= EXABYTE: - unit = "E" - value = value / EXABYTE - case bytes >= PETABYTE: - unit = "P" - value = value / PETABYTE - case bytes >= TERABYTE: - unit = "T" - value = value / TERABYTE - case bytes >= GIGABYTE: - unit = "G" - value = value / GIGABYTE - case bytes >= MEGABYTE: - unit = "M" - value = value / MEGABYTE - case bytes >= KILOBYTE: - unit = "K" - value = value / KILOBYTE - case bytes >= BYTE: - unit = "B" - case bytes == 0: - return "0" - } - result := strconv.FormatFloat(value, 'f', 1, 64) - result = strings.TrimSuffix(result, ".0") - return result + unit -} diff --git a/pkg/utils/get_server_ip.go b/pkg/utils/get_server_ip.go deleted file mode 100644 index aad0bf2cc..000000000 --- a/pkg/utils/get_server_ip.go +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "errors" - "net" -) - -var ServerIP = "" - -func GetLocalIP() (string, error) { - addrs, err := net.InterfaceAddrs() - if err != nil { - return "", err - } - for _, address := range addrs { - - if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() { - if ipnet.IP.To4() != nil { - return ipnet.IP.String(), nil - } - } - } - - return "", errors.New("no ip") -} diff --git a/pkg/utils/id.go b/pkg/utils/id.go deleted file mode 100644 index 25e942f36..000000000 --- a/pkg/utils/id.go +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "github.com/bwmarrin/snowflake" -) - -func init() { - var err error - idGenerator, err = snowflake.NewNode(getNodeNum()) - if err != nil { - panic(err) - } -} - -func getNodeNum() int64 { - return 1 -} - -var idGenerator *snowflake.Node - -func GenID() string { - return idGenerator.Generate().String() -} - -func GenIDs(count int) []string { - //impl - return []string{} -} diff --git a/pkg/utils/id_test.go b/pkg/utils/id_test.go deleted file mode 100644 index d6ab3e665..000000000 --- a/pkg/utils/id_test.go +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import "testing" - -func TestGenID(t *testing.T) { - m := map[string]struct{}{} - for i := 0; i < 2000; i++ { - got := GenID() - if _, ok := m[got]; !ok { - m[got] = struct{}{} - } else { - t.Error("id generate error", got) - } - } -} diff --git a/pkg/utils/image.go b/pkg/utils/image.go deleted file mode 100644 index f93591f9e..000000000 --- a/pkg/utils/image.go +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "errors" - "image" - "image/gif" - "image/jpeg" - "image/png" - "io" - "os" - - "github.com/nfnt/resize" - "golang.org/x/image/bmp" -) - -func GenSmallImage(src, dst string) error { - fIn, _ := os.Open(src) - defer fIn.Close() - - fOut, _ := os.Create(dst) - defer fOut.Close() - - if err := scale(fIn, fOut, 0, 0, 0); err != nil { - return err - } - return nil -} - -func scale(in io.Reader, out io.Writer, width, height, quality int) error { - origin, fm, err := image.Decode(in) - if err != nil { - return err - } - if width == 0 || height == 0 { - width = origin.Bounds().Max.X / 2 - height = origin.Bounds().Max.Y / 2 - } - if quality == 0 { - quality = 25 - } - canvas := resize.Thumbnail(uint(width), uint(height), origin, resize.Lanczos3) - - switch fm { - case "jpeg": - return jpeg.Encode(out, canvas, &jpeg.Options{quality}) - case "png": - return png.Encode(out, canvas) - case "gif": - return gif.Encode(out, canvas, &gif.Options{}) - case "bmp": - return bmp.Encode(out, canvas) - default: - return errors.New("ERROR FORMAT") - } -} diff --git a/pkg/utils/image_test.go b/pkg/utils/image_test.go deleted file mode 100644 index 87d78620f..000000000 --- a/pkg/utils/image_test.go +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "path/filepath" - "runtime" - "testing" - - "github.com/stretchr/testify/assert" -) - -var ( - _, b, _, _ = runtime.Caller(0) - // Root folder of this project - Root = filepath.Join(filepath.Dir(b), "../..") -) - -func Test_GenSmallImage(t *testing.T) { - println(Root) - err := GenSmallImage(Root+"/docs/open-im-logo.png", Root+"/out-test/open-im-logo-test.png") - assert.Nil(t, err) - - err = GenSmallImage(Root+"/docs/open-im-logo.png", "out-test/open-im-logo-test.png") - assert.Nil(t, err) - - err = GenSmallImage(Root+"/docs/Architecture.jpg", "out-test/Architecture-test.jpg") - assert.Nil(t, err) -} diff --git a/pkg/utils/map.go b/pkg/utils/map.go deleted file mode 100644 index cd7f3f1de..000000000 --- a/pkg/utils/map.go +++ /dev/null @@ -1,147 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "encoding/json" - "sync" -) - -type Map struct { - sync.RWMutex - m map[interface{}]interface{} -} - -func (m *Map) init() { - if m.m == nil { - m.m = make(map[interface{}]interface{}) - } -} - -func (m *Map) UnsafeGet(key interface{}) interface{} { - if m.m == nil { - return nil - } else { - return m.m[key] - } -} - -func (m *Map) Get(key interface{}) interface{} { - m.RLock() - defer m.RUnlock() - return m.UnsafeGet(key) -} - -func (m *Map) UnsafeSet(key interface{}, value interface{}) { - m.init() - m.m[key] = value -} - -func (m *Map) Set(key interface{}, value interface{}) { - m.Lock() - defer m.Unlock() - m.UnsafeSet(key, value) -} - -func (m *Map) TestAndSet(key interface{}, value interface{}) interface{} { - m.Lock() - defer m.Unlock() - - m.init() - - if v, ok := m.m[key]; ok { - return v - } else { - m.m[key] = value - return nil - } -} - -func (m *Map) UnsafeDel(key interface{}) { - m.init() - delete(m.m, key) -} - -func (m *Map) Del(key interface{}) { - m.Lock() - defer m.Unlock() - m.UnsafeDel(key) -} - -func (m *Map) UnsafeLen() int { - if m.m == nil { - return 0 - } else { - return len(m.m) - } -} - -func (m *Map) Len() int { - m.RLock() - defer m.RUnlock() - return m.UnsafeLen() -} - -func (m *Map) UnsafeRange(f func(interface{}, interface{})) { - if m.m == nil { - return - } - for k, v := range m.m { - f(k, v) - } -} - -func (m *Map) RLockRange(f func(interface{}, interface{})) { - m.RLock() - defer m.RUnlock() - m.UnsafeRange(f) -} - -func (m *Map) LockRange(f func(interface{}, interface{})) { - m.Lock() - defer m.Unlock() - m.UnsafeRange(f) -} - -func MapToJsonString(param map[string]interface{}) string { - dataType, _ := json.Marshal(param) - dataString := string(dataType) - return dataString -} -func MapIntToJsonString(param map[string]int32) string { - dataType, _ := json.Marshal(param) - dataString := string(dataType) - return dataString -} -func JsonStringToMap(str string) (tempMap map[string]int32) { - _ = json.Unmarshal([]byte(str), &tempMap) - return tempMap -} -func GetSwitchFromOptions(Options map[string]bool, key string) (result bool) { - if Options == nil { - return true - } - if flag, ok := Options[key]; !ok || flag { - return true - } - return false -} - -func SetSwitchFromOptions(options map[string]bool, key string, value bool) { - if options == nil { - options = make(map[string]bool, 5) - } - options[key] = value -} diff --git a/pkg/utils/md5_test.go b/pkg/utils/md5_test.go deleted file mode 100644 index 1add67f32..000000000 --- a/pkg/utils/md5_test.go +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "testing" - - "github.com/stretchr/testify/assert" -) - -func Test_Md5(t *testing.T) { - result := Md5("go") - assert.Equal(t, result, "34d1f91fb2e514b8576fab1a75a89a6b") - - result2 := Md5("go") - assert.Equal(t, result, result2) -} diff --git a/pkg/utils/options.go b/pkg/utils/options.go deleted file mode 100644 index 0ade70dfe..000000000 --- a/pkg/utils/options.go +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - -type Options map[string]bool -type OptionsOpt func(Options) - -func NewOptions(opts ...OptionsOpt) Options { - options := make(map[string]bool, 11) - options[constant.IsNotNotification] = false - options[constant.IsSendMsg] = false - options[constant.IsHistory] = false - options[constant.IsPersistent] = false - options[constant.IsOfflinePush] = false - options[constant.IsUnreadCount] = false - options[constant.IsConversationUpdate] = false - options[constant.IsSenderSync] = false - options[constant.IsNotPrivate] = false - options[constant.IsSenderConversationUpdate] = false - options[constant.IsSenderNotificationPush] = false - options[constant.IsReactionFromCache] = false - for _, opt := range opts { - opt(options) - } - return options -} - -func NewMsgOptions() Options { - options := make(map[string]bool, 11) - options[constant.IsOfflinePush] = false - return make(map[string]bool) -} - -func WithOptions(options Options, opts ...OptionsOpt) Options { - for _, opt := range opts { - opt(options) - } - return options -} - -func WithNotNotification(b bool) OptionsOpt { - return func(options Options) { - options[constant.IsNotNotification] = b - } -} - -func WithSendMsg(b bool) OptionsOpt { - return func(options Options) { - options[constant.IsSendMsg] = b - } -} - -func WithHistory(b bool) OptionsOpt { - return func(options Options) { - options[constant.IsHistory] = b - } -} - -func WithPersistent() OptionsOpt { - return func(options Options) { - options[constant.IsPersistent] = true - } -} - -func WithOfflinePush(b bool) OptionsOpt { - return func(options Options) { - options[constant.IsOfflinePush] = b - } -} - -func WithUnreadCount(b bool) OptionsOpt { - return func(options Options) { - options[constant.IsUnreadCount] = b - } -} - -func WithConversationUpdate() OptionsOpt { - return func(options Options) { - options[constant.IsConversationUpdate] = true - } -} - -func WithSenderSync() OptionsOpt { - return func(options Options) { - options[constant.IsSenderSync] = true - } -} - -func WithNotPrivate() OptionsOpt { - return func(options Options) { - options[constant.IsNotPrivate] = true - } -} - -func WithSenderConversationUpdate() OptionsOpt { - return func(options Options) { - options[constant.IsSenderConversationUpdate] = true - } -} - -func WithSenderNotificationPush() OptionsOpt { - return func(options Options) { - options[constant.IsSenderNotificationPush] = true - } -} - -func WithReactionFromCache() OptionsOpt { - return func(options Options) { - options[constant.IsReactionFromCache] = true - } -} - -func (o Options) Is(notification string) bool { - v, ok := o[notification] - if !ok || v { - return true - } - return false -} - -func (o Options) IsNotNotification() bool { - return o.Is(constant.IsNotNotification) -} - -func (o Options) IsSendMsg() bool { - return o.Is(constant.IsSendMsg) -} - -func (o Options) IsHistory() bool { - return o.Is(constant.IsHistory) -} - -func (o Options) IsPersistent() bool { - return o.Is(constant.IsPersistent) -} - -func (o Options) IsOfflinePush() bool { - return o.Is(constant.IsOfflinePush) -} - -func (o Options) IsUnreadCount() bool { - return o.Is(constant.IsUnreadCount) -} - -func (o Options) IsConversationUpdate() bool { - return o.Is(constant.IsConversationUpdate) -} - -func (o Options) IsSenderSync() bool { - return o.Is(constant.IsSenderSync) -} - -func (o Options) IsNotPrivate() bool { - return o.Is(constant.IsNotPrivate) -} - -func (o Options) IsSenderConversationUpdate() bool { - return o.Is(constant.IsSenderConversationUpdate) -} - -func (o Options) IsSenderNotificationPush() bool { - return o.Is(constant.IsSenderNotificationPush) -} - -func (o Options) IsReactionFromCache() bool { - return o.Is(constant.IsReactionFromCache) -} diff --git a/pkg/utils/page.go b/pkg/utils/page.go deleted file mode 100644 index ad19decb0..000000000 --- a/pkg/utils/page.go +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" - -func GetPage(pagination *sdkws.RequestPagination) (pageNumber, showNumber int32) { - if pagination != nil { - return pagination.PageNumber, pagination.ShowNumber - } - return -} diff --git a/pkg/utils/platform_number_id_to_name_test.go b/pkg/utils/platform_number_id_to_name_test.go deleted file mode 100644 index 47c4016ed..000000000 --- a/pkg/utils/platform_number_id_to_name_test.go +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "testing" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - - "github.com/stretchr/testify/assert" -) - -func Test_PlatformIDToName(t *testing.T) { - assert.Equal(t, constant.PlatformIDToName(1), "IOS") - assert.Equal(t, constant.PlatformIDToName(2), "Android") - assert.Equal(t, constant.PlatformIDToName(3), "Windows") - assert.Equal(t, constant.PlatformIDToName(4), "OSX") - assert.Equal(t, constant.PlatformIDToName(5), "Web") - assert.Equal(t, constant.PlatformIDToName(6), "MiniWeb") - assert.Equal(t, constant.PlatformIDToName(7), "Linux") - - assert.Equal(t, constant.PlatformIDToName(0), "") -} - -func Test_PlatformNameToID(t *testing.T) { - assert.Equal(t, constant.PlatformNameToID("IOS"), int32(1)) - assert.Equal(t, constant.PlatformNameToID("Android"), int32(2)) - assert.Equal(t, constant.PlatformNameToID("Windows"), int32(3)) - assert.Equal(t, constant.PlatformNameToID("OSX"), int32(4)) - assert.Equal(t, constant.PlatformNameToID("Web"), int32(5)) - assert.Equal(t, constant.PlatformNameToID("MiniWeb"), int32(6)) - assert.Equal(t, constant.PlatformNameToID("Linux"), int32(7)) - - assert.Equal(t, constant.PlatformNameToID("UnknownDevice"), int32(0)) - assert.Equal(t, constant.PlatformNameToID(""), int32(0)) -} - -func Test_PlatformNameToClass(t *testing.T) { - assert.Equal(t, constant.PlatformNameToClass("IOS"), "Mobile") - assert.Equal(t, constant.PlatformNameToClass("Android"), "Mobile") - assert.Equal(t, constant.PlatformNameToClass("OSX"), "PC") - assert.Equal(t, constant.PlatformNameToClass("Windows"), "PC") - assert.Equal(t, constant.PlatformNameToClass("Web"), "PC") - assert.Equal(t, constant.PlatformNameToClass("MiniWeb"), "Mobile") - assert.Equal(t, constant.PlatformNameToClass("Linux"), "PC") - - assert.Equal(t, constant.PlatformNameToClass("UnknownDevice"), "") - assert.Equal(t, constant.PlatformNameToClass(""), "") -} diff --git a/pkg/utils/retry/retry.go b/pkg/utils/retry/retry.go deleted file mode 100644 index eb2a387cb..000000000 --- a/pkg/utils/retry/retry.go +++ /dev/null @@ -1,198 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package retry - -import ( - "context" - "errors" - "fmt" - "runtime/debug" - "time" -) - -var ( - ErrorAbort = errors.New("stop retry") - ErrorTimeout = errors.New("retry timeout") - ErrorContextDeadlineExceed = errors.New("context deadline exceeded") - ErrorEmptyRetryFunc = errors.New("empty retry function") - ErrorTimeFormat = errors.New("time out err") -) - -type RetriesFunc func() error -type Option func(c *Config) -type HookFunc func() -type RetriesChecker func(err error) (needRetry bool) -type Config struct { - MaxRetryTimes int - Timeout time.Duration - RetryChecker RetriesChecker - Strategy Strategy - RecoverPanic bool - BeforeTry HookFunc - AfterTry HookFunc -} - -var ( - DefaultMaxRetryTimes = 3 - DefaultTimeout = time.Minute - DefaultInterval = time.Second * 2 - DefaultRetryChecker = func(err error) bool { - return !errors.Is(err, ErrorAbort) // not abort error, should continue retry - } -) - -func newDefaultConfig() *Config { - return &Config{ - MaxRetryTimes: DefaultMaxRetryTimes, - RetryChecker: DefaultRetryChecker, - Timeout: DefaultTimeout, - Strategy: NewLinear(DefaultInterval), - BeforeTry: func() {}, - AfterTry: func() {}, - } -} - -func WithTimeout(timeout time.Duration) Option { - return func(c *Config) { - c.Timeout = timeout - } -} - -func WithMaxRetryTimes(times int) Option { - return func(c *Config) { - c.MaxRetryTimes = times - } -} - -func WithRecoverPanic() Option { - return func(c *Config) { - c.RecoverPanic = true - } -} - -func WithBeforeHook(hook HookFunc) Option { - return func(c *Config) { - c.BeforeTry = hook - } -} - -func WithAfterHook(hook HookFunc) Option { - return func(c *Config) { - c.AfterTry = hook - } -} - -func WithRetryChecker(checker RetriesChecker) Option { - return func(c *Config) { - c.RetryChecker = checker - } -} - -func WithBackOffStrategy(s BackoffStrategy, duration time.Duration) Option { - return func(c *Config) { - switch s { - case StrategyConstant: - c.Strategy = NewConstant(duration) - case StrategyLinear: - c.Strategy = NewLinear(duration) - case StrategyFibonacci: - c.Strategy = NewFibonacci(duration) - } - } -} - -func WithCustomStrategy(s Strategy) Option { - return func(c *Config) { - c.Strategy = s - } -} - -func Do(ctx context.Context, fn RetriesFunc, opts ...Option) error { - if fn == nil { - return ErrorEmptyRetryFunc - } - var ( - abort = make(chan struct{}, 1) // caller choose to abort retry - run = make(chan error, 1) - panicInfoChan = make(chan string, 1) - - timer *time.Timer - runErr error - ) - config := newDefaultConfig() - for _, o := range opts { - o(config) - } - if config.Timeout > 0 { - timer = time.NewTimer(config.Timeout) - } else { - return ErrorTimeFormat - } - go func() { - var err error - defer func() { - if e := recover(); e == nil { - return - } else { - panicInfoChan <- fmt.Sprintf("retry function panic has occured, err=%v, stack:%s", e, string(debug.Stack())) - } - }() - for i := 0; i < config.MaxRetryTimes; i++ { - config.BeforeTry() - err = fn() - config.AfterTry() - if err == nil { - run <- nil - return - } - // check whether to retry - if config.RetryChecker != nil { - needRetry := config.RetryChecker(err) - if !needRetry { - abort <- struct{}{} - return - } - } - if config.Strategy != nil { - interval := config.Strategy.Sleep(i + 1) - <-time.After(interval) - } - } - run <- err - }() - select { - case <-ctx.Done(): - // context deadline exceed - return ErrorContextDeadlineExceed - case <-timer.C: - // timeout - return ErrorTimeout - case <-abort: - // caller abort - return ErrorAbort - case msg := <-panicInfoChan: - // panic occurred - if !config.RecoverPanic { - panic(msg) - } - runErr = fmt.Errorf("panic occurred=%s", msg) - case e := <-run: - // normal run - if e != nil { - runErr = fmt.Errorf("retry failed, err=%w", e) - } - } - return runErr -} diff --git a/pkg/utils/retry/stratey.go b/pkg/utils/retry/stratey.go deleted file mode 100644 index 8dca54161..000000000 --- a/pkg/utils/retry/stratey.go +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package retry - -import "time" - -type BackoffStrategy int - -const ( - StrategyConstant BackoffStrategy = iota - StrategyLinear - StrategyFibonacci -) - -type Strategy interface { - Sleep(times int) time.Duration -} -type Constant struct { - startInterval time.Duration -} - -func NewConstant(d time.Duration) *Constant { - return &Constant{startInterval: d} -} - -type Linear struct { - startInterval time.Duration -} - -func NewLinear(d time.Duration) *Linear { - return &Linear{startInterval: d} -} - -type Fibonacci struct { - startInterval time.Duration -} - -func NewFibonacci(d time.Duration) *Fibonacci { - return &Fibonacci{startInterval: d} -} - -func (c *Constant) Sleep(_ int) time.Duration { - return c.startInterval -} -func (l *Linear) Sleep(times int) time.Duration { - return l.startInterval * time.Duration(times) - -} -func (f *Fibonacci) Sleep(times int) time.Duration { - return f.startInterval * time.Duration(fibonacciNumber(times)) - -} -func fibonacciNumber(n int) int { - if n == 0 || n == 1 { - return n - } - return fibonacciNumber(n-1) + fibonacciNumber(n-2) -} diff --git a/pkg/utils/splitter/tools.go b/pkg/utils/splitter/tools.go deleted file mode 100644 index d36b9c3be..000000000 --- a/pkg/utils/splitter/tools.go +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package splitter - -type SplitResult struct { - Item []string -} -type Splitter struct { - splitCount int - data []string -} - -func NewSplitter(splitCount int, data []string) *Splitter { - return &Splitter{splitCount: splitCount, data: data} -} -func (s *Splitter) GetSplitResult() (result []*SplitResult) { - remain := len(s.data) % s.splitCount - integer := len(s.data) / s.splitCount - for i := 0; i < integer; i++ { - r := new(SplitResult) - r.Item = s.data[i*s.splitCount : (i+1)*s.splitCount] - result = append(result, r) - } - if remain > 0 { - r := new(SplitResult) - r.Item = s.data[integer*s.splitCount:] - result = append(result, r) - } - return result -} diff --git a/pkg/utils/strings.go b/pkg/utils/strings.go deleted file mode 100644 index 641c43e9f..000000000 --- a/pkg/utils/strings.go +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "encoding/json" - "math/rand" - "strconv" -) - -func IntToString(i int) string { - return strconv.FormatInt(int64(i), 10) -} - -func StringToInt(i string) int { - j, _ := strconv.Atoi(i) - return j -} -func StringToInt64(i string) int64 { - j, _ := strconv.ParseInt(i, 10, 64) - return j -} -func StringToInt32(i string) int32 { - j, _ := strconv.ParseInt(i, 10, 64) - return int32(j) -} -func Int32ToString(i int32) string { - return strconv.FormatInt(int64(i), 10) -} - -func Uint32ToString(i uint32) string { - return strconv.FormatInt(int64(i), 10) -} - -// judge a string whether in the string list -func IsContain(target string, List []string) bool { - for _, element := range List { - - if target == element { - return true - } - } - return false -} -func IsContainInt32(target int32, List []int32) bool { - for _, element := range List { - if target == element { - return true - } - } - return false -} -func IsContainInt(target int, List []int) bool { - for _, element := range List { - if target == element { - return true - } - } - return false -} -func InterfaceArrayToStringArray(data []interface{}) (i []string) { - for _, param := range data { - i = append(i, param.(string)) - } - return i -} -func StructToJsonString(param interface{}) string { - dataType, _ := json.Marshal(param) - dataString := string(dataType) - return dataString -} - -func StructToJsonBytes(param interface{}) []byte { - dataType, _ := json.Marshal(param) - return dataType -} - -// The incoming parameter must be a pointer -func JsonStringToStruct(s string, args interface{}) error { - err := json.Unmarshal([]byte(s), args) - return err -} - -func GetMsgID(sendID string) string { - t := int64ToString(GetCurrentTimestampByNano()) - return Md5(t + sendID + int64ToString(rand.Int63n(GetCurrentTimestampByNano()))) -} - -func int64ToString(i int64) string { - return strconv.FormatInt(i, 10) -} -func Int64ToString(i int64) string { - return strconv.FormatInt(i, 10) -} - -func RemoveDuplicateElement(idList []string) []string { - result := make([]string, 0, len(idList)) - temp := map[string]struct{}{} - for _, item := range idList { - if _, ok := temp[item]; !ok { - temp[item] = struct{}{} - result = append(result, item) - } - } - return result -} - -func RemoveDuplicate[T comparable](arr []T) []T { - result := make([]T, 0, len(arr)) - temp := map[T]struct{}{} - for _, item := range arr { - if _, ok := temp[item]; !ok { - temp[item] = struct{}{} - result = append(result, item) - } - } - return result -} - -func IsDuplicateStringSlice(arr []string) bool { - t := make(map[string]struct{}) - for _, s := range arr { - if _, ok := t[s]; ok { - return true - } - t[s] = struct{}{} - } - return false -} diff --git a/pkg/utils/time_format.go b/pkg/utils/time_format.go deleted file mode 100644 index 9278a58ef..000000000 --- a/pkg/utils/time_format.go +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "strconv" - "time" -) - -const ( - TimeOffset = 8 * 3600 //8 hour offset - HalfOffset = 12 * 3600 //Half-day hourly offset -) - -// Get the current timestamp by Second -func GetCurrentTimestampBySecond() int64 { - return time.Now().Unix() -} - -// Convert timestamp to time.Time type -func UnixSecondToTime(second int64) time.Time { - return time.Unix(second, 0) -} - -// Convert nano timestamp to time.Time type -func UnixNanoSecondToTime(nanoSecond int64) time.Time { - return time.Unix(0, nanoSecond) -} -func UnixMillSecondToTime(millSecond int64) time.Time { - return time.Unix(0, millSecond*1e6) -} - -// Get the current timestamp by Nano -func GetCurrentTimestampByNano() int64 { - return time.Now().UnixNano() -} - -// Get the current timestamp by Mill -func GetCurrentTimestampByMill() int64 { - return time.Now().UnixNano() / 1e6 -} - -// Get the timestamp at 0 o'clock of the day -func GetCurDayZeroTimestamp() int64 { - timeStr := time.Now().Format("2006-01-02") - t, _ := time.Parse("2006-01-02", timeStr) - return t.Unix() - TimeOffset -} - -// Get the timestamp at 12 o'clock on the day -func GetCurDayHalfTimestamp() int64 { - return GetCurDayZeroTimestamp() + HalfOffset - -} - -// Get the formatted time at 0 o'clock of the day, the format is "2006-01-02_00-00-00" -func GetCurDayZeroTimeFormat() string { - return time.Unix(GetCurDayZeroTimestamp(), 0).Format("2006-01-02_15-04-05") -} - -// Get the formatted time at 12 o'clock of the day, the format is "2006-01-02_12-00-00" -func GetCurDayHalfTimeFormat() string { - return time.Unix(GetCurDayZeroTimestamp()+HalfOffset, 0).Format("2006-01-02_15-04-05") -} -func GetTimeStampByFormat(datetime string) string { - timeLayout := "2006-01-02 15:04:05" - loc, _ := time.LoadLocation("Local") - tmp, _ := time.ParseInLocation(timeLayout, datetime, loc) - timestamp := tmp.Unix() - return strconv.FormatInt(timestamp, 10) -} - -func TimeStringFormatTimeUnix(timeFormat string, timeSrc string) int64 { - tm, _ := time.Parse(timeFormat, timeSrc) - return tm.Unix() -} - -func TimeStringToTime(timeString string) (time.Time, error) { - t, err := time.Parse("2006-01-02", timeString) - return t, err -} - -func TimeToString(t time.Time) string { - return t.Format("2006-01-02") -} diff --git a/pkg/utils/utils.go b/pkg/utils/utils.go deleted file mode 100644 index 2662e0a61..000000000 --- a/pkg/utils/utils.go +++ /dev/null @@ -1,393 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "hash/crc32" - "math/rand" - "runtime" - "sort" - "strconv" - "strings" - "time" - - "github.com/jinzhu/copier" - "github.com/pkg/errors" - "google.golang.org/protobuf/proto" - - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" - sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" -) - -// copy a by b b->a -func CopyStructFields(a interface{}, b interface{}, fields ...string) (err error) { - return copier.Copy(a, b) -} - -func Wrap1(err error) error { - return errors.Wrap(err, "==> "+printCallerNameAndLine()) -} - -func Wrap2[T any](a T, err error) (T, error) { - if err != nil { - return a, errors.Wrap(err, "==> "+printCallerNameAndLine()) - } - return a, nil -} - -func Wrap3[T any, V any](a T, b V, err error) (T, V, error) { - if err != nil { - return a, b, errors.Wrap(err, "==> "+printCallerNameAndLine()) - } - return a, b, nil -} - -func Wrap(err error, message string) error { - return errors.Wrap(err, "==> "+printCallerNameAndLine()+message) -} - -func WithMessage(err error, message string) error { - return errors.WithMessage(err, "==> "+printCallerNameAndLine()+message) -} - -func printCallerNameAndLine() string { - pc, _, line, _ := runtime.Caller(2) - return runtime.FuncForPC(pc).Name() + "()@" + strconv.Itoa(line) + ": " -} - -func GetSelfFuncName() string { - pc, _, _, _ := runtime.Caller(1) - return cleanUpFuncName(runtime.FuncForPC(pc).Name()) -} - -func GetFuncName(skips ...int) string { - skip := 1 - if len(skips) > 0 { - skip = skips[0] + 1 - } - pc, _, _, _ := runtime.Caller(skip) - return cleanUpFuncName(runtime.FuncForPC(pc).Name()) -} - -func cleanUpFuncName(funcName string) string { - end := strings.LastIndex(funcName, ".") - if end == -1 { - return "" - } - return funcName[end+1:] -} - -// Get the intersection of two slices -func Intersect(slice1, slice2 []int64) []int64 { - m := make(map[int64]bool) - n := make([]int64, 0) - for _, v := range slice1 { - m[v] = true - } - for _, v := range slice2 { - flag, _ := m[v] - if flag { - n = append(n, v) - } - } - return n -} - -// Get the diff of two slices -func Difference(slice1, slice2 []int64) []int64 { - m := make(map[int64]bool) - n := make([]int64, 0) - inter := Intersect(slice1, slice2) - for _, v := range inter { - m[v] = true - } - for _, v := range slice1 { - if !m[v] { - n = append(n, v) - } - } - - for _, v := range slice2 { - if !m[v] { - n = append(n, v) - } - } - return n -} - -// Get the intersection of two slices -func IntersectString(slice1, slice2 []string) []string { - m := make(map[string]bool) - n := make([]string, 0) - for _, v := range slice1 { - m[v] = true - } - for _, v := range slice2 { - flag, _ := m[v] - if flag { - n = append(n, v) - } - } - return n -} - -// Get the diff of two slices -func DifferenceString(slice1, slice2 []string) []string { - m := make(map[string]bool) - n := make([]string, 0) - inter := IntersectString(slice1, slice2) - for _, v := range inter { - m[v] = true - } - for _, v := range slice1 { - if !m[v] { - n = append(n, v) - } - } - - for _, v := range slice2 { - if !m[v] { - n = append(n, v) - } - } - return n -} - -func OperationIDGenerator() string { - return strconv.FormatInt(time.Now().UnixNano()+int64(rand.Uint32()), 10) -} - -func Pb2String(pb proto.Message) (string, error) { - s, err := proto.Marshal(pb) - if err != nil { - return "", err - } - return string(s), nil -} - -func String2Pb(s string, pb proto.Message) error { - return proto.Unmarshal([]byte(s), pb) -} - -func GetHashCode(s string) uint32 { - return crc32.ChecksumIEEE([]byte(s)) -} - -func GetNotificationConversationID(msg *sdkws.MsgData) string { - switch msg.SessionType { - case constant.SingleChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - return "n_" + strings.Join(l, "_") - case constant.GroupChatType: - return "n_" + msg.GroupID - case constant.SuperGroupChatType: - return "n_" + msg.GroupID - case constant.NotificationChatType: - return "n_" + msg.SendID + "_" + msg.RecvID - } - return "" -} - -func GetChatConversationIDByMsg(msg *sdkws.MsgData) string { - switch msg.SessionType { - case constant.SingleChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - return "si_" + strings.Join(l, "_") - case constant.GroupChatType: - return "g_" + msg.GroupID - case constant.SuperGroupChatType: - return "sg_" + msg.GroupID - case constant.NotificationChatType: - return "sn_" + msg.SendID + "_" + msg.RecvID - } - return "" -} - -func GenConversationIDForSingle(sendID, recvID string) string { - l := []string{sendID, recvID} - sort.Strings(l) - return "si_" + strings.Join(l, "_") -} - -func GenConversationUniqueKeyForGroup(groupID string) string { - return groupID -} - -func GenGroupConversationID(groupID string) string { - return "sg_" + groupID -} - -func GenConversationUniqueKeyForSingle(sendID, recvID string) string { - l := []string{sendID, recvID} - sort.Strings(l) - return strings.Join(l, "_") -} - -func GenConversationUniqueKey(msg *sdkws.MsgData) string { - switch msg.SessionType { - case constant.SingleChatType, constant.NotificationChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - return strings.Join(l, "_") - case constant.SuperGroupChatType: - return msg.GroupID - } - return "" -} - -func GetConversationIDByMsgModel(msg *unrelation.MsgDataModel) string { - options := Options(msg.Options) - switch msg.SessionType { - case constant.SingleChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - if !options.IsNotNotification() { - return "n_" + strings.Join(l, "_") - } - return "si_" + strings.Join(l, "_") // single chat - case constant.GroupChatType: - if !options.IsNotNotification() { - return "n_" + msg.GroupID // group chat - } - return "g_" + msg.GroupID // group chat - case constant.SuperGroupChatType: - if !options.IsNotNotification() { - return "n_" + msg.GroupID // super group chat - } - return "sg_" + msg.GroupID // super group chat - case constant.NotificationChatType: - if !options.IsNotNotification() { - return "n_" + msg.SendID + "_" + msg.RecvID // super group chat - } - return "sn_" + msg.SendID + "_" + msg.RecvID // server notification chat - } - return "" -} - -func GetConversationIDByMsg(msg *sdkws.MsgData) string { - options := Options(msg.Options) - switch msg.SessionType { - case constant.SingleChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - if !options.IsNotNotification() { - return "n_" + strings.Join(l, "_") - } - return "si_" + strings.Join(l, "_") // single chat - case constant.GroupChatType: - if !options.IsNotNotification() { - return "n_" + msg.GroupID // group chat - } - return "g_" + msg.GroupID // group chat - case constant.SuperGroupChatType: - if !options.IsNotNotification() { - return "n_" + msg.GroupID // super group chat - } - return "sg_" + msg.GroupID // super group chat - case constant.NotificationChatType: - if !options.IsNotNotification() { - return "n_" + msg.SendID + "_" + msg.RecvID // super group chat - } - return "sn_" + msg.SendID + "_" + msg.RecvID // server notification chat - } - return "" -} - -func GetConversationIDBySessionType(sessionType int, ids ...string) string { - sort.Strings(ids) - if len(ids) > 2 || len(ids) < 1 { - return "" - } - switch sessionType { - case constant.SingleChatType: - return "si_" + strings.Join(ids, "_") // single chat - case constant.GroupChatType: - return "g_" + ids[0] // group chat - case constant.SuperGroupChatType: - return "sg_" + ids[0] // super group chat - case constant.NotificationChatType: - return "sn_" + ids[0] // server notification chat - } - return "" -} - -func IsNotification(conversationID string) bool { - return strings.HasPrefix(conversationID, "n_") -} - -func IsNotificationByMsg(msg *sdkws.MsgData) bool { - return !Options(msg.Options).IsNotNotification() -} - -func ParseConversationID(msg *sdkws.MsgData) (isNotification bool, conversationID string) { - options := Options(msg.Options) - switch msg.SessionType { - case constant.SingleChatType: - l := []string{msg.SendID, msg.RecvID} - sort.Strings(l) - if !options.IsNotNotification() { - return true, "n_" + strings.Join(l, "_") - } - return false, "si_" + strings.Join(l, "_") // single chat - case constant.SuperGroupChatType: - if !options.IsNotNotification() { - return true, "n_" + msg.GroupID // super group chat - } - return false, "sg_" + msg.GroupID // super group chat - case constant.NotificationChatType: - if !options.IsNotNotification() { - return true, "n_" + msg.SendID + "_" + msg.RecvID // super group chat - } - return false, "sn_" + msg.SendID + "_" + msg.RecvID // server notification chat - } - return false, "" -} - -func GetNotificationConversationIDByConversationID(conversationID string) string { - l := strings.Split(conversationID, "_") - if len(l) > 1 { - l[0] = "n" - return strings.Join(l, "_") - } - return "" -} - -func GetSelfNotificationConversationID(userID string) string { - return "n_" + userID + "_" + userID -} - -func GetSeqsBeginEnd(seqs []int64) (int64, int64) { - if len(seqs) == 0 { - return 0, 0 - } - return seqs[0], seqs[len(seqs)-1] -} - -type MsgBySeq []*sdkws.MsgData - -func (s MsgBySeq) Len() int { - return len(s) -} - -func (s MsgBySeq) Less(i, j int) bool { - return s[i].Seq < s[j].Seq -} - -func (s MsgBySeq) Swap(i, j int) { - s[i], s[j] = s[j], s[i] -} diff --git a/pkg/utils/utils_v2.go b/pkg/utils/utils_v2.go deleted file mode 100644 index dc14fe4e8..000000000 --- a/pkg/utils/utils_v2.go +++ /dev/null @@ -1,557 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "encoding/json" - "sort" -) - -// SliceSub a中存在,b中不存在 (a-b) -func SliceSub[E comparable](a, b []E) []E { - k := make(map[E]struct{}) - for i := 0; i < len(b); i++ { - k[b[i]] = struct{}{} - } - t := make(map[E]struct{}) - rs := make([]E, 0, len(a)) - for i := 0; i < len(a); i++ { - e := a[i] - if _, ok := t[e]; ok { - continue - } - if _, ok := k[e]; ok { - continue - } - rs = append(rs, e) - t[e] = struct{}{} - } - return rs -} - -// SliceSubAny a中存在,b中不存在 (a-b) -func SliceSubAny[E comparable, T any](a []E, b []T, fn func(t T) E) []E { - return SliceSub(a, Slice(b, fn)) -} - -// SliceAnySub a中存在,b中不存在 (a-b) fn 返回的是uuid -func SliceAnySub[E any, T comparable](a, b []E, fn func(t E) T) []E { - m := make(map[T]E) - for i := 0; i < len(b); i++ { - v := b[i] - m[fn(v)] = v - } - var es []E - for i := 0; i < len(a); i++ { - v := a[i] - if _, ok := m[fn(v)]; !ok { - es = append(es, v) - } - } - return es -} - -// DistinctAny 去重 -func DistinctAny[E any, K comparable](es []E, fn func(e E) K) []E { - v := make([]E, 0, len(es)) - tmp := map[K]struct{}{} - for i := 0; i < len(es); i++ { - t := es[i] - k := fn(t) - if _, ok := tmp[k]; !ok { - tmp[k] = struct{}{} - v = append(v, t) - } - } - return v -} - -func DistinctAnyGetComparable[E any, K comparable](es []E, fn func(e E) K) []K { - v := make([]K, 0, len(es)) - tmp := map[K]struct{}{} - for i := 0; i < len(es); i++ { - t := es[i] - k := fn(t) - if _, ok := tmp[k]; !ok { - tmp[k] = struct{}{} - v = append(v, k) - } - } - return v -} - -// Distinct 去重 -func Distinct[T comparable](ts []T) []T { - if len(ts) < 2 { - return ts - } else if len(ts) == 2 { - if ts[0] == ts[1] { - return ts[:1] - } else { - return ts - } - } - return DistinctAny(ts, func(t T) T { - return t - }) -} - -// Delete 删除切片元素, 支持负数删除倒数第几个 -func Delete[E any](es []E, index ...int) []E { - switch len(index) { - case 0: - return es - case 1: - i := index[0] - if i < 0 { - i = len(es) + i - } - if len(es) <= i { - return es - } - return append(es[:i], es[i+1:]...) - default: - tmp := make(map[int]struct{}) - for _, i := range index { - if i < 0 { - i = len(es) + i - } - tmp[i] = struct{}{} - } - v := make([]E, 0, len(es)) - for i := 0; i < len(es); i++ { - if _, ok := tmp[i]; !ok { - v = append(v, es[i]) - } - } - return v - } -} - -// DeleteAt 删除切片元素, 支持负数删除倒数第几个 -func DeleteAt[E any](es *[]E, index ...int) []E { - v := Delete(*es, index...) - *es = v - return v -} - -// IndexAny get the index of the element -func IndexAny[E any, K comparable](e E, es []E, fn func(e E) K) int { - k := fn(e) - for i := 0; i < len(es); i++ { - if fn(es[i]) == k { - return i - } - } - return -1 -} - -// IndexOf get the index of the element -func IndexOf[E comparable](e E, es ...E) int { - return IndexAny(e, es, func(t E) E { - return t - }) -} - -// Contain 是否包含 -func Contain[E comparable](e E, es ...E) bool { - return IndexOf(e, es...) >= 0 -} - -// DuplicateAny 是否有重复的 -func DuplicateAny[E any, K comparable](es []E, fn func(e E) K) bool { - t := make(map[K]struct{}) - for _, e := range es { - k := fn(e) - if _, ok := t[k]; ok { - return true - } - t[k] = struct{}{} - } - return false -} - -// Duplicate 是否有重复的 -func Duplicate[E comparable](es []E) bool { - return DuplicateAny(es, func(e E) E { - return e - }) -} - -// SliceToMapOkAny slice to map (自定义类型, 筛选) -func SliceToMapOkAny[E any, K comparable, V any](es []E, fn func(e E) (K, V, bool)) map[K]V { - kv := make(map[K]V) - for i := 0; i < len(es); i++ { - t := es[i] - if k, v, ok := fn(t); ok { - kv[k] = v - } - } - return kv -} - -// SliceToMapAny slice to map (自定义类型) -func SliceToMapAny[E any, K comparable, V any](es []E, fn func(e E) (K, V)) map[K]V { - return SliceToMapOkAny(es, func(e E) (K, V, bool) { - k, v := fn(e) - return k, v, true - }) -} - -// SliceToMap slice to map -func SliceToMap[E any, K comparable](es []E, fn func(e E) K) map[K]E { - return SliceToMapOkAny(es, func(e E) (K, E, bool) { - k := fn(e) - return k, e, true - }) -} - -// SliceSetAny slice to map[K]struct{} -func SliceSetAny[E any, K comparable](es []E, fn func(e E) K) map[K]struct{} { - return SliceToMapAny(es, func(e E) (K, struct{}) { - return fn(e), struct{}{} - }) -} - -func Filter[E, T any](es []E, fn func(e E) (T, bool)) []T { - rs := make([]T, 0, len(es)) - for i := 0; i < len(es); i++ { - e := es[i] - if t, ok := fn(e); ok { - rs = append(rs, t) - } - } - return rs -} - -// Slice 批量转换切片类型 -func Slice[E any, T any](es []E, fn func(e E) T) []T { - v := make([]T, len(es)) - for i := 0; i < len(es); i++ { - v[i] = fn(es[i]) - } - return v -} - -// SliceSet slice to map[E]struct{} -func SliceSet[E comparable](es []E) map[E]struct{} { - return SliceSetAny(es, func(e E) E { - return e - }) -} - -// HasKey get whether the map contains key -func HasKey[K comparable, V any](m map[K]V, k K) bool { - if m == nil { - return false - } - _, ok := m[k] - return ok -} - -// Min get minimum value -func Min[E Ordered](e ...E) E { - v := e[0] - for _, t := range e[1:] { - if v > t { - v = t - } - } - return v -} - -// Max get maximum value -func Max[E Ordered](e ...E) E { - v := e[0] - for _, t := range e[1:] { - if v < t { - v = t - } - } - return v -} - -func Paginate[E any](es []E, pageNumber int, showNumber int) []E { - if pageNumber <= 0 { - return []E{} - } - if showNumber <= 0 { - return []E{} - } - start := (pageNumber - 1) * showNumber - end := start + showNumber - if start >= len(es) { - return []E{} - } - if end > len(es) { - end = len(es) - } - return es[start:end] -} - -// BothExistAny 获取切片中共同存在的元素(交集) -func BothExistAny[E any, K comparable](es [][]E, fn func(e E) K) []E { - if len(es) == 0 { - return []E{} - } - var idx int - ei := make([]map[K]E, len(es)) - for i := 0; i < len(ei); i++ { - e := es[i] - if len(e) == 0 { - return []E{} - } - kv := make(map[K]E) - for j := 0; j < len(e); j++ { - t := e[j] - k := fn(t) - kv[k] = t - } - ei[i] = kv - if len(kv) < len(ei[idx]) { - idx = i - } - } - v := make([]E, 0, len(ei[idx])) - for k := range ei[idx] { - all := true - for i := 0; i < len(ei); i++ { - if i == idx { - continue - } - if _, ok := ei[i][k]; !ok { - all = false - break - } - } - if !all { - continue - } - v = append(v, ei[idx][k]) - } - return v -} - -// BothExist 获取切片中共同存在的元素(交集) -func BothExist[E comparable](es ...[]E) []E { - return BothExistAny(es, func(e E) E { - return e - }) -} - -//// CompleteAny a中存在b的所有元素, 同时b中的所有元素a -//func CompleteAny[K comparable, E any](ks []K, es []E, fn func(e E) K) bool { -// if len(ks) == 0 && len(es) == 0 { -// return true -// } -// kn := make(map[K]uint8) -// for _, e := range Distinct(ks) { -// kn[e]++ -// } -// for k := range SliceSetAny(es, fn) { -// kn[k]++ -// } -// for _, n := range kn { -// if n != 2 { -// return false -// } -// } -// return true -//} - -// Complete a和b去重后是否相等(忽略顺序) -func Complete[E comparable](a []E, b []E) bool { - return len(Single(a, b)) == 0 -} - -// Keys get map keys -func Keys[K comparable, V any](kv map[K]V) []K { - ks := make([]K, 0, len(kv)) - for k := range kv { - ks = append(ks, k) - } - return ks -} - -// Values get map values -func Values[K comparable, V any](kv map[K]V) []V { - vs := make([]V, 0, len(kv)) - for k := range kv { - vs = append(vs, kv[k]) - } - return vs -} - -// Sort basic type sorting -func Sort[E Ordered](es []E, asc bool) []E { - SortAny(es, func(a, b E) bool { - if asc { - return a < b - } else { - return a > b - } - }) - return es -} - -// SortAny custom sort method -func SortAny[E any](es []E, fn func(a, b E) bool) { - sort.Sort(&sortSlice[E]{ - ts: es, - fn: fn, - }) -} - -// If true -> a, false -> b -func If[T any](isa bool, a, b T) T { - if isa { - return a - } - return b -} - -func ToPtr[T any](t T) *T { - return &t -} - -// Equal 比较切片是否相对(包括元素顺序) -func Equal[E comparable](a []E, b []E) bool { - if len(a) != len(b) { - return false - } - for i := 0; i < len(a); i++ { - if a[i] != b[i] { - return false - } - } - return true -} - -// Single a中存在,b中不存在 或 b中存在,a中不存在 -func Single[E comparable](a, b []E) []E { - kn := make(map[E]uint8) - for _, e := range Distinct(a) { - kn[e]++ - } - for _, e := range Distinct(b) { - kn[e]++ - } - v := make([]E, 0, len(kn)) - for k, n := range kn { - if n == 1 { - v = append(v, k) - } - } - return v -} - -// Order 将ts按es排序 -func Order[E comparable, T any](es []E, ts []T, fn func(t T) E) []T { - if len(es) == 0 || len(ts) == 0 { - return ts - } - kv := make(map[E][]T) - for i := 0; i < len(ts); i++ { - t := ts[i] - k := fn(t) - kv[k] = append(kv[k], t) - } - rs := make([]T, 0, len(ts)) - for _, e := range es { - vs := kv[e] - delete(kv, e) - rs = append(rs, vs...) - } - for k := range kv { - rs = append(rs, kv[k]...) - } - return rs -} - -func OrderPtr[E comparable, T any](es []E, ts *[]T, fn func(t T) E) []T { - *ts = Order(es, *ts, fn) - return *ts -} - -func UniqueJoin(s ...string) string { - data, _ := json.Marshal(s) - return string(data) -} - -type sortSlice[E any] struct { - ts []E - fn func(a, b E) bool -} - -func (o *sortSlice[E]) Len() int { - return len(o.ts) -} - -func (o *sortSlice[E]) Less(i, j int) bool { - return o.fn(o.ts[i], o.ts[j]) -} - -func (o *sortSlice[E]) Swap(i, j int) { - o.ts[i], o.ts[j] = o.ts[j], o.ts[i] -} - -// Ordered types that can be sorted -type Ordered interface { - ~int | ~int8 | ~int16 | ~int32 | ~int64 | ~uint | ~uint8 | ~uint16 | ~uint32 | ~uint64 | ~uintptr | ~float32 | ~float64 | ~string -} - -func Unwrap(err error) error { - for err != nil { - unwrap, ok := err.(interface { - Unwrap() error - }) - if !ok { - break - } - err = unwrap.Unwrap() - } - return err -} - -// NotNilReplace 当new_不为空时, 将old设置为new_ -func NotNilReplace[T any](old, new_ *T) { - if new_ == nil { - return - } - *old = *new_ -} - -func Batch[T any, V any](fn func(T) V, ts []T) []V { - if ts == nil { - return nil - } - res := make([]V, 0, len(ts)) - for i := range ts { - res = append(res, fn(ts[i])) - } - return res -} - -func InitSlice[T any](val *[]T) { - if val != nil && *val == nil { - *val = []T{} - } -} - -func InitMap[K comparable, V any](val *map[K]V) { - if val != nil && *val == nil { - *val = map[K]V{} - } -} diff --git a/pkg/utils/utils_v2_test.go b/pkg/utils/utils_v2_test.go deleted file mode 100644 index ba55b8941..000000000 --- a/pkg/utils/utils_v2_test.go +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright © 2023 OpenIM. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package utils - -import ( - "fmt" - "testing" -) - -func TestDistinct(t *testing.T) { - arr := []int{1, 1, 1, 4, 4, 5, 2, 3, 3, 3, 6} - fmt.Println(Distinct(arr)) -} - -func TestDeleteAt(t *testing.T) { - arr := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} - fmt.Println(Delete(arr, 0, 1, -1, -2)) - fmt.Println(Delete(arr)) - fmt.Println(Delete(arr, 1)) -} - -func TestSliceToMap(t *testing.T) { - type Item struct { - ID string - Name string - } - list := []Item{ - {ID: "111", Name: "111"}, - {ID: "222", Name: "222"}, - {ID: "333", Name: "333"}, - } - - m := SliceToMap(list, func(t Item) string { - return t.ID - }) - - fmt.Printf("%+v\n", m) - -} - -func TestIndexOf(t *testing.T) { - arr := []int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9} - - fmt.Println(IndexOf(3, arr...)) - -} - -func TestSort(t *testing.T) { - arr := []int{1, 1, 1, 4, 4, 5, 2, 3, 3, 3, 6} - fmt.Println(Sort(arr, false)) -} - -func TestBothExist(t *testing.T) { - arr1 := []int{1, 1, 1, 4, 4, 5, 2, 3, 3, 3, 6} - arr2 := []int{6, 1, 3} - arr3 := []int{5, 1, 3, 6} - fmt.Println(BothExist(arr1, arr2, arr3)) -} - -func TestCompleteAny(t *testing.T) { - type Item struct { - ID int - Value string - } - - ids := []int{1, 2, 3, 4, 5, 6, 7, 8} - - var list []Item - - for _, id := range ids { - list = append(list, Item{ - ID: id, - Value: fmt.Sprintf("%d", id*1000), - }) - } - - DeleteAt(&list, -1) - DeleteAt(&ids, -1) - - ok := Complete(ids, Slice(list, func(t Item) int { - return t.ID - })) - - fmt.Printf("%+v\n", ok) - -}

*Q{?zq^ndqFE8*9DM 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

Lm3 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