WAMediaTransport.proto 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. syntax = "proto2";
  2. package WAMediaTransport;
  3. option go_package = "git.bobomao.top/joey/whatsmeow/proto/waMediaTransport";
  4. import "waCommon/WACommon.proto";
  5. message WAMediaTransport {
  6. message Ancillary {
  7. message Thumbnail {
  8. message DownloadableThumbnail {
  9. optional bytes fileSHA256 = 1;
  10. optional bytes fileEncSHA256 = 2;
  11. optional string directPath = 3;
  12. optional bytes mediaKey = 4;
  13. optional int64 mediaKeyTimestamp = 5;
  14. optional string objectID = 6;
  15. optional bytes thumbnailScansSidecar = 7;
  16. repeated uint32 thumbnailScanLengths = 8;
  17. }
  18. optional bytes JPEGThumbnail = 1;
  19. optional DownloadableThumbnail downloadableThumbnail = 2;
  20. optional uint32 thumbnailWidth = 3;
  21. optional uint32 thumbnailHeight = 4;
  22. }
  23. optional uint64 fileLength = 1;
  24. optional string mimetype = 2;
  25. optional Thumbnail thumbnail = 3;
  26. optional string objectID = 4;
  27. }
  28. message Integral {
  29. optional bytes fileSHA256 = 1;
  30. optional bytes mediaKey = 2;
  31. optional bytes fileEncSHA256 = 3;
  32. optional string directPath = 4;
  33. optional int64 mediaKeyTimestamp = 5;
  34. }
  35. optional Integral integral = 1;
  36. optional Ancillary ancillary = 2;
  37. }
  38. message ImageTransport {
  39. message Ancillary {
  40. enum HdType {
  41. NONE = 0;
  42. LQ_4K = 1;
  43. HQ_4K = 2;
  44. }
  45. optional uint32 height = 1;
  46. optional uint32 width = 2;
  47. optional bytes scansSidecar = 3;
  48. repeated uint32 scanLengths = 4;
  49. optional bytes midQualityFileSHA256 = 5;
  50. optional HdType hdType = 6;
  51. repeated float memoriesConceptScores = 7 [packed=true];
  52. repeated uint32 memoriesConceptIDs = 8 [packed=true];
  53. }
  54. message Integral {
  55. optional WAMediaTransport transport = 1;
  56. }
  57. optional Integral integral = 1;
  58. optional Ancillary ancillary = 2;
  59. }
  60. message VideoTransport {
  61. message Ancillary {
  62. enum Attribution {
  63. NONE = 0;
  64. GIPHY = 1;
  65. TENOR = 2;
  66. }
  67. optional uint32 seconds = 1;
  68. optional WACommon.MessageText caption = 2;
  69. optional bool gifPlayback = 3;
  70. optional uint32 height = 4;
  71. optional uint32 width = 5;
  72. optional bytes sidecar = 6;
  73. optional Attribution gifAttribution = 7;
  74. optional string accessibilityLabel = 8;
  75. optional bool isHd = 9;
  76. }
  77. message Integral {
  78. optional WAMediaTransport transport = 1;
  79. }
  80. optional Integral integral = 1;
  81. optional Ancillary ancillary = 2;
  82. }
  83. message AudioTransport {
  84. message Ancillary {
  85. message AvatarAudio {
  86. enum AnimationsType {
  87. TALKING_A = 0;
  88. IDLE_A = 1;
  89. TALKING_B = 2;
  90. IDLE_B = 3;
  91. BACKGROUND = 4;
  92. }
  93. message DownloadableAvatarAnimations {
  94. optional bytes fileSHA256 = 1;
  95. optional bytes fileEncSHA256 = 2;
  96. optional string directPath = 3;
  97. optional bytes mediaKey = 4;
  98. optional int64 mediaKeyTimestamp = 5;
  99. optional string objectID = 6;
  100. optional AnimationsType animationsType = 7;
  101. }
  102. optional uint32 poseID = 1;
  103. repeated DownloadableAvatarAnimations avatarAnimations = 2;
  104. }
  105. optional uint32 seconds = 1;
  106. optional AvatarAudio avatarAudio = 2;
  107. }
  108. message Integral {
  109. enum AudioFormat {
  110. UNKNOWN = 0;
  111. OPUS = 1;
  112. }
  113. optional WAMediaTransport transport = 1;
  114. optional AudioFormat audioFormat = 2;
  115. }
  116. optional Integral integral = 1;
  117. optional Ancillary ancillary = 2;
  118. }
  119. message DocumentTransport {
  120. message Ancillary {
  121. optional uint32 pageCount = 1;
  122. }
  123. message Integral {
  124. optional WAMediaTransport transport = 1;
  125. }
  126. optional Integral integral = 1;
  127. optional Ancillary ancillary = 2;
  128. }
  129. message StickerTransport {
  130. message Ancillary {
  131. optional uint32 pageCount = 1;
  132. optional uint32 height = 2;
  133. optional uint32 width = 3;
  134. optional uint32 firstFrameLength = 4;
  135. optional bytes firstFrameSidecar = 5;
  136. optional string mustacheText = 6;
  137. optional bool isThirdParty = 7;
  138. optional string receiverFetchID = 8;
  139. optional string accessibilityLabel = 9;
  140. }
  141. message Integral {
  142. optional WAMediaTransport transport = 1;
  143. optional bool isAnimated = 2;
  144. optional string receiverFetchID = 3;
  145. }
  146. optional Integral integral = 1;
  147. optional Ancillary ancillary = 2;
  148. }
  149. message ContactTransport {
  150. message Ancillary {
  151. optional string displayName = 1;
  152. }
  153. message Integral {
  154. oneof contact {
  155. string vcard = 1;
  156. WAMediaTransport downloadableVcard = 2;
  157. }
  158. }
  159. optional Integral integral = 1;
  160. optional Ancillary ancillary = 2;
  161. }