diff --git a/app/pkg/pb/im.business.ext.pb.go b/app/pkg/pb/business.ext.pb.go similarity index 52% rename from app/pkg/pb/im.business.ext.pb.go rename to app/pkg/pb/business.ext.pb.go index 6a43688..f4da7f6 100644 --- a/app/pkg/pb/im.business.ext.pb.go +++ b/app/pkg/pb/business.ext.pb.go @@ -1,20 +1,20 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 -// protoc v3.20.0--rc1 -// source: im.business.ext.proto +// protoc v3.20.0--rc2 +// source: business.ext.proto package pb import ( - "context" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/reflect/protoreflect" - "google.golang.org/protobuf/runtime/protoimpl" - "reflect" - "sync" + 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 ( @@ -24,7 +24,7 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -// 消息类型 +// 投诉类型 type ComplainType int32 const ( @@ -89,6 +89,374 @@ func (ComplainType) EnumDescriptor() ([]byte, []int) { return file_business_ext_proto_rawDescGZIP(), []int{0} } +// 群公告发布方式 +type GroupNoticePublishType int32 + +const ( + GroupNoticePublishType_UNKNOWN_PUBLISH GroupNoticePublishType = 0 // 未知 + GroupNoticePublishType_ONLY_PUBLISH GroupNoticePublishType = 1 // 仅发布 + GroupNoticePublishType_PUBLISH_AND_NOTICE GroupNoticePublishType = 2 // 发布并通知 + GroupNoticePublishType_NOTICE_AND_TOP_UP GroupNoticePublishType = 3 // 存在骗钱行为 +) + +// Enum value maps for GroupNoticePublishType. +var ( + GroupNoticePublishType_name = map[int32]string{ + 0: "UNKNOWN_PUBLISH", + 1: "ONLY_PUBLISH", + 2: "PUBLISH_AND_NOTICE", + 3: "NOTICE_AND_TOP_UP", + } + GroupNoticePublishType_value = map[string]int32{ + "UNKNOWN_PUBLISH": 0, + "ONLY_PUBLISH": 1, + "PUBLISH_AND_NOTICE": 2, + "NOTICE_AND_TOP_UP": 3, + } +) + +func (x GroupNoticePublishType) Enum() *GroupNoticePublishType { + p := new(GroupNoticePublishType) + *p = x + return p +} + +func (x GroupNoticePublishType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GroupNoticePublishType) Descriptor() protoreflect.EnumDescriptor { + return file_business_ext_proto_enumTypes[1].Descriptor() +} + +func (GroupNoticePublishType) Type() protoreflect.EnumType { + return &file_business_ext_proto_enumTypes[1] +} + +func (x GroupNoticePublishType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GroupNoticePublishType.Descriptor instead. +func (GroupNoticePublishType) EnumDescriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{1} +} + +type LikeGroupNoticeReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` +} + +func (x *LikeGroupNoticeReq) Reset() { + *x = LikeGroupNoticeReq{} + if protoimpl.UnsafeEnabled { + mi := &file_business_ext_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LikeGroupNoticeReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LikeGroupNoticeReq) ProtoMessage() {} + +func (x *LikeGroupNoticeReq) ProtoReflect() protoreflect.Message { + mi := &file_business_ext_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 LikeGroupNoticeReq.ProtoReflect.Descriptor instead. +func (*LikeGroupNoticeReq) Descriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{0} +} + +func (x *LikeGroupNoticeReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +type CancelLikeGroupNoticeReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` +} + +func (x *CancelLikeGroupNoticeReq) Reset() { + *x = CancelLikeGroupNoticeReq{} + if protoimpl.UnsafeEnabled { + mi := &file_business_ext_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CancelLikeGroupNoticeReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CancelLikeGroupNoticeReq) ProtoMessage() {} + +func (x *CancelLikeGroupNoticeReq) ProtoReflect() protoreflect.Message { + mi := &file_business_ext_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 CancelLikeGroupNoticeReq.ProtoReflect.Descriptor instead. +func (*CancelLikeGroupNoticeReq) Descriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{1} +} + +func (x *CancelLikeGroupNoticeReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +type ViewGroupNoticeReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` +} + +func (x *ViewGroupNoticeReq) Reset() { + *x = ViewGroupNoticeReq{} + if protoimpl.UnsafeEnabled { + mi := &file_business_ext_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ViewGroupNoticeReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ViewGroupNoticeReq) ProtoMessage() {} + +func (x *ViewGroupNoticeReq) ProtoReflect() protoreflect.Message { + mi := &file_business_ext_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 ViewGroupNoticeReq.ProtoReflect.Descriptor instead. +func (*ViewGroupNoticeReq) Descriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{2} +} + +func (x *ViewGroupNoticeReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +type ViewGroupNoticeResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` //发布用户id + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"` //公告内容 + LikeNums int64 `protobuf:"varint,4,opt,name=like_nums,json=likeNums,proto3" json:"like_nums,omitempty"` //点赞数量 + ReadNums int64 `protobuf:"varint,5,opt,name=read_nums,json=readNums,proto3" json:"read_nums,omitempty"` //阅读数量 + PublishType GroupNoticePublishType `protobuf:"varint,6,opt,name=publish_type,json=publishType,proto3,enum=pb.GroupNoticePublishType" json:"publish_type,omitempty"` // 发布方式 + PublishTime string `protobuf:"bytes,7,opt,name=publish_time,json=publishTime,proto3" json:"publish_time,omitempty"` // 发布时间 + IsLike bool `protobuf:"varint,8,opt,name=is_like,json=isLike,proto3" json:"is_like,omitempty"` // 是否点赞 +} + +func (x *ViewGroupNoticeResp) Reset() { + *x = ViewGroupNoticeResp{} + if protoimpl.UnsafeEnabled { + mi := &file_business_ext_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ViewGroupNoticeResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ViewGroupNoticeResp) ProtoMessage() {} + +func (x *ViewGroupNoticeResp) ProtoReflect() protoreflect.Message { + mi := &file_business_ext_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 ViewGroupNoticeResp.ProtoReflect.Descriptor instead. +func (*ViewGroupNoticeResp) Descriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{3} +} + +func (x *ViewGroupNoticeResp) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +func (x *ViewGroupNoticeResp) GetUserId() int64 { + if x != nil { + return x.UserId + } + return 0 +} + +func (x *ViewGroupNoticeResp) GetContent() string { + if x != nil { + return x.Content + } + return "" +} + +func (x *ViewGroupNoticeResp) GetLikeNums() int64 { + if x != nil { + return x.LikeNums + } + return 0 +} + +func (x *ViewGroupNoticeResp) GetReadNums() int64 { + if x != nil { + return x.ReadNums + } + return 0 +} + +func (x *ViewGroupNoticeResp) GetPublishType() GroupNoticePublishType { + if x != nil { + return x.PublishType + } + return GroupNoticePublishType_UNKNOWN_PUBLISH +} + +func (x *ViewGroupNoticeResp) GetPublishTime() string { + if x != nil { + return x.PublishTime + } + return "" +} + +func (x *ViewGroupNoticeResp) GetIsLike() bool { + if x != nil { + return x.IsLike + } + return false +} + +type PublishGroupNoticeReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` //发布用户id + PublishType GroupNoticePublishType `protobuf:"varint,3,opt,name=publish_type,json=publishType,proto3,enum=pb.GroupNoticePublishType" json:"publish_type,omitempty"` // 发布方式 + Content string `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` // 发布内容 +} + +func (x *PublishGroupNoticeReq) Reset() { + *x = PublishGroupNoticeReq{} + if protoimpl.UnsafeEnabled { + mi := &file_business_ext_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PublishGroupNoticeReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PublishGroupNoticeReq) ProtoMessage() {} + +func (x *PublishGroupNoticeReq) ProtoReflect() protoreflect.Message { + mi := &file_business_ext_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 PublishGroupNoticeReq.ProtoReflect.Descriptor instead. +func (*PublishGroupNoticeReq) Descriptor() ([]byte, []int) { + return file_business_ext_proto_rawDescGZIP(), []int{4} +} + +func (x *PublishGroupNoticeReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +func (x *PublishGroupNoticeReq) GetUserId() int64 { + if x != nil { + return x.UserId + } + return 0 +} + +func (x *PublishGroupNoticeReq) GetPublishType() GroupNoticePublishType { + if x != nil { + return x.PublishType + } + return GroupNoticePublishType_UNKNOWN_PUBLISH +} + +func (x *PublishGroupNoticeReq) GetContent() string { + if x != nil { + return x.Content + } + return "" +} + type ComplainGroupReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -103,7 +471,7 @@ type ComplainGroupReq struct { func (x *ComplainGroupReq) Reset() { *x = ComplainGroupReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[0] + mi := &file_business_ext_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -116,7 +484,7 @@ func (x *ComplainGroupReq) String() string { func (*ComplainGroupReq) ProtoMessage() {} func (x *ComplainGroupReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[0] + mi := &file_business_ext_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -129,7 +497,7 @@ func (x *ComplainGroupReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ComplainGroupReq.ProtoReflect.Descriptor instead. func (*ComplainGroupReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{0} + return file_business_ext_proto_rawDescGZIP(), []int{5} } func (x *ComplainGroupReq) GetGroupId() int64 { @@ -172,7 +540,7 @@ type IsFriendsReq struct { func (x *IsFriendsReq) Reset() { *x = IsFriendsReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[1] + mi := &file_business_ext_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -185,7 +553,7 @@ func (x *IsFriendsReq) String() string { func (*IsFriendsReq) ProtoMessage() {} func (x *IsFriendsReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[1] + mi := &file_business_ext_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -198,7 +566,7 @@ func (x *IsFriendsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use IsFriendsReq.ProtoReflect.Descriptor instead. func (*IsFriendsReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{1} + return file_business_ext_proto_rawDescGZIP(), []int{6} } func (x *IsFriendsReq) GetUserPhone() string { @@ -227,7 +595,7 @@ type IsFriendsResp struct { func (x *IsFriendsResp) Reset() { *x = IsFriendsResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[2] + mi := &file_business_ext_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -240,7 +608,7 @@ func (x *IsFriendsResp) String() string { func (*IsFriendsResp) ProtoMessage() {} func (x *IsFriendsResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[2] + mi := &file_business_ext_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -253,7 +621,7 @@ func (x *IsFriendsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use IsFriendsResp.ProtoReflect.Descriptor instead. func (*IsFriendsResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{2} + return file_business_ext_proto_rawDescGZIP(), []int{7} } func (x *IsFriendsResp) GetIsFriend() int64 { @@ -284,7 +652,7 @@ type Emoticon struct { func (x *Emoticon) Reset() { *x = Emoticon{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[3] + mi := &file_business_ext_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -297,7 +665,7 @@ func (x *Emoticon) String() string { func (*Emoticon) ProtoMessage() {} func (x *Emoticon) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[3] + mi := &file_business_ext_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -310,7 +678,7 @@ func (x *Emoticon) ProtoReflect() protoreflect.Message { // Deprecated: Use Emoticon.ProtoReflect.Descriptor instead. func (*Emoticon) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{3} + return file_business_ext_proto_rawDescGZIP(), []int{8} } func (x *Emoticon) GetName() string { @@ -352,7 +720,7 @@ type EmoticonListResp struct { func (x *EmoticonListResp) Reset() { *x = EmoticonListResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[4] + mi := &file_business_ext_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -365,7 +733,7 @@ func (x *EmoticonListResp) String() string { func (*EmoticonListResp) ProtoMessage() {} func (x *EmoticonListResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[4] + mi := &file_business_ext_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -378,7 +746,7 @@ func (x *EmoticonListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use EmoticonListResp.ProtoReflect.Descriptor instead. func (*EmoticonListResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{4} + return file_business_ext_proto_rawDescGZIP(), []int{9} } func (x *EmoticonListResp) GetEmoticons() []*Emoticon { @@ -396,16 +764,15 @@ type SignInReq struct { PhoneNumber string `protobuf:"bytes,1,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"` // 手机号 Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code,omitempty"` // 验证码 DeviceId int64 `protobuf:"varint,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"` // 设备id - MasterId int64 `protobuf:"varint,4,opt,name=master_id,json=masterId,proto3" json:"master_id,omitempty"` // 站长id - PushAlia string `protobuf:"bytes,5,opt,name=push_alia,json=pushAlia,proto3" json:"push_alia,omitempty"` // 极光推送-别名 - Nickname string `protobuf:"bytes,6,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 - AvatarUrl string `protobuf:"bytes,7,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像地址 + PushAlia string `protobuf:"bytes,4,opt,name=push_alia,json=pushAlia,proto3" json:"push_alia,omitempty"` // 极光推送-别名 + Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 + AvatarUrl string `protobuf:"bytes,6,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像地址 } func (x *SignInReq) Reset() { *x = SignInReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[5] + mi := &file_business_ext_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -418,7 +785,7 @@ func (x *SignInReq) String() string { func (*SignInReq) ProtoMessage() {} func (x *SignInReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[5] + mi := &file_business_ext_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -431,7 +798,7 @@ func (x *SignInReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SignInReq.ProtoReflect.Descriptor instead. func (*SignInReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{5} + return file_business_ext_proto_rawDescGZIP(), []int{10} } func (x *SignInReq) GetPhoneNumber() string { @@ -455,13 +822,6 @@ func (x *SignInReq) GetDeviceId() int64 { return 0 } -func (x *SignInReq) GetMasterId() int64 { - if x != nil { - return x.MasterId - } - return 0 -} - func (x *SignInReq) GetPushAlia() string { if x != nil { return x.PushAlia @@ -488,16 +848,15 @@ type SignInResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsNew bool `protobuf:"varint,1,opt,name=is_new,json=isNew,proto3" json:"is_new,omitempty"` // 是否是新用户 - UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` // token - MasterId int64 `protobuf:"varint,4,opt,name=master_id,json=masterId,proto3" json:"master_id,omitempty"` // 站长id + IsNew bool `protobuf:"varint,1,opt,name=is_new,json=isNew,proto3" json:"is_new,omitempty"` // 是否是新用户 + UserId int64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // 用户id + Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` // token } func (x *SignInResp) Reset() { *x = SignInResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[6] + mi := &file_business_ext_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -510,7 +869,7 @@ func (x *SignInResp) String() string { func (*SignInResp) ProtoMessage() {} func (x *SignInResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[6] + mi := &file_business_ext_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -523,7 +882,7 @@ func (x *SignInResp) ProtoReflect() protoreflect.Message { // Deprecated: Use SignInResp.ProtoReflect.Descriptor instead. func (*SignInResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{6} + return file_business_ext_proto_rawDescGZIP(), []int{11} } func (x *SignInResp) GetIsNew() bool { @@ -547,13 +906,6 @@ func (x *SignInResp) GetToken() string { return "" } -func (x *SignInResp) GetMasterId() int64 { - if x != nil { - return x.MasterId - } - return 0 -} - type CloudUploadFileReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -567,7 +919,7 @@ type CloudUploadFileReq struct { func (x *CloudUploadFileReq) Reset() { *x = CloudUploadFileReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[7] + mi := &file_business_ext_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -580,7 +932,7 @@ func (x *CloudUploadFileReq) String() string { func (*CloudUploadFileReq) ProtoMessage() {} func (x *CloudUploadFileReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[7] + mi := &file_business_ext_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -593,7 +945,7 @@ func (x *CloudUploadFileReq) ProtoReflect() protoreflect.Message { // Deprecated: Use CloudUploadFileReq.ProtoReflect.Descriptor instead. func (*CloudUploadFileReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{7} + return file_business_ext_proto_rawDescGZIP(), []int{12} } func (x *CloudUploadFileReq) GetDir() string { @@ -631,7 +983,7 @@ type CloudUploadFileResp struct { func (x *CloudUploadFileResp) Reset() { *x = CloudUploadFileResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[8] + mi := &file_business_ext_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -644,7 +996,7 @@ func (x *CloudUploadFileResp) String() string { func (*CloudUploadFileResp) ProtoMessage() {} func (x *CloudUploadFileResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[8] + mi := &file_business_ext_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -657,7 +1009,7 @@ func (x *CloudUploadFileResp) ProtoReflect() protoreflect.Message { // Deprecated: Use CloudUploadFileResp.ProtoReflect.Descriptor instead. func (*CloudUploadFileResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{8} + return file_business_ext_proto_rawDescGZIP(), []int{13} } func (x *CloudUploadFileResp) GetMethod() string { @@ -700,15 +1052,14 @@ type User struct { Extra string `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段 CreateTime int64 `protobuf:"varint,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` // 创建时间 UpdateTime int64 `protobuf:"varint,7,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` // 更新时间 - MasterId int64 `protobuf:"varint,8,opt,name=master_id,json=masterId,proto3" json:"master_id,omitempty"` // 站长id - IsAutoAddedFriends int64 `protobuf:"varint,9,opt,name=is_auto_added_friends,json=isAutoAddedFriends,proto3" json:"is_auto_added_friends,omitempty"` // 是否自动被添加好友 - PhoneNumber string `protobuf:"bytes,10,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"` // 手机号 + IsAutoAddedFriends int64 `protobuf:"varint,8,opt,name=is_auto_added_friends,json=isAutoAddedFriends,proto3" json:"is_auto_added_friends,omitempty"` // 是否自动被添加好友 + PhoneNumber string `protobuf:"bytes,9,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"` // 手机号 } func (x *User) Reset() { *x = User{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[9] + mi := &file_business_ext_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -721,7 +1072,7 @@ func (x *User) String() string { func (*User) ProtoMessage() {} func (x *User) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[9] + mi := &file_business_ext_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -734,7 +1085,7 @@ func (x *User) ProtoReflect() protoreflect.Message { // Deprecated: Use User.ProtoReflect.Descriptor instead. func (*User) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{9} + return file_business_ext_proto_rawDescGZIP(), []int{14} } func (x *User) GetUserId() int64 { @@ -786,13 +1137,6 @@ func (x *User) GetUpdateTime() int64 { return 0 } -func (x *User) GetMasterId() int64 { - if x != nil { - return x.MasterId - } - return 0 -} - func (x *User) GetIsAutoAddedFriends() int64 { if x != nil { return x.IsAutoAddedFriends @@ -819,7 +1163,7 @@ type GetUserReq struct { func (x *GetUserReq) Reset() { *x = GetUserReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[10] + mi := &file_business_ext_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -832,7 +1176,7 @@ func (x *GetUserReq) String() string { func (*GetUserReq) ProtoMessage() {} func (x *GetUserReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[10] + mi := &file_business_ext_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -845,7 +1189,7 @@ func (x *GetUserReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUserReq.ProtoReflect.Descriptor instead. func (*GetUserReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{10} + return file_business_ext_proto_rawDescGZIP(), []int{15} } func (x *GetUserReq) GetUserId() int64 { @@ -873,7 +1217,7 @@ type GetUserResp struct { func (x *GetUserResp) Reset() { *x = GetUserResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[11] + mi := &file_business_ext_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -886,7 +1230,7 @@ func (x *GetUserResp) String() string { func (*GetUserResp) ProtoMessage() {} func (x *GetUserResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[11] + mi := &file_business_ext_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -899,7 +1243,7 @@ func (x *GetUserResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUserResp.ProtoReflect.Descriptor instead. func (*GetUserResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{11} + return file_business_ext_proto_rawDescGZIP(), []int{16} } func (x *GetUserResp) GetUser() *User { @@ -923,7 +1267,7 @@ type UpdateUserReq struct { func (x *UpdateUserReq) Reset() { *x = UpdateUserReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[12] + mi := &file_business_ext_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -936,7 +1280,7 @@ func (x *UpdateUserReq) String() string { func (*UpdateUserReq) ProtoMessage() {} func (x *UpdateUserReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[12] + mi := &file_business_ext_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -949,7 +1293,7 @@ func (x *UpdateUserReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateUserReq.ProtoReflect.Descriptor instead. func (*UpdateUserReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{12} + return file_business_ext_proto_rawDescGZIP(), []int{17} } func (x *UpdateUserReq) GetNickname() string { @@ -985,14 +1329,13 @@ type SearchUserReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - MasterId int64 `protobuf:"varint,2,opt,name=master_id,json=masterId,proto3" json:"master_id,omitempty"` + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` } func (x *SearchUserReq) Reset() { *x = SearchUserReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[13] + mi := &file_business_ext_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1005,7 +1348,7 @@ func (x *SearchUserReq) String() string { func (*SearchUserReq) ProtoMessage() {} func (x *SearchUserReq) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[13] + mi := &file_business_ext_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1018,7 +1361,7 @@ func (x *SearchUserReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SearchUserReq.ProtoReflect.Descriptor instead. func (*SearchUserReq) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{13} + return file_business_ext_proto_rawDescGZIP(), []int{18} } func (x *SearchUserReq) GetKey() string { @@ -1028,13 +1371,6 @@ func (x *SearchUserReq) GetKey() string { return "" } -func (x *SearchUserReq) GetMasterId() int64 { - if x != nil { - return x.MasterId - } - return 0 -} - type SearchUserResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1046,7 +1382,7 @@ type SearchUserResp struct { func (x *SearchUserResp) Reset() { *x = SearchUserResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_ext_proto_msgTypes[14] + mi := &file_business_ext_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1059,7 +1395,7 @@ func (x *SearchUserResp) String() string { func (*SearchUserResp) ProtoMessage() {} func (x *SearchUserResp) ProtoReflect() protoreflect.Message { - mi := &file_business_ext_proto_msgTypes[14] + mi := &file_business_ext_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1070,9 +1406,10 @@ func (x *SearchUserResp) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } + // Deprecated: Use SearchUserResp.ProtoReflect.Descriptor instead. func (*SearchUserResp) Descriptor() ([]byte, []int) { - return file_business_ext_proto_rawDescGZIP(), []int{14} + return file_business_ext_proto_rawDescGZIP(), []int{19} } func (x *SearchUserResp) GetUsers() []*User { @@ -1087,148 +1424,202 @@ var File_business_ext_proto protoreflect.FileDescriptor var file_business_ext_proto_rawDesc = []byte{ 0x0a, 0x12, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x97, 0x01, 0x0a, 0x10, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x0d, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6c, - 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, - 0x4c, 0x69, 0x73, 0x74, 0x22, 0x50, 0x0a, 0x0c, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70, 0x68, 0x6f, - 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x68, - 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x4a, 0x0a, 0x0d, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x73, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, - 0x65, 0x72, 0x22, 0x5f, 0x0a, 0x08, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x6d, 0x67, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x67, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6d, - 0x65, 0x6d, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, - 0x6f, 0x72, 0x74, 0x22, 0x3e, 0x0a, 0x10, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x09, 0x65, 0x6d, 0x6f, 0x74, 0x69, - 0x63, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, - 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x52, 0x09, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, - 0x6f, 0x6e, 0x73, 0x22, 0xd4, 0x01, 0x0a, 0x09, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, - 0x71, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x75, 0x73, 0x68, 0x41, 0x6c, 0x69, 0x61, 0x12, - 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x22, 0x6f, 0x0a, 0x0a, 0x53, 0x69, - 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x6e, - 0x65, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x4e, 0x65, 0x77, 0x12, - 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, - 0x0a, 0x09, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x12, 0x43, - 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, - 0x71, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x64, 0x69, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x69, 0x0a, - 0x13, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb7, 0x02, 0x0a, 0x04, 0x55, 0x73, 0x65, - 0x72, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 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, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, - 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, - 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1f, 0x0a, - 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x15, - 0x69, 0x73, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x66, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x69, 0x73, 0x41, - 0x75, 0x74, 0x6f, 0x41, 0x64, 0x64, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x22, 0x3b, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x68, 0x6f, - 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x22, - 0x2b, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, - 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, - 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x72, 0x0a, 0x0d, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, - 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, - 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x22, 0x3e, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, - 0x22, 0x30, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, - 0x72, 0x73, 0x2a, 0xa4, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, - 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x54, 0x5f, 0x47, 0x41, 0x4d, 0x42, 0x4c, 0x45, - 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x54, 0x5f, 0x44, 0x45, 0x46, 0x52, 0x41, 0x55, 0x44, - 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, 0x48, 0x41, 0x52, 0x41, 0x53, 0x53, 0x10, - 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, 0x52, 0x55, 0x4d, 0x4f, 0x55, 0x52, 0x10, 0x04, - 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x45, - 0x49, 0x54, 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x53, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x05, 0x12, - 0x1a, 0x0a, 0x16, 0x4d, 0x54, 0x5f, 0x56, 0x49, 0x4f, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, - 0x4f, 0x46, 0x5f, 0x4d, 0x49, 0x4e, 0x4f, 0x52, 0x53, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x4d, - 0x54, 0x5f, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x07, 0x32, 0x9c, 0x03, 0x0a, 0x0b, 0x42, 0x75, - 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x45, 0x78, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x53, 0x69, 0x67, - 0x6e, 0x49, 0x6e, 0x12, 0x0d, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, - 0x65, 0x71, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x2e, - 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x0f, 0x2e, - 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, - 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x12, 0x11, 0x2e, 0x70, - 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, - 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x33, 0x0a, 0x0a, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x12, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, - 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x42, 0x0a, 0x0f, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, - 0x6c, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, - 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, + 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2f, 0x0a, 0x12, 0x4c, 0x69, + 0x6b, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x35, 0x0a, 0x18, 0x43, + 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4c, 0x69, 0x6b, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, + 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x49, 0x64, 0x22, 0x2f, 0x0a, 0x12, 0x56, 0x69, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, + 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x49, 0x64, 0x22, 0x98, 0x02, 0x0a, 0x13, 0x56, 0x69, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x69, 0x6b, + 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6c, 0x69, + 0x6b, 0x65, 0x4e, 0x75, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6e, + 0x75, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4e, + 0x75, 0x6d, 0x73, 0x12, 0x3d, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x6b, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x22, 0xa4, + 0x01, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, + 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x0c, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, + 0x69, 0x63, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x97, 0x01, 0x0a, 0x10, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, + 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, + 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, + 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, + 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x22, + 0x50, 0x0a, 0x0c, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x12, + 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x22, 0x4a, 0x0a, 0x0d, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x69, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, + 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, + 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x22, 0x5f, 0x0a, + 0x08, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, + 0x07, 0x69, 0x6d, 0x67, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x69, 0x6d, 0x67, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x65, 0x6d, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6f, + 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x22, 0x3e, + 0x0a, 0x10, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x09, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x52, 0x09, 0x65, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x73, 0x22, 0xb7, + 0x01, 0x0a, 0x09, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x21, 0x0a, 0x0c, + 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, + 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x61, 0x6c, 0x69, 0x61, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x75, 0x73, 0x68, 0x41, 0x6c, 0x69, 0x61, 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, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x22, 0x52, 0x0a, 0x0a, 0x53, 0x69, 0x67, 0x6e, + 0x49, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x6e, 0x65, 0x77, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x4e, 0x65, 0x77, 0x12, 0x17, 0x0a, + 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x60, 0x0a, 0x12, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x2f, 0x0a, 0x0c, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x14, - 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x09, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, - 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, - 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, - 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f, - 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x69, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x64, 0x69, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x69, + 0x0a, 0x13, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, + 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x9a, 0x02, 0x0a, 0x04, 0x55, 0x73, + 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 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, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, + 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1f, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1f, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x31, 0x0a, 0x15, 0x69, 0x73, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x61, 0x64, 0x64, 0x65, + 0x64, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x12, 0x69, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x64, 0x64, 0x65, 0x64, 0x46, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x3b, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x68, + 0x6f, 0x6e, 0x65, 0x22, 0x2b, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, + 0x22, 0x72, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x73, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x14, + 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x22, 0x21, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x30, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x05, 0x75, 0x73, 0x65, + 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2a, 0xa4, 0x01, 0x0a, 0x0c, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x54, + 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x54, + 0x5f, 0x47, 0x41, 0x4d, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x54, 0x5f, + 0x44, 0x45, 0x46, 0x52, 0x41, 0x55, 0x44, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, + 0x48, 0x41, 0x52, 0x41, 0x53, 0x53, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, 0x52, + 0x55, 0x4d, 0x4f, 0x55, 0x52, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x54, 0x5f, 0x43, 0x4f, + 0x55, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x45, 0x49, 0x54, 0x5f, 0x47, 0x4f, 0x4f, 0x44, 0x53, 0x5f, + 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x54, 0x5f, 0x56, 0x49, 0x4f, + 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4f, 0x46, 0x5f, 0x4d, 0x49, 0x4e, 0x4f, 0x52, 0x53, + 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x54, 0x5f, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x07, + 0x2a, 0x6e, 0x0a, 0x16, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x55, 0x4e, + 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x10, 0x00, 0x12, + 0x10, 0x0a, 0x0c, 0x4f, 0x4e, 0x4c, 0x59, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x10, + 0x01, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x5f, 0x41, 0x4e, 0x44, + 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x4f, 0x54, + 0x49, 0x43, 0x45, 0x5f, 0x41, 0x4e, 0x44, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x55, 0x50, 0x10, 0x03, + 0x32, 0x94, 0x05, 0x0a, 0x0b, 0x42, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x45, 0x78, 0x74, + 0x12, 0x27, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x12, 0x0d, 0x2e, 0x70, 0x62, 0x2e, + 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x53, + 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x07, 0x47, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x52, 0x65, 0x71, 0x1a, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x12, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x12, 0x33, 0x0a, 0x0a, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x12, + 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, 0x65, 0x72, 0x52, + 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x42, 0x0a, 0x0f, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, + 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x43, + 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, + 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x55, 0x70, 0x6c, 0x6f, + 0x61, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2f, 0x0a, 0x0c, 0x45, 0x6d, + 0x6f, 0x74, 0x69, 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x69, + 0x63, 0x6f, 0x6e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x09, 0x49, + 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x49, 0x73, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, + 0x49, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, + 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, + 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, + 0x3a, 0x0a, 0x12, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, + 0x6f, 0x74, 0x69, 0x63, 0x65, 0x12, 0x19, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, + 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x0f, 0x56, + 0x69, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x12, 0x16, + 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x69, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, + 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x56, 0x69, 0x65, 0x77, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x34, 0x0a, 0x0f, 0x4c, 0x69, 0x6b, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, + 0x63, 0x65, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x4c, 0x69, 0x6b, 0x65, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x40, 0x0a, 0x15, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4c, + 0x69, 0x6b, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x12, 0x1c, + 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x4c, 0x69, 0x6b, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, + 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x10, 0x5a, 0x0e, 0x65, 0x67, 0x67, 0x2d, 0x69, + 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( @@ -1243,54 +1634,70 @@ func file_business_ext_proto_rawDescGZIP() []byte { return file_business_ext_proto_rawDescData } -var file_business_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_business_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 15) +var file_business_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_business_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 20) var file_business_ext_proto_goTypes = []interface{}{ - (ComplainType)(0), // 0: pb.ComplainType - (*ComplainGroupReq)(nil), // 1: pb.ComplainGroupReq - (*IsFriendsReq)(nil), // 2: pb.IsFriendsReq - (*IsFriendsResp)(nil), // 3: pb.IsFriendsResp - (*Emoticon)(nil), // 4: pb.Emoticon - (*EmoticonListResp)(nil), // 5: pb.EmoticonListResp - (*SignInReq)(nil), // 6: pb.SignInReq - (*SignInResp)(nil), // 7: pb.SignInResp - (*CloudUploadFileReq)(nil), // 8: pb.CloudUploadFileReq - (*CloudUploadFileResp)(nil), // 9: pb.CloudUploadFileResp - (*User)(nil), // 10: pb.User - (*GetUserReq)(nil), // 11: pb.GetUserReq - (*GetUserResp)(nil), // 12: pb.GetUserResp - (*UpdateUserReq)(nil), // 13: pb.UpdateUserReq - (*SearchUserReq)(nil), // 14: pb.SearchUserReq - (*SearchUserResp)(nil), // 15: pb.SearchUserResp - (*Empty)(nil), // 16: pb.Empty + (ComplainType)(0), // 0: pb.ComplainType + (GroupNoticePublishType)(0), // 1: pb.GroupNoticePublishType + (*LikeGroupNoticeReq)(nil), // 2: pb.LikeGroupNoticeReq + (*CancelLikeGroupNoticeReq)(nil), // 3: pb.CancelLikeGroupNoticeReq + (*ViewGroupNoticeReq)(nil), // 4: pb.ViewGroupNoticeReq + (*ViewGroupNoticeResp)(nil), // 5: pb.ViewGroupNoticeResp + (*PublishGroupNoticeReq)(nil), // 6: pb.PublishGroupNoticeReq + (*ComplainGroupReq)(nil), // 7: pb.ComplainGroupReq + (*IsFriendsReq)(nil), // 8: pb.IsFriendsReq + (*IsFriendsResp)(nil), // 9: pb.IsFriendsResp + (*Emoticon)(nil), // 10: pb.Emoticon + (*EmoticonListResp)(nil), // 11: pb.EmoticonListResp + (*SignInReq)(nil), // 12: pb.SignInReq + (*SignInResp)(nil), // 13: pb.SignInResp + (*CloudUploadFileReq)(nil), // 14: pb.CloudUploadFileReq + (*CloudUploadFileResp)(nil), // 15: pb.CloudUploadFileResp + (*User)(nil), // 16: pb.User + (*GetUserReq)(nil), // 17: pb.GetUserReq + (*GetUserResp)(nil), // 18: pb.GetUserResp + (*UpdateUserReq)(nil), // 19: pb.UpdateUserReq + (*SearchUserReq)(nil), // 20: pb.SearchUserReq + (*SearchUserResp)(nil), // 21: pb.SearchUserResp + (*Empty)(nil), // 22: pb.Empty } var file_business_ext_proto_depIdxs = []int32{ - 0, // 0: pb.ComplainGroupReq.complain_type:type_name -> pb.ComplainType - 10, // 1: pb.IsFriendsResp.user:type_name -> pb.User - 4, // 2: pb.EmoticonListResp.emoticons:type_name -> pb.Emoticon - 10, // 3: pb.GetUserResp.user:type_name -> pb.User - 10, // 4: pb.SearchUserResp.users:type_name -> pb.User - 6, // 5: pb.BusinessExt.SignIn:input_type -> pb.SignInReq - 11, // 6: pb.BusinessExt.GetUser:input_type -> pb.GetUserReq - 13, // 7: pb.BusinessExt.UpdateUser:input_type -> pb.UpdateUserReq - 14, // 8: pb.BusinessExt.SearchUser:input_type -> pb.SearchUserReq - 8, // 9: pb.BusinessExt.CloudUploadFile:input_type -> pb.CloudUploadFileReq - 16, // 10: pb.BusinessExt.EmoticonList:input_type -> pb.Empty - 2, // 11: pb.BusinessExt.IsFriends:input_type -> pb.IsFriendsReq - 1, // 12: pb.BusinessExt.ComplainGroup:input_type -> pb.ComplainGroupReq - 7, // 13: pb.BusinessExt.SignIn:output_type -> pb.SignInResp - 12, // 14: pb.BusinessExt.GetUser:output_type -> pb.GetUserResp - 16, // 15: pb.BusinessExt.UpdateUser:output_type -> pb.Empty - 15, // 16: pb.BusinessExt.SearchUser:output_type -> pb.SearchUserResp - 9, // 17: pb.BusinessExt.CloudUploadFile:output_type -> pb.CloudUploadFileResp - 5, // 18: pb.BusinessExt.EmoticonList:output_type -> pb.EmoticonListResp - 3, // 19: pb.BusinessExt.IsFriends:output_type -> pb.IsFriendsResp - 16, // 20: pb.BusinessExt.ComplainGroup:output_type -> pb.Empty - 13, // [13:21] is the sub-list for method output_type - 5, // [5:13] is the sub-list for method input_type - 5, // [5:5] is the sub-list for extension type_name - 5, // [5:5] is the sub-list for extension extendee - 0, // [0:5] is the sub-list for field type_name + 1, // 0: pb.ViewGroupNoticeResp.publish_type:type_name -> pb.GroupNoticePublishType + 1, // 1: pb.PublishGroupNoticeReq.publish_type:type_name -> pb.GroupNoticePublishType + 0, // 2: pb.ComplainGroupReq.complain_type:type_name -> pb.ComplainType + 16, // 3: pb.IsFriendsResp.user:type_name -> pb.User + 10, // 4: pb.EmoticonListResp.emoticons:type_name -> pb.Emoticon + 16, // 5: pb.GetUserResp.user:type_name -> pb.User + 16, // 6: pb.SearchUserResp.users:type_name -> pb.User + 12, // 7: pb.BusinessExt.SignIn:input_type -> pb.SignInReq + 17, // 8: pb.BusinessExt.GetUser:input_type -> pb.GetUserReq + 19, // 9: pb.BusinessExt.UpdateUser:input_type -> pb.UpdateUserReq + 20, // 10: pb.BusinessExt.SearchUser:input_type -> pb.SearchUserReq + 14, // 11: pb.BusinessExt.CloudUploadFile:input_type -> pb.CloudUploadFileReq + 22, // 12: pb.BusinessExt.EmoticonList:input_type -> pb.Empty + 8, // 13: pb.BusinessExt.IsFriends:input_type -> pb.IsFriendsReq + 7, // 14: pb.BusinessExt.ComplainGroup:input_type -> pb.ComplainGroupReq + 6, // 15: pb.BusinessExt.PublishGroupNotice:input_type -> pb.PublishGroupNoticeReq + 4, // 16: pb.BusinessExt.ViewGroupNotice:input_type -> pb.ViewGroupNoticeReq + 2, // 17: pb.BusinessExt.LikeGroupNotice:input_type -> pb.LikeGroupNoticeReq + 3, // 18: pb.BusinessExt.CancelLikeGroupNotice:input_type -> pb.CancelLikeGroupNoticeReq + 13, // 19: pb.BusinessExt.SignIn:output_type -> pb.SignInResp + 18, // 20: pb.BusinessExt.GetUser:output_type -> pb.GetUserResp + 22, // 21: pb.BusinessExt.UpdateUser:output_type -> pb.Empty + 21, // 22: pb.BusinessExt.SearchUser:output_type -> pb.SearchUserResp + 15, // 23: pb.BusinessExt.CloudUploadFile:output_type -> pb.CloudUploadFileResp + 11, // 24: pb.BusinessExt.EmoticonList:output_type -> pb.EmoticonListResp + 9, // 25: pb.BusinessExt.IsFriends:output_type -> pb.IsFriendsResp + 22, // 26: pb.BusinessExt.ComplainGroup:output_type -> pb.Empty + 22, // 27: pb.BusinessExt.PublishGroupNotice:output_type -> pb.Empty + 5, // 28: pb.BusinessExt.ViewGroupNotice:output_type -> pb.ViewGroupNoticeResp + 22, // 29: pb.BusinessExt.LikeGroupNotice:output_type -> pb.Empty + 22, // 30: pb.BusinessExt.CancelLikeGroupNotice:output_type -> pb.Empty + 19, // [19:31] is the sub-list for method output_type + 7, // [7:19] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name } func init() { file_business_ext_proto_init() } @@ -1301,7 +1708,7 @@ func file_business_ext_proto_init() { file_common_ext_proto_init() if !protoimpl.UnsafeEnabled { file_business_ext_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ComplainGroupReq); i { + switch v := v.(*LikeGroupNoticeReq); i { case 0: return &v.state case 1: @@ -1313,7 +1720,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsFriendsReq); i { + switch v := v.(*CancelLikeGroupNoticeReq); i { case 0: return &v.state case 1: @@ -1325,7 +1732,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*IsFriendsResp); i { + switch v := v.(*ViewGroupNoticeReq); i { case 0: return &v.state case 1: @@ -1337,7 +1744,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Emoticon); i { + switch v := v.(*ViewGroupNoticeResp); i { case 0: return &v.state case 1: @@ -1349,7 +1756,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EmoticonListResp); i { + switch v := v.(*PublishGroupNoticeReq); i { case 0: return &v.state case 1: @@ -1361,7 +1768,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignInReq); i { + switch v := v.(*ComplainGroupReq); i { case 0: return &v.state case 1: @@ -1373,7 +1780,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SignInResp); i { + switch v := v.(*IsFriendsReq); i { case 0: return &v.state case 1: @@ -1385,7 +1792,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CloudUploadFileReq); i { + switch v := v.(*IsFriendsResp); i { case 0: return &v.state case 1: @@ -1397,7 +1804,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CloudUploadFileResp); i { + switch v := v.(*Emoticon); i { case 0: return &v.state case 1: @@ -1409,7 +1816,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*User); i { + switch v := v.(*EmoticonListResp); i { case 0: return &v.state case 1: @@ -1421,7 +1828,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserReq); i { + switch v := v.(*SignInReq); i { case 0: return &v.state case 1: @@ -1433,7 +1840,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserResp); i { + switch v := v.(*SignInResp); i { case 0: return &v.state case 1: @@ -1445,7 +1852,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateUserReq); i { + switch v := v.(*CloudUploadFileReq); i { case 0: return &v.state case 1: @@ -1457,7 +1864,7 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SearchUserReq); i { + switch v := v.(*CloudUploadFileResp); i { case 0: return &v.state case 1: @@ -1469,6 +1876,66 @@ func file_business_ext_proto_init() { } } file_business_ext_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*User); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_business_ext_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetUserReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_business_ext_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetUserResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_business_ext_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateUserReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_business_ext_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchUserReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_business_ext_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SearchUserResp); i { case 0: return &v.state @@ -1486,8 +1953,8 @@ func file_business_ext_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_business_ext_proto_rawDesc, - NumEnums: 1, - NumMessages: 15, + NumEnums: 2, + NumMessages: 20, NumExtensions: 0, NumServices: 1, }, @@ -1527,6 +1994,14 @@ type BusinessExtClient interface { IsFriends(ctx context.Context, in *IsFriendsReq, opts ...grpc.CallOption) (*IsFriendsResp, error) // 投诉群 ComplainGroup(ctx context.Context, in *ComplainGroupReq, opts ...grpc.CallOption) (*Empty, error) + // 发布群公告 + PublishGroupNotice(ctx context.Context, in *PublishGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) + // 查看群公告 + ViewGroupNotice(ctx context.Context, in *ViewGroupNoticeReq, opts ...grpc.CallOption) (*ViewGroupNoticeResp, error) + // 点赞群公告 + LikeGroupNotice(ctx context.Context, in *LikeGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) + // 取消点赞群公告 + CancelLikeGroupNotice(ctx context.Context, in *CancelLikeGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) } type businessExtClient struct { @@ -1609,6 +2084,42 @@ func (c *businessExtClient) ComplainGroup(ctx context.Context, in *ComplainGroup return out, nil } +func (c *businessExtClient) PublishGroupNotice(ctx context.Context, in *PublishGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) { + out := new(Empty) + err := c.cc.Invoke(ctx, "/pb.BusinessExt/PublishGroupNotice", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *businessExtClient) ViewGroupNotice(ctx context.Context, in *ViewGroupNoticeReq, opts ...grpc.CallOption) (*ViewGroupNoticeResp, error) { + out := new(ViewGroupNoticeResp) + err := c.cc.Invoke(ctx, "/pb.BusinessExt/ViewGroupNotice", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *businessExtClient) LikeGroupNotice(ctx context.Context, in *LikeGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) { + out := new(Empty) + err := c.cc.Invoke(ctx, "/pb.BusinessExt/LikeGroupNotice", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *businessExtClient) CancelLikeGroupNotice(ctx context.Context, in *CancelLikeGroupNoticeReq, opts ...grpc.CallOption) (*Empty, error) { + out := new(Empty) + err := c.cc.Invoke(ctx, "/pb.BusinessExt/CancelLikeGroupNotice", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // BusinessExtServer is the server API for BusinessExt service. // All implementations must embed UnimplementedBusinessExtServer // for forward compatibility @@ -1629,6 +2140,14 @@ type BusinessExtServer interface { IsFriends(context.Context, *IsFriendsReq) (*IsFriendsResp, error) // 投诉群 ComplainGroup(context.Context, *ComplainGroupReq) (*Empty, error) + // 发布群公告 + PublishGroupNotice(context.Context, *PublishGroupNoticeReq) (*Empty, error) + // 查看群公告 + ViewGroupNotice(context.Context, *ViewGroupNoticeReq) (*ViewGroupNoticeResp, error) + // 点赞群公告 + LikeGroupNotice(context.Context, *LikeGroupNoticeReq) (*Empty, error) + // 取消点赞群公告 + CancelLikeGroupNotice(context.Context, *CancelLikeGroupNoticeReq) (*Empty, error) } // UnimplementedBusinessExtServer must be embedded to have forward compatible implementations. @@ -1659,6 +2178,18 @@ func (UnimplementedBusinessExtServer) IsFriends(context.Context, *IsFriendsReq) func (UnimplementedBusinessExtServer) ComplainGroup(context.Context, *ComplainGroupReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ComplainGroup not implemented") } +func (UnimplementedBusinessExtServer) PublishGroupNotice(context.Context, *PublishGroupNoticeReq) (*Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method PublishGroupNotice not implemented") +} +func (UnimplementedBusinessExtServer) ViewGroupNotice(context.Context, *ViewGroupNoticeReq) (*ViewGroupNoticeResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method ViewGroupNotice not implemented") +} +func (UnimplementedBusinessExtServer) LikeGroupNotice(context.Context, *LikeGroupNoticeReq) (*Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method LikeGroupNotice not implemented") +} +func (UnimplementedBusinessExtServer) CancelLikeGroupNotice(context.Context, *CancelLikeGroupNoticeReq) (*Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method CancelLikeGroupNotice not implemented") +} func RegisterBusinessExtServer(s grpc.ServiceRegistrar, srv BusinessExtServer) { s.RegisterService(&BusinessExt_ServiceDesc, srv) @@ -1808,6 +2339,78 @@ func _BusinessExt_ComplainGroup_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } +func _BusinessExt_PublishGroupNotice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PublishGroupNoticeReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BusinessExtServer).PublishGroupNotice(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.BusinessExt/PublishGroupNotice", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BusinessExtServer).PublishGroupNotice(ctx, req.(*PublishGroupNoticeReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _BusinessExt_ViewGroupNotice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ViewGroupNoticeReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BusinessExtServer).ViewGroupNotice(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.BusinessExt/ViewGroupNotice", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BusinessExtServer).ViewGroupNotice(ctx, req.(*ViewGroupNoticeReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _BusinessExt_LikeGroupNotice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(LikeGroupNoticeReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BusinessExtServer).LikeGroupNotice(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.BusinessExt/LikeGroupNotice", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BusinessExtServer).LikeGroupNotice(ctx, req.(*LikeGroupNoticeReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _BusinessExt_CancelLikeGroupNotice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CancelLikeGroupNoticeReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BusinessExtServer).CancelLikeGroupNotice(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.BusinessExt/CancelLikeGroupNotice", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BusinessExtServer).CancelLikeGroupNotice(ctx, req.(*CancelLikeGroupNoticeReq)) + } + return interceptor(ctx, in, info, handler) +} + // BusinessExt_ServiceDesc is the grpc.ServiceDesc for BusinessExt service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -1847,6 +2450,22 @@ var BusinessExt_ServiceDesc = grpc.ServiceDesc{ MethodName: "ComplainGroup", Handler: _BusinessExt_ComplainGroup_Handler, }, + { + MethodName: "PublishGroupNotice", + Handler: _BusinessExt_PublishGroupNotice_Handler, + }, + { + MethodName: "ViewGroupNotice", + Handler: _BusinessExt_ViewGroupNotice_Handler, + }, + { + MethodName: "LikeGroupNotice", + Handler: _BusinessExt_LikeGroupNotice_Handler, + }, + { + MethodName: "CancelLikeGroupNotice", + Handler: _BusinessExt_CancelLikeGroupNotice_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "business.ext.proto", diff --git a/app/pkg/pb/im.business.int.pb.go b/app/pkg/pb/business.int.pb.go similarity index 63% rename from app/pkg/pb/im.business.int.pb.go rename to app/pkg/pb/business.int.pb.go index 3a3f110..a77ef2b 100644 --- a/app/pkg/pb/im.business.int.pb.go +++ b/app/pkg/pb/business.int.pb.go @@ -1,8 +1,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 -// protoc v3.20.0--rc1 -// source: im.business.int.proto +// protoc v3.20.0--rc2 +// source: business.int.proto package pb @@ -24,53 +24,6 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -type MasterAuthReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MasterId string `protobuf:"bytes,1,opt,name=master_id,json=masterId,proto3" json:"master_id,omitempty"` -} - -func (x *MasterAuthReq) Reset() { - *x = MasterAuthReq{} - if protoimpl.UnsafeEnabled { - mi := &file_business_int_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MasterAuthReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MasterAuthReq) ProtoMessage() {} - -func (x *MasterAuthReq) ProtoReflect() protoreflect.Message { - mi := &file_business_int_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 MasterAuthReq.ProtoReflect.Descriptor instead. -func (*MasterAuthReq) Descriptor() ([]byte, []int) { - return file_business_int_proto_rawDescGZIP(), []int{0} -} - -func (x *MasterAuthReq) GetMasterId() string { - if x != nil { - return x.MasterId - } - return "" -} - type AuthReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -84,7 +37,7 @@ type AuthReq struct { func (x *AuthReq) Reset() { *x = AuthReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_int_proto_msgTypes[1] + mi := &file_business_int_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -97,7 +50,7 @@ func (x *AuthReq) String() string { func (*AuthReq) ProtoMessage() {} func (x *AuthReq) ProtoReflect() protoreflect.Message { - mi := &file_business_int_proto_msgTypes[1] + mi := &file_business_int_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -110,7 +63,7 @@ func (x *AuthReq) ProtoReflect() protoreflect.Message { // Deprecated: Use AuthReq.ProtoReflect.Descriptor instead. func (*AuthReq) Descriptor() ([]byte, []int) { - return file_business_int_proto_rawDescGZIP(), []int{1} + return file_business_int_proto_rawDescGZIP(), []int{0} } func (x *AuthReq) GetUserId() int64 { @@ -145,7 +98,7 @@ type GetUsersReq struct { func (x *GetUsersReq) Reset() { *x = GetUsersReq{} if protoimpl.UnsafeEnabled { - mi := &file_business_int_proto_msgTypes[2] + mi := &file_business_int_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -158,7 +111,7 @@ func (x *GetUsersReq) String() string { func (*GetUsersReq) ProtoMessage() {} func (x *GetUsersReq) ProtoReflect() protoreflect.Message { - mi := &file_business_int_proto_msgTypes[2] + mi := &file_business_int_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -171,7 +124,7 @@ func (x *GetUsersReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUsersReq.ProtoReflect.Descriptor instead. func (*GetUsersReq) Descriptor() ([]byte, []int) { - return file_business_int_proto_rawDescGZIP(), []int{2} + return file_business_int_proto_rawDescGZIP(), []int{1} } func (x *GetUsersReq) GetUserIds() map[int64]int32 { @@ -192,7 +145,7 @@ type GetUsersResp struct { func (x *GetUsersResp) Reset() { *x = GetUsersResp{} if protoimpl.UnsafeEnabled { - mi := &file_business_int_proto_msgTypes[3] + mi := &file_business_int_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -205,7 +158,7 @@ func (x *GetUsersResp) String() string { func (*GetUsersResp) ProtoMessage() {} func (x *GetUsersResp) ProtoReflect() protoreflect.Message { - mi := &file_business_int_proto_msgTypes[3] + mi := &file_business_int_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -218,7 +171,7 @@ func (x *GetUsersResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUsersResp.ProtoReflect.Descriptor instead. func (*GetUsersResp) Descriptor() ([]byte, []int) { - return file_business_int_proto_rawDescGZIP(), []int{3} + return file_business_int_proto_rawDescGZIP(), []int{2} } func (x *GetUsersResp) GetUsers() map[int64]*User { @@ -234,45 +187,40 @@ var file_business_int_proto_rawDesc = []byte{ 0x0a, 0x12, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x62, 0x75, 0x73, 0x69, - 0x6e, 0x65, 0x73, 0x73, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2c, - 0x0a, 0x0d, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x12, - 0x1b, 0x0a, 0x09, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x49, 0x64, 0x22, 0x55, 0x0a, 0x07, - 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x22, 0x82, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x1a, 0x3a, 0x0a, 0x0c, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x85, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a, 0x05, 0x75, 0x73, 0x65, - 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x1a, 0x42, 0x0a, 0x0a, - 0x55, 0x73, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x70, 0x62, - 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x32, 0xb4, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x74, - 0x12, 0x2a, 0x0a, 0x0a, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x12, 0x11, - 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, - 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x04, - 0x41, 0x75, 0x74, 0x68, 0x12, 0x0b, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, - 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x07, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2d, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x73, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, - 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, - 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f, 0x70, - 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x65, 0x73, 0x73, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x55, + 0x0a, 0x07, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x82, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x1a, 0x3a, + 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x85, 0x01, 0x0a, 0x0c, 0x47, + 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a, 0x05, 0x75, + 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x62, 0x2e, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x55, 0x73, 0x65, + 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x1a, 0x42, + 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1e, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, + 0x70, 0x62, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x32, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x49, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x04, 0x41, 0x75, 0x74, 0x68, 0x12, 0x0b, 0x2e, 0x70, 0x62, 0x2e, + 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x2e, + 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x0f, 0x2e, + 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2d, + 0x0a, 0x08, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, + 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x70, 0x62, + 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x42, 0x0d, 0x5a, + 0x0b, 0x67, 0x69, 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -287,33 +235,30 @@ func file_business_int_proto_rawDescGZIP() []byte { return file_business_int_proto_rawDescData } -var file_business_int_proto_msgTypes = make([]protoimpl.MessageInfo, 6) +var file_business_int_proto_msgTypes = make([]protoimpl.MessageInfo, 5) var file_business_int_proto_goTypes = []interface{}{ - (*MasterAuthReq)(nil), // 0: pb.MasterAuthReq - (*AuthReq)(nil), // 1: pb.AuthReq - (*GetUsersReq)(nil), // 2: pb.GetUsersReq - (*GetUsersResp)(nil), // 3: pb.GetUsersResp - nil, // 4: pb.GetUsersReq.UserIdsEntry - nil, // 5: pb.GetUsersResp.UsersEntry - (*User)(nil), // 6: pb.User - (*GetUserReq)(nil), // 7: pb.GetUserReq - (*Empty)(nil), // 8: pb.Empty - (*GetUserResp)(nil), // 9: pb.GetUserResp + (*AuthReq)(nil), // 0: pb.AuthReq + (*GetUsersReq)(nil), // 1: pb.GetUsersReq + (*GetUsersResp)(nil), // 2: pb.GetUsersResp + nil, // 3: pb.GetUsersReq.UserIdsEntry + nil, // 4: pb.GetUsersResp.UsersEntry + (*User)(nil), // 5: pb.User + (*GetUserReq)(nil), // 6: pb.GetUserReq + (*Empty)(nil), // 7: pb.Empty + (*GetUserResp)(nil), // 8: pb.GetUserResp } var file_business_int_proto_depIdxs = []int32{ - 4, // 0: pb.GetUsersReq.user_ids:type_name -> pb.GetUsersReq.UserIdsEntry - 5, // 1: pb.GetUsersResp.users:type_name -> pb.GetUsersResp.UsersEntry - 6, // 2: pb.GetUsersResp.UsersEntry.value:type_name -> pb.User - 0, // 3: pb.BusinessInt.MasterAuth:input_type -> pb.MasterAuthReq - 1, // 4: pb.BusinessInt.Auth:input_type -> pb.AuthReq - 7, // 5: pb.BusinessInt.GetUser:input_type -> pb.GetUserReq - 2, // 6: pb.BusinessInt.GetUsers:input_type -> pb.GetUsersReq - 8, // 7: pb.BusinessInt.MasterAuth:output_type -> pb.Empty - 8, // 8: pb.BusinessInt.Auth:output_type -> pb.Empty - 9, // 9: pb.BusinessInt.GetUser:output_type -> pb.GetUserResp - 3, // 10: pb.BusinessInt.GetUsers:output_type -> pb.GetUsersResp - 7, // [7:11] is the sub-list for method output_type - 3, // [3:7] is the sub-list for method input_type + 3, // 0: pb.GetUsersReq.user_ids:type_name -> pb.GetUsersReq.UserIdsEntry + 4, // 1: pb.GetUsersResp.users:type_name -> pb.GetUsersResp.UsersEntry + 5, // 2: pb.GetUsersResp.UsersEntry.value:type_name -> pb.User + 0, // 3: pb.BusinessInt.Auth:input_type -> pb.AuthReq + 6, // 4: pb.BusinessInt.GetUser:input_type -> pb.GetUserReq + 1, // 5: pb.BusinessInt.GetUsers:input_type -> pb.GetUsersReq + 7, // 6: pb.BusinessInt.Auth:output_type -> pb.Empty + 8, // 7: pb.BusinessInt.GetUser:output_type -> pb.GetUserResp + 2, // 8: pb.BusinessInt.GetUsers:output_type -> pb.GetUsersResp + 6, // [6:9] is the sub-list for method output_type + 3, // [3:6] is the sub-list for method input_type 3, // [3:3] is the sub-list for extension type_name 3, // [3:3] is the sub-list for extension extendee 0, // [0:3] is the sub-list for field type_name @@ -328,18 +273,6 @@ func file_business_int_proto_init() { file_business_ext_proto_init() if !protoimpl.UnsafeEnabled { file_business_int_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MasterAuthReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_business_int_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AuthReq); i { case 0: return &v.state @@ -351,7 +284,7 @@ func file_business_int_proto_init() { return nil } } - file_business_int_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_business_int_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetUsersReq); i { case 0: return &v.state @@ -363,7 +296,7 @@ func file_business_int_proto_init() { return nil } } - file_business_int_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_business_int_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetUsersResp); i { case 0: return &v.state @@ -382,7 +315,7 @@ func file_business_int_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_business_int_proto_rawDesc, NumEnums: 0, - NumMessages: 6, + NumMessages: 5, NumExtensions: 0, NumServices: 1, }, @@ -405,8 +338,6 @@ const _ = grpc.SupportPackageIsVersion7 // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type BusinessIntClient interface { - // 站长权限校验 - MasterAuth(ctx context.Context, in *MasterAuthReq, opts ...grpc.CallOption) (*Empty, error) // 权限校验 Auth(ctx context.Context, in *AuthReq, opts ...grpc.CallOption) (*Empty, error) // 批量获取用户信息 @@ -423,15 +354,6 @@ func NewBusinessIntClient(cc grpc.ClientConnInterface) BusinessIntClient { return &businessIntClient{cc} } -func (c *businessIntClient) MasterAuth(ctx context.Context, in *MasterAuthReq, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/pb.BusinessInt/MasterAuth", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *businessIntClient) Auth(ctx context.Context, in *AuthReq, opts ...grpc.CallOption) (*Empty, error) { out := new(Empty) err := c.cc.Invoke(ctx, "/pb.BusinessInt/Auth", in, out, opts...) @@ -463,8 +385,6 @@ func (c *businessIntClient) GetUsers(ctx context.Context, in *GetUsersReq, opts // All implementations must embed UnimplementedBusinessIntServer // for forward compatibility type BusinessIntServer interface { - // 站长权限校验 - MasterAuth(context.Context, *MasterAuthReq) (*Empty, error) // 权限校验 Auth(context.Context, *AuthReq) (*Empty, error) // 批量获取用户信息 @@ -477,9 +397,6 @@ type BusinessIntServer interface { type UnimplementedBusinessIntServer struct { } -func (UnimplementedBusinessIntServer) MasterAuth(context.Context, *MasterAuthReq) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method MasterAuth not implemented") -} func (UnimplementedBusinessIntServer) Auth(context.Context, *AuthReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method Auth not implemented") } @@ -494,24 +411,6 @@ func RegisterBusinessIntServer(s grpc.ServiceRegistrar, srv BusinessIntServer) { s.RegisterService(&BusinessInt_ServiceDesc, srv) } -func _BusinessInt_MasterAuth_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(MasterAuthReq) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BusinessIntServer).MasterAuth(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/pb.BusinessInt/MasterAuth", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BusinessIntServer).MasterAuth(ctx, req.(*MasterAuthReq)) - } - return interceptor(ctx, in, info, handler) -} - func _BusinessInt_Auth_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AuthReq) if err := dec(in); err != nil { @@ -573,10 +472,6 @@ var BusinessInt_ServiceDesc = grpc.ServiceDesc{ ServiceName: "pb.BusinessInt", HandlerType: (*BusinessIntServer)(nil), Methods: []grpc.MethodDesc{ - { - MethodName: "MasterAuth", - Handler: _BusinessInt_MasterAuth_Handler, - }, { MethodName: "Auth", Handler: _BusinessInt_Auth_Handler, @@ -591,5 +486,5 @@ var BusinessInt_ServiceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "im.business.int.proto", + Metadata: "business.int.proto", } diff --git a/app/pkg/pb/im.common.ext.pb.go b/app/pkg/pb/common.ext.pb.go similarity index 100% rename from app/pkg/pb/im.common.ext.pb.go rename to app/pkg/pb/common.ext.pb.go diff --git a/app/pkg/pb/im.connect.ext.pb.go b/app/pkg/pb/connect.ext.pb.go similarity index 78% rename from app/pkg/pb/im.connect.ext.pb.go rename to app/pkg/pb/connect.ext.pb.go index 08fca7e..f432213 100644 --- a/app/pkg/pb/im.connect.ext.pb.go +++ b/app/pkg/pb/connect.ext.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 -// protoc v3.20.0--rc1 +// protoc v3.20.0--rc2 // source: connect.ext.proto package pb @@ -975,10 +975,13 @@ type File struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id int64 `protobuf:"varint,12,opt,name=id,proto3" json:"id,omitempty"` // 文件id - Name string `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"` // 文件名 - Size int64 `protobuf:"varint,14,opt,name=size,proto3" json:"size,omitempty"` // 文件大小 - Url string `protobuf:"bytes,15,opt,name=url,proto3" json:"url,omitempty"` // 文件url + Id int64 `protobuf:"varint,12,opt,name=id,proto3" json:"id,omitempty"` // 文件id + Name string `protobuf:"bytes,13,opt,name=name,proto3" json:"name,omitempty"` // 文件名 + Size int64 `protobuf:"varint,14,opt,name=size,proto3" json:"size,omitempty"` // 文件大小 + Url string `protobuf:"bytes,15,opt,name=url,proto3" json:"url,omitempty"` // 文件url + Width int32 `protobuf:"varint,16,opt,name=width,proto3" json:"width,omitempty"` // 文件宽度 + Height int32 `protobuf:"varint,17,opt,name=height,proto3" json:"height,omitempty"` // 文件长度 + ThumbnailUrl string `protobuf:"bytes,18,opt,name=thumbnail_url,json=thumbnailUrl,proto3" json:"thumbnail_url,omitempty"` // 文件缩略图url } func (x *File) Reset() { @@ -1041,6 +1044,27 @@ func (x *File) GetUrl() string { return "" } +func (x *File) GetWidth() int32 { + if x != nil { + return x.Width + } + return 0 +} + +func (x *File) GetHeight() int32 { + if x != nil { + return x.Height + } + return 0 +} + +func (x *File) GetThumbnailUrl() string { + if x != nil { + return x.ThumbnailUrl + } + return "" +} + // 地理位置消息 type Location struct { state protoimpl.MessageState @@ -1954,177 +1978,182 @@ var file_connect_ext_proto_rawDesc = []byte{ 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x55, 0x72, 0x6c, 0x22, 0x50, - 0x0a, 0x04, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, - 0x7a, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x10, - 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, - 0x22, 0x58, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, - 0x64, 0x65, 0x73, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x65, 0x73, 0x63, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x01, 0x52, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, - 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x22, 0x31, 0x0a, 0x07, 0x43, 0x6f, - 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x1c, 0x0a, - 0x06, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a, 0x06, 0x52, - 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x5f, - 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x63, 0x61, 0x6c, - 0x6c, 0x53, 0x65, 0x71, 0x22, 0xd4, 0x06, 0x0a, 0x0b, 0x52, 0x45, 0x44, 0x5f, 0x50, 0x41, 0x43, - 0x4b, 0x41, 0x47, 0x45, 0x12, 0x42, 0x0a, 0x10, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, - 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x72, 0x65, 0x64, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x0f, 0x72, 0x65, 0x64, 0x5f, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, - 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f, 0x72, 0x65, - 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, - 0x0f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x73, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, - 0x74, 0x4e, 0x75, 0x6d, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, - 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x16, - 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x69, - 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x16, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, - 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x13, 0x72, 0x65, 0x64, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, - 0x65, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x64, - 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x55, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x64, 0x5f, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, - 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x1a, - 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x16, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x41, - 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x37, 0x0a, 0x18, 0x72, 0x65, 0x64, 0x5f, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x72, 0x65, 0x64, 0x50, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x64, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x22, 0x5f, 0x0a, 0x05, 0x49, - 0x6e, 0x70, 0x75, 0x74, 0x12, 0x23, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8e, 0x01, 0x0a, - 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x23, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x59, 0x0a, - 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x1d, 0x0a, 0x09, 0x53, 0x79, 0x6e, 0x63, - 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0x50, 0x0a, 0x0a, 0x53, 0x79, 0x6e, 0x63, 0x4f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x19, - 0x0a, 0x08, 0x68, 0x61, 0x73, 0x5f, 0x6d, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x22, 0x3f, 0x0a, 0x12, 0x53, 0x75, 0x62, - 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, - 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0x34, 0x0a, 0x0b, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x12, 0x25, 0x0a, 0x07, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x2e, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x22, 0x4e, 0x0a, 0x0a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x43, 0x4b, 0x12, 0x1d, - 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x6b, 0x12, 0x21, 0x0a, - 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x2a, 0x73, 0x0a, 0x0b, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x0e, 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, - 0x0e, 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x5f, 0x49, 0x4e, 0x10, 0x01, 0x12, - 0x0b, 0x0a, 0x07, 0x50, 0x54, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, - 0x50, 0x54, 0x5f, 0x48, 0x45, 0x41, 0x52, 0x54, 0x42, 0x45, 0x41, 0x54, 0x10, 0x03, 0x12, 0x0e, - 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0x04, 0x12, 0x15, - 0x0a, 0x11, 0x50, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x5f, 0x52, - 0x4f, 0x4f, 0x4d, 0x10, 0x05, 0x2a, 0xb3, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, - 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x54, 0x5f, 0x54, 0x45, 0x58, 0x54, - 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x54, 0x5f, 0x46, 0x41, 0x43, 0x45, 0x10, 0x02, 0x12, - 0x0c, 0x0a, 0x08, 0x4d, 0x54, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10, 0x03, 0x12, 0x0c, 0x0a, - 0x08, 0x4d, 0x54, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x4d, - 0x54, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x54, 0x5f, 0x4c, - 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x54, 0x5f, - 0x43, 0x4f, 0x4d, 0x4d, 0x41, 0x4e, 0x44, 0x10, 0x07, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, - 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x54, 0x5f, 0x52, - 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x4d, 0x54, 0x5f, 0x52, 0x45, - 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x41, 0x47, 0x45, 0x10, 0x0a, 0x2a, 0x87, 0x01, 0x0a, 0x0d, - 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, - 0x0b, 0x52, 0x50, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, - 0x0a, 0x0a, 0x52, 0x50, 0x54, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x14, - 0x0a, 0x10, 0x52, 0x50, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, - 0x41, 0x4c, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x50, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, - 0x50, 0x5f, 0x4c, 0x55, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x50, 0x54, 0x5f, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x4c, 0x59, 0x10, - 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x50, 0x54, 0x5f, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x5f, - 0x46, 0x4f, 0x52, 0x10, 0x05, 0x2a, 0x43, 0x0a, 0x14, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, - 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, - 0x0b, 0x52, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, - 0x0a, 0x08, 0x52, 0x4d, 0x54, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, - 0x52, 0x4d, 0x54, 0x5f, 0x47, 0x52, 0x41, 0x42, 0x10, 0x02, 0x2a, 0x5b, 0x0a, 0x13, 0x52, 0x65, - 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x50, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x52, 0x41, - 0x57, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x50, 0x53, 0x5f, 0x44, 0x52, 0x41, 0x57, 0x49, - 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x50, 0x53, 0x5f, 0x44, 0x52, 0x41, 0x57, - 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x50, 0x53, 0x5f, 0x45, - 0x58, 0x50, 0x49, 0x52, 0x45, 0x10, 0x03, 0x2a, 0x46, 0x0a, 0x0c, 0x52, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x54, 0x5f, 0x55, 0x4e, - 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x54, 0x5f, 0x55, 0x53, - 0x45, 0x52, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, - 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x54, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0x03, 0x2a, - 0x49, 0x0a, 0x0a, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, - 0x0a, 0x53, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, - 0x09, 0x53, 0x54, 0x5f, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, - 0x53, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x54, 0x5f, - 0x42, 0x55, 0x53, 0x49, 0x4e, 0x45, 0x53, 0x53, 0x10, 0x03, 0x2a, 0x3d, 0x0a, 0x0d, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, - 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4d, - 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4d, 0x53, - 0x5f, 0x52, 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x2a, 0x51, 0x0a, 0x13, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x00, 0x12, 0x1c, - 0x0a, 0x18, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x55, 0x53, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x01, 0x42, 0x0d, 0x5a, 0x0b, - 0x67, 0x69, 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x52, 0x0c, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x55, 0x72, 0x6c, 0x22, 0xa3, + 0x01, 0x0a, 0x04, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, + 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, + 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, + 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, + 0x23, 0x0a, 0x0d, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x5f, 0x75, 0x72, 0x6c, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, + 0x6c, 0x55, 0x72, 0x6c, 0x22, 0x58, 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x64, 0x65, 0x73, 0x63, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x01, 0x52, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x22, 0x31, + 0x0a, 0x07, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x22, 0x1c, 0x0a, 0x06, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, + 0x27, 0x0a, 0x06, 0x52, 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x63, + 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, + 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x53, 0x65, 0x71, 0x22, 0xd4, 0x06, 0x0a, 0x0b, 0x52, 0x45, 0x44, + 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x41, 0x47, 0x45, 0x12, 0x42, 0x0a, 0x10, 0x72, 0x65, 0x64, 0x5f, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, + 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x72, 0x65, + 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x0f, + 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x64, 0x5f, 0x70, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, + 0x52, 0x0f, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, + 0x6e, 0x75, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x65, 0x64, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x75, 0x6d, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x65, 0x64, + 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x5f, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x02, 0x52, 0x16, 0x72, 0x65, + 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x41, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, + 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x30, + 0x0a, 0x14, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x72, 0x65, + 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x34, 0x0a, 0x16, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x14, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x69, + 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x16, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x64, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x13, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x64, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x13, 0x73, 0x65, 0x6e, 0x64, + 0x5f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x18, 0x73, 0x65, 0x6e, 0x64, 0x5f, + 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x6e, 0x69, 0x63, 0x6b, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x65, 0x6e, 0x64, 0x52, + 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x3a, 0x0a, 0x1a, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x73, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x37, 0x0a, 0x18, + 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x6d, 0x61, 0x6c, 0x6c, + 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, + 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x72, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x22, + 0x5f, 0x0a, 0x05, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x23, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x8e, 0x01, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x23, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, + 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x22, 0x59, 0x0a, 0x0b, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x49, 0x6e, 0x70, 0x75, 0x74, + 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x17, 0x0a, + 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x1d, 0x0a, 0x09, + 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0x50, 0x0a, 0x0a, 0x53, + 0x79, 0x6e, 0x63, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x27, 0x0a, 0x08, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, + 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x61, 0x73, 0x5f, 0x6d, 0x6f, 0x72, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x22, 0x3f, 0x0a, + 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, + 0x70, 0x75, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, + 0x73, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0x34, + 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x12, 0x25, 0x0a, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, + 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x22, 0x4e, 0x0a, 0x0a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, + 0x43, 0x4b, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x6b, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, + 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x2a, 0x73, 0x0a, 0x0b, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x5f, 0x49, + 0x4e, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x54, 0x5f, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x02, + 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x54, 0x5f, 0x48, 0x45, 0x41, 0x52, 0x54, 0x42, 0x45, 0x41, 0x54, + 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x54, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, + 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x54, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, + 0x42, 0x45, 0x5f, 0x52, 0x4f, 0x4f, 0x4d, 0x10, 0x05, 0x2a, 0xb3, 0x01, 0x0a, 0x0b, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x54, 0x5f, + 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x54, 0x5f, + 0x54, 0x45, 0x58, 0x54, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x54, 0x5f, 0x46, 0x41, 0x43, + 0x45, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x54, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x10, + 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x54, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x04, 0x12, + 0x0b, 0x0a, 0x07, 0x4d, 0x54, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, + 0x4d, 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x06, 0x12, 0x0e, 0x0a, + 0x0a, 0x4d, 0x54, 0x5f, 0x43, 0x4f, 0x4d, 0x4d, 0x41, 0x4e, 0x44, 0x10, 0x07, 0x12, 0x0d, 0x0a, + 0x09, 0x4d, 0x54, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, + 0x4d, 0x54, 0x5f, 0x52, 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x4d, + 0x54, 0x5f, 0x52, 0x45, 0x44, 0x5f, 0x50, 0x41, 0x43, 0x4b, 0x41, 0x47, 0x45, 0x10, 0x0a, 0x2a, + 0x87, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x50, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, + 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x50, 0x54, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, + 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x50, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, + 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x50, 0x54, 0x5f, + 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4c, 0x55, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, + 0x52, 0x50, 0x54, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, + 0x4c, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x50, 0x54, 0x5f, 0x53, 0x59, 0x53, + 0x54, 0x45, 0x4d, 0x5f, 0x46, 0x4f, 0x52, 0x10, 0x05, 0x2a, 0x43, 0x0a, 0x14, 0x52, 0x65, 0x64, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, + 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x4d, 0x54, 0x5f, 0x53, 0x45, 0x4e, 0x44, 0x10, 0x01, + 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x4d, 0x54, 0x5f, 0x47, 0x52, 0x41, 0x42, 0x10, 0x02, 0x2a, 0x5b, + 0x0a, 0x13, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x50, 0x53, 0x5f, 0x4e, 0x4f, 0x54, + 0x5f, 0x44, 0x52, 0x41, 0x57, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x50, 0x53, 0x5f, 0x44, + 0x52, 0x41, 0x57, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x50, 0x53, 0x5f, + 0x44, 0x52, 0x41, 0x57, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x52, + 0x50, 0x53, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x10, 0x03, 0x2a, 0x46, 0x0a, 0x0c, 0x52, + 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x52, + 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x52, + 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x54, 0x5f, 0x47, + 0x52, 0x4f, 0x55, 0x50, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x54, 0x5f, 0x52, 0x4f, 0x4f, + 0x4d, 0x10, 0x03, 0x2a, 0x49, 0x0a, 0x0a, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, + 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x54, 0x5f, 0x53, 0x59, 0x53, 0x54, 0x45, 0x4d, 0x10, 0x01, + 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x54, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x02, 0x12, 0x0f, 0x0a, + 0x0b, 0x53, 0x54, 0x5f, 0x42, 0x55, 0x53, 0x49, 0x4e, 0x45, 0x53, 0x53, 0x10, 0x03, 0x2a, 0x3d, + 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x0e, 0x0a, 0x0a, 0x4d, 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, + 0x0d, 0x0a, 0x09, 0x4d, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0d, + 0x0a, 0x09, 0x4d, 0x53, 0x5f, 0x52, 0x45, 0x43, 0x41, 0x4c, 0x4c, 0x10, 0x02, 0x2a, 0x51, 0x0a, + 0x13, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x55, 0x53, + 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, + 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x55, 0x53, 0x45, 0x52, + 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x01, + 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/app/pkg/pb/im.connect.int.pb.go b/app/pkg/pb/connect.int.pb.go similarity index 90% rename from app/pkg/pb/im.connect.int.pb.go rename to app/pkg/pb/connect.int.pb.go index eb72b6d..fa118bd 100644 --- a/app/pkg/pb/im.connect.int.pb.go +++ b/app/pkg/pb/connect.int.pb.go @@ -1,8 +1,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.26.0 -// protoc v3.14.0 -// source: connect.int.proto_back +// protoc-gen-go v1.28.1 +// protoc v3.20.0--rc2 +// source: connect.int.proto package pb @@ -312,19 +312,16 @@ func file_connect_int_proto_init() { file_connect_int_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 comm +// 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 +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 // ConnectIntClient is the client API for ConnectInt service. // -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type ConnectIntClient interface { - // 消息投递 + // 消息投递 DeliverMessage(ctx context.Context, in *DeliverMessageReq, opts ...grpc.CallOption) (*Empty, error) } @@ -346,21 +343,29 @@ func (c *connectIntClient) DeliverMessage(ctx context.Context, in *DeliverMessag } // ConnectIntServer is the server API for ConnectInt service. +// All implementations must embed UnimplementedConnectIntServer +// for forward compatibility type ConnectIntServer interface { - // 消息投递 + // 消息投递 DeliverMessage(context.Context, *DeliverMessageReq) (*Empty, error) } -// UnimplementedConnectIntServer can be embedded to have forward compatible implementations. +// UnimplementedConnectIntServer must be embedded to have forward compatible implementations. type UnimplementedConnectIntServer struct { } -func (*UnimplementedConnectIntServer) DeliverMessage(context.Context, *DeliverMessageReq) (*Empty, error) { +func (UnimplementedConnectIntServer) DeliverMessage(context.Context, *DeliverMessageReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method DeliverMessage not implemented") } -func RegisterConnectIntServer(s *grpc.Server, srv ConnectIntServer) { - s.RegisterService(&_ConnectInt_serviceDesc, srv) +// UnsafeConnectIntServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to ConnectIntServer will +// result in compilation errors. +type UnsafeConnectIntServer interface { +} + +func RegisterConnectIntServer(s grpc.ServiceRegistrar, srv ConnectIntServer) { + s.RegisterService(&ConnectInt_ServiceDesc, srv) } func _ConnectInt_DeliverMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { @@ -381,7 +386,10 @@ func _ConnectInt_DeliverMessage_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } -var _ConnectInt_serviceDesc = grpc.ServiceDesc{ +// ConnectInt_ServiceDesc is the grpc.ServiceDesc for ConnectInt service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var ConnectInt_ServiceDesc = grpc.ServiceDesc{ ServiceName: "pb.ConnectInt", HandlerType: (*ConnectIntServer)(nil), Methods: []grpc.MethodDesc{ @@ -391,5 +399,5 @@ var _ConnectInt_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "connect.int.proto_back", + Metadata: "connect.int.proto", } diff --git a/app/pkg/pb/im.push.ext.pb.go b/app/pkg/pb/im.push.ext.pb.go deleted file mode 100644 index 2e7bfd9..0000000 --- a/app/pkg/pb/im.push.ext.pb.go +++ /dev/null @@ -1,623 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.28.1 -// protoc v3.20.0--rc1 -// source: im.push.ext.proto - -package pb - -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 PushCode int32 - -const ( - PushCode_PC_ADD_DEFAULT PushCode = 0 - PushCode_PC_ADD_FRIEND PushCode = 100 // 添加好友请求 - PushCode_PC_AGREE_ADD_FRIEND PushCode = 101 // 同意添加好友 - PushCode_PC_UPDATE_GROUP PushCode = 110 // 更新群组 - PushCode_PC_ADD_GROUP_MEMBERS PushCode = 120 // 添加群组成员 - PushCode_PC_REMOVE_GROUP_MEMBER PushCode = 121 // 移除群组成员 -) - -// Enum value maps for PushCode. -var ( - PushCode_name = map[int32]string{ - 0: "PC_ADD_DEFAULT", - 100: "PC_ADD_FRIEND", - 101: "PC_AGREE_ADD_FRIEND", - 110: "PC_UPDATE_GROUP", - 120: "PC_ADD_GROUP_MEMBERS", - 121: "PC_REMOVE_GROUP_MEMBER", - } - PushCode_value = map[string]int32{ - "PC_ADD_DEFAULT": 0, - "PC_ADD_FRIEND": 100, - "PC_AGREE_ADD_FRIEND": 101, - "PC_UPDATE_GROUP": 110, - "PC_ADD_GROUP_MEMBERS": 120, - "PC_REMOVE_GROUP_MEMBER": 121, - } -) - -func (x PushCode) Enum() *PushCode { - p := new(PushCode) - *p = x - return p -} - -func (x PushCode) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (PushCode) Descriptor() protoreflect.EnumDescriptor { - return file_push_ext_proto_enumTypes[0].Descriptor() -} - -func (PushCode) Type() protoreflect.EnumType { - return &file_push_ext_proto_enumTypes[0] -} - -func (x PushCode) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use PushCode.Descriptor instead. -func (PushCode) EnumDescriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{0} -} - -// 推送码 PC_ADD_FRIEND = 100 -type AddFriendPush struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 - AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 - Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` // 描述 -} - -func (x *AddFriendPush) Reset() { - *x = AddFriendPush{} - if protoimpl.UnsafeEnabled { - mi := &file_push_ext_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddFriendPush) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddFriendPush) ProtoMessage() {} - -func (x *AddFriendPush) ProtoReflect() protoreflect.Message { - mi := &file_push_ext_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 AddFriendPush.ProtoReflect.Descriptor instead. -func (*AddFriendPush) Descriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{0} -} - -func (x *AddFriendPush) GetFriendId() int64 { - if x != nil { - return x.FriendId - } - return 0 -} - -func (x *AddFriendPush) GetNickname() string { - if x != nil { - return x.Nickname - } - return "" -} - -func (x *AddFriendPush) GetAvatarUrl() string { - if x != nil { - return x.AvatarUrl - } - return "" -} - -func (x *AddFriendPush) GetDescription() string { - if x != nil { - return x.Description - } - return "" -} - -// 推送码 PC_AGREE_ADD_FRIEND = 101 -type AgreeAddFriendPush struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 - AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 -} - -func (x *AgreeAddFriendPush) Reset() { - *x = AgreeAddFriendPush{} - if protoimpl.UnsafeEnabled { - mi := &file_push_ext_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AgreeAddFriendPush) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AgreeAddFriendPush) ProtoMessage() {} - -func (x *AgreeAddFriendPush) ProtoReflect() protoreflect.Message { - mi := &file_push_ext_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 AgreeAddFriendPush.ProtoReflect.Descriptor instead. -func (*AgreeAddFriendPush) Descriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{1} -} - -func (x *AgreeAddFriendPush) GetFriendId() int64 { - if x != nil { - return x.FriendId - } - return 0 -} - -func (x *AgreeAddFriendPush) GetNickname() string { - if x != nil { - return x.Nickname - } - return "" -} - -func (x *AgreeAddFriendPush) GetAvatarUrl() string { - if x != nil { - return x.AvatarUrl - } - return "" -} - -// 更新群组 PC_UPDATE_GROUP = 110 -type UpdateGroupPush struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id - OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 - Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` // 群组名称 - AvatarUrl string `protobuf:"bytes,4,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 群组头像 - Introduction string `protobuf:"bytes,5,opt,name=introduction,proto3" json:"introduction,omitempty"` // 群组简介 - Extra string `protobuf:"bytes,6,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段 -} - -func (x *UpdateGroupPush) Reset() { - *x = UpdateGroupPush{} - if protoimpl.UnsafeEnabled { - mi := &file_push_ext_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateGroupPush) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateGroupPush) ProtoMessage() {} - -func (x *UpdateGroupPush) ProtoReflect() protoreflect.Message { - mi := &file_push_ext_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 UpdateGroupPush.ProtoReflect.Descriptor instead. -func (*UpdateGroupPush) Descriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{2} -} - -func (x *UpdateGroupPush) GetOptId() int64 { - if x != nil { - return x.OptId - } - return 0 -} - -func (x *UpdateGroupPush) GetOptName() string { - if x != nil { - return x.OptName - } - return "" -} - -func (x *UpdateGroupPush) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *UpdateGroupPush) GetAvatarUrl() string { - if x != nil { - return x.AvatarUrl - } - return "" -} - -func (x *UpdateGroupPush) GetIntroduction() string { - if x != nil { - return x.Introduction - } - return "" -} - -func (x *UpdateGroupPush) GetExtra() string { - if x != nil { - return x.Extra - } - return "" -} - -// 添加群组成员 PC_AGREE_ADD_GROUPS = 120 -type AddGroupMembersPush struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id - OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 - Members []*GroupMember `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` // 群组成员 -} - -func (x *AddGroupMembersPush) Reset() { - *x = AddGroupMembersPush{} - if protoimpl.UnsafeEnabled { - mi := &file_push_ext_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddGroupMembersPush) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddGroupMembersPush) ProtoMessage() {} - -func (x *AddGroupMembersPush) ProtoReflect() protoreflect.Message { - mi := &file_push_ext_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 AddGroupMembersPush.ProtoReflect.Descriptor instead. -func (*AddGroupMembersPush) Descriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{3} -} - -func (x *AddGroupMembersPush) GetOptId() int64 { - if x != nil { - return x.OptId - } - return 0 -} - -func (x *AddGroupMembersPush) GetOptName() string { - if x != nil { - return x.OptName - } - return "" -} - -func (x *AddGroupMembersPush) GetMembers() []*GroupMember { - if x != nil { - return x.Members - } - return nil -} - -// 删除群组成员 PC_REMOVE_GROUP_MEMBER = 121 -type RemoveGroupMemberPush struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id - OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 - DeletedUserId int64 `protobuf:"varint,3,opt,name=deleted_user_id,json=deletedUserId,proto3" json:"deleted_user_id,omitempty"` // 被删除的成员id - DeletedUserName string `protobuf:"bytes,4,opt,name=deleted_user_name,json=deletedUserName,proto3" json:"deleted_user_name,omitempty"` // 被删除的成员昵称 -} - -func (x *RemoveGroupMemberPush) Reset() { - *x = RemoveGroupMemberPush{} - if protoimpl.UnsafeEnabled { - mi := &file_push_ext_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RemoveGroupMemberPush) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RemoveGroupMemberPush) ProtoMessage() {} - -func (x *RemoveGroupMemberPush) ProtoReflect() protoreflect.Message { - mi := &file_push_ext_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 RemoveGroupMemberPush.ProtoReflect.Descriptor instead. -func (*RemoveGroupMemberPush) Descriptor() ([]byte, []int) { - return file_push_ext_proto_rawDescGZIP(), []int{4} -} - -func (x *RemoveGroupMemberPush) GetOptId() int64 { - if x != nil { - return x.OptId - } - return 0 -} - -func (x *RemoveGroupMemberPush) GetOptName() string { - if x != nil { - return x.OptName - } - return "" -} - -func (x *RemoveGroupMemberPush) GetDeletedUserId() int64 { - if x != nil { - return x.DeletedUserId - } - return 0 -} - -func (x *RemoveGroupMemberPush) GetDeletedUserName() string { - if x != nil { - return x.DeletedUserName - } - return "" -} - -var File_push_ext_proto protoreflect.FileDescriptor - -var file_push_ext_proto_rawDesc = []byte{ - 0x0a, 0x0e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x12, 0x02, 0x70, 0x62, 0x1a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x89, 0x01, 0x0a, 0x0d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x49, 0x64, 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, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, - 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x6c, 0x0a, 0x12, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x49, 0x64, 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, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x22, - 0xb0, 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, - 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, - 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, - 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, - 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x22, 0x72, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x50, 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, 0x64, - 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, - 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x6d, 0x6f, 0x76, - 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, - 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x73, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x55, 0x73, - 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x2a, 0x95, 0x01, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, 0x43, - 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x43, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x44, 0x45, - 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x43, 0x5f, 0x41, 0x44, - 0x44, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x10, 0x64, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x43, - 0x5f, 0x41, 0x47, 0x52, 0x45, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, - 0x44, 0x10, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, - 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x6e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x43, 0x5f, 0x41, - 0x44, 0x44, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x53, - 0x10, 0x78, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x43, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, - 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x79, 0x42, 0x0d, - 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_push_ext_proto_rawDescOnce sync.Once - file_push_ext_proto_rawDescData = file_push_ext_proto_rawDesc -) - -func file_push_ext_proto_rawDescGZIP() []byte { - file_push_ext_proto_rawDescOnce.Do(func() { - file_push_ext_proto_rawDescData = protoimpl.X.CompressGZIP(file_push_ext_proto_rawDescData) - }) - return file_push_ext_proto_rawDescData -} - -var file_push_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_push_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 5) -var file_push_ext_proto_goTypes = []interface{}{ - (PushCode)(0), // 0: pb.PushCode - (*AddFriendPush)(nil), // 1: pb.AddFriendPush - (*AgreeAddFriendPush)(nil), // 2: pb.AgreeAddFriendPush - (*UpdateGroupPush)(nil), // 3: pb.UpdateGroupPush - (*AddGroupMembersPush)(nil), // 4: pb.AddGroupMembersPush - (*RemoveGroupMemberPush)(nil), // 5: pb.RemoveGroupMemberPush - (*GroupMember)(nil), // 6: pb.GroupMember -} -var file_push_ext_proto_depIdxs = []int32{ - 6, // 0: pb.AddGroupMembersPush.members:type_name -> pb.GroupMember - 1, // [1:1] is the sub-list for method output_type - 1, // [1:1] 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_ext_proto_init() } -func file_push_ext_proto_init() { - if File_push_ext_proto != nil { - return - } - file_logic_ext_proto_init() - if !protoimpl.UnsafeEnabled { - file_push_ext_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddFriendPush); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_ext_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AgreeAddFriendPush); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_ext_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateGroupPush); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_ext_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupMembersPush); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_push_ext_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RemoveGroupMemberPush); 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_ext_proto_rawDesc, - NumEnums: 1, - NumMessages: 5, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_push_ext_proto_goTypes, - DependencyIndexes: file_push_ext_proto_depIdxs, - EnumInfos: file_push_ext_proto_enumTypes, - MessageInfos: file_push_ext_proto_msgTypes, - }.Build() - File_push_ext_proto = out.File - file_push_ext_proto_rawDesc = nil - file_push_ext_proto_goTypes = nil - file_push_ext_proto_depIdxs = nil -} diff --git a/app/pkg/pb/im.logic.ext.pb.go b/app/pkg/pb/logic.ext.pb.go similarity index 59% rename from app/pkg/pb/im.logic.ext.pb.go rename to app/pkg/pb/logic.ext.pb.go index 70a6ec6..1389985 100644 --- a/app/pkg/pb/im.logic.ext.pb.go +++ b/app/pkg/pb/logic.ext.pb.go @@ -1,20 +1,20 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.28.1 -// protoc v3.20.0--rc1 +// protoc v3.20.0--rc2 // source: logic.ext.proto package pb import ( - "context" - "google.golang.org/grpc" - "google.golang.org/grpc/codes" - "google.golang.org/grpc/status" - "google.golang.org/protobuf/reflect/protoreflect" - "google.golang.org/protobuf/runtime/protoimpl" - "reflect" - "sync" + 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 ( @@ -28,8 +28,9 @@ type MemberType int32 const ( MemberType_GMT_UNKNOWN MemberType = 0 // 未知 - MemberType_GMT_ADMIN MemberType = 1 // 管理员 + MemberType_GMT_ADMIN MemberType = 1 // 群主 MemberType_GMT_MEMBER MemberType = 2 // 成员 + MemberType_GMT_MANAGE MemberType = 3 // 管理员 ) // Enum value maps for MemberType. @@ -38,11 +39,13 @@ var ( 0: "GMT_UNKNOWN", 1: "GMT_ADMIN", 2: "GMT_MEMBER", + 3: "GMT_MANAGE", } MemberType_value = map[string]int32{ "GMT_UNKNOWN": 0, "GMT_ADMIN": 1, "GMT_MEMBER": 2, + "GMT_MANAGE": 3, } ) @@ -73,6 +76,104 @@ func (MemberType) EnumDescriptor() ([]byte, []int) { return file_logic_ext_proto_rawDescGZIP(), []int{0} } +type AllMemberBannedType int32 + +const ( + AllMemberBannedType_UNKNOWN_All_Member_Banned AllMemberBannedType = 0 // 未知 + AllMemberBannedType_YES_All_Member_Banned AllMemberBannedType = 1 // 是-全员禁言 + AllMemberBannedType_NOT_All_Member_Banned AllMemberBannedType = 2 // 否-全员禁言 +) + +// Enum value maps for AllMemberBannedType. +var ( + AllMemberBannedType_name = map[int32]string{ + 0: "UNKNOWN_All_Member_Banned", + 1: "YES_All_Member_Banned", + 2: "NOT_All_Member_Banned", + } + AllMemberBannedType_value = map[string]int32{ + "UNKNOWN_All_Member_Banned": 0, + "YES_All_Member_Banned": 1, + "NOT_All_Member_Banned": 2, + } +) + +func (x AllMemberBannedType) Enum() *AllMemberBannedType { + p := new(AllMemberBannedType) + *p = x + return p +} + +func (x AllMemberBannedType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AllMemberBannedType) Descriptor() protoreflect.EnumDescriptor { + return file_logic_ext_proto_enumTypes[1].Descriptor() +} + +func (AllMemberBannedType) Type() protoreflect.EnumType { + return &file_logic_ext_proto_enumTypes[1] +} + +func (x AllMemberBannedType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AllMemberBannedType.Descriptor instead. +func (AllMemberBannedType) EnumDescriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{1} +} + +type AllAddFriendType int32 + +const ( + AllAddFriendType_UNKNOWN_All_Add_Friend AllAddFriendType = 0 // 未知 + AllAddFriendType_YES_All_Add_Friend AllAddFriendType = 1 // 是-允许加好友 + AllAddFriendType_NOT_All_Add_Friend AllAddFriendType = 2 // 否-禁止加好友 +) + +// Enum value maps for AllAddFriendType. +var ( + AllAddFriendType_name = map[int32]string{ + 0: "UNKNOWN_All_Add_Friend", + 1: "YES_All_Add_Friend", + 2: "NOT_All_Add_Friend", + } + AllAddFriendType_value = map[string]int32{ + "UNKNOWN_All_Add_Friend": 0, + "YES_All_Add_Friend": 1, + "NOT_All_Add_Friend": 2, + } +) + +func (x AllAddFriendType) Enum() *AllAddFriendType { + p := new(AllAddFriendType) + *p = x + return p +} + +func (x AllAddFriendType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AllAddFriendType) Descriptor() protoreflect.EnumDescriptor { + return file_logic_ext_proto_enumTypes[2].Descriptor() +} + +func (AllAddFriendType) Type() protoreflect.EnumType { + return &file_logic_ext_proto_enumTypes[2] +} + +func (x AllAddFriendType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AllAddFriendType.Descriptor instead. +func (AllAddFriendType) EnumDescriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{2} +} + type RegisterDeviceReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1426,7 +1527,10 @@ type GetGroupResp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` + Group *Group `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` + MemberType MemberType `protobuf:"varint,2,opt,name=member_type,json=memberType,proto3,enum=pb.MemberType" json:"member_type,omitempty"` + GroupUserStatusType GroupUserStatusType `protobuf:"varint,3,opt,name=group_user_status_type,json=groupUserStatusType,proto3,enum=pb.GroupUserStatusType" json:"group_user_status_type,omitempty"` + GroupNotice *GroupNotice `protobuf:"bytes,4,opt,name=group_notice,json=groupNotice,proto3" json:"group_notice,omitempty"` //群公告 } func (x *GetGroupResp) Reset() { @@ -1468,25 +1572,111 @@ func (x *GetGroupResp) GetGroup() *Group { return nil } +func (x *GetGroupResp) GetMemberType() MemberType { + if x != nil { + return x.MemberType + } + return MemberType_GMT_UNKNOWN +} + +func (x *GetGroupResp) GetGroupUserStatusType() GroupUserStatusType { + if x != nil { + return x.GroupUserStatusType + } + return GroupUserStatusType_GROUP_USER_STATUS_NORMAL +} + +func (x *GetGroupResp) GetGroupNotice() *GroupNotice { + if x != nil { + return x.GroupNotice + } + return nil +} + +type GroupNotice struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` //公告内容 + PublishType GroupNoticePublishType `protobuf:"varint,2,opt,name=publish_type,json=publishType,proto3,enum=pb.GroupNoticePublishType" json:"publish_type,omitempty"` // 发布方式 + PublishTime string `protobuf:"bytes,3,opt,name=publish_time,json=publishTime,proto3" json:"publish_time,omitempty"` // 发布时间 +} + +func (x *GroupNotice) Reset() { + *x = GroupNotice{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GroupNotice) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GroupNotice) ProtoMessage() {} + +func (x *GroupNotice) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 GroupNotice.ProtoReflect.Descriptor instead. +func (*GroupNotice) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{21} +} + +func (x *GroupNotice) GetContent() string { + if x != nil { + return x.Content + } + return "" +} + +func (x *GroupNotice) GetPublishType() GroupNoticePublishType { + if x != nil { + return x.PublishType + } + return GroupNoticePublishType_UNKNOWN_PUBLISH +} + +func (x *GroupNotice) GetPublishTime() string { + if x != nil { + return x.PublishTime + } + return "" +} + type Group struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // 名称 - AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` // 简介 - UserMum int32 `protobuf:"varint,5,opt,name=user_mum,json=userMum,proto3" json:"user_mum,omitempty"` // 用户数 - Extra string `protobuf:"bytes,6,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段 - CreateTime int64 `protobuf:"varint,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` // 创建时间 - UpdateTime int64 `protobuf:"varint,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` // 更新时间 + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // 名称 + AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 + Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` // 简介 + UserMum int32 `protobuf:"varint,5,opt,name=user_mum,json=userMum,proto3" json:"user_mum,omitempty"` // 用户数 + IsAllMemberBanned int32 `protobuf:"varint,6,opt,name=is_all_member_banned,json=isAllMemberBanned,proto3" json:"is_all_member_banned,omitempty"` // 是否全员禁言(1:是 2:否) + IsAllAddFriend int32 `protobuf:"varint,10,opt,name=is_all_add_friend,json=isAllAddFriend,proto3" json:"is_all_add_friend,omitempty"` // 是否允许加好友(1:是 2:否) + Extra string `protobuf:"bytes,7,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段 + CreateTime int64 `protobuf:"varint,8,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` // 创建时间 + UpdateTime int64 `protobuf:"varint,9,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` // 更新时间 } func (x *Group) Reset() { *x = Group{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[21] + mi := &file_logic_ext_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1499,7 +1689,7 @@ func (x *Group) String() string { func (*Group) ProtoMessage() {} func (x *Group) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[21] + mi := &file_logic_ext_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1512,7 +1702,7 @@ func (x *Group) ProtoReflect() protoreflect.Message { // Deprecated: Use Group.ProtoReflect.Descriptor instead. func (*Group) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{21} + return file_logic_ext_proto_rawDescGZIP(), []int{22} } func (x *Group) GetGroupId() int64 { @@ -1550,6 +1740,20 @@ func (x *Group) GetUserMum() int32 { return 0 } +func (x *Group) GetIsAllMemberBanned() int32 { + if x != nil { + return x.IsAllMemberBanned + } + return 0 +} + +func (x *Group) GetIsAllAddFriend() int32 { + if x != nil { + return x.IsAllAddFriend + } + return 0 +} + func (x *Group) GetExtra() string { if x != nil { return x.Extra @@ -1582,7 +1786,7 @@ type GetGroupsResp struct { func (x *GetGroupsResp) Reset() { *x = GetGroupsResp{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[22] + mi := &file_logic_ext_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1595,7 +1799,7 @@ func (x *GetGroupsResp) String() string { func (*GetGroupsResp) ProtoMessage() {} func (x *GetGroupsResp) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[22] + mi := &file_logic_ext_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1608,7 +1812,7 @@ func (x *GetGroupsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupsResp.ProtoReflect.Descriptor instead. func (*GetGroupsResp) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{22} + return file_logic_ext_proto_rawDescGZIP(), []int{23} } func (x *GetGroupsResp) GetGroups() []*Group { @@ -1630,7 +1834,7 @@ type AddGroupMembersReq struct { func (x *AddGroupMembersReq) Reset() { *x = AddGroupMembersReq{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[23] + mi := &file_logic_ext_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1643,7 +1847,7 @@ func (x *AddGroupMembersReq) String() string { func (*AddGroupMembersReq) ProtoMessage() {} func (x *AddGroupMembersReq) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[23] + mi := &file_logic_ext_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1656,7 +1860,7 @@ func (x *AddGroupMembersReq) ProtoReflect() protoreflect.Message { // Deprecated: Use AddGroupMembersReq.ProtoReflect.Descriptor instead. func (*AddGroupMembersReq) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{23} + return file_logic_ext_proto_rawDescGZIP(), []int{24} } func (x *AddGroupMembersReq) GetGroupId() int64 { @@ -1684,7 +1888,7 @@ type AddGroupMembersResp struct { func (x *AddGroupMembersResp) Reset() { *x = AddGroupMembersResp{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[24] + mi := &file_logic_ext_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1697,7 +1901,7 @@ func (x *AddGroupMembersResp) String() string { func (*AddGroupMembersResp) ProtoMessage() {} func (x *AddGroupMembersResp) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[24] + mi := &file_logic_ext_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1710,7 +1914,7 @@ func (x *AddGroupMembersResp) ProtoReflect() protoreflect.Message { // Deprecated: Use AddGroupMembersResp.ProtoReflect.Descriptor instead. func (*AddGroupMembersResp) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{24} + return file_logic_ext_proto_rawDescGZIP(), []int{25} } func (x *AddGroupMembersResp) GetUserIds() []int64 { @@ -1735,7 +1939,7 @@ type UpdateGroupMemberReq struct { func (x *UpdateGroupMemberReq) Reset() { *x = UpdateGroupMemberReq{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[25] + mi := &file_logic_ext_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1748,7 +1952,7 @@ func (x *UpdateGroupMemberReq) String() string { func (*UpdateGroupMemberReq) ProtoMessage() {} func (x *UpdateGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[25] + mi := &file_logic_ext_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1761,7 +1965,7 @@ func (x *UpdateGroupMemberReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateGroupMemberReq.ProtoReflect.Descriptor instead. func (*UpdateGroupMemberReq) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{25} + return file_logic_ext_proto_rawDescGZIP(), []int{26} } func (x *UpdateGroupMemberReq) GetGroupId() int64 { @@ -1811,7 +2015,7 @@ type DeleteGroupMemberReq struct { func (x *DeleteGroupMemberReq) Reset() { *x = DeleteGroupMemberReq{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[26] + mi := &file_logic_ext_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1824,7 +2028,7 @@ func (x *DeleteGroupMemberReq) String() string { func (*DeleteGroupMemberReq) ProtoMessage() {} func (x *DeleteGroupMemberReq) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[26] + mi := &file_logic_ext_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1837,7 +2041,7 @@ func (x *DeleteGroupMemberReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteGroupMemberReq.ProtoReflect.Descriptor instead. func (*DeleteGroupMemberReq) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{26} + return file_logic_ext_proto_rawDescGZIP(), []int{27} } func (x *DeleteGroupMemberReq) GetGroupId() int64 { @@ -1860,12 +2064,13 @@ type GetGroupMembersReq struct { unknownFields protoimpl.UnknownFields GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` + Limit int64 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"` } func (x *GetGroupMembersReq) Reset() { *x = GetGroupMembersReq{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[27] + mi := &file_logic_ext_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1878,7 +2083,7 @@ func (x *GetGroupMembersReq) String() string { func (*GetGroupMembersReq) ProtoMessage() {} func (x *GetGroupMembersReq) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[27] + mi := &file_logic_ext_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1891,7 +2096,7 @@ func (x *GetGroupMembersReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupMembersReq.ProtoReflect.Descriptor instead. func (*GetGroupMembersReq) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{27} + return file_logic_ext_proto_rawDescGZIP(), []int{28} } func (x *GetGroupMembersReq) GetGroupId() int64 { @@ -1901,6 +2106,13 @@ func (x *GetGroupMembersReq) GetGroupId() int64 { return 0 } +func (x *GetGroupMembersReq) GetLimit() int64 { + if x != nil { + return x.Limit + } + return 0 +} + type GetGroupMembersResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1912,7 +2124,7 @@ type GetGroupMembersResp struct { func (x *GetGroupMembersResp) Reset() { *x = GetGroupMembersResp{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[28] + mi := &file_logic_ext_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1925,7 +2137,7 @@ func (x *GetGroupMembersResp) String() string { func (*GetGroupMembersResp) ProtoMessage() {} func (x *GetGroupMembersResp) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[28] + mi := &file_logic_ext_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1938,7 +2150,7 @@ func (x *GetGroupMembersResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetGroupMembersResp.ProtoReflect.Descriptor instead. func (*GetGroupMembersResp) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{28} + return file_logic_ext_proto_rawDescGZIP(), []int{29} } func (x *GetGroupMembersResp) GetMembers() []*GroupMember { @@ -1961,12 +2173,13 @@ type GroupMember struct { MemberType MemberType `protobuf:"varint,6,opt,name=member_type,json=memberType,proto3,enum=pb.MemberType" json:"member_type,omitempty"` // 成员类型 Remarks string `protobuf:"bytes,7,opt,name=remarks,proto3" json:"remarks,omitempty"` // 备注 Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 群组成员附加字段 + Status int32 `protobuf:"varint,9,opt,name=status,proto3" json:"status,omitempty"` // 状态 } func (x *GroupMember) Reset() { *x = GroupMember{} if protoimpl.UnsafeEnabled { - mi := &file_logic_ext_proto_msgTypes[29] + mi := &file_logic_ext_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1979,7 +2192,7 @@ func (x *GroupMember) String() string { func (*GroupMember) ProtoMessage() {} func (x *GroupMember) ProtoReflect() protoreflect.Message { - mi := &file_logic_ext_proto_msgTypes[29] + mi := &file_logic_ext_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1992,7 +2205,7 @@ func (x *GroupMember) ProtoReflect() protoreflect.Message { // Deprecated: Use GroupMember.ProtoReflect.Descriptor instead. func (*GroupMember) Descriptor() ([]byte, []int) { - return file_logic_ext_proto_rawDescGZIP(), []int{29} + return file_logic_ext_proto_rawDescGZIP(), []int{30} } func (x *GroupMember) GetUserId() int64 { @@ -2051,426 +2264,887 @@ func (x *GroupMember) GetExtra() string { return "" } -var File_logic_ext_proto protoreflect.FileDescriptor - -var file_logic_ext_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x65, 0x78, - 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, 0x01, 0x0a, 0x11, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, - 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, - 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, - 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x64, 0x6b, 0x5f, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x64, - 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x31, 0x0a, 0x12, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, - 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xd3, 0x02, 0x0a, 0x0e, - 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x35, - 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, - 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, - 0x69, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, - 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12, - 0x30, 0x0a, 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x63, - 0x6b, 0x22, 0x23, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xd5, 0x02, 0x0a, 0x10, 0x52, 0x65, 0x63, 0x61, 0x6c, - 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x0d, 0x72, - 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x14, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, - 0x62, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x22, 0x25, - 0x0a, 0x11, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xb6, 0x02, 0x0a, 0x10, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, - 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x35, 0x0a, 0x0d, 0x72, 0x65, - 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, - 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0b, - 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, - 0x03, 0x52, 0x09, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x30, 0x0a, 0x14, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, - 0x62, 0x61, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x22, 0x25, - 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xe0, 0x01, 0x0a, 0x0b, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, - 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x32, - 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, - 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, - 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, - 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, - 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x70, 0x72, - 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, - 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x67, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, - 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x2a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x46, 0x0a, - 0x11, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, - 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, - 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x5b, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x22, 0x5c, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x22, 0xe0, 0x01, 0x0a, 0x06, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, - 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, - 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, - 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, - 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x45, 0x78, - 0x74, 0x72, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x22, 0x36, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x0e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, - 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x03, 0x52, - 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x2c, 0x0a, 0x0f, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x19, 0x0a, - 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, - 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, - 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 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, 0x14, 0x0a, - 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x22, 0x28, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x2f, 0x0a, - 0x0c, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, - 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x70, - 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0xec, - 0x01, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, - 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, - 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 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, 0x19, 0x0a, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x5f, 0x6d, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x75, 0x73, - 0x65, 0x72, 0x4d, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x32, 0x0a, - 0x0d, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, - 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, - 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x73, 0x22, 0x4a, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x30, 0x0a, - 0x13, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, - 0xab, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0b, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x4a, 0x0a, - 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, - 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x2f, 0x0a, 0x12, 0x47, 0x65, 0x74, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, - 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x40, 0x0a, 0x13, 0x47, 0x65, - 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0xf3, 0x01, 0x0a, - 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x64, 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, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, - 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, - 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x45, 0x78, 0x74, 0x72, - 0x61, 0x12, 0x2f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x2a, 0x3c, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, - 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x47, 0x4d, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x01, - 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x4d, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x02, - 0x32, 0xd0, 0x07, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x45, 0x78, 0x74, 0x12, 0x3f, 0x0a, - 0x0e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, - 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, - 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x2e, - 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x71, 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0d, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, - 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, - 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, 0x6f, 0x6d, - 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, - 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3c, 0x0a, 0x0d, - 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x14, 0x2e, - 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, - 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, - 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x28, 0x0a, 0x09, 0x41, 0x64, - 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x12, 0x32, 0x0a, 0x0e, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x67, 0x72, 0x65, - 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, - 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, - 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x30, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x46, - 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x0a, 0x47, 0x65, - 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x2c, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, - 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, - 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2d, 0x0a, - 0x08, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, - 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x70, 0x62, 0x2e, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x09, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x42, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, - 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x11, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, - 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, - 0x42, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, - 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, - 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +func (x *GroupMember) GetStatus() int32 { + if x != nil { + return x.Status + } + return 0 } -var ( - file_logic_ext_proto_rawDescOnce sync.Once - file_logic_ext_proto_rawDescData = file_logic_ext_proto_rawDesc -) +type SetGroupMemberBannedReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func file_logic_ext_proto_rawDescGZIP() []byte { - file_logic_ext_proto_rawDescOnce.Do(func() { - file_logic_ext_proto_rawDescData = protoimpl.X.CompressGZIP(file_logic_ext_proto_rawDescData) - }) - return file_logic_ext_proto_rawDescData + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id + UserIds []int64 `protobuf:"varint,2,rep,packed,name=user_ids,json=userIds,proto3" json:"user_ids,omitempty"` // 用户id列表 + IsAllMemberBanned AllMemberBannedType `protobuf:"varint,3,opt,name=is_all_member_banned,json=isAllMemberBanned,proto3,enum=pb.AllMemberBannedType" json:"is_all_member_banned,omitempty"` // 全员禁言(1:是 2:否) } -var file_logic_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_logic_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 30) -var file_logic_ext_proto_goTypes = []interface{}{ - (MemberType)(0), // 0: pb.MemberType - (*RegisterDeviceReq)(nil), // 1: pb.RegisterDeviceReq - (*RegisterDeviceResp)(nil), // 2: pb.RegisterDeviceResp - (*SendMessageReq)(nil), // 3: pb.SendMessageReq - (*SendMessageResp)(nil), // 4: pb.SendMessageResp - (*RecallMessageReq)(nil), // 5: pb.RecallMessageReq - (*RecallMessageResp)(nil), // 6: pb.RecallMessageResp - (*SendRedPacketReq)(nil), // 7: pb.SendRedPacketReq - (*SendRedPacketResp)(nil), // 8: pb.SendRedPacketResp - (*PushRoomReq)(nil), // 9: pb.PushRoomReq - (*AddFriendReq)(nil), // 10: pb.AddFriendReq - (*DeleteFriendReq)(nil), // 11: pb.DeleteFriendReq - (*AgreeAddFriendReq)(nil), // 12: pb.AgreeAddFriendReq - (*SetFriendReq)(nil), // 13: pb.SetFriendReq - (*SetFriendResp)(nil), // 14: pb.SetFriendResp - (*Friend)(nil), // 15: pb.Friend - (*GetFriendsResp)(nil), // 16: pb.GetFriendsResp - (*CreateGroupReq)(nil), // 17: pb.CreateGroupReq - (*CreateGroupResp)(nil), // 18: pb.CreateGroupResp - (*UpdateGroupReq)(nil), // 19: pb.UpdateGroupReq - (*GetGroupReq)(nil), // 20: pb.GetGroupReq - (*GetGroupResp)(nil), // 21: pb.GetGroupResp - (*Group)(nil), // 22: pb.Group - (*GetGroupsResp)(nil), // 23: pb.GetGroupsResp - (*AddGroupMembersReq)(nil), // 24: pb.AddGroupMembersReq - (*AddGroupMembersResp)(nil), // 25: pb.AddGroupMembersResp - (*UpdateGroupMemberReq)(nil), // 26: pb.UpdateGroupMemberReq - (*DeleteGroupMemberReq)(nil), // 27: pb.DeleteGroupMemberReq - (*GetGroupMembersReq)(nil), // 28: pb.GetGroupMembersReq - (*GetGroupMembersResp)(nil), // 29: pb.GetGroupMembersResp - (*GroupMember)(nil), // 30: pb.GroupMember - (ReceiverType)(0), // 31: pb.ReceiverType - (MessageType)(0), // 32: pb.MessageType - (*Empty)(nil), // 33: pb.Empty +func (x *SetGroupMemberBannedReq) Reset() { + *x = SetGroupMemberBannedReq{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -var file_logic_ext_proto_depIdxs = []int32{ - 31, // 0: pb.SendMessageReq.receiver_type:type_name -> pb.ReceiverType - 32, // 1: pb.SendMessageReq.message_type:type_name -> pb.MessageType - 31, // 2: pb.RecallMessageReq.receiver_type:type_name -> pb.ReceiverType - 32, // 3: pb.RecallMessageReq.message_type:type_name -> pb.MessageType - 31, // 4: pb.SendRedPacketReq.receiver_type:type_name -> pb.ReceiverType - 32, // 5: pb.SendRedPacketReq.message_type:type_name -> pb.MessageType - 32, // 6: pb.PushRoomReq.message_type:type_name -> pb.MessageType - 15, // 7: pb.GetFriendsResp.friends:type_name -> pb.Friend - 22, // 8: pb.GetGroupResp.group:type_name -> pb.Group - 22, // 9: pb.GetGroupsResp.groups:type_name -> pb.Group - 0, // 10: pb.UpdateGroupMemberReq.member_type:type_name -> pb.MemberType - 30, // 11: pb.GetGroupMembersResp.members:type_name -> pb.GroupMember - 0, // 12: pb.GroupMember.member_type:type_name -> pb.MemberType - 1, // 13: pb.LogicExt.RegisterDevice:input_type -> pb.RegisterDeviceReq - 3, // 14: pb.LogicExt.SendMessage:input_type -> pb.SendMessageReq - 5, // 15: pb.LogicExt.RecallMessage:input_type -> pb.RecallMessageReq - 9, // 16: pb.LogicExt.PushRoom:input_type -> pb.PushRoomReq - 7, // 17: pb.LogicExt.SendRedPacket:input_type -> pb.SendRedPacketReq - 10, // 18: pb.LogicExt.AddFriend:input_type -> pb.AddFriendReq - 12, // 19: pb.LogicExt.AgreeAddFriend:input_type -> pb.AgreeAddFriendReq - 11, // 20: pb.LogicExt.DeleteFriend:input_type -> pb.DeleteFriendReq - 13, // 21: pb.LogicExt.SetFriend:input_type -> pb.SetFriendReq - 33, // 22: pb.LogicExt.GetFriends:input_type -> pb.Empty - 17, // 23: pb.LogicExt.CreateGroup:input_type -> pb.CreateGroupReq - 19, // 24: pb.LogicExt.UpdateGroup:input_type -> pb.UpdateGroupReq - 20, // 25: pb.LogicExt.GetGroup:input_type -> pb.GetGroupReq - 33, // 26: pb.LogicExt.GetGroups:input_type -> pb.Empty - 24, // 27: pb.LogicExt.AddGroupMembers:input_type -> pb.AddGroupMembersReq - 26, // 28: pb.LogicExt.UpdateGroupMember:input_type -> pb.UpdateGroupMemberReq - 27, // 29: pb.LogicExt.DeleteGroupMember:input_type -> pb.DeleteGroupMemberReq - 28, // 30: pb.LogicExt.GetGroupMembers:input_type -> pb.GetGroupMembersReq - 2, // 31: pb.LogicExt.RegisterDevice:output_type -> pb.RegisterDeviceResp - 4, // 32: pb.LogicExt.SendMessage:output_type -> pb.SendMessageResp - 6, // 33: pb.LogicExt.RecallMessage:output_type -> pb.RecallMessageResp - 33, // 34: pb.LogicExt.PushRoom:output_type -> pb.Empty - 8, // 35: pb.LogicExt.SendRedPacket:output_type -> pb.SendRedPacketResp - 33, // 36: pb.LogicExt.AddFriend:output_type -> pb.Empty - 33, // 37: pb.LogicExt.AgreeAddFriend:output_type -> pb.Empty - 33, // 38: pb.LogicExt.DeleteFriend:output_type -> pb.Empty - 14, // 39: pb.LogicExt.SetFriend:output_type -> pb.SetFriendResp - 16, // 40: pb.LogicExt.GetFriends:output_type -> pb.GetFriendsResp - 18, // 41: pb.LogicExt.CreateGroup:output_type -> pb.CreateGroupResp - 33, // 42: pb.LogicExt.UpdateGroup:output_type -> pb.Empty - 21, // 43: pb.LogicExt.GetGroup:output_type -> pb.GetGroupResp - 23, // 44: pb.LogicExt.GetGroups:output_type -> pb.GetGroupsResp - 25, // 45: pb.LogicExt.AddGroupMembers:output_type -> pb.AddGroupMembersResp - 33, // 46: pb.LogicExt.UpdateGroupMember:output_type -> pb.Empty - 33, // 47: pb.LogicExt.DeleteGroupMember:output_type -> pb.Empty - 29, // 48: pb.LogicExt.GetGroupMembers:output_type -> pb.GetGroupMembersResp - 31, // [31:49] is the sub-list for method output_type - 13, // [13:31] 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 (x *SetGroupMemberBannedReq) String() string { + return protoimpl.X.MessageStringOf(x) } -func init() { file_logic_ext_proto_init() } -func file_logic_ext_proto_init() { - if File_logic_ext_proto != nil { - return +func (*SetGroupMemberBannedReq) ProtoMessage() {} + +func (x *SetGroupMemberBannedReq) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 SetGroupMemberBannedReq.ProtoReflect.Descriptor instead. +func (*SetGroupMemberBannedReq) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{31} +} + +func (x *SetGroupMemberBannedReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +func (x *SetGroupMemberBannedReq) GetUserIds() []int64 { + if x != nil { + return x.UserIds + } + return nil +} + +func (x *SetGroupMemberBannedReq) GetIsAllMemberBanned() AllMemberBannedType { + if x != nil { + return x.IsAllMemberBanned + } + return AllMemberBannedType_UNKNOWN_All_Member_Banned +} + +type SetGroupMemberRemoveBannedReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id + RemoveUserIds []int64 `protobuf:"varint,2,rep,packed,name=remove_user_ids,json=removeUserIds,proto3" json:"remove_user_ids,omitempty"` // 解除用户id列表 +} + +func (x *SetGroupMemberRemoveBannedReq) Reset() { + *x = SetGroupMemberRemoveBannedReq{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SetGroupMemberRemoveBannedReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SetGroupMemberRemoveBannedReq) ProtoMessage() {} + +func (x *SetGroupMemberRemoveBannedReq) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 SetGroupMemberRemoveBannedReq.ProtoReflect.Descriptor instead. +func (*SetGroupMemberRemoveBannedReq) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{32} +} + +func (x *SetGroupMemberRemoveBannedReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +func (x *SetGroupMemberRemoveBannedReq) GetRemoveUserIds() []int64 { + if x != nil { + return x.RemoveUserIds + } + return nil +} + +type SetGroupMemberBannedResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsAllMemberBanned AllMemberBannedType `protobuf:"varint,3,opt,name=is_all_member_banned,json=isAllMemberBanned,proto3,enum=pb.AllMemberBannedType" json:"is_all_member_banned,omitempty"` // 全员禁言(1:是 2:否) + Members []*GroupMember `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"` //禁言人员列表 +} + +func (x *SetGroupMemberBannedResp) Reset() { + *x = SetGroupMemberBannedResp{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SetGroupMemberBannedResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SetGroupMemberBannedResp) ProtoMessage() {} + +func (x *SetGroupMemberBannedResp) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 SetGroupMemberBannedResp.ProtoReflect.Descriptor instead. +func (*SetGroupMemberBannedResp) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{33} +} + +func (x *SetGroupMemberBannedResp) GetIsAllMemberBanned() AllMemberBannedType { + if x != nil { + return x.IsAllMemberBanned + } + return AllMemberBannedType_UNKNOWN_All_Member_Banned +} + +func (x *SetGroupMemberBannedResp) GetMembers() []*GroupMember { + if x != nil { + return x.Members + } + return nil +} + +type GetGroupBannedMembersReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` +} + +func (x *GetGroupBannedMembersReq) Reset() { + *x = GetGroupBannedMembersReq{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetGroupBannedMembersReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetGroupBannedMembersReq) ProtoMessage() {} + +func (x *GetGroupBannedMembersReq) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 GetGroupBannedMembersReq.ProtoReflect.Descriptor instead. +func (*GetGroupBannedMembersReq) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{34} +} + +func (x *GetGroupBannedMembersReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +type GetGroupBannedMembersResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Members []*GroupMember `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"` +} + +func (x *GetGroupBannedMembersResp) Reset() { + *x = GetGroupBannedMembersResp{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetGroupBannedMembersResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetGroupBannedMembersResp) ProtoMessage() {} + +func (x *GetGroupBannedMembersResp) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 GetGroupBannedMembersResp.ProtoReflect.Descriptor instead. +func (*GetGroupBannedMembersResp) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{35} +} + +func (x *GetGroupBannedMembersResp) GetMembers() []*GroupMember { + if x != nil { + return x.Members + } + return nil +} + +type SetGroupAddFriendReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GroupId int64 `protobuf:"varint,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // 群组id + IsAllAddFriend AllAddFriendType `protobuf:"varint,2,opt,name=is_all_add_friend,json=isAllAddFriend,proto3,enum=pb.AllAddFriendType" json:"is_all_add_friend,omitempty"` // 是否允许加好友(1:是 2:否) +} + +func (x *SetGroupAddFriendReq) Reset() { + *x = SetGroupAddFriendReq{} + if protoimpl.UnsafeEnabled { + mi := &file_logic_ext_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SetGroupAddFriendReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SetGroupAddFriendReq) ProtoMessage() {} + +func (x *SetGroupAddFriendReq) ProtoReflect() protoreflect.Message { + mi := &file_logic_ext_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 SetGroupAddFriendReq.ProtoReflect.Descriptor instead. +func (*SetGroupAddFriendReq) Descriptor() ([]byte, []int) { + return file_logic_ext_proto_rawDescGZIP(), []int{36} +} + +func (x *SetGroupAddFriendReq) GetGroupId() int64 { + if x != nil { + return x.GroupId + } + return 0 +} + +func (x *SetGroupAddFriendReq) GetIsAllAddFriend() AllAddFriendType { + if x != nil { + return x.IsAllAddFriend + } + return AllAddFriendType_UNKNOWN_All_Add_Friend +} + +var File_logic_ext_proto protoreflect.FileDescriptor + +var file_logic_ext_proto_rawDesc = []byte{ + 0x0a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x02, 0x70, 0x62, 0x1a, 0x12, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x2e, + 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, + 0x01, 0x0a, 0x11, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, + 0x65, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x72, 0x61, 0x6e, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, + 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x79, + 0x73, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x73, + 0x64, 0x6b, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x64, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x31, 0x0a, 0x12, + 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, + 0xd3, 0x02, 0x0a, 0x0e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x71, 0x12, 0x35, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, + 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, + 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, + 0x09, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, + 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, + 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, + 0x69, 0x73, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x42, 0x61, 0x63, 0x6b, 0x22, 0x23, 0x0a, 0x0f, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xd5, 0x02, 0x0a, 0x10, 0x52, + 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, + 0x35, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, + 0x65, 0x69, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x75, 0x73, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, + 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, + 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, + 0x63, 0x6b, 0x22, 0x25, 0x0a, 0x11, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xb6, 0x02, 0x0a, 0x10, 0x53, 0x65, + 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x12, 0x35, + 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x69, + 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, + 0x62, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0b, 0x74, 0x6f, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, + 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, + 0x63, 0x6b, 0x22, 0x25, 0x0a, 0x11, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, + 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x73, 0x65, 0x71, 0x22, 0xe0, 0x01, 0x0a, 0x0b, 0x50, 0x75, + 0x73, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, + 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, + 0x49, 0x64, 0x12, 0x32, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, + 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, + 0x69, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x09, 0x69, 0x73, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x69, + 0x73, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0a, 0x69, 0x73, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x67, 0x0a, 0x0c, + 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, + 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, + 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2a, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x22, 0x46, 0x0a, 0x11, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x22, 0x5b, 0x0a, 0x0c, 0x53, 0x65, 0x74, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x5c, 0x0a, 0x0d, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x06, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, + 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6e, + 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, + 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, + 0x65, 0x72, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, + 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x36, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x46, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x07, 0x66, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x62, 0x2e, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x22, + 0x9c, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, + 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, + 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, + 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, + 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, + 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x03, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x2c, + 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, + 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, + 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, + 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 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, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x28, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, + 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x12, 0x2f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x4c, 0x0a, 0x16, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x75, 0x73, + 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x55, + 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, 0x70, 0x65, 0x52, 0x13, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x32, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x6e, 0x6f, 0x74, 0x69, + 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x22, 0x89, 0x01, 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x12, 0x3d, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x69, + 0x6d, 0x65, 0x22, 0xc8, 0x02, 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x19, 0x0a, 0x08, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x61, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 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, 0x19, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x4d, 0x75, 0x6d, 0x12, 0x2f, 0x0a, 0x14, 0x69, 0x73, 0x5f, + 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x69, 0x73, 0x41, 0x6c, 0x6c, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x11, 0x69, 0x73, + 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x69, 0x73, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x32, 0x0a, + 0x0d, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, + 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, + 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x73, 0x22, 0x4a, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x30, 0x0a, + 0x13, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, + 0xab, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, + 0x70, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x0b, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0e, 0x2e, 0x70, 0x62, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, + 0x65, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x4a, 0x0a, + 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, + 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, + 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x22, 0x40, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x22, 0x8b, 0x02, 0x0a, 0x0b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 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, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x78, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x73, 0x65, 0x78, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, + 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, + 0x65, 0x72, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x2f, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x70, + 0x62, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x6d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x6d, 0x61, + 0x72, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x6d, 0x61, 0x72, + 0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x22, 0x99, 0x01, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x73, 0x12, 0x48, 0x0a, 0x14, 0x69, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x11, 0x69, 0x73, 0x41, 0x6c, 0x6c, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x22, 0x62, 0x0a, 0x1d, + 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, + 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x03, 0x52, 0x0d, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, + 0x22, 0x8f, 0x01, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x48, 0x0a, + 0x14, 0x69, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x62, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, + 0x2e, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x11, 0x69, 0x73, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x22, 0x35, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x12, 0x19, + 0x0a, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x22, 0x46, 0x0a, 0x19, 0x47, 0x65, 0x74, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x22, 0x72, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x64, 0x64, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x67, 0x72, 0x6f, + 0x75, 0x70, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x61, + 0x64, 0x64, 0x5f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x69, 0x73, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2a, 0x4c, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x4d, 0x54, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x47, 0x4d, 0x54, 0x5f, 0x41, 0x44, 0x4d, 0x49, + 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x4d, 0x54, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, + 0x52, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x4d, 0x54, 0x5f, 0x4d, 0x41, 0x4e, 0x41, 0x47, + 0x45, 0x10, 0x03, 0x2a, 0x6a, 0x0a, 0x13, 0x41, 0x6c, 0x6c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x4e, + 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x41, 0x6c, 0x6c, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x59, 0x45, 0x53, + 0x5f, 0x41, 0x6c, 0x6c, 0x5f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x42, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x6c, 0x6c, 0x5f, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x02, 0x2a, + 0x5e, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x41, + 0x6c, 0x6c, 0x5f, 0x41, 0x64, 0x64, 0x5f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x00, 0x12, + 0x16, 0x0a, 0x12, 0x59, 0x45, 0x53, 0x5f, 0x41, 0x6c, 0x6c, 0x5f, 0x41, 0x64, 0x64, 0x5f, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x4e, 0x4f, 0x54, 0x5f, 0x41, + 0x6c, 0x6c, 0x5f, 0x41, 0x64, 0x64, 0x5f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x10, 0x02, 0x32, + 0x81, 0x0a, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x63, 0x45, 0x78, 0x74, 0x12, 0x3f, 0x0a, 0x0e, + 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x15, + 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, 0x0a, + 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x2e, 0x70, + 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0d, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x2e, 0x70, 0x62, 0x2e, 0x52, 0x65, 0x63, 0x61, + 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, + 0x62, 0x2e, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x12, + 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, + 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3c, 0x0a, 0x0d, 0x53, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x14, 0x2e, 0x70, + 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x64, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x28, 0x0a, 0x09, 0x41, 0x64, 0x64, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x32, 0x0a, 0x0e, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x15, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x67, 0x72, 0x65, 0x65, + 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, + 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2e, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, + 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x30, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x46, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x12, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x0a, 0x47, 0x65, 0x74, + 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x36, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x2e, 0x70, 0x62, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x70, 0x62, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, + 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x2e, + 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, + 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x08, + 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, + 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x1a, 0x10, 0x2e, 0x70, 0x62, 0x2e, 0x47, + 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x09, 0x47, + 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x42, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x41, + 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, + 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x11, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x12, 0x38, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x70, 0x62, 0x2e, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x42, + 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x12, 0x16, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x70, 0x62, 0x2e, 0x47, + 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x52, 0x0a, 0x15, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x2e, 0x70, 0x62, + 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, + 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x4b, 0x0a, 0x1b, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x21, 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x1c, 0x2e, 0x70, + 0x62, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x70, 0x62, 0x2e, + 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x11, 0x53, 0x65, 0x74, + 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x18, + 0x2e, 0x70, 0x62, 0x2e, 0x53, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x64, 0x64, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x09, 0x2e, 0x70, 0x62, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x42, 0x10, 0x5a, 0x0e, 0x65, 0x67, 0x67, 0x2d, 0x69, 0x6d, 0x2f, 0x70, 0x6b, + 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_logic_ext_proto_rawDescOnce sync.Once + file_logic_ext_proto_rawDescData = file_logic_ext_proto_rawDesc +) + +func file_logic_ext_proto_rawDescGZIP() []byte { + file_logic_ext_proto_rawDescOnce.Do(func() { + file_logic_ext_proto_rawDescData = protoimpl.X.CompressGZIP(file_logic_ext_proto_rawDescData) + }) + return file_logic_ext_proto_rawDescData +} + +var file_logic_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_logic_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 37) +var file_logic_ext_proto_goTypes = []interface{}{ + (MemberType)(0), // 0: pb.MemberType + (AllMemberBannedType)(0), // 1: pb.AllMemberBannedType + (AllAddFriendType)(0), // 2: pb.AllAddFriendType + (*RegisterDeviceReq)(nil), // 3: pb.RegisterDeviceReq + (*RegisterDeviceResp)(nil), // 4: pb.RegisterDeviceResp + (*SendMessageReq)(nil), // 5: pb.SendMessageReq + (*SendMessageResp)(nil), // 6: pb.SendMessageResp + (*RecallMessageReq)(nil), // 7: pb.RecallMessageReq + (*RecallMessageResp)(nil), // 8: pb.RecallMessageResp + (*SendRedPacketReq)(nil), // 9: pb.SendRedPacketReq + (*SendRedPacketResp)(nil), // 10: pb.SendRedPacketResp + (*PushRoomReq)(nil), // 11: pb.PushRoomReq + (*AddFriendReq)(nil), // 12: pb.AddFriendReq + (*DeleteFriendReq)(nil), // 13: pb.DeleteFriendReq + (*AgreeAddFriendReq)(nil), // 14: pb.AgreeAddFriendReq + (*SetFriendReq)(nil), // 15: pb.SetFriendReq + (*SetFriendResp)(nil), // 16: pb.SetFriendResp + (*Friend)(nil), // 17: pb.Friend + (*GetFriendsResp)(nil), // 18: pb.GetFriendsResp + (*CreateGroupReq)(nil), // 19: pb.CreateGroupReq + (*CreateGroupResp)(nil), // 20: pb.CreateGroupResp + (*UpdateGroupReq)(nil), // 21: pb.UpdateGroupReq + (*GetGroupReq)(nil), // 22: pb.GetGroupReq + (*GetGroupResp)(nil), // 23: pb.GetGroupResp + (*GroupNotice)(nil), // 24: pb.GroupNotice + (*Group)(nil), // 25: pb.Group + (*GetGroupsResp)(nil), // 26: pb.GetGroupsResp + (*AddGroupMembersReq)(nil), // 27: pb.AddGroupMembersReq + (*AddGroupMembersResp)(nil), // 28: pb.AddGroupMembersResp + (*UpdateGroupMemberReq)(nil), // 29: pb.UpdateGroupMemberReq + (*DeleteGroupMemberReq)(nil), // 30: pb.DeleteGroupMemberReq + (*GetGroupMembersReq)(nil), // 31: pb.GetGroupMembersReq + (*GetGroupMembersResp)(nil), // 32: pb.GetGroupMembersResp + (*GroupMember)(nil), // 33: pb.GroupMember + (*SetGroupMemberBannedReq)(nil), // 34: pb.SetGroupMemberBannedReq + (*SetGroupMemberRemoveBannedReq)(nil), // 35: pb.SetGroupMemberRemoveBannedReq + (*SetGroupMemberBannedResp)(nil), // 36: pb.SetGroupMemberBannedResp + (*GetGroupBannedMembersReq)(nil), // 37: pb.GetGroupBannedMembersReq + (*GetGroupBannedMembersResp)(nil), // 38: pb.GetGroupBannedMembersResp + (*SetGroupAddFriendReq)(nil), // 39: pb.SetGroupAddFriendReq + (ReceiverType)(0), // 40: pb.ReceiverType + (MessageType)(0), // 41: pb.MessageType + (GroupUserStatusType)(0), // 42: pb.GroupUserStatusType + (GroupNoticePublishType)(0), // 43: pb.GroupNoticePublishType + (*Empty)(nil), // 44: pb.Empty +} +var file_logic_ext_proto_depIdxs = []int32{ + 40, // 0: pb.SendMessageReq.receiver_type:type_name -> pb.ReceiverType + 41, // 1: pb.SendMessageReq.message_type:type_name -> pb.MessageType + 40, // 2: pb.RecallMessageReq.receiver_type:type_name -> pb.ReceiverType + 41, // 3: pb.RecallMessageReq.message_type:type_name -> pb.MessageType + 40, // 4: pb.SendRedPacketReq.receiver_type:type_name -> pb.ReceiverType + 41, // 5: pb.SendRedPacketReq.message_type:type_name -> pb.MessageType + 41, // 6: pb.PushRoomReq.message_type:type_name -> pb.MessageType + 17, // 7: pb.GetFriendsResp.friends:type_name -> pb.Friend + 25, // 8: pb.GetGroupResp.group:type_name -> pb.Group + 0, // 9: pb.GetGroupResp.member_type:type_name -> pb.MemberType + 42, // 10: pb.GetGroupResp.group_user_status_type:type_name -> pb.GroupUserStatusType + 24, // 11: pb.GetGroupResp.group_notice:type_name -> pb.GroupNotice + 43, // 12: pb.GroupNotice.publish_type:type_name -> pb.GroupNoticePublishType + 25, // 13: pb.GetGroupsResp.groups:type_name -> pb.Group + 0, // 14: pb.UpdateGroupMemberReq.member_type:type_name -> pb.MemberType + 33, // 15: pb.GetGroupMembersResp.members:type_name -> pb.GroupMember + 0, // 16: pb.GroupMember.member_type:type_name -> pb.MemberType + 1, // 17: pb.SetGroupMemberBannedReq.is_all_member_banned:type_name -> pb.AllMemberBannedType + 1, // 18: pb.SetGroupMemberBannedResp.is_all_member_banned:type_name -> pb.AllMemberBannedType + 33, // 19: pb.SetGroupMemberBannedResp.members:type_name -> pb.GroupMember + 33, // 20: pb.GetGroupBannedMembersResp.members:type_name -> pb.GroupMember + 2, // 21: pb.SetGroupAddFriendReq.is_all_add_friend:type_name -> pb.AllAddFriendType + 3, // 22: pb.LogicExt.RegisterDevice:input_type -> pb.RegisterDeviceReq + 5, // 23: pb.LogicExt.SendMessage:input_type -> pb.SendMessageReq + 7, // 24: pb.LogicExt.RecallMessage:input_type -> pb.RecallMessageReq + 11, // 25: pb.LogicExt.PushRoom:input_type -> pb.PushRoomReq + 9, // 26: pb.LogicExt.SendRedPacket:input_type -> pb.SendRedPacketReq + 12, // 27: pb.LogicExt.AddFriend:input_type -> pb.AddFriendReq + 14, // 28: pb.LogicExt.AgreeAddFriend:input_type -> pb.AgreeAddFriendReq + 13, // 29: pb.LogicExt.DeleteFriend:input_type -> pb.DeleteFriendReq + 15, // 30: pb.LogicExt.SetFriend:input_type -> pb.SetFriendReq + 44, // 31: pb.LogicExt.GetFriends:input_type -> pb.Empty + 19, // 32: pb.LogicExt.CreateGroup:input_type -> pb.CreateGroupReq + 21, // 33: pb.LogicExt.UpdateGroup:input_type -> pb.UpdateGroupReq + 22, // 34: pb.LogicExt.GetGroup:input_type -> pb.GetGroupReq + 44, // 35: pb.LogicExt.GetGroups:input_type -> pb.Empty + 27, // 36: pb.LogicExt.AddGroupMembers:input_type -> pb.AddGroupMembersReq + 29, // 37: pb.LogicExt.UpdateGroupMember:input_type -> pb.UpdateGroupMemberReq + 30, // 38: pb.LogicExt.DeleteGroupMember:input_type -> pb.DeleteGroupMemberReq + 31, // 39: pb.LogicExt.GetGroupMembers:input_type -> pb.GetGroupMembersReq + 34, // 40: pb.LogicExt.SetGroupBannedMembers:input_type -> pb.SetGroupMemberBannedReq + 35, // 41: pb.LogicExt.SetGroupRemoveBannedMembers:input_type -> pb.SetGroupMemberRemoveBannedReq + 37, // 42: pb.LogicExt.GetGroupBannedMembers:input_type -> pb.GetGroupBannedMembersReq + 39, // 43: pb.LogicExt.SetGroupAddFriend:input_type -> pb.SetGroupAddFriendReq + 4, // 44: pb.LogicExt.RegisterDevice:output_type -> pb.RegisterDeviceResp + 6, // 45: pb.LogicExt.SendMessage:output_type -> pb.SendMessageResp + 8, // 46: pb.LogicExt.RecallMessage:output_type -> pb.RecallMessageResp + 44, // 47: pb.LogicExt.PushRoom:output_type -> pb.Empty + 10, // 48: pb.LogicExt.SendRedPacket:output_type -> pb.SendRedPacketResp + 44, // 49: pb.LogicExt.AddFriend:output_type -> pb.Empty + 44, // 50: pb.LogicExt.AgreeAddFriend:output_type -> pb.Empty + 44, // 51: pb.LogicExt.DeleteFriend:output_type -> pb.Empty + 16, // 52: pb.LogicExt.SetFriend:output_type -> pb.SetFriendResp + 18, // 53: pb.LogicExt.GetFriends:output_type -> pb.GetFriendsResp + 20, // 54: pb.LogicExt.CreateGroup:output_type -> pb.CreateGroupResp + 44, // 55: pb.LogicExt.UpdateGroup:output_type -> pb.Empty + 23, // 56: pb.LogicExt.GetGroup:output_type -> pb.GetGroupResp + 26, // 57: pb.LogicExt.GetGroups:output_type -> pb.GetGroupsResp + 28, // 58: pb.LogicExt.AddGroupMembers:output_type -> pb.AddGroupMembersResp + 44, // 59: pb.LogicExt.UpdateGroupMember:output_type -> pb.Empty + 44, // 60: pb.LogicExt.DeleteGroupMember:output_type -> pb.Empty + 32, // 61: pb.LogicExt.GetGroupMembers:output_type -> pb.GetGroupMembersResp + 36, // 62: pb.LogicExt.SetGroupBannedMembers:output_type -> pb.SetGroupMemberBannedResp + 44, // 63: pb.LogicExt.SetGroupRemoveBannedMembers:output_type -> pb.Empty + 38, // 64: pb.LogicExt.GetGroupBannedMembers:output_type -> pb.GetGroupBannedMembersResp + 44, // 65: pb.LogicExt.SetGroupAddFriend:output_type -> pb.Empty + 44, // [44:66] is the sub-list for method output_type + 22, // [22:44] 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_logic_ext_proto_init() } +func file_logic_ext_proto_init() { + if File_logic_ext_proto != nil { + return } + file_business_ext_proto_init() file_common_ext_proto_init() file_connect_ext_proto_init() if !protoimpl.UnsafeEnabled { @@ -2727,7 +3401,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Group); i { + switch v := v.(*GroupNotice); i { case 0: return &v.state case 1: @@ -2739,7 +3413,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupsResp); i { + switch v := v.(*Group); i { case 0: return &v.state case 1: @@ -2751,7 +3425,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupMembersReq); i { + switch v := v.(*GetGroupsResp); i { case 0: return &v.state case 1: @@ -2763,7 +3437,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddGroupMembersResp); i { + switch v := v.(*AddGroupMembersReq); i { case 0: return &v.state case 1: @@ -2775,7 +3449,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateGroupMemberReq); i { + switch v := v.(*AddGroupMembersResp); i { case 0: return &v.state case 1: @@ -2787,7 +3461,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteGroupMemberReq); i { + switch v := v.(*UpdateGroupMemberReq); i { case 0: return &v.state case 1: @@ -2799,7 +3473,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersReq); i { + switch v := v.(*DeleteGroupMemberReq); i { case 0: return &v.state case 1: @@ -2811,7 +3485,7 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetGroupMembersResp); i { + switch v := v.(*GetGroupMembersReq); i { case 0: return &v.state case 1: @@ -2823,6 +3497,18 @@ func file_logic_ext_proto_init() { } } file_logic_ext_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetGroupMembersResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GroupMember); i { case 0: return &v.state @@ -2834,14 +3520,86 @@ func file_logic_ext_proto_init() { return nil } } + file_logic_ext_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetGroupMemberBannedReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetGroupMemberRemoveBannedReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetGroupMemberBannedResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetGroupBannedMembersReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetGroupBannedMembersResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_logic_ext_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetGroupAddFriendReq); 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_logic_ext_proto_rawDesc, - NumEnums: 1, - NumMessages: 30, + NumEnums: 3, + NumMessages: 37, NumExtensions: 0, NumServices: 1, }, @@ -2897,10 +3655,18 @@ type LogicExtClient interface { AddGroupMembers(ctx context.Context, in *AddGroupMembersReq, opts ...grpc.CallOption) (*AddGroupMembersResp, error) // 更新群组成员信息 UpdateGroupMember(ctx context.Context, in *UpdateGroupMemberReq, opts ...grpc.CallOption) (*Empty, error) - // 添加群组成员 + // 删除群组成员 DeleteGroupMember(ctx context.Context, in *DeleteGroupMemberReq, opts ...grpc.CallOption) (*Empty, error) // 获取群组成员 GetGroupMembers(ctx context.Context, in *GetGroupMembersReq, opts ...grpc.CallOption) (*GetGroupMembersResp, error) + // 设置禁言 + SetGroupBannedMembers(ctx context.Context, in *SetGroupMemberBannedReq, opts ...grpc.CallOption) (*SetGroupMemberBannedResp, error) + // 取消禁言 + SetGroupRemoveBannedMembers(ctx context.Context, in *SetGroupMemberRemoveBannedReq, opts ...grpc.CallOption) (*Empty, error) + // 获取群组禁言成员 + GetGroupBannedMembers(ctx context.Context, in *GetGroupBannedMembersReq, opts ...grpc.CallOption) (*GetGroupBannedMembersResp, error) + // 设置是否加好友 + SetGroupAddFriend(ctx context.Context, in *SetGroupAddFriendReq, opts ...grpc.CallOption) (*Empty, error) } type logicExtClient struct { @@ -3073,6 +3839,42 @@ func (c *logicExtClient) GetGroupMembers(ctx context.Context, in *GetGroupMember return out, nil } +func (c *logicExtClient) SetGroupBannedMembers(ctx context.Context, in *SetGroupMemberBannedReq, opts ...grpc.CallOption) (*SetGroupMemberBannedResp, error) { + out := new(SetGroupMemberBannedResp) + err := c.cc.Invoke(ctx, "/pb.LogicExt/SetGroupBannedMembers", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logicExtClient) SetGroupRemoveBannedMembers(ctx context.Context, in *SetGroupMemberRemoveBannedReq, opts ...grpc.CallOption) (*Empty, error) { + out := new(Empty) + err := c.cc.Invoke(ctx, "/pb.LogicExt/SetGroupRemoveBannedMembers", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logicExtClient) GetGroupBannedMembers(ctx context.Context, in *GetGroupBannedMembersReq, opts ...grpc.CallOption) (*GetGroupBannedMembersResp, error) { + out := new(GetGroupBannedMembersResp) + err := c.cc.Invoke(ctx, "/pb.LogicExt/GetGroupBannedMembers", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logicExtClient) SetGroupAddFriend(ctx context.Context, in *SetGroupAddFriendReq, opts ...grpc.CallOption) (*Empty, error) { + out := new(Empty) + err := c.cc.Invoke(ctx, "/pb.LogicExt/SetGroupAddFriend", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // LogicExtServer is the server API for LogicExt service. // All implementations must embed UnimplementedLogicExtServer // for forward compatibility @@ -3109,10 +3911,18 @@ type LogicExtServer interface { AddGroupMembers(context.Context, *AddGroupMembersReq) (*AddGroupMembersResp, error) // 更新群组成员信息 UpdateGroupMember(context.Context, *UpdateGroupMemberReq) (*Empty, error) - // 添加群组成员 + // 删除群组成员 DeleteGroupMember(context.Context, *DeleteGroupMemberReq) (*Empty, error) // 获取群组成员 GetGroupMembers(context.Context, *GetGroupMembersReq) (*GetGroupMembersResp, error) + // 设置禁言 + SetGroupBannedMembers(context.Context, *SetGroupMemberBannedReq) (*SetGroupMemberBannedResp, error) + // 取消禁言 + SetGroupRemoveBannedMembers(context.Context, *SetGroupMemberRemoveBannedReq) (*Empty, error) + // 获取群组禁言成员 + GetGroupBannedMembers(context.Context, *GetGroupBannedMembersReq) (*GetGroupBannedMembersResp, error) + // 设置是否加好友 + SetGroupAddFriend(context.Context, *SetGroupAddFriendReq) (*Empty, error) } // UnimplementedLogicExtServer must be embedded to have forward compatible implementations. @@ -3173,6 +3983,18 @@ func (UnimplementedLogicExtServer) DeleteGroupMember(context.Context, *DeleteGro func (UnimplementedLogicExtServer) GetGroupMembers(context.Context, *GetGroupMembersReq) (*GetGroupMembersResp, error) { return nil, status.Errorf(codes.Unimplemented, "method GetGroupMembers not implemented") } +func (UnimplementedLogicExtServer) SetGroupBannedMembers(context.Context, *SetGroupMemberBannedReq) (*SetGroupMemberBannedResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetGroupBannedMembers not implemented") +} +func (UnimplementedLogicExtServer) SetGroupRemoveBannedMembers(context.Context, *SetGroupMemberRemoveBannedReq) (*Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetGroupRemoveBannedMembers not implemented") +} +func (UnimplementedLogicExtServer) GetGroupBannedMembers(context.Context, *GetGroupBannedMembersReq) (*GetGroupBannedMembersResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetGroupBannedMembers not implemented") +} +func (UnimplementedLogicExtServer) SetGroupAddFriend(context.Context, *SetGroupAddFriendReq) (*Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetGroupAddFriend not implemented") +} func RegisterLogicExtServer(s grpc.ServiceRegistrar, srv LogicExtServer) { s.RegisterService(&LogicExt_ServiceDesc, srv) @@ -3502,6 +4324,78 @@ func _LogicExt_GetGroupMembers_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } +func _LogicExt_SetGroupBannedMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SetGroupMemberBannedReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogicExtServer).SetGroupBannedMembers(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.LogicExt/SetGroupBannedMembers", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogicExtServer).SetGroupBannedMembers(ctx, req.(*SetGroupMemberBannedReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogicExt_SetGroupRemoveBannedMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SetGroupMemberRemoveBannedReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogicExtServer).SetGroupRemoveBannedMembers(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.LogicExt/SetGroupRemoveBannedMembers", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogicExtServer).SetGroupRemoveBannedMembers(ctx, req.(*SetGroupMemberRemoveBannedReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogicExt_GetGroupBannedMembers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetGroupBannedMembersReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogicExtServer).GetGroupBannedMembers(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.LogicExt/GetGroupBannedMembers", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogicExtServer).GetGroupBannedMembers(ctx, req.(*GetGroupBannedMembersReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogicExt_SetGroupAddFriend_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SetGroupAddFriendReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogicExtServer).SetGroupAddFriend(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pb.LogicExt/SetGroupAddFriend", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogicExtServer).SetGroupAddFriend(ctx, req.(*SetGroupAddFriendReq)) + } + return interceptor(ctx, in, info, handler) +} + // LogicExt_ServiceDesc is the grpc.ServiceDesc for LogicExt service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -3581,6 +4475,22 @@ var LogicExt_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetGroupMembers", Handler: _LogicExt_GetGroupMembers_Handler, }, + { + MethodName: "SetGroupBannedMembers", + Handler: _LogicExt_SetGroupBannedMembers_Handler, + }, + { + MethodName: "SetGroupRemoveBannedMembers", + Handler: _LogicExt_SetGroupRemoveBannedMembers_Handler, + }, + { + MethodName: "GetGroupBannedMembers", + Handler: _LogicExt_GetGroupBannedMembers_Handler, + }, + { + MethodName: "SetGroupAddFriend", + Handler: _LogicExt_SetGroupAddFriend_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "logic.ext.proto", diff --git a/app/pkg/pb/im.logic.int.pb.go b/app/pkg/pb/logic.int.pb.go similarity index 96% rename from app/pkg/pb/im.logic.int.pb.go rename to app/pkg/pb/logic.int.pb.go index c7e89ed..c033abf 100644 --- a/app/pkg/pb/im.logic.int.pb.go +++ b/app/pkg/pb/logic.int.pb.go @@ -1,8 +1,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.26.0 -// protoc v3.14.0 -// source: logic.int.proto_back +// protoc-gen-go v1.28.1 +// protoc v3.20.0--rc2 +// source: logic.int.proto package pb @@ -1122,17 +1122,14 @@ func file_logic_int_proto_init() { file_logic_int_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 comm +// 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 +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 // LogicIntClient is the client API for LogicInt service. // -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type LogicIntClient interface { // 登录 ConnSignIn(ctx context.Context, in *ConnSignInReq, opts ...grpc.CallOption) (*Empty, error) @@ -1255,6 +1252,8 @@ func (c *logicIntClient) ServerStop(ctx context.Context, in *ServerStopReq, opts } // LogicIntServer is the server API for LogicInt service. +// All implementations must embed UnimplementedLogicIntServer +// for forward compatibility type LogicIntServer interface { // 登录 ConnSignIn(context.Context, *ConnSignInReq) (*Empty, error) @@ -1278,43 +1277,49 @@ type LogicIntServer interface { ServerStop(context.Context, *ServerStopReq) (*Empty, error) } -// UnimplementedLogicIntServer can be embedded to have forward compatible implementations. +// UnimplementedLogicIntServer must be embedded to have forward compatible implementations. type UnimplementedLogicIntServer struct { } -func (*UnimplementedLogicIntServer) ConnSignIn(context.Context, *ConnSignInReq) (*Empty, error) { +func (UnimplementedLogicIntServer) ConnSignIn(context.Context, *ConnSignInReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ConnSignIn not implemented") } -func (*UnimplementedLogicIntServer) Sync(context.Context, *SyncReq) (*SyncResp, error) { +func (UnimplementedLogicIntServer) Sync(context.Context, *SyncReq) (*SyncResp, error) { return nil, status.Errorf(codes.Unimplemented, "method Sync not implemented") } -func (*UnimplementedLogicIntServer) MessageACK(context.Context, *MessageACKReq) (*Empty, error) { +func (UnimplementedLogicIntServer) MessageACK(context.Context, *MessageACKReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method MessageACK not implemented") } -func (*UnimplementedLogicIntServer) Offline(context.Context, *OfflineReq) (*Empty, error) { +func (UnimplementedLogicIntServer) Offline(context.Context, *OfflineReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method Offline not implemented") } -func (*UnimplementedLogicIntServer) SubscribeRoom(context.Context, *SubscribeRoomReq) (*Empty, error) { +func (UnimplementedLogicIntServer) SubscribeRoom(context.Context, *SubscribeRoomReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SubscribeRoom not implemented") } -func (*UnimplementedLogicIntServer) SendMessage(context.Context, *SendMessageReq) (*SendMessageResp, error) { +func (UnimplementedLogicIntServer) SendMessage(context.Context, *SendMessageReq) (*SendMessageResp, error) { return nil, status.Errorf(codes.Unimplemented, "method SendMessage not implemented") } -func (*UnimplementedLogicIntServer) PushRoom(context.Context, *PushRoomReq) (*Empty, error) { +func (UnimplementedLogicIntServer) PushRoom(context.Context, *PushRoomReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method PushRoom not implemented") } -func (*UnimplementedLogicIntServer) PushAll(context.Context, *PushAllReq) (*Empty, error) { +func (UnimplementedLogicIntServer) PushAll(context.Context, *PushAllReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method PushAll not implemented") } -func (*UnimplementedLogicIntServer) GetDevice(context.Context, *GetDeviceReq) (*GetDeviceResp, error) { +func (UnimplementedLogicIntServer) GetDevice(context.Context, *GetDeviceReq) (*GetDeviceResp, error) { return nil, status.Errorf(codes.Unimplemented, "method GetDevice not implemented") } -func (*UnimplementedLogicIntServer) ServerStop(context.Context, *ServerStopReq) (*Empty, error) { +func (UnimplementedLogicIntServer) ServerStop(context.Context, *ServerStopReq) (*Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ServerStop not implemented") } -func RegisterLogicIntServer(s *grpc.Server, srv LogicIntServer) { - s.RegisterService(&_LogicInt_serviceDesc, srv) +// UnsafeLogicIntServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to LogicIntServer will +// result in compilation errors. +type UnsafeLogicIntServer interface { +} + +func RegisterLogicIntServer(s grpc.ServiceRegistrar, srv LogicIntServer) { + s.RegisterService(&LogicInt_ServiceDesc, srv) } func _LogicInt_ConnSignIn_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { @@ -1497,7 +1502,10 @@ func _LogicInt_ServerStop_Handler(srv interface{}, ctx context.Context, dec func return interceptor(ctx, in, info, handler) } -var _LogicInt_serviceDesc = grpc.ServiceDesc{ +// LogicInt_ServiceDesc is the grpc.ServiceDesc for LogicInt service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var LogicInt_ServiceDesc = grpc.ServiceDesc{ ServiceName: "pb.LogicInt", HandlerType: (*LogicIntServer)(nil), Methods: []grpc.MethodDesc{ @@ -1543,5 +1551,5 @@ var _LogicInt_serviceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "logic.int.proto_back", + Metadata: "logic.int.proto", } diff --git a/app/pkg/pb/push.ext.pb.go b/app/pkg/pb/push.ext.pb.go new file mode 100644 index 0000000..78e742d --- /dev/null +++ b/app/pkg/pb/push.ext.pb.go @@ -0,0 +1,956 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.1 +// protoc v3.20.0--rc2 +// source: push.ext.proto + +package pb + +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 PushCode int32 + +const ( + PushCode_PC_ADD_DEFAULT PushCode = 0 + PushCode_PC_ADD_FRIEND PushCode = 100 // 添加好友请求 + PushCode_PC_AGREE_ADD_FRIEND PushCode = 101 // 同意添加好友 + PushCode_PC_UPDATE_GROUP PushCode = 110 // 更新群组 + PushCode_PC_ADD_GROUP_MEMBERS PushCode = 120 // 添加群组成员 + PushCode_PC_REMOVE_GROUP_MEMBER PushCode = 121 // 移除群组成员 + PushCode_PC_BANNED_GROUP_MEMBER PushCode = 122 // 禁言群组成员 + PushCode_PC_REMOVE_BANNED_GROUP_MEMBER PushCode = 123 // 取消禁言群组成员 + PushCode_PC_UPDATE_GROUP_MEMBER PushCode = 124 // 更新群组成员信息 +) + +// Enum value maps for PushCode. +var ( + PushCode_name = map[int32]string{ + 0: "PC_ADD_DEFAULT", + 100: "PC_ADD_FRIEND", + 101: "PC_AGREE_ADD_FRIEND", + 110: "PC_UPDATE_GROUP", + 120: "PC_ADD_GROUP_MEMBERS", + 121: "PC_REMOVE_GROUP_MEMBER", + 122: "PC_BANNED_GROUP_MEMBER", + 123: "PC_REMOVE_BANNED_GROUP_MEMBER", + 124: "PC_UPDATE_GROUP_MEMBER", + } + PushCode_value = map[string]int32{ + "PC_ADD_DEFAULT": 0, + "PC_ADD_FRIEND": 100, + "PC_AGREE_ADD_FRIEND": 101, + "PC_UPDATE_GROUP": 110, + "PC_ADD_GROUP_MEMBERS": 120, + "PC_REMOVE_GROUP_MEMBER": 121, + "PC_BANNED_GROUP_MEMBER": 122, + "PC_REMOVE_BANNED_GROUP_MEMBER": 123, + "PC_UPDATE_GROUP_MEMBER": 124, + } +) + +func (x PushCode) Enum() *PushCode { + p := new(PushCode) + *p = x + return p +} + +func (x PushCode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (PushCode) Descriptor() protoreflect.EnumDescriptor { + return file_push_ext_proto_enumTypes[0].Descriptor() +} + +func (PushCode) Type() protoreflect.EnumType { + return &file_push_ext_proto_enumTypes[0] +} + +func (x PushCode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use PushCode.Descriptor instead. +func (PushCode) EnumDescriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{0} +} + +// 推送码 PC_ADD_FRIEND = 100 +type AddFriendPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id + Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 + AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 + Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` // 描述 +} + +func (x *AddFriendPush) Reset() { + *x = AddFriendPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddFriendPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddFriendPush) ProtoMessage() {} + +func (x *AddFriendPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 AddFriendPush.ProtoReflect.Descriptor instead. +func (*AddFriendPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{0} +} + +func (x *AddFriendPush) GetFriendId() int64 { + if x != nil { + return x.FriendId + } + return 0 +} + +func (x *AddFriendPush) GetNickname() string { + if x != nil { + return x.Nickname + } + return "" +} + +func (x *AddFriendPush) GetAvatarUrl() string { + if x != nil { + return x.AvatarUrl + } + return "" +} + +func (x *AddFriendPush) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +// 推送码 PC_AGREE_ADD_FRIEND = 101 +type AgreeAddFriendPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FriendId int64 `protobuf:"varint,1,opt,name=friend_id,json=friendId,proto3" json:"friend_id,omitempty"` // 好友id + Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` // 昵称 + AvatarUrl string `protobuf:"bytes,3,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 头像 +} + +func (x *AgreeAddFriendPush) Reset() { + *x = AgreeAddFriendPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AgreeAddFriendPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AgreeAddFriendPush) ProtoMessage() {} + +func (x *AgreeAddFriendPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 AgreeAddFriendPush.ProtoReflect.Descriptor instead. +func (*AgreeAddFriendPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{1} +} + +func (x *AgreeAddFriendPush) GetFriendId() int64 { + if x != nil { + return x.FriendId + } + return 0 +} + +func (x *AgreeAddFriendPush) GetNickname() string { + if x != nil { + return x.Nickname + } + return "" +} + +func (x *AgreeAddFriendPush) GetAvatarUrl() string { + if x != nil { + return x.AvatarUrl + } + return "" +} + +// 更新群组 PC_UPDATE_GROUP = 110 +type UpdateGroupPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + OptAvatarUrl string `protobuf:"bytes,3,opt,name=opt_avatar_url,json=optAvatarUrl,proto3" json:"opt_avatar_url,omitempty"` // 操作人头像 + Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` // 群组名称 + AvatarUrl string `protobuf:"bytes,5,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"` // 群组头像 + Introduction string `protobuf:"bytes,6,opt,name=introduction,proto3" json:"introduction,omitempty"` // 群组简介 + IsUpdateIntroduction bool `protobuf:"varint,7,opt,name=isUpdateIntroduction,proto3" json:"isUpdateIntroduction,omitempty"` // 是否更新群组简介 + Extra string `protobuf:"bytes,8,opt,name=extra,proto3" json:"extra,omitempty"` // 附加字段 +} + +func (x *UpdateGroupPush) Reset() { + *x = UpdateGroupPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateGroupPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateGroupPush) ProtoMessage() {} + +func (x *UpdateGroupPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 UpdateGroupPush.ProtoReflect.Descriptor instead. +func (*UpdateGroupPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{2} +} + +func (x *UpdateGroupPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *UpdateGroupPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *UpdateGroupPush) GetOptAvatarUrl() string { + if x != nil { + return x.OptAvatarUrl + } + return "" +} + +func (x *UpdateGroupPush) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *UpdateGroupPush) GetAvatarUrl() string { + if x != nil { + return x.AvatarUrl + } + return "" +} + +func (x *UpdateGroupPush) GetIntroduction() string { + if x != nil { + return x.Introduction + } + return "" +} + +func (x *UpdateGroupPush) GetIsUpdateIntroduction() bool { + if x != nil { + return x.IsUpdateIntroduction + } + return false +} + +func (x *UpdateGroupPush) GetExtra() string { + if x != nil { + return x.Extra + } + return "" +} + +// 添加群组成员 PC_AGREE_ADD_GROUPS = 120 +type AddGroupMembersPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + Members []*GroupMember `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` // 群组成员 +} + +func (x *AddGroupMembersPush) Reset() { + *x = AddGroupMembersPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddGroupMembersPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddGroupMembersPush) ProtoMessage() {} + +func (x *AddGroupMembersPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 AddGroupMembersPush.ProtoReflect.Descriptor instead. +func (*AddGroupMembersPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{3} +} + +func (x *AddGroupMembersPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *AddGroupMembersPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *AddGroupMembersPush) GetMembers() []*GroupMember { + if x != nil { + return x.Members + } + return nil +} + +// 删除群组成员 PC_REMOVE_GROUP_MEMBER = 121 +type RemoveGroupMemberPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + DeletedUserId int64 `protobuf:"varint,3,opt,name=deleted_user_id,json=deletedUserId,proto3" json:"deleted_user_id,omitempty"` // 被删除的成员id + DeletedUserName string `protobuf:"bytes,4,opt,name=deleted_user_name,json=deletedUserName,proto3" json:"deleted_user_name,omitempty"` // 被删除的成员昵称 +} + +func (x *RemoveGroupMemberPush) Reset() { + *x = RemoveGroupMemberPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RemoveGroupMemberPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RemoveGroupMemberPush) ProtoMessage() {} + +func (x *RemoveGroupMemberPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 RemoveGroupMemberPush.ProtoReflect.Descriptor instead. +func (*RemoveGroupMemberPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{4} +} + +func (x *RemoveGroupMemberPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *RemoveGroupMemberPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *RemoveGroupMemberPush) GetDeletedUserId() int64 { + if x != nil { + return x.DeletedUserId + } + return 0 +} + +func (x *RemoveGroupMemberPush) GetDeletedUserName() string { + if x != nil { + return x.DeletedUserName + } + return "" +} + +// 禁言群组成员 PC_BANNED_GROUP_MEMBER = 122 +type BannedGroupMemberPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + BannedUserId int64 `protobuf:"varint,3,opt,name=banned_user_id,json=bannedUserId,proto3" json:"banned_user_id,omitempty"` // 被禁言的成员id + BannedUserName string `protobuf:"bytes,4,opt,name=banned_user_name,json=bannedUserName,proto3" json:"banned_user_name,omitempty"` // 被禁言的成员昵称 +} + +func (x *BannedGroupMemberPush) Reset() { + *x = BannedGroupMemberPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BannedGroupMemberPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BannedGroupMemberPush) ProtoMessage() {} + +func (x *BannedGroupMemberPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 BannedGroupMemberPush.ProtoReflect.Descriptor instead. +func (*BannedGroupMemberPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{5} +} + +func (x *BannedGroupMemberPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *BannedGroupMemberPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *BannedGroupMemberPush) GetBannedUserId() int64 { + if x != nil { + return x.BannedUserId + } + return 0 +} + +func (x *BannedGroupMemberPush) GetBannedUserName() string { + if x != nil { + return x.BannedUserName + } + return "" +} + +// 取消禁言群组成员 PC_REMOVE_BANNED_GROUP_MEMBER = 123 +type RemoveBannedGroupMemberPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + RemoveBannedUserId int64 `protobuf:"varint,3,opt,name=remove_banned_user_id,json=removeBannedUserId,proto3" json:"remove_banned_user_id,omitempty"` // 被解禁言的成员id + RemoveBannedUserName string `protobuf:"bytes,4,opt,name=remove_banned_user_name,json=removeBannedUserName,proto3" json:"remove_banned_user_name,omitempty"` // 被解禁言的成员昵称 +} + +func (x *RemoveBannedGroupMemberPush) Reset() { + *x = RemoveBannedGroupMemberPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RemoveBannedGroupMemberPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RemoveBannedGroupMemberPush) ProtoMessage() {} + +func (x *RemoveBannedGroupMemberPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 RemoveBannedGroupMemberPush.ProtoReflect.Descriptor instead. +func (*RemoveBannedGroupMemberPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{6} +} + +func (x *RemoveBannedGroupMemberPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *RemoveBannedGroupMemberPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *RemoveBannedGroupMemberPush) GetRemoveBannedUserId() int64 { + if x != nil { + return x.RemoveBannedUserId + } + return 0 +} + +func (x *RemoveBannedGroupMemberPush) GetRemoveBannedUserName() string { + if x != nil { + return x.RemoveBannedUserName + } + return "" +} + +// 修改群组成员身份 PC_UPDATE_GROUP_MEMBER = 124 +type UpdateMemberPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OptId int64 `protobuf:"varint,1,opt,name=opt_id,json=optId,proto3" json:"opt_id,omitempty"` // 操作人用户id + OptName string `protobuf:"bytes,2,opt,name=opt_name,json=optName,proto3" json:"opt_name,omitempty"` // 操作人昵称 + UpdateUserId int64 `protobuf:"varint,3,opt,name=update_user_id,json=updateUserId,proto3" json:"update_user_id,omitempty"` // 被修改的成员id + UpdateUserName string `protobuf:"bytes,4,opt,name=update_user_name,json=updateUserName,proto3" json:"update_user_name,omitempty"` // 被修改的成员昵称 + UpdateUserMemberType int32 `protobuf:"varint,5,opt,name=update_user_member_type,json=updateUserMemberType,proto3" json:"update_user_member_type,omitempty"` // 被修改的成员身份类型 +} + +func (x *UpdateMemberPush) Reset() { + *x = UpdateMemberPush{} + if protoimpl.UnsafeEnabled { + mi := &file_push_ext_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateMemberPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateMemberPush) ProtoMessage() {} + +func (x *UpdateMemberPush) ProtoReflect() protoreflect.Message { + mi := &file_push_ext_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 UpdateMemberPush.ProtoReflect.Descriptor instead. +func (*UpdateMemberPush) Descriptor() ([]byte, []int) { + return file_push_ext_proto_rawDescGZIP(), []int{7} +} + +func (x *UpdateMemberPush) GetOptId() int64 { + if x != nil { + return x.OptId + } + return 0 +} + +func (x *UpdateMemberPush) GetOptName() string { + if x != nil { + return x.OptName + } + return "" +} + +func (x *UpdateMemberPush) GetUpdateUserId() int64 { + if x != nil { + return x.UpdateUserId + } + return 0 +} + +func (x *UpdateMemberPush) GetUpdateUserName() string { + if x != nil { + return x.UpdateUserName + } + return "" +} + +func (x *UpdateMemberPush) GetUpdateUserMemberType() int32 { + if x != nil { + return x.UpdateUserMemberType + } + return 0 +} + +var File_push_ext_proto protoreflect.FileDescriptor + +var file_push_ext_proto_rawDesc = []byte{ + 0x0a, 0x0e, 0x70, 0x75, 0x73, 0x68, 0x2e, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x02, 0x70, 0x62, 0x1a, 0x0f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x2e, 0x65, 0x78, 0x74, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x89, 0x01, 0x0a, 0x0d, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x49, 0x64, 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, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x6c, 0x0a, 0x12, 0x41, 0x67, 0x72, 0x65, 0x65, 0x41, 0x64, 0x64, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, + 0x6e, 0x64, 0x49, 0x64, 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, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x22, + 0x8a, 0x02, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x50, + 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, + 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x5f, 0x61, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, + 0x70, 0x74, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x22, + 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x14, 0x69, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, + 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x14, 0x69, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, + 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x22, 0x72, 0x0a, 0x13, + 0x41, 0x64, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x50, + 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, + 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x62, 0x2e, 0x47, 0x72, 0x6f, 0x75, + 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, + 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x55, 0x73, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x22, 0x99, 0x01, 0x0a, 0x15, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x70, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, 0x74, 0x49, + 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, + 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x62, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xb9, 0x01, 0x0a, + 0x1b, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x47, 0x72, 0x6f, + 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, 0x06, + 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, 0x70, + 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, + 0x0a, 0x15, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x72, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x35, 0x0a, 0x17, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x62, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x14, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, + 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xcb, 0x01, 0x0a, 0x10, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x12, 0x15, 0x0a, + 0x06, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6f, + 0x70, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x24, 0x0a, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, + 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x35, 0x0a, 0x17, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x14, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x2a, 0xf0, 0x01, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x43, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x44, 0x45, + 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x43, 0x5f, 0x41, 0x44, + 0x44, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, 0x44, 0x10, 0x64, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x43, + 0x5f, 0x41, 0x47, 0x52, 0x45, 0x45, 0x5f, 0x41, 0x44, 0x44, 0x5f, 0x46, 0x52, 0x49, 0x45, 0x4e, + 0x44, 0x10, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, + 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x6e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x43, 0x5f, 0x41, + 0x44, 0x44, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x53, + 0x10, 0x78, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x43, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, + 0x47, 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x79, 0x12, 0x1a, + 0x0a, 0x16, 0x50, 0x43, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x5f, 0x47, 0x52, 0x4f, 0x55, + 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x7a, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x43, + 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x5f, 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x5f, 0x47, + 0x52, 0x4f, 0x55, 0x50, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x7b, 0x12, 0x1a, 0x0a, + 0x16, 0x50, 0x43, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, + 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x10, 0x7c, 0x42, 0x0d, 0x5a, 0x0b, 0x67, 0x69, 0x6d, + 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x62, 0x2f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_push_ext_proto_rawDescOnce sync.Once + file_push_ext_proto_rawDescData = file_push_ext_proto_rawDesc +) + +func file_push_ext_proto_rawDescGZIP() []byte { + file_push_ext_proto_rawDescOnce.Do(func() { + file_push_ext_proto_rawDescData = protoimpl.X.CompressGZIP(file_push_ext_proto_rawDescData) + }) + return file_push_ext_proto_rawDescData +} + +var file_push_ext_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_push_ext_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_push_ext_proto_goTypes = []interface{}{ + (PushCode)(0), // 0: pb.PushCode + (*AddFriendPush)(nil), // 1: pb.AddFriendPush + (*AgreeAddFriendPush)(nil), // 2: pb.AgreeAddFriendPush + (*UpdateGroupPush)(nil), // 3: pb.UpdateGroupPush + (*AddGroupMembersPush)(nil), // 4: pb.AddGroupMembersPush + (*RemoveGroupMemberPush)(nil), // 5: pb.RemoveGroupMemberPush + (*BannedGroupMemberPush)(nil), // 6: pb.BannedGroupMemberPush + (*RemoveBannedGroupMemberPush)(nil), // 7: pb.RemoveBannedGroupMemberPush + (*UpdateMemberPush)(nil), // 8: pb.UpdateMemberPush + (*GroupMember)(nil), // 9: pb.GroupMember +} +var file_push_ext_proto_depIdxs = []int32{ + 9, // 0: pb.AddGroupMembersPush.members:type_name -> pb.GroupMember + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] 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_ext_proto_init() } +func file_push_ext_proto_init() { + if File_push_ext_proto != nil { + return + } + file_logic_ext_proto_init() + if !protoimpl.UnsafeEnabled { + file_push_ext_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AddFriendPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AgreeAddFriendPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateGroupPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AddGroupMembersPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RemoveGroupMemberPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BannedGroupMemberPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RemoveBannedGroupMemberPush); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_push_ext_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateMemberPush); 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_ext_proto_rawDesc, + NumEnums: 1, + NumMessages: 8, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_push_ext_proto_goTypes, + DependencyIndexes: file_push_ext_proto_depIdxs, + EnumInfos: file_push_ext_proto_enumTypes, + MessageInfos: file_push_ext_proto_msgTypes, + }.Build() + File_push_ext_proto = out.File + file_push_ext_proto_rawDesc = nil + file_push_ext_proto_goTypes = nil + file_push_ext_proto_depIdxs = nil +} diff --git a/app/pkg/proto/im.business.ext.proto b/app/pkg/proto/business.ext.proto similarity index 64% rename from app/pkg/proto/im.business.ext.proto rename to app/pkg/proto/business.ext.proto index ddd1375..e384971 100644 --- a/app/pkg/proto/im.business.ext.proto +++ b/app/pkg/proto/business.ext.proto @@ -1,8 +1,8 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; -import "im.common.ext.proto"; +import "common.ext.proto"; service BusinessExt { // 登录 @@ -21,8 +21,45 @@ service BusinessExt { rpc IsFriends (IsFriendsReq) returns (IsFriendsResp); // 投诉群 rpc ComplainGroup (ComplainGroupReq) returns (Empty); + // 发布群公告 + rpc PublishGroupNotice (PublishGroupNoticeReq) returns (Empty); + // 查看群公告 + rpc ViewGroupNotice (ViewGroupNoticeReq) returns (ViewGroupNoticeResp); + // 点赞群公告 + rpc LikeGroupNotice (LikeGroupNoticeReq) returns (Empty); + // 取消点赞群公告 + rpc CancelLikeGroupNotice (CancelLikeGroupNoticeReq) returns (Empty); } +message LikeGroupNoticeReq { + int64 group_id = 1; +} + +message CancelLikeGroupNoticeReq { + int64 group_id = 1; +} + +message ViewGroupNoticeReq { + int64 group_id = 1; +} + +message ViewGroupNoticeResp { + int64 group_id = 1; + int64 user_id = 2; //发布用户id + string content = 3; //公告内容 + int64 like_nums = 4; //点赞数量 + int64 read_nums = 5; //阅读数量 + GroupNoticePublishType publish_type = 6; // 发布方式 + string publish_time = 7; // 发布时间 + bool is_like = 8; // 是否点赞 +} + +message PublishGroupNoticeReq { + int64 group_id = 1; + int64 user_id = 2; //发布用户id + GroupNoticePublishType publish_type = 3; // 发布方式 + string content = 4; // 发布内容 +} message ComplainGroupReq { int64 group_id = 1; @@ -31,7 +68,7 @@ message ComplainGroupReq { repeated string image_list = 4; // 图片 } -// 消息类型 +// 投诉类型 enum ComplainType { CT_UNKNOWN = 0; // 未知 CT_GAMBLE = 1; // 存在赌博行为 @@ -43,6 +80,14 @@ enum ComplainType { MT_OTHER = 7; // 其他 } +// 群公告发布方式 +enum GroupNoticePublishType { + UNKNOWN_PUBLISH = 0; // 未知 + ONLY_PUBLISH = 1; // 仅发布 + PUBLISH_AND_NOTICE = 2; // 发布并通知 + NOTICE_AND_TOP_UP = 3; // 存在骗钱行为 +} + message IsFriendsReq { string user_phone = 1; @@ -67,16 +112,14 @@ message SignInReq { string phone_number = 1; // 手机号 string code = 2; // 验证码 int64 device_id = 3; // 设备id - int64 master_id = 4; // 站长id - string push_alia = 5; // 极光推送-别名 - string nickname = 6; // 昵称 - string avatar_url = 7; // 头像地址 + string push_alia = 4; // 极光推送-别名 + string nickname = 5; // 昵称 + string avatar_url = 6; // 头像地址 } message SignInResp { bool is_new = 1; // 是否是新用户 int64 user_id = 2; // 用户id string token = 3; // token - int64 master_id = 4; // 站长id } message CloudUploadFileReq { string dir = 1; // 目录名 @@ -98,9 +141,8 @@ message User { string extra = 5; // 附加字段 int64 create_time = 6; // 创建时间 int64 update_time = 7; // 更新时间 - int64 master_id = 8; // 站长id - int64 is_auto_added_friends = 9; // 是否自动被添加好友 - string phone_number = 10; // 手机号 + int64 is_auto_added_friends = 8; // 是否自动被添加好友 + string phone_number = 9; // 手机号 } message GetUserReq { @@ -120,7 +162,6 @@ message UpdateUserReq { message SearchUserReq{ string key = 1; - int64 master_id = 2; } message SearchUserResp{ repeated User users = 1; diff --git a/app/pkg/proto/im.business.int.proto b/app/pkg/proto/business.int.proto similarity index 69% rename from app/pkg/proto/im.business.int.proto rename to app/pkg/proto/business.int.proto index 6e8da25..f67b23e 100644 --- a/app/pkg/proto/im.business.int.proto +++ b/app/pkg/proto/business.int.proto @@ -1,13 +1,11 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; -import "im.common.ext.proto"; -import "im.business.ext.proto"; +import "common.ext.proto"; +import "business.ext.proto"; service BusinessInt { - // 站长权限校验 - rpc MasterAuth (MasterAuthReq) returns (Empty); // 权限校验 rpc Auth (AuthReq) returns (Empty); // 批量获取用户信息 @@ -16,10 +14,6 @@ service BusinessInt { rpc GetUsers (GetUsersReq) returns (GetUsersResp); } -message MasterAuthReq { - string master_id = 1; -} - message AuthReq { int64 user_id = 1; int64 device_id = 2; diff --git a/app/pkg/proto/common.ext.proto b/app/pkg/proto/common.ext.proto new file mode 100644 index 0000000..7613c92 --- /dev/null +++ b/app/pkg/proto/common.ext.proto @@ -0,0 +1,5 @@ +syntax = "proto3"; +package pb; +option go_package = "egg-im/pkg/pb/"; + +message Empty{} \ No newline at end of file diff --git a/app/pkg/proto/im.connect.ext.proto b/app/pkg/proto/connect.ext.proto similarity index 96% rename from app/pkg/proto/im.connect.ext.proto rename to app/pkg/proto/connect.ext.proto index 4d7d161..985163d 100644 --- a/app/pkg/proto/im.connect.ext.proto +++ b/app/pkg/proto/connect.ext.proto @@ -1,6 +1,6 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; enum PackageType { PT_UNKNOWN = 0; // 未知 @@ -108,6 +108,9 @@ message File { string name = 13; // 文件名 int64 size = 14; // 文件大小 string url = 15; // 文件url + int32 width = 16; // 文件宽度 + int32 height = 17; // 文件长度 + string thumbnail_url = 18; // 文件缩略图url } // 地理位置消息 @@ -151,6 +154,7 @@ message RED_PACKAGE { string send_red_packet_nickname = 14; // 红包发送者昵称 string send_red_packet_avatar_url = 15; // 红包发送者头像 string red_packet_small_content = 16; // 红包小文字内容 + string red_packet_cover = 17; // 红包封面 } /************************************消息体定义结束************************************/ diff --git a/app/pkg/proto/im.connect.int.proto b/app/pkg/proto/connect.int.proto similarity index 82% rename from app/pkg/proto/im.connect.int.proto rename to app/pkg/proto/connect.int.proto index 454d18c..36d4f0b 100644 --- a/app/pkg/proto/im.connect.int.proto +++ b/app/pkg/proto/connect.int.proto @@ -1,9 +1,9 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; -import "im.common.ext.proto"; -import "im.connect.ext.proto"; +import "common.ext.proto"; +import "connect.ext.proto"; service ConnectInt { // 消息投递 diff --git a/app/pkg/proto/im.common.ext.proto b/app/pkg/proto/im.common.ext.proto deleted file mode 100644 index 62448cb..0000000 --- a/app/pkg/proto/im.common.ext.proto +++ /dev/null @@ -1,5 +0,0 @@ -syntax = "proto3"; -package pb; -option go_package = "gim/pkg/pb/"; - -message Empty{} \ No newline at end of file diff --git a/app/pkg/proto/im.push.ext.proto b/app/pkg/proto/im.push.ext.proto deleted file mode 100644 index f78e71b..0000000 --- a/app/pkg/proto/im.push.ext.proto +++ /dev/null @@ -1,58 +0,0 @@ -syntax = "proto3"; -package pb; -option go_package = "gim/pkg/pb/"; - -import "im.logic.ext.proto"; - -enum PushCode { - PC_ADD_DEFAULT = 0; - - PC_ADD_FRIEND = 100; // 添加好友请求 - PC_AGREE_ADD_FRIEND = 101; // 同意添加好友 - - PC_UPDATE_GROUP = 110; // 更新群组 - - PC_ADD_GROUP_MEMBERS = 120; // 添加群组成员 - PC_REMOVE_GROUP_MEMBER = 121; // 移除群组成员 - -} - -// 推送码 PC_ADD_FRIEND = 100 -message AddFriendPush { - int64 friend_id = 1; // 好友id - string nickname = 2; // 昵称 - string avatar_url = 3; // 头像 - string description = 4; // 描述 -} - -// 推送码 PC_AGREE_ADD_FRIEND = 101 -message AgreeAddFriendPush { - int64 friend_id = 1; // 好友id - string nickname = 2; // 昵称 - string avatar_url = 3; // 头像 -} - -// 更新群组 PC_UPDATE_GROUP = 110 -message UpdateGroupPush { - int64 opt_id = 1; // 操作人用户id - string opt_name = 2; // 操作人昵称 - string name = 3; // 群组名称 - string avatar_url = 4; // 群组头像 - string introduction = 5; // 群组简介 - string extra = 6; // 附加字段 -} - -// 添加群组成员 PC_AGREE_ADD_GROUPS = 120 -message AddGroupMembersPush { - int64 opt_id = 1; // 操作人用户id - string opt_name = 2; // 操作人昵称 - repeated GroupMember members = 3; // 群组成员 -} - -// 删除群组成员 PC_REMOVE_GROUP_MEMBER = 121 -message RemoveGroupMemberPush { - int64 opt_id = 1; // 操作人用户id - string opt_name = 2; // 操作人昵称 - int64 deleted_user_id = 3; // 被删除的成员id - string deleted_user_name = 4; // 被删除的成员昵称 -} diff --git a/app/pkg/proto/im.logic.ext.proto b/app/pkg/proto/logic.ext.proto similarity index 73% rename from app/pkg/proto/im.logic.ext.proto rename to app/pkg/proto/logic.ext.proto index 8a1a89c..32121fd 100644 --- a/app/pkg/proto/im.logic.ext.proto +++ b/app/pkg/proto/logic.ext.proto @@ -1,9 +1,10 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; -import "im.common.ext.proto"; -import "im.connect.ext.proto"; +import "business.ext.proto"; +import "common.ext.proto"; +import "connect.ext.proto"; service LogicExt { // 注册设备 @@ -43,10 +44,18 @@ service LogicExt { rpc AddGroupMembers (AddGroupMembersReq) returns (AddGroupMembersResp); // 更新群组成员信息 rpc UpdateGroupMember (UpdateGroupMemberReq) returns (Empty); - // 添加群组成员 + // 删除群组成员 rpc DeleteGroupMember (DeleteGroupMemberReq) returns (Empty); // 获取群组成员 rpc GetGroupMembers (GetGroupMembersReq) returns (GetGroupMembersResp); + // 设置禁言 + rpc SetGroupBannedMembers (SetGroupMemberBannedReq) returns (SetGroupMemberBannedResp); + // 取消禁言 + rpc SetGroupRemoveBannedMembers (SetGroupMemberRemoveBannedReq) returns (Empty); + // 获取群组禁言成员 + rpc GetGroupBannedMembers (GetGroupBannedMembersReq) returns (GetGroupBannedMembersResp); + // 设置是否加好友 + rpc SetGroupAddFriend (SetGroupAddFriendReq) returns (Empty); } message RegisterDeviceReq { @@ -176,17 +185,29 @@ message GetGroupReq { } message GetGroupResp { Group group = 1; + MemberType member_type = 2; + GroupUserStatusType group_user_status_type = 3; + GroupNotice group_notice = 4; //群公告 +} + +message GroupNotice { + string content = 1; //公告内容 + GroupNoticePublishType publish_type = 2; // 发布方式 + string publish_time = 3; // 发布时间 } + message Group { int64 group_id = 1; // 群组id string name = 2; // 名称 string avatar_url = 3; // 头像 string introduction = 4; // 简介 int32 user_mum = 5; // 用户数 - string extra = 6; // 附加字段 - int64 create_time = 7; // 创建时间 - int64 update_time = 8; // 更新时间 + int32 is_all_member_banned = 6; // 是否全员禁言(1:是 2:否) + int32 is_all_add_friend = 10; // 是否允许加好友(1:是 2:否) + string extra = 7; // 附加字段 + int64 create_time = 8; // 创建时间 + int64 update_time = 9; // 更新时间 } message GetGroupsResp { @@ -203,8 +224,9 @@ message AddGroupMembersResp { enum MemberType { GMT_UNKNOWN = 0; // 未知 - GMT_ADMIN = 1; // 管理员 + GMT_ADMIN = 1; // 群主 GMT_MEMBER = 2; // 成员 + GMT_MANAGE = 3; // 管理员 } message UpdateGroupMemberReq { @@ -222,6 +244,7 @@ message DeleteGroupMemberReq { message GetGroupMembersReq { int64 group_id = 1; + int64 limit = 2; } message GetGroupMembersResp { repeated GroupMember members = 1; @@ -235,4 +258,46 @@ message GroupMember { MemberType member_type = 6; // 成员类型 string remarks = 7; // 备注 string extra = 8; // 群组成员附加字段 -} \ No newline at end of file + int32 status = 9; // 状态 +} + +message SetGroupMemberBannedReq { + int64 group_id = 1; // 群组id + repeated int64 user_ids = 2; // 用户id列表 + AllMemberBannedType is_all_member_banned = 3; // 全员禁言(1:是 2:否) +} + +message SetGroupMemberRemoveBannedReq { + int64 group_id = 1; // 群组id + repeated int64 remove_user_ids = 2; // 解除用户id列表 +} + +enum AllMemberBannedType { + UNKNOWN_All_Member_Banned = 0; // 未知 + YES_All_Member_Banned = 1; // 是-全员禁言 + NOT_All_Member_Banned = 2; // 否-全员禁言 +} + +message SetGroupMemberBannedResp { + AllMemberBannedType is_all_member_banned = 3; // 全员禁言(1:是 2:否) + repeated GroupMember members = 1; //禁言人员列表 +} + +message GetGroupBannedMembersReq { + int64 group_id = 1; +} + +message GetGroupBannedMembersResp { + repeated GroupMember members = 1; +} + +enum AllAddFriendType { + UNKNOWN_All_Add_Friend = 0; // 未知 + YES_All_Add_Friend = 1; // 是-允许加好友 + NOT_All_Add_Friend = 2; // 否-禁止加好友 +} +message SetGroupAddFriendReq { + int64 group_id = 1; // 群组id + AllAddFriendType is_all_add_friend = 2; // 是否允许加好友(1:是 2:否) +} + diff --git a/app/pkg/proto/im.logic.int.proto b/app/pkg/proto/logic.int.proto similarity index 95% rename from app/pkg/proto/im.logic.int.proto rename to app/pkg/proto/logic.int.proto index 3a0dd5d..55c1d27 100644 --- a/app/pkg/proto/im.logic.int.proto +++ b/app/pkg/proto/logic.int.proto @@ -1,10 +1,10 @@ syntax = "proto3"; package pb; -option go_package = "gim/pkg/pb/"; +option go_package = "egg-im/pkg/pb/"; -import "im.common.ext.proto"; -import "im.connect.ext.proto"; -import "im.logic.ext.proto"; +import "common.ext.proto"; +import "connect.ext.proto"; +import "logic.ext.proto"; service LogicInt { // 登录 diff --git a/app/pkg/proto/push.ext.proto b/app/pkg/proto/push.ext.proto new file mode 100644 index 0000000..8ed0307 --- /dev/null +++ b/app/pkg/proto/push.ext.proto @@ -0,0 +1,95 @@ +syntax = "proto3"; +package pb; +option go_package = "egg-im/pkg/pb/"; + +import "logic.ext.proto"; + +enum PushCode { + PC_ADD_DEFAULT = 0; + + PC_ADD_FRIEND = 100; // 添加好友请求 + + PC_AGREE_ADD_FRIEND = 101; // 同意添加好友 + + PC_UPDATE_GROUP = 110; // 更新群组 + + PC_ADD_GROUP_MEMBERS = 120; // 添加群组成员 + + PC_REMOVE_GROUP_MEMBER = 121; // 移除群组成员 + + PC_BANNED_GROUP_MEMBER = 122; // 禁言群组成员 + + PC_REMOVE_BANNED_GROUP_MEMBER = 123; // 取消禁言群组成员 + + PC_UPDATE_GROUP_MEMBER = 124; // 更新群组成员信息 + +} + +// 推送码 PC_ADD_FRIEND = 100 +message AddFriendPush { + int64 friend_id = 1; // 好友id + string nickname = 2; // 昵称 + string avatar_url = 3; // 头像 + string description = 4; // 描述 +} + +// 推送码 PC_AGREE_ADD_FRIEND = 101 +message AgreeAddFriendPush { + int64 friend_id = 1; // 好友id + string nickname = 2; // 昵称 + string avatar_url = 3; // 头像 +} + +// 更新群组 PC_UPDATE_GROUP = 110 +message UpdateGroupPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + string opt_avatar_url = 3; // 操作人头像 + string name = 4; // 群组名称 + string avatar_url = 5; // 群组头像 + string introduction = 6; // 群组简介 + bool isUpdateIntroduction = 7; // 是否更新群组简介 + string extra = 8; // 附加字段 +} + +// 添加群组成员 PC_AGREE_ADD_GROUPS = 120 +message AddGroupMembersPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + repeated GroupMember members = 3; // 群组成员 +} + +// 删除群组成员 PC_REMOVE_GROUP_MEMBER = 121 +message RemoveGroupMemberPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + int64 deleted_user_id = 3; // 被删除的成员id + string deleted_user_name = 4; // 被删除的成员昵称 +} + +// 禁言群组成员 PC_BANNED_GROUP_MEMBER = 122 +message BannedGroupMemberPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + int64 banned_user_id = 3; // 被禁言的成员id + string banned_user_name = 4; // 被禁言的成员昵称 +} + + +// 取消禁言群组成员 PC_REMOVE_BANNED_GROUP_MEMBER = 123 +message RemoveBannedGroupMemberPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + int64 remove_banned_user_id = 3; // 被解禁言的成员id + string remove_banned_user_name = 4; // 被解禁言的成员昵称 +} + +// 修改群组成员身份 PC_UPDATE_GROUP_MEMBER = 124 +message UpdateMemberPush { + int64 opt_id = 1; // 操作人用户id + string opt_name = 2; // 操作人昵称 + int64 update_user_id = 3; // 被修改的成员id + string update_user_name = 4; // 被修改的成员昵称 + int32 update_user_member_type = 5; // 被修改的成员身份类型 +} +