github.com/LagrangeDev/LagrangeGo@v0.0.0-20240512064304-ad4a85e10cb4/client/packets/pb/message/component.proto (about) 1 syntax = "proto3"; 2 3 option go_package = "github.com/LagrangeDev/LagrangeGo/client/packets/pb/message"; 4 5 import "pb/message/element.proto"; 6 7 message Attr { 8 int32 CodePage = 1; 9 int32 Time = 2; 10 int32 Random = 3; 11 int32 Color = 4; 12 int32 Size = 5; 13 int32 Effect = 6; 14 int32 CharSet = 7; 15 int32 PitchAndFamily = 8; 16 string FontName = 9; 17 bytes ReserveData = 10; 18 } 19 20 message GroupInfo { 21 uint64 GroupCode = 1; 22 int32 GroupType = 2; 23 int64 GroupInfoSeq = 3; 24 string GroupCard = 4; 25 int32 GroupLevel = 5; 26 int32 GroupCardType = 6; 27 bytes GroupName = 7; 28 } 29 30 message MutilTransHead { 31 int32 Status = 1; 32 int32 MsgId = 2; 33 } 34 35 message NotOnlineFile { 36 optional int32 FileType = 1; 37 optional bytes Sig = 2; 38 optional string FileUuid = 3; 39 optional bytes FileMd5 = 4; 40 optional string FileName = 5; 41 optional int64 FileSize = 6; 42 optional bytes Note = 7; 43 optional int32 Reserved = 8; 44 optional int32 Subcmd = 9; 45 optional int32 MicroCloud = 10; 46 repeated bytes BytesFileUrls = 11; 47 optional int32 DownloadFlag = 12; 48 optional int32 DangerEvel = 50; 49 optional int32 LifeTime = 51; 50 optional int32 UploadTime = 52; 51 optional int32 AbsFileType = 53; 52 optional int32 ClientType = 54; 53 optional int32 ExpireTime = 55; 54 optional bytes PbReserve = 56; 55 optional string FileHash = 57; 56 } 57 58 message Ptt { 59 int32 FileType = 1; 60 uint64 SrcUin = 2; 61 string FileUuid = 3; 62 bytes FileMd5 = 4; 63 string FileName = 5; 64 int32 FileSize = 6; 65 bytes Reserve = 7; 66 int32 FileId = 8; 67 int32 ServerIp = 9; 68 int32 ServerPort = 10; 69 bool BoolValid = 11; 70 bytes Signature = 12; 71 bytes Shortcut = 13; 72 bytes FileKey = 14; 73 int32 MagicPttIndex = 15; 74 int32 VoiceSwitch = 16; 75 bytes PttUrl = 17; 76 string GroupFileKey = 18; 77 int32 Time = 19; 78 bytes DownPara = 20; 79 int32 Format = 29; 80 bytes PbReserve = 30; 81 repeated bytes BytesPttUrls = 31; 82 int32 DownloadFlag = 32; 83 } 84 85 message RichText { 86 optional Attr Attr = 1; 87 repeated Elem Elems = 2; 88 optional NotOnlineFile NotOnlineFile = 3; 89 optional Ptt Ptt = 4; 90 } 91 92 // extra 93 94 // ButtonExtra start 95 96 message ButtonExtra { 97 KeyboardData Data = 1; 98 } 99 100 message KeyboardData { 101 repeated Row Rows = 1; 102 } 103 104 message Row { 105 repeated Button Buttons = 1; 106 } 107 108 message Button { 109 string ID = 1; 110 RenderData RenderData = 2; 111 Action Action = 3; 112 113 } 114 115 message RenderData { 116 string Label = 1; 117 string VisitedLabel = 2; 118 int32 Style = 3; 119 } 120 121 message Action { 122 int32 Type = 1; 123 Permission Permission = 2; 124 // uint64 ClickLimit = 3; 125 string UnsupportTips = 4; 126 string Data = 5; 127 bool Reply = 7; 128 bool Enter = 8; 129 } 130 131 message Permission { 132 int32 Type = 1; 133 repeated string SpecifyRoleIds = 2; 134 repeated string SpecifyUserIds = 3; 135 } 136 137 // ButtonExtra end 138 139 message FileExtra { 140 NotOnlineFile File = 1; 141 } 142 143 // GroupFileExtra start 144 145 message GroupFileExtra { 146 uint32 Field1 = 1; 147 string FileName = 2; 148 string Display = 3; 149 GroupFileExtraInner Inner = 7; 150 } 151 152 message GroupFileExtraInner { 153 GroupFileExtraInfo Info = 2; 154 } 155 156 message GroupFileExtraInfo { 157 uint32 BusId = 1; 158 string FileId = 2; 159 uint64 FileSize = 3; 160 string FileName = 4; 161 uint32 Field5 = 5; 162 string Field7 = 7; 163 string FileMd5 = 8; 164 } 165 166 // GroupFileExtra end 167 168 message ImageExtraUrl { 169 string OrigUrl = 30; 170 } 171 172 message PokeExtra { 173 uint32 Type = 1; 174 uint32 Field7 = 7; 175 uint32 Field8 = 8; 176 } 177