From 0e575a936682c573e9e37e9d0e5a470c86a0491f Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Tue, 8 Mar 2022 18:48:36 +0800 Subject: [PATCH 01/10] keepalive ttl * 3 add user.ex --- internal/api/user/user.go | 2 +- pkg/grpc-etcdv3/getcdv3/register.go | 7 +- pkg/proto/sdk_ws/ws.pb.go | 4940 ++++++++++----------------- pkg/proto/sdk_ws/ws.proto | 32 +- 4 files changed, 1848 insertions(+), 3133 deletions(-) diff --git a/internal/api/user/user.go b/internal/api/user/user.go index 1ed341bf5..4fa1c62dd 100644 --- a/internal/api/user/user.go +++ b/internal/api/user/user.go @@ -45,7 +45,7 @@ func GetUsersInfo(c *gin.Context) { var publicUserInfoList []*open_im_sdk.PublicUserInfo for _, v := range RpcResp.UserInfoList { publicUserInfoList = append(publicUserInfoList, - &open_im_sdk.PublicUserInfo{UserID: v.UserID, Nickname: v.Nickname, FaceURL: v.FaceURL, Gender: v.Gender}) + &open_im_sdk.PublicUserInfo{UserID: v.UserID, Nickname: v.Nickname, FaceURL: v.FaceURL, Gender: v.Gender, Ex: v.Ex}) } resp := api.GetUsersInfoResp{CommResp: api.CommResp{ErrCode: RpcResp.CommonResp.ErrCode, ErrMsg: RpcResp.CommonResp.ErrMsg}, UserInfoList: publicUserInfoList} diff --git a/pkg/grpc-etcdv3/getcdv3/register.go b/pkg/grpc-etcdv3/getcdv3/register.go index cc555f3b4..3230590b6 100644 --- a/pkg/grpc-etcdv3/getcdv3/register.go +++ b/pkg/grpc-etcdv3/getcdv3/register.go @@ -38,6 +38,7 @@ func RegisterEtcd4Unique(schema, etcdAddr, myHost string, myPort int, serviceNam //etcdAddr separated by commas func RegisterEtcd(schema, etcdAddr, myHost string, myPort int, serviceName string, ttl int) error { + ttl = ttl * 3 cli, err := clientv3.New(clientv3.Config{ Endpoints: strings.Split(etcdAddr, ","), DialTimeout: 5 * time.Second}) @@ -72,11 +73,11 @@ func RegisterEtcd(schema, etcdAddr, myHost string, myPort int, serviceName strin go func() { for { select { - case _, ok := <-kresp: + case pv, ok := <-kresp: if ok == true { - //log.Debug("", "KeepAlive kresp ok", v, schema, etcdAddr, myHost, myPort, serviceName, ttl) + log.Debug("", "KeepAlive kresp ok", pv) } else { - //log.Error("", "KeepAlive kresp failed", schema, etcdAddr, myHost, myPort, serviceName, ttl) + log.Error("", "KeepAlive kresp failed", pv) } } } diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index f5d259dac..a8f964b34 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -1,4022 +1,2766 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.27.1 -// protoc v3.15.5 // source: sdk_ws/ws.proto -package server_api_params +package server_api_params // import "./sdk_ws" -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) +import proto "github.com/golang/protobuf/proto" +import fmt "fmt" +import math "math" -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package type GroupInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID,omitempty"` - GroupName string `protobuf:"bytes,2,opt,name=groupName,proto3" json:"groupName,omitempty"` - Notification string `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification,omitempty"` - Introduction string `protobuf:"bytes,4,opt,name=introduction,proto3" json:"introduction,omitempty"` - FaceURL string `protobuf:"bytes,5,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID,proto3" json:"ownerUserID,omitempty"` - CreateTime uint32 `protobuf:"varint,7,opt,name=createTime,proto3" json:"createTime,omitempty"` - MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount,proto3" json:"memberCount,omitempty"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex,omitempty"` - Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status,omitempty"` - CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID,proto3" json:"creatorUserID,omitempty"` - GroupType int32 `protobuf:"varint,12,opt,name=groupType,proto3" json:"groupType,omitempty"` + GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` + GroupName string `protobuf:"bytes,2,opt,name=groupName" json:"groupName,omitempty"` + Notification string `protobuf:"bytes,3,opt,name=notification" json:"notification,omitempty"` + Introduction string `protobuf:"bytes,4,opt,name=introduction" json:"introduction,omitempty"` + FaceURL string `protobuf:"bytes,5,opt,name=faceURL" json:"faceURL,omitempty"` + OwnerUserID string `protobuf:"bytes,6,opt,name=ownerUserID" json:"ownerUserID,omitempty"` + CreateTime uint32 `protobuf:"varint,7,opt,name=createTime" json:"createTime,omitempty"` + MemberCount uint32 `protobuf:"varint,8,opt,name=memberCount" json:"memberCount,omitempty"` + Ex string `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"` + Status int32 `protobuf:"varint,10,opt,name=status" json:"status,omitempty"` + CreatorUserID string `protobuf:"bytes,11,opt,name=creatorUserID" json:"creatorUserID,omitempty"` + GroupType int32 `protobuf:"varint,12,opt,name=groupType" json:"groupType,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupInfo) Reset() { - *x = GroupInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfo) ProtoMessage() {} - -func (x *GroupInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GroupInfo.ProtoReflect.Descriptor instead. +func (m *GroupInfo) Reset() { *m = GroupInfo{} } +func (m *GroupInfo) String() string { return proto.CompactTextString(m) } +func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{0} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{0} +} +func (m *GroupInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupInfo.Unmarshal(m, b) +} +func (m *GroupInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupInfo.Marshal(b, m, deterministic) +} +func (dst *GroupInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupInfo.Merge(dst, src) +} +func (m *GroupInfo) XXX_Size() int { + return xxx_messageInfo_GroupInfo.Size(m) +} +func (m *GroupInfo) XXX_DiscardUnknown() { + xxx_messageInfo_GroupInfo.DiscardUnknown(m) } -func (x *GroupInfo) GetGroupID() string { - if x != nil { - return x.GroupID +var xxx_messageInfo_GroupInfo proto.InternalMessageInfo + +func (m *GroupInfo) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *GroupInfo) GetGroupName() string { - if x != nil { - return x.GroupName +func (m *GroupInfo) GetGroupName() string { + if m != nil { + return m.GroupName } return "" } -func (x *GroupInfo) GetNotification() string { - if x != nil { - return x.Notification +func (m *GroupInfo) GetNotification() string { + if m != nil { + return m.Notification } return "" } -func (x *GroupInfo) GetIntroduction() string { - if x != nil { - return x.Introduction +func (m *GroupInfo) GetIntroduction() string { + if m != nil { + return m.Introduction } return "" } -func (x *GroupInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *GroupInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *GroupInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +func (m *GroupInfo) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *GroupInfo) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *GroupInfo) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *GroupInfo) GetMemberCount() uint32 { - if x != nil { - return x.MemberCount +func (m *GroupInfo) GetMemberCount() uint32 { + if m != nil { + return m.MemberCount } return 0 } -func (x *GroupInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *GroupInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } -func (x *GroupInfo) GetStatus() int32 { - if x != nil { - return x.Status +func (m *GroupInfo) GetStatus() int32 { + if m != nil { + return m.Status } return 0 } -func (x *GroupInfo) GetCreatorUserID() string { - if x != nil { - return x.CreatorUserID +func (m *GroupInfo) GetCreatorUserID() string { + if m != nil { + return m.CreatorUserID } return "" } -func (x *GroupInfo) GetGroupType() int32 { - if x != nil { - return x.GroupType +func (m *GroupInfo) GetGroupType() int32 { + if m != nil { + return m.GroupType } return 0 } type GroupMemberFullInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GroupID string `protobuf:"bytes,1,opt,name=groupID,proto3" json:"groupID,omitempty"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID,omitempty"` - RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel,proto3" json:"roleLevel,omitempty"` - JoinTime int64 `protobuf:"varint,4,opt,name=joinTime,proto3" json:"joinTime,omitempty"` - Nickname string `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname,omitempty"` - FaceURL string `protobuf:"bytes,6,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel,proto3" json:"appMangerLevel,omitempty"` //if >0 - JoinSource int32 `protobuf:"varint,8,opt,name=joinSource,proto3" json:"joinSource,omitempty"` - OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID,proto3" json:"operatorUserID,omitempty"` - Ex string `protobuf:"bytes,10,opt,name=ex,proto3" json:"ex,omitempty"` + GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` + UserID string `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"` + RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel" json:"roleLevel,omitempty"` + JoinTime int64 `protobuf:"varint,4,opt,name=joinTime" json:"joinTime,omitempty"` + Nickname string `protobuf:"bytes,5,opt,name=nickname" json:"nickname,omitempty"` + FaceURL string `protobuf:"bytes,6,opt,name=faceURL" json:"faceURL,omitempty"` + AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"` + JoinSource int32 `protobuf:"varint,8,opt,name=joinSource" json:"joinSource,omitempty"` + OperatorUserID string `protobuf:"bytes,9,opt,name=operatorUserID" json:"operatorUserID,omitempty"` + Ex string `protobuf:"bytes,10,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupMemberFullInfo) Reset() { - *x = GroupMemberFullInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupMemberFullInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupMemberFullInfo) ProtoMessage() {} - -func (x *GroupMemberFullInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 GroupMemberFullInfo.ProtoReflect.Descriptor instead. +func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } +func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } +func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{1} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{1} +} +func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) +} +func (m *GroupMemberFullInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupMemberFullInfo.Marshal(b, m, deterministic) +} +func (dst *GroupMemberFullInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupMemberFullInfo.Merge(dst, src) +} +func (m *GroupMemberFullInfo) XXX_Size() int { + return xxx_messageInfo_GroupMemberFullInfo.Size(m) +} +func (m *GroupMemberFullInfo) XXX_DiscardUnknown() { + xxx_messageInfo_GroupMemberFullInfo.DiscardUnknown(m) } -func (x *GroupMemberFullInfo) GetGroupID() string { - if x != nil { - return x.GroupID +var xxx_messageInfo_GroupMemberFullInfo proto.InternalMessageInfo + +func (m *GroupMemberFullInfo) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *GroupMemberFullInfo) GetUserID() string { - if x != nil { - return x.UserID +func (m *GroupMemberFullInfo) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *GroupMemberFullInfo) GetRoleLevel() int32 { - if x != nil { - return x.RoleLevel +func (m *GroupMemberFullInfo) GetRoleLevel() int32 { + if m != nil { + return m.RoleLevel } return 0 } -func (x *GroupMemberFullInfo) GetJoinTime() int64 { - if x != nil { - return x.JoinTime +func (m *GroupMemberFullInfo) GetJoinTime() int64 { + if m != nil { + return m.JoinTime } return 0 } -func (x *GroupMemberFullInfo) GetNickname() string { - if x != nil { - return x.Nickname +func (m *GroupMemberFullInfo) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *GroupMemberFullInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *GroupMemberFullInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *GroupMemberFullInfo) GetAppMangerLevel() int32 { - if x != nil { - return x.AppMangerLevel +func (m *GroupMemberFullInfo) GetAppMangerLevel() int32 { + if m != nil { + return m.AppMangerLevel } return 0 } -func (x *GroupMemberFullInfo) GetJoinSource() int32 { - if x != nil { - return x.JoinSource +func (m *GroupMemberFullInfo) GetJoinSource() int32 { + if m != nil { + return m.JoinSource } return 0 } -func (x *GroupMemberFullInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID +func (m *GroupMemberFullInfo) GetOperatorUserID() string { + if m != nil { + return m.OperatorUserID } return "" } -func (x *GroupMemberFullInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *GroupMemberFullInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } type PublicUserInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - Gender int32 `protobuf:"varint,4,opt,name=gender,proto3" json:"gender,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + Nickname string `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL" json:"faceURL,omitempty"` + Gender int32 `protobuf:"varint,4,opt,name=gender" json:"gender,omitempty"` + Ex string `protobuf:"bytes,5,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *PublicUserInfo) Reset() { - *x = PublicUserInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PublicUserInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PublicUserInfo) ProtoMessage() {} - -func (x *PublicUserInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 PublicUserInfo.ProtoReflect.Descriptor instead. +func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } +func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } +func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{2} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{2} +} +func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) +} +func (m *PublicUserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PublicUserInfo.Marshal(b, m, deterministic) +} +func (dst *PublicUserInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_PublicUserInfo.Merge(dst, src) +} +func (m *PublicUserInfo) XXX_Size() int { + return xxx_messageInfo_PublicUserInfo.Size(m) +} +func (m *PublicUserInfo) XXX_DiscardUnknown() { + xxx_messageInfo_PublicUserInfo.DiscardUnknown(m) } -func (x *PublicUserInfo) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_PublicUserInfo proto.InternalMessageInfo + +func (m *PublicUserInfo) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *PublicUserInfo) GetNickname() string { - if x != nil { - return x.Nickname +func (m *PublicUserInfo) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *PublicUserInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *PublicUserInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *PublicUserInfo) GetGender() int32 { - if x != nil { - return x.Gender +func (m *PublicUserInfo) GetGender() int32 { + if m != nil { + return m.Gender } return 0 } +func (m *PublicUserInfo) GetEx() string { + if m != nil { + return m.Ex + } + return "" +} + type UserInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` - Nickname string `protobuf:"bytes,2,opt,name=nickname,proto3" json:"nickname,omitempty"` - FaceURL string `protobuf:"bytes,3,opt,name=faceURL,proto3" json:"faceURL,omitempty"` - Gender int32 `protobuf:"varint,4,opt,name=gender,proto3" json:"gender,omitempty"` - PhoneNumber string `protobuf:"bytes,5,opt,name=phoneNumber,proto3" json:"phoneNumber,omitempty"` - Birth uint32 `protobuf:"varint,6,opt,name=birth,proto3" json:"birth,omitempty"` - Email string `protobuf:"bytes,7,opt,name=email,proto3" json:"email,omitempty"` - Ex string `protobuf:"bytes,8,opt,name=ex,proto3" json:"ex,omitempty"` - CreateTime uint32 `protobuf:"varint,9,opt,name=createTime,proto3" json:"createTime,omitempty"` - AppMangerLevel int32 `protobuf:"varint,10,opt,name=appMangerLevel,proto3" json:"appMangerLevel,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + Nickname string `protobuf:"bytes,2,opt,name=nickname" json:"nickname,omitempty"` + FaceURL string `protobuf:"bytes,3,opt,name=faceURL" json:"faceURL,omitempty"` + Gender int32 `protobuf:"varint,4,opt,name=gender" json:"gender,omitempty"` + PhoneNumber string `protobuf:"bytes,5,opt,name=phoneNumber" json:"phoneNumber,omitempty"` + Birth uint32 `protobuf:"varint,6,opt,name=birth" json:"birth,omitempty"` + Email string `protobuf:"bytes,7,opt,name=email" json:"email,omitempty"` + Ex string `protobuf:"bytes,8,opt,name=ex" json:"ex,omitempty"` + CreateTime uint32 `protobuf:"varint,9,opt,name=createTime" json:"createTime,omitempty"` + AppMangerLevel int32 `protobuf:"varint,10,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UserInfo) Reset() { - *x = UserInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserInfo) ProtoMessage() {} - -func (x *UserInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 UserInfo.ProtoReflect.Descriptor instead. +func (m *UserInfo) Reset() { *m = UserInfo{} } +func (m *UserInfo) String() string { return proto.CompactTextString(m) } +func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{3} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{3} +} +func (m *UserInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UserInfo.Unmarshal(m, b) +} +func (m *UserInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UserInfo.Marshal(b, m, deterministic) +} +func (dst *UserInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_UserInfo.Merge(dst, src) +} +func (m *UserInfo) XXX_Size() int { + return xxx_messageInfo_UserInfo.Size(m) +} +func (m *UserInfo) XXX_DiscardUnknown() { + xxx_messageInfo_UserInfo.DiscardUnknown(m) } -func (x *UserInfo) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_UserInfo proto.InternalMessageInfo + +func (m *UserInfo) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *UserInfo) GetNickname() string { - if x != nil { - return x.Nickname +func (m *UserInfo) GetNickname() string { + if m != nil { + return m.Nickname } return "" } -func (x *UserInfo) GetFaceURL() string { - if x != nil { - return x.FaceURL +func (m *UserInfo) GetFaceURL() string { + if m != nil { + return m.FaceURL } return "" } -func (x *UserInfo) GetGender() int32 { - if x != nil { - return x.Gender +func (m *UserInfo) GetGender() int32 { + if m != nil { + return m.Gender } return 0 } -func (x *UserInfo) GetPhoneNumber() string { - if x != nil { - return x.PhoneNumber +func (m *UserInfo) GetPhoneNumber() string { + if m != nil { + return m.PhoneNumber } return "" } -func (x *UserInfo) GetBirth() uint32 { - if x != nil { - return x.Birth +func (m *UserInfo) GetBirth() uint32 { + if m != nil { + return m.Birth } return 0 } -func (x *UserInfo) GetEmail() string { - if x != nil { - return x.Email +func (m *UserInfo) GetEmail() string { + if m != nil { + return m.Email } return "" } -func (x *UserInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *UserInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } -func (x *UserInfo) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *UserInfo) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *UserInfo) GetAppMangerLevel() int32 { - if x != nil { - return x.AppMangerLevel +func (m *UserInfo) GetAppMangerLevel() int32 { + if m != nil { + return m.AppMangerLevel } return 0 } type FriendInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID,omitempty"` - Remark string `protobuf:"bytes,2,opt,name=remark,proto3" json:"remark,omitempty"` - CreateTime uint32 `protobuf:"varint,3,opt,name=createTime,proto3" json:"createTime,omitempty"` - FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser,proto3" json:"friendUser,omitempty"` - AddSource int32 `protobuf:"varint,5,opt,name=addSource,proto3" json:"addSource,omitempty"` - OperatorUserID string `protobuf:"bytes,6,opt,name=operatorUserID,proto3" json:"operatorUserID,omitempty"` - Ex string `protobuf:"bytes,7,opt,name=ex,proto3" json:"ex,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID" json:"ownerUserID,omitempty"` + Remark string `protobuf:"bytes,2,opt,name=remark" json:"remark,omitempty"` + CreateTime uint32 `protobuf:"varint,3,opt,name=createTime" json:"createTime,omitempty"` + FriendUser *UserInfo `protobuf:"bytes,4,opt,name=friendUser" json:"friendUser,omitempty"` + AddSource int32 `protobuf:"varint,5,opt,name=addSource" json:"addSource,omitempty"` + OperatorUserID string `protobuf:"bytes,6,opt,name=operatorUserID" json:"operatorUserID,omitempty"` + Ex string `protobuf:"bytes,7,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendInfo) Reset() { - *x = FriendInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendInfo) ProtoMessage() {} - -func (x *FriendInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 FriendInfo.ProtoReflect.Descriptor instead. +func (m *FriendInfo) Reset() { *m = FriendInfo{} } +func (m *FriendInfo) String() string { return proto.CompactTextString(m) } +func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{4} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{4} +} +func (m *FriendInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendInfo.Unmarshal(m, b) +} +func (m *FriendInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendInfo.Marshal(b, m, deterministic) +} +func (dst *FriendInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendInfo.Merge(dst, src) +} +func (m *FriendInfo) XXX_Size() int { + return xxx_messageInfo_FriendInfo.Size(m) +} +func (m *FriendInfo) XXX_DiscardUnknown() { + xxx_messageInfo_FriendInfo.DiscardUnknown(m) } -func (x *FriendInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +var xxx_messageInfo_FriendInfo proto.InternalMessageInfo + +func (m *FriendInfo) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *FriendInfo) GetRemark() string { - if x != nil { - return x.Remark +func (m *FriendInfo) GetRemark() string { + if m != nil { + return m.Remark } return "" } -func (x *FriendInfo) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *FriendInfo) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *FriendInfo) GetFriendUser() *UserInfo { - if x != nil { - return x.FriendUser +func (m *FriendInfo) GetFriendUser() *UserInfo { + if m != nil { + return m.FriendUser } return nil } -func (x *FriendInfo) GetAddSource() int32 { - if x != nil { - return x.AddSource +func (m *FriendInfo) GetAddSource() int32 { + if m != nil { + return m.AddSource } return 0 } -func (x *FriendInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID +func (m *FriendInfo) GetOperatorUserID() string { + if m != nil { + return m.OperatorUserID } return "" } -func (x *FriendInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *FriendInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } type BlackInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID,proto3" json:"ownerUserID,omitempty"` - CreateTime uint32 `protobuf:"varint,2,opt,name=createTime,proto3" json:"createTime,omitempty"` - BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo,proto3" json:"blackUserInfo,omitempty"` - AddSource int32 `protobuf:"varint,4,opt,name=addSource,proto3" json:"addSource,omitempty"` - OperatorUserID string `protobuf:"bytes,5,opt,name=operatorUserID,proto3" json:"operatorUserID,omitempty"` - Ex string `protobuf:"bytes,6,opt,name=ex,proto3" json:"ex,omitempty"` + OwnerUserID string `protobuf:"bytes,1,opt,name=ownerUserID" json:"ownerUserID,omitempty"` + CreateTime uint32 `protobuf:"varint,2,opt,name=createTime" json:"createTime,omitempty"` + BlackUserInfo *PublicUserInfo `protobuf:"bytes,3,opt,name=blackUserInfo" json:"blackUserInfo,omitempty"` + AddSource int32 `protobuf:"varint,4,opt,name=addSource" json:"addSource,omitempty"` + OperatorUserID string `protobuf:"bytes,5,opt,name=operatorUserID" json:"operatorUserID,omitempty"` + Ex string `protobuf:"bytes,6,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BlackInfo) Reset() { - *x = BlackInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackInfo) ProtoMessage() {} - -func (x *BlackInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 BlackInfo.ProtoReflect.Descriptor instead. +func (m *BlackInfo) Reset() { *m = BlackInfo{} } +func (m *BlackInfo) String() string { return proto.CompactTextString(m) } +func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{5} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{5} +} +func (m *BlackInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlackInfo.Unmarshal(m, b) +} +func (m *BlackInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlackInfo.Marshal(b, m, deterministic) +} +func (dst *BlackInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlackInfo.Merge(dst, src) +} +func (m *BlackInfo) XXX_Size() int { + return xxx_messageInfo_BlackInfo.Size(m) +} +func (m *BlackInfo) XXX_DiscardUnknown() { + xxx_messageInfo_BlackInfo.DiscardUnknown(m) } -func (x *BlackInfo) GetOwnerUserID() string { - if x != nil { - return x.OwnerUserID +var xxx_messageInfo_BlackInfo proto.InternalMessageInfo + +func (m *BlackInfo) GetOwnerUserID() string { + if m != nil { + return m.OwnerUserID } return "" } -func (x *BlackInfo) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *BlackInfo) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *BlackInfo) GetBlackUserInfo() *PublicUserInfo { - if x != nil { - return x.BlackUserInfo +func (m *BlackInfo) GetBlackUserInfo() *PublicUserInfo { + if m != nil { + return m.BlackUserInfo } return nil } -func (x *BlackInfo) GetAddSource() int32 { - if x != nil { - return x.AddSource +func (m *BlackInfo) GetAddSource() int32 { + if m != nil { + return m.AddSource } return 0 } -func (x *BlackInfo) GetOperatorUserID() string { - if x != nil { - return x.OperatorUserID +func (m *BlackInfo) GetOperatorUserID() string { + if m != nil { + return m.OperatorUserID } return "" } -func (x *BlackInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *BlackInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } type GroupRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo,proto3" json:"userInfo,omitempty"` - GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo,proto3" json:"groupInfo,omitempty"` - HandleResult int32 `protobuf:"varint,3,opt,name=handleResult,proto3" json:"handleResult,omitempty"` - ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg,proto3" json:"reqMsg,omitempty"` - HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` - ReqTime uint32 `protobuf:"varint,6,opt,name=reqTime,proto3" json:"reqTime,omitempty"` - HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID,proto3" json:"handleUserID,omitempty"` - HandleTime uint32 `protobuf:"varint,8,opt,name=handleTime,proto3" json:"handleTime,omitempty"` - Ex string `protobuf:"bytes,9,opt,name=ex,proto3" json:"ex,omitempty"` + UserInfo *PublicUserInfo `protobuf:"bytes,1,opt,name=userInfo" json:"userInfo,omitempty"` + GroupInfo *GroupInfo `protobuf:"bytes,2,opt,name=groupInfo" json:"groupInfo,omitempty"` + HandleResult int32 `protobuf:"varint,3,opt,name=handleResult" json:"handleResult,omitempty"` + ReqMsg string `protobuf:"bytes,4,opt,name=reqMsg" json:"reqMsg,omitempty"` + HandleMsg string `protobuf:"bytes,5,opt,name=handleMsg" json:"handleMsg,omitempty"` + ReqTime uint32 `protobuf:"varint,6,opt,name=reqTime" json:"reqTime,omitempty"` + HandleUserID string `protobuf:"bytes,7,opt,name=handleUserID" json:"handleUserID,omitempty"` + HandleTime uint32 `protobuf:"varint,8,opt,name=handleTime" json:"handleTime,omitempty"` + Ex string `protobuf:"bytes,9,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupRequest) Reset() { - *x = GroupRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupRequest) ProtoMessage() {} - -func (x *GroupRequest) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 GroupRequest.ProtoReflect.Descriptor instead. +func (m *GroupRequest) Reset() { *m = GroupRequest{} } +func (m *GroupRequest) String() string { return proto.CompactTextString(m) } +func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{6} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{6} +} +func (m *GroupRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupRequest.Unmarshal(m, b) +} +func (m *GroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupRequest.Marshal(b, m, deterministic) +} +func (dst *GroupRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupRequest.Merge(dst, src) +} +func (m *GroupRequest) XXX_Size() int { + return xxx_messageInfo_GroupRequest.Size(m) +} +func (m *GroupRequest) XXX_DiscardUnknown() { + xxx_messageInfo_GroupRequest.DiscardUnknown(m) } -func (x *GroupRequest) GetUserInfo() *PublicUserInfo { - if x != nil { - return x.UserInfo +var xxx_messageInfo_GroupRequest proto.InternalMessageInfo + +func (m *GroupRequest) GetUserInfo() *PublicUserInfo { + if m != nil { + return m.UserInfo } return nil } -func (x *GroupRequest) GetGroupInfo() *GroupInfo { - if x != nil { - return x.GroupInfo +func (m *GroupRequest) GetGroupInfo() *GroupInfo { + if m != nil { + return m.GroupInfo } return nil } -func (x *GroupRequest) GetHandleResult() int32 { - if x != nil { - return x.HandleResult +func (m *GroupRequest) GetHandleResult() int32 { + if m != nil { + return m.HandleResult } return 0 } -func (x *GroupRequest) GetReqMsg() string { - if x != nil { - return x.ReqMsg +func (m *GroupRequest) GetReqMsg() string { + if m != nil { + return m.ReqMsg } return "" } -func (x *GroupRequest) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *GroupRequest) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } -func (x *GroupRequest) GetReqTime() uint32 { - if x != nil { - return x.ReqTime +func (m *GroupRequest) GetReqTime() uint32 { + if m != nil { + return m.ReqTime } return 0 } -func (x *GroupRequest) GetHandleUserID() string { - if x != nil { - return x.HandleUserID +func (m *GroupRequest) GetHandleUserID() string { + if m != nil { + return m.HandleUserID } return "" } -func (x *GroupRequest) GetHandleTime() uint32 { - if x != nil { - return x.HandleTime +func (m *GroupRequest) GetHandleTime() uint32 { + if m != nil { + return m.HandleTime } return 0 } -func (x *GroupRequest) GetEx() string { - if x != nil { - return x.Ex +func (m *GroupRequest) GetEx() string { + if m != nil { + return m.Ex } return "" } type FriendRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID,omitempty"` - FromNickname string `protobuf:"bytes,2,opt,name=fromNickname,proto3" json:"fromNickname,omitempty"` - FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL,proto3" json:"fromFaceURL,omitempty"` - FromGender int32 `protobuf:"varint,4,opt,name=fromGender,proto3" json:"fromGender,omitempty"` - ToUserID string `protobuf:"bytes,5,opt,name=toUserID,proto3" json:"toUserID,omitempty"` - ToNickname string `protobuf:"bytes,6,opt,name=toNickname,proto3" json:"toNickname,omitempty"` - ToFaceURL string `protobuf:"bytes,7,opt,name=toFaceURL,proto3" json:"toFaceURL,omitempty"` - ToGender int32 `protobuf:"varint,8,opt,name=toGender,proto3" json:"toGender,omitempty"` - HandleResult int32 `protobuf:"varint,9,opt,name=handleResult,proto3" json:"handleResult,omitempty"` - ReqMsg string `protobuf:"bytes,10,opt,name=reqMsg,proto3" json:"reqMsg,omitempty"` - CreateTime uint32 `protobuf:"varint,11,opt,name=createTime,proto3" json:"createTime,omitempty"` - HandlerUserID string `protobuf:"bytes,12,opt,name=handlerUserID,proto3" json:"handlerUserID,omitempty"` - HandleMsg string `protobuf:"bytes,13,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` - HandleTime uint32 `protobuf:"varint,14,opt,name=handleTime,proto3" json:"handleTime,omitempty"` - Ex string `protobuf:"bytes,15,opt,name=ex,proto3" json:"ex,omitempty"` + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID" json:"fromUserID,omitempty"` + FromNickname string `protobuf:"bytes,2,opt,name=fromNickname" json:"fromNickname,omitempty"` + FromFaceURL string `protobuf:"bytes,3,opt,name=fromFaceURL" json:"fromFaceURL,omitempty"` + FromGender int32 `protobuf:"varint,4,opt,name=fromGender" json:"fromGender,omitempty"` + ToUserID string `protobuf:"bytes,5,opt,name=toUserID" json:"toUserID,omitempty"` + ToNickname string `protobuf:"bytes,6,opt,name=toNickname" json:"toNickname,omitempty"` + ToFaceURL string `protobuf:"bytes,7,opt,name=toFaceURL" json:"toFaceURL,omitempty"` + ToGender int32 `protobuf:"varint,8,opt,name=toGender" json:"toGender,omitempty"` + HandleResult int32 `protobuf:"varint,9,opt,name=handleResult" json:"handleResult,omitempty"` + ReqMsg string `protobuf:"bytes,10,opt,name=reqMsg" json:"reqMsg,omitempty"` + CreateTime uint32 `protobuf:"varint,11,opt,name=createTime" json:"createTime,omitempty"` + HandlerUserID string `protobuf:"bytes,12,opt,name=handlerUserID" json:"handlerUserID,omitempty"` + HandleMsg string `protobuf:"bytes,13,opt,name=handleMsg" json:"handleMsg,omitempty"` + HandleTime uint32 `protobuf:"varint,14,opt,name=handleTime" json:"handleTime,omitempty"` + Ex string `protobuf:"bytes,15,opt,name=ex" json:"ex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendRequest) Reset() { - *x = FriendRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendRequest) ProtoMessage() {} - -func (x *FriendRequest) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 FriendRequest.ProtoReflect.Descriptor instead. +func (m *FriendRequest) Reset() { *m = FriendRequest{} } +func (m *FriendRequest) String() string { return proto.CompactTextString(m) } +func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{7} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{7} +} +func (m *FriendRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendRequest.Unmarshal(m, b) +} +func (m *FriendRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendRequest.Marshal(b, m, deterministic) +} +func (dst *FriendRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendRequest.Merge(dst, src) +} +func (m *FriendRequest) XXX_Size() int { + return xxx_messageInfo_FriendRequest.Size(m) +} +func (m *FriendRequest) XXX_DiscardUnknown() { + xxx_messageInfo_FriendRequest.DiscardUnknown(m) } -func (x *FriendRequest) GetFromUserID() string { - if x != nil { - return x.FromUserID +var xxx_messageInfo_FriendRequest proto.InternalMessageInfo + +func (m *FriendRequest) GetFromUserID() string { + if m != nil { + return m.FromUserID } return "" } -func (x *FriendRequest) GetFromNickname() string { - if x != nil { - return x.FromNickname +func (m *FriendRequest) GetFromNickname() string { + if m != nil { + return m.FromNickname } return "" } -func (x *FriendRequest) GetFromFaceURL() string { - if x != nil { - return x.FromFaceURL +func (m *FriendRequest) GetFromFaceURL() string { + if m != nil { + return m.FromFaceURL } return "" } -func (x *FriendRequest) GetFromGender() int32 { - if x != nil { - return x.FromGender +func (m *FriendRequest) GetFromGender() int32 { + if m != nil { + return m.FromGender } return 0 } -func (x *FriendRequest) GetToUserID() string { - if x != nil { - return x.ToUserID +func (m *FriendRequest) GetToUserID() string { + if m != nil { + return m.ToUserID } return "" } -func (x *FriendRequest) GetToNickname() string { - if x != nil { - return x.ToNickname +func (m *FriendRequest) GetToNickname() string { + if m != nil { + return m.ToNickname } return "" } -func (x *FriendRequest) GetToFaceURL() string { - if x != nil { - return x.ToFaceURL +func (m *FriendRequest) GetToFaceURL() string { + if m != nil { + return m.ToFaceURL } return "" } -func (x *FriendRequest) GetToGender() int32 { - if x != nil { - return x.ToGender +func (m *FriendRequest) GetToGender() int32 { + if m != nil { + return m.ToGender } return 0 } -func (x *FriendRequest) GetHandleResult() int32 { - if x != nil { - return x.HandleResult +func (m *FriendRequest) GetHandleResult() int32 { + if m != nil { + return m.HandleResult } return 0 } -func (x *FriendRequest) GetReqMsg() string { - if x != nil { - return x.ReqMsg +func (m *FriendRequest) GetReqMsg() string { + if m != nil { + return m.ReqMsg } return "" } -func (x *FriendRequest) GetCreateTime() uint32 { - if x != nil { - return x.CreateTime +func (m *FriendRequest) GetCreateTime() uint32 { + if m != nil { + return m.CreateTime } return 0 } -func (x *FriendRequest) GetHandlerUserID() string { - if x != nil { - return x.HandlerUserID +func (m *FriendRequest) GetHandlerUserID() string { + if m != nil { + return m.HandlerUserID } return "" } -func (x *FriendRequest) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *FriendRequest) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } -func (x *FriendRequest) GetHandleTime() uint32 { - if x != nil { - return x.HandleTime +func (m *FriendRequest) GetHandleTime() uint32 { + if m != nil { + return m.HandleTime } return 0 } -func (x *FriendRequest) GetEx() string { - if x != nil { - return x.Ex +func (m *FriendRequest) GetEx() string { + if m != nil { + return m.Ex } return "" } type PullMessageBySeqListResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ErrCode int32 `protobuf:"varint,1,opt,name=errCode,proto3" json:"errCode,omitempty"` - ErrMsg string `protobuf:"bytes,2,opt,name=errMsg,proto3" json:"errMsg,omitempty"` - List []*MsgData `protobuf:"bytes,3,rep,name=list,proto3" json:"list,omitempty"` + ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"` + ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"` + List []*MsgData `protobuf:"bytes,3,rep,name=list" json:"list,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *PullMessageBySeqListResp) Reset() { - *x = PullMessageBySeqListResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullMessageBySeqListResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullMessageBySeqListResp) ProtoMessage() {} - -func (x *PullMessageBySeqListResp) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PullMessageBySeqListResp.ProtoReflect.Descriptor instead. +func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListResp{} } +func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } +func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{8} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{8} +} +func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) +} +func (m *PullMessageBySeqListResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PullMessageBySeqListResp.Marshal(b, m, deterministic) +} +func (dst *PullMessageBySeqListResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_PullMessageBySeqListResp.Merge(dst, src) +} +func (m *PullMessageBySeqListResp) XXX_Size() int { + return xxx_messageInfo_PullMessageBySeqListResp.Size(m) +} +func (m *PullMessageBySeqListResp) XXX_DiscardUnknown() { + xxx_messageInfo_PullMessageBySeqListResp.DiscardUnknown(m) } -func (x *PullMessageBySeqListResp) GetErrCode() int32 { - if x != nil { - return x.ErrCode +var xxx_messageInfo_PullMessageBySeqListResp proto.InternalMessageInfo + +func (m *PullMessageBySeqListResp) GetErrCode() int32 { + if m != nil { + return m.ErrCode } return 0 } -func (x *PullMessageBySeqListResp) GetErrMsg() string { - if x != nil { - return x.ErrMsg +func (m *PullMessageBySeqListResp) GetErrMsg() string { + if m != nil { + return m.ErrMsg } return "" } -func (x *PullMessageBySeqListResp) GetList() []*MsgData { - if x != nil { - return x.List +func (m *PullMessageBySeqListResp) GetList() []*MsgData { + if m != nil { + return m.List } return nil } type PullMessageBySeqListReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` - OperationID string `protobuf:"bytes,2,opt,name=operationID,proto3" json:"operationID,omitempty"` - SeqList []uint32 `protobuf:"varint,3,rep,packed,name=seqList,proto3" json:"seqList,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + OperationID string `protobuf:"bytes,2,opt,name=operationID" json:"operationID,omitempty"` + SeqList []uint32 `protobuf:"varint,3,rep,packed,name=seqList" json:"seqList,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *PullMessageBySeqListReq) Reset() { - *x = PullMessageBySeqListReq{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullMessageBySeqListReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullMessageBySeqListReq) ProtoMessage() {} - -func (x *PullMessageBySeqListReq) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PullMessageBySeqListReq.ProtoReflect.Descriptor instead. +func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq{} } +func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } +func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{9} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{9} +} +func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) +} +func (m *PullMessageBySeqListReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PullMessageBySeqListReq.Marshal(b, m, deterministic) +} +func (dst *PullMessageBySeqListReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_PullMessageBySeqListReq.Merge(dst, src) +} +func (m *PullMessageBySeqListReq) XXX_Size() int { + return xxx_messageInfo_PullMessageBySeqListReq.Size(m) +} +func (m *PullMessageBySeqListReq) XXX_DiscardUnknown() { + xxx_messageInfo_PullMessageBySeqListReq.DiscardUnknown(m) } -func (x *PullMessageBySeqListReq) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_PullMessageBySeqListReq proto.InternalMessageInfo + +func (m *PullMessageBySeqListReq) GetUserID() string { + if m != nil { + return m.UserID } return "" } -func (x *PullMessageBySeqListReq) GetOperationID() string { - if x != nil { - return x.OperationID +func (m *PullMessageBySeqListReq) GetOperationID() string { + if m != nil { + return m.OperationID } return "" } -func (x *PullMessageBySeqListReq) GetSeqList() []uint32 { - if x != nil { - return x.SeqList +func (m *PullMessageBySeqListReq) GetSeqList() []uint32 { + if m != nil { + return m.SeqList } return nil } type GetMaxAndMinSeqReq struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetMaxAndMinSeqReq) Reset() { - *x = GetMaxAndMinSeqReq{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxAndMinSeqReq) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxAndMinSeqReq) ProtoMessage() {} - -func (x *GetMaxAndMinSeqReq) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetMaxAndMinSeqReq.ProtoReflect.Descriptor instead. +func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } +func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } +func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{10} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{10} } +func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) +} +func (m *GetMaxAndMinSeqReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetMaxAndMinSeqReq.Marshal(b, m, deterministic) +} +func (dst *GetMaxAndMinSeqReq) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMaxAndMinSeqReq.Merge(dst, src) +} +func (m *GetMaxAndMinSeqReq) XXX_Size() int { + return xxx_messageInfo_GetMaxAndMinSeqReq.Size(m) +} +func (m *GetMaxAndMinSeqReq) XXX_DiscardUnknown() { + xxx_messageInfo_GetMaxAndMinSeqReq.DiscardUnknown(m) +} + +var xxx_messageInfo_GetMaxAndMinSeqReq proto.InternalMessageInfo type GetMaxAndMinSeqResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MaxSeq uint32 `protobuf:"varint,1,opt,name=maxSeq,proto3" json:"maxSeq,omitempty"` - MinSeq uint32 `protobuf:"varint,2,opt,name=minSeq,proto3" json:"minSeq,omitempty"` + MaxSeq uint32 `protobuf:"varint,1,opt,name=maxSeq" json:"maxSeq,omitempty"` + MinSeq uint32 `protobuf:"varint,2,opt,name=minSeq" json:"minSeq,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GetMaxAndMinSeqResp) Reset() { - *x = GetMaxAndMinSeqResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetMaxAndMinSeqResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetMaxAndMinSeqResp) ProtoMessage() {} - -func (x *GetMaxAndMinSeqResp) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetMaxAndMinSeqResp.ProtoReflect.Descriptor instead. +func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } +func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } +func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{11} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{11} +} +func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) +} +func (m *GetMaxAndMinSeqResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GetMaxAndMinSeqResp.Marshal(b, m, deterministic) +} +func (dst *GetMaxAndMinSeqResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_GetMaxAndMinSeqResp.Merge(dst, src) +} +func (m *GetMaxAndMinSeqResp) XXX_Size() int { + return xxx_messageInfo_GetMaxAndMinSeqResp.Size(m) +} +func (m *GetMaxAndMinSeqResp) XXX_DiscardUnknown() { + xxx_messageInfo_GetMaxAndMinSeqResp.DiscardUnknown(m) } -func (x *GetMaxAndMinSeqResp) GetMaxSeq() uint32 { - if x != nil { - return x.MaxSeq +var xxx_messageInfo_GetMaxAndMinSeqResp proto.InternalMessageInfo + +func (m *GetMaxAndMinSeqResp) GetMaxSeq() uint32 { + if m != nil { + return m.MaxSeq } return 0 } -func (x *GetMaxAndMinSeqResp) GetMinSeq() uint32 { - if x != nil { - return x.MinSeq +func (m *GetMaxAndMinSeqResp) GetMinSeq() uint32 { + if m != nil { + return m.MinSeq } return 0 } type UserSendMsgResp struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID,proto3" json:"serverMsgID,omitempty"` - ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID,proto3" json:"clientMsgID,omitempty"` - SendTime int64 `protobuf:"varint,3,opt,name=sendTime,proto3" json:"sendTime,omitempty"` + ServerMsgID string `protobuf:"bytes,1,opt,name=serverMsgID" json:"serverMsgID,omitempty"` + ClientMsgID string `protobuf:"bytes,2,opt,name=clientMsgID" json:"clientMsgID,omitempty"` + SendTime int64 `protobuf:"varint,3,opt,name=sendTime" json:"sendTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UserSendMsgResp) Reset() { - *x = UserSendMsgResp{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserSendMsgResp) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserSendMsgResp) ProtoMessage() {} - -func (x *UserSendMsgResp) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UserSendMsgResp.ProtoReflect.Descriptor instead. +func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } +func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } +func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{12} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{12} +} +func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) +} +func (m *UserSendMsgResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UserSendMsgResp.Marshal(b, m, deterministic) +} +func (dst *UserSendMsgResp) XXX_Merge(src proto.Message) { + xxx_messageInfo_UserSendMsgResp.Merge(dst, src) +} +func (m *UserSendMsgResp) XXX_Size() int { + return xxx_messageInfo_UserSendMsgResp.Size(m) +} +func (m *UserSendMsgResp) XXX_DiscardUnknown() { + xxx_messageInfo_UserSendMsgResp.DiscardUnknown(m) } -func (x *UserSendMsgResp) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID +var xxx_messageInfo_UserSendMsgResp proto.InternalMessageInfo + +func (m *UserSendMsgResp) GetServerMsgID() string { + if m != nil { + return m.ServerMsgID } return "" } -func (x *UserSendMsgResp) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID +func (m *UserSendMsgResp) GetClientMsgID() string { + if m != nil { + return m.ClientMsgID } return "" } -func (x *UserSendMsgResp) GetSendTime() int64 { - if x != nil { - return x.SendTime +func (m *UserSendMsgResp) GetSendTime() int64 { + if m != nil { + return m.SendTime } return 0 } type MsgData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SendID string `protobuf:"bytes,1,opt,name=sendID,proto3" json:"sendID,omitempty"` - RecvID string `protobuf:"bytes,2,opt,name=recvID,proto3" json:"recvID,omitempty"` - GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID,omitempty"` - ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID,proto3" json:"clientMsgID,omitempty"` - ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID,proto3" json:"serverMsgID,omitempty"` - SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID,proto3" json:"senderPlatformID,omitempty"` - SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname,proto3" json:"senderNickname,omitempty"` - SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL,proto3" json:"senderFaceURL,omitempty"` - SessionType int32 `protobuf:"varint,9,opt,name=sessionType,proto3" json:"sessionType,omitempty"` - MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom,proto3" json:"msgFrom,omitempty"` - ContentType int32 `protobuf:"varint,11,opt,name=contentType,proto3" json:"contentType,omitempty"` - Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content,omitempty"` - Seq uint32 `protobuf:"varint,14,opt,name=seq,proto3" json:"seq,omitempty"` - SendTime int64 `protobuf:"varint,15,opt,name=sendTime,proto3" json:"sendTime,omitempty"` - CreateTime int64 `protobuf:"varint,16,opt,name=createTime,proto3" json:"createTime,omitempty"` - Status int32 `protobuf:"varint,17,opt,name=status,proto3" json:"status,omitempty"` - Options map[string]bool `protobuf:"bytes,18,rep,name=options,proto3" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,19,opt,name=offlinePushInfo,proto3" json:"offlinePushInfo,omitempty"` + SendID string `protobuf:"bytes,1,opt,name=sendID" json:"sendID,omitempty"` + RecvID string `protobuf:"bytes,2,opt,name=recvID" json:"recvID,omitempty"` + GroupID string `protobuf:"bytes,3,opt,name=groupID" json:"groupID,omitempty"` + ClientMsgID string `protobuf:"bytes,4,opt,name=clientMsgID" json:"clientMsgID,omitempty"` + ServerMsgID string `protobuf:"bytes,5,opt,name=serverMsgID" json:"serverMsgID,omitempty"` + SenderPlatformID int32 `protobuf:"varint,6,opt,name=senderPlatformID" json:"senderPlatformID,omitempty"` + SenderNickname string `protobuf:"bytes,7,opt,name=senderNickname" json:"senderNickname,omitempty"` + SenderFaceURL string `protobuf:"bytes,8,opt,name=senderFaceURL" json:"senderFaceURL,omitempty"` + SessionType int32 `protobuf:"varint,9,opt,name=sessionType" json:"sessionType,omitempty"` + MsgFrom int32 `protobuf:"varint,10,opt,name=msgFrom" json:"msgFrom,omitempty"` + ContentType int32 `protobuf:"varint,11,opt,name=contentType" json:"contentType,omitempty"` + Content []byte `protobuf:"bytes,12,opt,name=content,proto3" json:"content,omitempty"` + Seq uint32 `protobuf:"varint,14,opt,name=seq" json:"seq,omitempty"` + SendTime int64 `protobuf:"varint,15,opt,name=sendTime" json:"sendTime,omitempty"` + CreateTime int64 `protobuf:"varint,16,opt,name=createTime" json:"createTime,omitempty"` + Status int32 `protobuf:"varint,17,opt,name=status" json:"status,omitempty"` + Options map[string]bool `protobuf:"bytes,18,rep,name=options" json:"options,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` + OfflinePushInfo *OfflinePushInfo `protobuf:"bytes,19,opt,name=offlinePushInfo" json:"offlinePushInfo,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *MsgData) Reset() { - *x = MsgData{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MsgData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MsgData) ProtoMessage() {} - -func (x *MsgData) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MsgData.ProtoReflect.Descriptor instead. +func (m *MsgData) Reset() { *m = MsgData{} } +func (m *MsgData) String() string { return proto.CompactTextString(m) } +func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{13} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{13} +} +func (m *MsgData) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MsgData.Unmarshal(m, b) +} +func (m *MsgData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MsgData.Marshal(b, m, deterministic) +} +func (dst *MsgData) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgData.Merge(dst, src) +} +func (m *MsgData) XXX_Size() int { + return xxx_messageInfo_MsgData.Size(m) +} +func (m *MsgData) XXX_DiscardUnknown() { + xxx_messageInfo_MsgData.DiscardUnknown(m) } -func (x *MsgData) GetSendID() string { - if x != nil { - return x.SendID +var xxx_messageInfo_MsgData proto.InternalMessageInfo + +func (m *MsgData) GetSendID() string { + if m != nil { + return m.SendID } return "" } -func (x *MsgData) GetRecvID() string { - if x != nil { - return x.RecvID +func (m *MsgData) GetRecvID() string { + if m != nil { + return m.RecvID } return "" } -func (x *MsgData) GetGroupID() string { - if x != nil { - return x.GroupID +func (m *MsgData) GetGroupID() string { + if m != nil { + return m.GroupID } return "" } -func (x *MsgData) GetClientMsgID() string { - if x != nil { - return x.ClientMsgID +func (m *MsgData) GetClientMsgID() string { + if m != nil { + return m.ClientMsgID } return "" } -func (x *MsgData) GetServerMsgID() string { - if x != nil { - return x.ServerMsgID +func (m *MsgData) GetServerMsgID() string { + if m != nil { + return m.ServerMsgID } return "" } -func (x *MsgData) GetSenderPlatformID() int32 { - if x != nil { - return x.SenderPlatformID +func (m *MsgData) GetSenderPlatformID() int32 { + if m != nil { + return m.SenderPlatformID } return 0 } -func (x *MsgData) GetSenderNickname() string { - if x != nil { - return x.SenderNickname +func (m *MsgData) GetSenderNickname() string { + if m != nil { + return m.SenderNickname } return "" } -func (x *MsgData) GetSenderFaceURL() string { - if x != nil { - return x.SenderFaceURL +func (m *MsgData) GetSenderFaceURL() string { + if m != nil { + return m.SenderFaceURL } return "" } -func (x *MsgData) GetSessionType() int32 { - if x != nil { - return x.SessionType +func (m *MsgData) GetSessionType() int32 { + if m != nil { + return m.SessionType } return 0 } -func (x *MsgData) GetMsgFrom() int32 { - if x != nil { - return x.MsgFrom +func (m *MsgData) GetMsgFrom() int32 { + if m != nil { + return m.MsgFrom } return 0 } -func (x *MsgData) GetContentType() int32 { - if x != nil { - return x.ContentType +func (m *MsgData) GetContentType() int32 { + if m != nil { + return m.ContentType } return 0 } -func (x *MsgData) GetContent() []byte { - if x != nil { - return x.Content +func (m *MsgData) GetContent() []byte { + if m != nil { + return m.Content } return nil } -func (x *MsgData) GetSeq() uint32 { - if x != nil { - return x.Seq +func (m *MsgData) GetSeq() uint32 { + if m != nil { + return m.Seq } return 0 } -func (x *MsgData) GetSendTime() int64 { - if x != nil { - return x.SendTime +func (m *MsgData) GetSendTime() int64 { + if m != nil { + return m.SendTime } return 0 } -func (x *MsgData) GetCreateTime() int64 { - if x != nil { - return x.CreateTime +func (m *MsgData) GetCreateTime() int64 { + if m != nil { + return m.CreateTime } return 0 } -func (x *MsgData) GetStatus() int32 { - if x != nil { - return x.Status +func (m *MsgData) GetStatus() int32 { + if m != nil { + return m.Status } return 0 } -func (x *MsgData) GetOptions() map[string]bool { - if x != nil { - return x.Options +func (m *MsgData) GetOptions() map[string]bool { + if m != nil { + return m.Options } return nil } -func (x *MsgData) GetOfflinePushInfo() *OfflinePushInfo { - if x != nil { - return x.OfflinePushInfo +func (m *MsgData) GetOfflinePushInfo() *OfflinePushInfo { + if m != nil { + return m.OfflinePushInfo } return nil } type OfflinePushInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - Desc string `protobuf:"bytes,2,opt,name=desc,proto3" json:"desc,omitempty"` - Ex string `protobuf:"bytes,3,opt,name=ex,proto3" json:"ex,omitempty"` - IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound,proto3" json:"iOSPushSound,omitempty"` - IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount,proto3" json:"iOSBadgeCount,omitempty"` + Title string `protobuf:"bytes,1,opt,name=title" json:"title,omitempty"` + Desc string `protobuf:"bytes,2,opt,name=desc" json:"desc,omitempty"` + Ex string `protobuf:"bytes,3,opt,name=ex" json:"ex,omitempty"` + IOSPushSound string `protobuf:"bytes,4,opt,name=iOSPushSound" json:"iOSPushSound,omitempty"` + IOSBadgeCount bool `protobuf:"varint,5,opt,name=iOSBadgeCount" json:"iOSBadgeCount,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *OfflinePushInfo) Reset() { - *x = OfflinePushInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OfflinePushInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OfflinePushInfo) ProtoMessage() {} - -func (x *OfflinePushInfo) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OfflinePushInfo.ProtoReflect.Descriptor instead. +func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } +func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } +func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{14} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{14} +} +func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) +} +func (m *OfflinePushInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_OfflinePushInfo.Marshal(b, m, deterministic) +} +func (dst *OfflinePushInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_OfflinePushInfo.Merge(dst, src) +} +func (m *OfflinePushInfo) XXX_Size() int { + return xxx_messageInfo_OfflinePushInfo.Size(m) +} +func (m *OfflinePushInfo) XXX_DiscardUnknown() { + xxx_messageInfo_OfflinePushInfo.DiscardUnknown(m) } -func (x *OfflinePushInfo) GetTitle() string { - if x != nil { - return x.Title +var xxx_messageInfo_OfflinePushInfo proto.InternalMessageInfo + +func (m *OfflinePushInfo) GetTitle() string { + if m != nil { + return m.Title } return "" } -func (x *OfflinePushInfo) GetDesc() string { - if x != nil { - return x.Desc +func (m *OfflinePushInfo) GetDesc() string { + if m != nil { + return m.Desc } return "" } -func (x *OfflinePushInfo) GetEx() string { - if x != nil { - return x.Ex +func (m *OfflinePushInfo) GetEx() string { + if m != nil { + return m.Ex } return "" } -func (x *OfflinePushInfo) GetIOSPushSound() string { - if x != nil { - return x.IOSPushSound +func (m *OfflinePushInfo) GetIOSPushSound() string { + if m != nil { + return m.IOSPushSound } return "" } -func (x *OfflinePushInfo) GetIOSBadgeCount() bool { - if x != nil { - return x.IOSBadgeCount +func (m *OfflinePushInfo) GetIOSBadgeCount() bool { + if m != nil { + return m.IOSBadgeCount } return false } type TipsComm struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail,omitempty"` - DefaultTips string `protobuf:"bytes,2,opt,name=defaultTips,proto3" json:"defaultTips,omitempty"` - JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail,proto3" json:"jsonDetail,omitempty"` + Detail []byte `protobuf:"bytes,1,opt,name=detail,proto3" json:"detail,omitempty"` + DefaultTips string `protobuf:"bytes,2,opt,name=defaultTips" json:"defaultTips,omitempty"` + JsonDetail string `protobuf:"bytes,3,opt,name=jsonDetail" json:"jsonDetail,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *TipsComm) Reset() { - *x = TipsComm{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TipsComm) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TipsComm) ProtoMessage() {} - -func (x *TipsComm) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use TipsComm.ProtoReflect.Descriptor instead. +func (m *TipsComm) Reset() { *m = TipsComm{} } +func (m *TipsComm) String() string { return proto.CompactTextString(m) } +func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{15} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{15} +} +func (m *TipsComm) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_TipsComm.Unmarshal(m, b) +} +func (m *TipsComm) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_TipsComm.Marshal(b, m, deterministic) +} +func (dst *TipsComm) XXX_Merge(src proto.Message) { + xxx_messageInfo_TipsComm.Merge(dst, src) +} +func (m *TipsComm) XXX_Size() int { + return xxx_messageInfo_TipsComm.Size(m) +} +func (m *TipsComm) XXX_DiscardUnknown() { + xxx_messageInfo_TipsComm.DiscardUnknown(m) } -func (x *TipsComm) GetDetail() []byte { - if x != nil { - return x.Detail +var xxx_messageInfo_TipsComm proto.InternalMessageInfo + +func (m *TipsComm) GetDetail() []byte { + if m != nil { + return m.Detail } return nil } -func (x *TipsComm) GetDefaultTips() string { - if x != nil { - return x.DefaultTips +func (m *TipsComm) GetDefaultTips() string { + if m != nil { + return m.DefaultTips } return "" } -func (x *TipsComm) GetJsonDetail() string { - if x != nil { - return x.JsonDetail +func (m *TipsComm) GetJsonDetail() string { + if m != nil { + return m.JsonDetail } return "" } -// OnGroupCreated() +// OnGroupCreated() type GroupCreatedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList,proto3" json:"memberList,omitempty"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime,omitempty"` - GroupOwnerUser *GroupMemberFullInfo `protobuf:"bytes,5,opt,name=groupOwnerUser,proto3" json:"groupOwnerUser,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + MemberList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=memberList" json:"memberList,omitempty"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"` + GroupOwnerUser *GroupMemberFullInfo `protobuf:"bytes,5,opt,name=groupOwnerUser" json:"groupOwnerUser,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupCreatedTips) Reset() { - *x = GroupCreatedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupCreatedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupCreatedTips) ProtoMessage() {} - -func (x *GroupCreatedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GroupCreatedTips.ProtoReflect.Descriptor instead. +func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } +func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } +func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{16} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{16} +} +func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) +} +func (m *GroupCreatedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupCreatedTips.Marshal(b, m, deterministic) +} +func (dst *GroupCreatedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupCreatedTips.Merge(dst, src) +} +func (m *GroupCreatedTips) XXX_Size() int { + return xxx_messageInfo_GroupCreatedTips.Size(m) +} +func (m *GroupCreatedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupCreatedTips.DiscardUnknown(m) } -func (x *GroupCreatedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_GroupCreatedTips proto.InternalMessageInfo + +func (m *GroupCreatedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *GroupCreatedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *GroupCreatedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *GroupCreatedTips) GetMemberList() []*GroupMemberFullInfo { - if x != nil { - return x.MemberList +func (m *GroupCreatedTips) GetMemberList() []*GroupMemberFullInfo { + if m != nil { + return m.MemberList } return nil } -func (x *GroupCreatedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *GroupCreatedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -func (x *GroupCreatedTips) GetGroupOwnerUser() *GroupMemberFullInfo { - if x != nil { - return x.GroupOwnerUser +func (m *GroupCreatedTips) GetGroupOwnerUser() *GroupMemberFullInfo { + if m != nil { + return m.GroupOwnerUser } return nil } -// OnGroupInfoSet() +// OnGroupInfoSet() type GroupInfoSetTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser,proto3" json:"opUser,omitempty"` //who do this - MuteTime int64 `protobuf:"varint,2,opt,name=muteTime,proto3" json:"muteTime,omitempty"` - Group *GroupInfo `protobuf:"bytes,3,opt,name=group,proto3" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,1,opt,name=opUser" json:"opUser,omitempty"` + MuteTime int64 `protobuf:"varint,2,opt,name=muteTime" json:"muteTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,3,opt,name=group" json:"group,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupInfoSetTips) Reset() { - *x = GroupInfoSetTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupInfoSetTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupInfoSetTips) ProtoMessage() {} - -func (x *GroupInfoSetTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GroupInfoSetTips.ProtoReflect.Descriptor instead. +func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } +func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } +func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{17} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{17} +} +func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) +} +func (m *GroupInfoSetTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupInfoSetTips.Marshal(b, m, deterministic) +} +func (dst *GroupInfoSetTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupInfoSetTips.Merge(dst, src) +} +func (m *GroupInfoSetTips) XXX_Size() int { + return xxx_messageInfo_GroupInfoSetTips.Size(m) +} +func (m *GroupInfoSetTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupInfoSetTips.DiscardUnknown(m) } -func (x *GroupInfoSetTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +var xxx_messageInfo_GroupInfoSetTips proto.InternalMessageInfo + +func (m *GroupInfoSetTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *GroupInfoSetTips) GetMuteTime() int64 { - if x != nil { - return x.MuteTime +func (m *GroupInfoSetTips) GetMuteTime() int64 { + if m != nil { + return m.MuteTime } return 0 } -func (x *GroupInfoSetTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +func (m *GroupInfoSetTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -// OnJoinGroupApplication() +// OnJoinGroupApplication() type JoinGroupApplicationTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - Applicant *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant,proto3" json:"applicant,omitempty"` - ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg,proto3" json:"reqMsg,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + Applicant *PublicUserInfo `protobuf:"bytes,2,opt,name=applicant" json:"applicant,omitempty"` + ReqMsg string `protobuf:"bytes,3,opt,name=reqMsg" json:"reqMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *JoinGroupApplicationTips) Reset() { - *x = JoinGroupApplicationTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *JoinGroupApplicationTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*JoinGroupApplicationTips) ProtoMessage() {} - -func (x *JoinGroupApplicationTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use JoinGroupApplicationTips.ProtoReflect.Descriptor instead. +func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTips{} } +func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } +func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{18} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{18} +} +func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) +} +func (m *JoinGroupApplicationTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_JoinGroupApplicationTips.Marshal(b, m, deterministic) +} +func (dst *JoinGroupApplicationTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_JoinGroupApplicationTips.Merge(dst, src) +} +func (m *JoinGroupApplicationTips) XXX_Size() int { + return xxx_messageInfo_JoinGroupApplicationTips.Size(m) +} +func (m *JoinGroupApplicationTips) XXX_DiscardUnknown() { + xxx_messageInfo_JoinGroupApplicationTips.DiscardUnknown(m) } -func (x *JoinGroupApplicationTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_JoinGroupApplicationTips proto.InternalMessageInfo + +func (m *JoinGroupApplicationTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *JoinGroupApplicationTips) GetApplicant() *PublicUserInfo { - if x != nil { - return x.Applicant +func (m *JoinGroupApplicationTips) GetApplicant() *PublicUserInfo { + if m != nil { + return m.Applicant } return nil } -func (x *JoinGroupApplicationTips) GetReqMsg() string { - if x != nil { - return x.ReqMsg +func (m *JoinGroupApplicationTips) GetReqMsg() string { + if m != nil { + return m.ReqMsg } return "" } -// OnQuitGroup() -//Actively leave the group +// OnQuitGroup() +// Actively leave the group type MemberQuitTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser,proto3" json:"quitUser,omitempty"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + QuitUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=quitUser" json:"quitUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *MemberQuitTips) Reset() { - *x = MemberQuitTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberQuitTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberQuitTips) ProtoMessage() {} - -func (x *MemberQuitTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MemberQuitTips.ProtoReflect.Descriptor instead. +func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } +func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } +func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{19} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{19} +} +func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) +} +func (m *MemberQuitTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MemberQuitTips.Marshal(b, m, deterministic) +} +func (dst *MemberQuitTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_MemberQuitTips.Merge(dst, src) +} +func (m *MemberQuitTips) XXX_Size() int { + return xxx_messageInfo_MemberQuitTips.Size(m) +} +func (m *MemberQuitTips) XXX_DiscardUnknown() { + xxx_messageInfo_MemberQuitTips.DiscardUnknown(m) } -func (x *MemberQuitTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_MemberQuitTips proto.InternalMessageInfo + +func (m *MemberQuitTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *MemberQuitTips) GetQuitUser() *GroupMemberFullInfo { - if x != nil { - return x.QuitUser +func (m *MemberQuitTips) GetQuitUser() *GroupMemberFullInfo { + if m != nil { + return m.QuitUser } return nil } -func (x *MemberQuitTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *MemberQuitTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -// OnApplicationGroupAccepted() +// OnApplicationGroupAccepted() type GroupApplicationAcceptedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg" json:"handleMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupApplicationAcceptedTips) Reset() { - *x = GroupApplicationAcceptedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationAcceptedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationAcceptedTips) ProtoMessage() {} - -func (x *GroupApplicationAcceptedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GroupApplicationAcceptedTips.ProtoReflect.Descriptor instead. +func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAcceptedTips{} } +func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } +func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{20} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{20} +} +func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) +} +func (m *GroupApplicationAcceptedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupApplicationAcceptedTips.Marshal(b, m, deterministic) +} +func (dst *GroupApplicationAcceptedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupApplicationAcceptedTips.Merge(dst, src) +} +func (m *GroupApplicationAcceptedTips) XXX_Size() int { + return xxx_messageInfo_GroupApplicationAcceptedTips.Size(m) +} +func (m *GroupApplicationAcceptedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupApplicationAcceptedTips.DiscardUnknown(m) } -func (x *GroupApplicationAcceptedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_GroupApplicationAcceptedTips proto.InternalMessageInfo + +func (m *GroupApplicationAcceptedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *GroupApplicationAcceptedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *GroupApplicationAcceptedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *GroupApplicationAcceptedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *GroupApplicationAcceptedTips) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } -// OnApplicationGroupRejected() +// OnApplicationGroupRejected() type GroupApplicationRejectedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + HandleMsg string `protobuf:"bytes,4,opt,name=handleMsg" json:"handleMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupApplicationRejectedTips) Reset() { - *x = GroupApplicationRejectedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupApplicationRejectedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupApplicationRejectedTips) ProtoMessage() {} - -func (x *GroupApplicationRejectedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 GroupApplicationRejectedTips.ProtoReflect.Descriptor instead. +func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRejectedTips{} } +func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } +func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{21} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{21} +} +func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) +} +func (m *GroupApplicationRejectedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupApplicationRejectedTips.Marshal(b, m, deterministic) +} +func (dst *GroupApplicationRejectedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupApplicationRejectedTips.Merge(dst, src) +} +func (m *GroupApplicationRejectedTips) XXX_Size() int { + return xxx_messageInfo_GroupApplicationRejectedTips.Size(m) +} +func (m *GroupApplicationRejectedTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupApplicationRejectedTips.DiscardUnknown(m) } -func (x *GroupApplicationRejectedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_GroupApplicationRejectedTips proto.InternalMessageInfo + +func (m *GroupApplicationRejectedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *GroupApplicationRejectedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *GroupApplicationRejectedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *GroupApplicationRejectedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *GroupApplicationRejectedTips) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } -// OnTransferGroupOwner() +// OnTransferGroupOwner() type GroupOwnerTransferredTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner,proto3" json:"newGroupOwner,omitempty"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + NewGroupOwner *GroupMemberFullInfo `protobuf:"bytes,3,opt,name=newGroupOwner" json:"newGroupOwner,omitempty"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *GroupOwnerTransferredTips) Reset() { - *x = GroupOwnerTransferredTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GroupOwnerTransferredTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GroupOwnerTransferredTips) ProtoMessage() {} - -func (x *GroupOwnerTransferredTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GroupOwnerTransferredTips.ProtoReflect.Descriptor instead. +func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferredTips{} } +func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } +func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{22} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{22} +} +func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) +} +func (m *GroupOwnerTransferredTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_GroupOwnerTransferredTips.Marshal(b, m, deterministic) +} +func (dst *GroupOwnerTransferredTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_GroupOwnerTransferredTips.Merge(dst, src) +} +func (m *GroupOwnerTransferredTips) XXX_Size() int { + return xxx_messageInfo_GroupOwnerTransferredTips.Size(m) +} +func (m *GroupOwnerTransferredTips) XXX_DiscardUnknown() { + xxx_messageInfo_GroupOwnerTransferredTips.DiscardUnknown(m) } -func (x *GroupOwnerTransferredTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_GroupOwnerTransferredTips proto.InternalMessageInfo + +func (m *GroupOwnerTransferredTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *GroupOwnerTransferredTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *GroupOwnerTransferredTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *GroupOwnerTransferredTips) GetNewGroupOwner() *GroupMemberFullInfo { - if x != nil { - return x.NewGroupOwner +func (m *GroupOwnerTransferredTips) GetNewGroupOwner() *GroupMemberFullInfo { + if m != nil { + return m.NewGroupOwner } return nil } -func (x *GroupOwnerTransferredTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *GroupOwnerTransferredTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -// OnMemberKicked() +// OnMemberKicked() type MemberKickedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - KickedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList,proto3" json:"kickedUserList,omitempty"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + KickedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=kickedUserList" json:"kickedUserList,omitempty"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *MemberKickedTips) Reset() { - *x = MemberKickedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberKickedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberKickedTips) ProtoMessage() {} - -func (x *MemberKickedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MemberKickedTips.ProtoReflect.Descriptor instead. +func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } +func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } +func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{23} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{23} +} +func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) +} +func (m *MemberKickedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MemberKickedTips.Marshal(b, m, deterministic) +} +func (dst *MemberKickedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_MemberKickedTips.Merge(dst, src) +} +func (m *MemberKickedTips) XXX_Size() int { + return xxx_messageInfo_MemberKickedTips.Size(m) +} +func (m *MemberKickedTips) XXX_DiscardUnknown() { + xxx_messageInfo_MemberKickedTips.DiscardUnknown(m) } -func (x *MemberKickedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_MemberKickedTips proto.InternalMessageInfo + +func (m *MemberKickedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *MemberKickedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *MemberKickedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *MemberKickedTips) GetKickedUserList() []*GroupMemberFullInfo { - if x != nil { - return x.KickedUserList +func (m *MemberKickedTips) GetKickedUserList() []*GroupMemberFullInfo { + if m != nil { + return m.KickedUserList } return nil } -func (x *MemberKickedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *MemberKickedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -// OnMemberInvited() +// OnMemberInvited() type MemberInvitedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser,proto3" json:"opUser,omitempty"` - InvitedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList,proto3" json:"invitedUserList,omitempty"` - OperationTime int64 `protobuf:"varint,4,opt,name=operationTime,proto3" json:"operationTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + OpUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=opUser" json:"opUser,omitempty"` + InvitedUserList []*GroupMemberFullInfo `protobuf:"bytes,3,rep,name=invitedUserList" json:"invitedUserList,omitempty"` + OperationTime int64 `protobuf:"varint,4,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *MemberInvitedTips) Reset() { - *x = MemberInvitedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberInvitedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberInvitedTips) ProtoMessage() {} - -func (x *MemberInvitedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MemberInvitedTips.ProtoReflect.Descriptor instead. +func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } +func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } +func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{24} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{24} +} +func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) +} +func (m *MemberInvitedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MemberInvitedTips.Marshal(b, m, deterministic) +} +func (dst *MemberInvitedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_MemberInvitedTips.Merge(dst, src) +} +func (m *MemberInvitedTips) XXX_Size() int { + return xxx_messageInfo_MemberInvitedTips.Size(m) +} +func (m *MemberInvitedTips) XXX_DiscardUnknown() { + xxx_messageInfo_MemberInvitedTips.DiscardUnknown(m) } -func (x *MemberInvitedTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_MemberInvitedTips proto.InternalMessageInfo + +func (m *MemberInvitedTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *MemberInvitedTips) GetOpUser() *GroupMemberFullInfo { - if x != nil { - return x.OpUser +func (m *MemberInvitedTips) GetOpUser() *GroupMemberFullInfo { + if m != nil { + return m.OpUser } return nil } -func (x *MemberInvitedTips) GetInvitedUserList() []*GroupMemberFullInfo { - if x != nil { - return x.InvitedUserList +func (m *MemberInvitedTips) GetInvitedUserList() []*GroupMemberFullInfo { + if m != nil { + return m.InvitedUserList } return nil } -func (x *MemberInvitedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *MemberInvitedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -//Actively join the group +// Actively join the group type MemberEnterTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Group *GroupInfo `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` - EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser,proto3" json:"entrantUser,omitempty"` - OperationTime int64 `protobuf:"varint,3,opt,name=operationTime,proto3" json:"operationTime,omitempty"` + Group *GroupInfo `protobuf:"bytes,1,opt,name=group" json:"group,omitempty"` + EntrantUser *GroupMemberFullInfo `protobuf:"bytes,2,opt,name=entrantUser" json:"entrantUser,omitempty"` + OperationTime int64 `protobuf:"varint,3,opt,name=operationTime" json:"operationTime,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *MemberEnterTips) Reset() { - *x = MemberEnterTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MemberEnterTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MemberEnterTips) ProtoMessage() {} - -func (x *MemberEnterTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MemberEnterTips.ProtoReflect.Descriptor instead. +func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } +func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } +func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{25} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{25} +} +func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) +} +func (m *MemberEnterTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MemberEnterTips.Marshal(b, m, deterministic) +} +func (dst *MemberEnterTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_MemberEnterTips.Merge(dst, src) +} +func (m *MemberEnterTips) XXX_Size() int { + return xxx_messageInfo_MemberEnterTips.Size(m) +} +func (m *MemberEnterTips) XXX_DiscardUnknown() { + xxx_messageInfo_MemberEnterTips.DiscardUnknown(m) } -func (x *MemberEnterTips) GetGroup() *GroupInfo { - if x != nil { - return x.Group +var xxx_messageInfo_MemberEnterTips proto.InternalMessageInfo + +func (m *MemberEnterTips) GetGroup() *GroupInfo { + if m != nil { + return m.Group } return nil } -func (x *MemberEnterTips) GetEntrantUser() *GroupMemberFullInfo { - if x != nil { - return x.EntrantUser +func (m *MemberEnterTips) GetEntrantUser() *GroupMemberFullInfo { + if m != nil { + return m.EntrantUser } return nil } -func (x *MemberEnterTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *MemberEnterTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } type FriendApplication struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AddTime int64 `protobuf:"varint,1,opt,name=addTime,proto3" json:"addTime,omitempty"` - AddSource string `protobuf:"bytes,2,opt,name=addSource,proto3" json:"addSource,omitempty"` - AddWording string `protobuf:"bytes,3,opt,name=addWording,proto3" json:"addWording,omitempty"` + AddTime int64 `protobuf:"varint,1,opt,name=addTime" json:"addTime,omitempty"` + AddSource string `protobuf:"bytes,2,opt,name=addSource" json:"addSource,omitempty"` + AddWording string `protobuf:"bytes,3,opt,name=addWording" json:"addWording,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendApplication) Reset() { - *x = FriendApplication{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplication) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplication) ProtoMessage() {} - -func (x *FriendApplication) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FriendApplication.ProtoReflect.Descriptor instead. +func (m *FriendApplication) Reset() { *m = FriendApplication{} } +func (m *FriendApplication) String() string { return proto.CompactTextString(m) } +func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{26} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{26} +} +func (m *FriendApplication) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendApplication.Unmarshal(m, b) +} +func (m *FriendApplication) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendApplication.Marshal(b, m, deterministic) +} +func (dst *FriendApplication) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendApplication.Merge(dst, src) +} +func (m *FriendApplication) XXX_Size() int { + return xxx_messageInfo_FriendApplication.Size(m) +} +func (m *FriendApplication) XXX_DiscardUnknown() { + xxx_messageInfo_FriendApplication.DiscardUnknown(m) } -func (x *FriendApplication) GetAddTime() int64 { - if x != nil { - return x.AddTime +var xxx_messageInfo_FriendApplication proto.InternalMessageInfo + +func (m *FriendApplication) GetAddTime() int64 { + if m != nil { + return m.AddTime } return 0 } -func (x *FriendApplication) GetAddSource() string { - if x != nil { - return x.AddSource +func (m *FriendApplication) GetAddSource() string { + if m != nil { + return m.AddSource } return "" } -func (x *FriendApplication) GetAddWording() string { - if x != nil { - return x.AddWording +func (m *FriendApplication) GetAddWording() string { + if m != nil { + return m.AddWording } return "" } type FromToUserID struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromUserID string `protobuf:"bytes,1,opt,name=fromUserID,proto3" json:"fromUserID,omitempty"` - ToUserID string `protobuf:"bytes,2,opt,name=toUserID,proto3" json:"toUserID,omitempty"` + FromUserID string `protobuf:"bytes,1,opt,name=fromUserID" json:"fromUserID,omitempty"` + ToUserID string `protobuf:"bytes,2,opt,name=toUserID" json:"toUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FromToUserID) Reset() { - *x = FromToUserID{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FromToUserID) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FromToUserID) ProtoMessage() {} - -func (x *FromToUserID) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FromToUserID.ProtoReflect.Descriptor instead. +func (m *FromToUserID) Reset() { *m = FromToUserID{} } +func (m *FromToUserID) String() string { return proto.CompactTextString(m) } +func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{27} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{27} +} +func (m *FromToUserID) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FromToUserID.Unmarshal(m, b) +} +func (m *FromToUserID) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FromToUserID.Marshal(b, m, deterministic) +} +func (dst *FromToUserID) XXX_Merge(src proto.Message) { + xxx_messageInfo_FromToUserID.Merge(dst, src) +} +func (m *FromToUserID) XXX_Size() int { + return xxx_messageInfo_FromToUserID.Size(m) +} +func (m *FromToUserID) XXX_DiscardUnknown() { + xxx_messageInfo_FromToUserID.DiscardUnknown(m) } -func (x *FromToUserID) GetFromUserID() string { - if x != nil { - return x.FromUserID +var xxx_messageInfo_FromToUserID proto.InternalMessageInfo + +func (m *FromToUserID) GetFromUserID() string { + if m != nil { + return m.FromUserID } return "" } -func (x *FromToUserID) GetToUserID() string { - if x != nil { - return x.ToUserID +func (m *FromToUserID) GetToUserID() string { + if m != nil { + return m.ToUserID } return "" } -//FromUserID apply to add ToUserID +// FromUserID apply to add ToUserID type FriendApplicationTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendApplicationTips) Reset() { - *x = FriendApplicationTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationTips) ProtoMessage() {} - -func (x *FriendApplicationTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FriendApplicationTips.ProtoReflect.Descriptor instead. +func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } +func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } +func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{28} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{28} +} +func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) +} +func (m *FriendApplicationTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendApplicationTips.Marshal(b, m, deterministic) +} +func (dst *FriendApplicationTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendApplicationTips.Merge(dst, src) +} +func (m *FriendApplicationTips) XXX_Size() int { + return xxx_messageInfo_FriendApplicationTips.Size(m) +} +func (m *FriendApplicationTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendApplicationTips.DiscardUnknown(m) } -func (x *FriendApplicationTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_FriendApplicationTips proto.InternalMessageInfo + +func (m *FriendApplicationTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } -//FromUserID accept or reject ToUserID +// FromUserID accept or reject ToUserID type FriendApplicationApprovedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg" json:"handleMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendApplicationApprovedTips) Reset() { - *x = FriendApplicationApprovedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationApprovedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationApprovedTips) ProtoMessage() {} - -func (x *FriendApplicationApprovedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FriendApplicationApprovedTips.ProtoReflect.Descriptor instead. +func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplicationApprovedTips{} } +func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } +func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{29} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{29} +} +func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) +} +func (m *FriendApplicationApprovedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendApplicationApprovedTips.Marshal(b, m, deterministic) +} +func (dst *FriendApplicationApprovedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendApplicationApprovedTips.Merge(dst, src) +} +func (m *FriendApplicationApprovedTips) XXX_Size() int { + return xxx_messageInfo_FriendApplicationApprovedTips.Size(m) +} +func (m *FriendApplicationApprovedTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendApplicationApprovedTips.DiscardUnknown(m) } -func (x *FriendApplicationApprovedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_FriendApplicationApprovedTips proto.InternalMessageInfo + +func (m *FriendApplicationApprovedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } -func (x *FriendApplicationApprovedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *FriendApplicationApprovedTips) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } -//FromUserID accept or reject ToUserID +// FromUserID accept or reject ToUserID type FriendApplicationRejectedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` - HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg,proto3" json:"handleMsg,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + HandleMsg string `protobuf:"bytes,2,opt,name=handleMsg" json:"handleMsg,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendApplicationRejectedTips) Reset() { - *x = FriendApplicationRejectedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendApplicationRejectedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendApplicationRejectedTips) ProtoMessage() {} - -func (x *FriendApplicationRejectedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FriendApplicationRejectedTips.ProtoReflect.Descriptor instead. +func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplicationRejectedTips{} } +func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } +func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{30} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{30} +} +func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) +} +func (m *FriendApplicationRejectedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendApplicationRejectedTips.Marshal(b, m, deterministic) +} +func (dst *FriendApplicationRejectedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendApplicationRejectedTips.Merge(dst, src) +} +func (m *FriendApplicationRejectedTips) XXX_Size() int { + return xxx_messageInfo_FriendApplicationRejectedTips.Size(m) +} +func (m *FriendApplicationRejectedTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendApplicationRejectedTips.DiscardUnknown(m) } -func (x *FriendApplicationRejectedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_FriendApplicationRejectedTips proto.InternalMessageInfo + +func (m *FriendApplicationRejectedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } -func (x *FriendApplicationRejectedTips) GetHandleMsg() string { - if x != nil { - return x.HandleMsg +func (m *FriendApplicationRejectedTips) GetHandleMsg() string { + if m != nil { + return m.HandleMsg } return "" } // FromUserID Added a friend ToUserID type FriendAddedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend,omitempty"` - OperationTime int64 `protobuf:"varint,2,opt,name=operationTime,proto3" json:"operationTime,omitempty"` - OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser,proto3" json:"opUser,omitempty"` //who do this + Friend *FriendInfo `protobuf:"bytes,1,opt,name=friend" json:"friend,omitempty"` + OperationTime int64 `protobuf:"varint,2,opt,name=operationTime" json:"operationTime,omitempty"` + OpUser *PublicUserInfo `protobuf:"bytes,3,opt,name=opUser" json:"opUser,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendAddedTips) Reset() { - *x = FriendAddedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendAddedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendAddedTips) ProtoMessage() {} - -func (x *FriendAddedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 FriendAddedTips.ProtoReflect.Descriptor instead. +func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } +func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } +func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{31} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{31} +} +func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) +} +func (m *FriendAddedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendAddedTips.Marshal(b, m, deterministic) +} +func (dst *FriendAddedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendAddedTips.Merge(dst, src) +} +func (m *FriendAddedTips) XXX_Size() int { + return xxx_messageInfo_FriendAddedTips.Size(m) +} +func (m *FriendAddedTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendAddedTips.DiscardUnknown(m) } -func (x *FriendAddedTips) GetFriend() *FriendInfo { - if x != nil { - return x.Friend +var xxx_messageInfo_FriendAddedTips proto.InternalMessageInfo + +func (m *FriendAddedTips) GetFriend() *FriendInfo { + if m != nil { + return m.Friend } return nil } -func (x *FriendAddedTips) GetOperationTime() int64 { - if x != nil { - return x.OperationTime +func (m *FriendAddedTips) GetOperationTime() int64 { + if m != nil { + return m.OperationTime } return 0 } -func (x *FriendAddedTips) GetOpUser() *PublicUserInfo { - if x != nil { - return x.OpUser +func (m *FriendAddedTips) GetOpUser() *PublicUserInfo { + if m != nil { + return m.OpUser } return nil } // FromUserID deleted a friend ToUserID type FriendDeletedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendDeletedTips) Reset() { - *x = FriendDeletedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendDeletedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendDeletedTips) ProtoMessage() {} - -func (x *FriendDeletedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 FriendDeletedTips.ProtoReflect.Descriptor instead. +func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } +func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } +func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{32} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{32} +} +func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) +} +func (m *FriendDeletedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendDeletedTips.Marshal(b, m, deterministic) +} +func (dst *FriendDeletedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendDeletedTips.Merge(dst, src) +} +func (m *FriendDeletedTips) XXX_Size() int { + return xxx_messageInfo_FriendDeletedTips.Size(m) +} +func (m *FriendDeletedTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendDeletedTips.DiscardUnknown(m) } -func (x *FriendDeletedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_FriendDeletedTips proto.InternalMessageInfo + +func (m *FriendDeletedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } type BlackAddedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BlackAddedTips) Reset() { - *x = BlackAddedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackAddedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackAddedTips) ProtoMessage() {} - -func (x *BlackAddedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 BlackAddedTips.ProtoReflect.Descriptor instead. +func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } +func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } +func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{33} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{33} +} +func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) +} +func (m *BlackAddedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlackAddedTips.Marshal(b, m, deterministic) +} +func (dst *BlackAddedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlackAddedTips.Merge(dst, src) +} +func (m *BlackAddedTips) XXX_Size() int { + return xxx_messageInfo_BlackAddedTips.Size(m) +} +func (m *BlackAddedTips) XXX_DiscardUnknown() { + xxx_messageInfo_BlackAddedTips.DiscardUnknown(m) } -func (x *BlackAddedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_BlackAddedTips proto.InternalMessageInfo + +func (m *BlackAddedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } type BlackDeletedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *BlackDeletedTips) Reset() { - *x = BlackDeletedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BlackDeletedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BlackDeletedTips) ProtoMessage() {} - -func (x *BlackDeletedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 BlackDeletedTips.ProtoReflect.Descriptor instead. +func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } +func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } +func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{34} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{34} +} +func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) +} +func (m *BlackDeletedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_BlackDeletedTips.Marshal(b, m, deterministic) +} +func (dst *BlackDeletedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_BlackDeletedTips.Merge(dst, src) +} +func (m *BlackDeletedTips) XXX_Size() int { + return xxx_messageInfo_BlackDeletedTips.Size(m) +} +func (m *BlackDeletedTips) XXX_DiscardUnknown() { + xxx_messageInfo_BlackDeletedTips.DiscardUnknown(m) } -func (x *BlackDeletedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_BlackDeletedTips proto.InternalMessageInfo + +func (m *BlackDeletedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } type FriendInfoChangedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID,proto3" json:"fromToUserID,omitempty"` + FromToUserID *FromToUserID `protobuf:"bytes,1,opt,name=fromToUserID" json:"fromToUserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *FriendInfoChangedTips) Reset() { - *x = FriendInfoChangedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FriendInfoChangedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FriendInfoChangedTips) ProtoMessage() {} - -func (x *FriendInfoChangedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 FriendInfoChangedTips.ProtoReflect.Descriptor instead. +func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } +func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } +func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{35} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{35} +} +func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) +} +func (m *FriendInfoChangedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_FriendInfoChangedTips.Marshal(b, m, deterministic) +} +func (dst *FriendInfoChangedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_FriendInfoChangedTips.Merge(dst, src) +} +func (m *FriendInfoChangedTips) XXX_Size() int { + return xxx_messageInfo_FriendInfoChangedTips.Size(m) +} +func (m *FriendInfoChangedTips) XXX_DiscardUnknown() { + xxx_messageInfo_FriendInfoChangedTips.DiscardUnknown(m) } -func (x *FriendInfoChangedTips) GetFromToUserID() *FromToUserID { - if x != nil { - return x.FromToUserID +var xxx_messageInfo_FriendInfoChangedTips proto.InternalMessageInfo + +func (m *FriendInfoChangedTips) GetFromToUserID() *FromToUserID { + if m != nil { + return m.FromToUserID } return nil } -//////////////////////user///////////////////// +// ////////////////////user///////////////////// type UserInfoUpdatedTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=userID" json:"userID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *UserInfoUpdatedTips) Reset() { - *x = UserInfoUpdatedTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserInfoUpdatedTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserInfoUpdatedTips) ProtoMessage() {} - -func (x *UserInfoUpdatedTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_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 UserInfoUpdatedTips.ProtoReflect.Descriptor instead. +func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } +func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } +func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{36} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{36} +} +func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) +} +func (m *UserInfoUpdatedTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UserInfoUpdatedTips.Marshal(b, m, deterministic) +} +func (dst *UserInfoUpdatedTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_UserInfoUpdatedTips.Merge(dst, src) +} +func (m *UserInfoUpdatedTips) XXX_Size() int { + return xxx_messageInfo_UserInfoUpdatedTips.Size(m) +} +func (m *UserInfoUpdatedTips) XXX_DiscardUnknown() { + xxx_messageInfo_UserInfoUpdatedTips.DiscardUnknown(m) } -func (x *UserInfoUpdatedTips) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_UserInfoUpdatedTips proto.InternalMessageInfo + +func (m *UserInfoUpdatedTips) GetUserID() string { + if m != nil { + return m.UserID } return "" } -//////////////////////conversation///////////////////// +// ////////////////////conversation///////////////////// type ConversationUpdateTips struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UserID string `protobuf:"bytes,1,opt,name=UserID,proto3" json:"UserID,omitempty"` + UserID string `protobuf:"bytes,1,opt,name=UserID" json:"UserID,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *ConversationUpdateTips) Reset() { - *x = ConversationUpdateTips{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ConversationUpdateTips) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ConversationUpdateTips) ProtoMessage() {} - -func (x *ConversationUpdateTips) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[37] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ConversationUpdateTips.ProtoReflect.Descriptor instead. +func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} } +func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } +func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{37} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{37} +} +func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) +} +func (m *ConversationUpdateTips) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ConversationUpdateTips.Marshal(b, m, deterministic) +} +func (dst *ConversationUpdateTips) XXX_Merge(src proto.Message) { + xxx_messageInfo_ConversationUpdateTips.Merge(dst, src) +} +func (m *ConversationUpdateTips) XXX_Size() int { + return xxx_messageInfo_ConversationUpdateTips.Size(m) +} +func (m *ConversationUpdateTips) XXX_DiscardUnknown() { + xxx_messageInfo_ConversationUpdateTips.DiscardUnknown(m) } -func (x *ConversationUpdateTips) GetUserID() string { - if x != nil { - return x.UserID +var xxx_messageInfo_ConversationUpdateTips proto.InternalMessageInfo + +func (m *ConversationUpdateTips) GetUserID() string { + if m != nil { + return m.UserID } return "" } -///cms +// /cms type RequestPagination struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PageNumber int32 `protobuf:"varint,1,opt,name=pageNumber,proto3" json:"pageNumber,omitempty"` - ShowNumber int32 `protobuf:"varint,2,opt,name=showNumber,proto3" json:"showNumber,omitempty"` + PageNumber int32 `protobuf:"varint,1,opt,name=pageNumber" json:"pageNumber,omitempty"` + ShowNumber int32 `protobuf:"varint,2,opt,name=showNumber" json:"showNumber,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *RequestPagination) Reset() { - *x = RequestPagination{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RequestPagination) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RequestPagination) ProtoMessage() {} - -func (x *RequestPagination) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[38] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RequestPagination.ProtoReflect.Descriptor instead. +func (m *RequestPagination) Reset() { *m = RequestPagination{} } +func (m *RequestPagination) String() string { return proto.CompactTextString(m) } +func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{38} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{38} +} +func (m *RequestPagination) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RequestPagination.Unmarshal(m, b) +} +func (m *RequestPagination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RequestPagination.Marshal(b, m, deterministic) +} +func (dst *RequestPagination) XXX_Merge(src proto.Message) { + xxx_messageInfo_RequestPagination.Merge(dst, src) +} +func (m *RequestPagination) XXX_Size() int { + return xxx_messageInfo_RequestPagination.Size(m) +} +func (m *RequestPagination) XXX_DiscardUnknown() { + xxx_messageInfo_RequestPagination.DiscardUnknown(m) } -func (x *RequestPagination) GetPageNumber() int32 { - if x != nil { - return x.PageNumber +var xxx_messageInfo_RequestPagination proto.InternalMessageInfo + +func (m *RequestPagination) GetPageNumber() int32 { + if m != nil { + return m.PageNumber } return 0 } -func (x *RequestPagination) GetShowNumber() int32 { - if x != nil { - return x.ShowNumber +func (m *RequestPagination) GetShowNumber() int32 { + if m != nil { + return m.ShowNumber } return 0 } type ResponsePagination struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CurrentPage int32 `protobuf:"varint,5,opt,name=CurrentPage,proto3" json:"CurrentPage,omitempty"` - ShowNumber int32 `protobuf:"varint,6,opt,name=ShowNumber,proto3" json:"ShowNumber,omitempty"` + CurrentPage int32 `protobuf:"varint,5,opt,name=CurrentPage" json:"CurrentPage,omitempty"` + ShowNumber int32 `protobuf:"varint,6,opt,name=ShowNumber" json:"ShowNumber,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } -func (x *ResponsePagination) Reset() { - *x = ResponsePagination{} - if protoimpl.UnsafeEnabled { - mi := &file_sdk_ws_ws_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ResponsePagination) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ResponsePagination) ProtoMessage() {} - -func (x *ResponsePagination) ProtoReflect() protoreflect.Message { - mi := &file_sdk_ws_ws_proto_msgTypes[39] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ResponsePagination.ProtoReflect.Descriptor instead. +func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } +func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } +func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return file_sdk_ws_ws_proto_rawDescGZIP(), []int{39} + return fileDescriptor_ws_c5eabd6c93a174c0, []int{39} +} +func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) +} +func (m *ResponsePagination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ResponsePagination.Marshal(b, m, deterministic) +} +func (dst *ResponsePagination) XXX_Merge(src proto.Message) { + xxx_messageInfo_ResponsePagination.Merge(dst, src) +} +func (m *ResponsePagination) XXX_Size() int { + return xxx_messageInfo_ResponsePagination.Size(m) +} +func (m *ResponsePagination) XXX_DiscardUnknown() { + xxx_messageInfo_ResponsePagination.DiscardUnknown(m) } -func (x *ResponsePagination) GetCurrentPage() int32 { - if x != nil { - return x.CurrentPage +var xxx_messageInfo_ResponsePagination proto.InternalMessageInfo + +func (m *ResponsePagination) GetCurrentPage() int32 { + if m != nil { + return m.CurrentPage } return 0 } -func (x *ResponsePagination) GetShowNumber() int32 { - if x != nil { - return x.ShowNumber +func (m *ResponsePagination) GetShowNumber() int32 { + if m != nil { + return m.ShowNumber } return 0 } -var File_sdk_ws_ws_proto protoreflect.FileDescriptor - -var file_sdk_ws_ws_proto_rawDesc = []byte{ - 0x0a, 0x0f, 0x73, 0x64, 0x6b, 0x5f, 0x77, 0x73, 0x2f, 0x77, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6e, 0x6f, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, - 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, - 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x79, 0x70, 0x65, 0x22, 0xb7, 0x02, 0x0a, - 0x13, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16, - 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, - 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, - 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1e, - 0x0a, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x6a, 0x6f, 0x69, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, - 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0x76, 0x0a, 0x0e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, - 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x16, 0x0a, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0x96, - 0x02, 0x0a, 0x08, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x66, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x16, 0x0a, 0x06, 0x67, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x67, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x62, 0x69, 0x72, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x62, 0x69, 0x72, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, - 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x26, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x4d, 0x61, 0x6e, 0x67, - 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0xf9, 0x01, 0x0a, 0x0a, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, - 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, - 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, - 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x0a, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x0a, - 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x65, 0x78, 0x22, 0xec, 0x01, 0x0a, 0x09, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x0d, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x62, - 0x6c, 0x61, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, - 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x61, 0x64, 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x65, 0x78, 0x22, 0xd1, 0x02, 0x0a, 0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x3a, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, - 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x71, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x22, 0xdb, 0x03, 0x0a, 0x0d, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, - 0x6f, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, - 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x66, 0x72, 0x6f, 0x6d, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, - 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x66, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x1e, - 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x47, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x47, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x1a, - 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, - 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x74, 0x6f, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, - 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, - 0x6f, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x47, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x6f, 0x47, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x75, 0x6c, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x71, 0x4d, - 0x73, 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, - 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x72, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x4d, 0x73, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, - 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x65, 0x78, 0x22, 0x7c, 0x0a, 0x18, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x18, 0x0a, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x07, 0x65, 0x72, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, - 0x72, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x4d, - 0x73, 0x67, 0x12, 0x2e, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6c, 0x69, - 0x73, 0x74, 0x22, 0x6d, 0x0a, 0x17, 0x50, 0x75, 0x6c, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x42, 0x79, 0x53, 0x65, 0x71, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x71, 0x4c, 0x69, - 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x73, 0x65, 0x71, 0x4c, 0x69, 0x73, - 0x74, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x61, 0x78, 0x41, 0x6e, 0x64, 0x4d, 0x69, - 0x6e, 0x53, 0x65, 0x71, 0x52, 0x65, 0x71, 0x22, 0x45, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x61, - 0x78, 0x41, 0x6e, 0x64, 0x4d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, - 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x6d, 0x61, 0x78, 0x53, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x71, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x71, 0x22, 0x71, - 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, - 0x67, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, - 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x22, 0xbc, 0x05, 0x0a, 0x07, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x65, 0x6e, 0x64, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x65, 0x6e, 0x64, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x63, 0x76, 0x49, 0x44, 0x12, 0x18, 0x0a, - 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x73, - 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x24, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, 0x63, 0x65, 0x55, 0x52, 0x4c, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x46, 0x61, - 0x63, 0x65, 0x55, 0x52, 0x4c, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, - 0x6f, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x46, 0x72, 0x6f, - 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, - 0x03, 0x73, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, - 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x41, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x12, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, - 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x61, 0x74, 0x61, - 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, - 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x3a, 0x0a, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x95, 0x01, 0x0a, 0x0f, 0x4f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x75, 0x73, 0x68, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, - 0x73, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x65, 0x73, 0x63, 0x12, 0x0e, - 0x0a, 0x02, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x65, 0x78, 0x12, 0x22, - 0x0a, 0x0c, 0x69, 0x4f, 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x4f, 0x53, 0x50, 0x75, 0x73, 0x68, 0x53, 0x6f, 0x75, - 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x4f, 0x53, 0x42, 0x61, 0x64, 0x67, 0x65, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x4f, 0x53, 0x42, 0x61, - 0x64, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x64, 0x0a, 0x08, 0x54, 0x69, 0x70, 0x73, - 0x43, 0x6f, 0x6d, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, - 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x69, 0x70, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x6a, 0x73, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x6a, 0x73, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0xc4, - 0x02, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, - 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4e, 0x0a, 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, - 0x6e, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, - 0x72, 0x55, 0x73, 0x65, 0x72, 0x22, 0xa2, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x53, 0x65, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, 0x3e, 0x0a, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x75, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6d, 0x75, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0xa7, 0x01, 0x0a, 0x18, 0x4a, - 0x6f, 0x69, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, - 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3f, 0x0a, 0x09, 0x61, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x71, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x71, 0x4d, 0x73, 0x67, 0x22, 0xae, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x51, - 0x75, 0x69, 0x74, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, - 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x42, 0x0a, 0x08, 0x71, - 0x75, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x71, 0x75, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, - 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, - 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, - 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, - 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0xb0, 0x01, 0x0a, 0x1c, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1c, 0x0a, - 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0x83, 0x02, 0x0a, 0x19, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x72, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, - 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x4c, 0x0a, - 0x0d, 0x6e, 0x65, 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, - 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x6e, 0x65, - 0x77, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, - 0x65, 0x22, 0xfc, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4b, 0x69, 0x63, 0x6b, - 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x0e, 0x6b, 0x69, - 0x63, 0x6b, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0e, 0x6b, 0x69, 0x63, 0x6b, - 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x22, 0xff, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3e, 0x0a, 0x06, 0x6f, 0x70, - 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x0f, 0x69, 0x6e, - 0x76, 0x69, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x46, 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x69, 0x6e, 0x76, - 0x69, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0xb5, 0x01, 0x0a, 0x0f, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x45, 0x6e, 0x74, - 0x65, 0x72, 0x54, 0x69, 0x70, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x48, 0x0a, 0x0b, 0x65, 0x6e, - 0x74, 0x72, 0x61, 0x6e, 0x74, 0x55, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x26, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x46, - 0x75, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x6b, 0x0a, 0x11, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x07, 0x61, 0x64, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, - 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, - 0x64, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x64, 0x64, 0x57, 0x6f, - 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x64, 0x64, - 0x57, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x4a, 0x0a, 0x0c, 0x46, 0x72, 0x6f, 0x6d, 0x54, - 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x72, 0x6f, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x72, 0x6f, - 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x22, 0x5c, 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, - 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, - 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x54, - 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, - 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, - 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x61, 0x6e, - 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6a, 0x65, - 0x63, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, - 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, - 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, - 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x22, 0xa9, 0x01, 0x0a, 0x0f, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, - 0x35, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1d, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, - 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x06, - 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x73, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x6f, 0x70, 0x55, 0x73, 0x65, 0x72, 0x22, 0x58, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, - 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x22, 0x55, 0x0a, 0x0e, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x54, - 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, - 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, - 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x57, 0x0a, 0x10, 0x42, 0x6c, 0x61, 0x63, - 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, - 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x22, 0x5c, 0x0a, 0x15, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x66, 0x72, - 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1f, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x46, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x52, 0x0c, 0x66, 0x72, 0x6f, 0x6d, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, - 0x2d, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x54, 0x69, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x30, - 0x0a, 0x16, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, - 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x22, 0x53, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x68, 0x6f, 0x77, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x56, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x43, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0b, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x1c, 0x5a, - 0x1a, 0x2e, 0x2f, 0x73, 0x64, 0x6b, 0x5f, 0x77, 0x73, 0x3b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, - 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, +func init() { + proto.RegisterType((*GroupInfo)(nil), "server_api_params.GroupInfo") + proto.RegisterType((*GroupMemberFullInfo)(nil), "server_api_params.GroupMemberFullInfo") + proto.RegisterType((*PublicUserInfo)(nil), "server_api_params.PublicUserInfo") + proto.RegisterType((*UserInfo)(nil), "server_api_params.UserInfo") + proto.RegisterType((*FriendInfo)(nil), "server_api_params.FriendInfo") + proto.RegisterType((*BlackInfo)(nil), "server_api_params.BlackInfo") + proto.RegisterType((*GroupRequest)(nil), "server_api_params.GroupRequest") + proto.RegisterType((*FriendRequest)(nil), "server_api_params.FriendRequest") + proto.RegisterType((*PullMessageBySeqListResp)(nil), "server_api_params.PullMessageBySeqListResp") + proto.RegisterType((*PullMessageBySeqListReq)(nil), "server_api_params.PullMessageBySeqListReq") + proto.RegisterType((*GetMaxAndMinSeqReq)(nil), "server_api_params.GetMaxAndMinSeqReq") + proto.RegisterType((*GetMaxAndMinSeqResp)(nil), "server_api_params.GetMaxAndMinSeqResp") + proto.RegisterType((*UserSendMsgResp)(nil), "server_api_params.UserSendMsgResp") + proto.RegisterType((*MsgData)(nil), "server_api_params.MsgData") + proto.RegisterMapType((map[string]bool)(nil), "server_api_params.MsgData.OptionsEntry") + proto.RegisterType((*OfflinePushInfo)(nil), "server_api_params.OfflinePushInfo") + proto.RegisterType((*TipsComm)(nil), "server_api_params.TipsComm") + proto.RegisterType((*GroupCreatedTips)(nil), "server_api_params.GroupCreatedTips") + proto.RegisterType((*GroupInfoSetTips)(nil), "server_api_params.GroupInfoSetTips") + proto.RegisterType((*JoinGroupApplicationTips)(nil), "server_api_params.JoinGroupApplicationTips") + proto.RegisterType((*MemberQuitTips)(nil), "server_api_params.MemberQuitTips") + proto.RegisterType((*GroupApplicationAcceptedTips)(nil), "server_api_params.GroupApplicationAcceptedTips") + proto.RegisterType((*GroupApplicationRejectedTips)(nil), "server_api_params.GroupApplicationRejectedTips") + proto.RegisterType((*GroupOwnerTransferredTips)(nil), "server_api_params.GroupOwnerTransferredTips") + proto.RegisterType((*MemberKickedTips)(nil), "server_api_params.MemberKickedTips") + proto.RegisterType((*MemberInvitedTips)(nil), "server_api_params.MemberInvitedTips") + proto.RegisterType((*MemberEnterTips)(nil), "server_api_params.MemberEnterTips") + proto.RegisterType((*FriendApplication)(nil), "server_api_params.FriendApplication") + proto.RegisterType((*FromToUserID)(nil), "server_api_params.FromToUserID") + proto.RegisterType((*FriendApplicationTips)(nil), "server_api_params.FriendApplicationTips") + proto.RegisterType((*FriendApplicationApprovedTips)(nil), "server_api_params.FriendApplicationApprovedTips") + proto.RegisterType((*FriendApplicationRejectedTips)(nil), "server_api_params.FriendApplicationRejectedTips") + proto.RegisterType((*FriendAddedTips)(nil), "server_api_params.FriendAddedTips") + proto.RegisterType((*FriendDeletedTips)(nil), "server_api_params.FriendDeletedTips") + proto.RegisterType((*BlackAddedTips)(nil), "server_api_params.BlackAddedTips") + proto.RegisterType((*BlackDeletedTips)(nil), "server_api_params.BlackDeletedTips") + proto.RegisterType((*FriendInfoChangedTips)(nil), "server_api_params.FriendInfoChangedTips") + proto.RegisterType((*UserInfoUpdatedTips)(nil), "server_api_params.UserInfoUpdatedTips") + proto.RegisterType((*ConversationUpdateTips)(nil), "server_api_params.ConversationUpdateTips") + proto.RegisterType((*RequestPagination)(nil), "server_api_params.RequestPagination") + proto.RegisterType((*ResponsePagination)(nil), "server_api_params.ResponsePagination") } -var ( - file_sdk_ws_ws_proto_rawDescOnce sync.Once - file_sdk_ws_ws_proto_rawDescData = file_sdk_ws_ws_proto_rawDesc -) +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_c5eabd6c93a174c0) } -func file_sdk_ws_ws_proto_rawDescGZIP() []byte { - file_sdk_ws_ws_proto_rawDescOnce.Do(func() { - file_sdk_ws_ws_proto_rawDescData = protoimpl.X.CompressGZIP(file_sdk_ws_ws_proto_rawDescData) - }) - return file_sdk_ws_ws_proto_rawDescData -} - -var file_sdk_ws_ws_proto_msgTypes = make([]protoimpl.MessageInfo, 41) -var file_sdk_ws_ws_proto_goTypes = []interface{}{ - (*GroupInfo)(nil), // 0: server_api_params.GroupInfo - (*GroupMemberFullInfo)(nil), // 1: server_api_params.GroupMemberFullInfo - (*PublicUserInfo)(nil), // 2: server_api_params.PublicUserInfo - (*UserInfo)(nil), // 3: server_api_params.UserInfo - (*FriendInfo)(nil), // 4: server_api_params.FriendInfo - (*BlackInfo)(nil), // 5: server_api_params.BlackInfo - (*GroupRequest)(nil), // 6: server_api_params.GroupRequest - (*FriendRequest)(nil), // 7: server_api_params.FriendRequest - (*PullMessageBySeqListResp)(nil), // 8: server_api_params.PullMessageBySeqListResp - (*PullMessageBySeqListReq)(nil), // 9: server_api_params.PullMessageBySeqListReq - (*GetMaxAndMinSeqReq)(nil), // 10: server_api_params.GetMaxAndMinSeqReq - (*GetMaxAndMinSeqResp)(nil), // 11: server_api_params.GetMaxAndMinSeqResp - (*UserSendMsgResp)(nil), // 12: server_api_params.UserSendMsgResp - (*MsgData)(nil), // 13: server_api_params.MsgData - (*OfflinePushInfo)(nil), // 14: server_api_params.OfflinePushInfo - (*TipsComm)(nil), // 15: server_api_params.TipsComm - (*GroupCreatedTips)(nil), // 16: server_api_params.GroupCreatedTips - (*GroupInfoSetTips)(nil), // 17: server_api_params.GroupInfoSetTips - (*JoinGroupApplicationTips)(nil), // 18: server_api_params.JoinGroupApplicationTips - (*MemberQuitTips)(nil), // 19: server_api_params.MemberQuitTips - (*GroupApplicationAcceptedTips)(nil), // 20: server_api_params.GroupApplicationAcceptedTips - (*GroupApplicationRejectedTips)(nil), // 21: server_api_params.GroupApplicationRejectedTips - (*GroupOwnerTransferredTips)(nil), // 22: server_api_params.GroupOwnerTransferredTips - (*MemberKickedTips)(nil), // 23: server_api_params.MemberKickedTips - (*MemberInvitedTips)(nil), // 24: server_api_params.MemberInvitedTips - (*MemberEnterTips)(nil), // 25: server_api_params.MemberEnterTips - (*FriendApplication)(nil), // 26: server_api_params.FriendApplication - (*FromToUserID)(nil), // 27: server_api_params.FromToUserID - (*FriendApplicationTips)(nil), // 28: server_api_params.FriendApplicationTips - (*FriendApplicationApprovedTips)(nil), // 29: server_api_params.FriendApplicationApprovedTips - (*FriendApplicationRejectedTips)(nil), // 30: server_api_params.FriendApplicationRejectedTips - (*FriendAddedTips)(nil), // 31: server_api_params.FriendAddedTips - (*FriendDeletedTips)(nil), // 32: server_api_params.FriendDeletedTips - (*BlackAddedTips)(nil), // 33: server_api_params.BlackAddedTips - (*BlackDeletedTips)(nil), // 34: server_api_params.BlackDeletedTips - (*FriendInfoChangedTips)(nil), // 35: server_api_params.FriendInfoChangedTips - (*UserInfoUpdatedTips)(nil), // 36: server_api_params.UserInfoUpdatedTips - (*ConversationUpdateTips)(nil), // 37: server_api_params.ConversationUpdateTips - (*RequestPagination)(nil), // 38: server_api_params.RequestPagination - (*ResponsePagination)(nil), // 39: server_api_params.ResponsePagination - nil, // 40: server_api_params.MsgData.OptionsEntry -} -var file_sdk_ws_ws_proto_depIdxs = []int32{ - 3, // 0: server_api_params.FriendInfo.friendUser:type_name -> server_api_params.UserInfo - 2, // 1: server_api_params.BlackInfo.blackUserInfo:type_name -> server_api_params.PublicUserInfo - 2, // 2: server_api_params.GroupRequest.userInfo:type_name -> server_api_params.PublicUserInfo - 0, // 3: server_api_params.GroupRequest.groupInfo:type_name -> server_api_params.GroupInfo - 13, // 4: server_api_params.PullMessageBySeqListResp.list:type_name -> server_api_params.MsgData - 40, // 5: server_api_params.MsgData.options:type_name -> server_api_params.MsgData.OptionsEntry - 14, // 6: server_api_params.MsgData.offlinePushInfo:type_name -> server_api_params.OfflinePushInfo - 0, // 7: server_api_params.GroupCreatedTips.group:type_name -> server_api_params.GroupInfo - 1, // 8: server_api_params.GroupCreatedTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 1, // 9: server_api_params.GroupCreatedTips.memberList:type_name -> server_api_params.GroupMemberFullInfo - 1, // 10: server_api_params.GroupCreatedTips.groupOwnerUser:type_name -> server_api_params.GroupMemberFullInfo - 1, // 11: server_api_params.GroupInfoSetTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 0, // 12: server_api_params.GroupInfoSetTips.group:type_name -> server_api_params.GroupInfo - 0, // 13: server_api_params.JoinGroupApplicationTips.group:type_name -> server_api_params.GroupInfo - 2, // 14: server_api_params.JoinGroupApplicationTips.applicant:type_name -> server_api_params.PublicUserInfo - 0, // 15: server_api_params.MemberQuitTips.group:type_name -> server_api_params.GroupInfo - 1, // 16: server_api_params.MemberQuitTips.quitUser:type_name -> server_api_params.GroupMemberFullInfo - 0, // 17: server_api_params.GroupApplicationAcceptedTips.group:type_name -> server_api_params.GroupInfo - 1, // 18: server_api_params.GroupApplicationAcceptedTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 0, // 19: server_api_params.GroupApplicationRejectedTips.group:type_name -> server_api_params.GroupInfo - 1, // 20: server_api_params.GroupApplicationRejectedTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 0, // 21: server_api_params.GroupOwnerTransferredTips.group:type_name -> server_api_params.GroupInfo - 1, // 22: server_api_params.GroupOwnerTransferredTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 1, // 23: server_api_params.GroupOwnerTransferredTips.newGroupOwner:type_name -> server_api_params.GroupMemberFullInfo - 0, // 24: server_api_params.MemberKickedTips.group:type_name -> server_api_params.GroupInfo - 1, // 25: server_api_params.MemberKickedTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 1, // 26: server_api_params.MemberKickedTips.kickedUserList:type_name -> server_api_params.GroupMemberFullInfo - 0, // 27: server_api_params.MemberInvitedTips.group:type_name -> server_api_params.GroupInfo - 1, // 28: server_api_params.MemberInvitedTips.opUser:type_name -> server_api_params.GroupMemberFullInfo - 1, // 29: server_api_params.MemberInvitedTips.invitedUserList:type_name -> server_api_params.GroupMemberFullInfo - 0, // 30: server_api_params.MemberEnterTips.group:type_name -> server_api_params.GroupInfo - 1, // 31: server_api_params.MemberEnterTips.entrantUser:type_name -> server_api_params.GroupMemberFullInfo - 27, // 32: server_api_params.FriendApplicationTips.fromToUserID:type_name -> server_api_params.FromToUserID - 27, // 33: server_api_params.FriendApplicationApprovedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 27, // 34: server_api_params.FriendApplicationRejectedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 4, // 35: server_api_params.FriendAddedTips.friend:type_name -> server_api_params.FriendInfo - 2, // 36: server_api_params.FriendAddedTips.opUser:type_name -> server_api_params.PublicUserInfo - 27, // 37: server_api_params.FriendDeletedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 27, // 38: server_api_params.BlackAddedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 27, // 39: server_api_params.BlackDeletedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 27, // 40: server_api_params.FriendInfoChangedTips.fromToUserID:type_name -> server_api_params.FromToUserID - 41, // [41:41] is the sub-list for method output_type - 41, // [41:41] is the sub-list for method input_type - 41, // [41:41] is the sub-list for extension type_name - 41, // [41:41] is the sub-list for extension extendee - 0, // [0:41] is the sub-list for field type_name -} - -func init() { file_sdk_ws_ws_proto_init() } -func file_sdk_ws_ws_proto_init() { - if File_sdk_ws_ws_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_sdk_ws_ws_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupMemberFullInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublicUserInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PullMessageBySeqListResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PullMessageBySeqListReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxAndMinSeqReq); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetMaxAndMinSeqResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserSendMsgResp); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OfflinePushInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TipsComm); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupCreatedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupInfoSetTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JoinGroupApplicationTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberQuitTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationAcceptedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupApplicationRejectedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GroupOwnerTransferredTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberKickedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberInvitedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MemberEnterTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplication); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FromToUserID); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationApprovedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendApplicationRejectedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendAddedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendDeletedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackAddedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BlackDeletedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*FriendInfoChangedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserInfoUpdatedTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ConversationUpdateTips); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RequestPagination); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_sdk_ws_ws_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ResponsePagination); 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_sdk_ws_ws_proto_rawDesc, - NumEnums: 0, - NumMessages: 41, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_sdk_ws_ws_proto_goTypes, - DependencyIndexes: file_sdk_ws_ws_proto_depIdxs, - MessageInfos: file_sdk_ws_ws_proto_msgTypes, - }.Build() - File_sdk_ws_ws_proto = out.File - file_sdk_ws_ws_proto_rawDesc = nil - file_sdk_ws_ws_proto_goTypes = nil - file_sdk_ws_ws_proto_depIdxs = nil +var fileDescriptor_ws_c5eabd6c93a174c0 = []byte{ + // 2006 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0x4f, 0x6f, 0x23, 0x49, + 0x15, 0x57, 0xdb, 0xb1, 0x13, 0x3f, 0xc7, 0x71, 0xd2, 0xb3, 0x04, 0x13, 0x66, 0x87, 0xd0, 0x5a, + 0x2d, 0x23, 0x24, 0xb2, 0x68, 0x10, 0x12, 0xec, 0x0a, 0x50, 0xfe, 0x4c, 0xc2, 0x2c, 0x71, 0x12, + 0xda, 0x19, 0x16, 0x21, 0xa4, 0x51, 0xc7, 0xfd, 0xec, 0xf4, 0xa6, 0x5d, 0xd5, 0xae, 0xea, 0x4e, + 0x66, 0x24, 0x4e, 0x20, 0xf1, 0x0d, 0xe0, 0x03, 0x70, 0x41, 0x5c, 0x10, 0x17, 0xc4, 0x85, 0x23, + 0x5f, 0x80, 0x33, 0x5f, 0x81, 0x2b, 0x07, 0x24, 0x24, 0x50, 0xfd, 0xe9, 0xee, 0xaa, 0xb6, 0x93, + 0xb5, 0xa2, 0x68, 0x87, 0x9b, 0xdf, 0xaf, 0xeb, 0xbd, 0x7a, 0xff, 0xeb, 0x55, 0x19, 0xba, 0x3c, + 0xbc, 0x7a, 0x75, 0xc3, 0x3f, 0xb8, 0xe1, 0x3b, 0x09, 0xa3, 0x29, 0x75, 0x37, 0x38, 0xb2, 0x6b, + 0x64, 0xaf, 0x82, 0x24, 0x7a, 0x95, 0x04, 0x2c, 0x98, 0x70, 0xef, 0x5f, 0x35, 0x68, 0x1d, 0x31, + 0x9a, 0x25, 0x2f, 0xc8, 0x88, 0xba, 0x3d, 0x58, 0x1e, 0x4b, 0xe2, 0xa0, 0xe7, 0x6c, 0x3b, 0x4f, + 0x5b, 0x7e, 0x4e, 0xba, 0x8f, 0xa1, 0x25, 0x7f, 0x9e, 0x04, 0x13, 0xec, 0xd5, 0xe4, 0xb7, 0x12, + 0x70, 0x3d, 0x58, 0x25, 0x34, 0x8d, 0x46, 0xd1, 0x30, 0x48, 0x23, 0x4a, 0x7a, 0x75, 0xb9, 0xc0, + 0xc2, 0xc4, 0x9a, 0x88, 0xa4, 0x8c, 0x86, 0xd9, 0x50, 0xae, 0x59, 0x52, 0x6b, 0x4c, 0x4c, 0xec, + 0x3f, 0x0a, 0x86, 0xf8, 0xd2, 0x3f, 0xee, 0x35, 0xd4, 0xfe, 0x9a, 0x74, 0xb7, 0xa1, 0x4d, 0x6f, + 0x08, 0xb2, 0x97, 0x1c, 0xd9, 0x8b, 0x83, 0x5e, 0x53, 0x7e, 0x35, 0x21, 0xf7, 0x09, 0xc0, 0x90, + 0x61, 0x90, 0xe2, 0x79, 0x34, 0xc1, 0xde, 0xf2, 0xb6, 0xf3, 0xb4, 0xe3, 0x1b, 0x88, 0x90, 0x30, + 0xc1, 0xc9, 0x05, 0xb2, 0x7d, 0x9a, 0x91, 0xb4, 0xb7, 0x22, 0x17, 0x98, 0x90, 0xbb, 0x06, 0x35, + 0x7c, 0xdd, 0x6b, 0x49, 0xd1, 0x35, 0x7c, 0xed, 0x6e, 0x42, 0x93, 0xa7, 0x41, 0x9a, 0xf1, 0x1e, + 0x6c, 0x3b, 0x4f, 0x1b, 0xbe, 0xa6, 0xdc, 0xf7, 0xa0, 0x23, 0xe5, 0xd2, 0x5c, 0x9b, 0xb6, 0x64, + 0xb1, 0xc1, 0xc2, 0x63, 0xe7, 0x6f, 0x12, 0xec, 0xad, 0x4a, 0x01, 0x25, 0xe0, 0xfd, 0xa5, 0x06, + 0x8f, 0xa4, 0xdf, 0xfb, 0x52, 0x81, 0xc3, 0x2c, 0x8e, 0x3f, 0x23, 0x02, 0x9b, 0xd0, 0xcc, 0xd4, + 0x76, 0xca, 0xfd, 0x9a, 0x12, 0xfb, 0x30, 0x1a, 0xe3, 0x31, 0x5e, 0x63, 0x2c, 0x1d, 0xdf, 0xf0, + 0x4b, 0xc0, 0xdd, 0x82, 0x95, 0x4f, 0x69, 0x44, 0xa4, 0x4f, 0x84, 0xc7, 0xeb, 0x7e, 0x41, 0x8b, + 0x6f, 0x24, 0x1a, 0x5e, 0x11, 0x11, 0x52, 0xe5, 0xee, 0x82, 0x36, 0x23, 0xd1, 0xb4, 0x23, 0xf1, + 0x3e, 0xac, 0x05, 0x49, 0xd2, 0x0f, 0xc8, 0x18, 0x99, 0xda, 0x74, 0x59, 0x6e, 0x5a, 0x41, 0x45, + 0x3c, 0xc4, 0x4e, 0x03, 0x9a, 0xb1, 0x21, 0x4a, 0x77, 0x37, 0x7c, 0x03, 0x11, 0x72, 0x68, 0x82, + 0xcc, 0x70, 0xa3, 0xf2, 0x7c, 0x05, 0xd5, 0x51, 0x81, 0x3c, 0x2a, 0xde, 0xaf, 0x1d, 0x58, 0x3b, + 0xcb, 0x2e, 0xe2, 0x68, 0x28, 0x17, 0x08, 0xa7, 0x95, 0xae, 0x71, 0x2c, 0xd7, 0x98, 0x06, 0xd6, + 0x6e, 0x37, 0xb0, 0x6e, 0x1b, 0xb8, 0x09, 0xcd, 0x31, 0x92, 0x10, 0x99, 0x74, 0x58, 0xc3, 0xd7, + 0x94, 0x56, 0xa4, 0x51, 0x28, 0xf2, 0xdb, 0x1a, 0xac, 0x7c, 0xce, 0x2a, 0x6c, 0x43, 0x3b, 0xb9, + 0xa4, 0x04, 0x4f, 0x32, 0x91, 0x34, 0x5a, 0x17, 0x13, 0x72, 0xdf, 0x81, 0xc6, 0x45, 0xc4, 0xd2, + 0x4b, 0x19, 0xb5, 0x8e, 0xaf, 0x08, 0x81, 0xe2, 0x24, 0x88, 0x54, 0xa8, 0x5a, 0xbe, 0x22, 0xb4, + 0x41, 0x2b, 0x45, 0xbe, 0xdb, 0x15, 0xd4, 0x9a, 0xa9, 0xa0, 0xd9, 0xc8, 0xc3, 0xbc, 0xc8, 0x7b, + 0xff, 0x76, 0x00, 0x0e, 0x59, 0x84, 0x24, 0x94, 0xae, 0xa9, 0x94, 0xae, 0x33, 0x5b, 0xba, 0x9b, + 0xd0, 0x64, 0x38, 0x09, 0xd8, 0x55, 0x9e, 0xda, 0x8a, 0xaa, 0x28, 0x54, 0x9f, 0x51, 0xe8, 0x23, + 0x80, 0x91, 0xdc, 0x47, 0xc8, 0x91, 0xae, 0x6a, 0x3f, 0xfb, 0xf2, 0xce, 0x4c, 0x93, 0xdb, 0xc9, + 0xa3, 0xe4, 0x1b, 0xcb, 0x45, 0xdd, 0x04, 0x61, 0xa8, 0xd3, 0xb3, 0xa1, 0xea, 0xa6, 0x00, 0xe6, + 0x64, 0x67, 0xf3, 0x8e, 0xec, 0x5c, 0x2e, 0x92, 0xe2, 0x9f, 0x0e, 0xb4, 0xf6, 0xe2, 0x60, 0x78, + 0xb5, 0xa0, 0xe9, 0xb6, 0x89, 0xb5, 0x19, 0x13, 0x8f, 0xa0, 0x73, 0x21, 0xc4, 0xe5, 0x26, 0x48, + 0x2f, 0xb4, 0x9f, 0x7d, 0x75, 0x8e, 0x95, 0x76, 0x51, 0xf8, 0x36, 0x9f, 0x6d, 0xee, 0xd2, 0x67, + 0x9b, 0xdb, 0xb8, 0xc3, 0xdc, 0x66, 0x61, 0xee, 0xdf, 0x6b, 0xb0, 0x2a, 0xdb, 0x98, 0x8f, 0xd3, + 0x0c, 0x79, 0xea, 0x7e, 0x0f, 0x56, 0xb2, 0x5c, 0x55, 0x67, 0x51, 0x55, 0x0b, 0x16, 0xf7, 0x43, + 0xdd, 0x34, 0x25, 0x7f, 0x4d, 0xf2, 0x3f, 0x9e, 0xc3, 0x5f, 0x9c, 0x58, 0x7e, 0xb9, 0x5c, 0x1c, + 0x30, 0x97, 0x01, 0x09, 0x63, 0xf4, 0x91, 0x67, 0x71, 0xaa, 0x7b, 0xa1, 0x85, 0xa9, 0x4c, 0x9b, + 0xf6, 0xf9, 0x58, 0x1f, 0x3f, 0x9a, 0x12, 0xde, 0x51, 0xeb, 0xc4, 0x27, 0x65, 0x7a, 0x09, 0x88, + 0x42, 0x65, 0x38, 0x95, 0x11, 0x52, 0x65, 0x95, 0x93, 0xe5, 0x9e, 0xda, 0x6b, 0x2a, 0x11, 0x2c, + 0x4c, 0x84, 0x58, 0xd1, 0x52, 0x80, 0x3a, 0x77, 0x0c, 0xa4, 0x7a, 0xec, 0x78, 0xff, 0xa8, 0x43, + 0x47, 0x95, 0x4f, 0xee, 0xd4, 0x27, 0x22, 0xcf, 0xe9, 0xc4, 0xca, 0x22, 0x03, 0x11, 0x5a, 0x08, + 0xea, 0xc4, 0x6e, 0x34, 0x16, 0x26, 0x52, 0x51, 0xd0, 0x87, 0x56, 0xc3, 0x31, 0xa1, 0x7c, 0x97, + 0x23, 0xb3, 0xf1, 0x18, 0x88, 0x68, 0x65, 0x29, 0xb5, 0xb2, 0xa3, 0xa0, 0x05, 0x6f, 0x4a, 0x8b, + 0xfd, 0x55, 0x7e, 0x18, 0x88, 0xf0, 0x6f, 0x4a, 0xf3, 0xbd, 0x95, 0x93, 0x4a, 0x40, 0x49, 0xd6, + 0xfb, 0xaa, 0x83, 0xa2, 0xa0, 0x67, 0xa2, 0xda, 0xba, 0x33, 0xaa, 0x60, 0x45, 0xd5, 0x2e, 0xae, + 0xf6, 0x4c, 0x71, 0xbd, 0x07, 0x1d, 0x25, 0x27, 0x4f, 0xfa, 0x55, 0x75, 0x90, 0x5b, 0xa0, 0x9d, + 0x1b, 0x9d, 0x6a, 0x6e, 0xd8, 0xd1, 0x5d, 0xbb, 0x25, 0xba, 0xdd, 0x22, 0xba, 0xbf, 0x80, 0xde, + 0x59, 0x16, 0xc7, 0x7d, 0xe4, 0x3c, 0x18, 0xe3, 0xde, 0x9b, 0x01, 0x4e, 0x8f, 0x23, 0x9e, 0xfa, + 0xc8, 0x13, 0x91, 0x67, 0xc8, 0xd8, 0x3e, 0x0d, 0x51, 0x06, 0xb9, 0xe1, 0xe7, 0xa4, 0xb0, 0x10, + 0x19, 0x13, 0x0a, 0xe8, 0x0e, 0xa9, 0x28, 0x77, 0x07, 0x96, 0xe2, 0x88, 0x8b, 0x5c, 0xaf, 0x3f, + 0x6d, 0x3f, 0xdb, 0x9a, 0x53, 0x2a, 0x7d, 0x3e, 0x3e, 0x08, 0xd2, 0xc0, 0x97, 0xeb, 0xbc, 0x09, + 0x7c, 0x71, 0xfe, 0xee, 0xd3, 0x5b, 0x4f, 0x30, 0xd1, 0xc3, 0x64, 0x13, 0x88, 0x28, 0x29, 0x86, + 0x0f, 0x13, 0x12, 0x6a, 0x73, 0x25, 0x47, 0xea, 0xd1, 0xf1, 0x73, 0xd2, 0x7b, 0x07, 0xdc, 0x23, + 0x4c, 0xfb, 0xc1, 0xeb, 0x5d, 0x12, 0xf6, 0x23, 0x32, 0xc0, 0xa9, 0x8f, 0x53, 0xef, 0x39, 0x3c, + 0x9a, 0x41, 0x79, 0x22, 0x14, 0x98, 0x04, 0xaf, 0x07, 0x38, 0x95, 0x0a, 0x74, 0x7c, 0x4d, 0x49, + 0x5c, 0xae, 0xd2, 0xed, 0x51, 0x53, 0xde, 0x14, 0xba, 0x22, 0x42, 0x03, 0x24, 0x61, 0x9f, 0x8f, + 0xa5, 0x88, 0x6d, 0x68, 0x2b, 0x0f, 0xf4, 0xf9, 0xb8, 0xec, 0xb7, 0x06, 0x24, 0x56, 0x0c, 0xe3, + 0x08, 0x49, 0xaa, 0x56, 0x68, 0x6b, 0x0c, 0x48, 0x24, 0x23, 0x47, 0x12, 0x16, 0x47, 0x4e, 0xdd, + 0x2f, 0x68, 0xef, 0xaf, 0x0d, 0x58, 0xd6, 0x0e, 0x95, 0xd3, 0xa1, 0x38, 0xe2, 0x0a, 0x7f, 0x29, + 0x4a, 0x25, 0xe3, 0xf0, 0xba, 0x9c, 0xd3, 0x14, 0x65, 0x4e, 0x76, 0x75, 0x7b, 0xb2, 0xab, 0xe8, + 0xb4, 0x34, 0xab, 0x53, 0xc5, 0xae, 0xc6, 0xac, 0x5d, 0x5f, 0x87, 0x75, 0x2e, 0x0b, 0xe6, 0x2c, + 0x0e, 0xd2, 0x11, 0x65, 0x13, 0x7d, 0x62, 0x35, 0xfc, 0x19, 0x5c, 0x34, 0x7b, 0x85, 0x15, 0x05, + 0xab, 0x2a, 0xb2, 0x82, 0x8a, 0xf2, 0x50, 0x48, 0x5e, 0xb8, 0x6a, 0x54, 0xb0, 0x41, 0xa5, 0x1b, + 0xe7, 0x11, 0x25, 0x72, 0xd2, 0x55, 0xf5, 0x69, 0x42, 0xc2, 0xf2, 0x09, 0x1f, 0x1f, 0x32, 0x3a, + 0xd1, 0x03, 0x43, 0x4e, 0x4a, 0xcb, 0x29, 0x49, 0x91, 0xa4, 0x92, 0xb7, 0xad, 0x78, 0x0d, 0x48, + 0xf0, 0x6a, 0x52, 0x16, 0xe7, 0xaa, 0x9f, 0x93, 0xee, 0x3a, 0xd4, 0x39, 0x4e, 0x75, 0xc5, 0x89, + 0x9f, 0x56, 0xe4, 0xba, 0x76, 0xe4, 0x2a, 0xad, 0x60, 0x5d, 0x7e, 0x35, 0x5b, 0x41, 0x39, 0xeb, + 0x6f, 0x58, 0xb3, 0xfe, 0x2e, 0x2c, 0xd3, 0x44, 0xe4, 0x39, 0xef, 0xb9, 0xb2, 0xc6, 0xbe, 0x76, + 0x7b, 0x8d, 0xed, 0x9c, 0xaa, 0x95, 0xcf, 0x49, 0xca, 0xde, 0xf8, 0x39, 0x9f, 0x7b, 0x0c, 0x5d, + 0x3a, 0x1a, 0xc5, 0x11, 0xc1, 0xb3, 0x8c, 0x5f, 0xca, 0x93, 0xed, 0x91, 0x3c, 0xd9, 0xbc, 0x39, + 0xa2, 0x4e, 0xed, 0x95, 0x7e, 0x95, 0x75, 0xeb, 0x43, 0x58, 0x35, 0xb7, 0x11, 0x6e, 0xb8, 0xc2, + 0x37, 0x3a, 0x07, 0xc5, 0x4f, 0x31, 0xec, 0x5d, 0x07, 0x71, 0xa6, 0x8e, 0x81, 0x15, 0x5f, 0x11, + 0x1f, 0xd6, 0xbe, 0xe3, 0x78, 0xbf, 0x71, 0xa0, 0x5b, 0xd9, 0x40, 0xac, 0x4e, 0xa3, 0x34, 0x46, + 0x2d, 0x41, 0x11, 0xae, 0x0b, 0x4b, 0x21, 0xf2, 0xa1, 0x4e, 0x61, 0xf9, 0x5b, 0x77, 0xb2, 0x7a, + 0x31, 0x2e, 0x8a, 0x0b, 0xdd, 0xe9, 0x40, 0x08, 0x1a, 0xd0, 0x8c, 0x84, 0xc5, 0x85, 0xce, 0xc0, + 0x44, 0x0a, 0x45, 0xa7, 0x83, 0xbd, 0x20, 0x1c, 0xa3, 0xba, 0x76, 0x35, 0xa4, 0x4e, 0x36, 0xe8, + 0x85, 0xb0, 0x72, 0x1e, 0x25, 0x7c, 0x9f, 0x4e, 0x26, 0x22, 0x10, 0x21, 0xa6, 0x62, 0x56, 0x75, + 0x64, 0xbc, 0x35, 0x25, 0x52, 0x25, 0xc4, 0x51, 0x90, 0xc5, 0xa9, 0x58, 0x9a, 0x17, 0xae, 0x01, + 0xc9, 0x0b, 0x07, 0xa7, 0xe4, 0x40, 0x71, 0x2b, 0x3d, 0x0d, 0xc4, 0xfb, 0x5b, 0x0d, 0xd6, 0xe5, + 0xe0, 0xb0, 0x2f, 0xc3, 0x1e, 0x4a, 0xa6, 0x67, 0xd0, 0x90, 0x65, 0xa8, 0x87, 0x95, 0xbb, 0x87, + 0x0d, 0xb5, 0xd4, 0xfd, 0x3e, 0x34, 0x69, 0x22, 0x47, 0x4e, 0x35, 0xa1, 0xbc, 0x7f, 0x1b, 0x93, + 0x7d, 0xb7, 0xf3, 0x35, 0x97, 0x7b, 0x08, 0xa0, 0xae, 0x9d, 0xc7, 0x65, 0xeb, 0x5e, 0x54, 0x86, + 0xc1, 0x29, 0x9c, 0x5b, 0xb4, 0x61, 0xe3, 0x82, 0x67, 0x83, 0xee, 0x09, 0xac, 0x49, 0xb5, 0x4f, + 0xf3, 0xa9, 0x53, 0xc6, 0x60, 0xf1, 0x1d, 0x2b, 0xdc, 0xde, 0xef, 0x1c, 0xed, 0x46, 0xf1, 0x75, + 0x80, 0xca, 0xf7, 0xa5, 0x4b, 0x9c, 0x7b, 0xb9, 0x64, 0x0b, 0x56, 0x26, 0x99, 0x31, 0x04, 0xd7, + 0xfd, 0x82, 0x2e, 0x43, 0x54, 0x5f, 0x38, 0x44, 0xde, 0xef, 0x1d, 0xe8, 0x7d, 0x4c, 0x23, 0x22, + 0x3f, 0xec, 0x26, 0x49, 0xac, 0x5f, 0x21, 0xee, 0x1d, 0xf3, 0x1f, 0x40, 0x2b, 0x50, 0x62, 0x48, + 0xaa, 0xc3, 0xbe, 0xc0, 0x60, 0x5b, 0xf2, 0x18, 0x33, 0x4a, 0xdd, 0x9c, 0x51, 0xbc, 0x3f, 0x3a, + 0xb0, 0xa6, 0x9c, 0xf2, 0xe3, 0x2c, 0x4a, 0xef, 0xad, 0xdf, 0x1e, 0xac, 0x4c, 0xb3, 0x28, 0xbd, + 0x47, 0x56, 0x16, 0x7c, 0xb3, 0xf9, 0x54, 0x9f, 0x93, 0x4f, 0xde, 0x9f, 0x1c, 0x78, 0x5c, 0x75, + 0xeb, 0xee, 0x70, 0x88, 0xc9, 0xdb, 0x2c, 0x29, 0x6b, 0x46, 0x5b, 0xaa, 0xcc, 0x68, 0x73, 0x55, + 0xf6, 0xf1, 0x53, 0x1c, 0xfe, 0xff, 0xaa, 0xfc, 0xab, 0x1a, 0x7c, 0xe9, 0xa8, 0x28, 0xbc, 0x73, + 0x16, 0x10, 0x3e, 0x42, 0xc6, 0xde, 0xa2, 0xbe, 0xc7, 0xd0, 0x21, 0x78, 0x53, 0xea, 0xa4, 0xcb, + 0x71, 0x51, 0x31, 0x36, 0xf3, 0x62, 0xbd, 0xcb, 0xfb, 0x8f, 0x03, 0xeb, 0x4a, 0xce, 0x8f, 0xa2, + 0xe1, 0xd5, 0x5b, 0x34, 0xfe, 0x04, 0xd6, 0xae, 0xa4, 0x06, 0x82, 0xba, 0x47, 0xdb, 0xae, 0x70, + 0x2f, 0x68, 0xfe, 0x7f, 0x1d, 0xd8, 0x50, 0x82, 0x5e, 0x90, 0xeb, 0xe8, 0x6d, 0x26, 0xeb, 0x19, + 0x74, 0x23, 0xa5, 0xc2, 0x3d, 0x1d, 0x50, 0x65, 0x5f, 0xd0, 0x03, 0x7f, 0x76, 0xa0, 0xab, 0x24, + 0x3d, 0x27, 0x29, 0xb2, 0x7b, 0xdb, 0xff, 0x43, 0x68, 0x23, 0x49, 0x59, 0x40, 0xee, 0xd3, 0x21, + 0x4d, 0xd6, 0x05, 0x9b, 0xe4, 0x15, 0x6c, 0xa8, 0x2b, 0xbc, 0xd1, 0x71, 0xc4, 0x2c, 0x1b, 0x84, + 0x6a, 0x3c, 0x75, 0x24, 0x53, 0x4e, 0xda, 0x8f, 0x33, 0xfa, 0x75, 0xbd, 0x7c, 0x9c, 0x79, 0x02, + 0x10, 0x84, 0xe1, 0x27, 0x94, 0x85, 0x11, 0xc9, 0x8f, 0x0f, 0x03, 0xf1, 0x3e, 0x86, 0x55, 0x31, + 0x4d, 0x9f, 0x1b, 0x97, 0xf1, 0x3b, 0x9f, 0x0b, 0xcc, 0x8b, 0x7c, 0xcd, 0xbe, 0xc8, 0x7b, 0x3f, + 0x87, 0x2f, 0xcc, 0x28, 0x2e, 0xbd, 0xbe, 0xaf, 0xde, 0x18, 0xf2, 0x4d, 0xb4, 0xf3, 0xbf, 0x32, + 0xc7, 0x85, 0xa6, 0x2e, 0xbe, 0xc5, 0xe4, 0xfd, 0xd2, 0x81, 0x77, 0x67, 0xc4, 0xef, 0x26, 0x09, + 0xa3, 0xd7, 0x3a, 0xb9, 0x1f, 0x62, 0x1b, 0xbb, 0xb5, 0xd6, 0xaa, 0xad, 0x75, 0xae, 0x12, 0xd6, + 0x71, 0xf0, 0x39, 0x28, 0xf1, 0x07, 0x07, 0xba, 0x5a, 0x89, 0x30, 0xd4, 0xdb, 0x7e, 0x1b, 0x9a, + 0xea, 0x7d, 0x52, 0x6f, 0xf8, 0xee, 0xdc, 0x0d, 0xf3, 0x77, 0x55, 0x5f, 0x2f, 0x9e, 0xcd, 0xc8, + 0xda, 0xbc, 0x31, 0xf0, 0xbb, 0x45, 0x07, 0x58, 0xf8, 0x05, 0x51, 0x33, 0x78, 0x3f, 0xcd, 0x93, + 0xf9, 0x00, 0x63, 0x7c, 0x48, 0x1f, 0x79, 0x2f, 0x61, 0x4d, 0x3e, 0x96, 0x96, 0x3e, 0x78, 0x10, + 0xb1, 0x9f, 0xc0, 0xba, 0x14, 0xfb, 0xe0, 0xfa, 0x16, 0xd5, 0x21, 0xfc, 0xb3, 0x7f, 0x19, 0x90, + 0xf1, 0x43, 0x4a, 0xff, 0x06, 0x3c, 0xca, 0x7d, 0xff, 0x32, 0x09, 0x8b, 0x2b, 0xca, 0x2d, 0x0f, + 0x33, 0xde, 0x37, 0x61, 0x73, 0x9f, 0x92, 0x6b, 0x64, 0x5c, 0x46, 0x59, 0xb1, 0xe4, 0x1c, 0x56, + 0xf1, 0x6b, 0xca, 0x1b, 0xc0, 0x86, 0x7e, 0x52, 0x3c, 0x0b, 0xc6, 0x11, 0x51, 0x5d, 0xe9, 0x09, + 0x40, 0x12, 0x8c, 0xf3, 0xbf, 0x14, 0xd4, 0xbb, 0x93, 0x81, 0x88, 0xef, 0xfc, 0x92, 0xde, 0xe8, + 0xef, 0x35, 0xf5, 0xbd, 0x44, 0xbc, 0x9f, 0x80, 0xeb, 0x23, 0x4f, 0x28, 0xe1, 0x68, 0x48, 0xdd, + 0x86, 0xf6, 0x7e, 0xc6, 0x18, 0x12, 0xb1, 0x55, 0xfe, 0xbe, 0x6e, 0x42, 0x42, 0xee, 0xa0, 0x94, + 0xab, 0xde, 0x2a, 0x0c, 0x64, 0xef, 0xf1, 0xcf, 0xb6, 0x76, 0x3e, 0x50, 0xff, 0x60, 0x7e, 0x34, + 0xe3, 0xc6, 0x8b, 0xa6, 0xfc, 0x47, 0xf3, 0x5b, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x24, 0xc1, + 0xb6, 0xba, 0xe4, 0x1c, 0x00, 0x00, } diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index cb622b96c..7856f4d19 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -40,6 +40,7 @@ message PublicUserInfo{ string nickname = 2; string faceURL = 3; int32 gender = 4; + string ex = 5; } message UserInfo{ @@ -338,37 +339,6 @@ message ConversationUpdateTips{ } -///callback -message CommonCallbackURLReq { - string CallbackCommand = 1 [json_name = "code"]; - string OpenIMServerID = 2; - string OperationID = 3; -} - -message CommonCallbackURLResp { - string Code = 1 [json_name = "code"]; - string Msg = 2 [json_name = "msg"]; - string OperationID = 3 [json_name = "operationID"]; -} - -message CallbackBeforeSendMsgReq { - commonReq CommonCallbackURLReq = 1; - -} - -message CallbackBeforeSendMsgResp { - commonResp CommonCallbackURLResp = 1; - string FromUserID = 2; -} - -message CallbackAfterAddFriendReq { - commonReq CommonCallbackURLReq = 1; -} - -message CallbackAfterAddFriendResp { - commonResp CommonCallbackURLResp = 1; -} - ///cms message RequestPagination { From c4554cb4e9fa4e42475628dfd1890c4835b413e7 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Wed, 9 Mar 2022 11:25:51 +0800 Subject: [PATCH 02/10] 1.statistics log 2. Handle exception : etcd keepalive failed --- internal/msg_gateway/gate/init.go | 4 ++-- internal/msg_transfer/logic/history_msg_handler.go | 4 ++-- internal/push/logic/init.go | 2 +- pkg/grpc-etcdv3/getcdv3/register.go | 10 ++++++++++ pkg/statistics/statistics.go | 7 ++++--- 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/internal/msg_gateway/gate/init.go b/internal/msg_gateway/gate/init.go index a98027561..b827f9928 100644 --- a/internal/msg_gateway/gate/init.go +++ b/internal/msg_gateway/gate/init.go @@ -23,8 +23,8 @@ func Init(rpcPort, wsPort int) { log.NewPrivateLog(config.Config.ModuleName.LongConnSvrName) rwLock = new(sync.RWMutex) validate = validator.New() - statistics.NewStatistics(&sendMsgCount, config.Config.ModuleName.LongConnSvrName, fmt.Sprintf("%d second recv to msg_gateway sendMsgCount", sendMsgCount), 10) - statistics.NewStatistics(&userCount, config.Config.ModuleName.LongConnSvrName, fmt.Sprintf("%d second add user conn", userCount), 10) + statistics.NewStatistics(&sendMsgCount, config.Config.ModuleName.LongConnSvrName, fmt.Sprintf("%d second recv to msg_gateway sendMsgCount", sendMsgCount), 300) + statistics.NewStatistics(&userCount, config.Config.ModuleName.LongConnSvrName, fmt.Sprintf("%d second add user conn", userCount), 300) ws.onInit(wsPort) rpcSvr.onInit(rpcPort) } diff --git a/internal/msg_transfer/logic/history_msg_handler.go b/internal/msg_transfer/logic/history_msg_handler.go index 294b5ed70..1281b1732 100644 --- a/internal/msg_transfer/logic/history_msg_handler.go +++ b/internal/msg_transfer/logic/history_msg_handler.go @@ -26,8 +26,8 @@ type HistoryConsumerHandler struct { } func (mc *HistoryConsumerHandler) Init() { - statistics.NewStatistics(&mc.singleMsgCount, config.Config.ModuleName.MsgTransferName, "singleMsgCount insert to mongo ", 10) - statistics.NewStatistics(&mc.groupMsgCount, config.Config.ModuleName.MsgTransferName, "groupMsgCount insert to mongo ", 10) + statistics.NewStatistics(&mc.singleMsgCount, config.Config.ModuleName.MsgTransferName, "singleMsgCount insert to mongo ", 300) + statistics.NewStatistics(&mc.groupMsgCount, config.Config.ModuleName.MsgTransferName, "groupMsgCount insert to mongo ", 300) mc.msgHandle = make(map[string]fcb) mc.msgHandle[config.Config.Kafka.Ws2mschat.Topic] = mc.handleChatWs2Mongo diff --git a/internal/push/logic/init.go b/internal/push/logic/init.go index 02d96fda4..6f6f061b8 100644 --- a/internal/push/logic/init.go +++ b/internal/push/logic/init.go @@ -31,7 +31,7 @@ func Init(rpcPort int) { } func init() { producer = kafka.NewKafkaProducer(config.Config.Kafka.Ws2mschat.Addr, config.Config.Kafka.Ws2mschat.Topic) - statistics.NewStatistics(&count, config.Config.ModuleName.PushName, fmt.Sprintf("%d second push to msg_gateway count", 10), 10) + statistics.NewStatistics(&count, config.Config.ModuleName.PushName, fmt.Sprintf("%d second push to msg_gateway count", 300), 300) } func Run() { diff --git a/pkg/grpc-etcdv3/getcdv3/register.go b/pkg/grpc-etcdv3/getcdv3/register.go index 3230590b6..898a4b8c0 100644 --- a/pkg/grpc-etcdv3/getcdv3/register.go +++ b/pkg/grpc-etcdv3/getcdv3/register.go @@ -78,6 +78,16 @@ func RegisterEtcd(schema, etcdAddr, myHost string, myPort int, serviceName strin log.Debug("", "KeepAlive kresp ok", pv) } else { log.Error("", "KeepAlive kresp failed", pv) + t := time.NewTicker(time.Duration(ttl) * time.Second) + for { + select { + case <-t.C: + } + if _, err := cli.Put(ctx, serviceKey, serviceValue, clientv3.WithLease(resp.ID)); err != nil { + log.Error("", "etcd Put failed ", err.Error(), serviceKey, serviceValue, resp.ID) + } + log.Info("", "etcd Put ok", serviceKey, serviceValue, resp.ID) + } } } } diff --git a/pkg/statistics/statistics.go b/pkg/statistics/statistics.go index 2711c5d91..bea4479bd 100644 --- a/pkg/statistics/statistics.go +++ b/pkg/statistics/statistics.go @@ -1,6 +1,7 @@ package statistics import ( + "Open_IM/pkg/common/log" "time" ) @@ -14,13 +15,13 @@ type Statistics struct { func (s *Statistics) output() { t := time.NewTicker(time.Duration(s.SleepTime) * time.Second) defer t.Stop() - //var sum uint64 + var sum uint64 for { - //sum = *s.Count + sum = *s.Count select { case <-t.C: } - //log.NewWarn("", " system stat ", s.ModuleName, s.PrintArgs, *s.Count-sum, "total:", *s.Count) + log.NewWarn("", " system stat ", s.ModuleName, s.PrintArgs, *s.Count-sum, "total:", *s.Count) } } From 12d10ce8b5face111d6a087c075a78810067bbd8 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Thu, 10 Mar 2022 12:01:28 +0800 Subject: [PATCH 03/10] fix bug: group member jointime --- internal/rpc/group/group.go | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 7d4b85094..1a992cfa3 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -79,7 +79,7 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR canCreate, err := callbackBeforeCreateGroup(req) if err != nil || !canCreate { if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "callbackBeforeCreateGroup failed", ) + log.NewError(req.OperationID, utils.GetSelfFuncName(), "callbackBeforeCreateGroup failed") } } //Time stamp + MD5 to generate group chat id @@ -274,7 +274,7 @@ func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGro for _, v := range memberList { var node open_im_sdk.GroupMemberFullInfo - utils.CopyStructFields(&node, &v) + cp.GroupMemberDBCopyOpenIM(&node, &v) resp.MemberList = append(resp.MemberList, &node) } log.NewInfo(req.OperationID, "GetGroupAllMember rpc return ", resp.String()) @@ -647,9 +647,9 @@ func (s *groupServer) TransferGroupOwner(_ context.Context, req *pbGroup.Transfe } func (s *groupServer) GetGroupById(_ context.Context, req *pbGroup.GetGroupByIdReq) (*pbGroup.GetGroupByIdResp, error) { - log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) resp := &pbGroup.GetGroupByIdResp{CMSGroup: &pbGroup.CMSGroup{ - GroupInfo: &open_im_sdk.GroupInfo{}, + GroupInfo: &open_im_sdk.GroupInfo{}, }} group, err := imdb.GetGroupById(req.GroupId) if err != nil { @@ -687,7 +687,7 @@ func (s *groupServer) GetGroup(_ context.Context, req *pbGroup.GetGroupReq) (*pb log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetGroupsByName error", req.String()) return resp, http.WrapError(constant.ErrDB) } - nums, err := imdb.GetGroupsCountNum(db.Group{GroupName:req.GroupName}) + nums, err := imdb.GetGroupsCountNum(db.Group{GroupName: req.GroupName}) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetGroupsCountNum error", err.Error()) return resp, http.WrapError(constant.ErrDB) @@ -712,7 +712,7 @@ func (s *groupServer) GetGroup(_ context.Context, req *pbGroup.GetGroupReq) (*pb CreatorUserID: v.CreatorUserID, }, GroupMasterName: groupMember.Nickname, - GroupMasterId: groupMember.UserID, + GroupMasterId: groupMember.UserID, }) } return resp, nil @@ -753,7 +753,7 @@ func (s *groupServer) GetGroups(_ context.Context, req *pbGroup.GetGroupsReq) (* CreatorUserID: v.CreatorUserID, CreateTime: uint32(v.CreateTime.Unix()), }, - GroupMasterId: groupMember.UserID, + GroupMasterId: groupMember.UserID, GroupMasterName: groupMember.Nickname, }) } @@ -808,11 +808,11 @@ func (s *groupServer) OperateUserRole(_ context.Context, req *pbGroup.OperateUse } func (s *groupServer) GetGroupMembersCMS(_ context.Context, req *pbGroup.GetGroupMembersCMSReq) (*pbGroup.GetGroupMembersCMSResp, error) { - log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "args:", req.String()) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "args:", req.String()) resp := &pbGroup.GetGroupMembersCMSResp{} groupMembers, err := imdb.GetGroupMembersByGroupIdCMS(req.GroupId, req.UserName, req.Pagination.ShowNumber, req.Pagination.PageNumber) if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(),"GetGroupMembersByGroupIdCMS Error", err.Error()) + log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetGroupMembersByGroupIdCMS Error", err.Error()) return resp, http.WrapError(constant.ErrDB) } groupMembersCount, err := imdb.GetGroupMembersCount(req.GroupId, req.UserName) @@ -824,13 +824,13 @@ func (s *groupServer) GetGroupMembersCMS(_ context.Context, req *pbGroup.GetGrou resp.MemberNums = groupMembersCount for _, groupMember := range groupMembers { resp.Members = append(resp.Members, &open_im_sdk.GroupMemberFullInfo{ - GroupID: req.GroupId, - UserID: groupMember.UserID, - RoleLevel: groupMember.RoleLevel, - JoinTime: groupMember.JoinTime.Unix(), - Nickname: groupMember.Nickname, - FaceURL: groupMember.FaceURL, - JoinSource: groupMember.JoinSource, + GroupID: req.GroupId, + UserID: groupMember.UserID, + RoleLevel: groupMember.RoleLevel, + JoinTime: groupMember.JoinTime.Unix(), + Nickname: groupMember.Nickname, + FaceURL: groupMember.FaceURL, + JoinSource: groupMember.JoinSource, }) } resp.Pagination = &open_im_sdk.ResponsePagination{ @@ -894,7 +894,7 @@ func (s *groupServer) AddGroupMembersCMS(_ context.Context, req *pbGroup.AddGrou if err := imdb.InsertIntoGroupMember(groupMember); err != nil { log.NewError(req.OperationId, utils.GetSelfFuncName(), "InsertIntoGroupMember failed", req.String()) resp.Failed = append(resp.Failed, userId) - } else { + } else { resp.Success = append(resp.Success, userId) } } @@ -902,9 +902,8 @@ func (s *groupServer) AddGroupMembersCMS(_ context.Context, req *pbGroup.AddGrou return resp, nil } - func (s *groupServer) GetUserReqApplicationList(_ context.Context, req *pbGroup.GetUserReqApplicationListReq) (*pbGroup.GetUserReqApplicationListResp, error) { - log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) + log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) resp := &pbGroup.GetUserReqApplicationListResp{} groupRequests, err := imdb.GetUserReqGroupByUserID(req.UserID) if err != nil { From b10ba999cd72f8c6f91d1e5a0fee31d9c6ef31e2 Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Thu, 10 Mar 2022 12:27:16 +0800 Subject: [PATCH 04/10] join time --- pkg/proto/sdk_ws/ws.pb.go | 300 +++++++++++++++++++------------------- pkg/proto/sdk_ws/ws.proto | 2 +- 2 files changed, 151 insertions(+), 151 deletions(-) diff --git a/pkg/proto/sdk_ws/ws.pb.go b/pkg/proto/sdk_ws/ws.pb.go index a8f964b34..accf94ecf 100644 --- a/pkg/proto/sdk_ws/ws.pb.go +++ b/pkg/proto/sdk_ws/ws.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // source: sdk_ws/ws.proto -package server_api_params // import "./sdk_ws" +package server_api_params import proto "github.com/golang/protobuf/proto" import fmt "fmt" @@ -40,7 +40,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} } func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{0} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{0} } func (m *GroupInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfo.Unmarshal(m, b) @@ -148,7 +148,7 @@ type GroupMemberFullInfo struct { GroupID string `protobuf:"bytes,1,opt,name=groupID" json:"groupID,omitempty"` UserID string `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"` RoleLevel int32 `protobuf:"varint,3,opt,name=roleLevel" json:"roleLevel,omitempty"` - JoinTime int64 `protobuf:"varint,4,opt,name=joinTime" json:"joinTime,omitempty"` + JoinTime int32 `protobuf:"varint,4,opt,name=joinTime" json:"joinTime,omitempty"` Nickname string `protobuf:"bytes,5,opt,name=nickname" json:"nickname,omitempty"` FaceURL string `protobuf:"bytes,6,opt,name=faceURL" json:"faceURL,omitempty"` AppMangerLevel int32 `protobuf:"varint,7,opt,name=appMangerLevel" json:"appMangerLevel,omitempty"` @@ -164,7 +164,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{1} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{1} } func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) @@ -205,7 +205,7 @@ func (m *GroupMemberFullInfo) GetRoleLevel() int32 { return 0 } -func (m *GroupMemberFullInfo) GetJoinTime() int64 { +func (m *GroupMemberFullInfo) GetJoinTime() int32 { if m != nil { return m.JoinTime } @@ -269,7 +269,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{2} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{2} } func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) @@ -344,7 +344,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} } func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (*UserInfo) ProtoMessage() {} func (*UserInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{3} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{3} } func (m *UserInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfo.Unmarshal(m, b) @@ -451,7 +451,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} } func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{4} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{4} } func (m *FriendInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfo.Unmarshal(m, b) @@ -536,7 +536,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} } func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{5} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{5} } func (m *BlackInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackInfo.Unmarshal(m, b) @@ -617,7 +617,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} } func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{6} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{6} } func (m *GroupRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupRequest.Unmarshal(m, b) @@ -725,7 +725,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} } func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{7} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{7} } func (m *FriendRequest) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendRequest.Unmarshal(m, b) @@ -863,7 +863,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{8} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{8} } func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) @@ -917,7 +917,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{9} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{9} } func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) @@ -968,7 +968,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{10} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{10} } func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) @@ -1000,7 +1000,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{11} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{11} } func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) @@ -1047,7 +1047,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{12} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{12} } func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) @@ -1116,7 +1116,7 @@ func (m *MsgData) Reset() { *m = MsgData{} } func (m *MsgData) String() string { return proto.CompactTextString(m) } func (*MsgData) ProtoMessage() {} func (*MsgData) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{13} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{13} } func (m *MsgData) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MsgData.Unmarshal(m, b) @@ -1277,7 +1277,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{14} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{14} } func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) @@ -1345,7 +1345,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} } func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (*TipsComm) ProtoMessage() {} func (*TipsComm) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{15} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{15} } func (m *TipsComm) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_TipsComm.Unmarshal(m, b) @@ -1402,7 +1402,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{16} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{16} } func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) @@ -1471,7 +1471,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{17} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{17} } func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) @@ -1526,7 +1526,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{18} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{18} } func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) @@ -1582,7 +1582,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{19} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{19} } func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) @@ -1637,7 +1637,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{20} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{20} } func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) @@ -1692,7 +1692,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{21} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{21} } func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) @@ -1748,7 +1748,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{22} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{22} } func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) @@ -1811,7 +1811,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{23} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{23} } func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) @@ -1874,7 +1874,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{24} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{24} } func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) @@ -1936,7 +1936,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{25} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{25} } func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) @@ -1990,7 +1990,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} } func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{26} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{26} } func (m *FriendApplication) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplication.Unmarshal(m, b) @@ -2043,7 +2043,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} } func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{27} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{27} } func (m *FromToUserID) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FromToUserID.Unmarshal(m, b) @@ -2089,7 +2089,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{28} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{28} } func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) @@ -2129,7 +2129,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{29} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{29} } func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) @@ -2176,7 +2176,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{30} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{30} } func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) @@ -2224,7 +2224,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{31} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{31} } func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) @@ -2277,7 +2277,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{32} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{32} } func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) @@ -2315,7 +2315,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{33} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{33} } func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) @@ -2353,7 +2353,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{34} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{34} } func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) @@ -2391,7 +2391,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{35} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{35} } func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) @@ -2430,7 +2430,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{36} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{36} } func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) @@ -2469,7 +2469,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{} func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{37} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{37} } func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) @@ -2509,7 +2509,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} } func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{38} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{38} } func (m *RequestPagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_RequestPagination.Unmarshal(m, b) @@ -2555,7 +2555,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) Descriptor() ([]byte, []int) { - return fileDescriptor_ws_c5eabd6c93a174c0, []int{39} + return fileDescriptor_ws_c2d3d5fccaf1040a, []int{39} } func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) @@ -2633,10 +2633,10 @@ func init() { proto.RegisterType((*ResponsePagination)(nil), "server_api_params.ResponsePagination") } -func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_c5eabd6c93a174c0) } +func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_c2d3d5fccaf1040a) } -var fileDescriptor_ws_c5eabd6c93a174c0 = []byte{ - // 2006 bytes of a gzipped FileDescriptorProto +var fileDescriptor_ws_c2d3d5fccaf1040a = []byte{ + // 2005 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0x4f, 0x6f, 0x23, 0x49, 0x15, 0x57, 0xdb, 0xb1, 0x13, 0x3f, 0xc7, 0x71, 0xd2, 0xb3, 0x04, 0x13, 0x66, 0x87, 0xd0, 0x5a, 0x2d, 0x23, 0x24, 0xb2, 0x68, 0x10, 0x12, 0xec, 0x0a, 0x50, 0xfe, 0x4c, 0xc2, 0x2c, 0x71, 0x12, @@ -2659,108 +2659,108 @@ var fileDescriptor_ws_c5eabd6c93a174c0 = []byte{ 0xb1, 0xc1, 0xc2, 0x63, 0xe7, 0x6f, 0x12, 0xec, 0xad, 0x4a, 0x01, 0x25, 0xe0, 0xfd, 0xa5, 0x06, 0x8f, 0xa4, 0xdf, 0xfb, 0x52, 0x81, 0xc3, 0x2c, 0x8e, 0x3f, 0x23, 0x02, 0x9b, 0xd0, 0xcc, 0xd4, 0x76, 0xca, 0xfd, 0x9a, 0x12, 0xfb, 0x30, 0x1a, 0xe3, 0x31, 0x5e, 0x63, 0x2c, 0x1d, 0xdf, 0xf0, - 0x4b, 0xc0, 0xdd, 0x82, 0x95, 0x4f, 0x69, 0x44, 0xa4, 0x4f, 0x84, 0xc7, 0xeb, 0x7e, 0x41, 0x8b, - 0x6f, 0x24, 0x1a, 0x5e, 0x11, 0x11, 0x52, 0xe5, 0xee, 0x82, 0x36, 0x23, 0xd1, 0xb4, 0x23, 0xf1, - 0x3e, 0xac, 0x05, 0x49, 0xd2, 0x0f, 0xc8, 0x18, 0x99, 0xda, 0x74, 0x59, 0x6e, 0x5a, 0x41, 0x45, - 0x3c, 0xc4, 0x4e, 0x03, 0x9a, 0xb1, 0x21, 0x4a, 0x77, 0x37, 0x7c, 0x03, 0x11, 0x72, 0x68, 0x82, - 0xcc, 0x70, 0xa3, 0xf2, 0x7c, 0x05, 0xd5, 0x51, 0x81, 0x3c, 0x2a, 0xde, 0xaf, 0x1d, 0x58, 0x3b, - 0xcb, 0x2e, 0xe2, 0x68, 0x28, 0x17, 0x08, 0xa7, 0x95, 0xae, 0x71, 0x2c, 0xd7, 0x98, 0x06, 0xd6, - 0x6e, 0x37, 0xb0, 0x6e, 0x1b, 0xb8, 0x09, 0xcd, 0x31, 0x92, 0x10, 0x99, 0x74, 0x58, 0xc3, 0xd7, - 0x94, 0x56, 0xa4, 0x51, 0x28, 0xf2, 0xdb, 0x1a, 0xac, 0x7c, 0xce, 0x2a, 0x6c, 0x43, 0x3b, 0xb9, - 0xa4, 0x04, 0x4f, 0x32, 0x91, 0x34, 0x5a, 0x17, 0x13, 0x72, 0xdf, 0x81, 0xc6, 0x45, 0xc4, 0xd2, - 0x4b, 0x19, 0xb5, 0x8e, 0xaf, 0x08, 0x81, 0xe2, 0x24, 0x88, 0x54, 0xa8, 0x5a, 0xbe, 0x22, 0xb4, - 0x41, 0x2b, 0x45, 0xbe, 0xdb, 0x15, 0xd4, 0x9a, 0xa9, 0xa0, 0xd9, 0xc8, 0xc3, 0xbc, 0xc8, 0x7b, - 0xff, 0x76, 0x00, 0x0e, 0x59, 0x84, 0x24, 0x94, 0xae, 0xa9, 0x94, 0xae, 0x33, 0x5b, 0xba, 0x9b, - 0xd0, 0x64, 0x38, 0x09, 0xd8, 0x55, 0x9e, 0xda, 0x8a, 0xaa, 0x28, 0x54, 0x9f, 0x51, 0xe8, 0x23, - 0x80, 0x91, 0xdc, 0x47, 0xc8, 0x91, 0xae, 0x6a, 0x3f, 0xfb, 0xf2, 0xce, 0x4c, 0x93, 0xdb, 0xc9, - 0xa3, 0xe4, 0x1b, 0xcb, 0x45, 0xdd, 0x04, 0x61, 0xa8, 0xd3, 0xb3, 0xa1, 0xea, 0xa6, 0x00, 0xe6, - 0x64, 0x67, 0xf3, 0x8e, 0xec, 0x5c, 0x2e, 0x92, 0xe2, 0x9f, 0x0e, 0xb4, 0xf6, 0xe2, 0x60, 0x78, - 0xb5, 0xa0, 0xe9, 0xb6, 0x89, 0xb5, 0x19, 0x13, 0x8f, 0xa0, 0x73, 0x21, 0xc4, 0xe5, 0x26, 0x48, - 0x2f, 0xb4, 0x9f, 0x7d, 0x75, 0x8e, 0x95, 0x76, 0x51, 0xf8, 0x36, 0x9f, 0x6d, 0xee, 0xd2, 0x67, - 0x9b, 0xdb, 0xb8, 0xc3, 0xdc, 0x66, 0x61, 0xee, 0xdf, 0x6b, 0xb0, 0x2a, 0xdb, 0x98, 0x8f, 0xd3, - 0x0c, 0x79, 0xea, 0x7e, 0x0f, 0x56, 0xb2, 0x5c, 0x55, 0x67, 0x51, 0x55, 0x0b, 0x16, 0xf7, 0x43, - 0xdd, 0x34, 0x25, 0x7f, 0x4d, 0xf2, 0x3f, 0x9e, 0xc3, 0x5f, 0x9c, 0x58, 0x7e, 0xb9, 0x5c, 0x1c, - 0x30, 0x97, 0x01, 0x09, 0x63, 0xf4, 0x91, 0x67, 0x71, 0xaa, 0x7b, 0xa1, 0x85, 0xa9, 0x4c, 0x9b, - 0xf6, 0xf9, 0x58, 0x1f, 0x3f, 0x9a, 0x12, 0xde, 0x51, 0xeb, 0xc4, 0x27, 0x65, 0x7a, 0x09, 0x88, - 0x42, 0x65, 0x38, 0x95, 0x11, 0x52, 0x65, 0x95, 0x93, 0xe5, 0x9e, 0xda, 0x6b, 0x2a, 0x11, 0x2c, - 0x4c, 0x84, 0x58, 0xd1, 0x52, 0x80, 0x3a, 0x77, 0x0c, 0xa4, 0x7a, 0xec, 0x78, 0xff, 0xa8, 0x43, - 0x47, 0x95, 0x4f, 0xee, 0xd4, 0x27, 0x22, 0xcf, 0xe9, 0xc4, 0xca, 0x22, 0x03, 0x11, 0x5a, 0x08, - 0xea, 0xc4, 0x6e, 0x34, 0x16, 0x26, 0x52, 0x51, 0xd0, 0x87, 0x56, 0xc3, 0x31, 0xa1, 0x7c, 0x97, - 0x23, 0xb3, 0xf1, 0x18, 0x88, 0x68, 0x65, 0x29, 0xb5, 0xb2, 0xa3, 0xa0, 0x05, 0x6f, 0x4a, 0x8b, - 0xfd, 0x55, 0x7e, 0x18, 0x88, 0xf0, 0x6f, 0x4a, 0xf3, 0xbd, 0x95, 0x93, 0x4a, 0x40, 0x49, 0xd6, - 0xfb, 0xaa, 0x83, 0xa2, 0xa0, 0x67, 0xa2, 0xda, 0xba, 0x33, 0xaa, 0x60, 0x45, 0xd5, 0x2e, 0xae, - 0xf6, 0x4c, 0x71, 0xbd, 0x07, 0x1d, 0x25, 0x27, 0x4f, 0xfa, 0x55, 0x75, 0x90, 0x5b, 0xa0, 0x9d, - 0x1b, 0x9d, 0x6a, 0x6e, 0xd8, 0xd1, 0x5d, 0xbb, 0x25, 0xba, 0xdd, 0x22, 0xba, 0xbf, 0x80, 0xde, - 0x59, 0x16, 0xc7, 0x7d, 0xe4, 0x3c, 0x18, 0xe3, 0xde, 0x9b, 0x01, 0x4e, 0x8f, 0x23, 0x9e, 0xfa, - 0xc8, 0x13, 0x91, 0x67, 0xc8, 0xd8, 0x3e, 0x0d, 0x51, 0x06, 0xb9, 0xe1, 0xe7, 0xa4, 0xb0, 0x10, - 0x19, 0x13, 0x0a, 0xe8, 0x0e, 0xa9, 0x28, 0x77, 0x07, 0x96, 0xe2, 0x88, 0x8b, 0x5c, 0xaf, 0x3f, - 0x6d, 0x3f, 0xdb, 0x9a, 0x53, 0x2a, 0x7d, 0x3e, 0x3e, 0x08, 0xd2, 0xc0, 0x97, 0xeb, 0xbc, 0x09, - 0x7c, 0x71, 0xfe, 0xee, 0xd3, 0x5b, 0x4f, 0x30, 0xd1, 0xc3, 0x64, 0x13, 0x88, 0x28, 0x29, 0x86, - 0x0f, 0x13, 0x12, 0x6a, 0x73, 0x25, 0x47, 0xea, 0xd1, 0xf1, 0x73, 0xd2, 0x7b, 0x07, 0xdc, 0x23, - 0x4c, 0xfb, 0xc1, 0xeb, 0x5d, 0x12, 0xf6, 0x23, 0x32, 0xc0, 0xa9, 0x8f, 0x53, 0xef, 0x39, 0x3c, - 0x9a, 0x41, 0x79, 0x22, 0x14, 0x98, 0x04, 0xaf, 0x07, 0x38, 0x95, 0x0a, 0x74, 0x7c, 0x4d, 0x49, - 0x5c, 0xae, 0xd2, 0xed, 0x51, 0x53, 0xde, 0x14, 0xba, 0x22, 0x42, 0x03, 0x24, 0x61, 0x9f, 0x8f, - 0xa5, 0x88, 0x6d, 0x68, 0x2b, 0x0f, 0xf4, 0xf9, 0xb8, 0xec, 0xb7, 0x06, 0x24, 0x56, 0x0c, 0xe3, - 0x08, 0x49, 0xaa, 0x56, 0x68, 0x6b, 0x0c, 0x48, 0x24, 0x23, 0x47, 0x12, 0x16, 0x47, 0x4e, 0xdd, - 0x2f, 0x68, 0xef, 0xaf, 0x0d, 0x58, 0xd6, 0x0e, 0x95, 0xd3, 0xa1, 0x38, 0xe2, 0x0a, 0x7f, 0x29, - 0x4a, 0x25, 0xe3, 0xf0, 0xba, 0x9c, 0xd3, 0x14, 0x65, 0x4e, 0x76, 0x75, 0x7b, 0xb2, 0xab, 0xe8, - 0xb4, 0x34, 0xab, 0x53, 0xc5, 0xae, 0xc6, 0xac, 0x5d, 0x5f, 0x87, 0x75, 0x2e, 0x0b, 0xe6, 0x2c, - 0x0e, 0xd2, 0x11, 0x65, 0x13, 0x7d, 0x62, 0x35, 0xfc, 0x19, 0x5c, 0x34, 0x7b, 0x85, 0x15, 0x05, - 0xab, 0x2a, 0xb2, 0x82, 0x8a, 0xf2, 0x50, 0x48, 0x5e, 0xb8, 0x6a, 0x54, 0xb0, 0x41, 0xa5, 0x1b, - 0xe7, 0x11, 0x25, 0x72, 0xd2, 0x55, 0xf5, 0x69, 0x42, 0xc2, 0xf2, 0x09, 0x1f, 0x1f, 0x32, 0x3a, - 0xd1, 0x03, 0x43, 0x4e, 0x4a, 0xcb, 0x29, 0x49, 0x91, 0xa4, 0x92, 0xb7, 0xad, 0x78, 0x0d, 0x48, - 0xf0, 0x6a, 0x52, 0x16, 0xe7, 0xaa, 0x9f, 0x93, 0xee, 0x3a, 0xd4, 0x39, 0x4e, 0x75, 0xc5, 0x89, - 0x9f, 0x56, 0xe4, 0xba, 0x76, 0xe4, 0x2a, 0xad, 0x60, 0x5d, 0x7e, 0x35, 0x5b, 0x41, 0x39, 0xeb, - 0x6f, 0x58, 0xb3, 0xfe, 0x2e, 0x2c, 0xd3, 0x44, 0xe4, 0x39, 0xef, 0xb9, 0xb2, 0xc6, 0xbe, 0x76, - 0x7b, 0x8d, 0xed, 0x9c, 0xaa, 0x95, 0xcf, 0x49, 0xca, 0xde, 0xf8, 0x39, 0x9f, 0x7b, 0x0c, 0x5d, - 0x3a, 0x1a, 0xc5, 0x11, 0xc1, 0xb3, 0x8c, 0x5f, 0xca, 0x93, 0xed, 0x91, 0x3c, 0xd9, 0xbc, 0x39, - 0xa2, 0x4e, 0xed, 0x95, 0x7e, 0x95, 0x75, 0xeb, 0x43, 0x58, 0x35, 0xb7, 0x11, 0x6e, 0xb8, 0xc2, - 0x37, 0x3a, 0x07, 0xc5, 0x4f, 0x31, 0xec, 0x5d, 0x07, 0x71, 0xa6, 0x8e, 0x81, 0x15, 0x5f, 0x11, - 0x1f, 0xd6, 0xbe, 0xe3, 0x78, 0xbf, 0x71, 0xa0, 0x5b, 0xd9, 0x40, 0xac, 0x4e, 0xa3, 0x34, 0x46, - 0x2d, 0x41, 0x11, 0xae, 0x0b, 0x4b, 0x21, 0xf2, 0xa1, 0x4e, 0x61, 0xf9, 0x5b, 0x77, 0xb2, 0x7a, - 0x31, 0x2e, 0x8a, 0x0b, 0xdd, 0xe9, 0x40, 0x08, 0x1a, 0xd0, 0x8c, 0x84, 0xc5, 0x85, 0xce, 0xc0, - 0x44, 0x0a, 0x45, 0xa7, 0x83, 0xbd, 0x20, 0x1c, 0xa3, 0xba, 0x76, 0x35, 0xa4, 0x4e, 0x36, 0xe8, - 0x85, 0xb0, 0x72, 0x1e, 0x25, 0x7c, 0x9f, 0x4e, 0x26, 0x22, 0x10, 0x21, 0xa6, 0x62, 0x56, 0x75, - 0x64, 0xbc, 0x35, 0x25, 0x52, 0x25, 0xc4, 0x51, 0x90, 0xc5, 0xa9, 0x58, 0x9a, 0x17, 0xae, 0x01, - 0xc9, 0x0b, 0x07, 0xa7, 0xe4, 0x40, 0x71, 0x2b, 0x3d, 0x0d, 0xc4, 0xfb, 0x5b, 0x0d, 0xd6, 0xe5, - 0xe0, 0xb0, 0x2f, 0xc3, 0x1e, 0x4a, 0xa6, 0x67, 0xd0, 0x90, 0x65, 0xa8, 0x87, 0x95, 0xbb, 0x87, - 0x0d, 0xb5, 0xd4, 0xfd, 0x3e, 0x34, 0x69, 0x22, 0x47, 0x4e, 0x35, 0xa1, 0xbc, 0x7f, 0x1b, 0x93, - 0x7d, 0xb7, 0xf3, 0x35, 0x97, 0x7b, 0x08, 0xa0, 0xae, 0x9d, 0xc7, 0x65, 0xeb, 0x5e, 0x54, 0x86, - 0xc1, 0x29, 0x9c, 0x5b, 0xb4, 0x61, 0xe3, 0x82, 0x67, 0x83, 0xee, 0x09, 0xac, 0x49, 0xb5, 0x4f, - 0xf3, 0xa9, 0x53, 0xc6, 0x60, 0xf1, 0x1d, 0x2b, 0xdc, 0xde, 0xef, 0x1c, 0xed, 0x46, 0xf1, 0x75, - 0x80, 0xca, 0xf7, 0xa5, 0x4b, 0x9c, 0x7b, 0xb9, 0x64, 0x0b, 0x56, 0x26, 0x99, 0x31, 0x04, 0xd7, - 0xfd, 0x82, 0x2e, 0x43, 0x54, 0x5f, 0x38, 0x44, 0xde, 0xef, 0x1d, 0xe8, 0x7d, 0x4c, 0x23, 0x22, - 0x3f, 0xec, 0x26, 0x49, 0xac, 0x5f, 0x21, 0xee, 0x1d, 0xf3, 0x1f, 0x40, 0x2b, 0x50, 0x62, 0x48, - 0xaa, 0xc3, 0xbe, 0xc0, 0x60, 0x5b, 0xf2, 0x18, 0x33, 0x4a, 0xdd, 0x9c, 0x51, 0xbc, 0x3f, 0x3a, - 0xb0, 0xa6, 0x9c, 0xf2, 0xe3, 0x2c, 0x4a, 0xef, 0xad, 0xdf, 0x1e, 0xac, 0x4c, 0xb3, 0x28, 0xbd, - 0x47, 0x56, 0x16, 0x7c, 0xb3, 0xf9, 0x54, 0x9f, 0x93, 0x4f, 0xde, 0x9f, 0x1c, 0x78, 0x5c, 0x75, - 0xeb, 0xee, 0x70, 0x88, 0xc9, 0xdb, 0x2c, 0x29, 0x6b, 0x46, 0x5b, 0xaa, 0xcc, 0x68, 0x73, 0x55, - 0xf6, 0xf1, 0x53, 0x1c, 0xfe, 0xff, 0xaa, 0xfc, 0xab, 0x1a, 0x7c, 0xe9, 0xa8, 0x28, 0xbc, 0x73, - 0x16, 0x10, 0x3e, 0x42, 0xc6, 0xde, 0xa2, 0xbe, 0xc7, 0xd0, 0x21, 0x78, 0x53, 0xea, 0xa4, 0xcb, - 0x71, 0x51, 0x31, 0x36, 0xf3, 0x62, 0xbd, 0xcb, 0xfb, 0x8f, 0x03, 0xeb, 0x4a, 0xce, 0x8f, 0xa2, - 0xe1, 0xd5, 0x5b, 0x34, 0xfe, 0x04, 0xd6, 0xae, 0xa4, 0x06, 0x82, 0xba, 0x47, 0xdb, 0xae, 0x70, - 0x2f, 0x68, 0xfe, 0x7f, 0x1d, 0xd8, 0x50, 0x82, 0x5e, 0x90, 0xeb, 0xe8, 0x6d, 0x26, 0xeb, 0x19, - 0x74, 0x23, 0xa5, 0xc2, 0x3d, 0x1d, 0x50, 0x65, 0x5f, 0xd0, 0x03, 0x7f, 0x76, 0xa0, 0xab, 0x24, - 0x3d, 0x27, 0x29, 0xb2, 0x7b, 0xdb, 0xff, 0x43, 0x68, 0x23, 0x49, 0x59, 0x40, 0xee, 0xd3, 0x21, - 0x4d, 0xd6, 0x05, 0x9b, 0xe4, 0x15, 0x6c, 0xa8, 0x2b, 0xbc, 0xd1, 0x71, 0xc4, 0x2c, 0x1b, 0x84, - 0x6a, 0x3c, 0x75, 0x24, 0x53, 0x4e, 0xda, 0x8f, 0x33, 0xfa, 0x75, 0xbd, 0x7c, 0x9c, 0x79, 0x02, - 0x10, 0x84, 0xe1, 0x27, 0x94, 0x85, 0x11, 0xc9, 0x8f, 0x0f, 0x03, 0xf1, 0x3e, 0x86, 0x55, 0x31, - 0x4d, 0x9f, 0x1b, 0x97, 0xf1, 0x3b, 0x9f, 0x0b, 0xcc, 0x8b, 0x7c, 0xcd, 0xbe, 0xc8, 0x7b, 0x3f, - 0x87, 0x2f, 0xcc, 0x28, 0x2e, 0xbd, 0xbe, 0xaf, 0xde, 0x18, 0xf2, 0x4d, 0xb4, 0xf3, 0xbf, 0x32, - 0xc7, 0x85, 0xa6, 0x2e, 0xbe, 0xc5, 0xe4, 0xfd, 0xd2, 0x81, 0x77, 0x67, 0xc4, 0xef, 0x26, 0x09, - 0xa3, 0xd7, 0x3a, 0xb9, 0x1f, 0x62, 0x1b, 0xbb, 0xb5, 0xd6, 0xaa, 0xad, 0x75, 0xae, 0x12, 0xd6, - 0x71, 0xf0, 0x39, 0x28, 0xf1, 0x07, 0x07, 0xba, 0x5a, 0x89, 0x30, 0xd4, 0xdb, 0x7e, 0x1b, 0x9a, - 0xea, 0x7d, 0x52, 0x6f, 0xf8, 0xee, 0xdc, 0x0d, 0xf3, 0x77, 0x55, 0x5f, 0x2f, 0x9e, 0xcd, 0xc8, - 0xda, 0xbc, 0x31, 0xf0, 0xbb, 0x45, 0x07, 0x58, 0xf8, 0x05, 0x51, 0x33, 0x78, 0x3f, 0xcd, 0x93, - 0xf9, 0x00, 0x63, 0x7c, 0x48, 0x1f, 0x79, 0x2f, 0x61, 0x4d, 0x3e, 0x96, 0x96, 0x3e, 0x78, 0x10, - 0xb1, 0x9f, 0xc0, 0xba, 0x14, 0xfb, 0xe0, 0xfa, 0x16, 0xd5, 0x21, 0xfc, 0xb3, 0x7f, 0x19, 0x90, - 0xf1, 0x43, 0x4a, 0xff, 0x06, 0x3c, 0xca, 0x7d, 0xff, 0x32, 0x09, 0x8b, 0x2b, 0xca, 0x2d, 0x0f, - 0x33, 0xde, 0x37, 0x61, 0x73, 0x9f, 0x92, 0x6b, 0x64, 0x5c, 0x46, 0x59, 0xb1, 0xe4, 0x1c, 0x56, - 0xf1, 0x6b, 0xca, 0x1b, 0xc0, 0x86, 0x7e, 0x52, 0x3c, 0x0b, 0xc6, 0x11, 0x51, 0x5d, 0xe9, 0x09, - 0x40, 0x12, 0x8c, 0xf3, 0xbf, 0x14, 0xd4, 0xbb, 0x93, 0x81, 0x88, 0xef, 0xfc, 0x92, 0xde, 0xe8, - 0xef, 0x35, 0xf5, 0xbd, 0x44, 0xbc, 0x9f, 0x80, 0xeb, 0x23, 0x4f, 0x28, 0xe1, 0x68, 0x48, 0xdd, - 0x86, 0xf6, 0x7e, 0xc6, 0x18, 0x12, 0xb1, 0x55, 0xfe, 0xbe, 0x6e, 0x42, 0x42, 0xee, 0xa0, 0x94, - 0xab, 0xde, 0x2a, 0x0c, 0x64, 0xef, 0xf1, 0xcf, 0xb6, 0x76, 0x3e, 0x50, 0xff, 0x60, 0x7e, 0x34, - 0xe3, 0xc6, 0x8b, 0xa6, 0xfc, 0x47, 0xf3, 0x5b, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x24, 0xc1, - 0xb6, 0xba, 0xe4, 0x1c, 0x00, 0x00, + 0x4b, 0xc0, 0xdd, 0x82, 0x95, 0x4f, 0x69, 0x44, 0xa4, 0x4f, 0x96, 0xe4, 0xc7, 0x82, 0x16, 0xdf, + 0x48, 0x34, 0xbc, 0x22, 0x22, 0xa4, 0xca, 0xdd, 0x05, 0x6d, 0x46, 0xa2, 0x69, 0x47, 0xe2, 0x7d, + 0x58, 0x0b, 0x92, 0xa4, 0x1f, 0x90, 0x31, 0x32, 0xb5, 0xe9, 0xb2, 0x94, 0x5b, 0x41, 0x45, 0x3c, + 0xc4, 0x4e, 0x03, 0x9a, 0xb1, 0x21, 0x4a, 0x77, 0x37, 0x7c, 0x03, 0x11, 0x72, 0x68, 0x82, 0xcc, + 0x70, 0xa3, 0xf2, 0x7c, 0x05, 0xd5, 0x51, 0x81, 0x3c, 0x2a, 0xde, 0xaf, 0x1d, 0x58, 0x3b, 0xcb, + 0x2e, 0xe2, 0x68, 0x28, 0x17, 0x08, 0xa7, 0x95, 0xae, 0x71, 0x2c, 0xd7, 0x98, 0x06, 0xd6, 0x6e, + 0x37, 0xb0, 0x6e, 0x1b, 0xb8, 0x09, 0xcd, 0x31, 0x92, 0x10, 0x99, 0x76, 0x98, 0xa6, 0xb4, 0x22, + 0x8d, 0x42, 0x91, 0xdf, 0xd6, 0x60, 0xe5, 0x73, 0x56, 0x61, 0x1b, 0xda, 0xc9, 0x25, 0x25, 0x78, + 0x92, 0x89, 0xa4, 0xd1, 0xba, 0x98, 0x90, 0xfb, 0x0e, 0x34, 0x2e, 0x22, 0x96, 0x5e, 0xca, 0xa8, + 0x75, 0x7c, 0x45, 0x08, 0x14, 0x27, 0x41, 0xa4, 0x42, 0xd5, 0xf2, 0x15, 0xa1, 0x0d, 0x5a, 0x29, + 0xf2, 0xdd, 0xae, 0xa0, 0xd6, 0x4c, 0x05, 0xcd, 0x46, 0x1e, 0xe6, 0x45, 0xde, 0xfb, 0xb7, 0x03, + 0x70, 0xc8, 0x22, 0x24, 0xa1, 0x74, 0x4d, 0xa5, 0x74, 0x9d, 0xd9, 0xd2, 0xdd, 0x84, 0x26, 0xc3, + 0x49, 0xc0, 0xae, 0xf2, 0xd4, 0x56, 0x54, 0x45, 0xa1, 0xfa, 0x8c, 0x42, 0x1f, 0x01, 0x8c, 0xe4, + 0x3e, 0x42, 0x8e, 0x74, 0x55, 0xfb, 0xd9, 0x97, 0x77, 0x66, 0x9a, 0xdc, 0x4e, 0x1e, 0x25, 0xdf, + 0x58, 0x2e, 0xea, 0x26, 0x08, 0x43, 0x9d, 0x9e, 0x0d, 0x55, 0x37, 0x05, 0x30, 0x27, 0x3b, 0x9b, + 0x77, 0x64, 0xe7, 0x72, 0x91, 0x14, 0xff, 0x74, 0xa0, 0xb5, 0x17, 0x07, 0xc3, 0xab, 0x05, 0x4d, + 0xb7, 0x4d, 0xac, 0xcd, 0x98, 0x78, 0x04, 0x9d, 0x0b, 0x21, 0x2e, 0x37, 0x41, 0x7a, 0xa1, 0xfd, + 0xec, 0xab, 0x73, 0xac, 0xb4, 0x8b, 0xc2, 0xb7, 0xf9, 0x6c, 0x73, 0x97, 0x3e, 0xdb, 0xdc, 0xc6, + 0x1d, 0xe6, 0x36, 0x0b, 0x73, 0xff, 0x5e, 0x83, 0x55, 0xd9, 0xc6, 0x7c, 0x9c, 0x66, 0xc8, 0x53, + 0xf7, 0x7b, 0xb0, 0x92, 0xe5, 0xaa, 0x3a, 0x8b, 0xaa, 0x5a, 0xb0, 0xb8, 0x1f, 0xea, 0xa6, 0x29, + 0xf9, 0x6b, 0x92, 0xff, 0xf1, 0x1c, 0xfe, 0xe2, 0xc4, 0xf2, 0xcb, 0xe5, 0xe2, 0x80, 0xb9, 0x0c, + 0x48, 0x18, 0xa3, 0x8f, 0x3c, 0x8b, 0x53, 0xdd, 0x0b, 0x2d, 0x4c, 0x65, 0xda, 0xb4, 0xcf, 0xc7, + 0xfa, 0xf8, 0xd1, 0x94, 0xf0, 0x8e, 0x5a, 0x27, 0x3e, 0x29, 0xd3, 0x4b, 0x40, 0x14, 0x2a, 0xc3, + 0xa9, 0x8c, 0x90, 0x2a, 0xab, 0x9c, 0x2c, 0xf7, 0xd4, 0x5e, 0x53, 0x89, 0x60, 0x61, 0x22, 0xc4, + 0x8a, 0x96, 0x02, 0xd4, 0xb9, 0x63, 0x20, 0xd5, 0x63, 0xc7, 0xfb, 0x47, 0x1d, 0x3a, 0xaa, 0x7c, + 0x72, 0xa7, 0x3e, 0x11, 0x79, 0x4e, 0x27, 0x56, 0x16, 0x19, 0x88, 0xd0, 0x42, 0x50, 0x27, 0x76, + 0xa3, 0xb1, 0x30, 0x91, 0x8a, 0x82, 0x3e, 0xb4, 0x1a, 0x8e, 0x09, 0xe5, 0xbb, 0x1c, 0x99, 0x8d, + 0xc7, 0x40, 0x44, 0x2b, 0x4b, 0xa9, 0x95, 0x1d, 0x05, 0x2d, 0x78, 0x53, 0x5a, 0xec, 0xaf, 0xf2, + 0xc3, 0x40, 0x84, 0x7f, 0x53, 0x9a, 0xef, 0xad, 0x9c, 0x54, 0x02, 0x4a, 0xb2, 0xde, 0x57, 0x1d, + 0x14, 0x05, 0x3d, 0x13, 0xd5, 0xd6, 0x9d, 0x51, 0x05, 0x2b, 0xaa, 0x76, 0x71, 0xb5, 0x67, 0x8a, + 0xeb, 0x3d, 0xe8, 0x28, 0x39, 0x79, 0xd2, 0xaf, 0xaa, 0x83, 0xdc, 0x02, 0xed, 0xdc, 0xe8, 0x54, + 0x73, 0xc3, 0x8e, 0xee, 0xda, 0x2d, 0xd1, 0xed, 0x16, 0xd1, 0xfd, 0x05, 0xf4, 0xce, 0xb2, 0x38, + 0xee, 0x23, 0xe7, 0xc1, 0x18, 0xf7, 0xde, 0x0c, 0x70, 0x7a, 0x1c, 0xf1, 0xd4, 0x47, 0x9e, 0x88, + 0x3c, 0x43, 0xc6, 0xf6, 0x69, 0x88, 0x32, 0xc8, 0x0d, 0x3f, 0x27, 0x85, 0x85, 0xc8, 0x98, 0x50, + 0x40, 0x77, 0x48, 0x45, 0xb9, 0x3b, 0xb0, 0x14, 0x47, 0x5c, 0xe4, 0x7a, 0xfd, 0x69, 0xfb, 0xd9, + 0xd6, 0x9c, 0x52, 0xe9, 0xf3, 0xf1, 0x41, 0x90, 0x06, 0xbe, 0x5c, 0xe7, 0x4d, 0xe0, 0x8b, 0xf3, + 0x77, 0x9f, 0xde, 0x7a, 0x82, 0x89, 0x1e, 0x26, 0x9b, 0x40, 0x44, 0x49, 0x31, 0x7c, 0x98, 0x90, + 0x50, 0x9b, 0x2b, 0x39, 0x52, 0x8f, 0x8e, 0x9f, 0x93, 0xde, 0x3b, 0xe0, 0x1e, 0x61, 0xda, 0x0f, + 0x5e, 0xef, 0x92, 0xb0, 0x1f, 0x91, 0x01, 0x4e, 0x7d, 0x9c, 0x7a, 0xcf, 0xe1, 0xd1, 0x0c, 0xca, + 0x13, 0xa1, 0xc0, 0x24, 0x78, 0x3d, 0xc0, 0xa9, 0x54, 0xa0, 0xe3, 0x6b, 0x4a, 0xe2, 0x72, 0x95, + 0x6e, 0x8f, 0x9a, 0xf2, 0xa6, 0xd0, 0x15, 0x11, 0x1a, 0x20, 0x09, 0xfb, 0x7c, 0x2c, 0x45, 0x6c, + 0x43, 0x5b, 0x79, 0xa0, 0xcf, 0xc7, 0x65, 0xbf, 0x35, 0x20, 0xb1, 0x62, 0x18, 0x47, 0x48, 0x52, + 0xb5, 0x42, 0x5b, 0x63, 0x40, 0x22, 0x19, 0x39, 0x92, 0xb0, 0x38, 0x72, 0xea, 0x7e, 0x41, 0x7b, + 0x7f, 0x6d, 0xc0, 0xb2, 0x76, 0xa8, 0x9c, 0x0e, 0xc5, 0x11, 0x57, 0xf8, 0x4b, 0x51, 0x2a, 0x19, + 0x87, 0xd7, 0xe5, 0x9c, 0xa6, 0x28, 0x73, 0xb2, 0xab, 0xdb, 0x93, 0x5d, 0x45, 0xa7, 0xa5, 0x59, + 0x9d, 0x2a, 0x76, 0x35, 0x66, 0xed, 0xfa, 0x3a, 0xac, 0x73, 0x59, 0x30, 0x67, 0x71, 0x90, 0x8e, + 0x28, 0x9b, 0xe8, 0x13, 0xab, 0xe1, 0xcf, 0xe0, 0xa2, 0xd9, 0x2b, 0xac, 0x28, 0x58, 0x55, 0x91, + 0x15, 0x54, 0x94, 0x87, 0x42, 0xf2, 0xc2, 0x55, 0xa3, 0x82, 0x0d, 0x2a, 0xdd, 0x38, 0x8f, 0x28, + 0x91, 0x93, 0xae, 0xaa, 0x4f, 0x13, 0x12, 0x96, 0x4f, 0xf8, 0xf8, 0x90, 0xd1, 0x89, 0x1e, 0x18, + 0x72, 0x52, 0x5a, 0x4e, 0x49, 0x8a, 0x24, 0x95, 0xbc, 0x6d, 0xc5, 0x6b, 0x40, 0x82, 0x57, 0x93, + 0xb2, 0x38, 0x57, 0xfd, 0x9c, 0x74, 0xd7, 0xa1, 0xce, 0x71, 0xaa, 0x2b, 0x4e, 0xfc, 0xb4, 0x22, + 0xd7, 0xb5, 0x23, 0x57, 0x69, 0x05, 0xeb, 0xf2, 0xab, 0xd9, 0x0a, 0xca, 0x59, 0x7f, 0xc3, 0x9a, + 0xf5, 0x77, 0x61, 0x99, 0x26, 0x22, 0xcf, 0x79, 0xcf, 0x95, 0x35, 0xf6, 0xb5, 0xdb, 0x6b, 0x6c, + 0xe7, 0x54, 0xad, 0x7c, 0x4e, 0x52, 0xf6, 0xc6, 0xcf, 0xf9, 0xdc, 0x63, 0xe8, 0xd2, 0xd1, 0x28, + 0x8e, 0x08, 0x9e, 0x65, 0xfc, 0x52, 0x9e, 0x6c, 0x8f, 0xe4, 0xc9, 0xe6, 0xcd, 0x11, 0x75, 0x6a, + 0xaf, 0xf4, 0xab, 0xac, 0x5b, 0x1f, 0xc2, 0xaa, 0xb9, 0x8d, 0x70, 0xc3, 0x15, 0xbe, 0xd1, 0x39, + 0x28, 0x7e, 0x8a, 0x61, 0xef, 0x3a, 0x88, 0x33, 0x75, 0x0c, 0xac, 0xf8, 0x8a, 0xf8, 0xb0, 0xf6, + 0x1d, 0xc7, 0xfb, 0x8d, 0x03, 0xdd, 0xca, 0x06, 0x62, 0x75, 0x1a, 0xa5, 0x31, 0x6a, 0x09, 0x8a, + 0x70, 0x5d, 0x58, 0x0a, 0x91, 0x0f, 0x75, 0x0a, 0xcb, 0xdf, 0xba, 0x93, 0xd5, 0x8b, 0x71, 0x51, + 0x5c, 0xe8, 0x4e, 0x07, 0x42, 0xd0, 0x80, 0x66, 0x24, 0x2c, 0x2e, 0x74, 0x06, 0x26, 0x52, 0x28, + 0x3a, 0x1d, 0xec, 0x05, 0xe1, 0x18, 0xd5, 0xb5, 0xab, 0x21, 0x75, 0xb2, 0x41, 0x2f, 0x84, 0x95, + 0xf3, 0x28, 0xe1, 0xfb, 0x74, 0x32, 0x11, 0x81, 0x08, 0x31, 0x15, 0xb3, 0xaa, 0x23, 0xe3, 0xad, + 0x29, 0x91, 0x2a, 0x21, 0x8e, 0x82, 0x2c, 0x4e, 0xc5, 0xd2, 0xbc, 0x70, 0x0d, 0x48, 0x5e, 0x38, + 0x38, 0x25, 0x07, 0x8a, 0x5b, 0xe9, 0x69, 0x20, 0xde, 0xdf, 0x6a, 0xb0, 0x2e, 0x07, 0x87, 0x7d, + 0x19, 0xf6, 0x50, 0x32, 0x3d, 0x83, 0x86, 0x2c, 0x43, 0x3d, 0xac, 0xdc, 0x3d, 0x6c, 0xa8, 0xa5, + 0xee, 0xf7, 0xa1, 0x49, 0x13, 0x39, 0x72, 0xaa, 0x09, 0xe5, 0xfd, 0xdb, 0x98, 0xec, 0xbb, 0x9d, + 0xaf, 0xb9, 0xdc, 0x43, 0x00, 0x75, 0xed, 0x3c, 0x2e, 0x5b, 0xf7, 0xa2, 0x32, 0x0c, 0x4e, 0xe1, + 0xdc, 0xa2, 0x0d, 0x17, 0x17, 0xbc, 0xba, 0x6f, 0x83, 0xee, 0x09, 0xac, 0x49, 0xb5, 0x4f, 0xf3, + 0xa9, 0x53, 0xc6, 0x60, 0xf1, 0x1d, 0x2b, 0xdc, 0xde, 0xef, 0x1c, 0xed, 0x46, 0xf1, 0x75, 0x80, + 0xca, 0xf7, 0xa5, 0x4b, 0x9c, 0x7b, 0xb9, 0x64, 0x0b, 0x56, 0x26, 0x99, 0x31, 0x04, 0xd7, 0xfd, + 0x82, 0x2e, 0x43, 0x54, 0x5f, 0x38, 0x44, 0xde, 0xef, 0x1d, 0xe8, 0x7d, 0x4c, 0x23, 0x22, 0x3f, + 0xec, 0x26, 0x49, 0xac, 0x5f, 0x21, 0xee, 0x1d, 0xf3, 0x1f, 0x40, 0x2b, 0x50, 0x62, 0x48, 0xaa, + 0xc3, 0xbe, 0xc0, 0x60, 0x5b, 0xf2, 0x18, 0x33, 0x4a, 0xdd, 0x9c, 0x51, 0xbc, 0x3f, 0x3a, 0xb0, + 0xa6, 0x9c, 0xf2, 0xe3, 0x2c, 0x4a, 0xef, 0xad, 0xdf, 0x1e, 0xac, 0x4c, 0xb3, 0x28, 0xbd, 0x47, + 0x56, 0x16, 0x7c, 0xb3, 0xf9, 0x54, 0x9f, 0x93, 0x4f, 0xde, 0x9f, 0x1c, 0x78, 0x5c, 0x75, 0xeb, + 0xee, 0x70, 0x88, 0xc9, 0xdb, 0x2c, 0x29, 0x6b, 0x46, 0x5b, 0xaa, 0xcc, 0x68, 0x73, 0x55, 0xf6, + 0xf1, 0x53, 0x1c, 0xfe, 0xff, 0xaa, 0xfc, 0xab, 0x1a, 0x7c, 0xe9, 0xa8, 0x28, 0xbc, 0x73, 0x16, + 0x10, 0x3e, 0x42, 0xc6, 0xde, 0xa2, 0xbe, 0xc7, 0xd0, 0x21, 0x78, 0x53, 0xea, 0xa4, 0xcb, 0x71, + 0x51, 0x31, 0x36, 0xf3, 0x62, 0xbd, 0xcb, 0xfb, 0x8f, 0x03, 0xeb, 0x4a, 0xce, 0x8f, 0xa2, 0xe1, + 0xd5, 0x5b, 0x34, 0xfe, 0x04, 0xd6, 0xae, 0xa4, 0x06, 0x82, 0xba, 0x47, 0xdb, 0xae, 0x70, 0x2f, + 0x68, 0xfe, 0x7f, 0x1d, 0xd8, 0x50, 0x82, 0x5e, 0x90, 0xeb, 0xe8, 0x6d, 0x26, 0xeb, 0x19, 0x74, + 0x23, 0xa5, 0xc2, 0x3d, 0x1d, 0x50, 0x65, 0x5f, 0xd0, 0x03, 0x7f, 0x76, 0xa0, 0xab, 0x24, 0x3d, + 0x27, 0x29, 0xb2, 0x7b, 0xdb, 0xff, 0x43, 0x68, 0x23, 0x49, 0x59, 0x40, 0xee, 0xd3, 0x21, 0x4d, + 0xd6, 0x05, 0x9b, 0xe4, 0x15, 0x6c, 0xa8, 0x2b, 0xbc, 0xd1, 0x71, 0xc4, 0x2c, 0x1b, 0x84, 0x6a, + 0x3c, 0x75, 0x24, 0x53, 0x4e, 0xda, 0x8f, 0x33, 0xfa, 0x75, 0xbd, 0x7c, 0x9c, 0x79, 0x02, 0x10, + 0x84, 0xe1, 0x27, 0x94, 0x85, 0x11, 0xc9, 0x8f, 0x0f, 0x03, 0xf1, 0x3e, 0x86, 0x55, 0x31, 0x4d, + 0x9f, 0x1b, 0x97, 0xf1, 0x3b, 0x9f, 0x0b, 0xcc, 0x8b, 0x7c, 0xcd, 0xbe, 0xc8, 0x7b, 0x3f, 0x87, + 0x2f, 0xcc, 0x28, 0x2e, 0xbd, 0xbe, 0xaf, 0xde, 0x18, 0xf2, 0x4d, 0xb4, 0xf3, 0xbf, 0x32, 0xc7, + 0x85, 0xa6, 0x2e, 0xbe, 0xc5, 0xe4, 0xfd, 0xd2, 0x81, 0x77, 0x67, 0xc4, 0xef, 0x26, 0x09, 0xa3, + 0xd7, 0x3a, 0xb9, 0x1f, 0x62, 0x1b, 0xbb, 0xb5, 0xd6, 0xaa, 0xad, 0x75, 0xae, 0x12, 0xd6, 0x71, + 0xf0, 0x39, 0x28, 0xf1, 0x07, 0x07, 0xba, 0x5a, 0x89, 0x30, 0xd4, 0xdb, 0x7e, 0x1b, 0x9a, 0xea, + 0x7d, 0x52, 0x6f, 0xf8, 0xee, 0xdc, 0x0d, 0xf3, 0x77, 0x55, 0x5f, 0x2f, 0x9e, 0xcd, 0xc8, 0xda, + 0xbc, 0x31, 0xf0, 0xbb, 0x45, 0x07, 0x58, 0xf8, 0x05, 0x51, 0x33, 0x78, 0x3f, 0xcd, 0x93, 0xf9, + 0x00, 0x63, 0x7c, 0x48, 0x1f, 0x79, 0x2f, 0x61, 0x4d, 0x3e, 0x96, 0x96, 0x3e, 0x78, 0x10, 0xb1, + 0x9f, 0xc0, 0xba, 0x14, 0xfb, 0xe0, 0xfa, 0x16, 0xd5, 0x21, 0xfc, 0xb3, 0x7f, 0x19, 0x90, 0xf1, + 0x43, 0x4a, 0xff, 0x06, 0x3c, 0xca, 0x7d, 0xff, 0x32, 0x09, 0x8b, 0x2b, 0xca, 0x2d, 0x0f, 0x33, + 0xde, 0x37, 0x61, 0x73, 0x9f, 0x92, 0x6b, 0x64, 0x5c, 0x46, 0x59, 0xb1, 0xe4, 0x1c, 0x56, 0xf1, + 0x6b, 0xca, 0x1b, 0xc0, 0x86, 0x7e, 0x52, 0x3c, 0x0b, 0xc6, 0x11, 0x51, 0x5d, 0xe9, 0x09, 0x40, + 0x12, 0x8c, 0xf3, 0xbf, 0x14, 0xd4, 0xbb, 0x93, 0x81, 0x88, 0xef, 0xfc, 0x92, 0xde, 0xe8, 0xef, + 0x35, 0xf5, 0xbd, 0x44, 0xbc, 0x9f, 0x80, 0xeb, 0x23, 0x4f, 0x28, 0xe1, 0x68, 0x48, 0xdd, 0x86, + 0xf6, 0x7e, 0xc6, 0x18, 0x12, 0xb1, 0x55, 0xfe, 0xbe, 0x6e, 0x42, 0x42, 0xee, 0xa0, 0x94, 0xab, + 0xde, 0x2a, 0x0c, 0x64, 0xef, 0xf1, 0xcf, 0xb6, 0x76, 0x3e, 0x50, 0xff, 0x60, 0x7e, 0x34, 0xe3, + 0xc6, 0x8b, 0xa6, 0xfc, 0x47, 0xf3, 0x5b, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xe1, 0x45, 0x08, + 0x08, 0xe4, 0x1c, 0x00, 0x00, } diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index 7856f4d19..ee58d4a41 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -26,7 +26,7 @@ message GroupMemberFullInfo { string groupID = 1 ; string userID = 2 ; int32 roleLevel = 3; - int64 joinTime = 4; + int32 joinTime = 4; string nickname = 5; string faceURL = 6; int32 appMangerLevel = 7; //if >0 From edc81534c48a6afb3d42ced0ef9c4fbc8f70030f Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Fri, 11 Mar 2022 17:29:20 +0800 Subject: [PATCH 05/10] ws modify --- internal/msg_gateway/gate/logic.go | 53 +++++++++++++++++++++++++++ internal/msg_gateway/gate/validate.go | 2 +- pkg/common/constant/constant.go | 14 ++++--- 3 files changed, 62 insertions(+), 7 deletions(-) diff --git a/internal/msg_gateway/gate/logic.go b/internal/msg_gateway/gate/logic.go index df3b1a356..8e5fdcdac 100644 --- a/internal/msg_gateway/gate/logic.go +++ b/internal/msg_gateway/gate/logic.go @@ -52,6 +52,8 @@ func (ws *WServer) msgParse(conn *UserConn, binaryMsg []byte) { ws.getSeqReq(conn, &m) case constant.WSSendMsg: ws.sendMsgReq(conn, &m) + case constant.WSSendSignalMsg: + ws.sendSignalMsgReq(conn, &m) case constant.WSPullMsgBySeqList: ws.pullMsgBySeqListReq(conn, &m) default: @@ -193,6 +195,57 @@ func (ws *WServer) sendMsgResp(conn *UserConn, m *Req, pb *pbChat.SendMsgResp) { ws.sendMsg(conn, mReply) } +func (ws *WServer) sendSignalMsgReq(conn *UserConn, m *Req) { + sendMsgCount++ + log.NewInfo(m.OperationID, "Ws call success to sendSignalMsgReq start", m.MsgIncr, m.ReqIdentifier, m.SendID) + nReply := new(pbChat.SendMsgResp) + isPass, errCode, errMsg, pData := ws.argsValidate(m, constant.WSSendMsg) + if isPass { + data := pData.(sdk_ws.MsgData) + pbData := pbChat.SendMsgReq{ + Token: m.Token, + OperationID: m.OperationID, + MsgData: &data, + } + log.NewInfo(m.OperationID, "Ws call success to sendSignalMsgReq middle", m.ReqIdentifier, m.SendID, m.MsgIncr, data) + etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName) + client := pbChat.NewChatClient(etcdConn) + reply, err := client.SendMsg(context.Background(), &pbData) + if err != nil { + log.NewError(pbData.OperationID, "rpc sendMsg err", err.Error()) + nReply.ErrCode = 200 + nReply.ErrMsg = err.Error() + ws.sendSignalMsgResp(conn, m, nReply) + } else { + log.NewInfo(pbData.OperationID, "rpc call success to sendMsgReq", reply.String()) + ws.sendSignalMsgResp(conn, m, reply) + } + + } else { + nReply.ErrCode = errCode + nReply.ErrMsg = errMsg + ws.sendSignalMsgResp(conn, m, nReply) + } + +} +func (ws *WServer) sendSignalMsgResp(conn *UserConn, m *Req, pb *pbChat.SendMsgResp) { + // := make(map[string]interface{}) + + var mReplyData sdk_ws.UserSendMsgResp + mReplyData.ClientMsgID = pb.GetClientMsgID() + mReplyData.ServerMsgID = pb.GetServerMsgID() + mReplyData.SendTime = pb.GetSendTime() + b, _ := proto.Marshal(&mReplyData) + mReply := Resp{ + ReqIdentifier: m.ReqIdentifier, + MsgIncr: m.MsgIncr, + ErrCode: pb.GetErrCode(), + ErrMsg: pb.GetErrMsg(), + OperationID: m.OperationID, + Data: b, + } + ws.sendMsg(conn, mReply) +} func (ws *WServer) sendMsg(conn *UserConn, mReply interface{}) { var b bytes.Buffer enc := gob.NewEncoder(&b) diff --git a/internal/msg_gateway/gate/validate.go b/internal/msg_gateway/gate/validate.go index fe1411a62..c763ff1b2 100644 --- a/internal/msg_gateway/gate/validate.go +++ b/internal/msg_gateway/gate/validate.go @@ -58,7 +58,7 @@ type SeqListData struct { func (ws *WServer) argsValidate(m *Req, r int32) (isPass bool, errCode int32, errMsg string, returnData interface{}) { switch r { - case constant.WSSendMsg: + case constant.WSSendMsg | constant.WSSendSignalMsg: data := open_im_sdk.MsgData{} if err := proto.Unmarshal(m.Data, &data); err != nil { log.ErrorByKv("Decode Data struct err", "", "err", err.Error(), "reqIdentifier", r) diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index 199a1917a..7e1971c64 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -20,8 +20,10 @@ const ( WSGetNewestSeq = 1001 WSPullMsgBySeqList = 1002 WSSendMsg = 1003 + WSSendSignalMsg = 1004 WSPushMsg = 2001 WSKickOnlineMsg = 2002 + WsLogoutMsg = 2003 WSDataError = 3001 ///ContentType @@ -139,16 +141,16 @@ const ( //callbackCommand CallbackBeforeSendSingleMsgCommand = "callbackBeforeSendSingleMsgCommand" - CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand" - CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand" - CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand" - CallbackWordFilterCommand = "callbackWordFilterCommand" + CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand" + CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand" + CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand" + CallbackWordFilterCommand = "callbackWordFilterCommand" //callback actionCode - ActionAllow = 0 + ActionAllow = 0 ActionForbidden = 1 //callback callbackHandleCode CallbackHandleSuccess = 0 - CallbackHandleFailed = 1 + CallbackHandleFailed = 1 ) var ContentType2PushContent = map[int64]string{ From 24e04f13031480b2636ce563f22f28ea79bf8f55 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Fri, 11 Mar 2022 18:06:46 +0800 Subject: [PATCH 06/10] utils modify --- pkg/common/utils/utils.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/common/utils/utils.go b/pkg/common/utils/utils.go index db9db5461..8e7346cc1 100644 --- a/pkg/common/utils/utils.go +++ b/pkg/common/utils/utils.go @@ -117,7 +117,7 @@ func GroupMemberDBCopyOpenIM(dst *open_im_sdk.GroupMemberFullInfo, src *db.Group dst.AppMangerLevel = 1 } - dst.JoinTime = src.JoinTime.Unix() + dst.JoinTime = int32(src.JoinTime.Unix()) return nil } From 0315abc0df10c3f4cc073e14a5bb01b30a11653b Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Fri, 11 Mar 2022 18:09:28 +0800 Subject: [PATCH 07/10] utils modify --- internal/rpc/group/group.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index 1a992cfa3..6b5c872c4 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -395,7 +395,7 @@ func (s *groupServer) GetGroupMembersInfo(ctx context.Context, req *pbGroup.GetG continue } else { utils.CopyStructFields(&memberNode, memberInfo) - memberNode.JoinTime = memberInfo.JoinTime.Unix() + memberNode.JoinTime = int32(memberInfo.JoinTime.Unix()) resp.MemberList = append(resp.MemberList, &memberNode) } } @@ -827,7 +827,7 @@ func (s *groupServer) GetGroupMembersCMS(_ context.Context, req *pbGroup.GetGrou GroupID: req.GroupId, UserID: groupMember.UserID, RoleLevel: groupMember.RoleLevel, - JoinTime: groupMember.JoinTime.Unix(), + JoinTime: int32(groupMember.JoinTime.Unix()), Nickname: groupMember.Nickname, FaceURL: groupMember.FaceURL, JoinSource: groupMember.JoinSource, From 9d132d7f9275395cb99681d54c2e624af4c60428 Mon Sep 17 00:00:00 2001 From: Gordon <1432970085@qq.com> Date: Fri, 11 Mar 2022 18:10:58 +0800 Subject: [PATCH 08/10] int32 modify --- internal/cms_api/group/group.go | 55 ++++++++++++++++----------------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/internal/cms_api/group/group.go b/internal/cms_api/group/group.go index d402ea581..c7013c2bd 100644 --- a/internal/cms_api/group/group.go +++ b/internal/cms_api/group/group.go @@ -128,7 +128,7 @@ func GetGroupByName(c *gin.Context) { func CreateGroup(c *gin.Context) { var ( req cms_api_struct.CreateGroupRequest - _ cms_api_struct.CreateGroupResponse + _ cms_api_struct.CreateGroupResponse reqPb pbGroup.CreateGroupReq ) if err := c.BindJSON(&req); err != nil { @@ -253,9 +253,9 @@ func OpenPrivateChat(c *gin.Context) { func GetGroupMembers(c *gin.Context) { var ( - req cms_api_struct.GetGroupMembersRequest + req cms_api_struct.GetGroupMembersRequest reqPb pbGroup.GetGroupMembersCMSReq - resp cms_api_struct.GetGroupMembersResponse + resp cms_api_struct.GetGroupMembersResponse ) if err := c.ShouldBindQuery(&req); err != nil { log.NewError(reqPb.OperationID, utils.GetSelfFuncName(), "ShouldBindQuery failed ", err.Error()) @@ -286,21 +286,20 @@ func GetGroupMembers(c *gin.Context) { MemberPosition: int(groupMembers.RoleLevel), MemberNickName: groupMembers.Nickname, MemberId: groupMembers.UserID, - JoinTime: utils.UnixSecondToTime(groupMembers.JoinTime).String(), + JoinTime: utils.UnixSecondToTime(int64(groupMembers.JoinTime)).String(), }) } openIMHttp.RespHttp200(c, constant.OK, resp) } - func AddGroupMembers(c *gin.Context) { var ( - req cms_api_struct.RemoveGroupMembersRequest - resp cms_api_struct.RemoveGroupMembersResponse + req cms_api_struct.RemoveGroupMembersRequest + resp cms_api_struct.RemoveGroupMembersResponse reqPb pbGroup.AddGroupMembersCMSReq ) if err := c.BindJSON(&req); err != nil { - log.NewError(reqPb.OperationId, utils.GetSelfFuncName(),"BindJSON failed ", err.Error()) + log.NewError(reqPb.OperationId, utils.GetSelfFuncName(), "BindJSON failed ", err.Error()) openIMHttp.RespHttp200(c, constant.ErrArgs, nil) return } @@ -321,12 +320,12 @@ func AddGroupMembers(c *gin.Context) { func RemoveGroupMembers(c *gin.Context) { var ( - req cms_api_struct.RemoveGroupMembersRequest - resp cms_api_struct.RemoveGroupMembersResponse + req cms_api_struct.RemoveGroupMembersRequest + resp cms_api_struct.RemoveGroupMembersResponse reqPb pbGroup.RemoveGroupMembersCMSReq ) if err := c.BindJSON(&req); err != nil { - log.NewError(reqPb.OperationID, utils.GetSelfFuncName(),"BindJSON failed ", err.Error()) + log.NewError(reqPb.OperationID, utils.GetSelfFuncName(), "BindJSON failed ", err.Error()) openIMHttp.RespHttp200(c, constant.ErrArgs, nil) return } @@ -347,12 +346,12 @@ func RemoveGroupMembers(c *gin.Context) { func DeleteGroup(c *gin.Context) { var ( - req cms_api_struct.DeleteGroupRequest - _ cms_api_struct.DeleteGroupResponse + req cms_api_struct.DeleteGroupRequest + _ cms_api_struct.DeleteGroupResponse reqPb pbGroup.DeleteGroupReq ) if err := c.BindJSON(&req); err != nil { - log.NewError(reqPb.OperationID, utils.GetSelfFuncName(),"BindJSON failed ", err.Error()) + log.NewError(reqPb.OperationID, utils.GetSelfFuncName(), "BindJSON failed ", err.Error()) openIMHttp.RespHttp200(c, constant.ErrArgs, nil) return } @@ -370,12 +369,12 @@ func DeleteGroup(c *gin.Context) { func SetGroupMaster(c *gin.Context) { var ( - req cms_api_struct.SetGroupMasterRequest - _ cms_api_struct.SetGroupMasterResponse + req cms_api_struct.SetGroupMasterRequest + _ cms_api_struct.SetGroupMasterResponse reqPb pbGroup.OperateUserRoleReq ) if err := c.BindJSON(&req); err != nil { - log.NewError(reqPb.OperationID, utils.GetSelfFuncName(),"BindJSON failed ", err.Error()) + log.NewError(reqPb.OperationID, utils.GetSelfFuncName(), "BindJSON failed ", err.Error()) openIMHttp.RespHttp200(c, constant.ErrArgs, nil) return } @@ -395,8 +394,8 @@ func SetGroupMaster(c *gin.Context) { func SetGroupOrdinaryUsers(c *gin.Context) { var ( - req cms_api_struct.SetGroupMemberRequest - _ cms_api_struct.AdminLoginResponse + req cms_api_struct.SetGroupMemberRequest + _ cms_api_struct.AdminLoginResponse reqPb pbGroup.OperateUserRoleReq ) if err := c.BindJSON(&req); err != nil { @@ -420,8 +419,8 @@ func SetGroupOrdinaryUsers(c *gin.Context) { func AlterGroupInfo(c *gin.Context) { var ( - req cms_api_struct.AlterGroupInfoRequest - _ cms_api_struct.SetGroupMasterResponse + req cms_api_struct.AlterGroupInfoRequest + _ cms_api_struct.SetGroupMasterResponse reqPb pbGroup.SetGroupInfoReq ) if err := c.BindJSON(&req); err != nil { @@ -431,12 +430,12 @@ func AlterGroupInfo(c *gin.Context) { } reqPb.OpUserID = c.MustGet("userID").(string) reqPb.GroupInfo = &commonPb.GroupInfo{ - GroupID: req.GroupID, - GroupName: req.GroupName, - Introduction: req.Introduction, - Notification: req.Notification, - FaceURL: req.ProfilePhoto, - GroupType: int32(req.GroupType), + GroupID: req.GroupID, + GroupName: req.GroupName, + Introduction: req.Introduction, + Notification: req.Notification, + FaceURL: req.ProfilePhoto, + GroupType: int32(req.GroupType), } etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImGroupName) client := pbGroup.NewGroupClient(etcdConn) @@ -447,4 +446,4 @@ func AlterGroupInfo(c *gin.Context) { return } openIMHttp.RespHttp200(c, constant.OK, nil) -} \ No newline at end of file +} From 94a579e7d36b342085ad3385560e8437a21689dd Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Fri, 11 Mar 2022 18:11:22 +0800 Subject: [PATCH 09/10] signal --- pkg/proto/sdk_ws/ws.proto | 96 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 95 insertions(+), 1 deletion(-) diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index ee58d4a41..d6608090d 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -349,4 +349,98 @@ message RequestPagination { message ResponsePagination { int32 CurrentPage = 5; int32 ShowNumber = 6; -} \ No newline at end of file +} + + +///////////////////signal////////////// +message SignalReq { + oneof payload { + SignalInviteReq invite = 1; + SignalInviteInGroupReq inviteInGroup= 2; + SignalCancelReq cancel = 3; + SignalAcceptReq accept = 4; + SignalHungUpReq hungUp = 5; + SignalRejectReq reject = 6; + } +} + +message SignalResp { + oneof payload { + SignalInviteReply invite = 1; + SignalInviteInGroupReply inviteInGroup= 2; + SignalCancelReply cancel = 3; + SignalAcceptReply accept = 4; + SignalHungUpReply hungUp = 5; + SignalRejectReply reject = 6; + } +} + +message InvitationInfo { + string inviterUserID = 1; + repeated string inviteeUserIDList = 2; + string customData = 3; + string groupID = 4; +} + + +message SignalInviteReq { + InvitationInfo invitation = 1; +} + +message SignalInviteReply { + string token = 1; + string roomID = 2; + string liveURL = 3; +} + +message SignalInviteInGroupReq { + InvitationInfo invitation = 1; +} + +message SignalInviteInGroupReply { + string token = 1; + string roomID = 2; + string liveURL = 3; +} + +message SignalCancelReq { + string inviterUserID = 1; + SignalInviteReq invitation = 2; +} + +message SignalCancelReply { + +} + +message SignalAcceptReq { + string inviteeUserID = 1; + SignalInviteReq invitation = 2; +} + +message SignalAcceptReply { + +} + +message SignalHungUpReq { + string UserID = 1; + SignalInviteReq invitation = 2; +} + +message SignalHungUpReply { + +} + + +message SignalRejectReq { + string inviteeUserID = 1; + SignalInviteReq invitation = 2; +} + +message SignalRejectReply { + +} + + + + + From 9ab9ae04085b8e1ec4d1c62181b4edd785f9717f Mon Sep 17 00:00:00 2001 From: wenxu12345 <44203734@qq.com> Date: Fri, 11 Mar 2022 18:12:34 +0800 Subject: [PATCH 10/10] signal --- pkg/proto/sdk_ws/ws.proto | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index d6608090d..5919a6c2f 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -418,7 +418,9 @@ message SignalAcceptReq { } message SignalAcceptReply { - + string token = 1; + string roomID = 2; + string liveURL = 3; } message SignalHungUpReq {