slidge-whatsapp 0.2.5__cp312-cp312-manylinux_2_36_x86_64.whl → 0.2.7__cp312-cp312-manylinux_2_36_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of slidge-whatsapp might be problematic. Click here for more details.

Files changed (357) hide show
  1. slidge_whatsapp/config.py +3 -0
  2. slidge_whatsapp/event.go +31 -26
  3. slidge_whatsapp/gateway.go +13 -9
  4. slidge_whatsapp/gateway.py +2 -2
  5. slidge_whatsapp/generated/_whatsapp.cpython-312-x86_64-linux-gnu.h +141 -141
  6. slidge_whatsapp/generated/_whatsapp.cpython-312-x86_64-linux-gnu.so +0 -0
  7. slidge_whatsapp/generated/build.py +107 -107
  8. slidge_whatsapp/generated/whatsapp.c +1406 -1406
  9. slidge_whatsapp/generated/whatsapp.go +883 -883
  10. slidge_whatsapp/generated/whatsapp.py +1196 -1196
  11. slidge_whatsapp/generated/whatsapp_go.h +141 -141
  12. slidge_whatsapp/go.mod +15 -12
  13. slidge_whatsapp/go.sum +35 -29
  14. slidge_whatsapp/media/media.go +21 -11
  15. slidge_whatsapp/session.go +73 -66
  16. slidge_whatsapp/vendor/github.com/ebitengine/purego/dlfcn.go +4 -4
  17. slidge_whatsapp/vendor/github.com/ebitengine/purego/dlfcn_darwin.go +0 -5
  18. slidge_whatsapp/vendor/github.com/ebitengine/purego/internal/fakecgo/go_libinit.go +3 -0
  19. slidge_whatsapp/vendor/github.com/ebitengine/purego/internal/fakecgo/symbols.go +40 -20
  20. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/CHANGELOG.md +14 -1
  21. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/ffi.go +2 -2
  22. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/fun.go +10 -2
  23. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib.go +1 -1
  24. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib_unix.go +1 -1
  25. slidge_whatsapp/vendor/github.com/jupiterrider/ffi/lib_windows.go +1 -1
  26. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/README.md +2 -7
  27. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/callback.go +2 -1
  28. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c +8510 -5090
  29. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.h +344 -150
  30. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3.go +57 -23
  31. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_unlock_notify.c +4 -0
  32. slidge_whatsapp/vendor/github.com/mattn/go-sqlite3/sqlite3_opt_unlock_notify.go +4 -0
  33. slidge_whatsapp/vendor/github.com/petermattis/goid/.gitignore +4 -0
  34. slidge_whatsapp/vendor/github.com/petermattis/goid/LICENSE +202 -0
  35. slidge_whatsapp/vendor/github.com/petermattis/goid/README.md +4 -0
  36. slidge_whatsapp/vendor/github.com/petermattis/goid/goid.go +35 -0
  37. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_gccgo.go +26 -0
  38. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.3.c +23 -0
  39. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.3.go +22 -0
  40. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.4.go +35 -0
  41. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.4.s +18 -0
  42. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.5.go +28 -0
  43. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_go1.5.s +44 -0
  44. slidge_whatsapp/vendor/github.com/petermattis/goid/goid_slow.go +24 -0
  45. slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_gccgo_go1.8.go +17 -0
  46. slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.23.go +38 -0
  47. slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.5.go +57 -0
  48. slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.6.go +43 -0
  49. slidge_whatsapp/vendor/github.com/petermattis/goid/runtime_go1.9.go +37 -0
  50. slidge_whatsapp/vendor/github.com/rs/zerolog/CONTRIBUTING.md +43 -0
  51. slidge_whatsapp/vendor/github.com/rs/zerolog/README.md +31 -0
  52. slidge_whatsapp/vendor/github.com/rs/zerolog/console.go +20 -5
  53. slidge_whatsapp/vendor/github.com/rs/zerolog/log/log.go +131 -0
  54. slidge_whatsapp/vendor/github.com/rs/zerolog/log.go +1 -1
  55. slidge_whatsapp/vendor/github.com/rs/zerolog/sampler.go +4 -1
  56. slidge_whatsapp/vendor/github.com/rs/zerolog/writer.go +9 -0
  57. slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/GroupCipher.go +17 -6
  58. slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/GroupSessionBuilder.go +17 -7
  59. slidge_whatsapp/vendor/go.mau.fi/libsignal/groups/state/store/SenderKeyStore.go +4 -2
  60. slidge_whatsapp/vendor/go.mau.fi/libsignal/keys/chain/ChainKey.go +1 -0
  61. slidge_whatsapp/vendor/go.mau.fi/libsignal/keys/identity/IdentityKey.go +1 -0
  62. slidge_whatsapp/vendor/go.mau.fi/libsignal/logger/DefaultLogger.go +2 -2
  63. slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/FingerprintProtocol.pb.go +3 -2
  64. slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/LocalStorageProtocol.pb.go +3 -2
  65. slidge_whatsapp/vendor/go.mau.fi/libsignal/serialize/WhisperTextProtocol.pb.go +3 -2
  66. slidge_whatsapp/vendor/go.mau.fi/libsignal/session/Session.go +41 -17
  67. slidge_whatsapp/vendor/go.mau.fi/libsignal/session/SessionCipher.go +64 -30
  68. slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/IdentityKeyStore.go +5 -3
  69. slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/MessageKeyStore.go +6 -4
  70. slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/PreKeyStore.go +6 -4
  71. slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/SessionStore.go +8 -6
  72. slidge_whatsapp/vendor/go.mau.fi/libsignal/state/store/SignedPreKeyStore.go +7 -5
  73. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/connlog.go +257 -0
  74. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/database.go +309 -0
  75. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/iter.go +233 -0
  76. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/json.go +47 -0
  77. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/log.go +129 -0
  78. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/massinsert.go +164 -0
  79. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/queryhelper.go +137 -0
  80. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/reflectscan.go +30 -0
  81. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/transaction.go +180 -0
  82. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/upgrades.go +250 -0
  83. slidge_whatsapp/vendor/go.mau.fi/util/dbutil/upgradetable.go +331 -0
  84. slidge_whatsapp/vendor/go.mau.fi/util/exerrors/dualerror.go +33 -0
  85. slidge_whatsapp/vendor/go.mau.fi/util/exerrors/must.go +23 -0
  86. slidge_whatsapp/vendor/go.mau.fi/util/exhttp/cors.go +32 -0
  87. slidge_whatsapp/vendor/go.mau.fi/util/exhttp/handleerrors.go +64 -0
  88. slidge_whatsapp/vendor/go.mau.fi/util/exhttp/json.go +36 -0
  89. slidge_whatsapp/vendor/go.mau.fi/util/exhttp/middleware.go +30 -0
  90. slidge_whatsapp/vendor/go.mau.fi/util/exhttp/networkerror.go +37 -0
  91. slidge_whatsapp/vendor/go.mau.fi/util/exstrings/stringutil.go +76 -0
  92. slidge_whatsapp/vendor/go.mau.fi/util/exsync/event.go +88 -0
  93. slidge_whatsapp/vendor/go.mau.fi/util/exsync/returnonce.go +25 -0
  94. slidge_whatsapp/vendor/go.mau.fi/util/exsync/ringbuffer.go +139 -0
  95. slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncmap.go +94 -0
  96. slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncset.go +136 -0
  97. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/callermarshal.go +28 -0
  98. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/defaults.go +32 -0
  99. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/generics.go +45 -0
  100. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/writer.go +81 -0
  101. slidge_whatsapp/vendor/go.mau.fi/util/ptr/ptr.go +43 -0
  102. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/decode.go +27 -26
  103. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/encode.go +4 -3
  104. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/keys.go +5 -4
  105. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate.go +27 -25
  106. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/armadillomessage.go +40 -7
  107. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/binary/encoder.go +1 -1
  108. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/broadcast.go +5 -4
  109. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/call.go +1 -1
  110. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/client.go +119 -37
  111. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/connectionevents.go +29 -11
  112. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download-to-file.go +63 -30
  113. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download.go +74 -34
  114. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/errors.go +1 -0
  115. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/group.go +61 -31
  116. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/internals.go +188 -152
  117. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/keepalive.go +3 -2
  118. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaconn.go +5 -3
  119. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaretry.go +2 -1
  120. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/message.go +444 -135
  121. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/msgsecret.go +118 -31
  122. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/notification.go +78 -42
  123. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair-code.go +7 -4
  124. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair.go +42 -18
  125. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/prekeys.go +9 -5
  126. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/presence.go +2 -1
  127. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/privacysettings.go +10 -11
  128. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/extra.go +7 -0
  129. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/InstamadilloAddMessage.pb.go +983 -0
  130. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/InstamadilloAddMessage.proto +85 -0
  131. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloAddMessage/extra.go +3 -0
  132. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeActionLog/InstamadilloCoreTypeActionLog.pb.go +197 -0
  133. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeActionLog/InstamadilloCoreTypeActionLog.proto +13 -0
  134. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeAdminMessage/InstamadilloCoreTypeAdminMessage.pb.go +279 -0
  135. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeAdminMessage/InstamadilloCoreTypeAdminMessage.proto +21 -0
  136. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeCollection/InstamadilloCoreTypeCollection.pb.go +137 -0
  137. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeCollection/InstamadilloCoreTypeCollection.proto +10 -0
  138. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeLink/InstamadilloCoreTypeLink.pb.go +313 -0
  139. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeLink/InstamadilloCoreTypeLink.proto +27 -0
  140. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeMedia/InstamadilloCoreTypeMedia.pb.go +1299 -0
  141. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeMedia/InstamadilloCoreTypeMedia.proto +112 -0
  142. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeText/InstamadilloCoreTypeText.pb.go +514 -0
  143. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloCoreTypeText/InstamadilloCoreTypeText.proto +47 -0
  144. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/InstamadilloDeleteMessage.pb.go +123 -0
  145. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/InstamadilloDeleteMessage.proto +7 -0
  146. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloDeleteMessage/extra.go +3 -0
  147. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/InstamadilloSupplementMessage.pb.go +720 -0
  148. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/InstamadilloSupplementMessage.proto +59 -0
  149. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloSupplementMessage/extra.go +3 -0
  150. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloTransportPayload/InstamadilloTransportPayload.pb.go +365 -0
  151. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloTransportPayload/InstamadilloTransportPayload.proto +33 -0
  152. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloXmaContentRef/InstamadilloXmaContentRef.pb.go +1238 -0
  153. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/instamadilloXmaContentRef/InstamadilloXmaContentRef.proto +105 -0
  154. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.go +39 -9
  155. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.go +354 -175
  156. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.proto +5 -5
  157. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.go +170 -15
  158. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.proto +4 -0
  159. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.go +29 -9
  160. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go +13 -9
  161. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.go +344 -31
  162. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.proto +26 -0
  163. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.pb.go → WACompanionReg.pb.go} +184 -89
  164. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.proto → WACompanionReg.proto} +2 -1
  165. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.go +173 -9
  166. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go +78 -16
  167. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto +5 -0
  168. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go +7428 -2151
  169. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto +373 -44
  170. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go +456 -135
  171. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto +14 -0
  172. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waLidMigrationSyncPayload/WAWebProtobufLidMigrationSyncPayload.pb.go +198 -0
  173. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waLidMigrationSyncPayload/WAWebProtobufLidMigrationSyncPayload.proto +14 -0
  174. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.go +162 -9
  175. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.proto +1 -0
  176. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.go +32 -9
  177. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.proto +1 -0
  178. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.go +192 -52
  179. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.proto +8 -0
  180. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.go +60 -9
  181. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/extra.go +7 -6
  182. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.go +39 -9
  183. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.go +61 -9
  184. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.pb.go +800 -0
  185. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waStatusAttributions/WAStatusAttributions.proto +72 -0
  186. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go +1344 -438
  187. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto +52 -0
  188. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go +27 -9
  189. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.go +59 -9
  190. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go +382 -78
  191. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto +8 -0
  192. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go +563 -9
  193. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto +4 -0
  194. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/receipt.go +25 -9
  195. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/reportingfields.json +1 -0
  196. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/reportingtoken.go +176 -0
  197. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/retry.go +39 -21
  198. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/send.go +261 -75
  199. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/sendfb.go +28 -16
  200. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/clientpayload.go +3 -1
  201. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/noop.go +85 -43
  202. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/signal.go +75 -88
  203. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/container.go +86 -65
  204. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/lidmap.go +186 -0
  205. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go +291 -167
  206. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/00-latest-schema.sql +155 -0
  207. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/03-message-secrets.sql +11 -0
  208. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/04-privacy-tokens.sql +8 -0
  209. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/05-account-jid-format.sql +2 -0
  210. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/06-facebook-uuid.sql +2 -0
  211. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/07-account-lid.sql +2 -0
  212. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/08-lid-mapping.sql +5 -0
  213. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/09-decryption-buffer.sql +10 -0
  214. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/10-chat-db-lid-migration-ts.sql +2 -0
  215. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/upgrades.go +22 -0
  216. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/store.go +107 -56
  217. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/botmap.go +210 -0
  218. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/events/events.go +13 -2
  219. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/group.go +15 -6
  220. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/jid.go +7 -8
  221. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/message.go +18 -0
  222. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/update.go +3 -2
  223. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/upload.go +1 -1
  224. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/user.go +47 -29
  225. slidge_whatsapp/vendor/golang.org/x/exp/LICENSE +27 -0
  226. slidge_whatsapp/vendor/golang.org/x/exp/PATENTS +22 -0
  227. slidge_whatsapp/vendor/golang.org/x/exp/constraints/constraints.go +54 -0
  228. slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/guts.go +50 -0
  229. slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/httplex.go +347 -0
  230. slidge_whatsapp/vendor/golang.org/x/net/http2/.gitignore +2 -0
  231. slidge_whatsapp/vendor/golang.org/x/net/http2/ascii.go +53 -0
  232. slidge_whatsapp/vendor/golang.org/x/net/http2/ciphers.go +641 -0
  233. slidge_whatsapp/vendor/golang.org/x/net/http2/client_conn_pool.go +311 -0
  234. slidge_whatsapp/vendor/golang.org/x/net/http2/config.go +122 -0
  235. slidge_whatsapp/vendor/golang.org/x/net/http2/config_go124.go +61 -0
  236. slidge_whatsapp/vendor/golang.org/x/net/http2/config_pre_go124.go +16 -0
  237. slidge_whatsapp/vendor/golang.org/x/net/http2/databuffer.go +149 -0
  238. slidge_whatsapp/vendor/golang.org/x/net/http2/errors.go +145 -0
  239. slidge_whatsapp/vendor/golang.org/x/net/http2/flow.go +120 -0
  240. slidge_whatsapp/vendor/golang.org/x/net/http2/frame.go +1702 -0
  241. slidge_whatsapp/vendor/golang.org/x/net/http2/gotrack.go +170 -0
  242. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/encode.go +245 -0
  243. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/hpack.go +523 -0
  244. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/huffman.go +226 -0
  245. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/static_table.go +188 -0
  246. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/tables.go +403 -0
  247. slidge_whatsapp/vendor/golang.org/x/net/http2/http2.go +432 -0
  248. slidge_whatsapp/vendor/golang.org/x/net/http2/pipe.go +184 -0
  249. slidge_whatsapp/vendor/golang.org/x/net/http2/server.go +3350 -0
  250. slidge_whatsapp/vendor/golang.org/x/net/http2/timer.go +20 -0
  251. slidge_whatsapp/vendor/golang.org/x/net/http2/transport.go +3287 -0
  252. slidge_whatsapp/vendor/golang.org/x/net/http2/unencrypted.go +32 -0
  253. slidge_whatsapp/vendor/golang.org/x/net/http2/write.go +381 -0
  254. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched.go +251 -0
  255. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_priority.go +451 -0
  256. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_random.go +77 -0
  257. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_roundrobin.go +119 -0
  258. slidge_whatsapp/vendor/golang.org/x/net/idna/go118.go +13 -0
  259. slidge_whatsapp/vendor/golang.org/x/net/idna/idna10.0.0.go +769 -0
  260. slidge_whatsapp/vendor/golang.org/x/net/idna/idna9.0.0.go +717 -0
  261. slidge_whatsapp/vendor/golang.org/x/net/idna/pre_go118.go +11 -0
  262. slidge_whatsapp/vendor/golang.org/x/net/idna/punycode.go +217 -0
  263. slidge_whatsapp/vendor/golang.org/x/net/idna/tables10.0.0.go +4559 -0
  264. slidge_whatsapp/vendor/golang.org/x/net/idna/tables11.0.0.go +4653 -0
  265. slidge_whatsapp/vendor/golang.org/x/net/idna/tables12.0.0.go +4733 -0
  266. slidge_whatsapp/vendor/golang.org/x/net/idna/tables13.0.0.go +4959 -0
  267. slidge_whatsapp/vendor/golang.org/x/net/idna/tables15.0.0.go +5144 -0
  268. slidge_whatsapp/vendor/golang.org/x/net/idna/tables9.0.0.go +4486 -0
  269. slidge_whatsapp/vendor/golang.org/x/net/idna/trie.go +51 -0
  270. slidge_whatsapp/vendor/golang.org/x/net/idna/trie12.0.0.go +30 -0
  271. slidge_whatsapp/vendor/golang.org/x/net/idna/trie13.0.0.go +30 -0
  272. slidge_whatsapp/vendor/golang.org/x/net/idna/trieval.go +119 -0
  273. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/ascii.go +53 -0
  274. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/headermap.go +115 -0
  275. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/request.go +467 -0
  276. slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_darwin.go +148 -1
  277. slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_linux.go +16 -26
  278. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +84 -0
  279. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +20 -0
  280. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +84 -0
  281. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +20 -0
  282. slidge_whatsapp/vendor/golang.org/x/sys/windows/security_windows.go +44 -5
  283. slidge_whatsapp/vendor/golang.org/x/sys/windows/syscall_windows.go +4 -2
  284. slidge_whatsapp/vendor/golang.org/x/sys/windows/types_windows.go +239 -0
  285. slidge_whatsapp/vendor/golang.org/x/sys/windows/zsyscall_windows.go +9 -0
  286. slidge_whatsapp/vendor/golang.org/x/text/LICENSE +27 -0
  287. slidge_whatsapp/vendor/golang.org/x/text/PATENTS +22 -0
  288. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule.go +336 -0
  289. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go +11 -0
  290. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go +14 -0
  291. slidge_whatsapp/vendor/golang.org/x/text/transform/transform.go +709 -0
  292. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bidi.go +359 -0
  293. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bracket.go +335 -0
  294. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/core.go +1071 -0
  295. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/prop.go +206 -0
  296. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go +1815 -0
  297. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go +1887 -0
  298. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go +1923 -0
  299. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go +1955 -0
  300. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go +2042 -0
  301. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go +1781 -0
  302. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/trieval.go +48 -0
  303. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/composition.go +512 -0
  304. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/forminfo.go +279 -0
  305. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/input.go +109 -0
  306. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/iter.go +458 -0
  307. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/normalize.go +610 -0
  308. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/readwriter.go +125 -0
  309. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go +7657 -0
  310. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go +7693 -0
  311. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go +7710 -0
  312. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go +7760 -0
  313. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go +7907 -0
  314. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go +7637 -0
  315. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/transform.go +88 -0
  316. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/trie.go +54 -0
  317. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb +0 -0
  318. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/filedesc/editions.go +3 -0
  319. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +16 -0
  320. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/{strings_unsafe_go121.go → strings_unsafe.go} +0 -2
  321. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/version/version.go +1 -1
  322. slidge_whatsapp/vendor/google.golang.org/protobuf/proto/merge.go +6 -0
  323. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +2 -0
  324. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/{value_unsafe_go121.go → value_unsafe.go} +0 -2
  325. slidge_whatsapp/vendor/modules.txt +52 -13
  326. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.7.dist-info}/METADATA +1 -1
  327. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.7.dist-info}/RECORD +330 -184
  328. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.7.dist-info}/WHEEL +1 -1
  329. slidge_whatsapp/vendor/github.com/rs/zerolog/CNAME +0 -1
  330. slidge_whatsapp/vendor/github.com/rs/zerolog/_config.yml +0 -1
  331. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.raw +0 -0
  332. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.raw +0 -0
  333. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.raw +0 -0
  334. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.raw +0 -23
  335. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.raw +0 -7
  336. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.raw +0 -0
  337. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WAWebProtobufsCompanionReg.pb.raw +0 -0
  338. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.raw +0 -0
  339. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.raw +0 -0
  340. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.raw +0 -0
  341. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.raw +0 -0
  342. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.raw +0 -0
  343. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.raw +0 -0
  344. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.raw +0 -0
  345. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.raw +0 -0
  346. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.raw +0 -0
  347. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.raw +0 -0
  348. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.raw +0 -0
  349. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.raw +0 -0
  350. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.raw +0 -0
  351. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.raw +0 -0
  352. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.raw +0 -0
  353. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrade.go +0 -296
  354. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe_go120.go +0 -94
  355. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe_go120.go +0 -98
  356. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.7.dist-info}/LICENSE +0 -0
  357. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.7.dist-info}/entry_points.txt +0 -0
