@n4tzz/n4lyx 2.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.MD +690 -0
- package/WAProto/GenerateStatics.sh +15 -0
- package/WAProto/WAProto.proto +2995 -0
- package/WAProto/index.d.ts +44070 -0
- package/WAProto/index.js +127017 -0
- package/WAProto/p.html +1 -0
- package/engine-requirements.js +10 -0
- package/lib/Defaults/index.js +120 -0
- package/lib/Defaults/n4lyx-version.json +3 -0
- package/lib/Signal/Group/ciphertext-message.js +15 -0
- package/lib/Signal/Group/group-session-builder.js +64 -0
- package/lib/Signal/Group/group_cipher.js +96 -0
- package/lib/Signal/Group/index.js +57 -0
- package/lib/Signal/Group/keyhelper.js +55 -0
- package/lib/Signal/Group/queue-job.js +57 -0
- package/lib/Signal/Group/sender-chain-key.js +34 -0
- package/lib/Signal/Group/sender-key-distribution-message.js +66 -0
- package/lib/Signal/Group/sender-key-message.js +69 -0
- package/lib/Signal/Group/sender-key-name.js +51 -0
- package/lib/Signal/Group/sender-key-record.js +53 -0
- package/lib/Signal/Group/sender-key-state.js +99 -0
- package/lib/Signal/Group/sender-message-key.js +29 -0
- package/lib/Signal/libsignal.js +174 -0
- package/lib/Socket/Client/index.js +18 -0
- package/lib/Socket/Client/types.js +13 -0
- package/lib/Socket/Client/websocket.js +72 -0
- package/lib/Socket/business.js +260 -0
- package/lib/Socket/chats.js +972 -0
- package/lib/Socket/groups.js +387 -0
- package/lib/Socket/index.js +10 -0
- package/lib/Socket/messages-recv.js +1104 -0
- package/lib/Socket/messages-send.js +889 -0
- package/lib/Socket/newsletter.js +250 -0
- package/lib/Socket/socket.js +646 -0
- package/lib/Socket/usync.js +70 -0
- package/lib/Store/index.js +8 -0
- package/lib/Store/make-in-memory-store.js +439 -0
- package/lib/Store/make-ordered-dictionary.js +81 -0
- package/lib/Store/object-repository.js +27 -0
- package/lib/Types/Auth.js +2 -0
- package/lib/Types/Call.js +2 -0
- package/lib/Types/Chat.js +4 -0
- package/lib/Types/Contact.js +2 -0
- package/lib/Types/Events.js +2 -0
- package/lib/Types/GroupMetadata.js +2 -0
- package/lib/Types/Label.js +27 -0
- package/lib/Types/LabelAssociation.js +9 -0
- package/lib/Types/Message.js +7 -0
- package/lib/Types/Newsletter.js +18 -0
- package/lib/Types/Product.js +2 -0
- package/lib/Types/Signal.js +2 -0
- package/lib/Types/Socket.js +2 -0
- package/lib/Types/State.js +2 -0
- package/lib/Types/USync.js +2 -0
- package/lib/Types/index.js +42 -0
- package/lib/Utils/auth-utils.js +199 -0
- package/lib/Utils/browser-utils.js +35 -0
- package/lib/Utils/business.js +234 -0
- package/lib/Utils/chat-utils.js +730 -0
- package/lib/Utils/crypto.js +193 -0
- package/lib/Utils/decode-wa-message.js +207 -0
- package/lib/Utils/event-buffer.js +518 -0
- package/lib/Utils/generics.js +467 -0
- package/lib/Utils/history.js +94 -0
- package/lib/Utils/index.js +35 -0
- package/lib/Utils/link-preview.js +126 -0
- package/lib/Utils/logger.js +7 -0
- package/lib/Utils/lt-hash.js +51 -0
- package/lib/Utils/make-mutex.js +43 -0
- package/lib/Utils/message-retry-manager.js +128 -0
- package/lib/Utils/messages-media.js +879 -0
- package/lib/Utils/messages.js +1071 -0
- package/lib/Utils/n4lyx-event-stream.js +63 -0
- package/lib/Utils/noise-handler.js +150 -0
- package/lib/Utils/process-message.js +404 -0
- package/lib/Utils/signal.js +153 -0
- package/lib/Utils/use-multi-file-auth-state.js +125 -0
- package/lib/Utils/validate-connection.js +229 -0
- package/lib/WABinary/constants.js +1303 -0
- package/lib/WABinary/decode.js +265 -0
- package/lib/WABinary/encode.js +250 -0
- package/lib/WABinary/generic-utils.js +110 -0
- package/lib/WABinary/index.js +21 -0
- package/lib/WABinary/jid-utils.js +85 -0
- package/lib/WABinary/types.js +2 -0
- package/lib/WAM/BinaryInfo.js +13 -0
- package/lib/WAM/constants.js +15350 -0
- package/lib/WAM/encode.js +155 -0
- package/lib/WAM/index.js +19 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +32 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +42 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +53 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +24 -0
- package/lib/WAUSync/Protocols/index.js +20 -0
- package/lib/WAUSync/USyncQuery.js +89 -0
- package/lib/WAUSync/USyncUser.js +26 -0
- package/lib/WAUSync/index.js +19 -0
- package/lib/index.js +102 -0
- package/package.json +77 -0
|
@@ -0,0 +1,2995 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
package proto;
|
|
3
|
+
|
|
4
|
+
// ─── ENUMS ───────────────────────────────────────────────────
|
|
5
|
+
|
|
6
|
+
enum ADVEncryptionType {
|
|
7
|
+
E2EE = 0;
|
|
8
|
+
HOSTED = 1;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
enum BotMetricsEntryPoint {
|
|
12
|
+
FAVICON = 1;
|
|
13
|
+
CHATLIST = 2;
|
|
14
|
+
AISEARCH_NULL_STATE_PAPER_PLANE = 3;
|
|
15
|
+
AISEARCH_NULL_STATE_SUGGESTION = 4;
|
|
16
|
+
AISEARCH_TYPE_AHEAD_SUGGESTION = 5;
|
|
17
|
+
AISEARCH_TYPE_AHEAD_PAPER_PLANE = 6;
|
|
18
|
+
AISEARCH_TYPE_AHEAD_RESULT_CHATLIST = 7;
|
|
19
|
+
AISEARCH_TYPE_AHEAD_RESULT_MESSAGES = 8;
|
|
20
|
+
AIVOICE_SEARCH_BAR = 9;
|
|
21
|
+
AIVOICE_FAVICON = 10;
|
|
22
|
+
AISTUDIO = 11;
|
|
23
|
+
DEEPLINK = 12;
|
|
24
|
+
NOTIFICATION = 13;
|
|
25
|
+
PROFILE_MESSAGE_BUTTON = 14;
|
|
26
|
+
FORWARD = 15;
|
|
27
|
+
APP_SHORTCUT = 16;
|
|
28
|
+
FF_FAMILY = 17;
|
|
29
|
+
AI_TAB = 18;
|
|
30
|
+
AI_HOME = 19;
|
|
31
|
+
AI_DEEPLINK_IMMERSIVE = 20;
|
|
32
|
+
AI_DEEPLINK = 21;
|
|
33
|
+
META_AI_CHAT_SHORTCUT_AI_STUDIO = 22;
|
|
34
|
+
UGC_CHAT_SHORTCUT_AI_STUDIO = 23;
|
|
35
|
+
NEW_CHAT_AI_STUDIO = 24;
|
|
36
|
+
AIVOICE_FAVICON_CALL_HISTORY = 25;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
enum BotMetricsThreadEntryPoint {
|
|
40
|
+
AI_TAB_THREAD = 1;
|
|
41
|
+
AI_HOME_THREAD = 2;
|
|
42
|
+
AI_DEEPLINK_IMMERSIVE_THREAD = 3;
|
|
43
|
+
AI_DEEPLINK_THREAD = 4;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
enum BotSessionSource {
|
|
47
|
+
NONE = 0;
|
|
48
|
+
NULL_STATE = 1;
|
|
49
|
+
TYPEAHEAD = 2;
|
|
50
|
+
USER_INPUT = 3;
|
|
51
|
+
EMU_FLASH = 4;
|
|
52
|
+
EMU_FLASH_FOLLOWUP = 5;
|
|
53
|
+
VOICE = 6;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
enum KeepType {
|
|
57
|
+
UNKNOWN = 0;
|
|
58
|
+
KEEP_FOR_ALL = 1;
|
|
59
|
+
UNDO_KEEP_FOR_ALL = 2;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
enum MediaVisibility {
|
|
63
|
+
DEFAULT = 0;
|
|
64
|
+
OFF = 1;
|
|
65
|
+
ON = 2;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
enum PrivacySystemMessage {
|
|
69
|
+
E2EE_MSG = 1;
|
|
70
|
+
NE2EE_SELF = 2;
|
|
71
|
+
NE2EE_OTHER = 3;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
// ─── ADV ─────────────────────────────────────────────────────
|
|
76
|
+
|
|
77
|
+
message ADVDeviceIdentity {
|
|
78
|
+
optional uint32 rawId = 1;
|
|
79
|
+
optional uint64 timestamp = 2;
|
|
80
|
+
optional uint32 keyIndex = 3;
|
|
81
|
+
optional ADVEncryptionType accountType = 4;
|
|
82
|
+
optional ADVEncryptionType deviceType = 5;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
message ADVKeyIndexList {
|
|
86
|
+
optional uint32 rawId = 1;
|
|
87
|
+
optional uint64 timestamp = 2;
|
|
88
|
+
optional uint32 currentIndex = 3;
|
|
89
|
+
repeated uint32 validIndexes = 4 [packed=true];
|
|
90
|
+
optional ADVEncryptionType accountType = 5;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
message ADVSignedDeviceIdentity {
|
|
94
|
+
optional bytes details = 1;
|
|
95
|
+
optional bytes accountSignatureKey = 2;
|
|
96
|
+
optional bytes accountSignature = 3;
|
|
97
|
+
optional bytes deviceSignature = 4;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
message ADVSignedDeviceIdentityHMAC {
|
|
101
|
+
optional bytes details = 1;
|
|
102
|
+
optional bytes hmac = 2;
|
|
103
|
+
optional ADVEncryptionType accountType = 3;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
message ADVSignedKeyIndexList {
|
|
107
|
+
optional bytes details = 1;
|
|
108
|
+
optional bytes accountSignature = 2;
|
|
109
|
+
optional bytes accountSignatureKey = 3;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
// ─── ACCOUNT ─────────────────────────────────────────────────
|
|
114
|
+
|
|
115
|
+
message Account {
|
|
116
|
+
optional string lid = 1;
|
|
117
|
+
optional string username = 2;
|
|
118
|
+
optional string countryCode = 3;
|
|
119
|
+
optional bool isUsernameDeleted = 4;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
message ActionLink {
|
|
123
|
+
optional string url = 1;
|
|
124
|
+
optional string buttonTitle = 2;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
message AutoDownloadSettings {
|
|
128
|
+
optional bool downloadImages = 1;
|
|
129
|
+
optional bool downloadAudio = 2;
|
|
130
|
+
optional bool downloadVideo = 3;
|
|
131
|
+
optional bool downloadDocuments = 4;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
message AvatarUserSettings {
|
|
135
|
+
optional string fbid = 1;
|
|
136
|
+
optional string password = 2;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
// ─── BIZ ─────────────────────────────────────────────────────
|
|
141
|
+
|
|
142
|
+
message BizAccountLinkInfo {
|
|
143
|
+
optional uint64 whatsappBizAcctFbid = 1;
|
|
144
|
+
optional string whatsappAcctNumber = 2;
|
|
145
|
+
optional uint64 issueTime = 3;
|
|
146
|
+
optional HostStorageType hostStorage = 4;
|
|
147
|
+
optional AccountType accountType = 5;
|
|
148
|
+
|
|
149
|
+
enum AccountType { ENTERPRISE = 0; }
|
|
150
|
+
enum HostStorageType { ON_PREMISE = 0; FACEBOOK = 1; }
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
message BizAccountPayload {
|
|
154
|
+
optional VerifiedNameCertificate vnameCert = 1;
|
|
155
|
+
optional bytes bizAcctLinkInfo = 2;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
message BizIdentityInfo {
|
|
159
|
+
optional VerifiedLevelValue vlevel = 1;
|
|
160
|
+
optional VerifiedNameCertificate vnameCert = 2;
|
|
161
|
+
optional bool signed = 3;
|
|
162
|
+
optional bool revoked = 4;
|
|
163
|
+
optional HostStorageType hostStorage = 5;
|
|
164
|
+
optional ActualActorsType actualActors = 6;
|
|
165
|
+
optional uint64 privacyModeTs = 7;
|
|
166
|
+
optional uint64 featureControls = 8;
|
|
167
|
+
|
|
168
|
+
enum ActualActorsType { SELF = 0; BSP = 1; }
|
|
169
|
+
enum HostStorageType { ON_PREMISE = 0; FACEBOOK = 1; }
|
|
170
|
+
enum VerifiedLevelValue { UNKNOWN = 0; LOW = 1; HIGH = 2; }
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
// ─── BOT ─────────────────────────────────────────────────────
|
|
175
|
+
|
|
176
|
+
message BotAgeCollectionMetadata {
|
|
177
|
+
optional bool ageCollectionEligible = 1;
|
|
178
|
+
optional bool shouldTriggerAgeCollectionOnClient = 2;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
message BotAvatarMetadata {
|
|
182
|
+
optional uint32 sentiment = 1;
|
|
183
|
+
optional string behaviorGraph = 2;
|
|
184
|
+
optional uint32 action = 3;
|
|
185
|
+
optional uint32 intensity = 4;
|
|
186
|
+
optional uint32 wordCount = 5;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
message BotCapabilityMetadata {
|
|
190
|
+
repeated BotCapabilityType capabilities = 1;
|
|
191
|
+
|
|
192
|
+
enum BotCapabilityType {
|
|
193
|
+
UNKNOWN = 0;
|
|
194
|
+
PROGRESS_INDICATOR = 1;
|
|
195
|
+
RICH_RESPONSE_HEADING = 2;
|
|
196
|
+
RICH_RESPONSE_NESTED_LIST = 3;
|
|
197
|
+
AI_MEMORY = 4;
|
|
198
|
+
RICH_RESPONSE_THREAD_SURFING = 5;
|
|
199
|
+
RICH_RESPONSE_TABLE = 6;
|
|
200
|
+
RICH_RESPONSE_CODE = 7;
|
|
201
|
+
RICH_RESPONSE_STRUCTURED_RESPONSE = 8;
|
|
202
|
+
RICH_RESPONSE_INLINE_IMAGE = 9;
|
|
203
|
+
WA_IG_1P_PLUGIN_RANKING_CONTROL = 10;
|
|
204
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_1 = 11;
|
|
205
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_2 = 12;
|
|
206
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_3 = 13;
|
|
207
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_4 = 14;
|
|
208
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_5 = 15;
|
|
209
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_6 = 16;
|
|
210
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_7 = 17;
|
|
211
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_8 = 18;
|
|
212
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_9 = 19;
|
|
213
|
+
WA_IG_1P_PLUGIN_RANKING_UPDATE_10 = 20;
|
|
214
|
+
RICH_RESPONSE_SUB_HEADING = 21;
|
|
215
|
+
RICH_RESPONSE_GRID_IMAGE = 22;
|
|
216
|
+
AI_STUDIO_UGC_MEMORY = 23;
|
|
217
|
+
RICH_RESPONSE_LATEX = 24;
|
|
218
|
+
RICH_RESPONSE_MAPS = 25;
|
|
219
|
+
RICH_RESPONSE_INLINE_REELS = 26;
|
|
220
|
+
AGENTIC_PLANNING = 27;
|
|
221
|
+
ACCOUNT_LINKING = 28;
|
|
222
|
+
STREAMING_DISAGGREGATION = 29;
|
|
223
|
+
RICH_RESPONSE_GRID_IMAGE_3P = 30;
|
|
224
|
+
RICH_RESPONSE_LATEX_INLINE = 31;
|
|
225
|
+
QUERY_PLAN = 32;
|
|
226
|
+
PROACTIVE_MESSAGE = 33;
|
|
227
|
+
RICH_RESPONSE_UNIFIED_RESPONSE = 34;
|
|
228
|
+
PROMOTION_MESSAGE = 35;
|
|
229
|
+
SIMPLIFIED_PROFILE_PAGE = 36;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
message BotImagineMetadata {
|
|
234
|
+
optional ImagineType imagineType = 1;
|
|
235
|
+
enum ImagineType { UNKNOWN = 0; IMAGINE = 1; MEMU = 2; FLASH = 3; EDIT = 4; }
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
message BotLinkedAccount {
|
|
239
|
+
optional BotLinkedAccountType type = 1;
|
|
240
|
+
enum BotLinkedAccountType { BOT_LINKED_ACCOUNT_TYPE_1P = 0; }
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
message BotLinkedAccountsMetadata {
|
|
244
|
+
repeated BotLinkedAccount accounts = 1;
|
|
245
|
+
optional bytes acAuthTokens = 2;
|
|
246
|
+
optional int32 acErrorCode = 3;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
message BotMediaMetadata {
|
|
250
|
+
optional string fileSha256 = 1;
|
|
251
|
+
optional string mediaKey = 2;
|
|
252
|
+
optional string fileEncSha256 = 3;
|
|
253
|
+
optional string directPath = 4;
|
|
254
|
+
optional int64 mediaKeyTimestamp = 5;
|
|
255
|
+
optional string mimetype = 6;
|
|
256
|
+
optional OrientationType orientationType = 7;
|
|
257
|
+
|
|
258
|
+
enum OrientationType { CENTER = 1; LEFT = 2; RIGHT = 3; }
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
message BotMemoryFact {
|
|
262
|
+
optional string fact = 1;
|
|
263
|
+
optional string factId = 2;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
message BotMemoryMetadata {
|
|
267
|
+
repeated BotMemoryFact addedFacts = 1;
|
|
268
|
+
repeated BotMemoryFact removedFacts = 2;
|
|
269
|
+
optional string disclaimer = 3;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
message BotMemuMetadata {
|
|
273
|
+
repeated BotMediaMetadata faceImages = 1;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
message BotMetadata {
|
|
277
|
+
optional BotAvatarMetadata avatarMetadata = 1;
|
|
278
|
+
optional string personaId = 2;
|
|
279
|
+
optional BotPluginMetadata pluginMetadata = 3;
|
|
280
|
+
optional BotSuggestedPromptMetadata suggestedPromptMetadata = 4;
|
|
281
|
+
optional string invokerJid = 5;
|
|
282
|
+
optional BotSessionMetadata sessionMetadata = 6;
|
|
283
|
+
optional BotMemuMetadata memuMetadata = 7;
|
|
284
|
+
optional string timezone = 8;
|
|
285
|
+
optional BotReminderMetadata reminderMetadata = 9;
|
|
286
|
+
optional BotModelMetadata modelMetadata = 10;
|
|
287
|
+
optional string messageDisclaimerText = 11;
|
|
288
|
+
optional BotProgressIndicatorMetadata progressIndicatorMetadata = 12;
|
|
289
|
+
optional BotCapabilityMetadata capabilityMetadata = 13;
|
|
290
|
+
optional BotImagineMetadata imagineMetadata = 14;
|
|
291
|
+
optional BotMemoryMetadata memoryMetadata = 15;
|
|
292
|
+
optional BotRenderingMetadata renderingMetadata = 16;
|
|
293
|
+
optional BotMetricsMetadata botMetricsMetadata = 17;
|
|
294
|
+
optional BotLinkedAccountsMetadata botLinkedAccountsMetadata = 18;
|
|
295
|
+
optional BotSourcesMetadata richResponseSourcesMetadata = 19;
|
|
296
|
+
optional bytes aiConversationContext = 20;
|
|
297
|
+
optional BotPromotionMessageMetadata botPromotionMessageMetadata = 21;
|
|
298
|
+
optional BotModeSelectionMetadata botModeSelectionMetadata = 22;
|
|
299
|
+
optional BotQuotaMetadata botQuotaMetadata = 23;
|
|
300
|
+
optional BotAgeCollectionMetadata botAgeCollectionMetadata = 24;
|
|
301
|
+
optional string conversationStarterPromptId = 25;
|
|
302
|
+
optional string botResponseId = 26;
|
|
303
|
+
optional BotSignatureVerificationMetadata verificationMetadata = 27;
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
message BotMetricsMetadata {
|
|
307
|
+
optional string destinationId = 1;
|
|
308
|
+
optional BotMetricsEntryPoint destinationEntryPoint = 2;
|
|
309
|
+
optional BotMetricsThreadEntryPoint threadOrigin = 3;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
message BotModeSelectionMetadata {
|
|
313
|
+
repeated BotUserSelectionMode mode = 1;
|
|
314
|
+
enum BotUserSelectionMode { UNKNOWN_MODE = 0; REASONING_MODE = 1; }
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
message BotModelMetadata {
|
|
318
|
+
optional ModelType modelType = 1;
|
|
319
|
+
optional PremiumModelStatus premiumModelStatus = 2;
|
|
320
|
+
|
|
321
|
+
enum ModelType { UNKNOWN_TYPE = 0; LLAMA_PROD = 1; LLAMA_PROD_PREMIUM = 2; }
|
|
322
|
+
enum PremiumModelStatus { UNKNOWN_STATUS = 0; AVAILABLE = 1; QUOTA_EXCEED_LIMIT = 2; }
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
message BotPluginMetadata {
|
|
326
|
+
optional SearchProvider provider = 1;
|
|
327
|
+
optional PluginType pluginType = 2;
|
|
328
|
+
optional string thumbnailCdnUrl = 3;
|
|
329
|
+
optional string profilePhotoCdnUrl = 4;
|
|
330
|
+
optional string searchProviderUrl = 5;
|
|
331
|
+
optional uint32 referenceIndex = 6;
|
|
332
|
+
optional uint32 expectedLinksCount = 7;
|
|
333
|
+
optional string searchQuery = 9;
|
|
334
|
+
optional MessageKey parentPluginMessageKey = 10;
|
|
335
|
+
optional PluginType parentPluginType = 12;
|
|
336
|
+
optional string faviconCdnUrl = 13;
|
|
337
|
+
|
|
338
|
+
enum PluginType { UNKNOWN_PLUGIN = 0; REELS = 1; SEARCH = 2; }
|
|
339
|
+
enum SearchProvider { UNKNOWN = 0; BING = 1; GOOGLE = 2; SUPPORT = 3; }
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
message BotProgressIndicatorMetadata {
|
|
343
|
+
optional string progressDescription = 1;
|
|
344
|
+
repeated BotPlanningStepMetadata stepsMetadata = 2;
|
|
345
|
+
|
|
346
|
+
message BotPlanningStepMetadata {
|
|
347
|
+
optional string statusTitle = 1;
|
|
348
|
+
optional string statusBody = 2;
|
|
349
|
+
repeated BotPlanningSearchSourcesMetadata sourcesMetadata = 3;
|
|
350
|
+
optional PlanningStepStatus status = 4;
|
|
351
|
+
optional bool isReasoning = 5;
|
|
352
|
+
optional bool isEnhancedSearch = 6;
|
|
353
|
+
repeated BotPlanningStepSectionMetadata sections = 7;
|
|
354
|
+
|
|
355
|
+
message BotPlanningSearchSourcesMetadata {
|
|
356
|
+
optional string sourceTitle = 1;
|
|
357
|
+
optional BotPlanningSearchSourceProvider provider = 2;
|
|
358
|
+
optional string sourceUrl = 3;
|
|
359
|
+
|
|
360
|
+
enum BotPlanningSearchSourceProvider {
|
|
361
|
+
UNKNOWN = 0; OTHER = 1; GOOGLE = 2; BING = 3;
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
message BotPlanningStepSectionMetadata {
|
|
366
|
+
optional string sectionTitle = 1;
|
|
367
|
+
optional string sectionBody = 2;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
enum PlanningStepStatus { UNKNOWN = 0; PLANNED = 1; EXECUTING = 2; FINISHED = 3; }
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
message BotPromotionMessageMetadata {
|
|
375
|
+
optional BotPromotionType promotionType = 1;
|
|
376
|
+
optional string buttonTitle = 2;
|
|
377
|
+
|
|
378
|
+
enum BotPromotionType { UNKNOWN_TYPE = 0; C50 = 1; }
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
message BotPromptSuggestion {
|
|
382
|
+
optional string prompt = 1;
|
|
383
|
+
optional string promptId = 2;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
message BotPromptSuggestions {
|
|
387
|
+
repeated BotPromptSuggestion suggestions = 1;
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
message BotQuotaMetadata {
|
|
391
|
+
repeated BotFeatureQuotaMetadata botFeatureQuotaMetadata = 1;
|
|
392
|
+
|
|
393
|
+
message BotFeatureQuotaMetadata {
|
|
394
|
+
optional BotFeatureType featureType = 1;
|
|
395
|
+
optional uint32 remainingQuota = 2;
|
|
396
|
+
optional uint64 expirationTimestamp = 3;
|
|
397
|
+
|
|
398
|
+
enum BotFeatureType { UNKNOWN_FEATURE = 0; REASONING_FEATURE = 1; }
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
message BotReminderMetadata {
|
|
403
|
+
optional MessageKey requestMessageKey = 1;
|
|
404
|
+
optional ReminderAction action = 2;
|
|
405
|
+
optional string name = 3;
|
|
406
|
+
optional uint64 nextTriggerTimestamp = 4;
|
|
407
|
+
optional ReminderFrequency frequency = 5;
|
|
408
|
+
|
|
409
|
+
enum ReminderAction { NOTIFY = 1; CREATE = 2; DELETE = 3; UPDATE = 4; }
|
|
410
|
+
enum ReminderFrequency { ONCE = 1; DAILY = 2; WEEKLY = 3; BIWEEKLY = 4; MONTHLY = 5; }
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
message BotRenderingMetadata {
|
|
414
|
+
repeated Keyword keywords = 1;
|
|
415
|
+
|
|
416
|
+
message Keyword {
|
|
417
|
+
optional string value = 1;
|
|
418
|
+
repeated string associatedPrompts = 2;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
message BotSessionMetadata {
|
|
423
|
+
optional string sessionId = 1;
|
|
424
|
+
optional BotSessionSource sessionSource = 2;
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
message BotSignatureVerificationMetadata {
|
|
428
|
+
repeated BotSignatureVerificationUseCaseProof proofs = 1;
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
message BotSignatureVerificationUseCaseProof {
|
|
432
|
+
optional int32 version = 1;
|
|
433
|
+
optional BotSignatureUseCase useCase = 2;
|
|
434
|
+
optional bytes signature = 3;
|
|
435
|
+
optional bytes certificateChain = 4;
|
|
436
|
+
|
|
437
|
+
enum BotSignatureUseCase { WA_BOT_MSG = 0; }
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
message BotSourcesMetadata {
|
|
441
|
+
repeated BotSourceItem sources = 1;
|
|
442
|
+
|
|
443
|
+
message BotSourceItem {
|
|
444
|
+
optional SourceProvider provider = 1;
|
|
445
|
+
optional string thumbnailCdnUrl = 2;
|
|
446
|
+
optional string sourceProviderUrl = 3;
|
|
447
|
+
optional string sourceQuery = 4;
|
|
448
|
+
optional string faviconCdnUrl = 5;
|
|
449
|
+
optional uint32 citationNumber = 6;
|
|
450
|
+
|
|
451
|
+
enum SourceProvider { UNKNOWN = 0; BING = 1; GOOGLE = 2; SUPPORT = 3; }
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
message BotSuggestedPromptMetadata {
|
|
456
|
+
repeated string suggestedPrompts = 1;
|
|
457
|
+
optional uint32 selectedPromptIndex = 2;
|
|
458
|
+
optional BotPromptSuggestions promptSuggestions = 3;
|
|
459
|
+
optional string selectedPromptId = 4;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
// ─── CALL ────────────────────────────────────────────────────
|
|
464
|
+
|
|
465
|
+
message CallLogRecord {
|
|
466
|
+
optional CallResult callResult = 1;
|
|
467
|
+
optional bool isDndMode = 2;
|
|
468
|
+
optional SilenceReason silenceReason = 3;
|
|
469
|
+
optional int64 duration = 4;
|
|
470
|
+
optional int64 startTime = 5;
|
|
471
|
+
optional bool isIncoming = 6;
|
|
472
|
+
optional bool isVideo = 7;
|
|
473
|
+
optional bool isCallLink = 8;
|
|
474
|
+
optional string callLinkToken = 9;
|
|
475
|
+
optional string scheduledCallId = 10;
|
|
476
|
+
optional string callId = 11;
|
|
477
|
+
optional string callCreatorJid = 12;
|
|
478
|
+
optional string groupJid = 13;
|
|
479
|
+
repeated ParticipantInfo participants = 14;
|
|
480
|
+
optional CallType callType = 15;
|
|
481
|
+
|
|
482
|
+
enum CallResult {
|
|
483
|
+
CONNECTED = 0;
|
|
484
|
+
REJECTED = 1;
|
|
485
|
+
CANCELLED = 2;
|
|
486
|
+
ACCEPTEDELSEWHERE = 3;
|
|
487
|
+
MISSED = 4;
|
|
488
|
+
INVALID = 5;
|
|
489
|
+
UNAVAILABLE = 6;
|
|
490
|
+
UPCOMING = 7;
|
|
491
|
+
FAILED = 8;
|
|
492
|
+
ABANDONED = 9;
|
|
493
|
+
ONGOING = 10;
|
|
494
|
+
}
|
|
495
|
+
enum CallType { REGULAR = 0; SCHEDULED_CALL = 1; VOICE_CHAT = 2; }
|
|
496
|
+
|
|
497
|
+
message ParticipantInfo {
|
|
498
|
+
optional string userJid = 1;
|
|
499
|
+
optional CallResult callResult = 2;
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
enum SilenceReason { NONE = 0; SCHEDULED = 1; PRIVACY = 2; LIGHTWEIGHT = 3; }
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
// ─── CERT ────────────────────────────────────────────────────
|
|
507
|
+
|
|
508
|
+
message CertChain {
|
|
509
|
+
optional NoiseCertificate leaf = 1;
|
|
510
|
+
optional NoiseCertificate intermediate = 2;
|
|
511
|
+
|
|
512
|
+
message NoiseCertificate {
|
|
513
|
+
optional bytes details = 1;
|
|
514
|
+
optional bytes signature = 2;
|
|
515
|
+
|
|
516
|
+
message Details {
|
|
517
|
+
optional uint32 serial = 1;
|
|
518
|
+
optional uint32 issuerSerial = 2;
|
|
519
|
+
optional bytes key = 3;
|
|
520
|
+
optional uint64 notBefore = 4;
|
|
521
|
+
optional uint64 notAfter = 5;
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
message NoiseCertificate {
|
|
527
|
+
optional bytes details = 1;
|
|
528
|
+
optional bytes signature = 2;
|
|
529
|
+
|
|
530
|
+
message Details {
|
|
531
|
+
optional uint32 serial = 1;
|
|
532
|
+
optional string issuer = 2;
|
|
533
|
+
optional uint64 expires = 3;
|
|
534
|
+
optional string subject = 4;
|
|
535
|
+
optional bytes key = 5;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
|
|
540
|
+
// ─── CHAT ────────────────────────────────────────────────────
|
|
541
|
+
|
|
542
|
+
message ChatLockSettings {
|
|
543
|
+
optional bool hideLockedChats = 1;
|
|
544
|
+
optional UserPassword secretCode = 2;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
message ChatRowOpaqueData {
|
|
548
|
+
optional DraftMessage draftMessage = 1;
|
|
549
|
+
|
|
550
|
+
message DraftMessage {
|
|
551
|
+
optional string text = 1;
|
|
552
|
+
optional string omittedUrl = 2;
|
|
553
|
+
optional CtwaContextData ctwaContext = 4;
|
|
554
|
+
optional int64 timestamp = 5;
|
|
555
|
+
|
|
556
|
+
message CtwaContextData {
|
|
557
|
+
optional string conversionSource = 1;
|
|
558
|
+
optional bytes conversionData = 2;
|
|
559
|
+
optional string sourceUrl = 3;
|
|
560
|
+
optional string sourceId = 4;
|
|
561
|
+
optional string sourceType = 5;
|
|
562
|
+
optional string title = 6;
|
|
563
|
+
optional string description = 7;
|
|
564
|
+
optional string thumbnailUrl = 9;
|
|
565
|
+
optional string mediaUrl = 11;
|
|
566
|
+
optional bool isSuspiciousLink = 12;
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
message Citation {
|
|
572
|
+
optional string title = 1;
|
|
573
|
+
optional string subtitle = 2;
|
|
574
|
+
optional string cmsId = 3;
|
|
575
|
+
optional string imageUrl = 4;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
message ClientPairingProps {
|
|
579
|
+
optional bool isChatDbLidMigrated = 1;
|
|
580
|
+
optional bool isSyncdPureLidSession = 2;
|
|
581
|
+
optional bool isSyncdSnapshotRecoveryEnabled = 3;
|
|
582
|
+
}
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
// ─── CONTEXT ─────────────────────────────────────────────────
|
|
586
|
+
|
|
587
|
+
message ContextInfo {
|
|
588
|
+
optional string stanzaId = 1;
|
|
589
|
+
optional string participant = 2;
|
|
590
|
+
optional Message quotedMessage = 3;
|
|
591
|
+
optional string remoteJid = 4;
|
|
592
|
+
repeated string mentionedJid = 15;
|
|
593
|
+
optional string conversionSource = 18;
|
|
594
|
+
optional bytes conversionData = 19;
|
|
595
|
+
optional uint32 conversionDelaySeconds = 20;
|
|
596
|
+
optional uint32 forwardingScore = 21;
|
|
597
|
+
optional bool isForwarded = 22;
|
|
598
|
+
optional AdReplyInfo quotedAd = 23;
|
|
599
|
+
optional MessageKey placeholderKey = 24;
|
|
600
|
+
optional uint32 expiration = 25;
|
|
601
|
+
optional int64 ephemeralSettingTimestamp = 26;
|
|
602
|
+
optional bytes ephemeralSharedSecret = 27;
|
|
603
|
+
optional ExternalAdReplyInfo externalAdReply = 28;
|
|
604
|
+
optional string entryPointConversionSource = 29;
|
|
605
|
+
optional string entryPointConversionApp = 30;
|
|
606
|
+
optional uint32 entryPointConversionDelaySeconds = 31;
|
|
607
|
+
optional DisappearingMode disappearingMode = 32;
|
|
608
|
+
optional ActionLink actionLink = 33;
|
|
609
|
+
optional string groupSubject = 34;
|
|
610
|
+
optional string parentGroupJid = 35;
|
|
611
|
+
optional string trustBannerType = 37;
|
|
612
|
+
optional uint32 trustBannerAction = 38;
|
|
613
|
+
optional bool isSampled = 39;
|
|
614
|
+
repeated GroupMention groupMentions = 40;
|
|
615
|
+
optional UTMInfo utm = 41;
|
|
616
|
+
optional ForwardedNewsletterMessageInfo forwardedNewsletterMessageInfo = 43;
|
|
617
|
+
optional BusinessMessageForwardInfo businessMessageForwardInfo = 44;
|
|
618
|
+
optional string smbClientCampaignId = 45;
|
|
619
|
+
optional string smbServerCampaignId = 46;
|
|
620
|
+
optional DataSharingContext dataSharingContext = 47;
|
|
621
|
+
optional bool alwaysShowAdAttribution = 48;
|
|
622
|
+
optional FeatureEligibilities featureEligibilities = 49;
|
|
623
|
+
optional bool isTagAll = 50; // n4lyx: tag all support flag
|
|
624
|
+
optional MemberLabel memberLabel = 62;
|
|
625
|
+
optional bool isQuestion = 63;
|
|
626
|
+
|
|
627
|
+
message AdReplyInfo {
|
|
628
|
+
optional string advertiserName = 1;
|
|
629
|
+
optional MediaType mediaType = 2;
|
|
630
|
+
optional bytes jpegThumbnail = 16;
|
|
631
|
+
optional string caption = 17;
|
|
632
|
+
enum MediaType { NONE = 0; IMAGE = 1; VIDEO = 2; }
|
|
633
|
+
}
|
|
634
|
+
|
|
635
|
+
message BusinessMessageForwardInfo {
|
|
636
|
+
optional string businessOwnerJid = 1;
|
|
637
|
+
}
|
|
638
|
+
|
|
639
|
+
message DataSharingContext {
|
|
640
|
+
optional bool showMmDisclosure = 1;
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
message ExternalAdReplyInfo {
|
|
644
|
+
optional string title = 1;
|
|
645
|
+
optional string body = 2;
|
|
646
|
+
optional MediaType mediaType = 3;
|
|
647
|
+
optional string thumbnailUrl = 4;
|
|
648
|
+
optional string mediaUrl = 5;
|
|
649
|
+
optional bytes thumbnail = 6;
|
|
650
|
+
optional string sourceType = 7;
|
|
651
|
+
optional string sourceId = 8;
|
|
652
|
+
optional string sourceUrl = 9;
|
|
653
|
+
optional bool containsAutoReply = 10;
|
|
654
|
+
optional bool renderLargerThumbnail = 11;
|
|
655
|
+
optional bool showAdAttribution = 12;
|
|
656
|
+
optional string ctwaClid = 13;
|
|
657
|
+
optional string ref = 14;
|
|
658
|
+
optional bool clickToWhatsappCall = 15;
|
|
659
|
+
optional string sourceApp = 17;
|
|
660
|
+
optional AdType adType = 25;
|
|
661
|
+
|
|
662
|
+
enum AdType { CTWA = 0; CAWC = 1; }
|
|
663
|
+
enum MediaType { NONE = 0; IMAGE = 1; VIDEO = 2; }
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
message FeatureEligibilities {
|
|
667
|
+
optional bool cannotBeReactedTo = 1;
|
|
668
|
+
optional bool cannotBeRanked = 2;
|
|
669
|
+
optional bool canRequestFeedback = 3;
|
|
670
|
+
optional bool canBeReshared = 4;
|
|
671
|
+
}
|
|
672
|
+
|
|
673
|
+
message ForwardedNewsletterMessageInfo {
|
|
674
|
+
optional string newsletterJid = 1;
|
|
675
|
+
optional int32 serverMessageId = 2;
|
|
676
|
+
optional string newsletterName = 3;
|
|
677
|
+
optional ContentType contentType = 4;
|
|
678
|
+
optional string accessibilityText = 5;
|
|
679
|
+
enum ContentType { UPDATE = 1; UPDATE_CARD = 2; LINK_CARD = 3; }
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
message UTMInfo {
|
|
683
|
+
optional string utmSource = 1;
|
|
684
|
+
optional string utmCampaign = 2;
|
|
685
|
+
}
|
|
686
|
+
}
|
|
687
|
+
|
|
688
|
+
message Conversation {
|
|
689
|
+
optional string id = 1;
|
|
690
|
+
repeated HistorySyncMsg messages = 2;
|
|
691
|
+
optional string newJid = 3;
|
|
692
|
+
optional string oldJid = 4;
|
|
693
|
+
optional uint64 lastMsgTimestamp = 5;
|
|
694
|
+
optional uint32 unreadCount = 6;
|
|
695
|
+
optional bool readOnly = 7;
|
|
696
|
+
optional bool endOfHistoryTransfer = 8;
|
|
697
|
+
optional uint32 ephemeralExpiration = 9;
|
|
698
|
+
optional int64 ephemeralSettingTimestamp = 10;
|
|
699
|
+
optional EndOfHistoryTransferType endOfHistoryTransferType = 11;
|
|
700
|
+
optional uint64 conversationTimestamp = 12;
|
|
701
|
+
optional string name = 13;
|
|
702
|
+
optional string pHash = 14;
|
|
703
|
+
optional bool notSpam = 15;
|
|
704
|
+
optional bool archived = 16;
|
|
705
|
+
optional DisappearingMode disappearingMode = 17;
|
|
706
|
+
optional uint32 unreadMentionCount = 18;
|
|
707
|
+
optional bool markedAsUnread = 19;
|
|
708
|
+
repeated GroupParticipant participant = 20;
|
|
709
|
+
optional bytes tcToken = 21;
|
|
710
|
+
optional uint64 tcTokenTimestamp = 22;
|
|
711
|
+
optional bytes contactPrimaryIdentityKey = 23;
|
|
712
|
+
optional uint32 pinned = 24;
|
|
713
|
+
optional uint64 muteEndTime = 25;
|
|
714
|
+
optional WallpaperSettings wallpaper = 26;
|
|
715
|
+
optional MediaVisibility mediaVisibility = 27;
|
|
716
|
+
optional bool suspended = 29;
|
|
717
|
+
optional bool terminated = 30;
|
|
718
|
+
optional uint64 createdAt = 31;
|
|
719
|
+
optional string createdBy = 32;
|
|
720
|
+
optional string description = 33;
|
|
721
|
+
optional bool support = 34;
|
|
722
|
+
optional bool isParentGroup = 35;
|
|
723
|
+
optional string parentGroupId = 37;
|
|
724
|
+
optional bool isDefaultSubgroup = 36;
|
|
725
|
+
optional string displayName = 38;
|
|
726
|
+
optional string pnJid = 39;
|
|
727
|
+
optional bool shareOwnPn = 40;
|
|
728
|
+
optional string lidJid = 42;
|
|
729
|
+
optional string username = 43;
|
|
730
|
+
optional uint32 commentsCount = 45;
|
|
731
|
+
optional bool locked = 46;
|
|
732
|
+
optional PrivacySystemMessage systemMessageToInsert = 47;
|
|
733
|
+
optional bool capiCreatedGroup = 48;
|
|
734
|
+
optional string accountLid = 49;
|
|
735
|
+
|
|
736
|
+
enum EndOfHistoryTransferType {
|
|
737
|
+
COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY = 0;
|
|
738
|
+
COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY = 1;
|
|
739
|
+
COMPLETE_ON_DEMAND_SYNC_BUT_MORE_MSG_REMAIN_ON_PRIMARY = 2;
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
|
|
744
|
+
// ─── DEVICE ──────────────────────────────────────────────────
|
|
745
|
+
|
|
746
|
+
message DeviceCapabilities {
|
|
747
|
+
optional ChatLockSupportLevel chatLockSupportLevel = 1;
|
|
748
|
+
optional LIDMigration lidMigration = 2;
|
|
749
|
+
|
|
750
|
+
enum ChatLockSupportLevel { NONE = 0; MINIMAL = 1; FULL = 2; }
|
|
751
|
+
message LIDMigration { optional uint64 chatDbMigrationTimestamp = 1; }
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
message DeviceConsistencyCodeMessage {
|
|
755
|
+
optional uint32 generation = 1;
|
|
756
|
+
optional bytes signature = 2;
|
|
757
|
+
}
|
|
758
|
+
|
|
759
|
+
message DeviceListMetadata {
|
|
760
|
+
optional bytes senderKeyHash = 1;
|
|
761
|
+
optional uint64 senderTimestamp = 2;
|
|
762
|
+
repeated uint32 senderKeyIndexes = 3 [packed=true];
|
|
763
|
+
optional ADVEncryptionType senderAccountType = 4;
|
|
764
|
+
optional ADVEncryptionType receiverAccountType = 5;
|
|
765
|
+
optional bytes recipientKeyHash = 8;
|
|
766
|
+
optional uint64 recipientTimestamp = 9;
|
|
767
|
+
repeated uint32 recipientKeyIndexes = 10 [packed=true];
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
message DeviceProps {
|
|
771
|
+
optional string os = 1;
|
|
772
|
+
optional AppVersion version = 2;
|
|
773
|
+
optional PlatformType platformType = 3;
|
|
774
|
+
optional bool requireFullSync = 4;
|
|
775
|
+
optional HistorySyncConfig historySyncConfig = 5;
|
|
776
|
+
|
|
777
|
+
message AppVersion {
|
|
778
|
+
optional uint32 primary = 1;
|
|
779
|
+
optional uint32 secondary = 2;
|
|
780
|
+
optional uint32 tertiary = 3;
|
|
781
|
+
optional uint32 quaternary = 4;
|
|
782
|
+
optional uint32 quinary = 5;
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
message HistorySyncConfig {
|
|
786
|
+
optional uint32 fullSyncDaysLimit = 1;
|
|
787
|
+
optional uint32 fullSyncSizeMbLimit = 2;
|
|
788
|
+
optional uint32 storageQuotaMb = 3;
|
|
789
|
+
optional bool inlineInitialPayloadInE2EeMsg = 4;
|
|
790
|
+
optional uint32 recentSyncDaysLimit = 5;
|
|
791
|
+
optional bool supportCallLogHistory = 6;
|
|
792
|
+
optional bool supportBotUserAgentChatHistory = 7;
|
|
793
|
+
optional bool supportCagReactionsAndPolls = 8;
|
|
794
|
+
optional bool supportBizHostedMsg = 9;
|
|
795
|
+
optional bool supportHostedGroupMsg = 11;
|
|
796
|
+
optional bool supportFbidBotChatHistory = 12;
|
|
797
|
+
optional bool supportMessageAssociation = 14;
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
enum PlatformType {
|
|
801
|
+
UNKNOWN = 0;
|
|
802
|
+
CHROME = 1;
|
|
803
|
+
FIREFOX = 2;
|
|
804
|
+
IE = 3;
|
|
805
|
+
OPERA = 4;
|
|
806
|
+
SAFARI = 5;
|
|
807
|
+
EDGE = 6;
|
|
808
|
+
DESKTOP = 7;
|
|
809
|
+
IPAD = 8;
|
|
810
|
+
ANDROID_TABLET = 9;
|
|
811
|
+
OHANA = 10;
|
|
812
|
+
ALOHA = 11;
|
|
813
|
+
CATALINA = 12;
|
|
814
|
+
TCL_TV = 13;
|
|
815
|
+
IOS_PHONE = 14;
|
|
816
|
+
IOS_CATALYST = 15;
|
|
817
|
+
ANDROID_PHONE = 16;
|
|
818
|
+
ANDROID_AMBIGUOUS = 17;
|
|
819
|
+
WEAR_OS = 18;
|
|
820
|
+
AR_WRIST = 19;
|
|
821
|
+
AR_DEVICE = 20;
|
|
822
|
+
UWP = 21;
|
|
823
|
+
VR = 22;
|
|
824
|
+
CLOUD_API = 23;
|
|
825
|
+
SMARTGLASSES = 24;
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
|
|
829
|
+
message DisappearingMode {
|
|
830
|
+
optional Initiator initiator = 1;
|
|
831
|
+
optional Trigger trigger = 2;
|
|
832
|
+
optional string initiatorDeviceJid = 3;
|
|
833
|
+
optional bool initiatedByMe = 4;
|
|
834
|
+
|
|
835
|
+
enum Initiator {
|
|
836
|
+
CHANGED_IN_CHAT = 0;
|
|
837
|
+
INITIATED_BY_ME = 1;
|
|
838
|
+
INITIATED_BY_OTHER = 2;
|
|
839
|
+
BIZ_UPGRADE_FB_HOSTING = 3;
|
|
840
|
+
}
|
|
841
|
+
enum Trigger {
|
|
842
|
+
UNKNOWN = 0;
|
|
843
|
+
CHAT_SETTING = 1;
|
|
844
|
+
ACCOUNT_SETTING = 2;
|
|
845
|
+
BULK_CHANGE = 3;
|
|
846
|
+
BIZ_SUPPORTS_FB_HOSTING = 4;
|
|
847
|
+
UNKNOWN_GROUPS = 5;
|
|
848
|
+
}
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
// ─── EMBEDDED ────────────────────────────────────────────────
|
|
853
|
+
|
|
854
|
+
message EmbeddedContent {
|
|
855
|
+
oneof content {
|
|
856
|
+
EmbeddedMessage embeddedMessage = 1;
|
|
857
|
+
EmbeddedMusic embeddedMusic = 2;
|
|
858
|
+
}
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
message EmbeddedMessage {
|
|
862
|
+
optional string stanzaId = 1;
|
|
863
|
+
optional Message message = 2;
|
|
864
|
+
}
|
|
865
|
+
|
|
866
|
+
message EmbeddedMusic {
|
|
867
|
+
optional string musicContentMediaId = 1;
|
|
868
|
+
optional string songId = 2;
|
|
869
|
+
optional string author = 3;
|
|
870
|
+
optional string title = 4;
|
|
871
|
+
optional string artworkDirectPath = 5;
|
|
872
|
+
optional bytes artworkSha256 = 6;
|
|
873
|
+
optional bytes artworkEncSha256 = 7;
|
|
874
|
+
optional bytes artworkMediaKey = 11;
|
|
875
|
+
optional string artistAttribution = 8;
|
|
876
|
+
optional bool isExplicit = 10;
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
// ─── ENCRYPTION ──────────────────────────────────────────────
|
|
881
|
+
|
|
882
|
+
message EncryptedPairingRequest {
|
|
883
|
+
optional bytes encryptedPayload = 1;
|
|
884
|
+
optional bytes iv = 2;
|
|
885
|
+
}
|
|
886
|
+
|
|
887
|
+
message EphemeralSetting {
|
|
888
|
+
optional sfixed32 duration = 1;
|
|
889
|
+
optional sfixed64 timestamp = 2;
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
message ExternalBlobReference {
|
|
893
|
+
optional bytes mediaKey = 1;
|
|
894
|
+
optional string directPath = 2;
|
|
895
|
+
optional string handle = 3;
|
|
896
|
+
optional uint64 fileSizeBytes = 4;
|
|
897
|
+
optional bytes fileSha256 = 5;
|
|
898
|
+
optional bytes fileEncSha256 = 6;
|
|
899
|
+
}
|
|
900
|
+
|
|
901
|
+
message IdentityKeyPairStructure {
|
|
902
|
+
optional bytes publicKey = 1;
|
|
903
|
+
optional bytes privateKey = 2;
|
|
904
|
+
}
|
|
905
|
+
|
|
906
|
+
message KeyExchangeMessage {
|
|
907
|
+
optional uint32 id = 1;
|
|
908
|
+
optional bytes baseKey = 2;
|
|
909
|
+
optional bytes ratchetKey = 3;
|
|
910
|
+
optional bytes identityKey = 4;
|
|
911
|
+
optional bytes baseKeySignature = 5;
|
|
912
|
+
}
|
|
913
|
+
|
|
914
|
+
message KeyId {
|
|
915
|
+
optional bytes id = 1;
|
|
916
|
+
}
|
|
917
|
+
|
|
918
|
+
message PreKeyRecordStructure {
|
|
919
|
+
optional uint32 id = 1;
|
|
920
|
+
optional bytes publicKey = 2;
|
|
921
|
+
optional bytes privateKey = 3;
|
|
922
|
+
}
|
|
923
|
+
|
|
924
|
+
message PreKeySignalMessage {
|
|
925
|
+
optional uint32 registrationId = 5;
|
|
926
|
+
optional uint32 preKeyId = 1;
|
|
927
|
+
optional uint32 signedPreKeyId = 6;
|
|
928
|
+
optional bytes baseKey = 2;
|
|
929
|
+
optional bytes identityKey = 3;
|
|
930
|
+
optional bytes message = 4;
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
message SignalMessage {
|
|
934
|
+
optional bytes ratchetKey = 1;
|
|
935
|
+
optional uint32 counter = 2;
|
|
936
|
+
optional uint32 previousCounter = 3;
|
|
937
|
+
optional bytes ciphertext = 4;
|
|
938
|
+
}
|
|
939
|
+
|
|
940
|
+
message SignedPreKeyRecordStructure {
|
|
941
|
+
optional uint32 id = 1;
|
|
942
|
+
optional bytes publicKey = 2;
|
|
943
|
+
optional bytes privateKey = 3;
|
|
944
|
+
optional bytes signature = 4;
|
|
945
|
+
optional fixed64 timestamp = 5;
|
|
946
|
+
}
|
|
947
|
+
|
|
948
|
+
message SenderKeyDistributionMessage {
|
|
949
|
+
optional uint32 id = 1;
|
|
950
|
+
optional uint32 iteration = 2;
|
|
951
|
+
optional bytes chainKey = 3;
|
|
952
|
+
optional bytes signingKey = 4;
|
|
953
|
+
}
|
|
954
|
+
|
|
955
|
+
message SenderKeyMessage {
|
|
956
|
+
optional uint32 id = 1;
|
|
957
|
+
optional uint32 iteration = 2;
|
|
958
|
+
optional bytes ciphertext = 3;
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
message SenderKeyRecordStructure {
|
|
962
|
+
repeated SenderKeyStateStructure senderKeyStates = 1;
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
message SenderKeyStateStructure {
|
|
966
|
+
optional uint32 senderKeyId = 1;
|
|
967
|
+
optional SenderChainKey senderChainKey = 2;
|
|
968
|
+
optional SenderSigningKey senderSigningKey = 3;
|
|
969
|
+
repeated SenderMessageKey senderMessageKeys = 4;
|
|
970
|
+
|
|
971
|
+
message SenderChainKey { optional uint32 iteration = 1; optional bytes seed = 2; }
|
|
972
|
+
message SenderMessageKey { optional uint32 iteration = 1; optional bytes seed = 2; }
|
|
973
|
+
message SenderSigningKey { optional bytes public = 1; optional bytes private = 2; }
|
|
974
|
+
}
|
|
975
|
+
|
|
976
|
+
|
|
977
|
+
// ─── GLOBAL ──────────────────────────────────────────────────
|
|
978
|
+
|
|
979
|
+
message GlobalSettings {
|
|
980
|
+
optional WallpaperSettings lightThemeWallpaper = 1;
|
|
981
|
+
optional MediaVisibility mediaVisibility = 2;
|
|
982
|
+
optional WallpaperSettings darkThemeWallpaper = 3;
|
|
983
|
+
optional AutoDownloadSettings autoDownloadWiFi = 4;
|
|
984
|
+
optional AutoDownloadSettings autoDownloadCellular = 5;
|
|
985
|
+
optional AutoDownloadSettings autoDownloadRoaming = 6;
|
|
986
|
+
optional bool showIndividualNotificationsPreview = 7;
|
|
987
|
+
optional bool showGroupNotificationsPreview = 8;
|
|
988
|
+
optional int32 disappearingModeDuration = 9;
|
|
989
|
+
optional int64 disappearingModeTimestamp = 10;
|
|
990
|
+
optional AvatarUserSettings avatarUserSettings = 11;
|
|
991
|
+
optional int32 fontSize = 12;
|
|
992
|
+
optional bool securityNotifications = 13;
|
|
993
|
+
optional bool autoUnarchiveChats = 14;
|
|
994
|
+
optional int32 videoQualityMode = 15;
|
|
995
|
+
optional int32 photoQualityMode = 16;
|
|
996
|
+
optional NotificationSettings individualNotificationSettings = 17;
|
|
997
|
+
optional NotificationSettings groupNotificationSettings = 18;
|
|
998
|
+
optional ChatLockSettings chatLockSettings = 19;
|
|
999
|
+
optional int64 chatDbLidMigrationTimestamp = 20;
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
message GroupMention {
|
|
1003
|
+
optional string groupJid = 1;
|
|
1004
|
+
optional string groupSubject = 2;
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
message GroupParticipant {
|
|
1008
|
+
optional string userJid = 1;
|
|
1009
|
+
optional Rank rank = 2;
|
|
1010
|
+
enum Rank { REGULAR = 0; ADMIN = 1; SUPERADMIN = 2; }
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
message HandshakeMessage {
|
|
1014
|
+
optional ClientHello clientHello = 2;
|
|
1015
|
+
optional ServerHello serverHello = 3;
|
|
1016
|
+
optional ClientFinish clientFinish = 4;
|
|
1017
|
+
|
|
1018
|
+
message ClientFinish { optional bytes static = 1; optional bytes payload = 2; }
|
|
1019
|
+
message ClientHello { optional bytes ephemeral = 1; optional bytes static = 2; optional bytes payload = 3; }
|
|
1020
|
+
message ServerHello { optional bytes ephemeral = 1; optional bytes static = 2; optional bytes payload = 3; }
|
|
1021
|
+
}
|
|
1022
|
+
|
|
1023
|
+
|
|
1024
|
+
// ─── HISTORY ─────────────────────────────────────────────────
|
|
1025
|
+
|
|
1026
|
+
message HistorySync {
|
|
1027
|
+
optional HistorySyncType syncType = 1;
|
|
1028
|
+
repeated Conversation conversations = 2;
|
|
1029
|
+
repeated WebMessageInfo statusV3Messages = 3;
|
|
1030
|
+
optional uint32 chunkOrder = 5;
|
|
1031
|
+
optional uint32 progress = 6;
|
|
1032
|
+
repeated Pushname pushnames = 7;
|
|
1033
|
+
optional GlobalSettings globalSettings = 8;
|
|
1034
|
+
optional bytes threadIdUserSecret = 9;
|
|
1035
|
+
optional uint32 threadDsTimeframeOffset = 10;
|
|
1036
|
+
repeated StickerMetadata recentStickers = 11;
|
|
1037
|
+
repeated PastParticipants pastParticipants = 12;
|
|
1038
|
+
repeated CallLogRecord callLogRecords = 13;
|
|
1039
|
+
optional BotAIWaitListState aiWaitListState = 14;
|
|
1040
|
+
repeated PhoneNumberToLIDMapping phoneNumberToLidMappings = 15;
|
|
1041
|
+
optional string companionMetaNonce = 16;
|
|
1042
|
+
optional bytes shareableChatIdentifierEncryptionKey = 17;
|
|
1043
|
+
repeated Account accounts = 18;
|
|
1044
|
+
|
|
1045
|
+
enum BotAIWaitListState { IN_WAITLIST = 0; AI_AVAILABLE = 1; }
|
|
1046
|
+
enum HistorySyncType {
|
|
1047
|
+
INITIAL_BOOTSTRAP = 0;
|
|
1048
|
+
INITIAL_STATUS_V3 = 1;
|
|
1049
|
+
FULL = 2;
|
|
1050
|
+
RECENT = 3;
|
|
1051
|
+
PUSH_NAME = 4;
|
|
1052
|
+
NON_BLOCKING_DATA = 5;
|
|
1053
|
+
ON_DEMAND = 6;
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1057
|
+
message HistorySyncMsg {
|
|
1058
|
+
optional WebMessageInfo message = 1;
|
|
1059
|
+
optional uint64 msgOrderId = 2;
|
|
1060
|
+
}
|
|
1061
|
+
|
|
1062
|
+
|
|
1063
|
+
// ─── INTERACTIVE ─────────────────────────────────────────────
|
|
1064
|
+
|
|
1065
|
+
message HydratedTemplateButton {
|
|
1066
|
+
optional uint32 index = 4;
|
|
1067
|
+
oneof hydratedButton {
|
|
1068
|
+
HydratedQuickReplyButton quickReplyButton = 1;
|
|
1069
|
+
HydratedURLButton urlButton = 2;
|
|
1070
|
+
HydratedCallButton callButton = 3;
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
message HydratedCallButton { optional string displayText = 1; optional string phoneNumber = 2; }
|
|
1074
|
+
message HydratedQuickReplyButton { optional string displayText = 1; optional string id = 2; }
|
|
1075
|
+
message HydratedURLButton {
|
|
1076
|
+
optional string displayText = 1;
|
|
1077
|
+
optional string url = 2;
|
|
1078
|
+
optional string consentedUsersUrl = 3;
|
|
1079
|
+
optional WebviewPresentationType webviewPresentation = 4;
|
|
1080
|
+
enum WebviewPresentationType { FULL = 1; TALL = 2; COMPACT = 3; }
|
|
1081
|
+
}
|
|
1082
|
+
}
|
|
1083
|
+
|
|
1084
|
+
message InteractiveAnnotation {
|
|
1085
|
+
repeated Point polygonVertices = 1;
|
|
1086
|
+
optional bool shouldSkipConfirmation = 4;
|
|
1087
|
+
optional EmbeddedContent embeddedContent = 5;
|
|
1088
|
+
optional StatusLinkType statusLinkType = 8;
|
|
1089
|
+
oneof action {
|
|
1090
|
+
Location location = 2;
|
|
1091
|
+
ContextInfo.ForwardedNewsletterMessageInfo newsletter = 3;
|
|
1092
|
+
bool embeddedAction = 6;
|
|
1093
|
+
TapLinkAction tapAction = 7;
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
enum StatusLinkType {
|
|
1097
|
+
RASTERIZED_LINK_PREVIEW = 1;
|
|
1098
|
+
RASTERIZED_LINK_TRUNCATED = 2;
|
|
1099
|
+
RASTERIZED_LINK_FULL_URL = 3;
|
|
1100
|
+
}
|
|
1101
|
+
}
|
|
1102
|
+
|
|
1103
|
+
|
|
1104
|
+
// ─── KEEP / PIN ───────────────────────────────────────────────
|
|
1105
|
+
|
|
1106
|
+
message KeepInChat {
|
|
1107
|
+
optional KeepType keepType = 1;
|
|
1108
|
+
optional int64 serverTimestamp = 2;
|
|
1109
|
+
optional MessageKey key = 3;
|
|
1110
|
+
optional string deviceJid = 4;
|
|
1111
|
+
optional int64 clientTimestampMs = 5;
|
|
1112
|
+
optional int64 serverTimestampMs = 6;
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
message PinInChat {
|
|
1116
|
+
optional Type type = 1;
|
|
1117
|
+
optional MessageKey key = 2;
|
|
1118
|
+
optional int64 senderTimestampMs = 3;
|
|
1119
|
+
optional int64 serverTimestampMs = 4;
|
|
1120
|
+
optional MessageAddOnContextInfo messageAddOnContextInfo = 5;
|
|
1121
|
+
|
|
1122
|
+
enum Type { UNKNOWN_TYPE = 0; PIN_FOR_ALL = 1; UNPIN_FOR_ALL = 2; }
|
|
1123
|
+
}
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
// ─── LID ─────────────────────────────────────────────────────
|
|
1127
|
+
|
|
1128
|
+
message LIDMigrationMapping {
|
|
1129
|
+
optional uint64 pn = 1;
|
|
1130
|
+
optional uint64 assignedLid = 2;
|
|
1131
|
+
optional uint64 latestLid = 3;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
message LIDMigrationMappingSyncMessage {
|
|
1135
|
+
optional bytes encodedMappingPayload = 1;
|
|
1136
|
+
}
|
|
1137
|
+
|
|
1138
|
+
message LIDMigrationMappingSyncPayload {
|
|
1139
|
+
repeated LIDMigrationMapping pnToLidMappings = 1;
|
|
1140
|
+
optional uint64 chatDbMigrationTimestamp = 2;
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
message LimitSharing {
|
|
1144
|
+
optional bool sharingLimited = 1;
|
|
1145
|
+
optional TriggerType trigger = 2;
|
|
1146
|
+
optional int64 limitSharingSettingTimestamp = 3;
|
|
1147
|
+
optional bool initiatedByMe = 4;
|
|
1148
|
+
|
|
1149
|
+
enum TriggerType {
|
|
1150
|
+
UNKNOWN = 0;
|
|
1151
|
+
CHAT_SETTING = 1;
|
|
1152
|
+
BIZ_SUPPORTS_FB_HOSTING = 2;
|
|
1153
|
+
UNKNOWN_GROUP = 3;
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
|
|
1157
|
+
message Location {
|
|
1158
|
+
optional double degreesLatitude = 1;
|
|
1159
|
+
optional double degreesLongitude = 2;
|
|
1160
|
+
optional string name = 3;
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
|
|
1164
|
+
// ─── MEDIA ───────────────────────────────────────────────────
|
|
1165
|
+
|
|
1166
|
+
message MediaData {
|
|
1167
|
+
optional string localPath = 1;
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
message MediaNotifyMessage {
|
|
1171
|
+
optional string expressPathUrl = 1;
|
|
1172
|
+
optional bytes fileEncSha256 = 2;
|
|
1173
|
+
optional uint64 fileLength = 3;
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
message MediaRetryNotification {
|
|
1177
|
+
optional string stanzaId = 1;
|
|
1178
|
+
optional string directPath = 2;
|
|
1179
|
+
optional ResultType result = 3;
|
|
1180
|
+
optional bytes messageSecret = 4;
|
|
1181
|
+
|
|
1182
|
+
enum ResultType { GENERAL_ERROR = 0; SUCCESS = 1; NOT_FOUND = 2; DECRYPTION_ERROR = 3; }
|
|
1183
|
+
}
|
|
1184
|
+
|
|
1185
|
+
message MemberLabel {
|
|
1186
|
+
optional string label = 1;
|
|
1187
|
+
optional int64 labelTimestamp = 2;
|
|
1188
|
+
}
|
|
1189
|
+
|
|
1190
|
+
|
|
1191
|
+
// ─── MESSAGE ─────────────────────────────────────────────────
|
|
1192
|
+
|
|
1193
|
+
message Message {
|
|
1194
|
+
optional string conversation = 1;
|
|
1195
|
+
optional SenderKeyDistributionMessage senderKeyDistributionMessage = 2;
|
|
1196
|
+
optional ImageMessage imageMessage = 3;
|
|
1197
|
+
optional ContactMessage contactMessage = 4;
|
|
1198
|
+
optional LocationMessage locationMessage = 5;
|
|
1199
|
+
optional ExtendedTextMessage extendedTextMessage = 6;
|
|
1200
|
+
optional DocumentMessage documentMessage = 7;
|
|
1201
|
+
optional AudioMessage audioMessage = 8;
|
|
1202
|
+
optional VideoMessage videoMessage = 9;
|
|
1203
|
+
optional Call call = 10;
|
|
1204
|
+
optional Chat chat = 11;
|
|
1205
|
+
optional ProtocolMessage protocolMessage = 12;
|
|
1206
|
+
optional ContactsArrayMessage contactsArrayMessage = 13;
|
|
1207
|
+
optional HighlyStructuredMessage highlyStructuredMessage = 14;
|
|
1208
|
+
optional SenderKeyDistributionMessage fastRatchetKeySenderKeyDistributionMessage = 15;
|
|
1209
|
+
optional SendPaymentMessage sendPaymentMessage = 16;
|
|
1210
|
+
optional LiveLocationMessage liveLocationMessage = 18;
|
|
1211
|
+
optional RequestPaymentMessage requestPaymentMessage = 22;
|
|
1212
|
+
optional DeclinePaymentRequestMessage declinePaymentRequestMessage = 23;
|
|
1213
|
+
optional CancelPaymentRequestMessage cancelPaymentRequestMessage = 24;
|
|
1214
|
+
optional TemplateMessage templateMessage = 25;
|
|
1215
|
+
optional StickerMessage stickerMessage = 26;
|
|
1216
|
+
optional GroupInviteMessage groupInviteMessage = 28;
|
|
1217
|
+
optional TemplateButtonReplyMessage templateButtonReplyMessage = 29;
|
|
1218
|
+
optional ProductMessage productMessage = 30;
|
|
1219
|
+
optional DeviceSentMessage deviceSentMessage = 31;
|
|
1220
|
+
optional MessageContextInfo messageContextInfo = 35;
|
|
1221
|
+
optional ListMessage listMessage = 36;
|
|
1222
|
+
optional FutureProofMessage viewOnceMessage = 37;
|
|
1223
|
+
optional OrderMessage orderMessage = 38;
|
|
1224
|
+
optional ListResponseMessage listResponseMessage = 39;
|
|
1225
|
+
optional FutureProofMessage ephemeralMessage = 40;
|
|
1226
|
+
optional ButtonsMessage buttonsMessage = 42;
|
|
1227
|
+
optional ButtonsResponseMessage buttonsResponseMessage = 43;
|
|
1228
|
+
optional PaymentInviteMessage paymentInviteMessage = 44;
|
|
1229
|
+
optional InteractiveMessage interactiveMessage = 45;
|
|
1230
|
+
optional ReactionMessage reactionMessage = 46;
|
|
1231
|
+
optional StickerSyncRMRMessage stickerSyncRmrMessage = 47;
|
|
1232
|
+
optional InteractiveResponseMessage interactiveResponseMessage = 48;
|
|
1233
|
+
optional PollCreationMessage pollCreationMessage = 49;
|
|
1234
|
+
optional PollUpdateMessage pollUpdateMessage = 50;
|
|
1235
|
+
optional KeepInChatMessage keepInChatMessage = 51;
|
|
1236
|
+
optional FutureProofMessage documentWithCaptionMessage = 53;
|
|
1237
|
+
optional RequestPhoneNumberMessage requestPhoneNumberMessage = 54;
|
|
1238
|
+
optional FutureProofMessage viewOnceMessageV2 = 55;
|
|
1239
|
+
optional EncReactionMessage encReactionMessage = 56;
|
|
1240
|
+
optional FutureProofMessage editedMessage = 58;
|
|
1241
|
+
optional FutureProofMessage viewOnceMessageV2Extension = 59;
|
|
1242
|
+
optional PollCreationMessage pollCreationMessageV2 = 60;
|
|
1243
|
+
optional ScheduledCallCreationMessage scheduledCallCreationMessage = 61;
|
|
1244
|
+
optional FutureProofMessage groupMentionedMessage = 62;
|
|
1245
|
+
optional PinInChatMessage pinInChatMessage = 63;
|
|
1246
|
+
optional PollCreationMessage pollCreationMessageV3 = 64;
|
|
1247
|
+
optional ScheduledCallEditMessage scheduledCallEditMessage = 65;
|
|
1248
|
+
optional VideoMessage ptvMessage = 66;
|
|
1249
|
+
optional FutureProofMessage botInvokeMessage = 67;
|
|
1250
|
+
optional CallLogMessage callLogMesssage = 69;
|
|
1251
|
+
optional MessageHistoryBundle messageHistoryBundle = 70;
|
|
1252
|
+
optional EncCommentMessage encCommentMessage = 71;
|
|
1253
|
+
optional BCallMessage bcallMessage = 72;
|
|
1254
|
+
optional FutureProofMessage lottieStickerMessage = 74;
|
|
1255
|
+
optional EventMessage eventMessage = 75;
|
|
1256
|
+
optional EncEventResponseMessage encEventResponseMessage = 76;
|
|
1257
|
+
optional CommentMessage commentMessage = 77;
|
|
1258
|
+
optional NewsletterAdminInviteMessage newsletterAdminInviteMessage = 78;
|
|
1259
|
+
optional PlaceholderMessage placeholderMessage = 80;
|
|
1260
|
+
optional AlbumMessage albumMessage = 83;
|
|
1261
|
+
optional FutureProofMessage eventCoverImage = 85;
|
|
1262
|
+
optional StickerPackMessage stickerPackMessage = 86;
|
|
1263
|
+
optional FutureProofMessage statusMentionMessage = 87;
|
|
1264
|
+
optional PollResultSnapshotMessage pollResultSnapshotMessage = 88;
|
|
1265
|
+
optional FutureProofMessage associatedChildMessage = 91;
|
|
1266
|
+
optional FutureProofMessage groupStatusMentionMessage = 92;
|
|
1267
|
+
optional FutureProofMessage pollCreationMessageV4 = 93;
|
|
1268
|
+
optional FutureProofMessage statusAddYours = 95;
|
|
1269
|
+
optional FutureProofMessage groupStatusMessage = 96;
|
|
1270
|
+
optional AIRichResponseMessage richResponseMessage = 97;
|
|
1271
|
+
optional StatusNotificationMessage statusNotificationMessage = 98;
|
|
1272
|
+
optional FutureProofMessage limitSharingMessage = 99;
|
|
1273
|
+
optional FutureProofMessage questionMessage = 101;
|
|
1274
|
+
optional MessageHistoryNotice messageHistoryNotice = 102;
|
|
1275
|
+
optional FutureProofMessage groupStatusMessageV2 = 103;
|
|
1276
|
+
optional FutureProofMessage botForwardedMessage = 104;
|
|
1277
|
+
|
|
1278
|
+
// ── n4lyx additions ──────────────────────────────────────
|
|
1279
|
+
// field 200+ reserved for n4lyx custom extensions
|
|
1280
|
+
optional TagAllMessage tagAllMessage = 200;
|
|
1281
|
+
optional GroupStatusV2Message groupStatusV2Message = 201;
|
|
1282
|
+
optional N4lyxMeta n4lyxMeta = 202;
|
|
1283
|
+
// ─────────────────────────────────────────────────────────
|
|
1284
|
+
|
|
1285
|
+
message AlbumMessage {
|
|
1286
|
+
optional uint32 expectedImageCount = 2;
|
|
1287
|
+
optional uint32 expectedVideoCount = 3;
|
|
1288
|
+
optional ContextInfo contextInfo = 17;
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1291
|
+
message AppStateFatalExceptionNotification {
|
|
1292
|
+
repeated string collectionNames = 1;
|
|
1293
|
+
optional int64 timestamp = 2;
|
|
1294
|
+
}
|
|
1295
|
+
|
|
1296
|
+
message AppStateSyncKey {
|
|
1297
|
+
optional AppStateSyncKeyId keyId = 1;
|
|
1298
|
+
optional AppStateSyncKeyData keyData = 2;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
message AppStateSyncKeyData {
|
|
1302
|
+
optional bytes keyData = 1;
|
|
1303
|
+
optional AppStateSyncKeyFingerprint fingerprint = 2;
|
|
1304
|
+
optional int64 timestamp = 3;
|
|
1305
|
+
}
|
|
1306
|
+
|
|
1307
|
+
message AppStateSyncKeyFingerprint {
|
|
1308
|
+
optional uint32 rawId = 1;
|
|
1309
|
+
optional uint32 currentIndex = 2;
|
|
1310
|
+
repeated uint32 deviceIndexes = 3 [packed=true];
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
message AppStateSyncKeyId { optional bytes keyId = 1; }
|
|
1314
|
+
message AppStateSyncKeyRequest { repeated AppStateSyncKeyId keyIds = 1; }
|
|
1315
|
+
message AppStateSyncKeyShare { repeated AppStateSyncKey keys = 1; }
|
|
1316
|
+
|
|
1317
|
+
message AudioMessage {
|
|
1318
|
+
optional string url = 1;
|
|
1319
|
+
optional string mimetype = 2;
|
|
1320
|
+
optional bytes fileSha256 = 3;
|
|
1321
|
+
optional uint64 fileLength = 4;
|
|
1322
|
+
optional uint32 seconds = 5;
|
|
1323
|
+
optional bool ptt = 6;
|
|
1324
|
+
optional bytes mediaKey = 7;
|
|
1325
|
+
optional bytes fileEncSha256 = 8;
|
|
1326
|
+
optional string directPath = 9;
|
|
1327
|
+
optional int64 mediaKeyTimestamp = 10;
|
|
1328
|
+
optional ContextInfo contextInfo = 17;
|
|
1329
|
+
optional bytes streamingSidecar = 18;
|
|
1330
|
+
optional bytes waveform = 19;
|
|
1331
|
+
optional fixed32 backgroundArgb = 20;
|
|
1332
|
+
optional bool viewOnce = 21;
|
|
1333
|
+
optional string accessibilityLabel = 22;
|
|
1334
|
+
}
|
|
1335
|
+
|
|
1336
|
+
message BCallMessage {
|
|
1337
|
+
optional string sessionId = 1;
|
|
1338
|
+
optional MediaType mediaType = 2;
|
|
1339
|
+
optional bytes masterKey = 3;
|
|
1340
|
+
optional string caption = 4;
|
|
1341
|
+
enum MediaType { UNKNOWN = 0; AUDIO = 1; VIDEO = 2; }
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1344
|
+
message BotFeedbackMessage {
|
|
1345
|
+
optional MessageKey messageKey = 1;
|
|
1346
|
+
optional BotFeedbackKind kind = 2;
|
|
1347
|
+
optional string text = 3;
|
|
1348
|
+
optional uint64 kindNegative = 4;
|
|
1349
|
+
optional uint64 kindPositive = 5;
|
|
1350
|
+
optional ReportKind kindReport = 6;
|
|
1351
|
+
|
|
1352
|
+
enum BotFeedbackKind {
|
|
1353
|
+
BOT_FEEDBACK_POSITIVE = 0;
|
|
1354
|
+
BOT_FEEDBACK_NEGATIVE_GENERIC = 1;
|
|
1355
|
+
BOT_FEEDBACK_NEGATIVE_HELPFUL = 2;
|
|
1356
|
+
BOT_FEEDBACK_NEGATIVE_INTERESTING = 3;
|
|
1357
|
+
BOT_FEEDBACK_NEGATIVE_ACCURATE = 4;
|
|
1358
|
+
BOT_FEEDBACK_NEGATIVE_SAFE = 5;
|
|
1359
|
+
BOT_FEEDBACK_NEGATIVE_OTHER = 6;
|
|
1360
|
+
BOT_FEEDBACK_NEGATIVE_REFUSED = 7;
|
|
1361
|
+
BOT_FEEDBACK_NEGATIVE = 14;
|
|
1362
|
+
}
|
|
1363
|
+
enum ReportKind { NONE = 0; GENERIC = 1; }
|
|
1364
|
+
}
|
|
1365
|
+
|
|
1366
|
+
message ButtonsMessage {
|
|
1367
|
+
optional string contentText = 6;
|
|
1368
|
+
optional string footerText = 7;
|
|
1369
|
+
optional ContextInfo contextInfo = 8;
|
|
1370
|
+
repeated Button buttons = 9;
|
|
1371
|
+
optional HeaderType headerType = 10;
|
|
1372
|
+
oneof header {
|
|
1373
|
+
string text = 1;
|
|
1374
|
+
DocumentMessage documentMessage = 2;
|
|
1375
|
+
ImageMessage imageMessage = 3;
|
|
1376
|
+
VideoMessage videoMessage = 4;
|
|
1377
|
+
LocationMessage locationMessage = 5;
|
|
1378
|
+
}
|
|
1379
|
+
|
|
1380
|
+
message Button {
|
|
1381
|
+
optional string buttonId = 1;
|
|
1382
|
+
optional ButtonText buttonText = 2;
|
|
1383
|
+
optional Type type = 3;
|
|
1384
|
+
optional NativeFlowInfo nativeFlowInfo = 4;
|
|
1385
|
+
|
|
1386
|
+
message ButtonText { optional string displayText = 1; }
|
|
1387
|
+
message NativeFlowInfo { optional string name = 1; optional string paramsJson = 2; }
|
|
1388
|
+
enum Type { UNKNOWN = 0; RESPONSE = 1; NATIVE_FLOW = 2; }
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
enum HeaderType { UNKNOWN = 0; EMPTY = 1; TEXT = 2; DOCUMENT = 3; IMAGE = 4; VIDEO = 5; LOCATION = 6; }
|
|
1392
|
+
}
|
|
1393
|
+
|
|
1394
|
+
message ButtonsResponseMessage {
|
|
1395
|
+
optional string selectedButtonId = 1;
|
|
1396
|
+
optional ContextInfo contextInfo = 3;
|
|
1397
|
+
optional Type type = 4;
|
|
1398
|
+
oneof response { string selectedDisplayText = 2; }
|
|
1399
|
+
enum Type { UNKNOWN = 0; DISPLAY_TEXT = 1; }
|
|
1400
|
+
}
|
|
1401
|
+
|
|
1402
|
+
message Call {
|
|
1403
|
+
optional bytes callKey = 1;
|
|
1404
|
+
optional string conversionSource = 2;
|
|
1405
|
+
optional bytes conversionData = 3;
|
|
1406
|
+
optional uint32 conversionDelaySeconds = 4;
|
|
1407
|
+
optional ContextInfo contextInfo = 7;
|
|
1408
|
+
}
|
|
1409
|
+
|
|
1410
|
+
message CallLogMessage {
|
|
1411
|
+
optional bool isVideo = 1;
|
|
1412
|
+
optional CallOutcome callOutcome = 2;
|
|
1413
|
+
optional int64 durationSecs = 3;
|
|
1414
|
+
optional CallType callType = 4;
|
|
1415
|
+
repeated CallParticipant participants = 5;
|
|
1416
|
+
|
|
1417
|
+
enum CallOutcome {
|
|
1418
|
+
CONNECTED = 0;
|
|
1419
|
+
MISSED = 1;
|
|
1420
|
+
FAILED = 2;
|
|
1421
|
+
REJECTED = 3;
|
|
1422
|
+
ACCEPTED_ELSEWHERE = 4;
|
|
1423
|
+
ONGOING = 5;
|
|
1424
|
+
SILENCED_BY_DND = 6;
|
|
1425
|
+
SILENCED_UNKNOWN_CALLER = 7;
|
|
1426
|
+
}
|
|
1427
|
+
message CallParticipant {
|
|
1428
|
+
optional string jid = 1;
|
|
1429
|
+
optional CallOutcome callOutcome = 2;
|
|
1430
|
+
}
|
|
1431
|
+
enum CallType { REGULAR = 0; SCHEDULED_CALL = 1; VOICE_CHAT = 2; }
|
|
1432
|
+
}
|
|
1433
|
+
|
|
1434
|
+
message CancelPaymentRequestMessage { optional MessageKey key = 1; }
|
|
1435
|
+
|
|
1436
|
+
message Chat {
|
|
1437
|
+
optional string displayName = 1;
|
|
1438
|
+
optional string id = 2;
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1441
|
+
message CommentMessage {
|
|
1442
|
+
optional Message message = 1;
|
|
1443
|
+
optional MessageKey targetMessageKey = 2;
|
|
1444
|
+
}
|
|
1445
|
+
|
|
1446
|
+
message ContactMessage {
|
|
1447
|
+
optional string displayName = 1;
|
|
1448
|
+
optional string vcard = 16;
|
|
1449
|
+
optional ContextInfo contextInfo = 17;
|
|
1450
|
+
}
|
|
1451
|
+
|
|
1452
|
+
message ContactsArrayMessage {
|
|
1453
|
+
optional string displayName = 1;
|
|
1454
|
+
repeated ContactMessage contacts = 2;
|
|
1455
|
+
optional ContextInfo contextInfo = 17;
|
|
1456
|
+
}
|
|
1457
|
+
|
|
1458
|
+
message DeclinePaymentRequestMessage { optional MessageKey key = 1; }
|
|
1459
|
+
|
|
1460
|
+
message DeviceSentMessage {
|
|
1461
|
+
optional string destinationJid = 1;
|
|
1462
|
+
optional Message message = 2;
|
|
1463
|
+
optional string phash = 3;
|
|
1464
|
+
}
|
|
1465
|
+
|
|
1466
|
+
message DocumentMessage {
|
|
1467
|
+
optional string url = 1;
|
|
1468
|
+
optional string mimetype = 2;
|
|
1469
|
+
optional string title = 3;
|
|
1470
|
+
optional bytes fileSha256 = 4;
|
|
1471
|
+
optional uint64 fileLength = 5;
|
|
1472
|
+
optional uint32 pageCount = 6;
|
|
1473
|
+
optional bytes mediaKey = 7;
|
|
1474
|
+
optional string fileName = 8;
|
|
1475
|
+
optional bytes fileEncSha256 = 9;
|
|
1476
|
+
optional string directPath = 10;
|
|
1477
|
+
optional int64 mediaKeyTimestamp = 11;
|
|
1478
|
+
optional bool contactVcard = 12;
|
|
1479
|
+
optional bytes jpegThumbnail = 16;
|
|
1480
|
+
optional ContextInfo contextInfo = 17;
|
|
1481
|
+
optional uint32 thumbnailHeight = 18;
|
|
1482
|
+
optional uint32 thumbnailWidth = 19;
|
|
1483
|
+
optional string caption = 20;
|
|
1484
|
+
optional string accessibilityLabel = 21;
|
|
1485
|
+
}
|
|
1486
|
+
|
|
1487
|
+
message EncCommentMessage {
|
|
1488
|
+
optional MessageKey targetMessageKey = 1;
|
|
1489
|
+
optional bytes encPayload = 2;
|
|
1490
|
+
optional bytes encIv = 3;
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1493
|
+
message EncEventResponseMessage {
|
|
1494
|
+
optional MessageKey eventCreationMessageKey = 1;
|
|
1495
|
+
optional bytes encPayload = 2;
|
|
1496
|
+
optional bytes encIv = 3;
|
|
1497
|
+
}
|
|
1498
|
+
|
|
1499
|
+
message EncReactionMessage {
|
|
1500
|
+
optional MessageKey targetMessageKey = 1;
|
|
1501
|
+
optional bytes encPayload = 2;
|
|
1502
|
+
optional bytes encIv = 3;
|
|
1503
|
+
}
|
|
1504
|
+
|
|
1505
|
+
message EventMessage {
|
|
1506
|
+
optional ContextInfo contextInfo = 1;
|
|
1507
|
+
optional bool isCanceled = 2;
|
|
1508
|
+
optional string name = 3;
|
|
1509
|
+
optional string description = 4;
|
|
1510
|
+
optional LocationMessage location = 5;
|
|
1511
|
+
optional string joinLink = 6;
|
|
1512
|
+
optional int64 startTime = 7;
|
|
1513
|
+
optional int64 endTime = 8;
|
|
1514
|
+
optional bool extraGuestsAllowed = 9;
|
|
1515
|
+
optional bool isScheduleCall = 10;
|
|
1516
|
+
}
|
|
1517
|
+
|
|
1518
|
+
message EventResponseMessage {
|
|
1519
|
+
optional EventResponseType response = 1;
|
|
1520
|
+
optional int64 timestampMs = 2;
|
|
1521
|
+
optional int32 extraGuestCount = 3;
|
|
1522
|
+
enum EventResponseType { UNKNOWN = 0; GOING = 1; NOT_GOING = 2; MAYBE = 3; }
|
|
1523
|
+
}
|
|
1524
|
+
|
|
1525
|
+
message ExtendedTextMessage {
|
|
1526
|
+
optional string text = 1;
|
|
1527
|
+
optional string matchedText = 2;
|
|
1528
|
+
optional string description = 5;
|
|
1529
|
+
optional string title = 6;
|
|
1530
|
+
optional fixed32 textArgb = 7;
|
|
1531
|
+
optional fixed32 backgroundArgb = 8;
|
|
1532
|
+
optional FontType font = 9;
|
|
1533
|
+
optional PreviewType previewType = 10;
|
|
1534
|
+
optional bytes jpegThumbnail = 16;
|
|
1535
|
+
optional ContextInfo contextInfo = 17;
|
|
1536
|
+
optional bool doNotPlayInline = 18;
|
|
1537
|
+
optional bytes mediaKey = 22;
|
|
1538
|
+
optional int64 mediaKeyTimestamp = 23;
|
|
1539
|
+
optional uint32 thumbnailHeight = 24;
|
|
1540
|
+
optional uint32 thumbnailWidth = 25;
|
|
1541
|
+
optional InviteLinkGroupType inviteLinkGroupType = 26;
|
|
1542
|
+
optional bool viewOnce = 30;
|
|
1543
|
+
|
|
1544
|
+
enum FontType {
|
|
1545
|
+
SYSTEM = 0;
|
|
1546
|
+
SYSTEM_TEXT = 1;
|
|
1547
|
+
FB_SCRIPT = 2;
|
|
1548
|
+
SYSTEM_BOLD = 6;
|
|
1549
|
+
MORNINGBREEZE_REGULAR = 7;
|
|
1550
|
+
CALISTOGA_REGULAR = 8;
|
|
1551
|
+
EXO2_EXTRABOLD = 9;
|
|
1552
|
+
COURIERPRIME_BOLD = 10;
|
|
1553
|
+
}
|
|
1554
|
+
enum InviteLinkGroupType { DEFAULT = 0; PARENT = 1; SUB = 2; DEFAULT_SUB = 3; }
|
|
1555
|
+
enum PreviewType { NONE = 0; VIDEO = 1; PLACEHOLDER = 4; IMAGE = 5; PAYMENT_LINKS = 6; PROFILE = 7; }
|
|
1556
|
+
}
|
|
1557
|
+
|
|
1558
|
+
message FutureProofMessage { optional Message message = 1; }
|
|
1559
|
+
|
|
1560
|
+
message GroupInviteMessage {
|
|
1561
|
+
optional string groupJid = 1;
|
|
1562
|
+
optional string inviteCode = 2;
|
|
1563
|
+
optional int64 inviteExpiration = 3;
|
|
1564
|
+
optional string groupName = 4;
|
|
1565
|
+
optional bytes jpegThumbnail = 5;
|
|
1566
|
+
optional string caption = 6;
|
|
1567
|
+
optional ContextInfo contextInfo = 7;
|
|
1568
|
+
optional GroupType groupType = 8;
|
|
1569
|
+
enum GroupType { DEFAULT = 0; PARENT = 1; }
|
|
1570
|
+
}
|
|
1571
|
+
|
|
1572
|
+
message HighlyStructuredMessage {
|
|
1573
|
+
optional string namespace = 1;
|
|
1574
|
+
optional string elementName = 2;
|
|
1575
|
+
repeated string params = 3;
|
|
1576
|
+
optional string fallbackLg = 4;
|
|
1577
|
+
optional string fallbackLc = 5;
|
|
1578
|
+
repeated HSMLocalizableParameter localizableParams = 6;
|
|
1579
|
+
optional string deterministicLg = 7;
|
|
1580
|
+
optional string deterministicLc = 8;
|
|
1581
|
+
optional TemplateMessage hydratedHsm = 9;
|
|
1582
|
+
|
|
1583
|
+
message HSMLocalizableParameter {
|
|
1584
|
+
optional string default = 1;
|
|
1585
|
+
oneof paramOneof {
|
|
1586
|
+
HSMCurrency currency = 2;
|
|
1587
|
+
HSMDateTime dateTime = 3;
|
|
1588
|
+
}
|
|
1589
|
+
message HSMCurrency { optional string currencyCode = 1; optional int64 amount1000 = 2; }
|
|
1590
|
+
message HSMDateTime {
|
|
1591
|
+
oneof datetimeOneof {
|
|
1592
|
+
HSMDateTimeComponent component = 1;
|
|
1593
|
+
HSMDateTimeUnixEpoch unixEpoch = 2;
|
|
1594
|
+
}
|
|
1595
|
+
message HSMDateTimeComponent {
|
|
1596
|
+
optional DayOfWeekType dayOfWeek = 1;
|
|
1597
|
+
optional uint32 year = 2;
|
|
1598
|
+
optional uint32 month = 3;
|
|
1599
|
+
optional uint32 dayOfMonth = 4;
|
|
1600
|
+
optional uint32 hour = 5;
|
|
1601
|
+
optional uint32 minute = 6;
|
|
1602
|
+
optional CalendarType calendar = 7;
|
|
1603
|
+
enum CalendarType { GREGORIAN = 1; SOLAR_HIJRI = 2; }
|
|
1604
|
+
enum DayOfWeekType { MONDAY = 1; TUESDAY = 2; WEDNESDAY = 3; THURSDAY = 4; FRIDAY = 5; SATURDAY = 6; SUNDAY = 7; }
|
|
1605
|
+
}
|
|
1606
|
+
message HSMDateTimeUnixEpoch { optional int64 timestamp = 1; }
|
|
1607
|
+
}
|
|
1608
|
+
}
|
|
1609
|
+
}
|
|
1610
|
+
|
|
1611
|
+
message HistorySyncNotification {
|
|
1612
|
+
optional bytes fileSha256 = 1;
|
|
1613
|
+
optional uint64 fileLength = 2;
|
|
1614
|
+
optional bytes mediaKey = 3;
|
|
1615
|
+
optional bytes fileEncSha256 = 4;
|
|
1616
|
+
optional string directPath = 5;
|
|
1617
|
+
optional HistorySyncType syncType = 6;
|
|
1618
|
+
optional uint32 chunkOrder = 7;
|
|
1619
|
+
optional string originalMessageId = 8;
|
|
1620
|
+
optional uint32 progress = 9;
|
|
1621
|
+
optional int64 oldestMsgInChunkTimestampSec = 10;
|
|
1622
|
+
optional bytes initialHistBootstrapInlinePayload = 11;
|
|
1623
|
+
optional string peerDataRequestSessionId = 12;
|
|
1624
|
+
optional string encHandle = 14;
|
|
1625
|
+
|
|
1626
|
+
enum HistorySyncType {
|
|
1627
|
+
INITIAL_BOOTSTRAP = 0; INITIAL_STATUS_V3 = 1; FULL = 2;
|
|
1628
|
+
RECENT = 3; PUSH_NAME = 4; NON_BLOCKING_DATA = 5; ON_DEMAND = 6; NO_HISTORY = 7;
|
|
1629
|
+
}
|
|
1630
|
+
}
|
|
1631
|
+
|
|
1632
|
+
message ImageMessage {
|
|
1633
|
+
optional string url = 1;
|
|
1634
|
+
optional string mimetype = 2;
|
|
1635
|
+
optional string caption = 3;
|
|
1636
|
+
optional bytes fileSha256 = 4;
|
|
1637
|
+
optional uint64 fileLength = 5;
|
|
1638
|
+
optional uint32 height = 6;
|
|
1639
|
+
optional uint32 width = 7;
|
|
1640
|
+
optional bytes mediaKey = 8;
|
|
1641
|
+
optional bytes fileEncSha256 = 9;
|
|
1642
|
+
repeated InteractiveAnnotation interactiveAnnotations = 10;
|
|
1643
|
+
optional string directPath = 11;
|
|
1644
|
+
optional int64 mediaKeyTimestamp = 12;
|
|
1645
|
+
optional bytes jpegThumbnail = 16;
|
|
1646
|
+
optional ContextInfo contextInfo = 17;
|
|
1647
|
+
optional bool viewOnce = 25;
|
|
1648
|
+
optional string accessibilityLabel = 32;
|
|
1649
|
+
enum ImageSourceType { USER_IMAGE = 0; AI_GENERATED = 1; AI_MODIFIED = 2; RASTERIZED_TEXT_STATUS = 3; }
|
|
1650
|
+
}
|
|
1651
|
+
|
|
1652
|
+
message InteractiveMessage {
|
|
1653
|
+
optional Header header = 1;
|
|
1654
|
+
optional Body body = 2;
|
|
1655
|
+
optional Footer footer = 3;
|
|
1656
|
+
optional ContextInfo contextInfo = 15;
|
|
1657
|
+
oneof interactiveMessage {
|
|
1658
|
+
ShopMessage shopStorefrontMessage = 4;
|
|
1659
|
+
CollectionMessage collectionMessage = 5;
|
|
1660
|
+
NativeFlowMessage nativeFlowMessage = 6;
|
|
1661
|
+
CarouselMessage carouselMessage = 7;
|
|
1662
|
+
}
|
|
1663
|
+
|
|
1664
|
+
message Body { optional string text = 1; }
|
|
1665
|
+
message CarouselMessage { repeated InteractiveMessage cards = 1; optional int32 messageVersion = 2; }
|
|
1666
|
+
message CollectionMessage { optional string bizJid = 1; optional string id = 2; optional int32 messageVersion = 3; }
|
|
1667
|
+
message Footer { optional string text = 1; }
|
|
1668
|
+
message Header {
|
|
1669
|
+
optional string title = 1;
|
|
1670
|
+
optional string subtitle = 2;
|
|
1671
|
+
optional bool hasMediaAttachment = 5;
|
|
1672
|
+
oneof media {
|
|
1673
|
+
DocumentMessage documentMessage = 3;
|
|
1674
|
+
ImageMessage imageMessage = 4;
|
|
1675
|
+
bytes jpegThumbnail = 6;
|
|
1676
|
+
VideoMessage videoMessage = 7;
|
|
1677
|
+
LocationMessage locationMessage = 8;
|
|
1678
|
+
ProductMessage productMessage = 9;
|
|
1679
|
+
}
|
|
1680
|
+
}
|
|
1681
|
+
message NativeFlowMessage {
|
|
1682
|
+
repeated NativeFlowButton buttons = 1;
|
|
1683
|
+
optional string messageParamsJson = 2;
|
|
1684
|
+
optional int32 messageVersion = 3;
|
|
1685
|
+
message NativeFlowButton { optional string name = 1; optional string buttonParamsJson = 2; }
|
|
1686
|
+
}
|
|
1687
|
+
message ShopMessage {
|
|
1688
|
+
optional string id = 1;
|
|
1689
|
+
optional Surface surface = 2;
|
|
1690
|
+
optional int32 messageVersion = 3;
|
|
1691
|
+
enum Surface { UNKNOWN_SURFACE = 0; FB = 1; IG = 2; WA = 3; }
|
|
1692
|
+
}
|
|
1693
|
+
}
|
|
1694
|
+
|
|
1695
|
+
message InteractiveResponseMessage {
|
|
1696
|
+
optional Body body = 1;
|
|
1697
|
+
optional ContextInfo contextInfo = 15;
|
|
1698
|
+
oneof interactiveResponseMessage {
|
|
1699
|
+
NativeFlowResponseMessage nativeFlowResponseMessage = 2;
|
|
1700
|
+
}
|
|
1701
|
+
message Body { optional string text = 1; optional Format format = 2; enum Format { DEFAULT = 0; EXTENSIONS_1 = 1; } }
|
|
1702
|
+
message NativeFlowResponseMessage { optional string name = 1; optional string paramsJson = 2; optional int32 version = 3; }
|
|
1703
|
+
}
|
|
1704
|
+
|
|
1705
|
+
message KeepInChatMessage {
|
|
1706
|
+
optional MessageKey key = 1;
|
|
1707
|
+
optional KeepType keepType = 2;
|
|
1708
|
+
optional int64 timestampMs = 3;
|
|
1709
|
+
}
|
|
1710
|
+
|
|
1711
|
+
message ListMessage {
|
|
1712
|
+
optional string title = 1;
|
|
1713
|
+
optional string description = 2;
|
|
1714
|
+
optional string buttonText = 3;
|
|
1715
|
+
optional ListType listType = 4;
|
|
1716
|
+
repeated Section sections = 5;
|
|
1717
|
+
optional ProductListInfo productListInfo = 6;
|
|
1718
|
+
optional string footerText = 7;
|
|
1719
|
+
optional ContextInfo contextInfo = 8;
|
|
1720
|
+
|
|
1721
|
+
enum ListType { UNKNOWN = 0; SINGLE_SELECT = 1; PRODUCT_LIST = 2; }
|
|
1722
|
+
message Product { optional string productId = 1; }
|
|
1723
|
+
message ProductListHeaderImage { optional string productId = 1; optional bytes jpegThumbnail = 2; }
|
|
1724
|
+
message ProductListInfo { repeated ProductSection productSections = 1; optional ProductListHeaderImage headerImage = 2; optional string businessOwnerJid = 3; }
|
|
1725
|
+
message ProductSection { optional string title = 1; repeated Product products = 2; }
|
|
1726
|
+
message Row { optional string title = 1; optional string description = 2; optional string rowId = 3; }
|
|
1727
|
+
message Section { optional string title = 1; repeated Row rows = 2; }
|
|
1728
|
+
}
|
|
1729
|
+
|
|
1730
|
+
message ListResponseMessage {
|
|
1731
|
+
optional string title = 1;
|
|
1732
|
+
optional ListType listType = 2;
|
|
1733
|
+
optional SingleSelectReply singleSelectReply = 3;
|
|
1734
|
+
optional ContextInfo contextInfo = 4;
|
|
1735
|
+
optional string description = 5;
|
|
1736
|
+
enum ListType { UNKNOWN = 0; SINGLE_SELECT = 1; }
|
|
1737
|
+
message SingleSelectReply { optional string selectedRowId = 1; }
|
|
1738
|
+
}
|
|
1739
|
+
|
|
1740
|
+
message LiveLocationMessage {
|
|
1741
|
+
optional double degreesLatitude = 1;
|
|
1742
|
+
optional double degreesLongitude = 2;
|
|
1743
|
+
optional uint32 accuracyInMeters = 3;
|
|
1744
|
+
optional float speedInMps = 4;
|
|
1745
|
+
optional uint32 degreesClockwiseFromMagneticNorth = 5;
|
|
1746
|
+
optional string caption = 6;
|
|
1747
|
+
optional int64 sequenceNumber = 7;
|
|
1748
|
+
optional uint32 timeOffset = 8;
|
|
1749
|
+
optional bytes jpegThumbnail = 16;
|
|
1750
|
+
optional ContextInfo contextInfo = 17;
|
|
1751
|
+
}
|
|
1752
|
+
|
|
1753
|
+
message LocationMessage {
|
|
1754
|
+
optional double degreesLatitude = 1;
|
|
1755
|
+
optional double degreesLongitude = 2;
|
|
1756
|
+
optional string name = 3;
|
|
1757
|
+
optional string address = 4;
|
|
1758
|
+
optional string url = 5;
|
|
1759
|
+
optional bool isLive = 6;
|
|
1760
|
+
optional uint32 accuracyInMeters = 7;
|
|
1761
|
+
optional float speedInMps = 8;
|
|
1762
|
+
optional uint32 degreesClockwiseFromMagneticNorth = 9;
|
|
1763
|
+
optional string comment = 11;
|
|
1764
|
+
optional bytes jpegThumbnail = 16;
|
|
1765
|
+
optional ContextInfo contextInfo = 17;
|
|
1766
|
+
}
|
|
1767
|
+
|
|
1768
|
+
message MessageHistoryBundle {
|
|
1769
|
+
optional string mimetype = 1;
|
|
1770
|
+
optional bytes fileSha256 = 2;
|
|
1771
|
+
optional bytes mediaKey = 3;
|
|
1772
|
+
optional bytes fileEncSha256 = 4;
|
|
1773
|
+
optional string directPath = 5;
|
|
1774
|
+
optional int64 mediaKeyTimestamp = 6;
|
|
1775
|
+
optional ContextInfo contextInfo = 7;
|
|
1776
|
+
optional MessageHistoryMetadata messageHistoryMetadata = 8;
|
|
1777
|
+
}
|
|
1778
|
+
|
|
1779
|
+
message MessageHistoryMetadata {
|
|
1780
|
+
repeated string historyReceivers = 1;
|
|
1781
|
+
optional int64 firstMessageTimestamp = 2;
|
|
1782
|
+
optional int64 messageCount = 3;
|
|
1783
|
+
}
|
|
1784
|
+
|
|
1785
|
+
message MessageHistoryNotice {
|
|
1786
|
+
optional ContextInfo contextInfo = 1;
|
|
1787
|
+
optional MessageHistoryMetadata messageHistoryMetadata = 2;
|
|
1788
|
+
}
|
|
1789
|
+
|
|
1790
|
+
message NewsletterAdminInviteMessage {
|
|
1791
|
+
optional string newsletterJid = 1;
|
|
1792
|
+
optional string newsletterName = 2;
|
|
1793
|
+
optional bytes jpegThumbnail = 3;
|
|
1794
|
+
optional string caption = 4;
|
|
1795
|
+
optional int64 inviteExpiration = 5;
|
|
1796
|
+
optional ContextInfo contextInfo = 6;
|
|
1797
|
+
}
|
|
1798
|
+
|
|
1799
|
+
message OrderMessage {
|
|
1800
|
+
optional string orderId = 1;
|
|
1801
|
+
optional bytes thumbnail = 2;
|
|
1802
|
+
optional int32 itemCount = 3;
|
|
1803
|
+
optional OrderStatus status = 4;
|
|
1804
|
+
optional OrderSurface surface = 5;
|
|
1805
|
+
optional string message = 6;
|
|
1806
|
+
optional string orderTitle = 7;
|
|
1807
|
+
optional string sellerJid = 8;
|
|
1808
|
+
optional string token = 9;
|
|
1809
|
+
optional int64 totalAmount1000 = 10;
|
|
1810
|
+
optional string totalCurrencyCode = 11;
|
|
1811
|
+
optional ContextInfo contextInfo = 17;
|
|
1812
|
+
optional int32 messageVersion = 12;
|
|
1813
|
+
|
|
1814
|
+
enum OrderStatus { INQUIRY = 1; ACCEPTED = 2; DECLINED = 3; }
|
|
1815
|
+
enum OrderSurface { CATALOG = 1; }
|
|
1816
|
+
}
|
|
1817
|
+
|
|
1818
|
+
message PaymentInviteMessage {
|
|
1819
|
+
optional ServiceType serviceType = 1;
|
|
1820
|
+
optional int64 expiryTimestamp = 2;
|
|
1821
|
+
enum ServiceType { UNKNOWN = 0; FBPAY = 1; NOVI = 2; UPI = 3; }
|
|
1822
|
+
}
|
|
1823
|
+
|
|
1824
|
+
message PeerDataOperationRequestMessage {
|
|
1825
|
+
optional PeerDataOperationRequestType peerDataOperationRequestType = 1;
|
|
1826
|
+
repeated RequestStickerReupload requestStickerReupload = 2;
|
|
1827
|
+
repeated RequestUrlPreview requestUrlPreview = 3;
|
|
1828
|
+
optional HistorySyncOnDemandRequest historySyncOnDemandRequest = 4;
|
|
1829
|
+
repeated PlaceholderMessageResendRequest placeholderMessageResendRequest = 5;
|
|
1830
|
+
|
|
1831
|
+
message HistorySyncOnDemandRequest {
|
|
1832
|
+
optional string chatJid = 1;
|
|
1833
|
+
optional string oldestMsgId = 2;
|
|
1834
|
+
optional bool oldestMsgFromMe = 3;
|
|
1835
|
+
optional int32 onDemandMsgCount = 4;
|
|
1836
|
+
optional int64 oldestMsgTimestampMs = 5;
|
|
1837
|
+
optional string accountLid = 6;
|
|
1838
|
+
}
|
|
1839
|
+
message PlaceholderMessageResendRequest { optional MessageKey messageKey = 1; }
|
|
1840
|
+
message RequestStickerReupload { optional string fileSha256 = 1; }
|
|
1841
|
+
message RequestUrlPreview { optional string url = 1; optional bool includeHqThumbnail = 2; }
|
|
1842
|
+
}
|
|
1843
|
+
|
|
1844
|
+
enum PeerDataOperationRequestType {
|
|
1845
|
+
UPLOAD_STICKER = 0;
|
|
1846
|
+
SEND_RECENT_STICKER_BOOTSTRAP = 1;
|
|
1847
|
+
GENERATE_LINK_PREVIEW = 2;
|
|
1848
|
+
HISTORY_SYNC_ON_DEMAND = 3;
|
|
1849
|
+
PLACEHOLDER_MESSAGE_RESEND = 4;
|
|
1850
|
+
WAFFLE_LINKING_NONCE_FETCH = 5;
|
|
1851
|
+
FULL_HISTORY_SYNC_ON_DEMAND = 6;
|
|
1852
|
+
COMPANION_META_NONCE_FETCH = 7;
|
|
1853
|
+
COMPANION_SYNCD_SNAPSHOT_FATAL_RECOVERY = 8;
|
|
1854
|
+
COMPANION_CANONICAL_USER_NONCE_FETCH = 9;
|
|
1855
|
+
}
|
|
1856
|
+
|
|
1857
|
+
message PinInChatMessage {
|
|
1858
|
+
optional MessageKey key = 1;
|
|
1859
|
+
optional Type type = 2;
|
|
1860
|
+
optional int64 senderTimestampMs = 3;
|
|
1861
|
+
enum Type { UNKNOWN_TYPE = 0; PIN_FOR_ALL = 1; UNPIN_FOR_ALL = 2; }
|
|
1862
|
+
}
|
|
1863
|
+
|
|
1864
|
+
message PlaceholderMessage {
|
|
1865
|
+
optional PlaceholderType type = 1;
|
|
1866
|
+
enum PlaceholderType { MASK_LINKED_DEVICES = 0; }
|
|
1867
|
+
}
|
|
1868
|
+
|
|
1869
|
+
enum PollContentType { UNKNOWN = 0; TEXT = 1; IMAGE = 2; }
|
|
1870
|
+
|
|
1871
|
+
message PollCreationMessage {
|
|
1872
|
+
optional bytes encKey = 1;
|
|
1873
|
+
optional string name = 2;
|
|
1874
|
+
repeated Option options = 3;
|
|
1875
|
+
optional uint32 selectableOptionsCount = 4;
|
|
1876
|
+
optional ContextInfo contextInfo = 5;
|
|
1877
|
+
optional PollContentType pollContentType = 6;
|
|
1878
|
+
optional PollType pollType = 7;
|
|
1879
|
+
optional Option correctAnswer = 8;
|
|
1880
|
+
message Option { optional string optionName = 1; optional string optionHash = 2; }
|
|
1881
|
+
enum PollType { POLL = 0; QUIZ = 1; }
|
|
1882
|
+
}
|
|
1883
|
+
|
|
1884
|
+
message PollEncValue { optional bytes encPayload = 1; optional bytes encIv = 2; }
|
|
1885
|
+
|
|
1886
|
+
message PollResultSnapshotMessage {
|
|
1887
|
+
optional string name = 1;
|
|
1888
|
+
repeated PollVote pollVotes = 2;
|
|
1889
|
+
optional ContextInfo contextInfo = 3;
|
|
1890
|
+
message PollVote { optional string optionName = 1; optional int64 optionVoteCount = 2; }
|
|
1891
|
+
}
|
|
1892
|
+
|
|
1893
|
+
message PollUpdateMessage {
|
|
1894
|
+
optional MessageKey pollCreationMessageKey = 1;
|
|
1895
|
+
optional PollEncValue vote = 2;
|
|
1896
|
+
optional PollUpdateMessageMetadata metadata = 3;
|
|
1897
|
+
optional int64 senderTimestampMs = 4;
|
|
1898
|
+
}
|
|
1899
|
+
|
|
1900
|
+
message PollUpdateMessageMetadata {}
|
|
1901
|
+
message PollVoteMessage { repeated bytes selectedOptions = 1; }
|
|
1902
|
+
|
|
1903
|
+
message ProductMessage {
|
|
1904
|
+
optional ProductSnapshot productSnapshot = 1;
|
|
1905
|
+
optional string businessOwnerJid = 2;
|
|
1906
|
+
optional CatalogSnapshot catalog = 4;
|
|
1907
|
+
optional string body = 5;
|
|
1908
|
+
optional string footer = 6;
|
|
1909
|
+
optional ContextInfo contextInfo = 17;
|
|
1910
|
+
|
|
1911
|
+
message CatalogSnapshot { optional ImageMessage catalogImage = 1; optional string title = 2; optional string description = 3; }
|
|
1912
|
+
message ProductSnapshot {
|
|
1913
|
+
optional ImageMessage productImage = 1;
|
|
1914
|
+
optional string productId = 2;
|
|
1915
|
+
optional string title = 3;
|
|
1916
|
+
optional string description = 4;
|
|
1917
|
+
optional string currencyCode = 5;
|
|
1918
|
+
optional int64 priceAmount1000 = 6;
|
|
1919
|
+
optional string retailerId = 7;
|
|
1920
|
+
optional string url = 8;
|
|
1921
|
+
optional uint32 productImageCount = 9;
|
|
1922
|
+
}
|
|
1923
|
+
}
|
|
1924
|
+
|
|
1925
|
+
message ProtocolMessage {
|
|
1926
|
+
optional MessageKey key = 1;
|
|
1927
|
+
optional Type type = 2;
|
|
1928
|
+
optional uint32 ephemeralExpiration = 4;
|
|
1929
|
+
optional int64 ephemeralSettingTimestamp = 5;
|
|
1930
|
+
optional HistorySyncNotification historySyncNotification = 6;
|
|
1931
|
+
optional AppStateSyncKeyShare appStateSyncKeyShare = 7;
|
|
1932
|
+
optional AppStateSyncKeyRequest appStateSyncKeyRequest = 8;
|
|
1933
|
+
optional InitialSecurityNotificationSettingSync initialSecurityNotificationSettingSync = 9;
|
|
1934
|
+
optional AppStateFatalExceptionNotification appStateFatalExceptionNotification = 10;
|
|
1935
|
+
optional DisappearingMode disappearingMode = 11;
|
|
1936
|
+
optional Message editedMessage = 14;
|
|
1937
|
+
optional int64 timestampMs = 15;
|
|
1938
|
+
optional PeerDataOperationRequestMessage peerDataOperationRequestMessage = 16;
|
|
1939
|
+
optional BotFeedbackMessage botFeedbackMessage = 18;
|
|
1940
|
+
optional string invokerJid = 19;
|
|
1941
|
+
optional MediaNotifyMessage mediaNotifyMessage = 21;
|
|
1942
|
+
optional LIDMigrationMappingSyncMessage lidMigrationMappingSyncMessage = 23;
|
|
1943
|
+
optional LimitSharing limitSharing = 24;
|
|
1944
|
+
optional MemberLabel memberLabel = 27;
|
|
1945
|
+
|
|
1946
|
+
enum Type {
|
|
1947
|
+
REVOKE = 0;
|
|
1948
|
+
EPHEMERAL_SETTING = 3;
|
|
1949
|
+
EPHEMERAL_SYNC_RESPONSE = 4;
|
|
1950
|
+
HISTORY_SYNC_NOTIFICATION = 5;
|
|
1951
|
+
APP_STATE_SYNC_KEY_SHARE = 6;
|
|
1952
|
+
APP_STATE_SYNC_KEY_REQUEST = 7;
|
|
1953
|
+
MSG_FANOUT_BACKFILL_REQUEST = 8;
|
|
1954
|
+
INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC = 9;
|
|
1955
|
+
APP_STATE_FATAL_EXCEPTION_NOTIFICATION = 10;
|
|
1956
|
+
SHARE_PHONE_NUMBER = 11;
|
|
1957
|
+
MESSAGE_EDIT = 14;
|
|
1958
|
+
PEER_DATA_OPERATION_REQUEST_MESSAGE = 16;
|
|
1959
|
+
PEER_DATA_OPERATION_REQUEST_RESPONSE_MESSAGE = 17;
|
|
1960
|
+
REQUEST_WELCOME_MESSAGE = 18;
|
|
1961
|
+
BOT_FEEDBACK_MESSAGE = 19;
|
|
1962
|
+
MEDIA_NOTIFY_MESSAGE = 20;
|
|
1963
|
+
CLOUD_API_THREAD_CONTROL_NOTIFICATION = 21;
|
|
1964
|
+
LID_MIGRATION_MAPPING_SYNC = 22;
|
|
1965
|
+
REMINDER_MESSAGE = 23;
|
|
1966
|
+
STATUS_MENTION_MESSAGE = 25;
|
|
1967
|
+
STOP_GENERATION_MESSAGE = 26;
|
|
1968
|
+
LIMIT_SHARING = 27;
|
|
1969
|
+
GROUP_MEMBER_LABEL_CHANGE = 30;
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
message InitialSecurityNotificationSettingSync { optional bool securityNotificationEnabled = 1; }
|
|
1973
|
+
}
|
|
1974
|
+
|
|
1975
|
+
message ReactionMessage {
|
|
1976
|
+
optional MessageKey key = 1;
|
|
1977
|
+
optional string text = 2;
|
|
1978
|
+
optional string groupingKey = 3;
|
|
1979
|
+
optional int64 senderTimestampMs = 4;
|
|
1980
|
+
}
|
|
1981
|
+
|
|
1982
|
+
message RequestPaymentMessage {
|
|
1983
|
+
optional Message noteMessage = 4;
|
|
1984
|
+
optional string currencyCodeIso4217 = 1;
|
|
1985
|
+
optional uint64 amount1000 = 2;
|
|
1986
|
+
optional string requestFrom = 3;
|
|
1987
|
+
optional int64 expiryTimestamp = 5;
|
|
1988
|
+
optional Money amount = 6;
|
|
1989
|
+
optional PaymentBackground background = 7;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1992
|
+
message RequestPhoneNumberMessage { optional ContextInfo contextInfo = 1; }
|
|
1993
|
+
|
|
1994
|
+
message ScheduledCallCreationMessage {
|
|
1995
|
+
optional int64 scheduledTimestampMs = 1;
|
|
1996
|
+
optional CallType callType = 2;
|
|
1997
|
+
optional string title = 3;
|
|
1998
|
+
enum CallType { UNKNOWN = 0; VOICE = 1; VIDEO = 2; }
|
|
1999
|
+
}
|
|
2000
|
+
|
|
2001
|
+
message ScheduledCallEditMessage {
|
|
2002
|
+
optional MessageKey key = 1;
|
|
2003
|
+
optional EditType editType = 2;
|
|
2004
|
+
enum EditType { UNKNOWN = 0; CANCEL = 1; }
|
|
2005
|
+
}
|
|
2006
|
+
|
|
2007
|
+
message SendPaymentMessage {
|
|
2008
|
+
optional Message noteMessage = 2;
|
|
2009
|
+
optional MessageKey requestMessageKey = 3;
|
|
2010
|
+
optional PaymentBackground background = 4;
|
|
2011
|
+
}
|
|
2012
|
+
|
|
2013
|
+
message SenderKeyDistributionMessage {
|
|
2014
|
+
optional string groupId = 1;
|
|
2015
|
+
optional bytes axolotlSenderKeyDistributionMessage = 2;
|
|
2016
|
+
}
|
|
2017
|
+
|
|
2018
|
+
message StatusNotificationMessage {
|
|
2019
|
+
optional MessageKey responseMessageKey = 1;
|
|
2020
|
+
optional MessageKey originalMessageKey = 2;
|
|
2021
|
+
optional StatusNotificationType type = 3;
|
|
2022
|
+
enum StatusNotificationType { UNKNOWN = 0; STATUS_ADD_YOURS = 1; STATUS_RESHARE = 2; }
|
|
2023
|
+
}
|
|
2024
|
+
|
|
2025
|
+
message StickerMessage {
|
|
2026
|
+
optional string url = 1;
|
|
2027
|
+
optional bytes fileSha256 = 2;
|
|
2028
|
+
optional bytes fileEncSha256 = 3;
|
|
2029
|
+
optional bytes mediaKey = 4;
|
|
2030
|
+
optional string mimetype = 5;
|
|
2031
|
+
optional uint32 height = 6;
|
|
2032
|
+
optional uint32 width = 7;
|
|
2033
|
+
optional string directPath = 8;
|
|
2034
|
+
optional uint64 fileLength = 9;
|
|
2035
|
+
optional int64 mediaKeyTimestamp = 10;
|
|
2036
|
+
optional uint32 firstFrameLength = 11;
|
|
2037
|
+
optional bytes firstFrameSidecar = 12;
|
|
2038
|
+
optional bool isAnimated = 13;
|
|
2039
|
+
optional bytes pngThumbnail = 16;
|
|
2040
|
+
optional ContextInfo contextInfo = 17;
|
|
2041
|
+
optional int64 stickerSentTs = 18;
|
|
2042
|
+
optional bool isAvatar = 19;
|
|
2043
|
+
optional bool isAiSticker = 20;
|
|
2044
|
+
optional bool isLottie = 21;
|
|
2045
|
+
optional string accessibilityLabel = 22;
|
|
2046
|
+
}
|
|
2047
|
+
|
|
2048
|
+
message StickerPackMessage {
|
|
2049
|
+
optional string stickerPackId = 1;
|
|
2050
|
+
optional string name = 2;
|
|
2051
|
+
optional string publisher = 3;
|
|
2052
|
+
repeated Sticker stickers = 4;
|
|
2053
|
+
optional uint64 fileLength = 5;
|
|
2054
|
+
optional bytes fileSha256 = 6;
|
|
2055
|
+
optional bytes fileEncSha256 = 7;
|
|
2056
|
+
optional bytes mediaKey = 8;
|
|
2057
|
+
optional string directPath = 9;
|
|
2058
|
+
optional string caption = 10;
|
|
2059
|
+
optional ContextInfo contextInfo = 11;
|
|
2060
|
+
optional string packDescription = 12;
|
|
2061
|
+
optional int64 mediaKeyTimestamp = 13;
|
|
2062
|
+
|
|
2063
|
+
message Sticker {
|
|
2064
|
+
optional string fileName = 1;
|
|
2065
|
+
optional bool isAnimated = 2;
|
|
2066
|
+
repeated string emojis = 3;
|
|
2067
|
+
optional string accessibilityLabel = 4;
|
|
2068
|
+
optional bool isLottie = 5;
|
|
2069
|
+
optional string mimetype = 6;
|
|
2070
|
+
}
|
|
2071
|
+
|
|
2072
|
+
enum StickerPackOrigin { FIRST_PARTY = 0; THIRD_PARTY = 1; USER_CREATED = 2; }
|
|
2073
|
+
}
|
|
2074
|
+
|
|
2075
|
+
message StickerSyncRMRMessage {
|
|
2076
|
+
repeated string filehash = 1;
|
|
2077
|
+
optional string rmrSource = 2;
|
|
2078
|
+
optional int64 requestTimestamp = 3;
|
|
2079
|
+
}
|
|
2080
|
+
|
|
2081
|
+
message TemplateButtonReplyMessage {
|
|
2082
|
+
optional string selectedId = 1;
|
|
2083
|
+
optional string selectedDisplayText = 2;
|
|
2084
|
+
optional ContextInfo contextInfo = 3;
|
|
2085
|
+
optional uint32 selectedIndex = 4;
|
|
2086
|
+
}
|
|
2087
|
+
|
|
2088
|
+
message TemplateMessage {
|
|
2089
|
+
optional ContextInfo contextInfo = 3;
|
|
2090
|
+
optional HydratedFourRowTemplate hydratedTemplate = 4;
|
|
2091
|
+
optional string templateId = 9;
|
|
2092
|
+
oneof format {
|
|
2093
|
+
FourRowTemplate fourRowTemplate = 1;
|
|
2094
|
+
HydratedFourRowTemplate hydratedFourRowTemplate = 2;
|
|
2095
|
+
InteractiveMessage interactiveMessageTemplate = 5;
|
|
2096
|
+
}
|
|
2097
|
+
|
|
2098
|
+
message FourRowTemplate {
|
|
2099
|
+
optional HighlyStructuredMessage content = 6;
|
|
2100
|
+
optional HighlyStructuredMessage footer = 7;
|
|
2101
|
+
repeated TemplateButton buttons = 8;
|
|
2102
|
+
oneof title {
|
|
2103
|
+
DocumentMessage documentMessage = 1;
|
|
2104
|
+
HighlyStructuredMessage highlyStructuredMessage = 2;
|
|
2105
|
+
ImageMessage imageMessage = 3;
|
|
2106
|
+
VideoMessage videoMessage = 4;
|
|
2107
|
+
LocationMessage locationMessage = 5;
|
|
2108
|
+
}
|
|
2109
|
+
}
|
|
2110
|
+
|
|
2111
|
+
message HydratedFourRowTemplate {
|
|
2112
|
+
optional string hydratedContentText = 6;
|
|
2113
|
+
optional string hydratedFooterText = 7;
|
|
2114
|
+
repeated HydratedTemplateButton hydratedButtons = 8;
|
|
2115
|
+
optional string templateId = 9;
|
|
2116
|
+
optional bool maskLinkedDevices = 10;
|
|
2117
|
+
oneof title {
|
|
2118
|
+
DocumentMessage documentMessage = 1;
|
|
2119
|
+
string hydratedTitleText = 2;
|
|
2120
|
+
ImageMessage imageMessage = 3;
|
|
2121
|
+
VideoMessage videoMessage = 4;
|
|
2122
|
+
LocationMessage locationMessage = 5;
|
|
2123
|
+
}
|
|
2124
|
+
}
|
|
2125
|
+
}
|
|
2126
|
+
|
|
2127
|
+
message VideoMessage {
|
|
2128
|
+
optional string url = 1;
|
|
2129
|
+
optional string mimetype = 2;
|
|
2130
|
+
optional bytes fileSha256 = 3;
|
|
2131
|
+
optional uint64 fileLength = 4;
|
|
2132
|
+
optional uint32 seconds = 5;
|
|
2133
|
+
optional bytes mediaKey = 6;
|
|
2134
|
+
optional string caption = 7;
|
|
2135
|
+
optional bool gifPlayback = 8;
|
|
2136
|
+
optional uint32 height = 9;
|
|
2137
|
+
optional uint32 width = 10;
|
|
2138
|
+
optional bytes fileEncSha256 = 11;
|
|
2139
|
+
repeated InteractiveAnnotation interactiveAnnotations = 12;
|
|
2140
|
+
optional string directPath = 13;
|
|
2141
|
+
optional int64 mediaKeyTimestamp = 14;
|
|
2142
|
+
optional bytes jpegThumbnail = 16;
|
|
2143
|
+
optional ContextInfo contextInfo = 17;
|
|
2144
|
+
optional bytes streamingSidecar = 18;
|
|
2145
|
+
optional Attribution gifAttribution = 19;
|
|
2146
|
+
optional bool viewOnce = 20;
|
|
2147
|
+
optional string accessibilityLabel = 26;
|
|
2148
|
+
|
|
2149
|
+
enum Attribution { NONE = 0; GIPHY = 1; TENOR = 2; }
|
|
2150
|
+
enum VideoSourceType { USER_VIDEO = 0; AI_GENERATED = 1; }
|
|
2151
|
+
}
|
|
2152
|
+
}
|
|
2153
|
+
|
|
2154
|
+
|
|
2155
|
+
// ─── MESSAGE ADD-ON ──────────────────────────────────────────
|
|
2156
|
+
|
|
2157
|
+
message MessageAddOn {
|
|
2158
|
+
optional MessageAddOnType messageAddOnType = 1;
|
|
2159
|
+
optional Message messageAddOn = 2;
|
|
2160
|
+
optional int64 senderTimestampMs = 3;
|
|
2161
|
+
optional int64 serverTimestampMs = 4;
|
|
2162
|
+
optional WebMessageInfo.Status status = 5;
|
|
2163
|
+
optional MessageAddOnContextInfo addOnContextInfo = 6;
|
|
2164
|
+
optional MessageKey messageAddOnKey = 7;
|
|
2165
|
+
|
|
2166
|
+
enum MessageAddOnType {
|
|
2167
|
+
UNDEFINED = 0;
|
|
2168
|
+
REACTION = 1;
|
|
2169
|
+
EVENT_RESPONSE = 2;
|
|
2170
|
+
POLL_UPDATE = 3;
|
|
2171
|
+
PIN_IN_CHAT = 4;
|
|
2172
|
+
}
|
|
2173
|
+
}
|
|
2174
|
+
|
|
2175
|
+
message MessageAddOnContextInfo {
|
|
2176
|
+
optional uint32 messageAddOnDurationInSecs = 1;
|
|
2177
|
+
optional MessageContextInfo.MessageAddonExpiryType messageAddOnExpiryType = 2;
|
|
2178
|
+
}
|
|
2179
|
+
|
|
2180
|
+
message MessageAssociation {
|
|
2181
|
+
optional AssociationType associationType = 1;
|
|
2182
|
+
optional MessageKey parentMessageKey = 2;
|
|
2183
|
+
optional int32 messageIndex = 3;
|
|
2184
|
+
|
|
2185
|
+
enum AssociationType {
|
|
2186
|
+
UNKNOWN = 0;
|
|
2187
|
+
MEDIA_ALBUM = 1;
|
|
2188
|
+
BOT_PLUGIN = 2;
|
|
2189
|
+
EVENT_COVER_IMAGE = 3;
|
|
2190
|
+
STATUS_POLL = 4;
|
|
2191
|
+
HD_VIDEO_DUAL_UPLOAD = 5;
|
|
2192
|
+
STATUS_EXTERNAL_RESHARE = 6;
|
|
2193
|
+
MEDIA_POLL = 7;
|
|
2194
|
+
STATUS_ADD_YOURS = 8;
|
|
2195
|
+
STATUS_NOTIFICATION = 9;
|
|
2196
|
+
HD_IMAGE_DUAL_UPLOAD = 10;
|
|
2197
|
+
STICKER_ANNOTATION = 11;
|
|
2198
|
+
MOTION_PHOTO = 12;
|
|
2199
|
+
STATUS_LINK_ACTION = 13;
|
|
2200
|
+
VIEW_ALL_REPLIES = 14;
|
|
2201
|
+
}
|
|
2202
|
+
}
|
|
2203
|
+
|
|
2204
|
+
message MessageContextInfo {
|
|
2205
|
+
optional DeviceListMetadata deviceListMetadata = 1;
|
|
2206
|
+
optional int32 deviceListMetadataVersion = 2;
|
|
2207
|
+
optional bytes messageSecret = 3;
|
|
2208
|
+
optional bytes paddingBytes = 4;
|
|
2209
|
+
optional uint32 messageAddOnDurationInSecs = 5;
|
|
2210
|
+
optional bytes botMessageSecret = 6;
|
|
2211
|
+
optional BotMetadata botMetadata = 7;
|
|
2212
|
+
optional int32 reportingTokenVersion = 8;
|
|
2213
|
+
optional MessageAddonExpiryType messageAddOnExpiryType = 9;
|
|
2214
|
+
optional MessageAssociation messageAssociation = 10;
|
|
2215
|
+
optional bool capiCreatedGroup = 11;
|
|
2216
|
+
optional string supportPayload = 12;
|
|
2217
|
+
optional LimitSharing limitSharing = 13;
|
|
2218
|
+
repeated ThreadID threadId = 15;
|
|
2219
|
+
|
|
2220
|
+
enum MessageAddonExpiryType { STATIC = 1; DEPENDENT_ON_PARENT = 2; }
|
|
2221
|
+
}
|
|
2222
|
+
|
|
2223
|
+
message MessageKey {
|
|
2224
|
+
optional string remoteJid = 1;
|
|
2225
|
+
optional bool fromMe = 2;
|
|
2226
|
+
optional string id = 3;
|
|
2227
|
+
optional string participant = 4;
|
|
2228
|
+
}
|
|
2229
|
+
|
|
2230
|
+
|
|
2231
|
+
message Money {
|
|
2232
|
+
optional int64 value = 1;
|
|
2233
|
+
optional uint32 offset = 2;
|
|
2234
|
+
optional string currencyCode = 3;
|
|
2235
|
+
}
|
|
2236
|
+
|
|
2237
|
+
// Tag all group members (@everyone / @all)
|
|
2238
|
+
message TagAllMessage {
|
|
2239
|
+
optional string text = 1; // display text e.g. "@all" or "@everyone"
|
|
2240
|
+
optional ContextInfo contextInfo = 2;
|
|
2241
|
+
optional bool silent = 3; // true = notify without showing mention UI
|
|
2242
|
+
optional TagScope scope = 4;
|
|
2243
|
+
|
|
2244
|
+
enum TagScope {
|
|
2245
|
+
ALL_MEMBERS = 0; // tag everyone in the group
|
|
2246
|
+
ADMINS_ONLY = 1; // tag admins only
|
|
2247
|
+
NON_ADMINS = 2; // tag non-admins only
|
|
2248
|
+
}
|
|
2249
|
+
}
|
|
2250
|
+
|
|
2251
|
+
message GroupStatusV2Message {
|
|
2252
|
+
optional Message statusMessage = 1; // the actual status content
|
|
2253
|
+
optional ContextInfo contextInfo = 2;
|
|
2254
|
+
optional string groupJid = 3;
|
|
2255
|
+
optional int64 expiryTimestampMs = 4;
|
|
2256
|
+
optional bool allowReply = 5;
|
|
2257
|
+
optional bool allowReaction = 6;
|
|
2258
|
+
optional string authorJid = 7;
|
|
2259
|
+
optional StatusVisibility visibility = 8;
|
|
2260
|
+
|
|
2261
|
+
enum StatusVisibility {
|
|
2262
|
+
ALL_MEMBERS = 0;
|
|
2263
|
+
ADMINS_ONLY = 1;
|
|
2264
|
+
}
|
|
2265
|
+
}
|
|
2266
|
+
|
|
2267
|
+
message N4lyxMeta {
|
|
2268
|
+
optional string libVersion = 1; // e.g. "1.0.0"
|
|
2269
|
+
optional string buildCommit = 2; // git commit hash
|
|
2270
|
+
optional int64 sentAtMs = 3; // client send timestamp
|
|
2271
|
+
optional string sessionId = 4; // connection session id
|
|
2272
|
+
optional bool isForwarded = 5;
|
|
2273
|
+
optional string sourceJid = 6;
|
|
2274
|
+
}
|
|
2275
|
+
|
|
2276
|
+
// ─────────────────────────────────────────────────────────────
|
|
2277
|
+
|
|
2278
|
+
|
|
2279
|
+
// ─── NOTIFICATIONS ───────────────────────────────────────────
|
|
2280
|
+
|
|
2281
|
+
message NotificationMessageInfo {
|
|
2282
|
+
optional MessageKey key = 1;
|
|
2283
|
+
optional Message message = 2;
|
|
2284
|
+
optional uint64 messageTimestamp = 3;
|
|
2285
|
+
optional string participant = 4;
|
|
2286
|
+
}
|
|
2287
|
+
|
|
2288
|
+
message NotificationSettings {
|
|
2289
|
+
optional string messageVibrate = 1;
|
|
2290
|
+
optional string messagePopup = 2;
|
|
2291
|
+
optional string messageLight = 3;
|
|
2292
|
+
optional bool lowPriorityNotifications = 4;
|
|
2293
|
+
optional bool reactionsMuted = 5;
|
|
2294
|
+
optional string callVibrate = 6;
|
|
2295
|
+
}
|
|
2296
|
+
|
|
2297
|
+
|
|
2298
|
+
// ─── PAIRING ─────────────────────────────────────────────────
|
|
2299
|
+
|
|
2300
|
+
message PairingRequest {
|
|
2301
|
+
optional bytes companionPublicKey = 1;
|
|
2302
|
+
optional bytes companionIdentityKey = 2;
|
|
2303
|
+
optional bytes advSecret = 3;
|
|
2304
|
+
}
|
|
2305
|
+
|
|
2306
|
+
message PastParticipant {
|
|
2307
|
+
optional string userJid = 1;
|
|
2308
|
+
optional LeaveReason leaveReason = 2;
|
|
2309
|
+
optional uint64 leaveTs = 3;
|
|
2310
|
+
enum LeaveReason { LEFT = 0; REMOVED = 1; }
|
|
2311
|
+
}
|
|
2312
|
+
|
|
2313
|
+
message PastParticipants {
|
|
2314
|
+
optional string groupJid = 1;
|
|
2315
|
+
repeated PastParticipant pastParticipants = 2;
|
|
2316
|
+
}
|
|
2317
|
+
|
|
2318
|
+
message PaymentBackground {
|
|
2319
|
+
optional string id = 1;
|
|
2320
|
+
optional uint64 fileLength = 2;
|
|
2321
|
+
optional uint32 width = 3;
|
|
2322
|
+
optional uint32 height = 4;
|
|
2323
|
+
optional string mimetype = 5;
|
|
2324
|
+
optional fixed32 placeholderArgb = 6;
|
|
2325
|
+
optional fixed32 textArgb = 7;
|
|
2326
|
+
optional fixed32 subtextArgb = 8;
|
|
2327
|
+
optional MediaData mediaData = 9;
|
|
2328
|
+
optional Type type = 10;
|
|
2329
|
+
|
|
2330
|
+
message MediaData {
|
|
2331
|
+
optional bytes mediaKey = 1;
|
|
2332
|
+
optional int64 mediaKeyTimestamp = 2;
|
|
2333
|
+
optional bytes fileSha256 = 3;
|
|
2334
|
+
optional bytes fileEncSha256 = 4;
|
|
2335
|
+
optional string directPath = 5;
|
|
2336
|
+
}
|
|
2337
|
+
enum Type { UNKNOWN = 0; DEFAULT = 1; }
|
|
2338
|
+
}
|
|
2339
|
+
|
|
2340
|
+
message PaymentInfo {
|
|
2341
|
+
optional uint64 amount1000 = 2;
|
|
2342
|
+
optional string receiverJid = 3;
|
|
2343
|
+
optional Status status = 4;
|
|
2344
|
+
optional uint64 transactionTimestamp = 5;
|
|
2345
|
+
optional MessageKey requestMessageKey = 6;
|
|
2346
|
+
optional uint64 expiryTimestamp = 7;
|
|
2347
|
+
optional string currency = 9;
|
|
2348
|
+
optional TxnStatus txnStatus = 10;
|
|
2349
|
+
optional Money primaryAmount = 12;
|
|
2350
|
+
optional Money exchangeAmount = 13;
|
|
2351
|
+
|
|
2352
|
+
enum Status {
|
|
2353
|
+
UNKNOWN_STATUS = 0;
|
|
2354
|
+
PROCESSING = 1;
|
|
2355
|
+
SENT = 2;
|
|
2356
|
+
NEED_TO_ACCEPT = 3;
|
|
2357
|
+
COMPLETE = 4;
|
|
2358
|
+
COULD_NOT_COMPLETE = 5;
|
|
2359
|
+
REFUNDED = 6;
|
|
2360
|
+
EXPIRED = 7;
|
|
2361
|
+
REJECTED = 8;
|
|
2362
|
+
CANCELLED = 9;
|
|
2363
|
+
WAITING_FOR_PAYER = 10;
|
|
2364
|
+
WAITING = 11;
|
|
2365
|
+
}
|
|
2366
|
+
enum TxnStatus {
|
|
2367
|
+
UNKNOWN = 0;
|
|
2368
|
+
PENDING_SETUP = 1;
|
|
2369
|
+
INIT = 3;
|
|
2370
|
+
SUCCESS = 4;
|
|
2371
|
+
COMPLETED = 5;
|
|
2372
|
+
FAILED = 6;
|
|
2373
|
+
REFUNDED_TXN = 12;
|
|
2374
|
+
EXPIRED_TXN = 16;
|
|
2375
|
+
COLLECT_INIT = 20;
|
|
2376
|
+
COLLECT_SUCCESS = 21;
|
|
2377
|
+
COLLECT_FAILED = 22;
|
|
2378
|
+
COLLECT_REJECTED = 24;
|
|
2379
|
+
COLLECT_EXPIRED = 25;
|
|
2380
|
+
COLLECT_CANCELED = 26;
|
|
2381
|
+
IN_REVIEW = 28;
|
|
2382
|
+
REVERSAL_SUCCESS = 29;
|
|
2383
|
+
REFUND_PENDING = 31;
|
|
2384
|
+
}
|
|
2385
|
+
}
|
|
2386
|
+
|
|
2387
|
+
message PhoneNumberToLIDMapping {
|
|
2388
|
+
optional string pnJid = 1;
|
|
2389
|
+
optional string lidJid = 2;
|
|
2390
|
+
}
|
|
2391
|
+
|
|
2392
|
+
message PhotoChange {
|
|
2393
|
+
optional bytes oldPhoto = 1;
|
|
2394
|
+
optional bytes newPhoto = 2;
|
|
2395
|
+
optional uint32 newPhotoId = 3;
|
|
2396
|
+
}
|
|
2397
|
+
|
|
2398
|
+
message Point {
|
|
2399
|
+
optional double x = 3;
|
|
2400
|
+
optional double y = 4;
|
|
2401
|
+
}
|
|
2402
|
+
|
|
2403
|
+
message PollAdditionalMetadata { optional bool pollInvalidated = 1; }
|
|
2404
|
+
message PollEncValue { optional bytes encPayload = 1; optional bytes encIv = 2; }
|
|
2405
|
+
|
|
2406
|
+
message PollUpdate {
|
|
2407
|
+
optional MessageKey pollUpdateMessageKey = 1;
|
|
2408
|
+
optional Message.PollVoteMessage vote = 2;
|
|
2409
|
+
optional int64 senderTimestampMs = 3;
|
|
2410
|
+
optional int64 serverTimestampMs = 4;
|
|
2411
|
+
optional bool unread = 5;
|
|
2412
|
+
}
|
|
2413
|
+
|
|
2414
|
+
message PrimaryEphemeralIdentity {
|
|
2415
|
+
optional bytes publicKey = 1;
|
|
2416
|
+
optional bytes nonce = 2;
|
|
2417
|
+
}
|
|
2418
|
+
|
|
2419
|
+
message ProcessedVideo {
|
|
2420
|
+
optional string directPath = 1;
|
|
2421
|
+
optional bytes fileSha256 = 2;
|
|
2422
|
+
optional uint32 height = 3;
|
|
2423
|
+
optional uint32 width = 4;
|
|
2424
|
+
optional uint64 fileLength = 5;
|
|
2425
|
+
optional uint32 bitrate = 6;
|
|
2426
|
+
optional VideoQuality quality = 7;
|
|
2427
|
+
repeated string capabilities = 8;
|
|
2428
|
+
enum VideoQuality { UNDEFINED = 0; LOW = 1; MID = 2; HIGH = 3; }
|
|
2429
|
+
}
|
|
2430
|
+
|
|
2431
|
+
message ProloguePayload {
|
|
2432
|
+
optional bytes companionEphemeralIdentity = 1;
|
|
2433
|
+
optional CompanionCommitment commitment = 2;
|
|
2434
|
+
}
|
|
2435
|
+
|
|
2436
|
+
message CompanionCommitment { optional bytes hash = 1; }
|
|
2437
|
+
|
|
2438
|
+
message Pushname {
|
|
2439
|
+
optional string id = 1;
|
|
2440
|
+
optional string pushname = 2;
|
|
2441
|
+
}
|
|
2442
|
+
|
|
2443
|
+
|
|
2444
|
+
// ─── REACTION ────────────────────────────────────────────────
|
|
2445
|
+
|
|
2446
|
+
message Reaction {
|
|
2447
|
+
optional MessageKey key = 1;
|
|
2448
|
+
optional string text = 2;
|
|
2449
|
+
optional string groupingKey = 3;
|
|
2450
|
+
optional int64 senderTimestampMs = 4;
|
|
2451
|
+
optional bool unread = 5;
|
|
2452
|
+
}
|
|
2453
|
+
|
|
2454
|
+
message RecentEmojiWeight {
|
|
2455
|
+
optional string emoji = 1;
|
|
2456
|
+
optional float weight = 2;
|
|
2457
|
+
}
|
|
2458
|
+
|
|
2459
|
+
message RecordStructure {
|
|
2460
|
+
optional SessionStructure currentSession = 1;
|
|
2461
|
+
repeated SessionStructure previousSessions = 2;
|
|
2462
|
+
}
|
|
2463
|
+
|
|
2464
|
+
message ReportingTokenInfo { optional bytes reportingTag = 1; }
|
|
2465
|
+
|
|
2466
|
+
|
|
2467
|
+
// ─── SESSION ─────────────────────────────────────────────────
|
|
2468
|
+
|
|
2469
|
+
message SessionStructure {
|
|
2470
|
+
optional uint32 sessionVersion = 1;
|
|
2471
|
+
optional bytes localIdentityPublic = 2;
|
|
2472
|
+
optional bytes remoteIdentityPublic = 3;
|
|
2473
|
+
optional bytes rootKey = 4;
|
|
2474
|
+
optional uint32 previousCounter = 5;
|
|
2475
|
+
optional Chain senderChain = 6;
|
|
2476
|
+
repeated Chain receiverChains = 7;
|
|
2477
|
+
optional PendingKeyExchange pendingKeyExchange = 8;
|
|
2478
|
+
optional PendingPreKey pendingPreKey = 9;
|
|
2479
|
+
optional uint32 remoteRegistrationId = 10;
|
|
2480
|
+
optional uint32 localRegistrationId = 11;
|
|
2481
|
+
optional bool needsRefresh = 12;
|
|
2482
|
+
optional bytes aliceBaseKey = 13;
|
|
2483
|
+
|
|
2484
|
+
message Chain {
|
|
2485
|
+
optional bytes senderRatchetKey = 1;
|
|
2486
|
+
optional bytes senderRatchetKeyPrivate = 2;
|
|
2487
|
+
optional ChainKey chainKey = 3;
|
|
2488
|
+
repeated MessageKey messageKeys = 4;
|
|
2489
|
+
|
|
2490
|
+
message ChainKey { optional uint32 index = 1; optional bytes key = 2; }
|
|
2491
|
+
message MessageKey { optional uint32 index = 1; optional bytes cipherKey = 2; optional bytes macKey = 3; optional bytes iv = 4; }
|
|
2492
|
+
}
|
|
2493
|
+
|
|
2494
|
+
message PendingKeyExchange {
|
|
2495
|
+
optional uint32 sequence = 1;
|
|
2496
|
+
optional bytes localBaseKey = 2;
|
|
2497
|
+
optional bytes localBaseKeyPrivate = 3;
|
|
2498
|
+
optional bytes localRatchetKey = 4;
|
|
2499
|
+
optional bytes localRatchetKeyPrivate = 5;
|
|
2500
|
+
optional bytes localIdentityKey = 7;
|
|
2501
|
+
optional bytes localIdentityKeyPrivate = 8;
|
|
2502
|
+
}
|
|
2503
|
+
|
|
2504
|
+
message PendingPreKey {
|
|
2505
|
+
optional uint32 preKeyId = 1;
|
|
2506
|
+
optional int32 signedPreKeyId = 3;
|
|
2507
|
+
optional bytes baseKey = 2;
|
|
2508
|
+
}
|
|
2509
|
+
}
|
|
2510
|
+
|
|
2511
|
+
message ServerErrorReceipt { optional string stanzaId = 1; }
|
|
2512
|
+
|
|
2513
|
+
|
|
2514
|
+
// ─── STATUS ──────────────────────────────────────────────────
|
|
2515
|
+
|
|
2516
|
+
message StatusAttribution {
|
|
2517
|
+
optional Type type = 1;
|
|
2518
|
+
optional string actionUrl = 2;
|
|
2519
|
+
oneof attributionData {
|
|
2520
|
+
StatusReshare statusReshare = 3;
|
|
2521
|
+
ExternalShare externalShare = 4;
|
|
2522
|
+
Music music = 5;
|
|
2523
|
+
GroupStatus groupStatus = 6;
|
|
2524
|
+
}
|
|
2525
|
+
|
|
2526
|
+
message ExternalShare {
|
|
2527
|
+
optional string actionUrl = 1;
|
|
2528
|
+
optional Source source = 2;
|
|
2529
|
+
optional int32 duration = 3;
|
|
2530
|
+
optional string actionFallbackUrl = 4;
|
|
2531
|
+
enum Source { UNKNOWN = 0; INSTAGRAM = 1; FACEBOOK = 2; MESSENGER = 3; SPOTIFY = 4; YOUTUBE = 5; PINTEREST = 6; }
|
|
2532
|
+
}
|
|
2533
|
+
|
|
2534
|
+
message GroupStatus { optional string authorJid = 1; }
|
|
2535
|
+
|
|
2536
|
+
message Music {
|
|
2537
|
+
optional string authorName = 1;
|
|
2538
|
+
optional string songId = 2;
|
|
2539
|
+
optional string title = 3;
|
|
2540
|
+
optional string author = 4;
|
|
2541
|
+
optional string artistAttribution = 5;
|
|
2542
|
+
optional bool isExplicit = 6;
|
|
2543
|
+
}
|
|
2544
|
+
|
|
2545
|
+
message StatusReshare {
|
|
2546
|
+
optional Source source = 1;
|
|
2547
|
+
optional Metadata metadata = 2;
|
|
2548
|
+
|
|
2549
|
+
message Metadata {
|
|
2550
|
+
optional int32 duration = 1;
|
|
2551
|
+
optional string channelJid = 2;
|
|
2552
|
+
optional int32 channelMessageId = 3;
|
|
2553
|
+
optional bool hasMultipleReshares = 4;
|
|
2554
|
+
}
|
|
2555
|
+
enum Source { UNKNOWN = 0; INTERNAL_RESHARE = 1; MENTION_RESHARE = 2; CHANNEL_RESHARE = 3; }
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
enum Type { RESHARE = 0; EXTERNAL_SHARE = 1; MUSIC = 2; STATUS_MENTION = 3; GROUP_STATUS = 4; }
|
|
2559
|
+
}
|
|
2560
|
+
|
|
2561
|
+
message StatusMentionMessage { optional Message quotedStatus = 1; }
|
|
2562
|
+
message StatusPSA {
|
|
2563
|
+
optional uint64 campaignId = 44;
|
|
2564
|
+
optional uint64 campaignExpirationTimestamp = 45;
|
|
2565
|
+
}
|
|
2566
|
+
|
|
2567
|
+
|
|
2568
|
+
// ─── STICKER ─────────────────────────────────────────────────
|
|
2569
|
+
|
|
2570
|
+
message StickerMetadata {
|
|
2571
|
+
optional string url = 1;
|
|
2572
|
+
optional bytes fileSha256 = 2;
|
|
2573
|
+
optional bytes fileEncSha256 = 3;
|
|
2574
|
+
optional bytes mediaKey = 4;
|
|
2575
|
+
optional string mimetype = 5;
|
|
2576
|
+
optional uint32 height = 6;
|
|
2577
|
+
optional uint32 width = 7;
|
|
2578
|
+
optional string directPath = 8;
|
|
2579
|
+
optional uint64 fileLength = 9;
|
|
2580
|
+
optional float weight = 10;
|
|
2581
|
+
optional int64 lastStickerSentTs = 11;
|
|
2582
|
+
optional bool isLottie = 12;
|
|
2583
|
+
}
|
|
2584
|
+
|
|
2585
|
+
|
|
2586
|
+
// ─── SYNC ────────────────────────────────────────────────────
|
|
2587
|
+
|
|
2588
|
+
message SyncActionData {
|
|
2589
|
+
optional bytes index = 1;
|
|
2590
|
+
optional SyncActionValue value = 2;
|
|
2591
|
+
optional bytes padding = 3;
|
|
2592
|
+
optional int32 version = 4;
|
|
2593
|
+
}
|
|
2594
|
+
|
|
2595
|
+
message SyncActionValue {
|
|
2596
|
+
optional int64 timestamp = 1;
|
|
2597
|
+
optional StarAction starAction = 2;
|
|
2598
|
+
optional ContactAction contactAction = 3;
|
|
2599
|
+
optional MuteAction muteAction = 4;
|
|
2600
|
+
optional PinAction pinAction = 5;
|
|
2601
|
+
optional SecurityNotificationSetting securityNotificationSetting = 6;
|
|
2602
|
+
optional PushNameSetting pushNameSetting = 7;
|
|
2603
|
+
optional QuickReplyAction quickReplyAction = 8;
|
|
2604
|
+
optional RecentEmojiWeightsAction recentEmojiWeightsAction = 11;
|
|
2605
|
+
optional LabelEditAction labelEditAction = 14;
|
|
2606
|
+
optional LabelAssociationAction labelAssociationAction = 15;
|
|
2607
|
+
optional LocaleSetting localeSetting = 16;
|
|
2608
|
+
optional ArchiveChatAction archiveChatAction = 17;
|
|
2609
|
+
optional DeleteMessageForMeAction deleteMessageForMeAction = 18;
|
|
2610
|
+
optional MarkChatAsReadAction markChatAsReadAction = 20;
|
|
2611
|
+
optional ClearChatAction clearChatAction = 21;
|
|
2612
|
+
optional DeleteChatAction deleteChatAction = 22;
|
|
2613
|
+
optional UnarchiveChatsSetting unarchiveChatsSetting = 23;
|
|
2614
|
+
optional StickerAction stickerAction = 33;
|
|
2615
|
+
optional CallLogAction callLogAction = 42;
|
|
2616
|
+
optional LockChatAction lockChatAction = 50;
|
|
2617
|
+
optional DeviceCapabilities deviceCapabilities = 54;
|
|
2618
|
+
|
|
2619
|
+
message ArchiveChatAction { optional bool archived = 1; optional SyncActionMessageRange messageRange = 2; }
|
|
2620
|
+
message CallLogAction { optional CallLogRecord callLogRecord = 1; }
|
|
2621
|
+
message ClearChatAction { optional SyncActionMessageRange messageRange = 1; }
|
|
2622
|
+
message ContactAction { optional string fullName = 1; optional string firstName = 2; optional string lidJid = 3; optional bool saveOnPrimaryAddressbook = 4; optional string pnJid = 5; }
|
|
2623
|
+
message DeleteChatAction { optional SyncActionMessageRange messageRange = 1; }
|
|
2624
|
+
message DeleteMessageForMeAction { optional bool deleteMedia = 1; optional int64 messageTimestamp = 2; }
|
|
2625
|
+
message LabelAssociationAction { optional bool labeled = 1; }
|
|
2626
|
+
message LabelEditAction { optional string name = 1; optional int32 color = 2; optional int32 predefinedId = 3; optional bool deleted = 4; optional int32 orderIndex = 5; optional bool isActive = 6; }
|
|
2627
|
+
message LocaleSetting { optional string locale = 1; }
|
|
2628
|
+
message LockChatAction { optional bool locked = 1; }
|
|
2629
|
+
message MarkChatAsReadAction { optional bool read = 1; optional SyncActionMessageRange messageRange = 2; }
|
|
2630
|
+
message MuteAction { optional bool muted = 1; optional int64 muteEndTimestamp = 2; optional bool autoMuted = 3; }
|
|
2631
|
+
message PinAction { optional bool pinned = 1; }
|
|
2632
|
+
message PushNameSetting { optional string name = 1; }
|
|
2633
|
+
message QuickReplyAction { optional string shortcut = 1; optional string message = 2; repeated string keywords = 3; optional int32 count = 4; optional bool deleted = 5; }
|
|
2634
|
+
message RecentEmojiWeightsAction { repeated RecentEmojiWeight weights = 1; }
|
|
2635
|
+
message SecurityNotificationSetting { optional bool showNotification = 1; }
|
|
2636
|
+
message StarAction { optional bool starred = 1; }
|
|
2637
|
+
message StickerAction { optional string url = 1; optional bytes fileEncSha256 = 2; optional bytes mediaKey = 3; optional string mimetype = 4; optional uint32 height = 5; optional uint32 width = 6; optional string directPath = 7; optional uint64 fileLength = 8; optional bool isFavorite = 9; optional bool isLottie = 11; }
|
|
2638
|
+
message UnarchiveChatsSetting { optional bool unarchiveChats = 1; }
|
|
2639
|
+
|
|
2640
|
+
message SyncActionMessage { optional MessageKey key = 1; optional int64 timestamp = 2; }
|
|
2641
|
+
message SyncActionMessageRange { optional int64 lastMessageTimestamp = 1; optional int64 lastSystemMessageTimestamp = 2; repeated SyncActionMessage messages = 3; }
|
|
2642
|
+
}
|
|
2643
|
+
|
|
2644
|
+
message SyncdIndex { optional bytes blob = 1; }
|
|
2645
|
+
message SyncdMutation { optional SyncdOperation operation = 1; optional SyncdRecord record = 2; enum SyncdOperation { SET = 0; REMOVE = 1; } }
|
|
2646
|
+
message SyncdMutations { repeated SyncdMutation mutations = 1; }
|
|
2647
|
+
message SyncdPatch {
|
|
2648
|
+
optional SyncdVersion version = 1;
|
|
2649
|
+
repeated SyncdMutation mutations = 2;
|
|
2650
|
+
optional ExternalBlobReference externalMutations = 3;
|
|
2651
|
+
optional bytes snapshotMac = 4;
|
|
2652
|
+
optional bytes patchMac = 5;
|
|
2653
|
+
optional KeyId keyId = 6;
|
|
2654
|
+
optional ExitCode exitCode = 7;
|
|
2655
|
+
optional uint32 deviceIndex = 8;
|
|
2656
|
+
}
|
|
2657
|
+
message SyncdRecord { optional SyncdIndex index = 1; optional SyncdValue value = 2; optional KeyId keyId = 3; }
|
|
2658
|
+
message SyncdSnapshot { optional SyncdVersion version = 1; repeated SyncdRecord records = 2; optional bytes mac = 3; optional KeyId keyId = 4; }
|
|
2659
|
+
message SyncdValue { optional bytes blob = 1; }
|
|
2660
|
+
message SyncdVersion { optional uint64 version = 1; }
|
|
2661
|
+
message ExitCode { optional uint64 code = 1; optional string text = 2; }
|
|
2662
|
+
|
|
2663
|
+
|
|
2664
|
+
// ─── MISC ────────────────────────────────────────────────────
|
|
2665
|
+
|
|
2666
|
+
message TapLinkAction {
|
|
2667
|
+
optional string title = 1;
|
|
2668
|
+
optional string tapUrl = 2;
|
|
2669
|
+
}
|
|
2670
|
+
|
|
2671
|
+
message TemplateButton {
|
|
2672
|
+
optional uint32 index = 4;
|
|
2673
|
+
oneof button {
|
|
2674
|
+
QuickReplyButton quickReplyButton = 1;
|
|
2675
|
+
URLButton urlButton = 2;
|
|
2676
|
+
CallButton callButton = 3;
|
|
2677
|
+
}
|
|
2678
|
+
|
|
2679
|
+
message CallButton { optional HighlyStructuredMessage displayText = 1; optional HighlyStructuredMessage phoneNumber = 2; }
|
|
2680
|
+
message QuickReplyButton { optional HighlyStructuredMessage displayText = 1; optional string id = 2; }
|
|
2681
|
+
message URLButton { optional HighlyStructuredMessage displayText = 1; optional HighlyStructuredMessage url = 2; }
|
|
2682
|
+
}
|
|
2683
|
+
|
|
2684
|
+
message ThreadID {
|
|
2685
|
+
optional ThreadType threadType = 1;
|
|
2686
|
+
optional MessageKey threadKey = 2;
|
|
2687
|
+
enum ThreadType { UNKNOWN = 0; VIEW_REPLIES = 1; }
|
|
2688
|
+
}
|
|
2689
|
+
|
|
2690
|
+
message UrlTrackingMap {
|
|
2691
|
+
repeated UrlTrackingMapElement urlTrackingMapElements = 1;
|
|
2692
|
+
message UrlTrackingMapElement {
|
|
2693
|
+
optional string originalUrl = 1;
|
|
2694
|
+
optional string unconsentedUsersUrl = 2;
|
|
2695
|
+
optional string consentedUsersUrl = 3;
|
|
2696
|
+
optional uint32 cardIndex = 4;
|
|
2697
|
+
}
|
|
2698
|
+
}
|
|
2699
|
+
|
|
2700
|
+
message UserPassword {
|
|
2701
|
+
optional Encoding encoding = 1;
|
|
2702
|
+
optional Transformer transformer = 2;
|
|
2703
|
+
repeated TransformerArg transformerArg = 3;
|
|
2704
|
+
optional bytes transformedData = 4;
|
|
2705
|
+
|
|
2706
|
+
enum Encoding { UTF8 = 0; UTF8_BROKEN = 1; }
|
|
2707
|
+
enum Transformer { NONE = 0; PBKDF2_HMAC_SHA512 = 1; PBKDF2_HMAC_SHA384 = 2; }
|
|
2708
|
+
message TransformerArg {
|
|
2709
|
+
optional string key = 1;
|
|
2710
|
+
optional Value value = 2;
|
|
2711
|
+
message Value { oneof value { bytes asBlob = 1; uint32 asUnsignedInteger = 2; } }
|
|
2712
|
+
}
|
|
2713
|
+
}
|
|
2714
|
+
|
|
2715
|
+
message UserReceipt {
|
|
2716
|
+
optional string userJid = 1;
|
|
2717
|
+
optional int64 receiptTimestamp = 2;
|
|
2718
|
+
optional int64 readTimestamp = 3;
|
|
2719
|
+
optional int64 playedTimestamp = 4;
|
|
2720
|
+
repeated string pendingDeviceJid = 5;
|
|
2721
|
+
repeated string deliveredDeviceJid = 6;
|
|
2722
|
+
}
|
|
2723
|
+
|
|
2724
|
+
message VerifiedNameCertificate {
|
|
2725
|
+
optional bytes details = 1;
|
|
2726
|
+
optional bytes signature = 2;
|
|
2727
|
+
optional bytes serverSignature = 3;
|
|
2728
|
+
|
|
2729
|
+
message Details {
|
|
2730
|
+
optional uint64 serial = 1;
|
|
2731
|
+
optional string issuer = 2;
|
|
2732
|
+
optional string verifiedName = 4;
|
|
2733
|
+
repeated LocalizedName localizedNames = 8;
|
|
2734
|
+
optional uint64 issueTime = 10;
|
|
2735
|
+
}
|
|
2736
|
+
}
|
|
2737
|
+
|
|
2738
|
+
message LocalizedName {
|
|
2739
|
+
optional string lg = 1;
|
|
2740
|
+
optional string lc = 2;
|
|
2741
|
+
optional string verifiedName = 3;
|
|
2742
|
+
}
|
|
2743
|
+
|
|
2744
|
+
message WallpaperSettings {
|
|
2745
|
+
optional string filename = 1;
|
|
2746
|
+
optional uint32 opacity = 2;
|
|
2747
|
+
}
|
|
2748
|
+
|
|
2749
|
+
|
|
2750
|
+
// ─── WEB MESSAGE INFO ────────────────────────────────────────
|
|
2751
|
+
|
|
2752
|
+
message WebMessageInfo {
|
|
2753
|
+
optional MessageKey key = 1;
|
|
2754
|
+
optional Message message = 2;
|
|
2755
|
+
optional uint64 messageTimestamp = 3;
|
|
2756
|
+
optional Status status = 4;
|
|
2757
|
+
optional string participant = 5;
|
|
2758
|
+
optional uint64 messageC2STimestamp = 6;
|
|
2759
|
+
optional bool ignore = 16;
|
|
2760
|
+
optional bool starred = 17;
|
|
2761
|
+
optional bool broadcast = 18;
|
|
2762
|
+
optional string pushName = 19;
|
|
2763
|
+
optional bool multicast = 21;
|
|
2764
|
+
optional bool urlText = 22;
|
|
2765
|
+
optional bool urlNumber = 23;
|
|
2766
|
+
optional StubType messageStubType = 24;
|
|
2767
|
+
optional bool clearMedia = 25;
|
|
2768
|
+
repeated string messageStubParameters = 26;
|
|
2769
|
+
optional uint32 duration = 27;
|
|
2770
|
+
repeated string labels = 28;
|
|
2771
|
+
optional PaymentInfo paymentInfo = 29;
|
|
2772
|
+
optional Message.LiveLocationMessage finalLiveLocation = 30;
|
|
2773
|
+
optional PaymentInfo quotedPaymentInfo = 31;
|
|
2774
|
+
optional uint64 ephemeralStartTimestamp = 32;
|
|
2775
|
+
optional uint32 ephemeralDuration = 33;
|
|
2776
|
+
optional bool ephemeralOffToOn = 34;
|
|
2777
|
+
optional bool ephemeralOutOfSync = 35;
|
|
2778
|
+
optional BizPrivacyStatus bizPrivacyStatus = 36;
|
|
2779
|
+
optional string verifiedBizName = 37;
|
|
2780
|
+
optional MediaData mediaData = 38;
|
|
2781
|
+
optional PhotoChange photoChange = 39;
|
|
2782
|
+
repeated UserReceipt userReceipt = 40;
|
|
2783
|
+
repeated Reaction reactions = 41;
|
|
2784
|
+
optional MediaData quotedStickerData = 42;
|
|
2785
|
+
optional bytes futureproofData = 43;
|
|
2786
|
+
optional StatusPSA statusPsa = 44;
|
|
2787
|
+
repeated PollUpdate pollUpdates = 45;
|
|
2788
|
+
optional PollAdditionalMetadata pollAdditionalMetadata = 46;
|
|
2789
|
+
optional string agentId = 47;
|
|
2790
|
+
optional bool statusAlreadyViewed = 48;
|
|
2791
|
+
optional bytes messageSecret = 49;
|
|
2792
|
+
optional KeepInChat keepInChat = 50;
|
|
2793
|
+
optional string originalSelfAuthorUserJidString = 51;
|
|
2794
|
+
optional uint64 revokeMessageTimestamp = 52;
|
|
2795
|
+
optional PinInChat pinInChat = 54;
|
|
2796
|
+
optional bool is1PBizBotMessage = 56;
|
|
2797
|
+
optional bool isGroupHistoryMessage = 57;
|
|
2798
|
+
optional string botMessageInvokerJid = 58;
|
|
2799
|
+
optional CommentMetadata commentMetadata = 59;
|
|
2800
|
+
repeated EventResponse eventResponses = 61;
|
|
2801
|
+
optional ReportingTokenInfo reportingTokenInfo = 62;
|
|
2802
|
+
optional uint64 newsletterServerId = 63;
|
|
2803
|
+
optional bool isMentionedInStatus = 65;
|
|
2804
|
+
repeated string statusMentions = 66;
|
|
2805
|
+
optional MessageKey targetMessageId = 67;
|
|
2806
|
+
repeated MessageAddOn messageAddOns = 68;
|
|
2807
|
+
|
|
2808
|
+
enum BizPrivacyStatus { E2EE = 0; FB = 2; BSP = 1; BSP_AND_FB = 3; }
|
|
2809
|
+
|
|
2810
|
+
enum Status {
|
|
2811
|
+
ERROR = 0;
|
|
2812
|
+
PENDING = 1;
|
|
2813
|
+
SERVER_ACK = 2;
|
|
2814
|
+
DELIVERY_ACK = 3;
|
|
2815
|
+
READ = 4;
|
|
2816
|
+
PLAYED = 5;
|
|
2817
|
+
}
|
|
2818
|
+
|
|
2819
|
+
enum StubType {
|
|
2820
|
+
UNKNOWN = 0;
|
|
2821
|
+
REVOKE = 1;
|
|
2822
|
+
CIPHERTEXT = 2;
|
|
2823
|
+
FUTUREPROOF = 3;
|
|
2824
|
+
NON_VERIFIED_TRANSITION = 4;
|
|
2825
|
+
UNVERIFIED_TRANSITION = 5;
|
|
2826
|
+
VERIFIED_TRANSITION = 6;
|
|
2827
|
+
VERIFIED_LOW_UNKNOWN = 7;
|
|
2828
|
+
VERIFIED_HIGH = 8;
|
|
2829
|
+
VERIFIED_INITIAL_UNKNOWN = 9;
|
|
2830
|
+
VERIFIED_INITIAL_LOW = 10;
|
|
2831
|
+
VERIFIED_INITIAL_HIGH = 11;
|
|
2832
|
+
GROUP_CREATE = 20;
|
|
2833
|
+
GROUP_CHANGE_SUBJECT = 21;
|
|
2834
|
+
GROUP_CHANGE_ICON = 22;
|
|
2835
|
+
GROUP_CHANGE_INVITE_LINK = 23;
|
|
2836
|
+
GROUP_CHANGE_DESCRIPTION = 24;
|
|
2837
|
+
GROUP_CHANGE_RESTRICT = 25;
|
|
2838
|
+
GROUP_CHANGE_ANNOUNCE = 26;
|
|
2839
|
+
GROUP_PARTICIPANT_ADD = 27;
|
|
2840
|
+
GROUP_PARTICIPANT_REMOVE = 28;
|
|
2841
|
+
GROUP_PARTICIPANT_PROMOTE = 29;
|
|
2842
|
+
GROUP_PARTICIPANT_DEMOTE = 30;
|
|
2843
|
+
GROUP_PARTICIPANT_INVITE = 31;
|
|
2844
|
+
GROUP_PARTICIPANT_LEAVE = 32;
|
|
2845
|
+
GROUP_PARTICIPANT_CHANGE_NUMBER = 33;
|
|
2846
|
+
BROADCAST_CREATE = 34;
|
|
2847
|
+
BROADCAST_ADD = 35;
|
|
2848
|
+
BROADCAST_REMOVE = 36;
|
|
2849
|
+
GENERIC_NOTIFICATION = 37;
|
|
2850
|
+
E2E_IDENTITY_CHANGED = 38;
|
|
2851
|
+
E2E_ENCRYPTED = 39;
|
|
2852
|
+
CALL_MISSED_VOICE = 40;
|
|
2853
|
+
CALL_MISSED_VIDEO = 41;
|
|
2854
|
+
INDIVIDUAL_CHANGE_NUMBER = 42;
|
|
2855
|
+
GROUP_DELETE = 43;
|
|
2856
|
+
GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE = 44;
|
|
2857
|
+
CALL_MISSED_GROUP_VOICE = 45;
|
|
2858
|
+
CALL_MISSED_GROUP_VIDEO = 46;
|
|
2859
|
+
PAYMENT_CIPHERTEXT = 47;
|
|
2860
|
+
PAYMENT_FUTUREPROOF = 48;
|
|
2861
|
+
CHANGE_EPHEMERAL_SETTING = 72;
|
|
2862
|
+
E2E_DEVICE_CHANGED = 73;
|
|
2863
|
+
VIEWED_ONCE = 74;
|
|
2864
|
+
E2E_ENCRYPTED_NOW = 75;
|
|
2865
|
+
E2E_IDENTITY_UNAVAILABLE = 118;
|
|
2866
|
+
GROUP_CREATING = 119;
|
|
2867
|
+
GROUP_CREATE_FAILED = 120;
|
|
2868
|
+
GROUP_BOUNCED = 121;
|
|
2869
|
+
BLOCK_CONTACT = 122;
|
|
2870
|
+
EPHEMERAL_SETTING_NOT_APPLIED = 123;
|
|
2871
|
+
SYNC_FAILED = 124;
|
|
2872
|
+
SYNCING = 125;
|
|
2873
|
+
DISAPPEARING_MODE = 130;
|
|
2874
|
+
ADMIN_REVOKE = 132;
|
|
2875
|
+
COMMUNITY_LINK_PARENT_GROUP = 134;
|
|
2876
|
+
COMMUNITY_LINK_SUB_GROUP = 136;
|
|
2877
|
+
COMMUNITY_UNLINK_PARENT_GROUP = 137;
|
|
2878
|
+
COMMUNITY_UNLINK_SUB_GROUP = 139;
|
|
2879
|
+
GROUP_PARTICIPANT_ACCEPT = 140;
|
|
2880
|
+
COMMUNITY_CREATE = 142;
|
|
2881
|
+
EPHEMERAL_KEEP_IN_CHAT = 143;
|
|
2882
|
+
GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST = 144;
|
|
2883
|
+
GROUP_MEMBERSHIP_JOIN_APPROVAL_MODE = 145;
|
|
2884
|
+
COMMUNITY_PARTICIPANT_PROMOTE = 147;
|
|
2885
|
+
COMMUNITY_PARTICIPANT_DEMOTE = 148;
|
|
2886
|
+
COMMUNITY_PARENT_GROUP_DELETED = 149;
|
|
2887
|
+
GROUP_PARTICIPANT_JOINED_GROUP_AND_PARENT_GROUP = 151;
|
|
2888
|
+
MASKED_THREAD_CREATED = 152;
|
|
2889
|
+
MASKED_THREAD_UNMASKED = 153;
|
|
2890
|
+
BIZ_CHAT_ASSIGNMENT = 154;
|
|
2891
|
+
CHAT_PSA = 155;
|
|
2892
|
+
CHAT_POLL_CREATION_MESSAGE = 156;
|
|
2893
|
+
COMMUNITY_PARENT_GROUP_SUBJECT_CHANGED = 158;
|
|
2894
|
+
CAG_INVITE_AUTO_ADD = 159;
|
|
2895
|
+
BIZ_CHAT_ASSIGNMENT_UNASSIGN = 160;
|
|
2896
|
+
CAG_INVITE_AUTO_JOINED = 161;
|
|
2897
|
+
SCHEDULED_CALL_START_MESSAGE = 162;
|
|
2898
|
+
COMMUNITY_INVITE_RICH = 163;
|
|
2899
|
+
GROUP_MEMBER_ADD_MODE = 171;
|
|
2900
|
+
GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST_NON_ADMIN_ADD = 172;
|
|
2901
|
+
COMMUNITY_CHANGE_DESCRIPTION = 173;
|
|
2902
|
+
PINNED_MESSAGE_IN_CHAT = 177;
|
|
2903
|
+
LINKED_GROUP_CALL_START = 181;
|
|
2904
|
+
EMPTY_SUBGROUP_CREATE = 183;
|
|
2905
|
+
SCHEDULED_CALL_CANCEL = 184;
|
|
2906
|
+
GROUP_CHANGE_RECENT_HISTORY_SHARING = 186;
|
|
2907
|
+
GENERAL_CHAT_CREATE = 188;
|
|
2908
|
+
GENERAL_CHAT_ADD = 189;
|
|
2909
|
+
SUGGESTED_SUBGROUP_ANNOUNCE = 191;
|
|
2910
|
+
CHANGE_USERNAME = 193;
|
|
2911
|
+
REMINDER_SETUP_MESSAGE = 198;
|
|
2912
|
+
REMINDER_SENT_MESSAGE = 199;
|
|
2913
|
+
REMINDER_CANCEL_MESSAGE = 200;
|
|
2914
|
+
GROUP_DEACTIVATED = 203;
|
|
2915
|
+
EVENT_UPDATED = 205;
|
|
2916
|
+
EVENT_CANCELED = 206;
|
|
2917
|
+
COMMUNITY_OWNER_UPDATED = 207;
|
|
2918
|
+
STATUS_MENTION = 210;
|
|
2919
|
+
CHANGE_LID = 213;
|
|
2920
|
+
CHANGE_LIMIT_SHARING = 216;
|
|
2921
|
+
GROUP_MEMBER_LINK_MODE = 217;
|
|
2922
|
+
}
|
|
2923
|
+
}
|
|
2924
|
+
|
|
2925
|
+
message WebNotificationsInfo {
|
|
2926
|
+
optional uint64 timestamp = 2;
|
|
2927
|
+
optional uint32 unreadChats = 3;
|
|
2928
|
+
optional uint32 notifyMessageCount = 4;
|
|
2929
|
+
repeated WebMessageInfo notifyMessages = 5;
|
|
2930
|
+
}
|
|
2931
|
+
|
|
2932
|
+
message CommentMetadata {
|
|
2933
|
+
optional MessageKey commentParentKey = 1;
|
|
2934
|
+
optional uint32 replyCount = 2;
|
|
2935
|
+
}
|
|
2936
|
+
|
|
2937
|
+
message EventAdditionalMetadata { optional bool isStale = 1; }
|
|
2938
|
+
|
|
2939
|
+
message EventResponse {
|
|
2940
|
+
optional MessageKey eventResponseMessageKey = 1;
|
|
2941
|
+
optional int64 timestampMs = 2;
|
|
2942
|
+
optional Message.EventResponseMessage eventResponseMessage = 3;
|
|
2943
|
+
optional bool unread = 4;
|
|
2944
|
+
}
|
|
2945
|
+
|
|
2946
|
+
message LegacyMessage {
|
|
2947
|
+
optional Message.EventResponseMessage eventResponseMessage = 1;
|
|
2948
|
+
optional Message.PollVoteMessage pollVote = 2;
|
|
2949
|
+
}
|
|
2950
|
+
|
|
2951
|
+
message MessageSecretMessage {
|
|
2952
|
+
optional sfixed32 version = 1;
|
|
2953
|
+
optional bytes encIv = 2;
|
|
2954
|
+
optional bytes encPayload = 3;
|
|
2955
|
+
}
|
|
2956
|
+
|
|
2957
|
+
message AIQueryFanout {
|
|
2958
|
+
optional MessageKey messageKey = 1;
|
|
2959
|
+
optional Message message = 2;
|
|
2960
|
+
optional int64 timestamp = 3;
|
|
2961
|
+
}
|
|
2962
|
+
|
|
2963
|
+
message AIRichResponseMessage {
|
|
2964
|
+
optional AIRichResponseMessageType type = 1;
|
|
2965
|
+
repeated AIRichResponseSubMessage submessages = 2;
|
|
2966
|
+
optional AIRichResponseUnifiedResponse unifiedResponse = 3;
|
|
2967
|
+
optional ContextInfo contextInfo = 4;
|
|
2968
|
+
|
|
2969
|
+
enum AIRichResponseMessageType { AI_RICH_RESPONSE_TYPE_UNKNOWN = 0; AI_RICH_RESPONSE_TYPE_STANDARD = 1; }
|
|
2970
|
+
|
|
2971
|
+
message AIRichResponseSubMessage {
|
|
2972
|
+
optional AIRichResponseSubMessageType messageType = 1;
|
|
2973
|
+
optional string messageText = 3;
|
|
2974
|
+
}
|
|
2975
|
+
|
|
2976
|
+
enum AIRichResponseSubMessageType {
|
|
2977
|
+
AI_RICH_RESPONSE_UNKNOWN = 0;
|
|
2978
|
+
AI_RICH_RESPONSE_GRID_IMAGE = 1;
|
|
2979
|
+
AI_RICH_RESPONSE_TEXT = 2;
|
|
2980
|
+
AI_RICH_RESPONSE_INLINE_IMAGE = 3;
|
|
2981
|
+
AI_RICH_RESPONSE_TABLE = 4;
|
|
2982
|
+
AI_RICH_RESPONSE_CODE = 5;
|
|
2983
|
+
AI_RICH_RESPONSE_DYNAMIC = 6;
|
|
2984
|
+
AI_RICH_RESPONSE_MAP = 7;
|
|
2985
|
+
AI_RICH_RESPONSE_LATEX = 8;
|
|
2986
|
+
AI_RICH_RESPONSE_CONTENT_ITEMS = 9;
|
|
2987
|
+
}
|
|
2988
|
+
|
|
2989
|
+
message AIRichResponseUnifiedResponse { optional bytes data = 1; }
|
|
2990
|
+
}
|
|
2991
|
+
|
|
2992
|
+
message HighlyStructuredMessage {}
|
|
2993
|
+
|
|
2994
|
+
// Re-export for cross-reference
|
|
2995
|
+
message PremiumMessageInfo { optional string serverCampaignId = 1; }
|