WASyncAction.proto 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577
  1. syntax = "proto2";
  2. package WASyncAction;
  3. option go_package = "git.bobomao.top/joey/whatsmeow/proto/waSyncAction";
  4. import "waChatLockSettings/WAProtobufsChatLockSettings.proto";
  5. import "waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto";
  6. import "waCommon/WACommon.proto";
  7. message CallLogRecord {
  8. enum CallType {
  9. REGULAR = 0;
  10. SCHEDULED_CALL = 1;
  11. VOICE_CHAT = 2;
  12. }
  13. enum SilenceReason {
  14. NONE = 0;
  15. SCHEDULED = 1;
  16. PRIVACY = 2;
  17. LIGHTWEIGHT = 3;
  18. }
  19. enum CallResult {
  20. CONNECTED = 0;
  21. REJECTED = 1;
  22. CANCELLED = 2;
  23. ACCEPTEDELSEWHERE = 3;
  24. MISSED = 4;
  25. INVALID = 5;
  26. UNAVAILABLE = 6;
  27. UPCOMING = 7;
  28. FAILED = 8;
  29. ABANDONED = 9;
  30. ONGOING = 10;
  31. }
  32. message ParticipantInfo {
  33. optional string userJID = 1;
  34. optional CallResult callResult = 2;
  35. }
  36. optional CallResult callResult = 1;
  37. optional bool isDndMode = 2;
  38. optional SilenceReason silenceReason = 3;
  39. optional int64 duration = 4;
  40. optional int64 startTime = 5;
  41. optional bool isIncoming = 6;
  42. optional bool isVideo = 7;
  43. optional bool isCallLink = 8;
  44. optional string callLinkToken = 9;
  45. optional string scheduledCallID = 10;
  46. optional string callID = 11;
  47. optional string callCreatorJID = 12;
  48. optional string groupJID = 13;
  49. repeated ParticipantInfo participants = 14;
  50. optional CallType callType = 15;
  51. }
  52. message AvatarUpdatedAction {
  53. enum AvatarEventType {
  54. UPDATED = 0;
  55. CREATED = 1;
  56. DELETED = 2;
  57. }
  58. optional AvatarEventType eventType = 1;
  59. repeated StickerAction recentAvatarStickers = 2;
  60. }
  61. message MaibaAIFeaturesControlAction {
  62. enum MaibaAIFeatureStatus {
  63. ENABLED = 0;
  64. ENABLED_HAS_LEARNING = 1;
  65. DISABLED = 2;
  66. }
  67. optional MaibaAIFeatureStatus aiFeatureStatus = 1;
  68. }
  69. message PaymentTosAction {
  70. enum PaymentNotice {
  71. BR_PAY_PRIVACY_POLICY = 0;
  72. }
  73. required PaymentNotice paymentNotice = 1;
  74. required bool accepted = 2;
  75. }
  76. message NotificationActivitySettingAction {
  77. enum NotificationActivitySetting {
  78. DEFAULT_ALL_MESSAGES = 0;
  79. ALL_MESSAGES = 1;
  80. HIGHLIGHTS = 2;
  81. DEFAULT_HIGHLIGHTS = 3;
  82. }
  83. optional NotificationActivitySetting notificationActivitySetting = 1;
  84. }
  85. message WaffleAccountLinkStateAction {
  86. enum AccountLinkState {
  87. ACTIVE = 0;
  88. }
  89. optional AccountLinkState linkState = 2;
  90. }
  91. message MerchantPaymentPartnerAction {
  92. enum Status {
  93. ACTIVE = 0;
  94. INACTIVE = 1;
  95. }
  96. required Status status = 1;
  97. required string country = 2;
  98. optional string gatewayName = 3;
  99. optional string credentialID = 4;
  100. }
  101. message GalaxyFlowAction {
  102. enum GalaxyFlowActionType {
  103. LAUNCH = 1;
  104. }
  105. required GalaxyFlowActionType type = 1;
  106. }
  107. message NoteEditAction {
  108. enum NoteType {
  109. UNSTRUCTURED = 1;
  110. STRUCTURED = 2;
  111. }
  112. optional NoteType type = 1;
  113. optional string chatJID = 2;
  114. optional int64 createdAt = 3;
  115. optional bool deleted = 4;
  116. optional string unstructuredContent = 5;
  117. }
  118. message StatusPrivacyAction {
  119. enum StatusDistributionMode {
  120. ALLOW_LIST = 0;
  121. DENY_LIST = 1;
  122. CONTACTS = 2;
  123. }
  124. optional StatusDistributionMode mode = 1;
  125. repeated string userJID = 2;
  126. }
  127. message MarketingMessageAction {
  128. enum MarketingMessagePrototypeType {
  129. PERSONALIZED = 0;
  130. }
  131. optional string name = 1;
  132. optional string message = 2;
  133. optional MarketingMessagePrototypeType type = 3;
  134. optional int64 createdAt = 4;
  135. optional int64 lastSentAt = 5;
  136. optional bool isDeleted = 6;
  137. optional string mediaID = 7;
  138. }
  139. message UsernameChatStartModeAction {
  140. enum ChatStartMode {
  141. LID = 1;
  142. PN = 2;
  143. }
  144. optional ChatStartMode chatStartMode = 1;
  145. }
  146. message LabelEditAction {
  147. enum ListType {
  148. NONE = 0;
  149. UNREAD = 1;
  150. GROUPS = 2;
  151. FAVORITES = 3;
  152. PREDEFINED = 4;
  153. CUSTOM = 5;
  154. COMMUNITY = 6;
  155. SERVER_ASSIGNED = 7;
  156. }
  157. optional string name = 1;
  158. optional int32 color = 2;
  159. optional int32 predefinedID = 3;
  160. optional bool deleted = 4;
  161. optional int32 orderIndex = 5;
  162. optional bool isActive = 6;
  163. optional ListType type = 7;
  164. optional bool isImmutable = 8;
  165. }
  166. message PatchDebugData {
  167. enum Platform {
  168. ANDROID = 0;
  169. SMBA = 1;
  170. IPHONE = 2;
  171. SMBI = 3;
  172. WEB = 4;
  173. UWP = 5;
  174. DARWIN = 6;
  175. IPAD = 7;
  176. WEAROS = 8;
  177. WASG = 9;
  178. WEARM = 10;
  179. CAPI = 11;
  180. }
  181. optional bytes currentLthash = 1;
  182. optional bytes newLthash = 2;
  183. optional bytes patchVersion = 3;
  184. optional bytes collectionName = 4;
  185. optional bytes firstFourBytesFromAHashOfSnapshotMACKey = 5;
  186. optional bytes newLthashSubtract = 6;
  187. optional int32 numberAdd = 7;
  188. optional int32 numberRemove = 8;
  189. optional int32 numberOverride = 9;
  190. optional Platform senderPlatform = 10;
  191. optional bool isSenderPrimary = 11;
  192. }
  193. message RecentEmojiWeight {
  194. optional string emoji = 1;
  195. optional float weight = 2;
  196. }
  197. message SyncActionValue {
  198. optional int64 timestamp = 1;
  199. optional StarAction starAction = 2;
  200. optional ContactAction contactAction = 3;
  201. optional MuteAction muteAction = 4;
  202. optional PinAction pinAction = 5;
  203. optional SecurityNotificationSetting securityNotificationSetting = 6;
  204. optional PushNameSetting pushNameSetting = 7;
  205. optional QuickReplyAction quickReplyAction = 8;
  206. optional RecentEmojiWeightsAction recentEmojiWeightsAction = 11;
  207. optional LabelEditAction labelEditAction = 14;
  208. optional LabelAssociationAction labelAssociationAction = 15;
  209. optional LocaleSetting localeSetting = 16;
  210. optional ArchiveChatAction archiveChatAction = 17;
  211. optional DeleteMessageForMeAction deleteMessageForMeAction = 18;
  212. optional KeyExpiration keyExpiration = 19;
  213. optional MarkChatAsReadAction markChatAsReadAction = 20;
  214. optional ClearChatAction clearChatAction = 21;
  215. optional DeleteChatAction deleteChatAction = 22;
  216. optional UnarchiveChatsSetting unarchiveChatsSetting = 23;
  217. optional PrimaryFeature primaryFeature = 24;
  218. optional AndroidUnsupportedActions androidUnsupportedActions = 26;
  219. optional AgentAction agentAction = 27;
  220. optional SubscriptionAction subscriptionAction = 28;
  221. optional UserStatusMuteAction userStatusMuteAction = 29;
  222. optional TimeFormatAction timeFormatAction = 30;
  223. optional NuxAction nuxAction = 31;
  224. optional PrimaryVersionAction primaryVersionAction = 32;
  225. optional StickerAction stickerAction = 33;
  226. optional RemoveRecentStickerAction removeRecentStickerAction = 34;
  227. optional ChatAssignmentAction chatAssignment = 35;
  228. optional ChatAssignmentOpenedStatusAction chatAssignmentOpenedStatus = 36;
  229. optional PnForLidChatAction pnForLidChatAction = 37;
  230. optional MarketingMessageAction marketingMessageAction = 38;
  231. optional MarketingMessageBroadcastAction marketingMessageBroadcastAction = 39;
  232. optional ExternalWebBetaAction externalWebBetaAction = 40;
  233. optional PrivacySettingRelayAllCalls privacySettingRelayAllCalls = 41;
  234. optional CallLogAction callLogAction = 42;
  235. optional StatusPrivacyAction statusPrivacy = 44;
  236. optional BotWelcomeRequestAction botWelcomeRequestAction = 45;
  237. optional DeleteIndividualCallLogAction deleteIndividualCallLog = 46;
  238. optional LabelReorderingAction labelReorderingAction = 47;
  239. optional PaymentInfoAction paymentInfoAction = 48;
  240. optional CustomPaymentMethodsAction customPaymentMethodsAction = 49;
  241. optional LockChatAction lockChatAction = 50;
  242. optional WAProtobufsChatLockSettings.ChatLockSettings chatLockSettings = 51;
  243. optional WamoUserIdentifierAction wamoUserIdentifierAction = 52;
  244. optional PrivacySettingDisableLinkPreviewsAction privacySettingDisableLinkPreviewsAction = 53;
  245. optional WAProtobufsDeviceCapabilities.DeviceCapabilities deviceCapabilities = 54;
  246. optional NoteEditAction noteEditAction = 55;
  247. optional FavoritesAction favoritesAction = 56;
  248. optional MerchantPaymentPartnerAction merchantPaymentPartnerAction = 57;
  249. optional WaffleAccountLinkStateAction waffleAccountLinkStateAction = 58;
  250. optional UsernameChatStartModeAction usernameChatStartMode = 59;
  251. optional NotificationActivitySettingAction notificationActivitySettingAction = 60;
  252. optional LidContactAction lidContactAction = 61;
  253. optional CtwaPerCustomerDataSharingAction ctwaPerCustomerDataSharingAction = 62;
  254. optional PaymentTosAction paymentTosAction = 63;
  255. optional PrivacySettingChannelsPersonalisedRecommendationAction privacySettingChannelsPersonalisedRecommendationAction = 64;
  256. optional BusinessBroadcastAssociationAction businessBroadcastAssociationAction = 65;
  257. optional DetectedOutcomesStatusAction detectedOutcomesStatusAction = 66;
  258. optional MaibaAIFeaturesControlAction maibaAiFeaturesControlAction = 68;
  259. optional BusinessBroadcastListAction businessBroadcastListAction = 69;
  260. optional MusicUserIdAction musicUserIDAction = 70;
  261. optional StatusPostOptInNotificationPreferencesAction statusPostOptInNotificationPreferencesAction = 71;
  262. optional AvatarUpdatedAction avatarUpdatedAction = 72;
  263. optional GalaxyFlowAction galaxyFlowAction = 73;
  264. }
  265. message StatusPostOptInNotificationPreferencesAction {
  266. optional bool enabled = 1;
  267. }
  268. message BroadcastListParticipant {
  269. required string lidJID = 1;
  270. optional string pnJID = 2;
  271. }
  272. message BusinessBroadcastListAction {
  273. optional bool deleted = 1;
  274. repeated BroadcastListParticipant participants = 2;
  275. optional string listName = 3;
  276. }
  277. message BusinessBroadcastAssociationAction {
  278. optional bool deleted = 1;
  279. }
  280. message CtwaPerCustomerDataSharingAction {
  281. optional bool isCtwaPerCustomerDataSharingEnabled = 1;
  282. }
  283. message LidContactAction {
  284. optional string fullName = 1;
  285. optional string firstName = 2;
  286. optional string username = 3;
  287. optional bool saveOnPrimaryAddressbook = 4;
  288. }
  289. message FavoritesAction {
  290. message Favorite {
  291. optional string ID = 1;
  292. }
  293. repeated Favorite favorites = 1;
  294. }
  295. message PrivacySettingChannelsPersonalisedRecommendationAction {
  296. optional bool isUserOptedOut = 1;
  297. }
  298. message PrivacySettingDisableLinkPreviewsAction {
  299. optional bool isPreviewsDisabled = 1;
  300. }
  301. message WamoUserIdentifierAction {
  302. optional string identifier = 1;
  303. }
  304. message LockChatAction {
  305. optional bool locked = 1;
  306. }
  307. message CustomPaymentMethodsAction {
  308. repeated CustomPaymentMethod customPaymentMethods = 1;
  309. }
  310. message CustomPaymentMethod {
  311. required string credentialID = 1;
  312. required string country = 2;
  313. required string type = 3;
  314. repeated CustomPaymentMethodMetadata metadata = 4;
  315. }
  316. message CustomPaymentMethodMetadata {
  317. required string key = 1;
  318. required string value = 2;
  319. }
  320. message PaymentInfoAction {
  321. optional string cpi = 1;
  322. }
  323. message LabelReorderingAction {
  324. repeated int32 sortedLabelIDs = 1;
  325. }
  326. message DeleteIndividualCallLogAction {
  327. optional string peerJID = 1;
  328. optional bool isIncoming = 2;
  329. }
  330. message BotWelcomeRequestAction {
  331. optional bool isSent = 1;
  332. }
  333. message MusicUserIdAction {
  334. optional string musicUserID = 1;
  335. }
  336. message CallLogAction {
  337. optional CallLogRecord callLogRecord = 1;
  338. }
  339. message PrivacySettingRelayAllCalls {
  340. optional bool isEnabled = 1;
  341. }
  342. message DetectedOutcomesStatusAction {
  343. optional bool isEnabled = 1;
  344. }
  345. message ExternalWebBetaAction {
  346. optional bool isOptIn = 1;
  347. }
  348. message MarketingMessageBroadcastAction {
  349. optional int32 repliedCount = 1;
  350. }
  351. message PnForLidChatAction {
  352. optional string pnJID = 1;
  353. }
  354. message ChatAssignmentOpenedStatusAction {
  355. optional bool chatOpened = 1;
  356. }
  357. message ChatAssignmentAction {
  358. optional string deviceAgentID = 1;
  359. }
  360. message StickerAction {
  361. optional string URL = 1;
  362. optional bytes fileEncSHA256 = 2;
  363. optional bytes mediaKey = 3;
  364. optional string mimetype = 4;
  365. optional uint32 height = 5;
  366. optional uint32 width = 6;
  367. optional string directPath = 7;
  368. optional uint64 fileLength = 8;
  369. optional bool isFavorite = 9;
  370. optional uint32 deviceIDHint = 10;
  371. optional bool isLottie = 11;
  372. optional string imageHash = 12;
  373. optional bool isAvatarSticker = 13;
  374. }
  375. message RemoveRecentStickerAction {
  376. optional int64 lastStickerSentTS = 1;
  377. }
  378. message PrimaryVersionAction {
  379. optional string version = 1;
  380. }
  381. message NuxAction {
  382. optional bool acknowledged = 1;
  383. }
  384. message TimeFormatAction {
  385. optional bool isTwentyFourHourFormatEnabled = 1;
  386. }
  387. message UserStatusMuteAction {
  388. optional bool muted = 1;
  389. }
  390. message SubscriptionAction {
  391. optional bool isDeactivated = 1;
  392. optional bool isAutoRenewing = 2;
  393. optional int64 expirationDate = 3;
  394. }
  395. message AgentAction {
  396. optional string name = 1;
  397. optional int32 deviceID = 2;
  398. optional bool isDeleted = 3;
  399. }
  400. message AndroidUnsupportedActions {
  401. optional bool allowed = 1;
  402. }
  403. message PrimaryFeature {
  404. repeated string flags = 1;
  405. }
  406. message KeyExpiration {
  407. optional int32 expiredKeyEpoch = 1;
  408. }
  409. message SyncActionMessage {
  410. optional WACommon.MessageKey key = 1;
  411. optional int64 timestamp = 2;
  412. }
  413. message SyncActionMessageRange {
  414. optional int64 lastMessageTimestamp = 1;
  415. optional int64 lastSystemMessageTimestamp = 2;
  416. repeated SyncActionMessage messages = 3;
  417. }
  418. message UnarchiveChatsSetting {
  419. optional bool unarchiveChats = 1;
  420. }
  421. message DeleteChatAction {
  422. optional SyncActionMessageRange messageRange = 1;
  423. }
  424. message ClearChatAction {
  425. optional SyncActionMessageRange messageRange = 1;
  426. }
  427. message MarkChatAsReadAction {
  428. optional bool read = 1;
  429. optional SyncActionMessageRange messageRange = 2;
  430. }
  431. message DeleteMessageForMeAction {
  432. optional bool deleteMedia = 1;
  433. optional int64 messageTimestamp = 2;
  434. }
  435. message ArchiveChatAction {
  436. optional bool archived = 1;
  437. optional SyncActionMessageRange messageRange = 2;
  438. }
  439. message RecentEmojiWeightsAction {
  440. repeated RecentEmojiWeight weights = 1;
  441. }
  442. message LabelAssociationAction {
  443. optional bool labeled = 1;
  444. }
  445. message QuickReplyAction {
  446. optional string shortcut = 1;
  447. optional string message = 2;
  448. repeated string keywords = 3;
  449. optional int32 count = 4;
  450. optional bool deleted = 5;
  451. }
  452. message LocaleSetting {
  453. optional string locale = 1;
  454. }
  455. message PushNameSetting {
  456. optional string name = 1;
  457. }
  458. message SecurityNotificationSetting {
  459. optional bool showNotification = 1;
  460. }
  461. message PinAction {
  462. optional bool pinned = 1;
  463. }
  464. message MuteAction {
  465. optional bool muted = 1;
  466. optional int64 muteEndTimestamp = 2;
  467. optional bool autoMuted = 3;
  468. }
  469. message ContactAction {
  470. optional string fullName = 1;
  471. optional string firstName = 2;
  472. optional string lidJID = 3;
  473. optional bool saveOnPrimaryAddressbook = 4;
  474. optional string pnJID = 5;
  475. optional string username = 6;
  476. }
  477. message StarAction {
  478. optional bool starred = 1;
  479. }
  480. message SyncActionData {
  481. optional bytes index = 1;
  482. optional SyncActionValue value = 2;
  483. optional bytes padding = 3;
  484. optional int32 version = 4;
  485. }