// protoc -I=. -I=$GOPATH/src --go_out=plugins=grpc:. *.proto // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.27.1 // protoc v3.19.1 // source: msg.proto package proto import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) //notice msg define type NoticeMsgType int32 const ( NoticeMsgType_UpdateGroupNameNoticeMsg NoticeMsgType = 0 NoticeMsgType_SignInGroupNoticeMsg NoticeMsgType = 1 NoticeMsgType_SignOutGroupNoticeMsg NoticeMsgType = 2 NoticeMsgType_KickOutGroupNoticeMsg NoticeMsgType = 3 NoticeMsgType_DeleteGroupNoticeMsg NoticeMsgType = 4 NoticeMsgType_UpdateGroupMutedNoticeMsg NoticeMsgType = 5 NoticeMsgType_UpdateGroupMemberMutedNoticeMsg NoticeMsgType = 6 NoticeMsgType_UpdateGroupOwnerNoticeMsg NoticeMsgType = 7 NoticeMsgType_MsgRevoked NoticeMsgType = 8 //撤回消息通知,客户端占用 ) // Enum value maps for NoticeMsgType. var ( NoticeMsgType_name = map[int32]string{ 0: "UpdateGroupNameNoticeMsg", 1: "SignInGroupNoticeMsg", 2: "SignOutGroupNoticeMsg", 3: "KickOutGroupNoticeMsg", 4: "DeleteGroupNoticeMsg", 5: "UpdateGroupMutedNoticeMsg", 6: "UpdateGroupMemberMutedNoticeMsg", 7: "UpdateGroupOwnerNoticeMsg", 8: "MsgRevoked", } NoticeMsgType_value = map[string]int32{ "UpdateGroupNameNoticeMsg": 0, "SignInGroupNoticeMsg": 1, "SignOutGroupNoticeMsg": 2, "KickOutGroupNoticeMsg": 3, "DeleteGroupNoticeMsg": 4, "UpdateGroupMutedNoticeMsg": 5, "UpdateGroupMemberMutedNoticeMsg": 6, "UpdateGroupOwnerNoticeMsg": 7, "MsgRevoked": 8, } ) func (x NoticeMsgType) Enum() *NoticeMsgType { p := new(NoticeMsgType) *p = x return p } func (x NoticeMsgType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (NoticeMsgType) Descriptor() protoreflect.EnumDescriptor { return file_msg_proto_enumTypes[0].Descriptor() } func (NoticeMsgType) Type() protoreflect.EnumType { return &file_msg_proto_enumTypes[0] } func (x NoticeMsgType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use NoticeMsgType.Descriptor instead. func (NoticeMsgType) EnumDescriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{0} } type RedPacketMsg_RPType int32 const ( RedPacketMsg_RandomAmount RedPacketMsg_RPType = 0 RedPacketMsg_IdenticalAmount RedPacketMsg_RPType = 1 ) // Enum value maps for RedPacketMsg_RPType. var ( RedPacketMsg_RPType_name = map[int32]string{ 0: "RandomAmount", 1: "IdenticalAmount", } RedPacketMsg_RPType_value = map[string]int32{ "RandomAmount": 0, "IdenticalAmount": 1, } ) func (x RedPacketMsg_RPType) Enum() *RedPacketMsg_RPType { p := new(RedPacketMsg_RPType) *p = x return p } func (x RedPacketMsg_RPType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (RedPacketMsg_RPType) Descriptor() protoreflect.EnumDescriptor { return file_msg_proto_enumTypes[1].Descriptor() } func (RedPacketMsg_RPType) Type() protoreflect.EnumType { return &file_msg_proto_enumTypes[1] } func (x RedPacketMsg_RPType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use RedPacketMsg_RPType.Descriptor instead. func (RedPacketMsg_RPType) EnumDescriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{11, 0} } type ContactCardMsg_CardType int32 const ( ContactCardMsg_Undefined ContactCardMsg_CardType = 0 ContactCardMsg_Personal ContactCardMsg_CardType = 1 ) // Enum value maps for ContactCardMsg_CardType. var ( ContactCardMsg_CardType_name = map[int32]string{ 0: "Undefined", 1: "Personal", } ContactCardMsg_CardType_value = map[string]int32{ "Undefined": 0, "Personal": 1, } ) func (x ContactCardMsg_CardType) Enum() *ContactCardMsg_CardType { p := new(ContactCardMsg_CardType) *p = x return p } func (x ContactCardMsg_CardType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ContactCardMsg_CardType) Descriptor() protoreflect.EnumDescriptor { return file_msg_proto_enumTypes[2].Descriptor() } func (ContactCardMsg_CardType) Type() protoreflect.EnumType { return &file_msg_proto_enumTypes[2] } func (x ContactCardMsg_CardType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ContactCardMsg_CardType.Descriptor instead. func (ContactCardMsg_CardType) EnumDescriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{12, 0} } type EncryptMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` } func (x *EncryptMsg) Reset() { *x = EncryptMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *EncryptMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*EncryptMsg) ProtoMessage() {} func (x *EncryptMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use EncryptMsg.ProtoReflect.Descriptor instead. func (*EncryptMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{0} } func (x *EncryptMsg) GetContent() string { if x != nil { return x.Content } return "" } type TextMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` Mention []string `protobuf:"bytes,2,rep,name=mention,proto3" json:"mention,omitempty"` } func (x *TextMsg) Reset() { *x = TextMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TextMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*TextMsg) ProtoMessage() {} func (x *TextMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TextMsg.ProtoReflect.Descriptor instead. func (*TextMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{1} } func (x *TextMsg) GetContent() string { if x != nil { return x.Content } return "" } func (x *TextMsg) GetMention() []string { if x != nil { return x.Mention } return nil } type AudioMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MediaUrl string `protobuf:"bytes,1,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` Time int32 `protobuf:"varint,2,opt,name=time,proto3" json:"time,omitempty"` } func (x *AudioMsg) Reset() { *x = AudioMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *AudioMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*AudioMsg) ProtoMessage() {} func (x *AudioMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use AudioMsg.ProtoReflect.Descriptor instead. func (*AudioMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{2} } func (x *AudioMsg) GetMediaUrl() string { if x != nil { return x.MediaUrl } return "" } func (x *AudioMsg) GetTime() int32 { if x != nil { return x.Time } return 0 } type ImageMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MediaUrl string `protobuf:"bytes,1,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` Height int32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"` Width int32 `protobuf:"varint,3,opt,name=width,proto3" json:"width,omitempty"` } func (x *ImageMsg) Reset() { *x = ImageMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ImageMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*ImageMsg) ProtoMessage() {} func (x *ImageMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ImageMsg.ProtoReflect.Descriptor instead. func (*ImageMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{3} } func (x *ImageMsg) GetMediaUrl() string { if x != nil { return x.MediaUrl } return "" } func (x *ImageMsg) GetHeight() int32 { if x != nil { return x.Height } return 0 } func (x *ImageMsg) GetWidth() int32 { if x != nil { return x.Width } return 0 } type VideoMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MediaUrl string `protobuf:"bytes,1,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` Time int32 `protobuf:"varint,2,opt,name=time,proto3" json:"time,omitempty"` Height int32 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"` Width int32 `protobuf:"varint,4,opt,name=width,proto3" json:"width,omitempty"` } func (x *VideoMsg) Reset() { *x = VideoMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *VideoMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*VideoMsg) ProtoMessage() {} func (x *VideoMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use VideoMsg.ProtoReflect.Descriptor instead. func (*VideoMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{4} } func (x *VideoMsg) GetMediaUrl() string { if x != nil { return x.MediaUrl } return "" } func (x *VideoMsg) GetTime() int32 { if x != nil { return x.Time } return 0 } func (x *VideoMsg) GetHeight() int32 { if x != nil { return x.Height } return 0 } func (x *VideoMsg) GetWidth() int32 { if x != nil { return x.Width } return 0 } type FileMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields MediaUrl string `protobuf:"bytes,1,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` Md5 string `protobuf:"bytes,3,opt,name=md5,proto3" json:"md5,omitempty"` Size int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"` } func (x *FileMsg) Reset() { *x = FileMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FileMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*FileMsg) ProtoMessage() {} func (x *FileMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FileMsg.ProtoReflect.Descriptor instead. func (*FileMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{5} } func (x *FileMsg) GetMediaUrl() string { if x != nil { return x.MediaUrl } return "" } func (x *FileMsg) GetName() string { if x != nil { return x.Name } return "" } func (x *FileMsg) GetMd5() string { if x != nil { return x.Md5 } return "" } func (x *FileMsg) GetSize() int64 { if x != nil { return x.Size } return 0 } type CardMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Bank string `protobuf:"bytes,1,opt,name=bank,proto3" json:"bank,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` Account string `protobuf:"bytes,3,opt,name=account,proto3" json:"account,omitempty"` } func (x *CardMsg) Reset() { *x = CardMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CardMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*CardMsg) ProtoMessage() {} func (x *CardMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CardMsg.ProtoReflect.Descriptor instead. func (*CardMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{6} } func (x *CardMsg) GetBank() string { if x != nil { return x.Bank } return "" } func (x *CardMsg) GetName() string { if x != nil { return x.Name } return "" } func (x *CardMsg) GetAccount() string { if x != nil { return x.Account } return "" } type NoticeMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type NoticeMsgType `protobuf:"varint,1,opt,name=type,proto3,enum=imparse.msg.NoticeMsgType" json:"type,omitempty"` Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"` } func (x *NoticeMsg) Reset() { *x = NoticeMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsg) ProtoMessage() {} func (x *NoticeMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsg.ProtoReflect.Descriptor instead. func (*NoticeMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{7} } func (x *NoticeMsg) GetType() NoticeMsgType { if x != nil { return x.Type } return NoticeMsgType_UpdateGroupNameNoticeMsg } func (x *NoticeMsg) GetBody() []byte { if x != nil { return x.Body } return nil } type ForwardItem struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Avatar string `protobuf:"bytes,1,opt,name=avatar,proto3" json:"avatar,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` MsgType int32 `protobuf:"varint,3,opt,name=msgType,proto3" json:"msgType,omitempty"` Msg []byte `protobuf:"bytes,4,opt,name=msg,proto3" json:"msg,omitempty"` Datetime uint64 `protobuf:"varint,5,opt,name=datetime,proto3" json:"datetime,omitempty"` } func (x *ForwardItem) Reset() { *x = ForwardItem{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ForwardItem) String() string { return protoimpl.X.MessageStringOf(x) } func (*ForwardItem) ProtoMessage() {} func (x *ForwardItem) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ForwardItem.ProtoReflect.Descriptor instead. func (*ForwardItem) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{8} } func (x *ForwardItem) GetAvatar() string { if x != nil { return x.Avatar } return "" } func (x *ForwardItem) GetName() string { if x != nil { return x.Name } return "" } func (x *ForwardItem) GetMsgType() int32 { if x != nil { return x.MsgType } return 0 } func (x *ForwardItem) GetMsg() []byte { if x != nil { return x.Msg } return nil } func (x *ForwardItem) GetDatetime() uint64 { if x != nil { return x.Datetime } return 0 } type ForwardMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Items []*ForwardItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` } func (x *ForwardMsg) Reset() { *x = ForwardMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ForwardMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*ForwardMsg) ProtoMessage() {} func (x *ForwardMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ForwardMsg.ProtoReflect.Descriptor instead. func (*ForwardMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{9} } func (x *ForwardMsg) GetItems() []*ForwardItem { if x != nil { return x.Items } return nil } type TransferMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields TxHash string `protobuf:"bytes,1,opt,name=txHash,proto3" json:"txHash,omitempty"` CoinName string `protobuf:"bytes,2,opt,name=coinName,proto3" json:"coinName,omitempty"` } func (x *TransferMsg) Reset() { *x = TransferMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *TransferMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*TransferMsg) ProtoMessage() {} func (x *TransferMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use TransferMsg.ProtoReflect.Descriptor instead. func (*TransferMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{10} } func (x *TransferMsg) GetTxHash() string { if x != nil { return x.TxHash } return "" } func (x *TransferMsg) GetCoinName() string { if x != nil { return x.CoinName } return "" } type RedPacketMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields TxHash string `protobuf:"bytes,1,opt,name=txHash,proto3" json:"txHash,omitempty"` CoinName string `protobuf:"bytes,2,opt,name=coinName,proto3" json:"coinName,omitempty"` Exec string `protobuf:"bytes,3,opt,name=exec,proto3" json:"exec,omitempty"` //执行器名称 user.p. PacketType RedPacketMsg_RPType `protobuf:"varint,4,opt,name=packetType,proto3,enum=imparse.msg.RedPacketMsg_RPType" json:"packetType,omitempty"` PrivateKey string `protobuf:"bytes,5,opt,name=privateKey,proto3" json:"privateKey,omitempty"` //客户端创建的私钥(选填) Remark string `protobuf:"bytes,6,opt,name=remark,proto3" json:"remark,omitempty"` Expire uint64 `protobuf:"varint,7,opt,name=expire,proto3" json:"expire,omitempty"` //到期时间 单位:ms时间戳 } func (x *RedPacketMsg) Reset() { *x = RedPacketMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RedPacketMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*RedPacketMsg) ProtoMessage() {} func (x *RedPacketMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RedPacketMsg.ProtoReflect.Descriptor instead. func (*RedPacketMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{11} } func (x *RedPacketMsg) GetTxHash() string { if x != nil { return x.TxHash } return "" } func (x *RedPacketMsg) GetCoinName() string { if x != nil { return x.CoinName } return "" } func (x *RedPacketMsg) GetExec() string { if x != nil { return x.Exec } return "" } func (x *RedPacketMsg) GetPacketType() RedPacketMsg_RPType { if x != nil { return x.PacketType } return RedPacketMsg_RandomAmount } func (x *RedPacketMsg) GetPrivateKey() string { if x != nil { return x.PrivateKey } return "" } func (x *RedPacketMsg) GetRemark() string { if x != nil { return x.Remark } return "" } func (x *RedPacketMsg) GetExpire() uint64 { if x != nil { return x.Expire } return 0 } type ContactCardMsg struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Type ContactCardMsg_CardType `protobuf:"varint,1,opt,name=type,proto3,enum=imparse.msg.ContactCardMsg_CardType" json:"type,omitempty"` Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` Avatar string `protobuf:"bytes,4,opt,name=avatar,proto3" json:"avatar,omitempty"` Server string `protobuf:"bytes,5,opt,name=server,proto3" json:"server,omitempty"` Inviter string `protobuf:"bytes,6,opt,name=inviter,proto3" json:"inviter,omitempty"` } func (x *ContactCardMsg) Reset() { *x = ContactCardMsg{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ContactCardMsg) String() string { return protoimpl.X.MessageStringOf(x) } func (*ContactCardMsg) ProtoMessage() {} func (x *ContactCardMsg) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ContactCardMsg.ProtoReflect.Descriptor instead. func (*ContactCardMsg) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{12} } func (x *ContactCardMsg) GetType() ContactCardMsg_CardType { if x != nil { return x.Type } return ContactCardMsg_Undefined } func (x *ContactCardMsg) GetId() string { if x != nil { return x.Id } return "" } func (x *ContactCardMsg) GetName() string { if x != nil { return x.Name } return "" } func (x *ContactCardMsg) GetAvatar() string { if x != nil { return x.Avatar } return "" } func (x *ContactCardMsg) GetServer() string { if x != nil { return x.Server } return "" } func (x *ContactCardMsg) GetInviter() string { if x != nil { return x.Inviter } return "" } type NoticeMsgUpdateGroupName struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` } func (x *NoticeMsgUpdateGroupName) Reset() { *x = NoticeMsgUpdateGroupName{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgUpdateGroupName) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgUpdateGroupName) ProtoMessage() {} func (x *NoticeMsgUpdateGroupName) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgUpdateGroupName.ProtoReflect.Descriptor instead. func (*NoticeMsgUpdateGroupName) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{13} } func (x *NoticeMsgUpdateGroupName) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgUpdateGroupName) GetOperator() string { if x != nil { return x.Operator } return "" } func (x *NoticeMsgUpdateGroupName) GetName() string { if x != nil { return x.Name } return "" } type NoticeMsgSignInGroup struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Inviter string `protobuf:"bytes,2,opt,name=inviter,proto3" json:"inviter,omitempty"` Members []string `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` } func (x *NoticeMsgSignInGroup) Reset() { *x = NoticeMsgSignInGroup{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgSignInGroup) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgSignInGroup) ProtoMessage() {} func (x *NoticeMsgSignInGroup) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgSignInGroup.ProtoReflect.Descriptor instead. func (*NoticeMsgSignInGroup) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{14} } func (x *NoticeMsgSignInGroup) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgSignInGroup) GetInviter() string { if x != nil { return x.Inviter } return "" } func (x *NoticeMsgSignInGroup) GetMembers() []string { if x != nil { return x.Members } return nil } type NoticeMsgSignOutGroup struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } func (x *NoticeMsgSignOutGroup) Reset() { *x = NoticeMsgSignOutGroup{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgSignOutGroup) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgSignOutGroup) ProtoMessage() {} func (x *NoticeMsgSignOutGroup) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgSignOutGroup.ProtoReflect.Descriptor instead. func (*NoticeMsgSignOutGroup) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{15} } func (x *NoticeMsgSignOutGroup) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgSignOutGroup) GetOperator() string { if x != nil { return x.Operator } return "" } type NoticeMsgKickOutGroup struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` Members []string `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` } func (x *NoticeMsgKickOutGroup) Reset() { *x = NoticeMsgKickOutGroup{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgKickOutGroup) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgKickOutGroup) ProtoMessage() {} func (x *NoticeMsgKickOutGroup) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgKickOutGroup.ProtoReflect.Descriptor instead. func (*NoticeMsgKickOutGroup) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{16} } func (x *NoticeMsgKickOutGroup) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgKickOutGroup) GetOperator() string { if x != nil { return x.Operator } return "" } func (x *NoticeMsgKickOutGroup) GetMembers() []string { if x != nil { return x.Members } return nil } type NoticeMsgDeleteGroup struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` } func (x *NoticeMsgDeleteGroup) Reset() { *x = NoticeMsgDeleteGroup{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgDeleteGroup) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgDeleteGroup) ProtoMessage() {} func (x *NoticeMsgDeleteGroup) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgDeleteGroup.ProtoReflect.Descriptor instead. func (*NoticeMsgDeleteGroup) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{17} } func (x *NoticeMsgDeleteGroup) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgDeleteGroup) GetOperator() string { if x != nil { return x.Operator } return "" } type NoticeMsgUpdateGroupMuted struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` Type MuteType `protobuf:"varint,3,opt,name=type,proto3,enum=imparse.signal.MuteType" json:"type,omitempty"` } func (x *NoticeMsgUpdateGroupMuted) Reset() { *x = NoticeMsgUpdateGroupMuted{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgUpdateGroupMuted) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgUpdateGroupMuted) ProtoMessage() {} func (x *NoticeMsgUpdateGroupMuted) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgUpdateGroupMuted.ProtoReflect.Descriptor instead. func (*NoticeMsgUpdateGroupMuted) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{18} } func (x *NoticeMsgUpdateGroupMuted) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgUpdateGroupMuted) GetOperator() string { if x != nil { return x.Operator } return "" } func (x *NoticeMsgUpdateGroupMuted) GetType() MuteType { if x != nil { return x.Type } return MuteType_MuteAllow } type NoticeMsgUpdateGroupMemberMutedTime struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"` Members []string `protobuf:"bytes,3,rep,name=members,proto3" json:"members,omitempty"` } func (x *NoticeMsgUpdateGroupMemberMutedTime) Reset() { *x = NoticeMsgUpdateGroupMemberMutedTime{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgUpdateGroupMemberMutedTime) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgUpdateGroupMemberMutedTime) ProtoMessage() {} func (x *NoticeMsgUpdateGroupMemberMutedTime) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgUpdateGroupMemberMutedTime.ProtoReflect.Descriptor instead. func (*NoticeMsgUpdateGroupMemberMutedTime) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{19} } func (x *NoticeMsgUpdateGroupMemberMutedTime) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgUpdateGroupMemberMutedTime) GetOperator() string { if x != nil { return x.Operator } return "" } func (x *NoticeMsgUpdateGroupMemberMutedTime) GetMembers() []string { if x != nil { return x.Members } return nil } type NoticeMsgUpdateGroupOwner struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Group int64 `protobuf:"varint,1,opt,name=group,proto3" json:"group,omitempty"` NewOwner string `protobuf:"bytes,2,opt,name=newOwner,proto3" json:"newOwner,omitempty"` } func (x *NoticeMsgUpdateGroupOwner) Reset() { *x = NoticeMsgUpdateGroupOwner{} if protoimpl.UnsafeEnabled { mi := &file_msg_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NoticeMsgUpdateGroupOwner) String() string { return protoimpl.X.MessageStringOf(x) } func (*NoticeMsgUpdateGroupOwner) ProtoMessage() {} func (x *NoticeMsgUpdateGroupOwner) ProtoReflect() protoreflect.Message { mi := &file_msg_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use NoticeMsgUpdateGroupOwner.ProtoReflect.Descriptor instead. func (*NoticeMsgUpdateGroupOwner) Descriptor() ([]byte, []int) { return file_msg_proto_rawDescGZIP(), []int{20} } func (x *NoticeMsgUpdateGroupOwner) GetGroup() int64 { if x != nil { return x.Group } return 0 } func (x *NoticeMsgUpdateGroupOwner) GetNewOwner() string { if x != nil { return x.NewOwner } return "" } var File_msg_proto protoreflect.FileDescriptor var file_msg_proto_rawDesc = []byte{ 0x0a, 0x09, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x6d, 0x73, 0x67, 0x1a, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x26, 0x0a, 0x0a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3d, 0x0a, 0x07, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x08, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x08, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x68, 0x0a, 0x08, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x22, 0x5f, 0x0a, 0x07, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x64, 0x35, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x64, 0x35, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x22, 0x4b, 0x0a, 0x07, 0x43, 0x61, 0x72, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x61, 0x6e, 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4f, 0x0a, 0x09, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x0b, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x0a, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x2e, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x41, 0x0a, 0x0b, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x99, 0x02, 0x0a, 0x0c, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x73, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x78, 0x48, 0x61, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x78, 0x65, 0x63, 0x12, 0x40, 0x0a, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x52, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x4d, 0x73, 0x67, 0x2e, 0x52, 0x50, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x22, 0x2f, 0x0a, 0x06, 0x52, 0x50, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x01, 0x22, 0xe1, 0x01, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4d, 0x73, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x6d, 0x73, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x43, 0x61, 0x72, 0x64, 0x4d, 0x73, 0x67, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x22, 0x27, 0x0a, 0x08, 0x43, 0x61, 0x72, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x10, 0x01, 0x22, 0x60, 0x0a, 0x18, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x14, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x49, 0x0a, 0x15, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x63, 0x0a, 0x15, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x4b, 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x48, 0x0a, 0x14, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7b, 0x0a, 0x19, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2c, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x2e, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x71, 0x0a, 0x23, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x22, 0x4d, 0x0a, 0x19, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x2a, 0x8a, 0x02, 0x0a, 0x0d, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x53, 0x69, 0x67, 0x6e, 0x49, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x69, 0x67, 0x6e, 0x4f, 0x75, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x4b, 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x05, 0x12, 0x23, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4d, 0x75, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x4d, 0x73, 0x67, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x10, 0x08, 0x42, 0x21, 0x5a, 0x1f, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x33, 0x33, 0x2e, 0x63, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x69, 0x6d, 0x70, 0x61, 0x72, 0x73, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_msg_proto_rawDescOnce sync.Once file_msg_proto_rawDescData = file_msg_proto_rawDesc ) func file_msg_proto_rawDescGZIP() []byte { file_msg_proto_rawDescOnce.Do(func() { file_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_msg_proto_rawDescData) }) return file_msg_proto_rawDescData } var file_msg_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 21) var file_msg_proto_goTypes = []interface{}{ (NoticeMsgType)(0), // 0: imparse.msg.NoticeMsgType (RedPacketMsg_RPType)(0), // 1: imparse.msg.RedPacketMsg.RPType (ContactCardMsg_CardType)(0), // 2: imparse.msg.ContactCardMsg.CardType (*EncryptMsg)(nil), // 3: imparse.msg.EncryptMsg (*TextMsg)(nil), // 4: imparse.msg.TextMsg (*AudioMsg)(nil), // 5: imparse.msg.AudioMsg (*ImageMsg)(nil), // 6: imparse.msg.ImageMsg (*VideoMsg)(nil), // 7: imparse.msg.VideoMsg (*FileMsg)(nil), // 8: imparse.msg.FileMsg (*CardMsg)(nil), // 9: imparse.msg.CardMsg (*NoticeMsg)(nil), // 10: imparse.msg.NoticeMsg (*ForwardItem)(nil), // 11: imparse.msg.ForwardItem (*ForwardMsg)(nil), // 12: imparse.msg.ForwardMsg (*TransferMsg)(nil), // 13: imparse.msg.TransferMsg (*RedPacketMsg)(nil), // 14: imparse.msg.RedPacketMsg (*ContactCardMsg)(nil), // 15: imparse.msg.ContactCardMsg (*NoticeMsgUpdateGroupName)(nil), // 16: imparse.msg.NoticeMsgUpdateGroupName (*NoticeMsgSignInGroup)(nil), // 17: imparse.msg.NoticeMsgSignInGroup (*NoticeMsgSignOutGroup)(nil), // 18: imparse.msg.NoticeMsgSignOutGroup (*NoticeMsgKickOutGroup)(nil), // 19: imparse.msg.NoticeMsgKickOutGroup (*NoticeMsgDeleteGroup)(nil), // 20: imparse.msg.NoticeMsgDeleteGroup (*NoticeMsgUpdateGroupMuted)(nil), // 21: imparse.msg.NoticeMsgUpdateGroupMuted (*NoticeMsgUpdateGroupMemberMutedTime)(nil), // 22: imparse.msg.NoticeMsgUpdateGroupMemberMutedTime (*NoticeMsgUpdateGroupOwner)(nil), // 23: imparse.msg.NoticeMsgUpdateGroupOwner (MuteType)(0), // 24: imparse.signal.MuteType } var file_msg_proto_depIdxs = []int32{ 0, // 0: imparse.msg.NoticeMsg.type:type_name -> imparse.msg.NoticeMsgType 11, // 1: imparse.msg.ForwardMsg.items:type_name -> imparse.msg.ForwardItem 1, // 2: imparse.msg.RedPacketMsg.packetType:type_name -> imparse.msg.RedPacketMsg.RPType 2, // 3: imparse.msg.ContactCardMsg.type:type_name -> imparse.msg.ContactCardMsg.CardType 24, // 4: imparse.msg.NoticeMsgUpdateGroupMuted.type:type_name -> imparse.signal.MuteType 5, // [5:5] is the sub-list for method output_type 5, // [5:5] is the sub-list for method input_type 5, // [5:5] is the sub-list for extension type_name 5, // [5:5] is the sub-list for extension extendee 0, // [0:5] is the sub-list for field type_name } func init() { file_msg_proto_init() } func file_msg_proto_init() { if File_msg_proto != nil { return } file_signal_proto_init() if !protoimpl.UnsafeEnabled { file_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EncryptMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TextMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AudioMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ImageMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*VideoMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FileMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CardMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ForwardItem); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ForwardMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*TransferMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RedPacketMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContactCardMsg); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgUpdateGroupName); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgSignInGroup); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgSignOutGroup); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgKickOutGroup); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgDeleteGroup); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgUpdateGroupMuted); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgUpdateGroupMemberMutedTime); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_msg_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NoticeMsgUpdateGroupOwner); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_msg_proto_rawDesc, NumEnums: 3, NumMessages: 21, NumExtensions: 0, NumServices: 0, }, GoTypes: file_msg_proto_goTypes, DependencyIndexes: file_msg_proto_depIdxs, EnumInfos: file_msg_proto_enumTypes, MessageInfos: file_msg_proto_msgTypes, }.Build() File_msg_proto = out.File file_msg_proto_rawDesc = nil file_msg_proto_goTypes = nil file_msg_proto_depIdxs = nil }