slidge-whatsapp 0.2.5__cp312-cp312-manylinux_2_36_x86_64.whl → 0.2.6__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 (320) hide show
  1. slidge_whatsapp/config.py +3 -0
  2. slidge_whatsapp/event.go +23 -24
  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 +130 -130
  6. slidge_whatsapp/generated/_whatsapp.cpython-312-x86_64-linux-gnu.so +0 -0
  7. slidge_whatsapp/generated/build.py +108 -108
  8. slidge_whatsapp/generated/whatsapp.c +869 -869
  9. slidge_whatsapp/generated/whatsapp.go +538 -538
  10. slidge_whatsapp/generated/whatsapp.py +791 -791
  11. slidge_whatsapp/generated/whatsapp_go.h +130 -130
  12. slidge_whatsapp/go.mod +15 -12
  13. slidge_whatsapp/go.sum +41 -29
  14. slidge_whatsapp/media/media.go +16 -10
  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 +41 -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/exsync/event.go +88 -0
  92. slidge_whatsapp/vendor/go.mau.fi/util/exsync/returnonce.go +25 -0
  93. slidge_whatsapp/vendor/go.mau.fi/util/exsync/ringbuffer.go +139 -0
  94. slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncmap.go +94 -0
  95. slidge_whatsapp/vendor/go.mau.fi/util/exsync/syncset.go +136 -0
  96. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/callermarshal.go +28 -0
  97. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/defaults.go +32 -0
  98. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/generics.go +45 -0
  99. slidge_whatsapp/vendor/go.mau.fi/util/exzerolog/writer.go +81 -0
  100. slidge_whatsapp/vendor/go.mau.fi/util/ptr/ptr.go +43 -0
  101. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/decode.go +27 -26
  102. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/encode.go +4 -3
  103. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate/keys.go +5 -4
  104. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/appstate.go +27 -25
  105. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/armadillomessage.go +3 -2
  106. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/broadcast.go +5 -4
  107. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/client.go +60 -15
  108. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/connectionevents.go +25 -9
  109. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download-to-file.go +45 -19
  110. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/download.go +52 -28
  111. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/errors.go +1 -0
  112. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/group.go +59 -29
  113. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/internals.go +166 -146
  114. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/keepalive.go +2 -2
  115. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaconn.go +5 -3
  116. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/mediaretry.go +2 -1
  117. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/message.go +270 -111
  118. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/msgsecret.go +118 -31
  119. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/notification.go +67 -36
  120. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair-code.go +7 -4
  121. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/pair.go +42 -18
  122. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/prekeys.go +9 -5
  123. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/presence.go +2 -1
  124. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/privacysettings.go +10 -11
  125. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.go +39 -9
  126. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.go +354 -175
  127. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.proto +5 -5
  128. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.go +158 -15
  129. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.proto +1 -0
  130. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.go +29 -9
  131. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.go +13 -9
  132. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.go +344 -31
  133. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.proto +26 -0
  134. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.pb.go → WACompanionReg.pb.go} +170 -84
  135. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/{WAWebProtobufsCompanionReg.proto → WACompanionReg.proto} +1 -1
  136. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.go +173 -9
  137. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.go +78 -16
  138. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.proto +5 -0
  139. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.go +6747 -2230
  140. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.proto +294 -43
  141. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.go +456 -135
  142. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.proto +14 -0
  143. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.go +162 -9
  144. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.proto +1 -0
  145. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.go +32 -9
  146. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.proto +1 -0
  147. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.go +192 -52
  148. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.proto +8 -0
  149. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.go +60 -9
  150. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.go +39 -9
  151. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.go +61 -9
  152. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.go +1051 -382
  153. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.proto +32 -0
  154. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.go +27 -9
  155. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.go +59 -9
  156. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.go +382 -78
  157. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.proto +8 -0
  158. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.go +555 -9
  159. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.proto +2 -0
  160. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/receipt.go +13 -3
  161. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/retry.go +29 -19
  162. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/send.go +244 -73
  163. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/sendfb.go +27 -16
  164. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/clientpayload.go +3 -1
  165. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/noop.go +85 -43
  166. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/signal.go +75 -88
  167. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/container.go +79 -61
  168. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/lidmap.go +186 -0
  169. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/store.go +291 -167
  170. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/00-latest-schema.sql +153 -0
  171. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/03-message-secrets.sql +11 -0
  172. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/04-privacy-tokens.sql +8 -0
  173. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/05-account-jid-format.sql +2 -0
  174. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/06-facebook-uuid.sql +2 -0
  175. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/07-account-lid.sql +2 -0
  176. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/08-lid-mapping.sql +5 -0
  177. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/09-decryption-buffer.sql +10 -0
  178. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrades/upgrades.go +22 -0
  179. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/store.go +105 -56
  180. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/botmap.go +210 -0
  181. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/events/events.go +8 -0
  182. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/group.go +15 -6
  183. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/jid.go +7 -8
  184. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/types/message.go +17 -0
  185. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/update.go +3 -2
  186. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/upload.go +1 -1
  187. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/user.go +45 -29
  188. slidge_whatsapp/vendor/golang.org/x/exp/LICENSE +27 -0
  189. slidge_whatsapp/vendor/golang.org/x/exp/PATENTS +22 -0
  190. slidge_whatsapp/vendor/golang.org/x/exp/constraints/constraints.go +54 -0
  191. slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/guts.go +50 -0
  192. slidge_whatsapp/vendor/golang.org/x/net/http/httpguts/httplex.go +347 -0
  193. slidge_whatsapp/vendor/golang.org/x/net/http2/.gitignore +2 -0
  194. slidge_whatsapp/vendor/golang.org/x/net/http2/ascii.go +53 -0
  195. slidge_whatsapp/vendor/golang.org/x/net/http2/ciphers.go +641 -0
  196. slidge_whatsapp/vendor/golang.org/x/net/http2/client_conn_pool.go +311 -0
  197. slidge_whatsapp/vendor/golang.org/x/net/http2/config.go +122 -0
  198. slidge_whatsapp/vendor/golang.org/x/net/http2/config_go124.go +61 -0
  199. slidge_whatsapp/vendor/golang.org/x/net/http2/config_pre_go124.go +16 -0
  200. slidge_whatsapp/vendor/golang.org/x/net/http2/databuffer.go +149 -0
  201. slidge_whatsapp/vendor/golang.org/x/net/http2/errors.go +145 -0
  202. slidge_whatsapp/vendor/golang.org/x/net/http2/flow.go +120 -0
  203. slidge_whatsapp/vendor/golang.org/x/net/http2/frame.go +1702 -0
  204. slidge_whatsapp/vendor/golang.org/x/net/http2/gotrack.go +170 -0
  205. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/encode.go +245 -0
  206. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/hpack.go +523 -0
  207. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/huffman.go +226 -0
  208. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/static_table.go +188 -0
  209. slidge_whatsapp/vendor/golang.org/x/net/http2/hpack/tables.go +403 -0
  210. slidge_whatsapp/vendor/golang.org/x/net/http2/http2.go +432 -0
  211. slidge_whatsapp/vendor/golang.org/x/net/http2/pipe.go +184 -0
  212. slidge_whatsapp/vendor/golang.org/x/net/http2/server.go +3350 -0
  213. slidge_whatsapp/vendor/golang.org/x/net/http2/timer.go +20 -0
  214. slidge_whatsapp/vendor/golang.org/x/net/http2/transport.go +3287 -0
  215. slidge_whatsapp/vendor/golang.org/x/net/http2/unencrypted.go +32 -0
  216. slidge_whatsapp/vendor/golang.org/x/net/http2/write.go +381 -0
  217. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched.go +251 -0
  218. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_priority.go +451 -0
  219. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_random.go +77 -0
  220. slidge_whatsapp/vendor/golang.org/x/net/http2/writesched_roundrobin.go +119 -0
  221. slidge_whatsapp/vendor/golang.org/x/net/idna/go118.go +13 -0
  222. slidge_whatsapp/vendor/golang.org/x/net/idna/idna10.0.0.go +769 -0
  223. slidge_whatsapp/vendor/golang.org/x/net/idna/idna9.0.0.go +717 -0
  224. slidge_whatsapp/vendor/golang.org/x/net/idna/pre_go118.go +11 -0
  225. slidge_whatsapp/vendor/golang.org/x/net/idna/punycode.go +217 -0
  226. slidge_whatsapp/vendor/golang.org/x/net/idna/tables10.0.0.go +4559 -0
  227. slidge_whatsapp/vendor/golang.org/x/net/idna/tables11.0.0.go +4653 -0
  228. slidge_whatsapp/vendor/golang.org/x/net/idna/tables12.0.0.go +4733 -0
  229. slidge_whatsapp/vendor/golang.org/x/net/idna/tables13.0.0.go +4959 -0
  230. slidge_whatsapp/vendor/golang.org/x/net/idna/tables15.0.0.go +5144 -0
  231. slidge_whatsapp/vendor/golang.org/x/net/idna/tables9.0.0.go +4486 -0
  232. slidge_whatsapp/vendor/golang.org/x/net/idna/trie.go +51 -0
  233. slidge_whatsapp/vendor/golang.org/x/net/idna/trie12.0.0.go +30 -0
  234. slidge_whatsapp/vendor/golang.org/x/net/idna/trie13.0.0.go +30 -0
  235. slidge_whatsapp/vendor/golang.org/x/net/idna/trieval.go +119 -0
  236. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/ascii.go +53 -0
  237. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/headermap.go +115 -0
  238. slidge_whatsapp/vendor/golang.org/x/net/internal/httpcommon/request.go +467 -0
  239. slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_darwin.go +148 -1
  240. slidge_whatsapp/vendor/golang.org/x/sys/unix/syscall_linux.go +16 -26
  241. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +84 -0
  242. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +20 -0
  243. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +84 -0
  244. slidge_whatsapp/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +20 -0
  245. slidge_whatsapp/vendor/golang.org/x/sys/windows/security_windows.go +44 -5
  246. slidge_whatsapp/vendor/golang.org/x/sys/windows/syscall_windows.go +4 -2
  247. slidge_whatsapp/vendor/golang.org/x/sys/windows/types_windows.go +239 -0
  248. slidge_whatsapp/vendor/golang.org/x/sys/windows/zsyscall_windows.go +9 -0
  249. slidge_whatsapp/vendor/golang.org/x/text/LICENSE +27 -0
  250. slidge_whatsapp/vendor/golang.org/x/text/PATENTS +22 -0
  251. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule.go +336 -0
  252. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go +11 -0
  253. slidge_whatsapp/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go +14 -0
  254. slidge_whatsapp/vendor/golang.org/x/text/transform/transform.go +709 -0
  255. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bidi.go +359 -0
  256. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/bracket.go +335 -0
  257. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/core.go +1071 -0
  258. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/prop.go +206 -0
  259. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go +1815 -0
  260. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go +1887 -0
  261. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go +1923 -0
  262. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go +1955 -0
  263. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go +2042 -0
  264. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go +1781 -0
  265. slidge_whatsapp/vendor/golang.org/x/text/unicode/bidi/trieval.go +48 -0
  266. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/composition.go +512 -0
  267. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/forminfo.go +279 -0
  268. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/input.go +109 -0
  269. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/iter.go +458 -0
  270. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/normalize.go +610 -0
  271. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/readwriter.go +125 -0
  272. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go +7657 -0
  273. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go +7693 -0
  274. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go +7710 -0
  275. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go +7760 -0
  276. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go +7907 -0
  277. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go +7637 -0
  278. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/transform.go +88 -0
  279. slidge_whatsapp/vendor/golang.org/x/text/unicode/norm/trie.go +54 -0
  280. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb +0 -0
  281. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/filedesc/editions.go +3 -0
  282. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +16 -0
  283. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/{strings_unsafe_go121.go → strings_unsafe.go} +0 -2
  284. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/version/version.go +1 -1
  285. slidge_whatsapp/vendor/google.golang.org/protobuf/proto/merge.go +6 -0
  286. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +2 -0
  287. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/{value_unsafe_go121.go → value_unsafe.go} +0 -2
  288. slidge_whatsapp/vendor/modules.txt +38 -13
  289. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.6.dist-info}/METADATA +1 -1
  290. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.6.dist-info}/RECORD +293 -180
  291. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.6.dist-info}/WHEEL +1 -1
  292. slidge_whatsapp/vendor/github.com/rs/zerolog/CNAME +0 -1
  293. slidge_whatsapp/vendor/github.com/rs/zerolog/_config.yml +0 -1
  294. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waAdv/WAAdv.pb.raw +0 -0
  295. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloApplication/WAArmadilloApplication.pb.raw +0 -0
  296. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waArmadilloXMA/WAArmadilloXMA.pb.raw +0 -0
  297. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCert/WACert.pb.raw +0 -23
  298. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waChatLockSettings/WAProtobufsChatLockSettings.pb.raw +0 -7
  299. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCommon/WACommon.pb.raw +0 -0
  300. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waCompanionReg/WAWebProtobufsCompanionReg.pb.raw +0 -0
  301. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waConsumerApplication/WAConsumerApplication.pb.raw +0 -0
  302. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waDeviceCapabilities/WAProtobufsDeviceCapabilities.pb.raw +0 -0
  303. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waE2E/WAWebProtobufsE2E.pb.raw +0 -0
  304. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waHistorySync/WAWebProtobufsHistorySync.pb.raw +0 -0
  305. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMediaTransport/WAMediaTransport.pb.raw +0 -0
  306. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMmsRetry/WAMmsRetry.pb.raw +0 -0
  307. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgApplication/WAMsgApplication.pb.raw +0 -0
  308. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMsgTransport/WAMsgTransport.pb.raw +0 -0
  309. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waMultiDevice/WAMultiDevice.pb.raw +0 -0
  310. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waServerSync/WAServerSync.pb.raw +0 -0
  311. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waSyncAction/WASyncAction.pb.raw +0 -0
  312. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waUserPassword/WAProtobufsUserPassword.pb.raw +0 -0
  313. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waVnameCert/WAWebProtobufsVnameCert.pb.raw +0 -0
  314. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWa6/WAWebProtobufsWa6.pb.raw +0 -0
  315. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/proto/waWeb/WAWebProtobufsWeb.pb.raw +0 -0
  316. slidge_whatsapp/vendor/go.mau.fi/whatsmeow/store/sqlstore/upgrade.go +0 -296
  317. slidge_whatsapp/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe_go120.go +0 -94
  318. slidge_whatsapp/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe_go120.go +0 -98
  319. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.6.dist-info}/LICENSE +0 -0
  320. {slidge_whatsapp-0.2.5.dist-info → slidge_whatsapp-0.2.6.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,7 +461,7 @@ 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)
