mirror of
https://github.com/42wim/matterbridge.git
synced 2024-12-25 12:42:37 +01:00
1050 lines
32 KiB
Protocol Buffer
1050 lines
32 KiB
Protocol Buffer
syntax = "proto2";
|
|
package proto;
|
|
|
|
message PaymentMoney {
|
|
optional int64 value = 1;
|
|
optional uint32 offset = 2;
|
|
optional string currencyCode = 3;
|
|
}
|
|
|
|
message HydratedQuickReplyButton {
|
|
optional string displayText = 1;
|
|
optional string id = 2;
|
|
}
|
|
|
|
message HydratedURLButton {
|
|
optional string displayText = 1;
|
|
optional string url = 2;
|
|
}
|
|
|
|
message HydratedCallButton {
|
|
optional string displayText = 1;
|
|
optional string phoneNumber = 2;
|
|
}
|
|
|
|
message HydratedTemplateButton {
|
|
optional uint32 index = 4;
|
|
oneof hydratedButton {
|
|
HydratedQuickReplyButton quickReplyButton = 1;
|
|
HydratedURLButton urlButton = 2;
|
|
HydratedCallButton callButton = 3;
|
|
}
|
|
}
|
|
|
|
message QuickReplyButton {
|
|
optional HighlyStructuredMessage displayText = 1;
|
|
optional string id = 2;
|
|
}
|
|
|
|
message URLButton {
|
|
optional HighlyStructuredMessage displayText = 1;
|
|
optional HighlyStructuredMessage url = 2;
|
|
}
|
|
|
|
message CallButton {
|
|
optional HighlyStructuredMessage displayText = 1;
|
|
optional HighlyStructuredMessage phoneNumber = 2;
|
|
}
|
|
|
|
message TemplateButton {
|
|
optional uint32 index = 4;
|
|
oneof button {
|
|
QuickReplyButton quickReplyButton = 1;
|
|
URLButton urlButton = 2;
|
|
CallButton callButton = 3;
|
|
}
|
|
}
|
|
|
|
message Location {
|
|
optional double degreesLatitude = 1;
|
|
optional double degreesLongitude = 2;
|
|
optional string name = 3;
|
|
}
|
|
|
|
message Point {
|
|
optional int32 xDeprecated = 1;
|
|
optional int32 yDeprecated = 2;
|
|
optional double x = 3;
|
|
optional double y = 4;
|
|
}
|
|
|
|
message InteractiveAnnotation {
|
|
repeated Point polygonVertices = 1;
|
|
oneof action {
|
|
Location location = 2;
|
|
}
|
|
}
|
|
|
|
message DeviceListMetadata {
|
|
optional bytes senderKeyHash = 1;
|
|
optional uint64 senderTimestamp = 2;
|
|
optional bytes recipientKeyHash = 8;
|
|
optional uint64 recipientTimestamp = 9;
|
|
}
|
|
|
|
message MessageContextInfo {
|
|
optional DeviceListMetadata deviceListMetadata = 1;
|
|
}
|
|
|
|
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 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;
|
|
}
|
|
|
|
message ContextInfo {
|
|
optional string stanzaId = 1;
|
|
optional string participant = 2;
|
|
optional Message quotedMessage = 3;
|
|
optional string remoteJid = 4;
|
|
repeated string mentionedJid = 15;
|
|
optional string conversionSource = 18;
|
|
optional bytes conversionData = 19;
|
|
optional uint32 conversionDelaySeconds = 20;
|
|
optional uint32 forwardingScore = 21;
|
|
optional bool isForwarded = 22;
|
|
optional AdReplyInfo quotedAd = 23;
|
|
optional MessageKey placeholderKey = 24;
|
|
optional uint32 expiration = 25;
|
|
optional int64 ephemeralSettingTimestamp = 26;
|
|
optional bytes ephemeralSharedSecret = 27;
|
|
optional ExternalAdReplyInfo externalAdReply = 28;
|
|
}
|
|
|
|
message SenderKeyDistributionMessage {
|
|
optional string groupId = 1;
|
|
optional bytes axolotlSenderKeyDistributionMessage = 2;
|
|
}
|
|
|
|
message ImageMessage {
|
|
optional string url = 1;
|
|
optional string mimetype = 2;
|
|
optional string caption = 3;
|
|
optional bytes fileSha256 = 4;
|
|
optional uint64 fileLength = 5;
|
|
optional uint32 height = 6;
|
|
optional uint32 width = 7;
|
|
optional bytes mediaKey = 8;
|
|
optional bytes fileEncSha256 = 9;
|
|
repeated InteractiveAnnotation interactiveAnnotations = 10;
|
|
optional string directPath = 11;
|
|
optional int64 mediaKeyTimestamp = 12;
|
|
optional bytes jpegThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
optional bytes firstScanSidecar = 18;
|
|
optional uint32 firstScanLength = 19;
|
|
optional uint32 experimentGroupId = 20;
|
|
optional bytes scansSidecar = 21;
|
|
repeated uint32 scanLengths = 22;
|
|
optional bytes midQualityFileSha256 = 23;
|
|
optional bytes midQualityFileEncSha256 = 24;
|
|
optional bool viewOnce = 25;
|
|
optional string thumbnailDirectPath = 26;
|
|
optional bytes thumbnailSha256 = 27;
|
|
optional bytes thumbnailEncSha256 = 28;
|
|
}
|
|
|
|
message InvoiceMessage {
|
|
optional string note = 1;
|
|
optional string token = 2;
|
|
enum InvoiceMessageAttachmentType {
|
|
IMAGE = 0;
|
|
PDF = 1;
|
|
}
|
|
optional InvoiceMessageAttachmentType attachmentType = 3;
|
|
optional string attachmentMimetype = 4;
|
|
optional bytes attachmentMediaKey = 5;
|
|
optional int64 attachmentMediaKeyTimestamp = 6;
|
|
optional bytes attachmentFileSha256 = 7;
|
|
optional bytes attachmentFileEncSha256 = 8;
|
|
optional string attachmentDirectPath = 9;
|
|
optional bytes attachmentJpegThumbnail = 10;
|
|
}
|
|
|
|
message ContactMessage {
|
|
optional string displayName = 1;
|
|
optional string vcard = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
message LocationMessage {
|
|
optional double degreesLatitude = 1;
|
|
optional double degreesLongitude = 2;
|
|
optional string name = 3;
|
|
optional string address = 4;
|
|
optional string url = 5;
|
|
optional bool isLive = 6;
|
|
optional uint32 accuracyInMeters = 7;
|
|
optional float speedInMps = 8;
|
|
optional uint32 degreesClockwiseFromMagneticNorth = 9;
|
|
optional string comment = 11;
|
|
optional bytes jpegThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
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 {
|
|
SANS_SERIF = 0;
|
|
SERIF = 1;
|
|
NORICAN_REGULAR = 2;
|
|
BRYNDAN_WRITE = 3;
|
|
BEBASNEUE_REGULAR = 4;
|
|
OSWALD_HEAVY = 5;
|
|
}
|
|
optional ExtendedTextMessageFontType font = 9;
|
|
enum ExtendedTextMessagePreviewType {
|
|
NONE = 0;
|
|
VIDEO = 1;
|
|
}
|
|
optional ExtendedTextMessagePreviewType previewType = 10;
|
|
optional bytes jpegThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
optional bool doNotPlayInline = 18;
|
|
}
|
|
|
|
message DocumentMessage {
|
|
optional string url = 1;
|
|
optional string mimetype = 2;
|
|
optional string title = 3;
|
|
optional bytes fileSha256 = 4;
|
|
optional uint64 fileLength = 5;
|
|
optional uint32 pageCount = 6;
|
|
optional bytes mediaKey = 7;
|
|
optional string fileName = 8;
|
|
optional bytes fileEncSha256 = 9;
|
|
optional string directPath = 10;
|
|
optional int64 mediaKeyTimestamp = 11;
|
|
optional bool contactVcard = 12;
|
|
optional string thumbnailDirectPath = 13;
|
|
optional bytes thumbnailSha256 = 14;
|
|
optional bytes thumbnailEncSha256 = 15;
|
|
optional bytes jpegThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
optional uint32 thumbnailHeight = 18;
|
|
optional uint32 thumbnailWidth = 19;
|
|
}
|
|
|
|
message AudioMessage {
|
|
optional string url = 1;
|
|
optional string mimetype = 2;
|
|
optional bytes fileSha256 = 3;
|
|
optional uint64 fileLength = 4;
|
|
optional uint32 seconds = 5;
|
|
optional bool ptt = 6;
|
|
optional bytes mediaKey = 7;
|
|
optional bytes fileEncSha256 = 8;
|
|
optional string directPath = 9;
|
|
optional int64 mediaKeyTimestamp = 10;
|
|
optional ContextInfo contextInfo = 17;
|
|
optional bytes streamingSidecar = 18;
|
|
}
|
|
|
|
message VideoMessage {
|
|
optional string url = 1;
|
|
optional string mimetype = 2;
|
|
optional bytes fileSha256 = 3;
|
|
optional uint64 fileLength = 4;
|
|
optional uint32 seconds = 5;
|
|
optional bytes mediaKey = 6;
|
|
optional string caption = 7;
|
|
optional bool gifPlayback = 8;
|
|
optional uint32 height = 9;
|
|
optional uint32 width = 10;
|
|
optional bytes fileEncSha256 = 11;
|
|
repeated InteractiveAnnotation interactiveAnnotations = 12;
|
|
optional string directPath = 13;
|
|
optional int64 mediaKeyTimestamp = 14;
|
|
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 bool viewOnce = 20;
|
|
optional string thumbnailDirectPath = 21;
|
|
optional bytes thumbnailSha256 = 22;
|
|
optional bytes thumbnailEncSha256 = 23;
|
|
}
|
|
|
|
message Call {
|
|
optional bytes callKey = 1;
|
|
}
|
|
|
|
message Chat {
|
|
optional string displayName = 1;
|
|
optional string id = 2;
|
|
}
|
|
|
|
message ProtocolMessage {
|
|
optional MessageKey key = 1;
|
|
enum ProtocolMessageType {
|
|
REVOKE = 0;
|
|
EPHEMERAL_SETTING = 3;
|
|
EPHEMERAL_SYNC_RESPONSE = 4;
|
|
HISTORY_SYNC_NOTIFICATION = 5;
|
|
APP_STATE_SYNC_KEY_SHARE = 6;
|
|
APP_STATE_SYNC_KEY_REQUEST = 7;
|
|
MSG_FANOUT_BACKFILL_REQUEST = 8;
|
|
INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC = 9;
|
|
APP_STATE_FATAL_EXCEPTION_NOTIFICATION = 10;
|
|
}
|
|
optional ProtocolMessageType type = 2;
|
|
optional uint32 ephemeralExpiration = 4;
|
|
optional int64 ephemeralSettingTimestamp = 5;
|
|
optional HistorySyncNotification historySyncNotification = 6;
|
|
optional AppStateSyncKeyShare appStateSyncKeyShare = 7;
|
|
optional AppStateSyncKeyRequest appStateSyncKeyRequest = 8;
|
|
optional InitialSecurityNotificationSettingSync initialSecurityNotificationSettingSync = 9;
|
|
optional AppStateFatalExceptionNotification appStateFatalExceptionNotification = 10;
|
|
}
|
|
|
|
message HistorySyncNotification {
|
|
optional bytes fileSha256 = 1;
|
|
optional uint64 fileLength = 2;
|
|
optional bytes mediaKey = 3;
|
|
optional bytes fileEncSha256 = 4;
|
|
optional string directPath = 5;
|
|
enum HistorySyncNotificationHistorySyncType {
|
|
INITIAL_BOOTSTRAP = 0;
|
|
INITIAL_STATUS_V3 = 1;
|
|
FULL = 2;
|
|
RECENT = 3;
|
|
PUSH_NAME = 4;
|
|
}
|
|
optional HistorySyncNotificationHistorySyncType syncType = 6;
|
|
optional uint32 chunkOrder = 7;
|
|
optional string originalMessageId = 8;
|
|
}
|
|
|
|
message AppStateSyncKey {
|
|
optional AppStateSyncKeyId keyId = 1;
|
|
optional AppStateSyncKeyData keyData = 2;
|
|
}
|
|
|
|
message AppStateSyncKeyId {
|
|
optional bytes keyId = 1;
|
|
}
|
|
|
|
message AppStateSyncKeyFingerprint {
|
|
optional uint32 rawId = 1;
|
|
optional uint32 currentIndex = 2;
|
|
repeated uint32 deviceIndexes = 3 [packed=true];
|
|
}
|
|
|
|
message AppStateSyncKeyData {
|
|
optional bytes keyData = 1;
|
|
optional AppStateSyncKeyFingerprint fingerprint = 2;
|
|
optional int64 timestamp = 3;
|
|
}
|
|
|
|
message AppStateSyncKeyShare {
|
|
repeated AppStateSyncKey keys = 1;
|
|
}
|
|
|
|
message AppStateSyncKeyRequest {
|
|
repeated AppStateSyncKeyId keyIds = 1;
|
|
}
|
|
|
|
message AppStateFatalExceptionNotification {
|
|
repeated string collectionNames = 1;
|
|
optional int64 timestamp = 2;
|
|
}
|
|
|
|
message InitialSecurityNotificationSettingSync {
|
|
optional bool securityNotificationEnabled = 1;
|
|
}
|
|
|
|
message ContactsArrayMessage {
|
|
optional string displayName = 1;
|
|
repeated ContactMessage contacts = 2;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
message HSMCurrency {
|
|
optional string currencyCode = 1;
|
|
optional int64 amount1000 = 2;
|
|
}
|
|
|
|
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 HSMDateTimeUnixEpoch {
|
|
optional int64 timestamp = 1;
|
|
}
|
|
|
|
message HSMDateTime {
|
|
oneof datetimeOneof {
|
|
HSMDateTimeComponent component = 1;
|
|
HSMDateTimeUnixEpoch unixEpoch = 2;
|
|
}
|
|
}
|
|
|
|
message HSMLocalizableParameter {
|
|
optional string default = 1;
|
|
oneof paramOneof {
|
|
HSMCurrency currency = 2;
|
|
HSMDateTime dateTime = 3;
|
|
}
|
|
}
|
|
|
|
message HighlyStructuredMessage {
|
|
optional string namespace = 1;
|
|
optional string elementName = 2;
|
|
repeated string params = 3;
|
|
optional string fallbackLg = 4;
|
|
optional string fallbackLc = 5;
|
|
repeated HSMLocalizableParameter localizableParams = 6;
|
|
optional string deterministicLg = 7;
|
|
optional string deterministicLc = 8;
|
|
optional TemplateMessage hydratedHsm = 9;
|
|
}
|
|
|
|
message SendPaymentMessage {
|
|
optional Message noteMessage = 2;
|
|
optional MessageKey requestMessageKey = 3;
|
|
}
|
|
|
|
message RequestPaymentMessage {
|
|
optional Message noteMessage = 4;
|
|
optional string currencyCodeIso4217 = 1;
|
|
optional uint64 amount1000 = 2;
|
|
optional string requestFrom = 3;
|
|
optional int64 expiryTimestamp = 5;
|
|
optional PaymentMoney amount = 6;
|
|
}
|
|
|
|
message DeclinePaymentRequestMessage {
|
|
optional MessageKey key = 1;
|
|
}
|
|
|
|
message CancelPaymentRequestMessage {
|
|
optional MessageKey key = 1;
|
|
}
|
|
|
|
message LiveLocationMessage {
|
|
optional double degreesLatitude = 1;
|
|
optional double degreesLongitude = 2;
|
|
optional uint32 accuracyInMeters = 3;
|
|
optional float speedInMps = 4;
|
|
optional uint32 degreesClockwiseFromMagneticNorth = 5;
|
|
optional string caption = 6;
|
|
optional int64 sequenceNumber = 7;
|
|
optional uint32 timeOffset = 8;
|
|
optional bytes jpegThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
message StickerMessage {
|
|
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 int64 mediaKeyTimestamp = 10;
|
|
optional uint32 firstFrameLength = 11;
|
|
optional bytes firstFrameSidecar = 12;
|
|
optional bool isAnimated = 13;
|
|
optional bytes pngThumbnail = 16;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
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 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 TemplateMessage {
|
|
optional ContextInfo contextInfo = 3;
|
|
optional HydratedFourRowTemplate hydratedTemplate = 4;
|
|
oneof format {
|
|
FourRowTemplate fourRowTemplate = 1;
|
|
HydratedFourRowTemplate hydratedFourRowTemplate = 2;
|
|
}
|
|
}
|
|
|
|
message TemplateButtonReplyMessage {
|
|
optional string selectedId = 1;
|
|
optional string selectedDisplayText = 2;
|
|
optional ContextInfo contextInfo = 3;
|
|
optional uint32 selectedIndex = 4;
|
|
}
|
|
|
|
message CatalogSnapshot {
|
|
optional ImageMessage catalogImage = 1;
|
|
optional string title = 2;
|
|
optional string description = 3;
|
|
}
|
|
|
|
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;
|
|
}
|
|
|
|
message ProductMessage {
|
|
optional ProductSnapshot product = 1;
|
|
optional string businessOwnerJid = 2;
|
|
optional CatalogSnapshot catalog = 4;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
message OrderMessage {
|
|
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 string message = 6;
|
|
optional string orderTitle = 7;
|
|
optional string sellerJid = 8;
|
|
optional string token = 9;
|
|
optional int64 totalAmount1000 = 10;
|
|
optional string totalCurrencyCode = 11;
|
|
optional ContextInfo contextInfo = 17;
|
|
}
|
|
|
|
message Row {
|
|
optional string title = 1;
|
|
optional string description = 2;
|
|
optional string rowId = 3;
|
|
}
|
|
|
|
message Section {
|
|
optional string title = 1;
|
|
repeated Row rows = 2;
|
|
}
|
|
|
|
message ListMessage {
|
|
optional string title = 1;
|
|
optional string description = 2;
|
|
optional string buttonText = 3;
|
|
enum ListMessageListType {
|
|
UNKNOWN = 0;
|
|
SINGLE_SELECT = 1;
|
|
}
|
|
optional ListMessageListType listType = 4;
|
|
repeated Section sections = 5;
|
|
}
|
|
|
|
message SingleSelectReply {
|
|
optional string selectedRowId = 1;
|
|
}
|
|
|
|
message ListResponseMessage {
|
|
optional string title = 1;
|
|
enum ListResponseMessageListType {
|
|
UNKNOWN = 0;
|
|
SINGLE_SELECT = 1;
|
|
}
|
|
optional ListResponseMessageListType listType = 2;
|
|
optional SingleSelectReply singleSelectReply = 3;
|
|
optional ContextInfo contextInfo = 4;
|
|
optional string description = 5;
|
|
}
|
|
|
|
message GroupInviteMessage {
|
|
optional string groupJid = 1;
|
|
optional string inviteCode = 2;
|
|
optional int64 inviteExpiration = 3;
|
|
optional string groupName = 4;
|
|
optional bytes jpegThumbnail = 5;
|
|
optional string caption = 6;
|
|
optional ContextInfo contextInfo = 7;
|
|
}
|
|
|
|
message EphemeralSetting {
|
|
optional string chatJid = 1;
|
|
optional uint32 ephemeralExpiration = 2;
|
|
optional int64 ephemeralSettingTimestamp = 3;
|
|
}
|
|
|
|
message DeviceSentMessage {
|
|
optional string destinationJid = 1;
|
|
optional Message message = 2;
|
|
optional string phash = 3;
|
|
repeated EphemeralSetting broadcastEphemeralSettings = 4;
|
|
}
|
|
|
|
message FutureProofMessage {
|
|
optional Message message = 1;
|
|
}
|
|
|
|
message ButtonText {
|
|
optional string displayText = 1;
|
|
}
|
|
|
|
message Button {
|
|
optional string buttonId = 1;
|
|
optional ButtonText buttonText = 2;
|
|
enum ButtonType {
|
|
UNKNOWN = 0;
|
|
RESPONSE = 1;
|
|
}
|
|
optional ButtonType type = 3;
|
|
}
|
|
|
|
message ButtonsMessage {
|
|
optional string contentText = 6;
|
|
optional string footerText = 7;
|
|
optional ContextInfo contextInfo = 8;
|
|
repeated Button buttons = 9;
|
|
enum ButtonsMessageHeaderType {
|
|
UNKNOWN = 0;
|
|
EMPTY = 1;
|
|
TEXT = 2;
|
|
DOCUMENT = 3;
|
|
IMAGE = 4;
|
|
VIDEO = 5;
|
|
LOCATION = 6;
|
|
}
|
|
optional ButtonsMessageHeaderType headerType = 10;
|
|
oneof header {
|
|
string text = 1;
|
|
DocumentMessage documentMessage = 2;
|
|
ImageMessage imageMessage = 3;
|
|
VideoMessage videoMessage = 4;
|
|
LocationMessage locationMessage = 5;
|
|
}
|
|
}
|
|
|
|
message ButtonsResponseMessage {
|
|
optional string selectedButtonId = 1;
|
|
optional ContextInfo contextInfo = 3;
|
|
enum ButtonsResponseMessageType {
|
|
UNKNOWN = 0;
|
|
DISPLAY_TEXT = 1;
|
|
}
|
|
optional ButtonsResponseMessageType type = 4;
|
|
oneof response {
|
|
string selectedDisplayText = 2;
|
|
}
|
|
}
|
|
|
|
message Message {
|
|
optional string conversation = 1;
|
|
optional SenderKeyDistributionMessage senderKeyDistributionMessage = 2;
|
|
optional ImageMessage imageMessage = 3;
|
|
optional ContactMessage contactMessage = 4;
|
|
optional LocationMessage locationMessage = 5;
|
|
optional ExtendedTextMessage extendedTextMessage = 6;
|
|
optional DocumentMessage documentMessage = 7;
|
|
optional AudioMessage audioMessage = 8;
|
|
optional VideoMessage videoMessage = 9;
|
|
optional Call call = 10;
|
|
optional Chat chat = 11;
|
|
optional ProtocolMessage protocolMessage = 12;
|
|
optional ContactsArrayMessage contactsArrayMessage = 13;
|
|
optional HighlyStructuredMessage highlyStructuredMessage = 14;
|
|
optional SenderKeyDistributionMessage fastRatchetKeySenderKeyDistributionMessage = 15;
|
|
optional SendPaymentMessage sendPaymentMessage = 16;
|
|
optional LiveLocationMessage liveLocationMessage = 18;
|
|
optional RequestPaymentMessage requestPaymentMessage = 22;
|
|
optional DeclinePaymentRequestMessage declinePaymentRequestMessage = 23;
|
|
optional CancelPaymentRequestMessage cancelPaymentRequestMessage = 24;
|
|
optional TemplateMessage templateMessage = 25;
|
|
optional StickerMessage stickerMessage = 26;
|
|
optional GroupInviteMessage groupInviteMessage = 28;
|
|
optional TemplateButtonReplyMessage templateButtonReplyMessage = 29;
|
|
optional ProductMessage productMessage = 30;
|
|
optional DeviceSentMessage deviceSentMessage = 31;
|
|
optional MessageContextInfo messageContextInfo = 35;
|
|
optional ListMessage listMessage = 36;
|
|
optional FutureProofMessage viewOnceMessage = 37;
|
|
optional OrderMessage orderMessage = 38;
|
|
optional ListResponseMessage listResponseMessage = 39;
|
|
optional FutureProofMessage ephemeralMessage = 40;
|
|
optional InvoiceMessage invoiceMessage = 41;
|
|
optional ButtonsMessage buttonsMessage = 42;
|
|
optional ButtonsResponseMessage buttonsResponseMessage = 43;
|
|
}
|
|
|
|
message MessageKey {
|
|
optional string remoteJid = 1;
|
|
optional bool fromMe = 2;
|
|
optional string id = 3;
|
|
optional string participant = 4;
|
|
}
|
|
|
|
message WebFeatures {
|
|
enum WebFeaturesFlag {
|
|
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 syncdRelease1 = 35;
|
|
optional WebFeaturesFlag recentStickersV3 = 36;
|
|
optional WebFeaturesFlag userNotice = 37;
|
|
optional WebFeaturesFlag syncdRelease11 = 38;
|
|
optional WebFeaturesFlag support = 39;
|
|
optional WebFeaturesFlag groupUiiCleanup = 40;
|
|
optional WebFeaturesFlag groupDogfoodingInternalOnly = 41;
|
|
optional WebFeaturesFlag settingsSync = 42;
|
|
}
|
|
|
|
message NotificationMessageInfo {
|
|
optional MessageKey key = 1;
|
|
optional Message message = 2;
|
|
optional uint64 messageTimestamp = 3;
|
|
optional string participant = 4;
|
|
}
|
|
|
|
message WebNotificationsInfo {
|
|
optional uint64 timestamp = 2;
|
|
optional uint32 unreadChats = 3;
|
|
optional uint32 notifyMessageCount = 4;
|
|
repeated WebMessageInfo notifyMessages = 5;
|
|
}
|
|
|
|
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 {
|
|
UNKNOWN = 0;
|
|
PENDING_SETUP = 1;
|
|
PENDING_RECEIVER_SETUP = 2;
|
|
INIT = 3;
|
|
SUCCESS = 4;
|
|
COMPLETED = 5;
|
|
FAILED = 6;
|
|
FAILED_RISK = 7;
|
|
FAILED_PROCESSING = 8;
|
|
FAILED_RECEIVER_PROCESSING = 9;
|
|
FAILED_DA = 10;
|
|
FAILED_DA_FINAL = 11;
|
|
REFUNDED_TXN = 12;
|
|
REFUND_FAILED = 13;
|
|
REFUND_FAILED_PROCESSING = 14;
|
|
REFUND_FAILED_DA = 15;
|
|
EXPIRED_TXN = 16;
|
|
AUTH_CANCELED = 17;
|
|
AUTH_CANCEL_FAILED_PROCESSING = 18;
|
|
AUTH_CANCEL_FAILED = 19;
|
|
COLLECT_INIT = 20;
|
|
COLLECT_SUCCESS = 21;
|
|
COLLECT_FAILED = 22;
|
|
COLLECT_FAILED_RISK = 23;
|
|
COLLECT_REJECTED = 24;
|
|
COLLECT_EXPIRED = 25;
|
|
COLLECT_CANCELED = 26;
|
|
COLLECT_CANCELLING = 27;
|
|
}
|
|
optional PaymentInfoTxnStatus txnStatus = 10;
|
|
optional bool useNoviFiatFormat = 11;
|
|
optional PaymentMoney primaryAmount = 12;
|
|
optional PaymentMoney exchangeAmount = 13;
|
|
}
|
|
|
|
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 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 {
|
|
UNKNOWN = 0;
|
|
REVOKE = 1;
|
|
CIPHERTEXT = 2;
|
|
FUTUREPROOF = 3;
|
|
NON_VERIFIED_TRANSITION = 4;
|
|
UNVERIFIED_TRANSITION = 5;
|
|
VERIFIED_TRANSITION = 6;
|
|
VERIFIED_LOW_UNKNOWN = 7;
|
|
VERIFIED_HIGH = 8;
|
|
VERIFIED_INITIAL_UNKNOWN = 9;
|
|
VERIFIED_INITIAL_LOW = 10;
|
|
VERIFIED_INITIAL_HIGH = 11;
|
|
VERIFIED_TRANSITION_ANY_TO_NONE = 12;
|
|
VERIFIED_TRANSITION_ANY_TO_HIGH = 13;
|
|
VERIFIED_TRANSITION_HIGH_TO_LOW = 14;
|
|
VERIFIED_TRANSITION_HIGH_TO_UNKNOWN = 15;
|
|
VERIFIED_TRANSITION_UNKNOWN_TO_LOW = 16;
|
|
VERIFIED_TRANSITION_LOW_TO_UNKNOWN = 17;
|
|
VERIFIED_TRANSITION_NONE_TO_LOW = 18;
|
|
VERIFIED_TRANSITION_NONE_TO_UNKNOWN = 19;
|
|
GROUP_CREATE = 20;
|
|
GROUP_CHANGE_SUBJECT = 21;
|
|
GROUP_CHANGE_ICON = 22;
|
|
GROUP_CHANGE_INVITE_LINK = 23;
|
|
GROUP_CHANGE_DESCRIPTION = 24;
|
|
GROUP_CHANGE_RESTRICT = 25;
|
|
GROUP_CHANGE_ANNOUNCE = 26;
|
|
GROUP_PARTICIPANT_ADD = 27;
|
|
GROUP_PARTICIPANT_REMOVE = 28;
|
|
GROUP_PARTICIPANT_PROMOTE = 29;
|
|
GROUP_PARTICIPANT_DEMOTE = 30;
|
|
GROUP_PARTICIPANT_INVITE = 31;
|
|
GROUP_PARTICIPANT_LEAVE = 32;
|
|
GROUP_PARTICIPANT_CHANGE_NUMBER = 33;
|
|
BROADCAST_CREATE = 34;
|
|
BROADCAST_ADD = 35;
|
|
BROADCAST_REMOVE = 36;
|
|
GENERIC_NOTIFICATION = 37;
|
|
E2E_IDENTITY_CHANGED = 38;
|
|
E2E_ENCRYPTED = 39;
|
|
CALL_MISSED_VOICE = 40;
|
|
CALL_MISSED_VIDEO = 41;
|
|
INDIVIDUAL_CHANGE_NUMBER = 42;
|
|
GROUP_DELETE = 43;
|
|
GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE = 44;
|
|
CALL_MISSED_GROUP_VOICE = 45;
|
|
CALL_MISSED_GROUP_VIDEO = 46;
|
|
PAYMENT_CIPHERTEXT = 47;
|
|
PAYMENT_FUTUREPROOF = 48;
|
|
PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED = 49;
|
|
PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED = 50;
|
|
PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED = 51;
|
|
PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP = 52;
|
|
PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP = 53;
|
|
PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER = 54;
|
|
PAYMENT_ACTION_SEND_PAYMENT_REMINDER = 55;
|
|
PAYMENT_ACTION_SEND_PAYMENT_INVITATION = 56;
|
|
PAYMENT_ACTION_REQUEST_DECLINED = 57;
|
|
PAYMENT_ACTION_REQUEST_EXPIRED = 58;
|
|
PAYMENT_ACTION_REQUEST_CANCELLED = 59;
|
|
BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM = 60;
|
|
BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP = 61;
|
|
BIZ_INTRO_TOP = 62;
|
|
BIZ_INTRO_BOTTOM = 63;
|
|
BIZ_NAME_CHANGE = 64;
|
|
BIZ_MOVE_TO_CONSUMER_APP = 65;
|
|
BIZ_TWO_TIER_MIGRATION_TOP = 66;
|
|
BIZ_TWO_TIER_MIGRATION_BOTTOM = 67;
|
|
OVERSIZED = 68;
|
|
GROUP_CHANGE_NO_FREQUENTLY_FORWARDED = 69;
|
|
GROUP_V4_ADD_INVITE_SENT = 70;
|
|
GROUP_PARTICIPANT_ADD_REQUEST_JOIN = 71;
|
|
CHANGE_EPHEMERAL_SETTING = 72;
|
|
E2E_DEVICE_CHANGED = 73;
|
|
VIEWED_ONCE = 74;
|
|
E2E_ENCRYPTED_NOW = 75;
|
|
BLUE_MSG_BSP_FB_TO_BSP_PREMISE = 76;
|
|
BLUE_MSG_BSP_FB_TO_SELF_FB = 77;
|
|
BLUE_MSG_BSP_FB_TO_SELF_PREMISE = 78;
|
|
BLUE_MSG_BSP_FB_UNVERIFIED = 79;
|
|
BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED = 80;
|
|
BLUE_MSG_BSP_FB_VERIFIED = 81;
|
|
BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED = 82;
|
|
BLUE_MSG_BSP_PREMISE_TO_SELF_PREMISE = 83;
|
|
BLUE_MSG_BSP_PREMISE_UNVERIFIED = 84;
|
|
BLUE_MSG_BSP_PREMISE_UNVERIFIED_TO_SELF_PREMISE_VERIFIED = 85;
|
|
BLUE_MSG_BSP_PREMISE_VERIFIED = 86;
|
|
BLUE_MSG_BSP_PREMISE_VERIFIED_TO_SELF_PREMISE_UNVERIFIED = 87;
|
|
BLUE_MSG_CONSUMER_TO_BSP_FB_UNVERIFIED = 88;
|
|
BLUE_MSG_CONSUMER_TO_BSP_PREMISE_UNVERIFIED = 89;
|
|
BLUE_MSG_CONSUMER_TO_SELF_FB_UNVERIFIED = 90;
|
|
BLUE_MSG_CONSUMER_TO_SELF_PREMISE_UNVERIFIED = 91;
|
|
BLUE_MSG_SELF_FB_TO_BSP_PREMISE = 92;
|
|
BLUE_MSG_SELF_FB_TO_SELF_PREMISE = 93;
|
|
BLUE_MSG_SELF_FB_UNVERIFIED = 94;
|
|
BLUE_MSG_SELF_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED = 95;
|
|
BLUE_MSG_SELF_FB_VERIFIED = 96;
|
|
BLUE_MSG_SELF_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED = 97;
|
|
BLUE_MSG_SELF_PREMISE_TO_BSP_PREMISE = 98;
|
|
BLUE_MSG_SELF_PREMISE_UNVERIFIED = 99;
|
|
BLUE_MSG_SELF_PREMISE_VERIFIED = 100;
|
|
BLUE_MSG_TO_BSP_FB = 101;
|
|
BLUE_MSG_TO_CONSUMER = 102;
|
|
BLUE_MSG_TO_SELF_FB = 103;
|
|
BLUE_MSG_UNVERIFIED_TO_BSP_FB_VERIFIED = 104;
|
|
BLUE_MSG_UNVERIFIED_TO_BSP_PREMISE_VERIFIED = 105;
|
|
BLUE_MSG_UNVERIFIED_TO_SELF_FB_VERIFIED = 106;
|
|
BLUE_MSG_UNVERIFIED_TO_VERIFIED = 107;
|
|
BLUE_MSG_VERIFIED_TO_BSP_FB_UNVERIFIED = 108;
|
|
BLUE_MSG_VERIFIED_TO_BSP_PREMISE_UNVERIFIED = 109;
|
|
BLUE_MSG_VERIFIED_TO_SELF_FB_UNVERIFIED = 110;
|
|
BLUE_MSG_VERIFIED_TO_UNVERIFIED = 111;
|
|
BLUE_MSG_BSP_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED = 112;
|
|
BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_FB_VERIFIED = 113;
|
|
BLUE_MSG_BSP_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED = 114;
|
|
BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_FB_UNVERIFIED = 115;
|
|
BLUE_MSG_SELF_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED = 116;
|
|
BLUE_MSG_SELF_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED = 117;
|
|
E2E_IDENTITY_UNAVAILABLE = 118;
|
|
}
|
|
optional WebMessageInfoStubType messageStubType = 24;
|
|
optional bool clearMedia = 25;
|
|
repeated string messageStubParameters = 26;
|
|
optional uint32 duration = 27;
|
|
repeated string labels = 28;
|
|
optional PaymentInfo paymentInfo = 29;
|
|
optional LiveLocationMessage finalLiveLocation = 30;
|
|
optional PaymentInfo quotedPaymentInfo = 31;
|
|
optional uint64 ephemeralStartTimestamp = 32;
|
|
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 string verifiedBizName = 37;
|
|
} |