From 96489d00f6cf883ca6e55b10243faca75e6f49a4 Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 20:21:18 +0800 Subject: [PATCH 1/6] add role packet --- client/guild.go | 35 +++ client/pb/channel/unknown.pb.go | 515 +++++++++++++++++++++----------- client/pb/channel/unknown.proto | 16 + 3 files changed, 386 insertions(+), 180 deletions(-) diff --git a/client/guild.go b/client/guild.go index c0a45267..550fa387 100644 --- a/client/guild.go +++ b/client/guild.go @@ -69,6 +69,18 @@ type ( JoinTime int64 // 只有 GetGuildMemberProfileInfo 函数才会有 } + GuildRoleInfo struct { + GuildId uint64 + Roles []*GuildRole + } + + // GuildRole 频道身份组信息 + GuildRole struct { + RoleId uint64 + RoleName string + ArgbColor uint32 + } + // ChannelInfo 子频道信息 ChannelInfo struct { ChannelId uint64 @@ -273,6 +285,29 @@ func (s *GuildService) GetGuildMemberProfileInfo(guildId, tinyId uint64) (*Guild }, nil } +func (s *GuildService) GetGuildRoles(guildId uint64) ([]*GuildRole, error) { + seq := s.c.nextSeq() + packet := packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x1019_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, + s.c.packOIDBPackageDynamically(4121, 1, binary.DynamicProtoMessage{1: guildId})) + rsp, err := s.c.sendAndWaitDynamic(seq, packet) + if err != nil { + return nil, errors.Wrap(err, "send packet error") + } + body := new(channel.ChannelOidb0X1019Rsp) + if err = s.c.unpackOIDBPackage(rsp, body); err != nil { + return nil, errors.Wrap(err, "decode packet error") + } + roles := make([]*GuildRole, 0) + for _, role := range body.Roles { + roles = append(roles, &GuildRole{ + RoleId: *role.RoleId, + RoleName: *role.Name, + ArgbColor: *role.ArgbColor, + }) + } + return roles, nil +} + func (s *GuildService) FetchGuestGuild(guildId uint64) (*GuildMeta, error) { seq := s.c.nextSeq() u1 := uint32(1) diff --git a/client/pb/channel/unknown.pb.go b/client/pb/channel/unknown.pb.go index 9ce0c25d..e94b2190 100644 --- a/client/pb/channel/unknown.pb.go +++ b/client/pb/channel/unknown.pb.go @@ -9,11 +9,10 @@ package channel import ( - reflect "reflect" - sync "sync" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" ) const ( @@ -329,6 +328,61 @@ func (x *ChannelOidb0Xf5DRsp) GetRsp() *ChannelListRsp { return nil } +type ChannelOidb0X1019Rsp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + GuildId *uint64 `protobuf:"varint,1,opt,name=guildId" json:"guildId,omitempty"` + Roles []*GuildRole `protobuf:"bytes,2,rep,name=roles" json:"roles,omitempty"` +} + +func (x *ChannelOidb0X1019Rsp) Reset() { + *x = ChannelOidb0X1019Rsp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_channel_unknown_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChannelOidb0X1019Rsp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChannelOidb0X1019Rsp) ProtoMessage() {} + +func (x *ChannelOidb0X1019Rsp) ProtoReflect() protoreflect.Message { + mi := &file_pb_channel_unknown_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 ChannelOidb0X1019Rsp.ProtoReflect.Descriptor instead. +func (*ChannelOidb0X1019Rsp) Descriptor() ([]byte, []int) { + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{6} +} + +func (x *ChannelOidb0X1019Rsp) GetGuildId() uint64 { + if x != nil && x.GuildId != nil { + return *x.GuildId + } + return 0 +} + +func (x *ChannelOidb0X1019Rsp) GetRoles() []*GuildRole { + if x != nil { + return x.Roles + } + return nil +} + type GuildMetaRsp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -341,7 +395,7 @@ type GuildMetaRsp struct { func (x *GuildMetaRsp) Reset() { *x = GuildMetaRsp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[6] + mi := &file_pb_channel_unknown_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -354,7 +408,7 @@ func (x *GuildMetaRsp) String() string { func (*GuildMetaRsp) ProtoMessage() {} func (x *GuildMetaRsp) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[6] + mi := &file_pb_channel_unknown_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -367,7 +421,7 @@ func (x *GuildMetaRsp) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMetaRsp.ProtoReflect.Descriptor instead. func (*GuildMetaRsp) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{6} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{7} } func (x *GuildMetaRsp) GetGuildId() uint64 { @@ -396,7 +450,7 @@ type ChannelListRsp struct { func (x *ChannelListRsp) Reset() { *x = ChannelListRsp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[7] + mi := &file_pb_channel_unknown_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -409,7 +463,7 @@ func (x *ChannelListRsp) String() string { func (*ChannelListRsp) ProtoMessage() {} func (x *ChannelListRsp) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[7] + mi := &file_pb_channel_unknown_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -422,7 +476,7 @@ func (x *ChannelListRsp) ProtoReflect() protoreflect.Message { // Deprecated: Use ChannelListRsp.ProtoReflect.Descriptor instead. func (*ChannelListRsp) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{7} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{8} } func (x *ChannelListRsp) GetGuildId() uint64 { @@ -450,7 +504,7 @@ type GuildAdminInfo struct { func (x *GuildAdminInfo) Reset() { *x = GuildAdminInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[8] + mi := &file_pb_channel_unknown_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -463,7 +517,7 @@ func (x *GuildAdminInfo) String() string { func (*GuildAdminInfo) ProtoMessage() {} func (x *GuildAdminInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[8] + mi := &file_pb_channel_unknown_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -476,7 +530,7 @@ func (x *GuildAdminInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildAdminInfo.ProtoReflect.Descriptor instead. func (*GuildAdminInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{8} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{9} } func (x *GuildAdminInfo) GetAdmins() []*GuildMemberInfo { @@ -501,7 +555,7 @@ type GuildMemberInfo struct { func (x *GuildMemberInfo) Reset() { *x = GuildMemberInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[9] + mi := &file_pb_channel_unknown_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -514,7 +568,7 @@ func (x *GuildMemberInfo) String() string { func (*GuildMemberInfo) ProtoMessage() {} func (x *GuildMemberInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[9] + mi := &file_pb_channel_unknown_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -527,7 +581,7 @@ func (x *GuildMemberInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMemberInfo.ProtoReflect.Descriptor instead. func (*GuildMemberInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{9} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{10} } func (x *GuildMemberInfo) GetTitle() string { @@ -581,7 +635,7 @@ type GuildUserProfile struct { func (x *GuildUserProfile) Reset() { *x = GuildUserProfile{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[10] + mi := &file_pb_channel_unknown_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -594,7 +648,7 @@ func (x *GuildUserProfile) String() string { func (*GuildUserProfile) ProtoMessage() {} func (x *GuildUserProfile) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[10] + mi := &file_pb_channel_unknown_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -607,7 +661,7 @@ func (x *GuildUserProfile) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildUserProfile.ProtoReflect.Descriptor instead. func (*GuildUserProfile) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{10} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{11} } func (x *GuildUserProfile) GetTinyId() uint64 { @@ -638,6 +692,69 @@ func (x *GuildUserProfile) GetJoinTime() int64 { return 0 } +type GuildRole struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoleId *uint64 `protobuf:"varint,1,opt,name=roleId" json:"roleId,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + ArgbColor *uint32 `protobuf:"varint,3,opt,name=argbColor" json:"argbColor,omitempty"` +} + +func (x *GuildRole) Reset() { + *x = GuildRole{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_channel_unknown_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GuildRole) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GuildRole) ProtoMessage() {} + +func (x *GuildRole) ProtoReflect() protoreflect.Message { + mi := &file_pb_channel_unknown_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 GuildRole.ProtoReflect.Descriptor instead. +func (*GuildRole) Descriptor() ([]byte, []int) { + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{12} +} + +func (x *GuildRole) GetRoleId() uint64 { + if x != nil && x.RoleId != nil { + return *x.RoleId + } + return 0 +} + +func (x *GuildRole) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *GuildRole) GetArgbColor() uint32 { + if x != nil && x.ArgbColor != nil { + return *x.ArgbColor + } + return 0 +} + type GuildMeta struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -660,7 +777,7 @@ type GuildMeta struct { func (x *GuildMeta) Reset() { *x = GuildMeta{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[11] + mi := &file_pb_channel_unknown_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -673,7 +790,7 @@ func (x *GuildMeta) String() string { func (*GuildMeta) ProtoMessage() {} func (x *GuildMeta) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[11] + mi := &file_pb_channel_unknown_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -686,7 +803,7 @@ func (x *GuildMeta) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMeta.ProtoReflect.Descriptor instead. func (*GuildMeta) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{11} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{13} } func (x *GuildMeta) GetGuildCode() uint64 { @@ -798,7 +915,7 @@ type GuildChannelInfo struct { func (x *GuildChannelInfo) Reset() { *x = GuildChannelInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[12] + mi := &file_pb_channel_unknown_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -811,7 +928,7 @@ func (x *GuildChannelInfo) String() string { func (*GuildChannelInfo) ProtoMessage() {} func (x *GuildChannelInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[12] + mi := &file_pb_channel_unknown_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -824,7 +941,7 @@ func (x *GuildChannelInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelInfo.ProtoReflect.Descriptor instead. func (*GuildChannelInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{12} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{14} } func (x *GuildChannelInfo) GetChannelId() uint64 { @@ -932,7 +1049,7 @@ type GuildChannelSlowModeInfo struct { func (x *GuildChannelSlowModeInfo) Reset() { *x = GuildChannelSlowModeInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[13] + mi := &file_pb_channel_unknown_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -945,7 +1062,7 @@ func (x *GuildChannelSlowModeInfo) String() string { func (*GuildChannelSlowModeInfo) ProtoMessage() {} func (x *GuildChannelSlowModeInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[13] + mi := &file_pb_channel_unknown_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -958,7 +1075,7 @@ func (x *GuildChannelSlowModeInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelSlowModeInfo.ProtoReflect.Descriptor instead. func (*GuildChannelSlowModeInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{13} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{15} } func (x *GuildChannelSlowModeInfo) GetSlowModeKey() int32 { @@ -1002,7 +1119,7 @@ type GuildChannelTopMsgInfo struct { func (x *GuildChannelTopMsgInfo) Reset() { *x = GuildChannelTopMsgInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[14] + mi := &file_pb_channel_unknown_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1015,7 +1132,7 @@ func (x *GuildChannelTopMsgInfo) String() string { func (*GuildChannelTopMsgInfo) ProtoMessage() {} func (x *GuildChannelTopMsgInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[14] + mi := &file_pb_channel_unknown_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1028,7 +1145,7 @@ func (x *GuildChannelTopMsgInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelTopMsgInfo.ProtoReflect.Descriptor instead. func (*GuildChannelTopMsgInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{14} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{16} } func (x *GuildChannelTopMsgInfo) GetTopMsgSeq() uint64 { @@ -1091,119 +1208,130 @@ var file_pb_channel_unknown_proto_rawDesc = []byte{ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x69, 0x64, 0x62, 0x30, 0x78, 0x66, 0x35, 0x64, 0x52, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x03, 0x72, 0x73, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x73, 0x70, 0x52, 0x03, 0x72, 0x73, 0x70, 0x22, 0x50, - 0x0a, 0x0c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x73, 0x70, 0x12, 0x18, - 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, - 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, - 0x22, 0x61, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x08, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x73, 0x22, 0x42, 0x0a, 0x0e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x6d, 0x69, - 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x06, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x06, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x0f, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, - 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x22, - 0x80, 0x01, 0x0a, 0x10, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x74, - 0x61, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, - 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, - 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, - 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, - 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x12, 0x20, - 0x0a, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, - 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x61, - 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x77, 0x6e, 0x65, - 0x72, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, 0x71, 0x18, 0x13, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, 0x71, 0x12, 0x1a, - 0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9a, 0x04, 0x0a, 0x10, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x20, 0x0a, - 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, 0x6e, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x66, 0x69, 0x6e, - 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x6c, 0x6b, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x74, - 0x61, 0x6c, 0x6b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, - 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, - 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x18, - 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, 0x70, 0x4d, - 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x12, 0x2e, - 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, - 0x65, 0x4b, 0x65, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x47, - 0x0a, 0x0d, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x18, - 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, 0x6f, 0x77, - 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, - 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x18, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, - 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x6c, 0x6f, 0x77, 0x4d, - 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x46, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x73, 0x70, 0x65, 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x26, - 0x0a, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, - 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, - 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6c, - 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x16, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, 0x70, 0x4d, 0x73, - 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x53, - 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, - 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x42, 0x14, 0x5a, 0x12, 0x70, 0x62, 0x2f, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x3b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x73, 0x70, 0x52, 0x03, 0x72, 0x73, 0x70, 0x22, 0x5a, + 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x69, 0x64, 0x62, 0x30, 0x78, 0x31, + 0x30, 0x31, 0x39, 0x52, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, + 0x12, 0x28, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, + 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x0c, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0x61, 0x0a, 0x0e, + 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x73, 0x70, 0x12, 0x18, + 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x35, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, + 0x42, 0x0a, 0x0e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x30, 0x0a, 0x06, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x0f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6e, 0x69, 0x63, 0x6b, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x6c, 0x61, 0x73, + 0x74, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x70, 0x65, 0x61, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, + 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x22, 0x80, 0x01, 0x0a, 0x10, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x73, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x06, 0x74, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, 0x69, 0x63, 0x6b, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, 0x69, 0x63, 0x6b, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, + 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, + 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x55, + 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, + 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x62, 0x43, + 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x72, 0x67, 0x62, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, + 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, + 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, + 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, + 0x71, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, + 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9a, 0x04, + 0x0a, 0x10, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, + 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, + 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, + 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x6c, 0x6b, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x74, 0x61, 0x6c, 0x6b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, + 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x69, 0x73, + 0x69, 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x70, 0x4d, + 0x73, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, + 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, + 0x67, 0x12, 0x2e, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, + 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, + 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, + 0x79, 0x12, 0x47, 0x0a, 0x0d, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, + 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x73, 0x6c, 0x6f, + 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x18, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x4d, + 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x77, 0x4d, + 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x6c, + 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x70, 0x65, + 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, + 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, + 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, + 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6c, 0x6f, + 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8a, 0x01, + 0x0a, 0x16, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, + 0x70, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x6f, 0x70, + 0x4d, 0x73, 0x67, 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x4d, + 0x73, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x42, 0x14, 0x5a, 0x12, 0x70, 0x62, + 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x3b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, } var ( @@ -1218,7 +1346,7 @@ func file_pb_channel_unknown_proto_rawDescGZIP() []byte { return file_pb_channel_unknown_proto_rawDescData } -var file_pb_channel_unknown_proto_msgTypes = make([]protoimpl.MessageInfo, 15) +var file_pb_channel_unknown_proto_msgTypes = make([]protoimpl.MessageInfo, 17) var file_pb_channel_unknown_proto_goTypes = []interface{}{ (*ChannelOidb0Xf5BRsp)(nil), // 0: channel.ChannelOidb0xf5bRsp (*ChannelOidb0Xf88Rsp)(nil), // 1: channel.ChannelOidb0xf88Rsp @@ -1226,35 +1354,38 @@ var file_pb_channel_unknown_proto_goTypes = []interface{}{ (*ChannelOidb0Xf57Rsp)(nil), // 3: channel.ChannelOidb0xf57Rsp (*ChannelOidb0Xf55Rsp)(nil), // 4: channel.ChannelOidb0xf55Rsp (*ChannelOidb0Xf5DRsp)(nil), // 5: channel.ChannelOidb0xf5dRsp - (*GuildMetaRsp)(nil), // 6: channel.GuildMetaRsp - (*ChannelListRsp)(nil), // 7: channel.ChannelListRsp - (*GuildAdminInfo)(nil), // 8: channel.GuildAdminInfo - (*GuildMemberInfo)(nil), // 9: channel.GuildMemberInfo - (*GuildUserProfile)(nil), // 10: channel.GuildUserProfile - (*GuildMeta)(nil), // 11: channel.GuildMeta - (*GuildChannelInfo)(nil), // 12: channel.GuildChannelInfo - (*GuildChannelSlowModeInfo)(nil), // 13: channel.GuildChannelSlowModeInfo - (*GuildChannelTopMsgInfo)(nil), // 14: channel.GuildChannelTopMsgInfo + (*ChannelOidb0X1019Rsp)(nil), // 6: channel.ChannelOidb0x1019Rsp + (*GuildMetaRsp)(nil), // 7: channel.GuildMetaRsp + (*ChannelListRsp)(nil), // 8: channel.ChannelListRsp + (*GuildAdminInfo)(nil), // 9: channel.GuildAdminInfo + (*GuildMemberInfo)(nil), // 10: channel.GuildMemberInfo + (*GuildUserProfile)(nil), // 11: channel.GuildUserProfile + (*GuildRole)(nil), // 12: channel.GuildRole + (*GuildMeta)(nil), // 13: channel.GuildMeta + (*GuildChannelInfo)(nil), // 14: channel.GuildChannelInfo + (*GuildChannelSlowModeInfo)(nil), // 15: channel.GuildChannelSlowModeInfo + (*GuildChannelTopMsgInfo)(nil), // 16: channel.GuildChannelTopMsgInfo } var file_pb_channel_unknown_proto_depIdxs = []int32{ - 9, // 0: channel.ChannelOidb0xf5bRsp.bots:type_name -> channel.GuildMemberInfo - 9, // 1: channel.ChannelOidb0xf5bRsp.members:type_name -> channel.GuildMemberInfo - 8, // 2: channel.ChannelOidb0xf5bRsp.adminInfo:type_name -> channel.GuildAdminInfo - 10, // 3: channel.ChannelOidb0xf88Rsp.profile:type_name -> channel.GuildUserProfile - 10, // 4: channel.ChannelOidb0xfc9Rsp.profile:type_name -> channel.GuildUserProfile - 6, // 5: channel.ChannelOidb0xf57Rsp.rsp:type_name -> channel.GuildMetaRsp - 12, // 6: channel.ChannelOidb0xf55Rsp.info:type_name -> channel.GuildChannelInfo - 7, // 7: channel.ChannelOidb0xf5dRsp.rsp:type_name -> channel.ChannelListRsp - 11, // 8: channel.GuildMetaRsp.meta:type_name -> channel.GuildMeta - 12, // 9: channel.ChannelListRsp.channels:type_name -> channel.GuildChannelInfo - 9, // 10: channel.GuildAdminInfo.admins:type_name -> channel.GuildMemberInfo - 14, // 11: channel.GuildChannelInfo.topMsg:type_name -> channel.GuildChannelTopMsgInfo - 13, // 12: channel.GuildChannelInfo.slowModeInfos:type_name -> channel.GuildChannelSlowModeInfo - 13, // [13:13] is the sub-list for method output_type - 13, // [13:13] is the sub-list for method input_type - 13, // [13:13] is the sub-list for extension type_name - 13, // [13:13] is the sub-list for extension extendee - 0, // [0:13] is the sub-list for field type_name + 10, // 0: channel.ChannelOidb0xf5bRsp.bots:type_name -> channel.GuildMemberInfo + 10, // 1: channel.ChannelOidb0xf5bRsp.members:type_name -> channel.GuildMemberInfo + 9, // 2: channel.ChannelOidb0xf5bRsp.adminInfo:type_name -> channel.GuildAdminInfo + 11, // 3: channel.ChannelOidb0xf88Rsp.profile:type_name -> channel.GuildUserProfile + 11, // 4: channel.ChannelOidb0xfc9Rsp.profile:type_name -> channel.GuildUserProfile + 7, // 5: channel.ChannelOidb0xf57Rsp.rsp:type_name -> channel.GuildMetaRsp + 14, // 6: channel.ChannelOidb0xf55Rsp.info:type_name -> channel.GuildChannelInfo + 8, // 7: channel.ChannelOidb0xf5dRsp.rsp:type_name -> channel.ChannelListRsp + 12, // 8: channel.ChannelOidb0x1019Rsp.roles:type_name -> channel.GuildRole + 13, // 9: channel.GuildMetaRsp.meta:type_name -> channel.GuildMeta + 14, // 10: channel.ChannelListRsp.channels:type_name -> channel.GuildChannelInfo + 10, // 11: channel.GuildAdminInfo.admins:type_name -> channel.GuildMemberInfo + 16, // 12: channel.GuildChannelInfo.topMsg:type_name -> channel.GuildChannelTopMsgInfo + 15, // 13: channel.GuildChannelInfo.slowModeInfos:type_name -> channel.GuildChannelSlowModeInfo + 14, // [14:14] is the sub-list for method output_type + 14, // [14:14] is the sub-list for method input_type + 14, // [14:14] is the sub-list for extension type_name + 14, // [14:14] is the sub-list for extension extendee + 0, // [0:14] is the sub-list for field type_name } func init() { file_pb_channel_unknown_proto_init() } @@ -1336,7 +1467,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMetaRsp); i { + switch v := v.(*ChannelOidb0X1019Rsp); i { case 0: return &v.state case 1: @@ -1348,7 +1479,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChannelListRsp); i { + switch v := v.(*GuildMetaRsp); i { case 0: return &v.state case 1: @@ -1360,7 +1491,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildAdminInfo); i { + switch v := v.(*ChannelListRsp); i { case 0: return &v.state case 1: @@ -1372,7 +1503,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMemberInfo); i { + switch v := v.(*GuildAdminInfo); i { case 0: return &v.state case 1: @@ -1384,7 +1515,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildUserProfile); i { + switch v := v.(*GuildMemberInfo); i { case 0: return &v.state case 1: @@ -1396,7 +1527,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMeta); i { + switch v := v.(*GuildUserProfile); i { case 0: return &v.state case 1: @@ -1408,7 +1539,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildChannelInfo); i { + switch v := v.(*GuildRole); i { case 0: return &v.state case 1: @@ -1420,7 +1551,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildChannelSlowModeInfo); i { + switch v := v.(*GuildMeta); i { case 0: return &v.state case 1: @@ -1432,6 +1563,30 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuildChannelInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_channel_unknown_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuildChannelSlowModeInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_channel_unknown_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GuildChannelTopMsgInfo); i { case 0: return &v.state @@ -1450,7 +1605,7 @@ func file_pb_channel_unknown_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_channel_unknown_proto_rawDesc, NumEnums: 0, - NumMessages: 15, + NumMessages: 17, NumExtensions: 0, NumServices: 0, }, diff --git a/client/pb/channel/unknown.proto b/client/pb/channel/unknown.proto index 133dec86..936b8321 100644 --- a/client/pb/channel/unknown.proto +++ b/client/pb/channel/unknown.proto @@ -32,6 +32,11 @@ message ChannelOidb0xf5dRsp { optional ChannelListRsp rsp = 1; } +message ChannelOidb0x1019Rsp { + optional uint64 guildId = 1; + repeated GuildRole roles = 2; +} + message GuildMetaRsp { optional uint64 guildId = 3; optional GuildMeta meta = 4; @@ -67,6 +72,17 @@ message GuildUserProfile { // 25 current cards *uncertainty } +message GuildRole { + optional uint64 roleId = 1; + optional string name = 2; + optional uint32 argbColor = 3; + // 4: visible? + // 5: ? + // 6: customRole? + // 7: officalRole? + // 8: ? permission +} + message GuildMeta { optional uint64 guildCode = 2; optional int64 createTime = 4; From 5ba00392ba985d050dc855a386719f56551698ef Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 22:10:18 +0800 Subject: [PATCH 2/6] add create role packet --- client/guild.go | 51 +++- client/pb/channel/unknown.pb.go | 417 ++++++++++++++++++++------------ client/pb/channel/unknown.proto | 53 +++- 3 files changed, 357 insertions(+), 164 deletions(-) diff --git a/client/guild.go b/client/guild.go index 550fa387..fd92bd29 100644 --- a/client/guild.go +++ b/client/guild.go @@ -76,9 +76,14 @@ type ( // GuildRole 频道身份组信息 GuildRole struct { - RoleId uint64 - RoleName string - ArgbColor uint32 + RoleId uint64 + RoleName string + ArgbColor uint32 + Indepedent bool + Num int32 + Owned bool + Disabled bool + MaxNum int32 } // ChannelInfo 子频道信息 @@ -300,14 +305,48 @@ func (s *GuildService) GetGuildRoles(guildId uint64) ([]*GuildRole, error) { roles := make([]*GuildRole, 0) for _, role := range body.Roles { roles = append(roles, &GuildRole{ - RoleId: *role.RoleId, - RoleName: *role.Name, - ArgbColor: *role.ArgbColor, + RoleId: role.GetRoleId(), + RoleName: role.GetName(), + ArgbColor: role.GetArgbColor(), + Indepedent: role.GetIndependent() == 1, + Num: role.GetNum(), + Owned: role.GetOwned() == 1, + Disabled: role.GetDisabled() == 1, + MaxNum: role.GetMaxNum(), }) } return roles, nil } +func (s *GuildService) CreateGuildRole(guildId uint64, name string, color uint32, independent bool, initialUsers []uint64) (uint64, error) { + seq := s.c.nextSeq() + u1 := uint32(1) + packet := packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x1016_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, + s.c.packOIDBPackageDynamically(4118, 1, binary.DynamicProtoMessage{ + 1: guildId, + 2: binary.DynamicProtoMessage{ // todo: 未知参数 + 1: u1, + 2: u1, + 3: u1, + }, + 3: binary.DynamicProtoMessage{ + 1: name, + 2: color, + 3: independent, + }, + 4: initialUsers, + })) + rsp, err := s.c.sendAndWaitDynamic(seq, packet) + if err != nil { + return 0, errors.Wrap(err, "send packet error") + } + body := new(channel.ChannelOidb0X1016Rsp) + if err = s.c.unpackOIDBPackage(rsp, body); err != nil { + return 0, errors.Wrap(err, "decode packet error") + } + return body.GetRoleId(), nil +} + func (s *GuildService) FetchGuestGuild(guildId uint64) (*GuildMeta, error) { seq := s.c.nextSeq() u1 := uint32(1) diff --git a/client/pb/channel/unknown.pb.go b/client/pb/channel/unknown.pb.go index e94b2190..99544afb 100644 --- a/client/pb/channel/unknown.pb.go +++ b/client/pb/channel/unknown.pb.go @@ -383,6 +383,53 @@ func (x *ChannelOidb0X1019Rsp) GetRoles() []*GuildRole { return nil } +type ChannelOidb0X1016Rsp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoleId *uint64 `protobuf:"varint,2,opt,name=roleId" json:"roleId,omitempty"` +} + +func (x *ChannelOidb0X1016Rsp) Reset() { + *x = ChannelOidb0X1016Rsp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_channel_unknown_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChannelOidb0X1016Rsp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChannelOidb0X1016Rsp) ProtoMessage() {} + +func (x *ChannelOidb0X1016Rsp) ProtoReflect() protoreflect.Message { + mi := &file_pb_channel_unknown_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 ChannelOidb0X1016Rsp.ProtoReflect.Descriptor instead. +func (*ChannelOidb0X1016Rsp) Descriptor() ([]byte, []int) { + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{7} +} + +func (x *ChannelOidb0X1016Rsp) GetRoleId() uint64 { + if x != nil && x.RoleId != nil { + return *x.RoleId + } + return 0 +} + type GuildMetaRsp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -395,7 +442,7 @@ type GuildMetaRsp struct { func (x *GuildMetaRsp) Reset() { *x = GuildMetaRsp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[7] + mi := &file_pb_channel_unknown_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -408,7 +455,7 @@ func (x *GuildMetaRsp) String() string { func (*GuildMetaRsp) ProtoMessage() {} func (x *GuildMetaRsp) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[7] + mi := &file_pb_channel_unknown_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -421,7 +468,7 @@ func (x *GuildMetaRsp) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMetaRsp.ProtoReflect.Descriptor instead. func (*GuildMetaRsp) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{7} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{8} } func (x *GuildMetaRsp) GetGuildId() uint64 { @@ -450,7 +497,7 @@ type ChannelListRsp struct { func (x *ChannelListRsp) Reset() { *x = ChannelListRsp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[8] + mi := &file_pb_channel_unknown_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -463,7 +510,7 @@ func (x *ChannelListRsp) String() string { func (*ChannelListRsp) ProtoMessage() {} func (x *ChannelListRsp) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[8] + mi := &file_pb_channel_unknown_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -476,7 +523,7 @@ func (x *ChannelListRsp) ProtoReflect() protoreflect.Message { // Deprecated: Use ChannelListRsp.ProtoReflect.Descriptor instead. func (*ChannelListRsp) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{8} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{9} } func (x *ChannelListRsp) GetGuildId() uint64 { @@ -504,7 +551,7 @@ type GuildAdminInfo struct { func (x *GuildAdminInfo) Reset() { *x = GuildAdminInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[9] + mi := &file_pb_channel_unknown_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -517,7 +564,7 @@ func (x *GuildAdminInfo) String() string { func (*GuildAdminInfo) ProtoMessage() {} func (x *GuildAdminInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[9] + mi := &file_pb_channel_unknown_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -530,7 +577,7 @@ func (x *GuildAdminInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildAdminInfo.ProtoReflect.Descriptor instead. func (*GuildAdminInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{9} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{10} } func (x *GuildAdminInfo) GetAdmins() []*GuildMemberInfo { @@ -555,7 +602,7 @@ type GuildMemberInfo struct { func (x *GuildMemberInfo) Reset() { *x = GuildMemberInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[10] + mi := &file_pb_channel_unknown_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -568,7 +615,7 @@ func (x *GuildMemberInfo) String() string { func (*GuildMemberInfo) ProtoMessage() {} func (x *GuildMemberInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[10] + mi := &file_pb_channel_unknown_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -581,7 +628,7 @@ func (x *GuildMemberInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMemberInfo.ProtoReflect.Descriptor instead. func (*GuildMemberInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{10} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{11} } func (x *GuildMemberInfo) GetTitle() string { @@ -635,7 +682,7 @@ type GuildUserProfile struct { func (x *GuildUserProfile) Reset() { *x = GuildUserProfile{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[11] + mi := &file_pb_channel_unknown_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -648,7 +695,7 @@ func (x *GuildUserProfile) String() string { func (*GuildUserProfile) ProtoMessage() {} func (x *GuildUserProfile) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[11] + mi := &file_pb_channel_unknown_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -661,7 +708,7 @@ func (x *GuildUserProfile) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildUserProfile.ProtoReflect.Descriptor instead. func (*GuildUserProfile) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{11} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{12} } func (x *GuildUserProfile) GetTinyId() uint64 { @@ -697,15 +744,20 @@ type GuildRole struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - RoleId *uint64 `protobuf:"varint,1,opt,name=roleId" json:"roleId,omitempty"` - Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` - ArgbColor *uint32 `protobuf:"varint,3,opt,name=argbColor" json:"argbColor,omitempty"` + RoleId *uint64 `protobuf:"varint,1,opt,name=roleId" json:"roleId,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` + ArgbColor *uint32 `protobuf:"varint,3,opt,name=argbColor" json:"argbColor,omitempty"` + Independent *int32 `protobuf:"varint,4,opt,name=independent" json:"independent,omitempty"` + Num *int32 `protobuf:"varint,5,opt,name=num" json:"num,omitempty"` + Owned *int32 `protobuf:"varint,6,opt,name=owned" json:"owned,omitempty"` // 是否拥有 存疑 + Disabled *int32 `protobuf:"varint,7,opt,name=disabled" json:"disabled,omitempty"` // 权限不足或不显示 + MaxNum *int32 `protobuf:"varint,8,opt,name=maxNum" json:"maxNum,omitempty"` // 9: ? } func (x *GuildRole) Reset() { *x = GuildRole{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[12] + mi := &file_pb_channel_unknown_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -718,7 +770,7 @@ func (x *GuildRole) String() string { func (*GuildRole) ProtoMessage() {} func (x *GuildRole) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[12] + mi := &file_pb_channel_unknown_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -731,7 +783,7 @@ func (x *GuildRole) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildRole.ProtoReflect.Descriptor instead. func (*GuildRole) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{12} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{13} } func (x *GuildRole) GetRoleId() uint64 { @@ -755,6 +807,41 @@ func (x *GuildRole) GetArgbColor() uint32 { return 0 } +func (x *GuildRole) GetIndependent() int32 { + if x != nil && x.Independent != nil { + return *x.Independent + } + return 0 +} + +func (x *GuildRole) GetNum() int32 { + if x != nil && x.Num != nil { + return *x.Num + } + return 0 +} + +func (x *GuildRole) GetOwned() int32 { + if x != nil && x.Owned != nil { + return *x.Owned + } + return 0 +} + +func (x *GuildRole) GetDisabled() int32 { + if x != nil && x.Disabled != nil { + return *x.Disabled + } + return 0 +} + +func (x *GuildRole) GetMaxNum() int32 { + if x != nil && x.MaxNum != nil { + return *x.MaxNum + } + return 0 +} + type GuildMeta struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -777,7 +864,7 @@ type GuildMeta struct { func (x *GuildMeta) Reset() { *x = GuildMeta{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[13] + mi := &file_pb_channel_unknown_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -790,7 +877,7 @@ func (x *GuildMeta) String() string { func (*GuildMeta) ProtoMessage() {} func (x *GuildMeta) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[13] + mi := &file_pb_channel_unknown_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -803,7 +890,7 @@ func (x *GuildMeta) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildMeta.ProtoReflect.Descriptor instead. func (*GuildMeta) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{13} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{14} } func (x *GuildMeta) GetGuildCode() uint64 { @@ -915,7 +1002,7 @@ type GuildChannelInfo struct { func (x *GuildChannelInfo) Reset() { *x = GuildChannelInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[14] + mi := &file_pb_channel_unknown_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -928,7 +1015,7 @@ func (x *GuildChannelInfo) String() string { func (*GuildChannelInfo) ProtoMessage() {} func (x *GuildChannelInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[14] + mi := &file_pb_channel_unknown_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -941,7 +1028,7 @@ func (x *GuildChannelInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelInfo.ProtoReflect.Descriptor instead. func (*GuildChannelInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{14} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{15} } func (x *GuildChannelInfo) GetChannelId() uint64 { @@ -1049,7 +1136,7 @@ type GuildChannelSlowModeInfo struct { func (x *GuildChannelSlowModeInfo) Reset() { *x = GuildChannelSlowModeInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[15] + mi := &file_pb_channel_unknown_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1062,7 +1149,7 @@ func (x *GuildChannelSlowModeInfo) String() string { func (*GuildChannelSlowModeInfo) ProtoMessage() {} func (x *GuildChannelSlowModeInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[15] + mi := &file_pb_channel_unknown_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1075,7 +1162,7 @@ func (x *GuildChannelSlowModeInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelSlowModeInfo.ProtoReflect.Descriptor instead. func (*GuildChannelSlowModeInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{15} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{16} } func (x *GuildChannelSlowModeInfo) GetSlowModeKey() int32 { @@ -1119,7 +1206,7 @@ type GuildChannelTopMsgInfo struct { func (x *GuildChannelTopMsgInfo) Reset() { *x = GuildChannelTopMsgInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_channel_unknown_proto_msgTypes[16] + mi := &file_pb_channel_unknown_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1132,7 +1219,7 @@ func (x *GuildChannelTopMsgInfo) String() string { func (*GuildChannelTopMsgInfo) ProtoMessage() {} func (x *GuildChannelTopMsgInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_channel_unknown_proto_msgTypes[16] + mi := &file_pb_channel_unknown_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1145,7 +1232,7 @@ func (x *GuildChannelTopMsgInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use GuildChannelTopMsgInfo.ProtoReflect.Descriptor instead. func (*GuildChannelTopMsgInfo) Descriptor() ([]byte, []int) { - return file_pb_channel_unknown_proto_rawDescGZIP(), []int{16} + return file_pb_channel_unknown_proto_rawDescGZIP(), []int{17} } func (x *GuildChannelTopMsgInfo) GetTopMsgSeq() uint64 { @@ -1214,7 +1301,10 @@ var file_pb_channel_unknown_proto_rawDesc = []byte{ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x0c, 0x47, 0x75, + 0x6f, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x2e, 0x0a, 0x14, 0x43, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x69, 0x64, 0x62, 0x30, 0x78, 0x31, 0x30, 0x31, 0x36, 0x52, + 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x0c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, @@ -1247,91 +1337,99 @@ var file_pb_channel_unknown_proto_rawDesc = []byte{ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x55, - 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, - 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, - 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x62, 0x43, - 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x72, 0x67, 0x62, - 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, - 0x65, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xd3, + 0x01, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, + 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x67, 0x62, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x61, 0x72, 0x67, + 0x62, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, + 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x69, 0x6e, 0x64, + 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, + 0x6e, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x6d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x61, + 0x78, 0x4e, 0x75, 0x6d, 0x22, 0xf5, 0x02, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, + 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, + 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6f, 0x77, 0x6e, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, 0x71, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, 0x71, + 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x14, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9a, 0x04, 0x0a, + 0x10, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, + 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, - 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x20, 0x0a, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x4d, 0x61, 0x78, 0x4e, 0x75, - 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, 0x4e, 0x75, 0x6d, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x61, 0x78, - 0x4e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x53, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, - 0x71, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x65, - 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x14, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9a, 0x04, - 0x0a, 0x10, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, - 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x69, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, - 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, - 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, - 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x61, - 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x6c, 0x6b, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x74, 0x61, 0x6c, 0x6b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, - 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x69, 0x73, - 0x69, 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x70, 0x4d, - 0x73, 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, - 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, - 0x67, 0x12, 0x2e, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, - 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, - 0x79, 0x12, 0x47, 0x0a, 0x0d, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, - 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x73, 0x6c, 0x6f, - 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x18, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x4d, - 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x77, 0x4d, - 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x6c, - 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x70, 0x65, - 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, - 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, - 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, - 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6c, 0x6f, - 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8a, 0x01, - 0x0a, 0x16, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, - 0x70, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x4d, - 0x73, 0x67, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x6f, 0x70, - 0x4d, 0x73, 0x67, 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x4d, - 0x73, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x42, 0x14, 0x5a, 0x12, 0x70, 0x62, - 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x3b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x66, + 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, + 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x6c, 0x6b, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0e, 0x74, 0x61, 0x6c, 0x6b, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, + 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x54, + 0x69, 0x6e, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x76, 0x69, 0x73, 0x69, + 0x62, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, + 0x67, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, + 0x70, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, + 0x12, 0x2e, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, + 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, + 0x12, 0x47, 0x0a, 0x0d, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, + 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, + 0x6c, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, + 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x73, 0x6c, 0x6f, 0x77, + 0x4d, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x22, 0xb0, 0x01, 0x0a, 0x18, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, + 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, + 0x64, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x73, 0x6c, 0x6f, + 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x61, + 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, + 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x43, 0x69, 0x72, 0x63, + 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, + 0x64, 0x65, 0x43, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6c, 0x6f, 0x77, + 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x73, 0x6c, 0x6f, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8a, 0x01, 0x0a, + 0x16, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x54, 0x6f, 0x70, + 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x4d, 0x73, + 0x67, 0x53, 0x65, 0x71, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x4d, + 0x73, 0x67, 0x53, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x70, 0x4d, 0x73, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x14, 0x74, 0x6f, 0x70, 0x4d, 0x73, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x54, 0x69, 0x6e, 0x79, 0x49, 0x64, 0x42, 0x14, 0x5a, 0x12, 0x70, 0x62, 0x2f, + 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x3b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, } var ( @@ -1346,7 +1444,7 @@ func file_pb_channel_unknown_proto_rawDescGZIP() []byte { return file_pb_channel_unknown_proto_rawDescData } -var file_pb_channel_unknown_proto_msgTypes = make([]protoimpl.MessageInfo, 17) +var file_pb_channel_unknown_proto_msgTypes = make([]protoimpl.MessageInfo, 18) var file_pb_channel_unknown_proto_goTypes = []interface{}{ (*ChannelOidb0Xf5BRsp)(nil), // 0: channel.ChannelOidb0xf5bRsp (*ChannelOidb0Xf88Rsp)(nil), // 1: channel.ChannelOidb0xf88Rsp @@ -1355,32 +1453,33 @@ var file_pb_channel_unknown_proto_goTypes = []interface{}{ (*ChannelOidb0Xf55Rsp)(nil), // 4: channel.ChannelOidb0xf55Rsp (*ChannelOidb0Xf5DRsp)(nil), // 5: channel.ChannelOidb0xf5dRsp (*ChannelOidb0X1019Rsp)(nil), // 6: channel.ChannelOidb0x1019Rsp - (*GuildMetaRsp)(nil), // 7: channel.GuildMetaRsp - (*ChannelListRsp)(nil), // 8: channel.ChannelListRsp - (*GuildAdminInfo)(nil), // 9: channel.GuildAdminInfo - (*GuildMemberInfo)(nil), // 10: channel.GuildMemberInfo - (*GuildUserProfile)(nil), // 11: channel.GuildUserProfile - (*GuildRole)(nil), // 12: channel.GuildRole - (*GuildMeta)(nil), // 13: channel.GuildMeta - (*GuildChannelInfo)(nil), // 14: channel.GuildChannelInfo - (*GuildChannelSlowModeInfo)(nil), // 15: channel.GuildChannelSlowModeInfo - (*GuildChannelTopMsgInfo)(nil), // 16: channel.GuildChannelTopMsgInfo + (*ChannelOidb0X1016Rsp)(nil), // 7: channel.ChannelOidb0x1016Rsp + (*GuildMetaRsp)(nil), // 8: channel.GuildMetaRsp + (*ChannelListRsp)(nil), // 9: channel.ChannelListRsp + (*GuildAdminInfo)(nil), // 10: channel.GuildAdminInfo + (*GuildMemberInfo)(nil), // 11: channel.GuildMemberInfo + (*GuildUserProfile)(nil), // 12: channel.GuildUserProfile + (*GuildRole)(nil), // 13: channel.GuildRole + (*GuildMeta)(nil), // 14: channel.GuildMeta + (*GuildChannelInfo)(nil), // 15: channel.GuildChannelInfo + (*GuildChannelSlowModeInfo)(nil), // 16: channel.GuildChannelSlowModeInfo + (*GuildChannelTopMsgInfo)(nil), // 17: channel.GuildChannelTopMsgInfo } var file_pb_channel_unknown_proto_depIdxs = []int32{ - 10, // 0: channel.ChannelOidb0xf5bRsp.bots:type_name -> channel.GuildMemberInfo - 10, // 1: channel.ChannelOidb0xf5bRsp.members:type_name -> channel.GuildMemberInfo - 9, // 2: channel.ChannelOidb0xf5bRsp.adminInfo:type_name -> channel.GuildAdminInfo - 11, // 3: channel.ChannelOidb0xf88Rsp.profile:type_name -> channel.GuildUserProfile - 11, // 4: channel.ChannelOidb0xfc9Rsp.profile:type_name -> channel.GuildUserProfile - 7, // 5: channel.ChannelOidb0xf57Rsp.rsp:type_name -> channel.GuildMetaRsp - 14, // 6: channel.ChannelOidb0xf55Rsp.info:type_name -> channel.GuildChannelInfo - 8, // 7: channel.ChannelOidb0xf5dRsp.rsp:type_name -> channel.ChannelListRsp - 12, // 8: channel.ChannelOidb0x1019Rsp.roles:type_name -> channel.GuildRole - 13, // 9: channel.GuildMetaRsp.meta:type_name -> channel.GuildMeta - 14, // 10: channel.ChannelListRsp.channels:type_name -> channel.GuildChannelInfo - 10, // 11: channel.GuildAdminInfo.admins:type_name -> channel.GuildMemberInfo - 16, // 12: channel.GuildChannelInfo.topMsg:type_name -> channel.GuildChannelTopMsgInfo - 15, // 13: channel.GuildChannelInfo.slowModeInfos:type_name -> channel.GuildChannelSlowModeInfo + 11, // 0: channel.ChannelOidb0xf5bRsp.bots:type_name -> channel.GuildMemberInfo + 11, // 1: channel.ChannelOidb0xf5bRsp.members:type_name -> channel.GuildMemberInfo + 10, // 2: channel.ChannelOidb0xf5bRsp.adminInfo:type_name -> channel.GuildAdminInfo + 12, // 3: channel.ChannelOidb0xf88Rsp.profile:type_name -> channel.GuildUserProfile + 12, // 4: channel.ChannelOidb0xfc9Rsp.profile:type_name -> channel.GuildUserProfile + 8, // 5: channel.ChannelOidb0xf57Rsp.rsp:type_name -> channel.GuildMetaRsp + 15, // 6: channel.ChannelOidb0xf55Rsp.info:type_name -> channel.GuildChannelInfo + 9, // 7: channel.ChannelOidb0xf5dRsp.rsp:type_name -> channel.ChannelListRsp + 13, // 8: channel.ChannelOidb0x1019Rsp.roles:type_name -> channel.GuildRole + 14, // 9: channel.GuildMetaRsp.meta:type_name -> channel.GuildMeta + 15, // 10: channel.ChannelListRsp.channels:type_name -> channel.GuildChannelInfo + 11, // 11: channel.GuildAdminInfo.admins:type_name -> channel.GuildMemberInfo + 17, // 12: channel.GuildChannelInfo.topMsg:type_name -> channel.GuildChannelTopMsgInfo + 16, // 13: channel.GuildChannelInfo.slowModeInfos:type_name -> channel.GuildChannelSlowModeInfo 14, // [14:14] is the sub-list for method output_type 14, // [14:14] is the sub-list for method input_type 14, // [14:14] is the sub-list for extension type_name @@ -1479,7 +1578,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMetaRsp); i { + switch v := v.(*ChannelOidb0X1016Rsp); i { case 0: return &v.state case 1: @@ -1491,7 +1590,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChannelListRsp); i { + switch v := v.(*GuildMetaRsp); i { case 0: return &v.state case 1: @@ -1503,7 +1602,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildAdminInfo); i { + switch v := v.(*ChannelListRsp); i { case 0: return &v.state case 1: @@ -1515,7 +1614,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMemberInfo); i { + switch v := v.(*GuildAdminInfo); i { case 0: return &v.state case 1: @@ -1527,7 +1626,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildUserProfile); i { + switch v := v.(*GuildMemberInfo); i { case 0: return &v.state case 1: @@ -1539,7 +1638,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildRole); i { + switch v := v.(*GuildUserProfile); i { case 0: return &v.state case 1: @@ -1551,7 +1650,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildMeta); i { + switch v := v.(*GuildRole); i { case 0: return &v.state case 1: @@ -1563,7 +1662,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildChannelInfo); i { + switch v := v.(*GuildMeta); i { case 0: return &v.state case 1: @@ -1575,7 +1674,7 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GuildChannelSlowModeInfo); i { + switch v := v.(*GuildChannelInfo); i { case 0: return &v.state case 1: @@ -1587,6 +1686,18 @@ func file_pb_channel_unknown_proto_init() { } } file_pb_channel_unknown_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GuildChannelSlowModeInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_channel_unknown_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GuildChannelTopMsgInfo); i { case 0: return &v.state @@ -1605,7 +1716,7 @@ func file_pb_channel_unknown_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_channel_unknown_proto_rawDesc, NumEnums: 0, - NumMessages: 17, + NumMessages: 18, NumExtensions: 0, NumServices: 0, }, diff --git a/client/pb/channel/unknown.proto b/client/pb/channel/unknown.proto index 936b8321..adfbad08 100644 --- a/client/pb/channel/unknown.proto +++ b/client/pb/channel/unknown.proto @@ -35,8 +35,37 @@ message ChannelOidb0xf5dRsp { message ChannelOidb0x1019Rsp { optional uint64 guildId = 1; repeated GuildRole roles = 2; + // 3: ? + // 4: } +/* +message ChannelOidb0x100dReq { // 修改身份组 + optional uint64 guildId = 1; + repeated uint64 roleId = 2; + repeated int32 unkonwn = 3; // 3: ? 三个1 + repeated ModifyGuildRole role = 4; +}*/ + +/* +message ChannelOidb0x1016Req { // 新建身份组 + optional uint64 guildId = 1; + repeated int32 unknown = 2; // 2: ? 三个1 + optional ModifyGuildRole role = 3; + repeated uint64 initialUsers = 4; +}*/ + +message ChannelOidb0x1016Rsp { + optional uint64 roleId = 2; +} + +/* +message ChannelOidb0x101aReq { // 给予身份组 + optional uint64 guildId = 1; + repeated SetGuildRole setRoles = 2; + repeated SetGuildRole removeRoles = 3; +}*/ + message GuildMetaRsp { optional uint64 guildId = 3; optional GuildMeta meta = 4; @@ -76,13 +105,27 @@ message GuildRole { optional uint64 roleId = 1; optional string name = 2; optional uint32 argbColor = 3; - // 4: visible? - // 5: ? - // 6: customRole? - // 7: officalRole? - // 8: ? permission + optional int32 independent = 4; + optional int32 num = 5; + optional int32 owned = 6; // 是否拥有 存疑 + optional int32 disabled = 7; // 权限不足或不显示 + optional int32 maxNum = 8; + // 9: ? } +/* +message SetGuildRole { + optional uint64 roleId = 1; + optional uint64 targetId = 2; +}*/ + +/* +message ModifyGuildRole { + optional string roleName = 1; + optional uint32 color = 2; + optional int32 independent = 3; // 身份组单独显示 +}*/ + message GuildMeta { optional uint64 guildCode = 2; optional int64 createTime = 4; From 5181282bc52c0a6e58e839453d223bb96f929ace Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 23:03:10 +0800 Subject: [PATCH 3/6] feat: support roles management --- client/guild.go | 37 +++++++++++++++++++++++++++++++++ client/pb/channel/unknown.proto | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/client/guild.go b/client/guild.go index fd92bd29..e4749e57 100644 --- a/client/guild.go +++ b/client/guild.go @@ -347,6 +347,43 @@ func (s *GuildService) CreateGuildRole(guildId uint64, name string, color uint32 return body.GetRoleId(), nil } +func (s *GuildService) DeleteGuildRole(guildId uint64, roleId uint64) error { + seq := s.c.nextSeq() + packet := packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x100e_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, + s.c.packOIDBPackageDynamically(4110, 1, binary.DynamicProtoMessage{ + 1: guildId, + 2: roleId, + })) + _, err := s.c.sendAndWaitDynamic(seq, packet) + if err != nil { + return errors.Wrap(err, "send packet error") + } + return nil +} + +func (s *GuildService) SetUserRoleInGuild(guildId uint64, set bool, roleId uint64, user []uint64) error { // remove => p2 = false + seq := s.c.nextSeq() + packet := ([]byte)(nil) + setOrRemove := binary.DynamicProtoMessage{ + 1: roleId, + } + if set { + setOrRemove[2] = user + } else { + setOrRemove[3] = user + } + packet = packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x101a_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, + s.c.packOIDBPackageDynamically(4122, 1, binary.DynamicProtoMessage{ + 1: guildId, + 2: setOrRemove, + })) + _, err := s.c.sendAndWaitDynamic(seq, packet) + if err != nil { + return errors.Wrap(err, "send packet error") + } + return nil +} + func (s *GuildService) FetchGuestGuild(guildId uint64) (*GuildMeta, error) { seq := s.c.nextSeq() u1 := uint32(1) diff --git a/client/pb/channel/unknown.proto b/client/pb/channel/unknown.proto index adfbad08..e0099b0c 100644 --- a/client/pb/channel/unknown.proto +++ b/client/pb/channel/unknown.proto @@ -60,7 +60,7 @@ message ChannelOidb0x1016Rsp { } /* -message ChannelOidb0x101aReq { // 给予身份组 +message ChannelOidb0x101aReq { // 修改身份组 optional uint64 guildId = 1; repeated SetGuildRole setRoles = 2; repeated SetGuildRole removeRoles = 3; From 870922b5b608bba22004fb085b981c8463625145 Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 23:19:05 +0800 Subject: [PATCH 4/6] feat: ModifyRoleInGuild --- client/guild.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/client/guild.go b/client/guild.go index e4749e57..3298fe47 100644 --- a/client/guild.go +++ b/client/guild.go @@ -384,6 +384,32 @@ func (s *GuildService) SetUserRoleInGuild(guildId uint64, set bool, roleId uint6 return nil } +func (s *GuildService) ModifyRoleInGuild(guildId uint64, roleId uint64, name string, color uint32, indepedent bool) error { + seq := s.c.nextSeq() + packet := ([]byte)(nil) + u1 := uint32(1) + packet = packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x100d_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, + s.c.packOIDBPackageDynamically(4109, 1, binary.DynamicProtoMessage{ + 1: guildId, + 2: roleId, + 3: binary.DynamicProtoMessage{ + 1: u1, + 2: u1, + 3: u1, + }, + 4: binary.DynamicProtoMessage{ + 1: name, + 2: color, + 3: indepedent, + }, + })) + _, err := s.c.sendAndWaitDynamic(seq, packet) + if err != nil { + return errors.Wrap(err, "send packet error") + } + return nil +} + func (s *GuildService) FetchGuestGuild(guildId uint64) (*GuildMeta, error) { seq := s.c.nextSeq() u1 := uint32(1) From 273dac82f8de5d238d2a3409c12e28668827af03 Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 23:21:41 +0800 Subject: [PATCH 5/6] remove unused struct --- client/guild.go | 5 ----- 1 file changed, 5 deletions(-) diff --git a/client/guild.go b/client/guild.go index 3298fe47..27acb80e 100644 --- a/client/guild.go +++ b/client/guild.go @@ -69,11 +69,6 @@ type ( JoinTime int64 // 只有 GetGuildMemberProfileInfo 函数才会有 } - GuildRoleInfo struct { - GuildId uint64 - Roles []*GuildRole - } - // GuildRole 频道身份组信息 GuildRole struct { RoleId uint64 From 13d2fd51da1861ec8fb1754fe4d21501f0630c2b Mon Sep 17 00:00:00 2001 From: Kengxxiao <1079151249@qq.com> Date: Tue, 16 Nov 2021 23:48:04 +0800 Subject: [PATCH 6/6] fix --- client/guild.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/client/guild.go b/client/guild.go index 27acb80e..2685948a 100644 --- a/client/guild.go +++ b/client/guild.go @@ -297,7 +297,7 @@ func (s *GuildService) GetGuildRoles(guildId uint64) ([]*GuildRole, error) { if err = s.c.unpackOIDBPackage(rsp, body); err != nil { return nil, errors.Wrap(err, "decode packet error") } - roles := make([]*GuildRole, 0) + roles := make([]*GuildRole, 0, len(body.Roles)) for _, role := range body.Roles { roles = append(roles, &GuildRole{ RoleId: role.GetRoleId(), @@ -358,7 +358,7 @@ func (s *GuildService) DeleteGuildRole(guildId uint64, roleId uint64) error { func (s *GuildService) SetUserRoleInGuild(guildId uint64, set bool, roleId uint64, user []uint64) error { // remove => p2 = false seq := s.c.nextSeq() - packet := ([]byte)(nil) + var packet []byte setOrRemove := binary.DynamicProtoMessage{ 1: roleId, } @@ -381,7 +381,7 @@ func (s *GuildService) SetUserRoleInGuild(guildId uint64, set bool, roleId uint6 func (s *GuildService) ModifyRoleInGuild(guildId uint64, roleId uint64, name string, color uint32, indepedent bool) error { seq := s.c.nextSeq() - packet := ([]byte)(nil) + var packet []byte u1 := uint32(1) packet = packets.BuildUniPacket(s.c.Uin, seq, "OidbSvcTrpcTcp.0x100d_1", 1, s.c.OutGoingPacketSessionId, []byte{}, s.c.sigInfo.d2Key, s.c.packOIDBPackageDynamically(4109, 1, binary.DynamicProtoMessage{