diff options
author | Wim <wim@42.be> | 2022-08-13 16:14:26 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-13 16:14:26 +0200 |
commit | 6a3fc713978a0c1c9290a4afd08b47886b49b635 (patch) | |
tree | aa62cd85cf5671646c75ee38b3fc140ef7edcea8 /vendor/go.mau.fi/whatsmeow/binary/proto/def.proto | |
parent | 3c4192ebf6a32e30cdd23a9644c2ceca72a006fa (diff) | |
download | matterbridge-msglm-6a3fc713978a0c1c9290a4afd08b47886b49b635.tar.gz matterbridge-msglm-6a3fc713978a0c1c9290a4afd08b47886b49b635.tar.bz2 matterbridge-msglm-6a3fc713978a0c1c9290a4afd08b47886b49b635.zip |
Update dependencies and go1.18 (#1873)
* Update dependencies and go1.18
* Exclude unnecessary linters and update build to go1.18
Diffstat (limited to 'vendor/go.mau.fi/whatsmeow/binary/proto/def.proto')
-rw-r--r-- | vendor/go.mau.fi/whatsmeow/binary/proto/def.proto | 1541 |
1 files changed, 806 insertions, 735 deletions
diff --git a/vendor/go.mau.fi/whatsmeow/binary/proto/def.proto b/vendor/go.mau.fi/whatsmeow/binary/proto/def.proto index 33f27d42..b44a7e4a 100644 --- a/vendor/go.mau.fi/whatsmeow/binary/proto/def.proto +++ b/vendor/go.mau.fi/whatsmeow/binary/proto/def.proto @@ -32,9 +32,7 @@ message ADVDeviceIdentity { } message DeviceProps { - optional string os = 1; - optional AppVersion version = 2; - enum DevicePropsPlatformType { + enum PlatformType { UNKNOWN = 0; CHROME = 1; FIREFOX = 2; @@ -50,47 +48,29 @@ message DeviceProps { CATALINA = 12; TCL_TV = 13; } - optional DevicePropsPlatformType platformType = 3; + message AppVersion { + optional uint32 primary = 1; + optional uint32 secondary = 2; + optional uint32 tertiary = 3; + optional uint32 quaternary = 4; + optional uint32 quinary = 5; + } + + optional string os = 1; + optional AppVersion version = 2; + optional PlatformType platformType = 3; optional bool requireFullSync = 4; } -message AppVersion { - optional uint32 primary = 1; - optional uint32 secondary = 2; - optional uint32 tertiary = 3; - optional uint32 quaternary = 4; - optional uint32 quinary = 5; -} - -message ProductSnapshot { - optional ImageMessage productImage = 1; - optional string productId = 2; - optional string title = 3; - optional string description = 4; - optional string currencyCode = 5; - optional int64 priceAmount1000 = 6; - optional string retailerId = 7; - optional string url = 8; - optional uint32 productImageCount = 9; - optional string firstImageId = 11; - optional int64 salePriceAmount1000 = 12; -} - -message CatalogSnapshot { - optional ImageMessage catalogImage = 1; - optional string title = 2; - optional string description = 3; -} - message PollVoteMessage { repeated bytes selectedOptions = 1; - optional int64 senderTimestampMs = 2; } message PollUpdateMessage { optional MessageKey pollCreationMessageKey = 1; optional PollEncValue vote = 2; optional PollUpdateMessageMetadata metadata = 3; + optional int64 senderTimestampMs = 4; } message PollUpdateMessageMetadata { @@ -102,6 +82,10 @@ message PollEncValue { } message PollCreationMessage { + message Option { + optional string optionName = 1; + } + optional bytes encKey = 1; optional string name = 2; repeated Option options = 3; @@ -109,33 +93,29 @@ message PollCreationMessage { optional ContextInfo contextInfo = 5; } -message Option { - optional string optionName = 1; -} - message PaymentInviteMessage { - enum PaymentInviteMessageServiceType { + enum ServiceType { UNKNOWN = 0; FBPAY = 1; NOVI = 2; UPI = 3; } - optional PaymentInviteMessageServiceType serviceType = 1; + optional ServiceType serviceType = 1; optional int64 expiryTimestamp = 2; } message OrderMessage { + enum OrderSurface { + CATALOG = 1; + } + enum OrderStatus { + INQUIRY = 1; + } optional string orderId = 1; optional bytes thumbnail = 2; optional int32 itemCount = 3; - enum OrderMessageOrderStatus { - INQUIRY = 1; - } - optional OrderMessageOrderStatus status = 4; - enum OrderMessageOrderSurface { - CATALOG = 1; - } - optional OrderMessageOrderSurface surface = 5; + optional OrderStatus status = 4; + optional OrderSurface surface = 5; optional string message = 6; optional string orderTitle = 7; optional string sellerJid = 8; @@ -174,68 +154,68 @@ message LiveLocationMessage { } message ListResponseMessage { - optional string title = 1; - enum ListResponseMessageListType { + message SingleSelectReply { + optional string selectedRowId = 1; + } + + enum ListType { UNKNOWN = 0; SINGLE_SELECT = 1; } - optional ListResponseMessageListType listType = 2; + optional string title = 1; + optional ListType listType = 2; optional SingleSelectReply singleSelectReply = 3; optional ContextInfo contextInfo = 4; optional string description = 5; } -message SingleSelectReply { - optional string selectedRowId = 1; -} - message ListMessage { - optional string title = 1; - optional string description = 2; - optional string buttonText = 3; - enum ListMessageListType { + message Section { + optional string title = 1; + repeated Row rows = 2; + } + + message Row { + optional string title = 1; + optional string description = 2; + optional string rowId = 3; + } + + message Product { + optional string productId = 1; + } + + message ProductSection { + optional string title = 1; + repeated Product products = 2; + } + + message ProductListInfo { + repeated ProductSection productSections = 1; + optional ProductListHeaderImage headerImage = 2; + optional string businessOwnerJid = 3; + } + + message ProductListHeaderImage { + optional string productId = 1; + optional bytes jpegThumbnail = 2; + } + + enum ListType { UNKNOWN = 0; SINGLE_SELECT = 1; PRODUCT_LIST = 2; } - optional ListMessageListType listType = 4; + optional string title = 1; + optional string description = 2; + optional string buttonText = 3; + optional ListType listType = 4; repeated Section sections = 5; optional ProductListInfo productListInfo = 6; optional string footerText = 7; optional ContextInfo contextInfo = 8; } -message Section { - optional string title = 1; - repeated Row rows = 2; -} - -message Row { - optional string title = 1; - optional string description = 2; - optional string rowId = 3; -} - -message Product { - optional string productId = 1; -} - -message ProductSection { - optional string title = 1; - repeated Product products = 2; -} - -message ProductListInfo { - repeated ProductSection productSections = 1; - optional ProductListHeaderImage headerImage = 2; - optional string businessOwnerJid = 3; -} - -message ProductListHeaderImage { - optional string productId = 1; - optional bytes jpegThumbnail = 2; -} - message KeepInChatMessage { optional MessageKey key = 1; optional KeepType keepType = 2; @@ -243,13 +223,13 @@ message KeepInChatMessage { } message InvoiceMessage { - optional string note = 1; - optional string token = 2; - enum InvoiceMessageAttachmentType { + enum AttachmentType { IMAGE = 0; PDF = 1; } - optional InvoiceMessageAttachmentType attachmentType = 3; + optional string note = 1; + optional string token = 2; + optional AttachmentType attachmentType = 3; optional string attachmentMimetype = 4; optional bytes attachmentMediaKey = 5; optional int64 attachmentMediaKeyTimestamp = 6; @@ -260,27 +240,75 @@ message InvoiceMessage { } message InteractiveResponseMessage { - optional InteractiveResponseMessageBody body = 1; + message NativeFlowResponseMessage { + optional string name = 1; + optional string paramsJson = 2; + optional int32 version = 3; + } + + message Body { + optional string text = 1; + } + + optional Body body = 1; optional ContextInfo contextInfo = 15; oneof interactiveResponseMessage { NativeFlowResponseMessage nativeFlowResponseMessage = 2; } } -message NativeFlowResponseMessage { - optional string name = 1; - optional string paramsJson = 2; - optional int32 version = 3; -} - -// Renamed from Message$InteractiveResponseMessage$Body -message InteractiveResponseMessageBody { - optional string text = 1; -} - message InteractiveMessage { + message ShopMessage { + enum Surface { + UNKNOWN_SURFACE = 0; + FB = 1; + IG = 2; + WA = 3; + } + optional string id = 1; + optional Surface surface = 2; + optional int32 messageVersion = 3; + } + + message NativeFlowMessage { + message NativeFlowButton { + optional string name = 1; + optional string buttonParamsJson = 2; + } + + repeated NativeFlowButton buttons = 1; + optional string messageParamsJson = 2; + optional int32 messageVersion = 3; + } + + message Header { + optional string title = 1; + optional string subtitle = 2; + optional bool hasMediaAttachment = 5; + oneof media { + DocumentMessage documentMessage = 3; + ImageMessage imageMessage = 4; + bytes jpegThumbnail = 6; + VideoMessage videoMessage = 7; + } + } + + message Footer { + optional string text = 1; + } + + message CollectionMessage { + optional string bizJid = 1; + optional string id = 2; + optional int32 messageVersion = 3; + } + + message Body { + optional string text = 1; + } + optional Header header = 1; - optional InteractiveMessageBody body = 2; + optional Body body = 2; optional Footer footer = 3; optional ContextInfo contextInfo = 15; oneof interactiveMessage { @@ -290,56 +318,6 @@ message InteractiveMessage { } } -message ShopMessage { - optional string id = 1; - enum ShopMessageSurface { - UNKNOWN_SURFACE = 0; - FB = 1; - IG = 2; - WA = 3; - } - optional ShopMessageSurface surface = 2; - optional int32 messageVersion = 3; -} - -message NativeFlowMessage { - repeated NativeFlowButton buttons = 1; - optional string messageParamsJson = 2; - optional int32 messageVersion = 3; -} - -message NativeFlowButton { - optional string name = 1; - optional string buttonParamsJson = 2; -} - -message Header { - optional string title = 1; - optional string subtitle = 2; - optional bool hasMediaAttachment = 5; - oneof media { - DocumentMessage documentMessage = 3; - ImageMessage imageMessage = 4; - bytes jpegThumbnail = 6; - VideoMessage videoMessage = 7; - } -} - -message Footer { - optional string text = 1; -} - -message CollectionMessage { - optional string bizJid = 1; - optional string id = 2; - optional int32 messageVersion = 3; -} - -// Renamed from Message$InteractiveMessage$Body -message InteractiveMessageBody { - optional string text = 1; -} - message InitialSecurityNotificationSettingSync { optional bool securityNotificationEnabled = 1; } @@ -374,24 +352,72 @@ message ImageMessage { } message HistorySyncNotification { - optional bytes fileSha256 = 1; - optional uint64 fileLength = 2; - optional bytes mediaKey = 3; - optional bytes fileEncSha256 = 4; - optional string directPath = 5; - enum HistorySyncNotificationHistorySyncType { + enum HistorySyncType { INITIAL_BOOTSTRAP = 0; INITIAL_STATUS_V3 = 1; FULL = 2; RECENT = 3; PUSH_NAME = 4; } - optional HistorySyncNotificationHistorySyncType syncType = 6; + optional bytes fileSha256 = 1; + optional uint64 fileLength = 2; + optional bytes mediaKey = 3; + optional bytes fileEncSha256 = 4; + optional string directPath = 5; + optional HistorySyncType syncType = 6; optional uint32 chunkOrder = 7; optional string originalMessageId = 8; + optional uint32 progress = 9; } message HighlyStructuredMessage { + message HSMLocalizableParameter { + message HSMDateTime { + message HSMDateTimeUnixEpoch { + optional int64 timestamp = 1; + } + + message HSMDateTimeComponent { + enum DayOfWeekType { + MONDAY = 1; + TUESDAY = 2; + WEDNESDAY = 3; + THURSDAY = 4; + FRIDAY = 5; + SATURDAY = 6; + SUNDAY = 7; + } + enum CalendarType { + GREGORIAN = 1; + SOLAR_HIJRI = 2; + } + optional DayOfWeekType dayOfWeek = 1; + optional uint32 year = 2; + optional uint32 month = 3; + optional uint32 dayOfMonth = 4; + optional uint32 hour = 5; + optional uint32 minute = 6; + optional CalendarType calendar = 7; + } + + oneof datetimeOneof { + HSMDateTimeComponent component = 1; + HSMDateTimeUnixEpoch unixEpoch = 2; + } + } + + message HSMCurrency { + optional string currencyCode = 1; + optional int64 amount1000 = 2; + } + + optional string default = 1; + oneof paramOneof { + HSMCurrency currency = 2; + HSMDateTime dateTime = 3; + } + } + optional string namespace = 1; optional string elementName = 2; repeated string params = 3; @@ -403,54 +429,11 @@ message HighlyStructuredMessage { optional TemplateMessage hydratedHsm = 9; } -message HSMLocalizableParameter { - optional string default = 1; - oneof paramOneof { - HSMCurrency currency = 2; - HSMDateTime dateTime = 3; - } -} - -message HSMDateTime { - oneof datetimeOneof { - HSMDateTimeComponent component = 1; - HSMDateTimeUnixEpoch unixEpoch = 2; - } -} - -message HSMDateTimeUnixEpoch { - optional int64 timestamp = 1; -} - -message HSMDateTimeComponent { - enum HSMDateTimeComponentDayOfWeekType { - MONDAY = 1; - TUESDAY = 2; - WEDNESDAY = 3; - THURSDAY = 4; - FRIDAY = 5; - SATURDAY = 6; - SUNDAY = 7; - } - optional HSMDateTimeComponentDayOfWeekType dayOfWeek = 1; - optional uint32 year = 2; - optional uint32 month = 3; - optional uint32 dayOfMonth = 4; - optional uint32 hour = 5; - optional uint32 minute = 6; - enum HSMDateTimeComponentCalendarType { - GREGORIAN = 1; - SOLAR_HIJRI = 2; - } - optional HSMDateTimeComponentCalendarType calendar = 7; -} - -message HSMCurrency { - optional string currencyCode = 1; - optional int64 amount1000 = 2; -} - message GroupInviteMessage { + enum GroupType { + DEFAULT = 0; + PARENT = 1; + } optional string groupJid = 1; optional string inviteCode = 2; optional int64 inviteExpiration = 3; @@ -458,11 +441,7 @@ message GroupInviteMessage { optional bytes jpegThumbnail = 5; optional string caption = 6; optional ContextInfo contextInfo = 7; - enum GroupInviteMessageGroupType { - DEFAULT = 0; - PARENT = 1; - } - optional GroupInviteMessageGroupType groupType = 8; + optional GroupType groupType = 8; } message FutureProofMessage { @@ -470,14 +449,17 @@ message FutureProofMessage { } message ExtendedTextMessage { - optional string text = 1; - optional string matchedText = 2; - optional string canonicalUrl = 4; - optional string description = 5; - optional string title = 6; - optional fixed32 textArgb = 7; - optional fixed32 backgroundArgb = 8; - enum ExtendedTextMessageFontType { + enum PreviewType { + NONE = 0; + VIDEO = 1; + } + enum InviteLinkGroupType { + DEFAULT = 0; + PARENT = 1; + SUB = 2; + DEFAULT_SUB = 3; + } + enum FontType { SANS_SERIF = 0; SERIF = 1; NORICAN_REGULAR = 2; @@ -485,12 +467,15 @@ message ExtendedTextMessage { BEBASNEUE_REGULAR = 4; OSWALD_HEAVY = 5; } - optional ExtendedTextMessageFontType font = 9; - enum ExtendedTextMessagePreviewType { - NONE = 0; - VIDEO = 1; - } - optional ExtendedTextMessagePreviewType previewType = 10; + optional string text = 1; + optional string matchedText = 2; + optional string canonicalUrl = 4; + optional string description = 5; + optional string title = 6; + optional fixed32 textArgb = 7; + optional fixed32 backgroundArgb = 8; + optional FontType font = 9; + optional PreviewType previewType = 10; optional bytes jpegThumbnail = 16; optional ContextInfo contextInfo = 17; optional bool doNotPlayInline = 18; @@ -501,14 +486,10 @@ message ExtendedTextMessage { optional int64 mediaKeyTimestamp = 23; optional uint32 thumbnailHeight = 24; optional uint32 thumbnailWidth = 25; - enum ExtendedTextMessageInviteLinkGroupType { - DEFAULT = 0; - PARENT = 1; - } - optional ExtendedTextMessageInviteLinkGroupType inviteLinkGroupType = 26; + optional InviteLinkGroupType inviteLinkGroupType = 26; optional string inviteLinkParentGroupSubjectV2 = 27; optional bytes inviteLinkParentGroupThumbnailV2 = 28; - optional ExtendedTextMessageInviteLinkGroupType inviteLinkGroupTypeV2 = 29; + optional InviteLinkGroupType inviteLinkGroupTypeV2 = 29; } message DocumentMessage { @@ -531,6 +512,7 @@ message DocumentMessage { optional ContextInfo contextInfo = 17; optional uint32 thumbnailHeight = 18; optional uint32 thumbnailWidth = 19; + optional string caption = 20; } message DeviceSentMessage { @@ -572,24 +554,20 @@ message Call { } message ButtonsResponseMessage { - optional string selectedButtonId = 1; - optional ContextInfo contextInfo = 3; - enum ButtonsResponseMessageType { + enum Type { UNKNOWN = 0; DISPLAY_TEXT = 1; } - optional ButtonsResponseMessageType type = 4; + optional string selectedButtonId = 1; + optional ContextInfo contextInfo = 3; + optional Type type = 4; oneof response { string selectedDisplayText = 2; } } message ButtonsMessage { - optional string contentText = 6; - optional string footerText = 7; - optional ContextInfo contextInfo = 8; - repeated Button buttons = 9; - enum ButtonsMessageHeaderType { + enum HeaderType { UNKNOWN = 0; EMPTY = 1; TEXT = 2; @@ -598,7 +576,32 @@ message ButtonsMessage { VIDEO = 5; LOCATION = 6; } - optional ButtonsMessageHeaderType headerType = 10; + message Button { + enum Type { + UNKNOWN = 0; + RESPONSE = 1; + NATIVE_FLOW = 2; + } + message NativeFlowInfo { + optional string name = 1; + optional string paramsJson = 2; + } + + message ButtonText { + optional string displayText = 1; + } + + optional string buttonId = 1; + optional ButtonText buttonText = 2; + optional Type type = 3; + optional NativeFlowInfo nativeFlowInfo = 4; + } + + optional string contentText = 6; + optional string footerText = 7; + optional ContextInfo contextInfo = 8; + repeated Button buttons = 9; + optional HeaderType headerType = 10; oneof header { string text = 1; DocumentMessage documentMessage = 2; @@ -608,27 +611,6 @@ message ButtonsMessage { } } -message Button { - optional string buttonId = 1; - optional ButtonText buttonText = 2; - enum ButtonType { - UNKNOWN = 0; - RESPONSE = 1; - NATIVE_FLOW = 2; - } - optional ButtonType type = 3; - optional NativeFlowInfo nativeFlowInfo = 4; -} - -message NativeFlowInfo { - optional string name = 1; - optional string paramsJson = 2; -} - -message ButtonText { - optional string displayText = 1; -} - message AudioMessage { optional string url = 1; optional string mimetype = 2; @@ -698,6 +680,21 @@ message InteractiveAnnotation { } message HydratedTemplateButton { + message HydratedURLButton { + optional string displayText = 1; + optional string url = 2; + } + + message HydratedQuickReplyButton { + optional string displayText = 1; + optional string id = 2; + } + + message HydratedCallButton { + optional string displayText = 1; + optional string phoneNumber = 2; + } + optional uint32 index = 4; oneof hydratedButton { HydratedQuickReplyButton quickReplyButton = 1; @@ -706,28 +703,13 @@ message HydratedTemplateButton { } } -message HydratedURLButton { - optional string displayText = 1; - optional string url = 2; -} - -message HydratedQuickReplyButton { - optional string displayText = 1; - optional string id = 2; -} - -message HydratedCallButton { - optional string displayText = 1; - optional string phoneNumber = 2; -} - message DisappearingMode { - enum DisappearingModeInitiator { + enum Initiator { CHANGED_IN_CHAT = 0; INITIATED_BY_ME = 1; INITIATED_BY_OTHER = 2; } - optional DisappearingModeInitiator initiator = 1; + optional Initiator initiator = 1; } message DeviceListMetadata { @@ -740,6 +722,38 @@ message DeviceListMetadata { } message ContextInfo { + message ExternalAdReplyInfo { + enum MediaType { + NONE = 0; + IMAGE = 1; + VIDEO = 2; + } + optional string title = 1; + optional string body = 2; + optional MediaType mediaType = 3; + optional string thumbnailUrl = 4; + optional string mediaUrl = 5; + optional bytes thumbnail = 6; + optional string sourceType = 7; + optional string sourceId = 8; + optional string sourceUrl = 9; + optional bool containsAutoReply = 10; + optional bool renderLargerThumbnail = 11; + optional bool showAdAttribution = 12; + } + + message AdReplyInfo { + enum MediaType { + NONE = 0; + IMAGE = 1; + VIDEO = 2; + } + optional string advertiserName = 1; + optional MediaType mediaType = 2; + optional bytes jpegThumbnail = 16; + optional string caption = 17; + } + optional string stanzaId = 1; optional string participant = 2; optional Message quotedMessage = 3; @@ -765,44 +779,27 @@ message ContextInfo { optional string parentGroupJid = 35; } -message ExternalAdReplyInfo { - optional string title = 1; - optional string body = 2; - enum ExternalAdReplyInfoMediaType { - NONE = 0; - IMAGE = 1; - VIDEO = 2; - } - optional ExternalAdReplyInfoMediaType mediaType = 3; - optional string thumbnailUrl = 4; - optional string mediaUrl = 5; - optional bytes thumbnail = 6; - optional string sourceType = 7; - optional string sourceId = 8; - optional string sourceUrl = 9; - optional bool containsAutoReply = 10; - optional bool renderLargerThumbnail = 11; - optional bool showAdAttribution = 12; -} - -message AdReplyInfo { - optional string advertiserName = 1; - enum AdReplyInfoMediaType { - NONE = 0; - IMAGE = 1; - VIDEO = 2; - } - optional AdReplyInfoMediaType mediaType = 2; - optional bytes jpegThumbnail = 16; - optional string caption = 17; -} - message ActionLink { optional string url = 1; optional string buttonTitle = 2; } message TemplateButton { + message URLButton { + optional HighlyStructuredMessage displayText = 1; + optional HighlyStructuredMessage url = 2; + } + + message QuickReplyButton { + optional HighlyStructuredMessage displayText = 1; + optional string id = 2; + } + + message CallButton { + optional HighlyStructuredMessage displayText = 1; + optional HighlyStructuredMessage phoneNumber = 2; + } + optional uint32 index = 4; oneof button { QuickReplyButton quickReplyButton = 1; @@ -811,21 +808,6 @@ message TemplateButton { } } -message URLButton { - optional HighlyStructuredMessage displayText = 1; - optional HighlyStructuredMessage url = 2; -} - -message QuickReplyButton { - optional HighlyStructuredMessage displayText = 1; - optional string id = 2; -} - -message CallButton { - optional HighlyStructuredMessage displayText = 1; - optional HighlyStructuredMessage phoneNumber = 2; -} - message Point { optional int32 xDeprecated = 1; optional int32 yDeprecated = 2; @@ -834,6 +816,18 @@ message Point { } message PaymentBackground { + enum Type { + UNKNOWN = 0; + DEFAULT = 1; + } + message MediaData { + optional bytes mediaKey = 1; + optional int64 mediaKeyTimestamp = 2; + optional bytes fileSha256 = 3; + optional bytes fileEncSha256 = 4; + optional string directPath = 5; + } + optional string id = 1; optional uint64 fileLength = 2; optional uint32 width = 3; @@ -842,21 +836,8 @@ message PaymentBackground { optional fixed32 placeholderArgb = 6; optional fixed32 textArgb = 7; optional fixed32 subtextArgb = 8; - optional PBMediaData mediaData = 9; - enum PaymentBackgroundType { - UNKNOWN = 0; - DEFAULT = 1; - } - optional PaymentBackgroundType type = 10; -} - -// Renamed from PaymentBackground$MediaData -message PBMediaData { - optional bytes mediaKey = 1; - optional int64 mediaKeyTimestamp = 2; - optional bytes fileSha256 = 3; - optional bytes fileEncSha256 = 4; - optional string directPath = 5; + optional MediaData mediaData = 9; + optional Type type = 10; } message Money { @@ -909,6 +890,9 @@ message Message { optional PollCreationMessage pollCreationMessage = 49; optional PollUpdateMessage pollUpdateMessage = 50; optional KeepInChatMessage keepInChatMessage = 51; + optional FutureProofMessage documentWithCaptionMessage = 53; + optional RequestPhoneNumberMessage requestPhoneNumberMessage = 54; + optional FutureProofMessage viewOnceMessageV2 = 55; } message MessageContextInfo { @@ -919,6 +903,11 @@ message MessageContextInfo { } message VideoMessage { + enum Attribution { + NONE = 0; + GIPHY = 1; + TENOR = 2; + } optional string url = 1; optional string mimetype = 2; optional bytes fileSha256 = 3; @@ -936,12 +925,7 @@ message VideoMessage { optional bytes jpegThumbnail = 16; optional ContextInfo contextInfo = 17; optional bytes streamingSidecar = 18; - enum VideoMessageAttribution { - NONE = 0; - GIPHY = 1; - TENOR = 2; - } - optional VideoMessageAttribution gifAttribution = 19; + optional Attribution gifAttribution = 19; optional bool viewOnce = 20; optional string thumbnailDirectPath = 21; optional bytes thumbnailSha256 = 22; @@ -950,6 +934,33 @@ message VideoMessage { } message TemplateMessage { + message HydratedFourRowTemplate { + optional string hydratedContentText = 6; + optional string hydratedFooterText = 7; + repeated HydratedTemplateButton hydratedButtons = 8; + optional string templateId = 9; + oneof title { + DocumentMessage documentMessage = 1; + string hydratedTitleText = 2; + ImageMessage imageMessage = 3; + VideoMessage videoMessage = 4; + LocationMessage locationMessage = 5; + } + } + + message FourRowTemplate { + optional HighlyStructuredMessage content = 6; + optional HighlyStructuredMessage footer = 7; + repeated TemplateButton buttons = 8; + oneof title { + DocumentMessage documentMessage = 1; + HighlyStructuredMessage highlyStructuredMessage = 2; + ImageMessage imageMessage = 3; + VideoMessage videoMessage = 4; + LocationMessage locationMessage = 5; + } + } + optional ContextInfo contextInfo = 3; optional HydratedFourRowTemplate hydratedTemplate = 4; oneof format { @@ -958,33 +969,6 @@ message TemplateMessage { } } -message HydratedFourRowTemplate { - optional string hydratedContentText = 6; - optional string hydratedFooterText = 7; - repeated HydratedTemplateButton hydratedButtons = 8; - optional string templateId = 9; - oneof title { - DocumentMessage documentMessage = 1; - string hydratedTitleText = 2; - ImageMessage imageMessage = 3; - VideoMessage videoMessage = 4; - LocationMessage locationMessage = 5; - } -} - -message FourRowTemplate { - optional HighlyStructuredMessage content = 6; - optional HighlyStructuredMessage footer = 7; - repeated TemplateButton buttons = 8; - oneof title { - DocumentMessage documentMessage = 1; - HighlyStructuredMessage highlyStructuredMessage = 2; - ImageMessage imageMessage = 3; - VideoMessage videoMessage = 4; - LocationMessage locationMessage = 5; - } -} - message TemplateButtonReplyMessage { optional string selectedId = 1; optional string selectedDisplayText = 2; @@ -1027,6 +1011,14 @@ message SendPaymentMessage { optional PaymentBackground background = 4; } +enum RmrSource { + FAVORITE_STICKER = 0; + RECENT_STICKER = 1; +} +message RequestPhoneNumberMessage { + optional ContextInfo contextInfo = 1; +} + message RequestPaymentMessage { optional Message noteMessage = 4; optional string currencyCodeIso4217 = 1; @@ -1037,6 +1029,23 @@ message RequestPaymentMessage { optional PaymentBackground background = 7; } +message RequestMediaUploadResponseMessage { + message RequestMediaUploadResult { + optional string fileSha256 = 1; + optional MediaRetryNotification.ResultType mediaUploadResult = 2; + optional StickerMessage stickerMessage = 3; + } + + optional RmrSource rmrSource = 1; + optional string stanzaId = 2; + repeated RequestMediaUploadResult reuploadResult = 3; +} + +message RequestMediaUploadMessage { + repeated string fileSha256 = 1; + optional RmrSource rmrSource = 2; +} + message ReactionMessage { optional MessageKey key = 1; optional string text = 2; @@ -1045,8 +1054,7 @@ message ReactionMessage { } message ProtocolMessage { - optional MessageKey key = 1; - enum ProtocolMessageType { + enum Type { REVOKE = 0; EPHEMERAL_SETTING = 3; EPHEMERAL_SYNC_RESPONSE = 4; @@ -1056,8 +1064,12 @@ message ProtocolMessage { MSG_FANOUT_BACKFILL_REQUEST = 8; INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC = 9; APP_STATE_FATAL_EXCEPTION_NOTIFICATION = 10; + SHARE_PHONE_NUMBER = 11; + REQUEST_MEDIA_UPLOAD_MESSAGE = 12; + REQUEST_MEDIA_UPLOAD_RESPONSE_MESSAGE = 13; } - optional ProtocolMessageType type = 2; + optional MessageKey key = 1; + optional Type type = 2; optional uint32 ephemeralExpiration = 4; optional int64 ephemeralSettingTimestamp = 5; optional HistorySyncNotification historySyncNotification = 6; @@ -1066,9 +1078,31 @@ message ProtocolMessage { optional InitialSecurityNotificationSettingSync initialSecurityNotificationSettingSync = 9; optional AppStateFatalExceptionNotification appStateFatalExceptionNotification = 10; optional DisappearingMode disappearingMode = 11; + optional RequestMediaUploadMessage requestMediaUploadMessage = 12; + optional RequestMediaUploadResponseMessage requestMediaUploadResponseMessage = 13; } message ProductMessage { + message ProductSnapshot { + optional ImageMessage productImage = 1; + optional string productId = 2; + optional string title = 3; + optional string description = 4; + optional string currencyCode = 5; + optional int64 priceAmount1000 = 6; + optional string retailerId = 7; + optional string url = 8; + optional uint32 productImageCount = 9; + optional string firstImageId = 11; + optional int64 salePriceAmount1000 = 12; + } + + message CatalogSnapshot { + optional ImageMessage catalogImage = 1; + optional string title = 2; + optional string description = 3; + } + optional ProductSnapshot product = 1; optional string businessOwnerJid = 2; optional CatalogSnapshot catalog = 4; @@ -1087,25 +1121,54 @@ message WallpaperSettings { optional uint32 opacity = 2; } +message StickerMetadata { + optional string url = 1; + optional bytes fileSha256 = 2; + optional bytes fileEncSha256 = 3; + optional bytes mediaKey = 4; + optional string mimetype = 5; + optional uint32 height = 6; + optional uint32 width = 7; + optional string directPath = 8; + optional uint64 fileLength = 9; + optional float weight = 10; +} + message Pushname { optional string id = 1; optional string pushname = 2; } +message PastParticipants { + required string groupJid = 1; + repeated PastParticipant pastParticipants = 2; +} + +message PastParticipant { + enum LeaveReason { + LEFT = 0; + REMOVED = 1; + } + required string userJid = 1; + required LeaveReason leaveReason = 2; + required uint64 leaveTs = 3; +} + enum MediaVisibility { DEFAULT = 0; OFF = 1; ON = 2; } message HistorySync { - enum HistorySyncHistorySyncType { + enum HistorySyncType { INITIAL_BOOTSTRAP = 0; INITIAL_STATUS_V3 = 1; FULL = 2; RECENT = 3; PUSH_NAME = 4; + UNBLOCKING_DATA = 5; } - required HistorySyncHistorySyncType syncType = 1; + required HistorySyncType syncType = 1; repeated Conversation conversations = 2; repeated WebMessageInfo statusV3Messages = 3; optional uint32 chunkOrder = 5; @@ -1114,6 +1177,8 @@ message HistorySync { optional GlobalSettings globalSettings = 8; optional bytes threadIdUserSecret = 9; optional uint32 threadDsTimeframeOffset = 10; + repeated StickerMetadata recentStickers = 11; + repeated PastParticipants pastParticipants = 12; } message HistorySyncMsg { @@ -1122,13 +1187,13 @@ message HistorySyncMsg { } message GroupParticipant { - required string userJid = 1; - enum GroupParticipantRank { + enum Rank { REGULAR = 0; ADMIN = 1; SUPERADMIN = 2; } - optional GroupParticipantRank rank = 2; + required string userJid = 1; + optional Rank rank = 2; } message GlobalSettings { @@ -1145,6 +1210,10 @@ message GlobalSettings { } message Conversation { + enum EndOfHistoryTransferType { + COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY = 0; + COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY = 1; + } required string id = 1; repeated HistorySyncMsg messages = 2; optional string newJid = 3; @@ -1155,11 +1224,7 @@ message Conversation { optional bool endOfHistoryTransfer = 8; optional uint32 ephemeralExpiration = 9; optional int64 ephemeralSettingTimestamp = 10; - enum ConversationEndOfHistoryTransferType { - COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY = 0; - COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY = 1; - } - optional ConversationEndOfHistoryTransferType endOfHistoryTransferType = 11; + optional EndOfHistoryTransferType endOfHistoryTransferType = 11; optional uint64 conversationTimestamp = 12; optional string name = 13; optional string pHash = 14; @@ -1188,7 +1253,7 @@ message Conversation { optional string parentGroupId = 37; optional string displayName = 38; optional string pnJid = 39; - optional bool selfMasked = 40; + optional bool selfPnExposed = 40; } message AutoDownloadSettings { @@ -1198,12 +1263,22 @@ message AutoDownloadSettings { optional bool downloadDocuments = 4; } +// Duplicate type omitted +//message PollEncValue { +// optional bytes encPayload = 1; +// optional bytes encIv = 2; +//} + message MsgRowOpaqueData { optional MsgOpaqueData currentMsg = 1; optional MsgOpaqueData quotedMsg = 2; } message MsgOpaqueData { + message PollOption { + optional string name = 1; + } + optional string body = 1; optional string caption = 3; optional double lng = 5; @@ -1222,10 +1297,9 @@ message MsgOpaqueData { repeated PollOption pollOptions = 18; optional uint32 pollSelectableOptionsCount = 20; optional bytes messageSecret = 21; -} - -message PollOption { - optional string name = 1; + optional int64 senderTimestampMs = 22; + optional string pollUpdateParentKey = 23; + optional PollEncValue encPollVote = 24; } message ServerErrorReceipt { @@ -1233,15 +1307,15 @@ message ServerErrorReceipt { } message MediaRetryNotification { - optional string stanzaId = 1; - optional string directPath = 2; - enum MediaRetryNotificationResultType { + enum ResultType { GENERAL_ERROR = 0; SUCCESS = 1; NOT_FOUND = 2; DECRYPTION_ERROR = 3; } - optional MediaRetryNotificationResultType result = 3; + optional string stanzaId = 1; + optional string directPath = 2; + optional ResultType result = 3; } message MessageKey { @@ -1296,11 +1370,11 @@ message SyncdMutations { } message SyncdMutation { - enum SyncdMutationSyncdOperation { + enum SyncdOperation { SET = 0; REMOVE = 1; } - optional SyncdMutationSyncdOperation operation = 1; + optional SyncdOperation operation = 1; optional SyncdRecord record = 2; } @@ -1335,8 +1409,6 @@ message SyncActionValue { optional SecurityNotificationSetting securityNotificationSetting = 6; optional PushNameSetting pushNameSetting = 7; optional QuickReplyAction quickReplyAction = 8; - optional RecentStickerWeightsAction recentStickerWeightsAction = 9; - optional RecentStickerMetadata recentStickerMetadata = 10; optional RecentEmojiWeightsAction recentEmojiWeightsAction = 11; optional LabelEditAction labelEditAction = 14; optional LabelAssociationAction labelAssociationAction = 15; @@ -1349,12 +1421,14 @@ message SyncActionValue { optional DeleteChatAction deleteChatAction = 22; optional UnarchiveChatsSetting unarchiveChatsSetting = 23; optional PrimaryFeature primaryFeature = 24; - optional FavoriteStickerAction favoriteStickerAction = 25; optional AndroidUnsupportedActions androidUnsupportedActions = 26; optional AgentAction agentAction = 27; optional SubscriptionAction subscriptionAction = 28; optional UserStatusMuteAction userStatusMuteAction = 29; optional TimeFormatAction timeFormatAction = 30; + optional NuxAction nuxAction = 31; + optional PrimaryVersionAction primaryVersionAction = 32; + optional StickerAction stickerAction = 33; } message UserStatusMuteAction { @@ -1386,6 +1460,19 @@ message SubscriptionAction { optional int64 expirationDate = 3; } +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 uint32 deviceIdHint = 10; +} + message StarAction { optional bool starred = 1; } @@ -1394,20 +1481,6 @@ message SecurityNotificationSetting { optional bool showNotification = 1; } -message RecentStickerWeightsAction { - repeated RecentStickerWeight weights = 1; -} - -message RecentStickerMetadata { - optional string directPath = 1; - optional string encFilehash = 2; - optional string mediaKey = 3; - optional string stanzaId = 4; - optional string chatJid = 5; - optional string participant = 6; - optional bool isSentByMe = 7; -} - message RecentEmojiWeightsAction { repeated RecentEmojiWeight weights = 1; } @@ -1424,6 +1497,10 @@ message PushNameSetting { optional string name = 1; } +message PrimaryVersionAction { + optional string version = 1; +} + message PrimaryFeature { repeated string flags = 1; } @@ -1432,6 +1509,10 @@ message PinAction { optional bool pinned = 1; } +message NuxAction { + optional bool acknowledged = 1; +} + message MuteAction { optional bool muted = 1; optional int64 muteEndTimestamp = 2; @@ -1461,17 +1542,6 @@ message KeyExpiration { optional int32 expiredKeyEpoch = 1; } -message FavoriteStickerAction { - optional string directPath = 1; - optional string lastUploadTimestamp = 2; - optional string handle = 3; - optional string encFilehash = 4; - optional string stickerHashWithoutMeta = 5; - optional string mediaKey = 6; - optional int64 mediaKeyTimestamp = 7; - optional bool isFavorite = 8; -} - message DeleteMessageForMeAction { optional bool deleteMedia = 1; optional int64 messageTimestamp = 2; @@ -1512,31 +1582,25 @@ message SyncActionData { optional int32 version = 4; } -message RecentStickerWeight { - optional string filehash = 1; - optional float weight = 2; -} - message RecentEmojiWeight { optional string emoji = 1; optional float weight = 2; } message VerifiedNameCertificate { + message Details { + optional uint64 serial = 1; + optional string issuer = 2; + optional string verifiedName = 4; + repeated LocalizedName localizedNames = 8; + optional uint64 issueTime = 10; + } + optional bytes details = 1; optional bytes signature = 2; optional bytes serverSignature = 3; } -// Renamed from VerifiedNameCertificate$Details -message VerifiedNameDetails { - optional uint64 serial = 1; - optional string issuer = 2; - optional string verifiedName = 4; - repeated LocalizedName localizedNames = 8; - optional uint64 issueTime = 10; -} - message LocalizedName { optional string lg = 1; optional string lc = 2; @@ -1544,25 +1608,25 @@ message LocalizedName { } message BizIdentityInfo { - enum BizIdentityInfoVerifiedLevelValue { + enum VerifiedLevelValue { UNKNOWN = 0; LOW = 1; HIGH = 2; } - optional BizIdentityInfoVerifiedLevelValue vlevel = 1; - optional VerifiedNameCertificate vnameCert = 2; - optional bool signed = 3; - optional bool revoked = 4; - enum BizIdentityInfoHostStorageType { + enum HostStorageType { ON_PREMISE = 0; FACEBOOK = 1; } - optional BizIdentityInfoHostStorageType hostStorage = 5; - enum BizIdentityInfoActualActorsType { + enum ActualActorsType { SELF = 0; BSP = 1; } - optional BizIdentityInfoActualActorsType actualActors = 6; + optional VerifiedLevelValue vlevel = 1; + optional VerifiedNameCertificate vnameCert = 2; + optional bool signed = 3; + optional bool revoked = 4; + optional HostStorageType hostStorage = 5; + optional ActualActorsType actualActors = 6; optional uint64 privacyModeTs = 7; optional uint64 featureControls = 8; } @@ -1573,52 +1637,166 @@ message BizAccountPayload { } message BizAccountLinkInfo { - optional uint64 whatsappBizAcctFbid = 1; - optional string whatsappAcctNumber = 2; - optional uint64 issueTime = 3; - enum BizAccountLinkInfoHostStorageType { + enum HostStorageType { ON_PREMISE = 0; FACEBOOK = 1; } - optional BizAccountLinkInfoHostStorageType hostStorage = 4; - enum BizAccountLinkInfoAccountType { + enum AccountType { ENTERPRISE = 0; } - optional BizAccountLinkInfoAccountType accountType = 5; + optional uint64 whatsappBizAcctFbid = 1; + optional string whatsappAcctNumber = 2; + optional uint64 issueTime = 3; + optional HostStorageType hostStorage = 4; + optional AccountType accountType = 5; } message HandshakeMessage { - optional ClientHello clientHello = 2; - optional ServerHello serverHello = 3; - optional ClientFinish clientFinish = 4; + optional HandshakeClientHello clientHello = 2; + optional HandshakeServerHello serverHello = 3; + optional HandshakeClientFinish clientFinish = 4; } -message ServerHello { +message HandshakeServerHello { optional bytes ephemeral = 1; optional bytes static = 2; optional bytes payload = 3; } -message ClientHello { +message HandshakeClientHello { optional bytes ephemeral = 1; optional bytes static = 2; optional bytes payload = 3; } -message ClientFinish { +message HandshakeClientFinish { optional bytes static = 1; optional bytes payload = 2; } message ClientPayload { - optional uint64 username = 1; - optional bool passive = 3; - optional UserAgent userAgent = 5; - optional WebInfo webInfo = 6; - optional string pushName = 7; - optional sfixed32 sessionId = 9; - optional bool shortConnect = 10; - enum ClientPayloadConnectType { + message WebInfo { + message WebdPayload { + optional bool usesParticipantInKey = 1; + optional bool supportsStarredMessages = 2; + optional bool supportsDocumentMessages = 3; + optional bool supportsUrlMessages = 4; + optional bool supportsMediaRetry = 5; + optional bool supportsE2EImage = 6; + optional bool supportsE2EVideo = 7; + optional bool supportsE2EAudio = 8; + optional bool supportsE2EDocument = 9; + optional string documentTypes = 10; + optional bytes features = 11; + } + + enum WebSubPlatform { + WEB_BROWSER = 0; + APP_STORE = 1; + WIN_STORE = 2; + DARWIN = 3; + WIN32 = 4; + } + optional string refToken = 1; + optional string version = 2; + optional WebdPayload webdPayload = 3; + optional WebSubPlatform webSubPlatform = 4; + } + + message UserAgent { + enum ReleaseChannel { + RELEASE = 0; + BETA = 1; + ALPHA = 2; + DEBUG = 3; + } + enum Platform { + ANDROID = 0; + IOS = 1; + WINDOWS_PHONE = 2; + BLACKBERRY = 3; + BLACKBERRYX = 4; + S40 = 5; + S60 = 6; + PYTHON_CLIENT = 7; + TIZEN = 8; + ENTERPRISE = 9; + SMB_ANDROID = 10; + KAIOS = 11; + SMB_IOS = 12; + WINDOWS = 13; + WEB = 14; + PORTAL = 15; + GREEN_ANDROID = 16; + GREEN_IPHONE = 17; + BLUE_ANDROID = 18; + BLUE_IPHONE = 19; + FBLITE_ANDROID = 20; + MLITE_ANDROID = 21; + IGLITE_ANDROID = 22; + PAGE = 23; + MACOS = 24; + OCULUS_MSG = 25; + OCULUS_CALL = 26; + MILAN = 27; + CAPI = 28; + } + message AppVersion { + optional uint32 primary = 1; + optional uint32 secondary = 2; + optional uint32 tertiary = 3; + optional uint32 quaternary = 4; + optional uint32 quinary = 5; + } + + optional Platform platform = 1; + optional AppVersion appVersion = 2; + optional string mcc = 3; + optional string mnc = 4; + optional string osVersion = 5; + optional string manufacturer = 6; + optional string device = 7; + optional string osBuildNumber = 8; + optional string phoneId = 9; + optional ReleaseChannel releaseChannel = 10; + optional string localeLanguageIso6391 = 11; + optional string localeCountryIso31661Alpha2 = 12; + optional string deviceBoard = 13; + } + + enum Product { + WHATSAPP = 0; + MESSENGER = 1; + } + enum IOSAppExtension { + SHARE_EXTENSION = 0; + SERVICE_EXTENSION = 1; + INTENTS_EXTENSION = 2; + } + message DevicePairingRegistrationData { + optional bytes eRegid = 1; + optional bytes eKeytype = 2; + optional bytes eIdent = 3; + optional bytes eSkeyId = 4; + optional bytes eSkeyVal = 5; + optional bytes eSkeySig = 6; + optional bytes buildHash = 7; + optional bytes deviceProps = 8; + } + + message DNSSource { + enum DNSResolutionMethod { + SYSTEM = 0; + GOOGLE = 1; + HARDCODED = 2; + OVERRIDE = 3; + FALLBACK = 4; + } + optional DNSResolutionMethod dnsMethod = 15; + optional bool appCached = 16; + } + + enum ConnectType { CELLULAR_UNKNOWN = 0; WIFI_UNKNOWN = 1; CELLULAR_EDGE = 100; @@ -1635,8 +1813,7 @@ message ClientPayload { CELLULAR_LTE = 111; CELLULAR_HSPAP = 112; } - optional ClientPayloadConnectType connectType = 12; - enum ClientPayloadConnectReason { + enum ConnectReason { PUSH = 0; USER_ACTIVATED = 1; SCHEDULED = 2; @@ -1644,143 +1821,30 @@ message ClientPayload { NETWORK_SWITCH = 4; PING_RECONNECT = 5; } - optional ClientPayloadConnectReason connectReason = 13; + optional uint64 username = 1; + optional bool passive = 3; + optional UserAgent userAgent = 5; + optional WebInfo webInfo = 6; + optional string pushName = 7; + optional sfixed32 sessionId = 9; + optional bool shortConnect = 10; + optional ConnectType connectType = 12; + optional ConnectReason connectReason = 13; repeated int32 shards = 14; optional DNSSource dnsSource = 15; optional uint32 connectAttemptCount = 16; optional uint32 device = 18; optional DevicePairingRegistrationData devicePairingData = 19; - enum ClientPayloadProduct { - WHATSAPP = 0; - MESSENGER = 1; - } - optional ClientPayloadProduct product = 20; + optional Product product = 20; optional bytes fbCat = 21; optional bytes fbUserAgent = 22; optional bool oc = 23; optional int32 lc = 24; - enum ClientPayloadIOSAppExtension { - SHARE_EXTENSION = 0; - SERVICE_EXTENSION = 1; - INTENTS_EXTENSION = 2; - } - optional ClientPayloadIOSAppExtension iosAppExtension = 30; + optional IOSAppExtension iosAppExtension = 30; optional uint64 fbAppId = 31; optional bytes fbDeviceId = 32; optional bool pull = 33; -} - -message WebInfo { - optional string refToken = 1; - optional string version = 2; - optional WebdPayload webdPayload = 3; - enum WebInfoWebSubPlatform { - WEB_BROWSER = 0; - APP_STORE = 1; - WIN_STORE = 2; - DARWIN = 3; - WIN32 = 4; - } - optional WebInfoWebSubPlatform webSubPlatform = 4; -} - -message WebdPayload { - optional bool usesParticipantInKey = 1; - optional bool supportsStarredMessages = 2; - optional bool supportsDocumentMessages = 3; - optional bool supportsUrlMessages = 4; - optional bool supportsMediaRetry = 5; - optional bool supportsE2EImage = 6; - optional bool supportsE2EVideo = 7; - optional bool supportsE2EAudio = 8; - optional bool supportsE2EDocument = 9; - optional string documentTypes = 10; - optional bytes features = 11; -} - -message UserAgent { - enum UserAgentPlatform { - ANDROID = 0; - IOS = 1; - WINDOWS_PHONE = 2; - BLACKBERRY = 3; - BLACKBERRYX = 4; - S40 = 5; - S60 = 6; - PYTHON_CLIENT = 7; - TIZEN = 8; - ENTERPRISE = 9; - SMB_ANDROID = 10; - KAIOS = 11; - SMB_IOS = 12; - WINDOWS = 13; - WEB = 14; - PORTAL = 15; - GREEN_ANDROID = 16; - GREEN_IPHONE = 17; - BLUE_ANDROID = 18; - BLUE_IPHONE = 19; - FBLITE_ANDROID = 20; - MLITE_ANDROID = 21; - IGLITE_ANDROID = 22; - PAGE = 23; - MACOS = 24; - OCULUS_MSG = 25; - OCULUS_CALL = 26; - MILAN = 27; - CAPI = 28; - } - optional UserAgentPlatform platform = 1; - optional AppVersion appVersion = 2; - optional string mcc = 3; - optional string mnc = 4; - optional string osVersion = 5; - optional string manufacturer = 6; - optional string device = 7; - optional string osBuildNumber = 8; - optional string phoneId = 9; - enum UserAgentReleaseChannel { - RELEASE = 0; - BETA = 1; - ALPHA = 2; - DEBUG = 3; - } - optional UserAgentReleaseChannel releaseChannel = 10; - optional string localeLanguageIso6391 = 11; - optional string localeCountryIso31661Alpha2 = 12; - optional string deviceBoard = 13; -} - -// Duplicate type omitted -//message AppVersion { -// optional uint32 primary = 1; -// optional uint32 secondary = 2; -// optional uint32 tertiary = 3; -// optional uint32 quaternary = 4; -// optional uint32 quinary = 5; -//} - -message DevicePairingRegistrationData { - optional bytes eRegid = 1; - optional bytes eKeytype = 2; - optional bytes eIdent = 3; - optional bytes eSkeyId = 4; - optional bytes eSkeyVal = 5; - optional bytes eSkeySig = 6; - optional bytes buildHash = 7; - optional bytes deviceProps = 8; -} - -message DNSSource { - enum DNSSourceDNSResolutionMethod { - SYSTEM = 0; - GOOGLE = 1; - HARDCODED = 2; - OVERRIDE = 3; - FALLBACK = 4; - } - optional DNSSourceDNSResolutionMethod dnsMethod = 15; - optional bool appCached = 16; + optional bytes paddingBytes = 34; } message WebNotificationsInfo { @@ -1791,29 +1855,7 @@ message WebNotificationsInfo { } message WebMessageInfo { - required MessageKey key = 1; - optional Message message = 2; - optional uint64 messageTimestamp = 3; - enum WebMessageInfoStatus { - ERROR = 0; - PENDING = 1; - SERVER_ACK = 2; - DELIVERY_ACK = 3; - READ = 4; - PLAYED = 5; - } - optional WebMessageInfoStatus status = 4; - optional string participant = 5; - optional uint64 messageC2STimestamp = 6; - optional bool ignore = 16; - optional bool starred = 17; - optional bool broadcast = 18; - optional string pushName = 19; - optional bytes mediaCiphertextSha256 = 20; - optional bool multicast = 21; - optional bool urlText = 22; - optional bool urlNumber = 23; - enum WebMessageInfoStubType { + enum StubType { UNKNOWN = 0; REVOKE = 1; CIPHERTEXT = 2; @@ -1958,8 +2000,42 @@ message WebMessageInfo { GROUP_PARTICIPANT_LINKED_GROUP_JOIN = 141; COMMUNITY_CREATE = 142; EPHEMERAL_KEEP_IN_CHAT = 143; + GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST = 144; + GROUP_MEMBERSHIP_JOIN_APPROVAL_MODE = 145; + INTEGRITY_UNLINK_PARENT_GROUP = 146; + COMMUNITY_PARTICIPANT_PROMOTE = 147; + COMMUNITY_PARTICIPANT_DEMOTE = 148; + COMMUNITY_PARENT_GROUP_DELETED = 149; + } + enum Status { + ERROR = 0; + PENDING = 1; + SERVER_ACK = 2; + DELIVERY_ACK = 3; + READ = 4; + PLAYED = 5; } - optional WebMessageInfoStubType messageStubType = 24; + enum BizPrivacyStatus { + E2EE = 0; + FB = 2; + BSP = 1; + BSP_AND_FB = 3; + } + required MessageKey key = 1; + optional Message message = 2; + optional uint64 messageTimestamp = 3; + optional Status status = 4; + optional string participant = 5; + optional uint64 messageC2STimestamp = 6; + optional bool ignore = 16; + optional bool starred = 17; + optional bool broadcast = 18; + optional string pushName = 19; + optional bytes mediaCiphertextSha256 = 20; + optional bool multicast = 21; + optional bool urlText = 22; + optional bool urlNumber = 23; + optional StubType messageStubType = 24; optional bool clearMedia = 25; repeated string messageStubParameters = 26; optional uint32 duration = 27; @@ -1971,13 +2047,7 @@ message WebMessageInfo { optional uint32 ephemeralDuration = 33; optional bool ephemeralOffToOn = 34; optional bool ephemeralOutOfSync = 35; - enum WebMessageInfoBizPrivacyStatus { - E2EE = 0; - FB = 2; - BSP = 1; - BSP_AND_FB = 3; - } - optional WebMessageInfoBizPrivacyStatus bizPrivacyStatus = 36; + optional BizPrivacyStatus bizPrivacyStatus = 36; optional string verifiedBizName = 37; optional MediaData mediaData = 38; optional PhotoChange photoChange = 39; @@ -1992,60 +2062,62 @@ message WebMessageInfo { optional bool statusAlreadyViewed = 48; optional bytes messageSecret = 49; optional KeepInChat keepInChat = 50; + optional string originalSelfAuthorUserJidString = 51; + optional uint64 revokeMessageTimestamp = 52; } message WebFeatures { - enum WebFeaturesFlag { + enum Flag { NOT_STARTED = 0; FORCE_UPGRADE = 1; DEVELOPMENT = 2; PRODUCTION = 3; } - optional WebFeaturesFlag labelsDisplay = 1; - optional WebFeaturesFlag voipIndividualOutgoing = 2; - optional WebFeaturesFlag groupsV3 = 3; - optional WebFeaturesFlag groupsV3Create = 4; - optional WebFeaturesFlag changeNumberV2 = 5; - optional WebFeaturesFlag queryStatusV3Thumbnail = 6; - optional WebFeaturesFlag liveLocations = 7; - optional WebFeaturesFlag queryVname = 8; - optional WebFeaturesFlag voipIndividualIncoming = 9; - optional WebFeaturesFlag quickRepliesQuery = 10; - optional WebFeaturesFlag payments = 11; - optional WebFeaturesFlag stickerPackQuery = 12; - optional WebFeaturesFlag liveLocationsFinal = 13; - optional WebFeaturesFlag labelsEdit = 14; - optional WebFeaturesFlag mediaUpload = 15; - optional WebFeaturesFlag mediaUploadRichQuickReplies = 18; - optional WebFeaturesFlag vnameV2 = 19; - optional WebFeaturesFlag videoPlaybackUrl = 20; - optional WebFeaturesFlag statusRanking = 21; - optional WebFeaturesFlag voipIndividualVideo = 22; - optional WebFeaturesFlag thirdPartyStickers = 23; - optional WebFeaturesFlag frequentlyForwardedSetting = 24; - optional WebFeaturesFlag groupsV4JoinPermission = 25; - optional WebFeaturesFlag recentStickers = 26; - optional WebFeaturesFlag catalog = 27; - optional WebFeaturesFlag starredStickers = 28; - optional WebFeaturesFlag voipGroupCall = 29; - optional WebFeaturesFlag templateMessage = 30; - optional WebFeaturesFlag templateMessageInteractivity = 31; - optional WebFeaturesFlag ephemeralMessages = 32; - optional WebFeaturesFlag e2ENotificationSync = 33; - optional WebFeaturesFlag recentStickersV2 = 34; - optional WebFeaturesFlag recentStickersV3 = 36; - optional WebFeaturesFlag userNotice = 37; - optional WebFeaturesFlag support = 39; - optional WebFeaturesFlag groupUiiCleanup = 40; - optional WebFeaturesFlag groupDogfoodingInternalOnly = 41; - optional WebFeaturesFlag settingsSync = 42; - optional WebFeaturesFlag archiveV2 = 43; - optional WebFeaturesFlag ephemeralAllowGroupMembers = 44; - optional WebFeaturesFlag ephemeral24HDuration = 45; - optional WebFeaturesFlag mdForceUpgrade = 46; - optional WebFeaturesFlag disappearingMode = 47; - optional WebFeaturesFlag externalMdOptInAvailable = 48; - optional WebFeaturesFlag noDeleteMessageTimeLimit = 49; + optional Flag labelsDisplay = 1; + optional Flag voipIndividualOutgoing = 2; + optional Flag groupsV3 = 3; + optional Flag groupsV3Create = 4; + optional Flag changeNumberV2 = 5; + optional Flag queryStatusV3Thumbnail = 6; + optional Flag liveLocations = 7; + optional Flag queryVname = 8; + optional Flag voipIndividualIncoming = 9; + optional Flag quickRepliesQuery = 10; + optional Flag payments = 11; + optional Flag stickerPackQuery = 12; + optional Flag liveLocationsFinal = 13; + optional Flag labelsEdit = 14; + optional Flag mediaUpload = 15; + optional Flag mediaUploadRichQuickReplies = 18; + optional Flag vnameV2 = 19; + optional Flag videoPlaybackUrl = 20; + optional Flag statusRanking = 21; + optional Flag voipIndividualVideo = 22; + optional Flag thirdPartyStickers = 23; + optional Flag frequentlyForwardedSetting = 24; + optional Flag groupsV4JoinPermission = 25; + optional Flag recentStickers = 26; + optional Flag catalog = 27; + optional Flag starredStickers = 28; + optional Flag voipGroupCall = 29; + optional Flag templateMessage = 30; + optional Flag templateMessageInteractivity = 31; + optional Flag ephemeralMessages = 32; + optional Flag e2ENotificationSync = 33; + optional Flag recentStickersV2 = 34; + optional Flag recentStickersV3 = 36; + optional Flag userNotice = 37; + optional Flag support = 39; + optional Flag groupUiiCleanup = 40; + optional Flag groupDogfoodingInternalOnly = 41; + optional Flag settingsSync = 42; + optional Flag archiveV2 = 43; + optional Flag ephemeralAllowGroupMembers = 44; + optional Flag ephemeral24HDuration = 45; + optional Flag mdForceUpgrade = 46; + optional Flag disappearingMode = 47; + optional Flag externalMdOptInAvailable = 48; + optional Flag noDeleteMessageTimeLimit = 49; } message UserReceipt { @@ -2073,6 +2145,7 @@ message Reaction { message PollUpdate { optional MessageKey pollUpdateMessageKey = 1; optional PollVoteMessage vote = 2; + optional int64 senderTimestampMs = 3; } message PollAdditionalMetadata { @@ -2086,34 +2159,7 @@ message PhotoChange { } message PaymentInfo { - enum PaymentInfoCurrency { - UNKNOWN_CURRENCY = 0; - INR = 1; - } - optional PaymentInfoCurrency currencyDeprecated = 1; - optional uint64 amount1000 = 2; - optional string receiverJid = 3; - enum PaymentInfoStatus { - UNKNOWN_STATUS = 0; - PROCESSING = 1; - SENT = 2; - NEED_TO_ACCEPT = 3; - COMPLETE = 4; - COULD_NOT_COMPLETE = 5; - REFUNDED = 6; - EXPIRED = 7; - REJECTED = 8; - CANCELLED = 9; - WAITING_FOR_PAYER = 10; - WAITING = 11; - } - optional PaymentInfoStatus status = 4; - optional uint64 transactionTimestamp = 5; - optional MessageKey requestMessageKey = 6; - optional uint64 expiryTimestamp = 7; - optional bool futureproofed = 8; - optional string currency = 9; - enum PaymentInfoTxnStatus { + enum TxnStatus { UNKNOWN = 0; PENDING_SETUP = 1; PENDING_RECEIVER_SETUP = 2; @@ -2147,7 +2193,34 @@ message PaymentInfo { REVERSAL_PENDING = 30; REFUND_PENDING = 31; } - optional PaymentInfoTxnStatus txnStatus = 10; + enum Status { + UNKNOWN_STATUS = 0; + PROCESSING = 1; + SENT = 2; + NEED_TO_ACCEPT = 3; + COMPLETE = 4; + COULD_NOT_COMPLETE = 5; + REFUNDED = 6; + EXPIRED = 7; + REJECTED = 8; + CANCELLED = 9; + WAITING_FOR_PAYER = 10; + WAITING = 11; + } + enum Currency { + UNKNOWN_CURRENCY = 0; + INR = 1; + } + optional Currency currencyDeprecated = 1; + optional uint64 amount1000 = 2; + optional string receiverJid = 3; + optional Status status = 4; + optional uint64 transactionTimestamp = 5; + optional MessageKey requestMessageKey = 6; + optional uint64 expiryTimestamp = 7; + optional bool futureproofed = 8; + optional string currency = 9; + optional TxnStatus txnStatus = 10; optional bool useNoviFiatFormat = 11; optional Money primaryAmount = 12; optional Money exchangeAmount = 13; @@ -2167,40 +2240,38 @@ message MediaData { message KeepInChat { optional KeepType keepType = 1; optional int64 serverTimestamp = 2; - optional string deviceJid = 3; + optional MessageKey key = 3; + optional string deviceJid = 4; } message NoiseCertificate { + message Details { + optional uint32 serial = 1; + optional string issuer = 2; + optional uint64 expires = 3; + optional string subject = 4; + optional bytes key = 5; + } + optional bytes details = 1; optional bytes signature = 2; } -// Renamed from NoiseCertificate$Details -message NoiseCertificateDetails { - optional uint32 serial = 1; - optional string issuer = 2; - optional uint64 expires = 3; - optional string subject = 4; - optional bytes key = 5; -} - message CertChain { - optional CertChainNoiseCertificate leaf = 1; - optional CertChainNoiseCertificate intermediate = 2; -} - -// Renamed from CertChain$NoiseCertificate -message CertChainNoiseCertificate { - optional bytes details = 1; - optional bytes signature = 2; -} - -// Renamed from CertChain$NoiseCertificate$Details -message CertChainNoiseCertificateDetails { - optional uint32 serial = 1; - optional uint32 issuerSerial = 2; - optional bytes key = 3; - optional uint64 notBefore = 4; - optional uint64 notAfter = 5; + message NoiseCertificate { + message Details { + optional uint32 serial = 1; + optional uint32 issuerSerial = 2; + optional bytes key = 3; + optional uint64 notBefore = 4; + optional uint64 notAfter = 5; + } + + optional bytes details = 1; + optional bytes signature = 2; + } + + optional NoiseCertificate leaf = 1; + optional NoiseCertificate intermediate = 2; } |