464
+ data, err = media.Convert(ctx, a.Data, convertSpec)
463
465
  if err == nil {
464
466
  a.Data, a.MIME = data, string(convertSpec.MIME)
465
467
  }
@@ -557,7 +559,7 @@ var (
557
559
  //
558
560
  // If the input MIME type is unknown, or conversion is impossible, the given attachment is not
559
561
  // changed.
560
- func convertAttachment(attach *Attachment) error {
562
+ func convertAttachment(ctx context.Context, attach *Attachment) error {
561
563
  var detectedMIME media.MIMEType
562
564
  if t := media.DetectMIMEType(attach.Data); t != media.TypeUnknown {
563
565
  detectedMIME = t
@@ -567,8 +569,6 @@ func convertAttachment(attach *Attachment) error {
567
569
  }
568
570
 
569
571
  var spec media.Spec
570
- var ctx = context.Background()
571
-
572
572
  switch detectedMIME {
573
573
  case media.TypePNG, media.TypeWebP:
574
574
  // Convert common image formats to JPEG for inline preview.
@@ -666,11 +666,9 @@ var knownMediaTypes = map[string]whatsmeow.MediaType{
666
666
  // type specified within. Attachments are handled as generic file uploads unless they're of a
667
667
  // specific format; in addition, certain MIME types may be automatically converted to a
668
668
  // well-supported type via FFmpeg (if available).
669
- func uploadAttachment(client *whatsmeow.Client, attach *Attachment) (*waE2E.Message, error) {
670
- var ctx = context.Background()
669
+ func uploadAttachment(ctx context.Context, client *whatsmeow.Client, attach *Attachment) (*waE2E.Message, error) {
671
670
  var originalMIME = attach.MIME
672
-
673
- if err := convertAttachment(attach); err != nil {
671
+ if err := convertAttachment(ctx, attach); err != nil {
674
672
  client.Log.Warnf("failed to auto-convert attachment: %s", err)
675
673
  }
676
674
 
@@ -836,6 +834,7 @@ func getBaseMediaType(typ string) string {
836
834
  func newEventFromHistory(client *whatsmeow.Client, info *waWeb.WebMessageInfo) (EventKind, *EventPayload) {
837
835
  // Handle message as group message is remote JID is a group JID in the absence of any other,
838
836
  // specific signal, or don't handle at all if no group JID is found.
837
+ var ctx = context.Background()
839
838
  var jid = info.GetKey().GetRemoteJID()
840
839
  if j, _ := types.ParseJID(jid); j.Server != types.GroupServer {
841
840
  return EventUnknown, nil
@@ -898,7 +897,7 @@ func newEventFromHistory(client *whatsmeow.Client, info *waWeb.WebMessageInfo) (
898
897
  }
899
898
 
900
899
  // Handle message attachments, if any.
901
- if attach, context, err := getMessageAttachments(client, info.GetMessage()); err != nil {
900
+ if attach, context, err := getMessageAttachments(ctx, client, info.GetMessage()); err != nil {
902
901
  client.Log.Errorf("Failed getting message attachments: %s", err)
903
902
  return EventUnknown, nil
904
903
  } else if len(attach) > 0 {
@@ -967,9 +966,9 @@ type ChatState struct {
967
966
  // NewChatStateEvent returns event data meant for [Session.propagateEvent] for the primitive
968
967
  // chat-state event given.
969
968
  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()
969
+ var state = ChatState{JID: evt.Sender.ToNonAD().String()}
970
+ if evt.IsGroup {
971
+ state.GroupJID = evt.Chat.ToNonAD().String()
973
972
  }
974
973
  switch evt.State {
975
974
  case types.ChatPresenceComposing:
@@ -1006,22 +1005,22 @@ type Receipt struct {
1006
1005
  // event given. Unknown or invalid receipts will return an [EventUnknown] event with nil data.
1007
1006
  func newReceiptEvent(evt *events.Receipt) (EventKind, *EventPayload) {
1008
1007
  var receipt = Receipt{
1009
- MessageIDs: append([]string{}, evt.MessageIDs...),
1010
- JID: evt.MessageSource.Sender.ToNonAD().String(),
1008
+ MessageIDs: slices.Clone(evt.MessageIDs),
1009
+ JID: evt.Sender.ToNonAD().String(),
1011
1010
  Timestamp: evt.Timestamp.Unix(),
1012
- IsCarbon: evt.MessageSource.IsFromMe,
1011
+ IsCarbon: evt.IsFromMe,
1013
1012
  }
1014
1013
 
1015
1014
  if len(receipt.MessageIDs) == 0 {
1016
1015
  return EventUnknown, nil
1017
1016
  }
1018
1017
 
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()
1018
+ if evt.Chat.Server == types.BroadcastServer {
1019
+ receipt.JID = evt.BroadcastListOwner.ToNonAD().String()
1020
+ } else if evt.IsGroup {
1021
+ receipt.GroupJID = evt.Chat.ToNonAD().String()
1023
1022
  } else if receipt.IsCarbon {
1024
- receipt.JID = evt.MessageSource.Chat.ToNonAD().String()
1023
+ receipt.JID = evt.Chat.ToNonAD().String()
1025
1024
  }
1026
1025
 
1027
1026
  switch evt.Type {
@@ -1176,7 +1175,7 @@ func newGroup(client *whatsmeow.Client, info *types.GroupInfo) Group {
1176
1175
  }
1177
1176
  return Group{
1178
1177
  JID: info.JID.ToNonAD().String(),
1179
- Name: info.GroupName.Name,
1178
+ Name: info.Name,
1180
1179
  Subject: GroupSubject{
1181
1180
  Subject: info.Topic,
1182
1181
  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,16 +351,6 @@ 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
354
  // --- wrapping struct: whatsapp.Gateway ---
365
355
  //
366
356
  extern long long int whatsapp_Gateway_CTor();
@@ -376,72 +366,33 @@ extern char* whatsapp_Gateway_Init(long long int _handle);
376
366
  extern long long int whatsapp_Gateway_NewSession(long long int _handle, long long int device);
377
367
  extern char* whatsapp_Gateway_CleanupSession(long long int _handle, long long int device);
378
368
 
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 ---
369
+ // --- wrapping struct: whatsapp.Call ---
418
370
  //
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);
371
+ extern long long int whatsapp_Call_CTor();
372
+ extern long long int whatsapp_Call_State_Get(long long int handle);
373
+ extern void whatsapp_Call_State_Set(long long int handle, long long int val);
374
+ extern char* whatsapp_Call_JID_Get(long long int handle);
375
+ extern void whatsapp_Call_JID_Set(long long int handle, char* val);
376
+ extern long long int whatsapp_Call_Timestamp_Get(long long int handle);
377
+ extern void whatsapp_Call_Timestamp_Set(long long int handle, long long int val);
429
378
 
430
- // --- wrapping struct: whatsapp.Avatar ---
379
+ // --- wrapping struct: whatsapp.ChatState ---
431
380
  //
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);
381
+ extern long long int whatsapp_ChatState_CTor();
382
+ extern long long int whatsapp_ChatState_Kind_Get(long long int handle);
383
+ extern void whatsapp_ChatState_Kind_Set(long long int handle, long long int val);
384
+ extern char* whatsapp_ChatState_JID_Get(long long int handle);
385
+ extern void whatsapp_ChatState_JID_Set(long long int handle, char* val);
386
+ extern char* whatsapp_ChatState_GroupJID_Get(long long int handle);
387
+ extern void whatsapp_ChatState_GroupJID_Set(long long int handle, char* val);
437
388
 
438
- // --- wrapping struct: whatsapp.Contact ---
389
+ // --- wrapping struct: whatsapp.Connect ---
439
390
  //
440
- extern long long int whatsapp_Contact_CTor();
441
- extern char* whatsapp_Contact_JID_Get(long long int handle);
442
- extern void whatsapp_Contact_JID_Set(long long int handle, char* val);
443
- extern char* whatsapp_Contact_Name_Get(long long int handle);
444
- extern void whatsapp_Contact_Name_Set(long long int handle, char* val);
391
+ extern long long int whatsapp_Connect_CTor();
392
+ extern char* whatsapp_Connect_JID_Get(long long int handle);
393
+ extern void whatsapp_Connect_JID_Set(long long int handle, char* val);
394
+ extern char* whatsapp_Connect_Error_Get(long long int handle);
395
+ extern void whatsapp_Connect_Error_Set(long long int handle, char* val);
445
396
 
446
397
  // --- wrapping struct: whatsapp.EventPayload ---
447
398
  //
@@ -467,12 +418,33 @@ extern void whatsapp_EventPayload_Group_Set(long long int handle, long long int
467
418
  extern long long int whatsapp_EventPayload_Call_Get(long long int handle);
468
419
  extern void whatsapp_EventPayload_Call_Set(long long int handle, long long int val);
469
420
 
470
- // --- wrapping struct: whatsapp.LinkedDevice ---
421
+ // --- wrapping struct: whatsapp.GroupSubject ---
471
422
  //
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);
423
+ extern long long int whatsapp_GroupSubject_CTor();
424
+ extern char* whatsapp_GroupSubject_Subject_Get(long long int handle);
425
+ extern void whatsapp_GroupSubject_Subject_Set(long long int handle, char* val);
426
+ extern long long int whatsapp_GroupSubject_SetAt_Get(long long int handle);
427
+ extern void whatsapp_GroupSubject_SetAt_Set(long long int handle, long long int val);
428
+ extern char* whatsapp_GroupSubject_SetByJID_Get(long long int handle);
429
+ extern void whatsapp_GroupSubject_SetByJID_Set(long long int handle, char* val);
430
+
431
+ // --- wrapping struct: whatsapp.Location ---
432
+ //
433
+ extern long long int whatsapp_Location_CTor();
434
+ extern double whatsapp_Location_Latitude_Get(long long int handle);
435
+ extern void whatsapp_Location_Latitude_Set(long long int handle, double val);
436
+ extern double whatsapp_Location_Longitude_Get(long long int handle);
437
+ extern void whatsapp_Location_Longitude_Set(long long int handle, double val);
438
+ extern long long int whatsapp_Location_Accuracy_Get(long long int handle);
439
+ extern void whatsapp_Location_Accuracy_Set(long long int handle, long long int val);
440
+ extern char whatsapp_Location_IsLive_Get(long long int handle);
441
+ extern void whatsapp_Location_IsLive_Set(long long int handle, char val);
442
+ extern char* whatsapp_Location_Name_Get(long long int handle);
443
+ extern void whatsapp_Location_Name_Set(long long int handle, char* val);
444
+ extern char* whatsapp_Location_Address_Get(long long int handle);
445
+ extern void whatsapp_Location_Address_Set(long long int handle, char* val);
446
+ extern char* whatsapp_Location_URL_Get(long long int handle);
447
+ extern void whatsapp_Location_URL_Set(long long int handle, char* val);
476
448
 
477
449
  // --- wrapping struct: whatsapp.PollOption ---
478
450
  //
@@ -480,15 +452,27 @@ extern long long int whatsapp_PollOption_CTor();
480
452
  extern char* whatsapp_PollOption_Title_Get(long long int handle);
481
453
  extern void whatsapp_PollOption_Title_Set(long long int handle, char* val);
482
454
 
483
- // --- wrapping struct: whatsapp.Album ---
455
+ // --- wrapping struct: whatsapp.Avatar ---
484
456
  //
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);
457
+ extern long long int whatsapp_Avatar_CTor();
458
+ extern char* whatsapp_Avatar_ID_Get(long long int handle);
459
+ extern void whatsapp_Avatar_ID_Set(long long int handle, char* val);
460
+ extern char* whatsapp_Avatar_URL_Get(long long int handle);
461
+ extern void whatsapp_Avatar_URL_Set(long long int handle, char* val);
462
+
463
+ // --- wrapping struct: whatsapp.Preview ---
464
+ //
465
+ extern long long int whatsapp_Preview_CTor();
466
+ extern long long int whatsapp_Preview_Kind_Get(long long int handle);
467
+ extern void whatsapp_Preview_Kind_Set(long long int handle, long long int val);
468
+ extern char* whatsapp_Preview_URL_Get(long long int handle);
469
+ extern void whatsapp_Preview_URL_Set(long long int handle, char* val);
470
+ extern char* whatsapp_Preview_Title_Get(long long int handle);
471
+ extern void whatsapp_Preview_Title_Set(long long int handle, char* val);
472
+ extern char* whatsapp_Preview_Description_Get(long long int handle);
473
+ extern void whatsapp_Preview_Description_Set(long long int handle, char* val);
474
+ extern long long int whatsapp_Preview_Thumbnail_Get(long long int handle);
475
+ extern void whatsapp_Preview_Thumbnail_Set(long long int handle, long long int val);
492
476
 
493
477
  // --- wrapping struct: whatsapp.Group ---
494
478
  //
@@ -504,6 +488,23 @@ extern void whatsapp_Group_Nickname_Set(long long int handle, char* val);
504
488
  extern long long int whatsapp_Group_Participants_Get(long long int handle);
505
489
  extern void whatsapp_Group_Participants_Set(long long int handle, long long int val);
506
490
 
491
+ // --- wrapping struct: whatsapp.GroupParticipant ---
492
+ //
493
+ extern long long int whatsapp_GroupParticipant_CTor();
494
+ extern char* whatsapp_GroupParticipant_JID_Get(long long int handle);
495
+ extern void whatsapp_GroupParticipant_JID_Set(long long int handle, char* val);
496
+ extern long long int whatsapp_GroupParticipant_Affiliation_Get(long long int handle);
497
+ extern void whatsapp_GroupParticipant_Affiliation_Set(long long int handle, long long int val);
498
+ extern long long int whatsapp_GroupParticipant_Action_Get(long long int handle);
499
+ extern void whatsapp_GroupParticipant_Action_Set(long long int handle, long long int val);
500
+
501
+ // --- wrapping struct: whatsapp.LinkedDevice ---
502
+ //
503
+ extern long long int whatsapp_LinkedDevice_CTor();
504
+ extern char* whatsapp_LinkedDevice_ID_Get(long long int handle);
505
+ extern void whatsapp_LinkedDevice_ID_Set(long long int handle, char* val);
506
+ extern long long int whatsapp_LinkedDevice_JID(long long int _handle);
507
+
507
508
  // --- wrapping struct: whatsapp.Message ---
508
509
  //
509
510
  extern long long int whatsapp_Message_CTor();
@@ -546,51 +547,50 @@ extern void whatsapp_Message_Receipts_Set(long long int handle, long long int va
546
547
  extern long long int whatsapp_Message_Reactions_Get(long long int handle);
547
548
  extern void whatsapp_Message_Reactions_Set(long long int handle, long long int val);
548
549
 
549
- // --- wrapping struct: whatsapp.Connect ---
550
+ // --- wrapping struct: whatsapp.Poll ---
550
551
  //
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);
552
+ extern long long int whatsapp_Poll_CTor();
553
+ extern char* whatsapp_Poll_Title_Get(long long int handle);
554
+ extern void whatsapp_Poll_Title_Set(long long int handle, char* val);
555
+ extern long long int whatsapp_Poll_Options_Get(long long int handle);
556
+ extern void whatsapp_Poll_Options_Set(long long int handle, long long int val);
556
557
 
557
- // --- wrapping struct: whatsapp.GroupParticipant ---
558
+ // --- wrapping struct: whatsapp.Receipt ---
558
559
  //
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);
560
+ extern long long int whatsapp_Receipt_CTor();
561
+ extern long long int whatsapp_Receipt_Kind_Get(long long int handle);
562
+ extern void whatsapp_Receipt_Kind_Set(long long int handle, long long int val);
563
+ extern long long int whatsapp_Receipt_MessageIDs_Get(long long int handle);
564
+ extern void whatsapp_Receipt_MessageIDs_Set(long long int handle, long long int val);
565
+ extern char* whatsapp_Receipt_JID_Get(long long int handle);
566
+ extern void whatsapp_Receipt_JID_Set(long long int handle, char* val);
567
+ extern char* whatsapp_Receipt_GroupJID_Get(long long int handle);
568
+ extern void whatsapp_Receipt_GroupJID_Set(long long int handle, char* val);
569
+ extern long long int whatsapp_Receipt_Timestamp_Get(long long int handle);
570
+ extern void whatsapp_Receipt_Timestamp_Set(long long int handle, long long int val);
571
+ extern char whatsapp_Receipt_IsCarbon_Get(long long int handle);
572
+ extern void whatsapp_Receipt_IsCarbon_Set(long long int handle, char val);
566
573
 
567
- // --- wrapping struct: whatsapp.GroupSubject ---
574
+ // --- wrapping struct: whatsapp.Attachment ---
568
575
  //
569
- extern long long int whatsapp_GroupSubject_CTor();
570
- extern char* whatsapp_GroupSubject_Subject_Get(long long int handle);
571
- extern void whatsapp_GroupSubject_Subject_Set(long long int handle, char* val);
572
- extern long long int whatsapp_GroupSubject_SetAt_Get(long long int handle);
573
- extern void whatsapp_GroupSubject_SetAt_Set(long long int handle, long long int val);
574
- extern char* whatsapp_GroupSubject_SetByJID_Get(long long int handle);
575
- extern void whatsapp_GroupSubject_SetByJID_Set(long long int handle, char* val);
576
+ extern long long int whatsapp_Attachment_CTor();
577
+ extern char* whatsapp_Attachment_MIME_Get(long long int handle);
578
+ extern void whatsapp_Attachment_MIME_Set(long long int handle, char* val);
579
+ extern char* whatsapp_Attachment_Filename_Get(long long int handle);
580
+ extern void whatsapp_Attachment_Filename_Set(long long int handle, char* val);
581
+ extern char* whatsapp_Attachment_Caption_Get(long long int handle);
582
+ extern void whatsapp_Attachment_Caption_Set(long long int handle, char* val);
583
+ extern long long int whatsapp_Attachment_Data_Get(long long int handle);
584
+ extern void whatsapp_Attachment_Data_Set(long long int handle, long long int val);
585
+ extern long long int whatsapp_Attachment_GetSpec(long long int _handle, long long int ctx);
576
586
 
577
- // --- wrapping struct: whatsapp.Location ---
587
+ // --- wrapping struct: whatsapp.Contact ---
578
588
  //
579
- extern long long int whatsapp_Location_CTor();
580
- extern double whatsapp_Location_Latitude_Get(long long int handle);
581
- extern void whatsapp_Location_Latitude_Set(long long int handle, double val);
582
- extern double whatsapp_Location_Longitude_Get(long long int handle);
583
- extern void whatsapp_Location_Longitude_Set(long long int handle, double val);
584
- extern long long int whatsapp_Location_Accuracy_Get(long long int handle);
585
- extern void whatsapp_Location_Accuracy_Set(long long int handle, long long int val);
586
- extern char whatsapp_Location_IsLive_Get(long long int handle);
587
- extern void whatsapp_Location_IsLive_Set(long long int handle, char val);
588
- extern char* whatsapp_Location_Name_Get(long long int handle);
589
- extern void whatsapp_Location_Name_Set(long long int handle, char* val);
590
- extern char* whatsapp_Location_Address_Get(long long int handle);
591
- extern void whatsapp_Location_Address_Set(long long int handle, char* val);
592
- extern char* whatsapp_Location_URL_Get(long long int handle);
593
- extern void whatsapp_Location_URL_Set(long long int handle, char* val);
589
+ extern long long int whatsapp_Contact_CTor();
590
+ extern char* whatsapp_Contact_JID_Get(long long int handle);
591
+ extern void whatsapp_Contact_JID_Set(long long int handle, char* val);
592
+ extern char* whatsapp_Contact_Name_Get(long long int handle);
593
+ extern void whatsapp_Contact_Name_Set(long long int handle, char* val);
594
594
 
595
595
  // --- wrapping struct: whatsapp.Presence ---
596
596
  //
@@ -627,15 +627,15 @@ extern long long int whatsapp_Session_FindContact(long long int _handle, char* p
627
627
  extern char* whatsapp_Session_RequestMessageHistory(long long int _handle, char* resourceID, long long int oldestMessage);
628
628
  extern void whatsapp_Session_SetEventHandler(long long int _handle, PyObject* h, char goRun);
629
629
 
630
- // --- wrapping struct: whatsapp.ChatState ---
630
+ // --- wrapping struct: whatsapp.Album ---
631
631
  //
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);
632
+ extern long long int whatsapp_Album_CTor();
633
+ extern char whatsapp_Album_IsAlbum_Get(long long int handle);
634
+ extern void whatsapp_Album_IsAlbum_Set(long long int handle, char val);
635
+ extern long long int whatsapp_Album_ImageCount_Get(long long int handle);
636
+ extern void whatsapp_Album_ImageCount_Set(long long int handle, long long int val);
637
+ extern long long int whatsapp_Album_VideoCount_Get(long long int handle);
638
+ extern void whatsapp_Album_VideoCount_Set(long long int handle, long long int val);
639
639
  extern long long int whatsapp_NewGateway();
640
640
 
641
641
  #ifdef __cplusplus