slidge_whatsapp/config.py CHANGED
@@ -21,6 +21,9 @@ DB_PATH__DOC = (
21
21
  "${SLIDGE_HOME_DIR}/whatsapp/whatsapp.db"
22
22
  )
23
23
 
24
+ DB_PARAMS = "?_foreign_keys=true"
25
+ DB_PARAMS__DOC = "Additional parameters to pass to database connection string."
26
+
24
27
  ALWAYS_SYNC_ROSTER = False
25
28
  ALWAYS_SYNC_ROSTER__DOC = (
26
29
  "Whether or not to perform a full sync of the WhatsApp roster on startup."
slidge_whatsapp/event.go CHANGED
@@ -5,6 +5,7 @@ import (
5
5
  "context"
6
6
  "fmt"
7
7
  "mime"
8
+ "slices"
8
9
  "strings"
9
10
 
10
11
  // Internal packages.
@@ -255,6 +256,7 @@ type Album struct {
255
256
  func newMessageEvent(client *whatsmeow.Client, evt *events.Message) (EventKind, *EventPayload) {
256
257
  // Set basic data for message, to be potentially amended depending on the concrete version of
257
258
  // the underlying message.
259
+ var ctx = context.Background()
258
260
  var message = Message{
259
261
  Kind: MessagePlain,
260
262
  ID: evt.Info.ID,
@@ -358,7 +360,7 @@ func newMessageEvent(client *whatsmeow.Client, evt *events.Message) (EventKind,
358
360
  }
359
361
 
360
362
  // Handle message attachments, if any.
361
- if attach, context, err := getMessageAttachments(client, evt.Message); err != nil {
363
+ if attach, context, err := getMessageAttachments(ctx, client, evt.Message); err != nil {
362
364
  client.Log.Errorf("Failed getting message attachments: %s", err)
363
365
  return EventUnknown, nil
364
366
  } else if len(attach) > 0 {
@@ -412,7 +414,7 @@ func getMessageWithContext(message Message, info *waE2E.ContextInfo) Message {
412
414
 
413
415
  // GetMessageAttachments fetches and decrypts attachments (images, audio, video, or documents) sent
414
416
  // via WhatsApp. Any failures in retrieving any attachment will return an error immediately.
415
- func getMessageAttachments(client *whatsmeow.Client, message *waE2E.Message) ([]Attachment, *waE2E.ContextInfo, error) {
417
+ func getMessageAttachments(ctx context.Context, client *whatsmeow.Client, message *waE2E.Message) ([]Attachment, *waE2E.ContextInfo, error) {
416
418
  var result []Attachment
417
419
  var info *waE2E.ContextInfo
418
420
  var convertSpec *media.Spec
@@ -450,7 +452,7 @@ func getMessageAttachments(client *whatsmeow.Client, message *waE2E.Message) ([]
450
452
  }
451
453
 
452
454
  // Attempt to download and decrypt raw attachment data, if any.
453
- data, err := client.Download(msg)
455
+ data, err := client.Download(ctx, msg)
454
456
  if err != nil {
455
457
  return nil, nil, err
456
458
  }
@@ -459,8 +461,10 @@ func getMessageAttachments(client *whatsmeow.Client, message *waE2E.Message) ([]
459
461
 
460
462
  // Convert incoming data if a specification has been given, ignoring any errors that occur.
461
463
  if convertSpec != nil {
462
- data, err = media.Convert(context.Background(), a.Data, convertSpec)
463
- if err == nil {
464
+ data, err = media.Convert(ctx, a.Data, convertSpec)
465
+ if err != nil {
466
+ client.Log.Warnf("failed to convert incoming attachment: %s", err)
467
+ } else {
464
468
  a.Data, a.MIME = data, string(convertSpec.MIME)
465
469
  }
466
470
  }
@@ -557,7 +561,7 @@ var (
557
561
  //
558
562
  // If the input MIME type is unknown, or conversion is impossible, the given attachment is not
559
563
  // changed.
560
- func convertAttachment(attach *Attachment) error {
564
+ func convertAttachment(ctx context.Context, attach *Attachment) error {
561
565
  var detectedMIME media.MIMEType
562
566
  if t := media.DetectMIMEType(attach.Data); t != media.TypeUnknown {
563
567
  detectedMIME = t
@@ -567,8 +571,6 @@ func convertAttachment(attach *Attachment) error {
567
571
  }
568
572
 
569
573
  var spec media.Spec
570
- var ctx = context.Background()
571
-
572
574
  switch detectedMIME {
573
575
  case media.TypePNG, media.TypeWebP:
574
576
  // Convert common image formats to JPEG for inline preview.
@@ -648,6 +650,10 @@ func convertAttachment(attach *Attachment) error {
648
650
  }
649
651
 
650
652
  attach.Data, attach.MIME = data, string(spec.MIME)
653
+ if i := strings.LastIndexByte(attach.Filename, '.'); i != -1 {
654
+ attach.Filename = attach.Filename[:i] + extensionByType(attach.MIME)
655
+ }
656
+
651
657
  return nil
652
658
  }
653
659
 
@@ -666,12 +672,10 @@ var knownMediaTypes = map[string]whatsmeow.MediaType{
666
672
  // type specified within. Attachments are handled as generic file uploads unless they're of a
667
673
  // specific format; in addition, certain MIME types may be automatically converted to a
668
674
  // well-supported type via FFmpeg (if available).
669
- func uploadAttachment(client *whatsmeow.Client, attach *Attachment) (*waE2E.Message, error) {
670
- var ctx = context.Background()
675
+ func uploadAttachment(ctx context.Context, client *whatsmeow.Client, attach *Attachment) (*waE2E.Message, error) {
671
676
  var originalMIME = attach.MIME
672
-
673
- if err := convertAttachment(attach); err != nil {
674
- client.Log.Warnf("failed to auto-convert attachment: %s", err)
677
+ if err := convertAttachment(ctx, attach); err != nil {
678
+ client.Log.Warnf("failed to convert outgoing attachment: %s", err)
675
679
  }
676
680
 
677
681
  mediaType := knownMediaTypes[getBaseMediaType(attach.MIME)]
@@ -836,6 +840,7 @@ func getBaseMediaType(typ string) string {
836
840
  func newEventFromHistory(client *whatsmeow.Client, info *waWeb.WebMessageInfo) (EventKind, *EventPayload) {
837
841
  // Handle message as group message is remote JID is a group JID in the absence of any other,
838
842
  // specific signal, or don't handle at all if no group JID is found.
843
+ var ctx = context.Background()
839
844
  var jid = info.GetKey().GetRemoteJID()
840
845
  if j, _ := types.ParseJID(jid); j.Server != types.GroupServer {
841
846
  return EventUnknown, nil
@@ -898,7 +903,7 @@ func newEventFromHistory(client *whatsmeow.Client, info *waWeb.WebMessageInfo) (
898
903
  }
899
904
 
900
905
  // Handle message attachments, if any.
901
- if attach, context, err := getMessageAttachments(client, info.GetMessage()); err != nil {
906
+ if attach, context, err := getMessageAttachments(ctx, client, info.GetMessage()); err != nil {
902
907
  client.Log.Errorf("Failed getting message attachments: %s", err)
903
908
  return EventUnknown, nil
904
909
  } else if len(attach) > 0 {
@@ -967,9 +972,9 @@ type ChatState struct {
967
972
  // NewChatStateEvent returns event data meant for [Session.propagateEvent] for the primitive
968
973
  // chat-state event given.
969
974
  func newChatStateEvent(evt *events.ChatPresence) (EventKind, *EventPayload) {
970
- var state = ChatState{JID: evt.MessageSource.Sender.ToNonAD().String()}
971
- if evt.MessageSource.IsGroup {
972
- state.GroupJID = evt.MessageSource.Chat.ToNonAD().String()
975
+ var state = ChatState{JID: evt.Sender.ToNonAD().String()}
976
+ if evt.IsGroup {
977
+ state.GroupJID = evt.Chat.ToNonAD().String()
973
978
  }
974
979
  switch evt.State {
975
980
  case types.ChatPresenceComposing:
@@ -1006,22 +1011,22 @@ type Receipt struct {
1006
1011
  // event given. Unknown or invalid receipts will return an [EventUnknown] event with nil data.
1007
1012
  func newReceiptEvent(evt *events.Receipt) (EventKind, *EventPayload) {
1008
1013
  var receipt = Receipt{
1009
- MessageIDs: append([]string{}, evt.MessageIDs...),
1010
- JID: evt.MessageSource.Sender.ToNonAD().String(),
1014
+ MessageIDs: slices.Clone(evt.MessageIDs),
1015
+ JID: evt.Sender.ToNonAD().String(),
1011
1016
  Timestamp: evt.Timestamp.Unix(),
1012
- IsCarbon: evt.MessageSource.IsFromMe,
1017
+ IsCarbon: evt.IsFromMe,
1013
1018
  }
1014
1019
 
1015
1020
  if len(receipt.MessageIDs) == 0 {
1016
1021
  return EventUnknown, nil
1017
1022
  }
1018
1023
 
1019
- if evt.MessageSource.Chat.Server == types.BroadcastServer {
1020
- receipt.JID = evt.MessageSource.BroadcastListOwner.ToNonAD().String()
1021
- } else if evt.MessageSource.IsGroup {
1022
- receipt.GroupJID = evt.MessageSource.Chat.ToNonAD().String()
1024
+ if evt.Chat.Server == types.BroadcastServer {
1025
+ receipt.JID = evt.BroadcastListOwner.ToNonAD().String()
1026
+ } else if evt.IsGroup {
1027
+ receipt.GroupJID = evt.Chat.ToNonAD().String()
1023
1028
  } else if receipt.IsCarbon {
1024
- receipt.JID = evt.MessageSource.Chat.ToNonAD().String()
1029
+ receipt.JID = evt.Chat.ToNonAD().String()
1025
1030
  }
1026
1031
 
1027
1032
  switch evt.Type {
@@ -1176,7 +1181,7 @@ func newGroup(client *whatsmeow.Client, info *types.GroupInfo) Group {
1176
1181
  }
1177
1182
  return Group{
1178
1183
  JID: info.JID.ToNonAD().String(),
1179
- Name: info.GroupName.Name,
1184
+ Name: info.Name,
1180
1185
  Subject: GroupSubject{
1181
1186
  Subject: info.Topic,
1182
1187
  SetAt: info.TopicSetAt.Unix(),
@@ -2,6 +2,7 @@ package whatsapp
2
2
 
3
3
  import (
4
4
  // Standard library.
5
+ "context"
5
6
  "fmt"
6
7
  "log/slog"
7
8
  "os"
@@ -69,7 +70,7 @@ func (w *Gateway) Init() error {
69
70
  ),
70
71
  }
71
72
 
72
- container, err := sqlstore.New("sqlite3", w.DBPath, w.logger)
73
+ container, err := sqlstore.New(context.Background(), "sqlite3", w.DBPath, w.logger)
73
74
  if err != nil {
74
75
  return err
75
76
  }
@@ -79,7 +80,9 @@ func (w *Gateway) Init() error {
79
80
  }
80
81
 
81
82
  if w.TempDir != "" {
82
- media.SetTempDirectory(w.TempDir)
83
+ if err := media.SetTempDirectory(w.TempDir); err != nil {
84
+ return err
85
+ }
83
86
  }
84
87
 
85
88
  w.callChan = make(chan func(), maxConcurrentGatewayCalls)
@@ -107,7 +110,8 @@ func (w *Gateway) NewSession(device LinkedDevice) *Session {
107
110
  // CleanupSession will remove all invalid and obsolete references to the given device, and should be
108
111
  // used when pairing a new device or unregistering from the Gateway.
109
112
  func (w *Gateway) CleanupSession(device LinkedDevice) error {
110
- devices, err := w.container.GetAllDevices()
113
+ ctx := context.Background()
114
+ devices, err := w.container.GetAllDevices(ctx)
111
115
  if err != nil {
112
116
  return err
113
117
  }
@@ -115,11 +119,11 @@ func (w *Gateway) CleanupSession(device LinkedDevice) error {
115
119
  for _, d := range devices {
116
120
  if d.ID == nil {
117
121
  w.logger.Infof("Removing invalid device %s from database", d.ID.String())
118
- _ = d.Delete()
122
+ _ = d.Delete(ctx)
119
123
  } else if device.ID != "" {
120
124
  if jid := device.JID(); d.ID.ToNonAD() == jid.ToNonAD() && *d.ID != jid {
121
125
  w.logger.Infof("Removing obsolete device %s from database", d.ID.String())
122
- _ = d.Delete()
126
+ _ = d.Delete(ctx)
123
127
  }
124
128
  }
125
129
  }
@@ -156,22 +160,22 @@ type logger struct {
156
160
  var _ walog.Logger = logger{}
157
161
 
158
162
  // Errorf handles the given message as representing a (typically) fatal error.
159
- func (l logger) Errorf(msg string, args ...interface{}) {
163
+ func (l logger) Errorf(msg string, args ...any) {
160
164
  l.logger.Error(fmt.Sprintf(msg, args...))
161
165
  }
162
166
 
163
167
  // Warn handles the given message as representing a non-fatal error or warning thereof.
164
- func (l logger) Warnf(msg string, args ...interface{}) {
168
+ func (l logger) Warnf(msg string, args ...any) {
165
169
  l.logger.Warn(fmt.Sprintf(msg, args...))
166
170
  }
167
171
 
168
172
  // Infof handles the given message as representing an informational notice.
169
- func (l logger) Infof(msg string, args ...interface{}) {
173
+ func (l logger) Infof(msg string, args ...any) {
170
174
  l.logger.Info(fmt.Sprintf(msg, args...))
171
175
  }
172
176
 
173
177
  // Debugf handles the given message as representing an internal-only debug message.
174
- func (l logger) Debugf(msg string, args ...interface{}) {
178
+ func (l logger) Debugf(msg string, args ...any) {
175
179
  l.logger.Debug(fmt.Sprintf(msg, args...))
176
180
  }
177
181
 
@@ -13,7 +13,7 @@ if TYPE_CHECKING:
13
13
  REGISTRATION_INSTRUCTIONS = (
14
14
  "Continue and scan the resulting QR codes on your main device, or alternatively, "
15
15
  "use the 'pair-phone' command to complete registration. More information at "
16
- "https://slidge.im/slidge-whatsapp/user.html"
16
+ "https://slidge.im/docs/slidge-whatsapp/main/user/registration.html"
17
17
  )
18
18
 
19
19
  WELCOME_MESSAGE = (
@@ -49,7 +49,7 @@ class Gateway(BaseGateway):
49
49
 
50
50
  assert config.DB_PATH is not None
51
51
  Path(config.DB_PATH.parent).mkdir(exist_ok=True)
52
- self.whatsapp.DBPath = str(config.DB_PATH)
52
+ self.whatsapp.DBPath = str(config.DB_PATH) + config.DB_PARAMS
53
53
 
54
54
  (global_config.HOME_DIR / "tmp").mkdir(exist_ok=True)
55
55
  self.whatsapp.TempDir = str(global_config.HOME_DIR / "tmp")
@@ -351,89 +351,15 @@ extern long long int Slice_whatsapp_Receipt_subslice(long long int handle, GoInt
351
351
  extern void Slice_whatsapp_Receipt_set(long long int handle, GoInt _idx, long long int _vl);
352
352
  extern void Slice_whatsapp_Receipt_append(long long int handle, long long int _vl);
353
353
 
354
- // --- wrapping struct: whatsapp.Call ---
355
- //
356
- extern long long int whatsapp_Call_CTor();
357
- extern long long int whatsapp_Call_State_Get(long long int handle);
358
- extern void whatsapp_Call_State_Set(long long int handle, long long int val);
359
- extern char* whatsapp_Call_JID_Get(long long int handle);
360
- extern void whatsapp_Call_JID_Set(long long int handle, char* val);
361
- extern long long int whatsapp_Call_Timestamp_Get(long long int handle);
362
- extern void whatsapp_Call_Timestamp_Set(long long int handle, long long int val);
363
-
364
- // --- wrapping struct: whatsapp.Gateway ---
365
- //
366
- extern long long int whatsapp_Gateway_CTor();
367
- extern char* whatsapp_Gateway_DBPath_Get(long long int handle);
368
- extern void whatsapp_Gateway_DBPath_Set(long long int handle, char* val);
369
- extern char* whatsapp_Gateway_Name_Get(long long int handle);
370
- extern void whatsapp_Gateway_Name_Set(long long int handle, char* val);
371
- extern char* whatsapp_Gateway_LogLevel_Get(long long int handle);
372
- extern void whatsapp_Gateway_LogLevel_Set(long long int handle, char* val);
373
- extern char* whatsapp_Gateway_TempDir_Get(long long int handle);
374
- extern void whatsapp_Gateway_TempDir_Set(long long int handle, char* val);
375
- extern char* whatsapp_Gateway_Init(long long int _handle);
376
- extern long long int whatsapp_Gateway_NewSession(long long int _handle, long long int device);
377
- extern char* whatsapp_Gateway_CleanupSession(long long int _handle, long long int device);
378
-
379
- // --- wrapping struct: whatsapp.Poll ---
380
- //
381
- extern long long int whatsapp_Poll_CTor();
382
- extern char* whatsapp_Poll_Title_Get(long long int handle);
383
- extern void whatsapp_Poll_Title_Set(long long int handle, char* val);
384
- extern long long int whatsapp_Poll_Options_Get(long long int handle);
385
- extern void whatsapp_Poll_Options_Set(long long int handle, long long int val);
386
-
387
- // --- wrapping struct: whatsapp.Preview ---
388
- //
389
- extern long long int whatsapp_Preview_CTor();
390
- extern long long int whatsapp_Preview_Kind_Get(long long int handle);
391
- extern void whatsapp_Preview_Kind_Set(long long int handle, long long int val);
392
- extern char* whatsapp_Preview_URL_Get(long long int handle);
393
- extern void whatsapp_Preview_URL_Set(long long int handle, char* val);
394
- extern char* whatsapp_Preview_Title_Get(long long int handle);
395
- extern void whatsapp_Preview_Title_Set(long long int handle, char* val);
396
- extern char* whatsapp_Preview_Description_Get(long long int handle);
397
- extern void whatsapp_Preview_Description_Set(long long int handle, char* val);
398
- extern long long int whatsapp_Preview_Thumbnail_Get(long long int handle);
399
- extern void whatsapp_Preview_Thumbnail_Set(long long int handle, long long int val);
400
-
401
- // --- wrapping struct: whatsapp.Receipt ---
402
- //
403
- extern long long int whatsapp_Receipt_CTor();
404
- extern long long int whatsapp_Receipt_Kind_Get(long long int handle);
405
- extern void whatsapp_Receipt_Kind_Set(long long int handle, long long int val);
406
- extern long long int whatsapp_Receipt_MessageIDs_Get(long long int handle);
407
- extern void whatsapp_Receipt_MessageIDs_Set(long long int handle, long long int val);
408
- extern char* whatsapp_Receipt_JID_Get(long long int handle);
409
- extern void whatsapp_Receipt_JID_Set(long long int handle, char* val);
410
- extern char* whatsapp_Receipt_GroupJID_Get(long long int handle);
411
- extern void whatsapp_Receipt_GroupJID_Set(long long int handle, char* val);
412
- extern long long int whatsapp_Receipt_Timestamp_Get(long long int handle);
413
- extern void whatsapp_Receipt_Timestamp_Set(long long int handle, long long int val);
414
- extern char whatsapp_Receipt_IsCarbon_Get(long long int handle);
415
- extern void whatsapp_Receipt_IsCarbon_Set(long long int handle, char val);
416
-
417
- // --- wrapping struct: whatsapp.Attachment ---
418
- //
419
- extern long long int whatsapp_Attachment_CTor();
420
- extern char* whatsapp_Attachment_MIME_Get(long long int handle);
421
- extern void whatsapp_Attachment_MIME_Set(long long int handle, char* val);
422
- extern char* whatsapp_Attachment_Filename_Get(long long int handle);
423
- extern void whatsapp_Attachment_Filename_Set(long long int handle, char* val);
424
- extern char* whatsapp_Attachment_Caption_Get(long long int handle);
425
- extern void whatsapp_Attachment_Caption_Set(long long int handle, char* val);
426
- extern long long int whatsapp_Attachment_Data_Get(long long int handle);
427
- extern void whatsapp_Attachment_Data_Set(long long int handle, long long int val);
428
- extern long long int whatsapp_Attachment_GetSpec(long long int _handle, long long int ctx);
429
-
430
- // --- wrapping struct: whatsapp.Avatar ---
354
+ // --- wrapping struct: whatsapp.ChatState ---
431
355
  //
432
- extern long long int whatsapp_Avatar_CTor();
433
- extern char* whatsapp_Avatar_ID_Get(long long int handle);
434
- extern void whatsapp_Avatar_ID_Set(long long int handle, char* val);
435
- extern char* whatsapp_Avatar_URL_Get(long long int handle);
436
- extern void whatsapp_Avatar_URL_Set(long long int handle, char* val);
356
+ extern long long int whatsapp_ChatState_CTor();
357
+ extern long long int whatsapp_ChatState_Kind_Get(long long int handle);
358
+ extern void whatsapp_ChatState_Kind_Set(long long int handle, long long int val);
359
+ extern char* whatsapp_ChatState_JID_Get(long long int handle);
360
+ extern void whatsapp_ChatState_JID_Set(long long int handle, char* val);
361
+ extern char* whatsapp_ChatState_GroupJID_Get(long long int handle);
362
+ extern void whatsapp_ChatState_GroupJID_Set(long long int handle, char* val);
437
363
 
438
364
  // --- wrapping struct: whatsapp.Contact ---
439
365
  //
@@ -467,43 +393,6 @@ extern void whatsapp_EventPayload_Group_Set(long long int handle, long long int
467
393
  extern long long int whatsapp_EventPayload_Call_Get(long long int handle);
468
394
  extern void whatsapp_EventPayload_Call_Set(long long int handle, long long int val);
469
395
 
470
- // --- wrapping struct: whatsapp.LinkedDevice ---
471
- //
472
- extern long long int whatsapp_LinkedDevice_CTor();
473
- extern char* whatsapp_LinkedDevice_ID_Get(long long int handle);
474
- extern void whatsapp_LinkedDevice_ID_Set(long long int handle, char* val);
475
- extern long long int whatsapp_LinkedDevice_JID(long long int _handle);
476
-
477
- // --- wrapping struct: whatsapp.PollOption ---
478
- //
479
- extern long long int whatsapp_PollOption_CTor();
480
- extern char* whatsapp_PollOption_Title_Get(long long int handle);
481
- extern void whatsapp_PollOption_Title_Set(long long int handle, char* val);
482
-
483
- // --- wrapping struct: whatsapp.Album ---
484
- //
485
- extern long long int whatsapp_Album_CTor();
486
- extern char whatsapp_Album_IsAlbum_Get(long long int handle);
487
- extern void whatsapp_Album_IsAlbum_Set(long long int handle, char val);
488
- extern long long int whatsapp_Album_ImageCount_Get(long long int handle);
489
- extern void whatsapp_Album_ImageCount_Set(long long int handle, long long int val);
490
- extern long long int whatsapp_Album_VideoCount_Get(long long int handle);
491
- extern void whatsapp_Album_VideoCount_Set(long long int handle, long long int val);
492
-
493
- // --- wrapping struct: whatsapp.Group ---
494
- //
495
- extern long long int whatsapp_Group_CTor();
496
- extern char* whatsapp_Group_JID_Get(long long int handle);
497
- extern void whatsapp_Group_JID_Set(long long int handle, char* val);
498
- extern char* whatsapp_Group_Name_Get(long long int handle);
499
- extern void whatsapp_Group_Name_Set(long long int handle, char* val);
500
- extern long long int whatsapp_Group_Subject_Get(long long int handle);
501
- extern void whatsapp_Group_Subject_Set(long long int handle, long long int val);
502
- extern char* whatsapp_Group_Nickname_Get(long long int handle);
503
- extern void whatsapp_Group_Nickname_Set(long long int handle, char* val);
504
- extern long long int whatsapp_Group_Participants_Get(long long int handle);
505
- extern void whatsapp_Group_Participants_Set(long long int handle, long long int val);
506
-
507
396
  // --- wrapping struct: whatsapp.Message ---
508
397
  //
509
398
  extern long long int whatsapp_Message_CTor();
@@ -546,23 +435,42 @@ extern void whatsapp_Message_Receipts_Set(long long int handle, long long int va
546
435
  extern long long int whatsapp_Message_Reactions_Get(long long int handle);
547
436
  extern void whatsapp_Message_Reactions_Set(long long int handle, long long int val);
548
437
 
549
- // --- wrapping struct: whatsapp.Connect ---
438
+ // --- wrapping struct: whatsapp.PollOption ---
550
439
  //
551
- extern long long int whatsapp_Connect_CTor();
552
- extern char* whatsapp_Connect_JID_Get(long long int handle);
553
- extern void whatsapp_Connect_JID_Set(long long int handle, char* val);
554
- extern char* whatsapp_Connect_Error_Get(long long int handle);
555
- extern void whatsapp_Connect_Error_Set(long long int handle, char* val);
440
+ extern long long int whatsapp_PollOption_CTor();
441
+ extern char* whatsapp_PollOption_Title_Get(long long int handle);
442
+ extern void whatsapp_PollOption_Title_Set(long long int handle, char* val);
556
443
 
557
- // --- wrapping struct: whatsapp.GroupParticipant ---
444
+ // --- wrapping struct: whatsapp.Album ---
558
445
  //
559
- extern long long int whatsapp_GroupParticipant_CTor();
560
- extern char* whatsapp_GroupParticipant_JID_Get(long long int handle);
561
- extern void whatsapp_GroupParticipant_JID_Set(long long int handle, char* val);
562
- extern long long int whatsapp_GroupParticipant_Affiliation_Get(long long int handle);
563
- extern void whatsapp_GroupParticipant_Affiliation_Set(long long int handle, long long int val);
564
- extern long long int whatsapp_GroupParticipant_Action_Get(long long int handle);
565
- extern void whatsapp_GroupParticipant_Action_Set(long long int handle, long long int val);
446
+ extern long long int whatsapp_Album_CTor();
447
+ extern char whatsapp_Album_IsAlbum_Get(long long int handle);
448
+ extern void whatsapp_Album_IsAlbum_Set(long long int handle, char val);
449
+ extern long long int whatsapp_Album_ImageCount_Get(long long int handle);
450
+ extern void whatsapp_Album_ImageCount_Set(long long int handle, long long int val);
451
+ extern long long int whatsapp_Album_VideoCount_Get(long long int handle);
452
+ extern void whatsapp_Album_VideoCount_Set(long long int handle, long long int val);
453
+
454
+ // --- wrapping struct: whatsapp.Attachment ---
455
+ //
456
+ extern long long int whatsapp_Attachment_CTor();
457
+ extern char* whatsapp_Attachment_MIME_Get(long long int handle);
458
+ extern void whatsapp_Attachment_MIME_Set(long long int handle, char* val);
459
+ extern char* whatsapp_Attachment_Filename_Get(long long int handle);
460
+ extern void whatsapp_Attachment_Filename_Set(long long int handle, char* val);
461
+ extern char* whatsapp_Attachment_Caption_Get(long long int handle);
462
+ extern void whatsapp_Attachment_Caption_Set(long long int handle, char* val);
463
+ extern long long int whatsapp_Attachment_Data_Get(long long int handle);
464
+ extern void whatsapp_Attachment_Data_Set(long long int handle, long long int val);
465
+ extern long long int whatsapp_Attachment_GetSpec(long long int _handle, long long int ctx);
466
+
467
+ // --- wrapping struct: whatsapp.Avatar ---
468
+ //
469
+ extern long long int whatsapp_Avatar_CTor();
470
+ extern char* whatsapp_Avatar_ID_Get(long long int handle);
471
+ extern void whatsapp_Avatar_ID_Set(long long int handle, char* val);
472
+ extern char* whatsapp_Avatar_URL_Get(long long int handle);
473
+ extern void whatsapp_Avatar_URL_Set(long long int handle, char* val);
566
474
 
567
475
  // --- wrapping struct: whatsapp.GroupSubject ---
568
476
  //
@@ -574,6 +482,31 @@ extern void whatsapp_GroupSubject_SetAt_Set(long long int handle, long long int
574
482
  extern char* whatsapp_GroupSubject_SetByJID_Get(long long int handle);
575
483
  extern void whatsapp_GroupSubject_SetByJID_Set(long long int handle, char* val);
576
484
 
485
+ // --- wrapping struct: whatsapp.Call ---
486
+ //
487
+ extern long long int whatsapp_Call_CTor();
488
+ extern long long int whatsapp_Call_State_Get(long long int handle);
489
+ extern void whatsapp_Call_State_Set(long long int handle, long long int val);
490
+ extern char* whatsapp_Call_JID_Get(long long int handle);
491
+ extern void whatsapp_Call_JID_Set(long long int handle, char* val);
492
+ extern long long int whatsapp_Call_Timestamp_Get(long long int handle);
493
+ extern void whatsapp_Call_Timestamp_Set(long long int handle, long long int val);
494
+
495
+ // --- wrapping struct: whatsapp.Gateway ---
496
+ //
497
+ extern long long int whatsapp_Gateway_CTor();
498
+ extern char* whatsapp_Gateway_DBPath_Get(long long int handle);
499
+ extern void whatsapp_Gateway_DBPath_Set(long long int handle, char* val);
500
+ extern char* whatsapp_Gateway_Name_Get(long long int handle);
501
+ extern void whatsapp_Gateway_Name_Set(long long int handle, char* val);
502
+ extern char* whatsapp_Gateway_LogLevel_Get(long long int handle);
503
+ extern void whatsapp_Gateway_LogLevel_Set(long long int handle, char* val);
504
+ extern char* whatsapp_Gateway_TempDir_Get(long long int handle);
505
+ extern void whatsapp_Gateway_TempDir_Set(long long int handle, char* val);
506
+ extern char* whatsapp_Gateway_Init(long long int _handle);
507
+ extern long long int whatsapp_Gateway_NewSession(long long int _handle, long long int device);
508
+ extern char* whatsapp_Gateway_CleanupSession(long long int _handle, long long int device);
509
+
577
510
  // --- wrapping struct: whatsapp.Location ---
578
511
  //
579
512
  extern long long int whatsapp_Location_CTor();
@@ -602,6 +535,20 @@ extern void whatsapp_Presence_Kind_Set(long long int handle, long long int val);
602
535
  extern long long int whatsapp_Presence_LastSeen_Get(long long int handle);
603
536
  extern void whatsapp_Presence_LastSeen_Set(long long int handle, long long int val);
604
537
 
538
+ // --- wrapping struct: whatsapp.Preview ---
539
+ //
540
+ extern long long int whatsapp_Preview_CTor();
541
+ extern long long int whatsapp_Preview_Kind_Get(long long int handle);
542
+ extern void whatsapp_Preview_Kind_Set(long long int handle, long long int val);
543
+ extern char* whatsapp_Preview_URL_Get(long long int handle);
544
+ extern void whatsapp_Preview_URL_Set(long long int handle, char* val);
545
+ extern char* whatsapp_Preview_Title_Get(long long int handle);
546
+ extern void whatsapp_Preview_Title_Set(long long int handle, char* val);
547
+ extern char* whatsapp_Preview_Description_Get(long long int handle);
548
+ extern void whatsapp_Preview_Description_Set(long long int handle, char* val);
549
+ extern long long int whatsapp_Preview_Thumbnail_Get(long long int handle);
550
+ extern void whatsapp_Preview_Thumbnail_Set(long long int handle, long long int val);
551
+
605
552
  // --- wrapping struct: whatsapp.Session ---
606
553
  //
607
554
  extern long long int whatsapp_Session_CTor();
@@ -627,15 +574,68 @@ extern long long int whatsapp_Session_FindContact(long long int _handle, char* p
627
574
  extern char* whatsapp_Session_RequestMessageHistory(long long int _handle, char* resourceID, long long int oldestMessage);
628
575
  extern void whatsapp_Session_SetEventHandler(long long int _handle, PyObject* h, char goRun);
629
576
 
630
- // --- wrapping struct: whatsapp.ChatState ---
577
+ // --- wrapping struct: whatsapp.Connect ---
631
578
  //
632
- extern long long int whatsapp_ChatState_CTor();
633
- extern long long int whatsapp_ChatState_Kind_Get(long long int handle);
634
- extern void whatsapp_ChatState_Kind_Set(long long int handle, long long int val);
635
- extern char* whatsapp_ChatState_JID_Get(long long int handle);
636
- extern void whatsapp_ChatState_JID_Set(long long int handle, char* val);
637
- extern char* whatsapp_ChatState_GroupJID_Get(long long int handle);
638
- extern void whatsapp_ChatState_GroupJID_Set(long long int handle, char* val);
579
+ extern long long int whatsapp_Connect_CTor();
580
+ extern char* whatsapp_Connect_JID_Get(long long int handle);
581
+ extern void whatsapp_Connect_JID_Set(long long int handle, char* val);
582
+ extern char* whatsapp_Connect_Error_Get(long long int handle);
583
+ extern void whatsapp_Connect_Error_Set(long long int handle, char* val);
584
+
585
+ // --- wrapping struct: whatsapp.Group ---
586
+ //
587
+ extern long long int whatsapp_Group_CTor();
588
+ extern char* whatsapp_Group_JID_Get(long long int handle);
589
+ extern void whatsapp_Group_JID_Set(long long int handle, char* val);
590
+ extern char* whatsapp_Group_Name_Get(long long int handle);
591
+ extern void whatsapp_Group_Name_Set(long long int handle, char* val);
592
+ extern long long int whatsapp_Group_Subject_Get(long long int handle);
593
+ extern void whatsapp_Group_Subject_Set(long long int handle, long long int val);
594
+ extern char* whatsapp_Group_Nickname_Get(long long int handle);
595
+ extern void whatsapp_Group_Nickname_Set(long long int handle, char* val);
596
+ extern long long int whatsapp_Group_Participants_Get(long long int handle);
597
+ extern void whatsapp_Group_Participants_Set(long long int handle, long long int val);
598
+
599
+ // --- wrapping struct: whatsapp.GroupParticipant ---
600
+ //
601
+ extern long long int whatsapp_GroupParticipant_CTor();
602
+ extern char* whatsapp_GroupParticipant_JID_Get(long long int handle);
603
+ extern void whatsapp_GroupParticipant_JID_Set(long long int handle, char* val);
604
+ extern long long int whatsapp_GroupParticipant_Affiliation_Get(long long int handle);
605
+ extern void whatsapp_GroupParticipant_Affiliation_Set(long long int handle, long long int val);
606
+ extern long long int whatsapp_GroupParticipant_Action_Get(long long int handle);
607
+ extern void whatsapp_GroupParticipant_Action_Set(long long int handle, long long int val);
608
+
609
+ // --- wrapping struct: whatsapp.LinkedDevice ---
610
+ //
611
+ extern long long int whatsapp_LinkedDevice_CTor();
612
+ extern char* whatsapp_LinkedDevice_ID_Get(long long int handle);
613
+ extern void whatsapp_LinkedDevice_ID_Set(long long int handle, char* val);
614
+ extern long long int whatsapp_LinkedDevice_JID(long long int _handle);
615
+
616
+ // --- wrapping struct: whatsapp.Poll ---
617
+ //
618
+ extern long long int whatsapp_Poll_CTor();
619
+ extern char* whatsapp_Poll_Title_Get(long long int handle);
620
+ extern void whatsapp_Poll_Title_Set(long long int handle, char* val);
621
+ extern long long int whatsapp_Poll_Options_Get(long long int handle);
622
+ extern void whatsapp_Poll_Options_Set(long long int handle, long long int val);
623
+
624
+ // --- wrapping struct: whatsapp.Receipt ---
625
+ //
626
+ extern long long int whatsapp_Receipt_CTor();
627
+ extern long long int whatsapp_Receipt_Kind_Get(long long int handle);
628
+ extern void whatsapp_Receipt_Kind_Set(long long int handle, long long int val);
629
+ extern long long int whatsapp_Receipt_MessageIDs_Get(long long int handle);
630
+ extern void whatsapp_Receipt_MessageIDs_Set(long long int handle, long long int val);
631
+ extern char* whatsapp_Receipt_JID_Get(long long int handle);
632
+ extern void whatsapp_Receipt_JID_Set(long long int handle, char* val);
633
+ extern char* whatsapp_Receipt_GroupJID_Get(long long int handle);
634
+ extern void whatsapp_Receipt_GroupJID_Set(long long int handle, char* val);
635
+ extern long long int whatsapp_Receipt_Timestamp_Get(long long int handle);
636
+ extern void whatsapp_Receipt_Timestamp_Set(long long int handle, long long int val);
637
+ extern char whatsapp_Receipt_IsCarbon_Get(long long int handle);
638
+ extern void whatsapp_Receipt_IsCarbon_Set(long long int handle, char val);
639
639
  extern long long int whatsapp_NewGateway();
640
640
 
641
641
  #ifdef __cplusplus