spluspy 2.2.2__tar.gz → 2.2.4__tar.gz

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.
Files changed (539) hide show
  1. {spluspy-2.2.2 → spluspy-2.2.4}/PKG-INFO +7 -11
  2. {spluspy-2.2.2 → spluspy-2.2.4}/README.md +4 -8
  3. spluspy-2.2.4/_dream_query.py +98 -0
  4. spluspy-2.2.4/_dream_query2.py +74 -0
  5. {spluspy-2.2.2 → spluspy-2.2.4}/pyproject.toml +12 -3
  6. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/__version__.py +1 -1
  7. spluspy-2.2.4/spluspy/_engine/client/telegrambaseclient.py +1022 -0
  8. spluspy-2.2.4/spluspy/_engine/client/updates.py +805 -0
  9. spluspy-2.2.4/spluspy/_engine/network/mtprotosender.py +1024 -0
  10. spluspy-2.2.4/spluspy/_engine/sessions/sqlite.py +272 -0
  11. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/version.py +1 -1
  12. spluspy-2.2.4/spluspy/client/client.py +5091 -0
  13. spluspy-2.2.4/spluspy/client/media_mixin.py +1045 -0
  14. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/config.py +2 -2
  15. spluspy-2.2.4/spluspy/extracted/__init__.py +165 -0
  16. spluspy-2.2.4/spluspy/extracted/__version__.py +7 -0
  17. spluspy-2.2.4/spluspy/extracted/_engine/__init__.py +13 -0
  18. spluspy-2.2.4/spluspy/extracted/_engine/_updates/__init__.py +3 -0
  19. spluspy-2.2.4/spluspy/extracted/_engine/_updates/entitycache.py +59 -0
  20. spluspy-2.2.4/spluspy/extracted/_engine/_updates/messagebox.py +830 -0
  21. spluspy-2.2.4/spluspy/extracted/_engine/_updates/session.py +195 -0
  22. spluspy-2.2.4/spluspy/extracted/_engine/client/__init__.py +25 -0
  23. spluspy-2.2.4/spluspy/extracted/_engine/client/account.py +247 -0
  24. spluspy-2.2.4/spluspy/extracted/_engine/client/auth.py +740 -0
  25. spluspy-2.2.4/spluspy/extracted/_engine/client/bots.py +72 -0
  26. spluspy-2.2.4/spluspy/extracted/_engine/client/buttons.py +101 -0
  27. spluspy-2.2.4/spluspy/extracted/_engine/client/chats.py +1339 -0
  28. spluspy-2.2.4/spluspy/extracted/_engine/client/dialogs.py +614 -0
  29. spluspy-2.2.4/spluspy/extracted/_engine/client/downloads.py +1096 -0
  30. spluspy-2.2.4/spluspy/extracted/_engine/client/messageparse.py +233 -0
  31. spluspy-2.2.4/spluspy/extracted/_engine/client/messages.py +1528 -0
  32. spluspy-2.2.4/spluspy/extracted/_engine/client/soroushclient.py +13 -0
  33. spluspy-2.2.4/spluspy/extracted/_engine/client/uploads.py +867 -0
  34. spluspy-2.2.4/spluspy/extracted/_engine/client/users.py +631 -0
  35. spluspy-2.2.4/spluspy/extracted/_engine/crypto/__init__.py +10 -0
  36. spluspy-2.2.4/spluspy/extracted/_engine/crypto/aes.py +101 -0
  37. spluspy-2.2.4/spluspy/extracted/_engine/crypto/aesctr.py +70 -0
  38. spluspy-2.2.4/spluspy/extracted/_engine/crypto/authkey.py +63 -0
  39. spluspy-2.2.4/spluspy/extracted/_engine/crypto/cdndecrypter.py +109 -0
  40. spluspy-2.2.4/spluspy/extracted/_engine/crypto/factorization.py +67 -0
  41. spluspy-2.2.4/spluspy/extracted/_engine/crypto/libssl.py +219 -0
  42. spluspy-2.2.4/spluspy/extracted/_engine/crypto/rsa.py +276 -0
  43. spluspy-2.2.4/spluspy/extracted/_engine/custom.py +1 -0
  44. spluspy-2.2.4/spluspy/extracted/_engine/errors/__init__.py +46 -0
  45. spluspy-2.2.4/spluspy/extracted/_engine/errors/common.py +180 -0
  46. spluspy-2.2.4/spluspy/extracted/_engine/errors/rpcbaseerrors.py +135 -0
  47. spluspy-2.2.4/spluspy/extracted/_engine/errors/rpcerrorlist.py +5356 -0
  48. spluspy-2.2.4/spluspy/extracted/_engine/events/__init__.py +140 -0
  49. spluspy-2.2.4/spluspy/extracted/_engine/events/album.py +345 -0
  50. spluspy-2.2.4/spluspy/extracted/_engine/events/callbackquery.py +345 -0
  51. spluspy-2.2.4/spluspy/extracted/_engine/events/chataction.py +458 -0
  52. spluspy-2.2.4/spluspy/extracted/_engine/events/common.py +186 -0
  53. spluspy-2.2.4/spluspy/extracted/_engine/events/inlinequery.py +247 -0
  54. spluspy-2.2.4/spluspy/extracted/_engine/events/messagedeleted.py +57 -0
  55. spluspy-2.2.4/spluspy/extracted/_engine/events/messageedited.py +52 -0
  56. spluspy-2.2.4/spluspy/extracted/_engine/events/messageread.py +143 -0
  57. spluspy-2.2.4/spluspy/extracted/_engine/events/newmessage.py +223 -0
  58. spluspy-2.2.4/spluspy/extracted/_engine/events/raw.py +53 -0
  59. spluspy-2.2.4/spluspy/extracted/_engine/events/userupdate.py +310 -0
  60. spluspy-2.2.4/spluspy/extracted/_engine/extensions/__init__.py +6 -0
  61. spluspy-2.2.4/spluspy/extracted/_engine/extensions/binaryreader.py +222 -0
  62. spluspy-2.2.4/spluspy/extracted/_engine/extensions/html.py +208 -0
  63. spluspy-2.2.4/spluspy/extracted/_engine/extensions/markdown.py +193 -0
  64. spluspy-2.2.4/spluspy/extracted/_engine/extensions/messagepacker.py +122 -0
  65. spluspy-2.2.4/spluspy/extracted/_engine/functions.py +1 -0
  66. spluspy-2.2.4/spluspy/extracted/_engine/helpers.py +434 -0
  67. spluspy-2.2.4/spluspy/extracted/_engine/hints.py +72 -0
  68. spluspy-2.2.4/spluspy/extracted/_engine/network/__init__.py +14 -0
  69. spluspy-2.2.4/spluspy/extracted/_engine/network/authenticator.py +212 -0
  70. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/__init__.py +13 -0
  71. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/connection.py +479 -0
  72. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/http.py +39 -0
  73. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/tcpabridged.py +33 -0
  74. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/tcpfull.py +60 -0
  75. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/tcpintermediate.py +46 -0
  76. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/tcpmtproxy.py +166 -0
  77. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/tcpobfuscated.py +63 -0
  78. spluspy-2.2.4/spluspy/extracted/_engine/network/connection/websocket.py +387 -0
  79. spluspy-2.2.4/spluspy/extracted/_engine/network/mtprotoplainsender.py +56 -0
  80. spluspy-2.2.4/spluspy/extracted/_engine/network/mtprotostate.py +285 -0
  81. spluspy-2.2.4/spluspy/extracted/_engine/network/requeststate.py +19 -0
  82. spluspy-2.2.4/spluspy/extracted/_engine/password.py +194 -0
  83. spluspy-2.2.4/spluspy/extracted/_engine/requestiter.py +134 -0
  84. spluspy-2.2.4/spluspy/extracted/_engine/sessions/__init__.py +4 -0
  85. spluspy-2.2.4/spluspy/extracted/_engine/sessions/abstract.py +172 -0
  86. spluspy-2.2.4/spluspy/extracted/_engine/sessions/memory.py +260 -0
  87. spluspy-2.2.4/spluspy/extracted/_engine/sessions/string.py +72 -0
  88. spluspy-2.2.4/spluspy/extracted/_engine/sync.py +74 -0
  89. spluspy-2.2.4/spluspy/extracted/_engine/tl/__init__.py +1 -0
  90. spluspy-2.2.4/spluspy/extracted/_engine/tl/alltlobjects.py +1696 -0
  91. spluspy-2.2.4/spluspy/extracted/_engine/tl/core/__init__.py +26 -0
  92. spluspy-2.2.4/spluspy/extracted/_engine/tl/core/gzippacked.py +48 -0
  93. spluspy-2.2.4/spluspy/extracted/_engine/tl/core/messagecontainer.py +47 -0
  94. spluspy-2.2.4/spluspy/extracted/_engine/tl/core/rpcresult.py +35 -0
  95. spluspy-2.2.4/spluspy/extracted/_engine/tl/core/tlmessage.py +34 -0
  96. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/__init__.py +14 -0
  97. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/adminlogevent.py +475 -0
  98. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/button.py +346 -0
  99. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/chatgetter.py +154 -0
  100. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/conversation.py +529 -0
  101. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/dialog.py +161 -0
  102. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/draft.py +194 -0
  103. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/file.py +146 -0
  104. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/forward.py +51 -0
  105. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/inlinebuilder.py +450 -0
  106. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/inlineresult.py +176 -0
  107. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/inlineresults.py +83 -0
  108. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/inputsizedfile.py +9 -0
  109. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/message.py +1250 -0
  110. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/messagebutton.py +160 -0
  111. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/participantpermissions.py +138 -0
  112. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/qrlogin.py +119 -0
  113. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/sendergetter.py +106 -0
  114. spluspy-2.2.4/spluspy/extracted/_engine/tl/custom/types.py +38 -0
  115. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/__init__.py +452 -0
  116. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/account.py +1581 -0
  117. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/auth.py +593 -0
  118. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/bots.py +112 -0
  119. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/channels.py +1672 -0
  120. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/chatlists.py +325 -0
  121. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/conference.py +437 -0
  122. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/contacts.py +476 -0
  123. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/folders.py +44 -0
  124. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/help.py +259 -0
  125. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/langpack.py +146 -0
  126. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/messages.py +5469 -0
  127. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/payments.py +292 -0
  128. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/phone.py +809 -0
  129. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/photos.py +282 -0
  130. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/premium.py +152 -0
  131. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/stats.py +300 -0
  132. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/stories.py +765 -0
  133. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/thirdParty.py +67 -0
  134. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/updates.py +139 -0
  135. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/upload.py +168 -0
  136. spluspy-2.2.4/spluspy/extracted/_engine/tl/functions/users.py +170 -0
  137. spluspy-2.2.4/spluspy/extracted/_engine/tl/patched/__init__.py +20 -0
  138. spluspy-2.2.4/spluspy/extracted/_engine/tl/tlobject.py +225 -0
  139. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/__init__.py +40056 -0
  140. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/account.py +1096 -0
  141. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/auth.py +809 -0
  142. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/bots.py +43 -0
  143. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/channels.py +232 -0
  144. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/chatlists.py +273 -0
  145. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/conference.py +69 -0
  146. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/contacts.py +478 -0
  147. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/help.py +1206 -0
  148. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/messages.py +3000 -0
  149. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/payments.py +633 -0
  150. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/phone.py +313 -0
  151. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/photos.py +135 -0
  152. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/premium.py +209 -0
  153. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/stats.py +368 -0
  154. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/stickers.py +35 -0
  155. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/storage.py +197 -0
  156. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/stories.py +317 -0
  157. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/thirdParty.py +94 -0
  158. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/update.py +39 -0
  159. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/updates.py +447 -0
  160. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/upload.py +196 -0
  161. spluspy-2.2.4/spluspy/extracted/_engine/tl/types/users.py +131 -0
  162. spluspy-2.2.4/spluspy/extracted/_engine/types.py +1 -0
  163. spluspy-2.2.4/spluspy/extracted/_engine/utils.py +1570 -0
  164. spluspy-2.2.4/spluspy/extracted/_engine/version.py +3 -0
  165. spluspy-2.2.4/spluspy/extracted/admin.py +347 -0
  166. spluspy-2.2.4/spluspy/extracted/afk.py +202 -0
  167. spluspy-2.2.4/spluspy/extracted/cli.py +116 -0
  168. spluspy-2.2.4/spluspy/extracted/client/__init__.py +5 -0
  169. spluspy-2.2.4/spluspy/extracted/client/chat_mixin.py +1262 -0
  170. spluspy-2.2.4/spluspy/extracted/client/conversation.py +294 -0
  171. spluspy-2.2.4/spluspy/extracted/compat.py +50 -0
  172. spluspy-2.2.4/spluspy/extracted/config.py +129 -0
  173. spluspy-2.2.4/spluspy/extracted/errors/__init__.py +57 -0
  174. spluspy-2.2.4/spluspy/extracted/errors/exceptions.py +147 -0
  175. spluspy-2.2.4/spluspy/extracted/events/__init__.py +35 -0
  176. spluspy-2.2.4/spluspy/extracted/events/album.py +57 -0
  177. spluspy-2.2.4/spluspy/extracted/events/base.py +157 -0
  178. spluspy-2.2.4/spluspy/extracted/events/callback.py +61 -0
  179. spluspy-2.2.4/spluspy/extracted/events/chat_action.py +113 -0
  180. spluspy-2.2.4/spluspy/extracted/events/edited.py +46 -0
  181. spluspy-2.2.4/spluspy/extracted/events/inline.py +52 -0
  182. spluspy-2.2.4/spluspy/extracted/events/message.py +262 -0
  183. spluspy-2.2.4/spluspy/extracted/events/message_deleted.py +42 -0
  184. spluspy-2.2.4/spluspy/extracted/events/message_read.py +41 -0
  185. spluspy-2.2.4/spluspy/extracted/events/user_update.py +54 -0
  186. spluspy-2.2.4/spluspy/filters/__init__.py +182 -0
  187. spluspy-2.2.4/spluspy/filters/filters.py +709 -0
  188. spluspy-2.2.4/spluspy/fsm/__init__.py +10 -0
  189. spluspy-2.2.4/spluspy/fsm/state.py +273 -0
  190. spluspy-2.2.4/spluspy/middleware/__init__.py +5 -0
  191. spluspy-2.2.4/spluspy/middleware/base.py +121 -0
  192. spluspy-2.2.4/spluspy/middleware/rate_limit.py +71 -0
  193. spluspy-2.2.4/spluspy/mirror.py +207 -0
  194. spluspy-2.2.4/spluspy/models/__init__.py +71 -0
  195. spluspy-2.2.4/spluspy/models/bot.py +218 -0
  196. spluspy-2.2.4/spluspy/models/chat.py +165 -0
  197. spluspy-2.2.4/spluspy/models/enums.py +65 -0
  198. spluspy-2.2.4/spluspy/models/media.py +259 -0
  199. spluspy-2.2.4/spluspy/models/message.py +582 -0
  200. spluspy-2.2.4/spluspy/models/objects.py +110 -0
  201. spluspy-2.2.4/spluspy/models/user.py +88 -0
  202. spluspy-2.2.4/spluspy/network/__init__.py +27 -0
  203. spluspy-2.2.4/spluspy/network/client.py +504 -0
  204. spluspy-2.2.4/spluspy/network/connection.py +167 -0
  205. spluspy-2.2.4/spluspy/network/http_client.py +355 -0
  206. spluspy-2.2.4/spluspy/network/mtproto.py +525 -0
  207. spluspy-2.2.4/spluspy/network/protocols.py +104 -0
  208. spluspy-2.2.4/spluspy/network/spluspy_adapter.py +578 -0
  209. spluspy-2.2.4/spluspy/network/transport.py +264 -0
  210. spluspy-2.2.4/spluspy/plugins/__init__.py +5 -0
  211. spluspy-2.2.4/spluspy/plugins/loader.py +150 -0
  212. spluspy-2.2.4/spluspy/scheduler/__init__.py +5 -0
  213. spluspy-2.2.4/spluspy/scheduler/scheduler.py +289 -0
  214. spluspy-2.2.4/spluspy/session/__init__.py +13 -0
  215. spluspy-2.2.4/spluspy/session/base.py +70 -0
  216. spluspy-2.2.4/spluspy/session/memory.py +58 -0
  217. spluspy-2.2.4/spluspy/session/sqlite.py +332 -0
  218. spluspy-2.2.4/spluspy/session/string.py +106 -0
  219. spluspy-2.2.4/spluspy/storage/__init__.py +44 -0
  220. spluspy-2.2.4/spluspy/storage/base.py +46 -0
  221. spluspy-2.2.4/spluspy/storage/entity_cache.py +335 -0
  222. spluspy-2.2.4/spluspy/storage/memory.py +52 -0
  223. spluspy-2.2.4/spluspy/storage/postgres.py +183 -0
  224. spluspy-2.2.4/spluspy/storage/redis.py +140 -0
  225. spluspy-2.2.4/spluspy/storage/sqlite.py +123 -0
  226. spluspy-2.2.4/spluspy/sync/__init__.py +17 -0
  227. spluspy-2.2.4/spluspy/sync/client.py +270 -0
  228. spluspy-2.2.4/spluspy/utils/__init__.py +34 -0
  229. spluspy-2.2.4/spluspy/utils/batch.py +178 -0
  230. spluspy-2.2.4/spluspy/utils/cache.py +266 -0
  231. spluspy-2.2.4/spluspy/utils/chat_lock.py +96 -0
  232. spluspy-2.2.4/spluspy/utils/file_transfer.py +418 -0
  233. spluspy-2.2.4/spluspy/utils/helpers.py +62 -0
  234. spluspy-2.2.4/spluspy/utils/logger.py +410 -0
  235. spluspy-2.2.4/spluspy/utils/rate_limiter.py +211 -0
  236. spluspy-2.2.4/spluspy/utils/resolver.py +372 -0
  237. spluspy-2.2.4/spluspy/utils/version_check.py +87 -0
  238. spluspy-2.2.2/docs/index.html +0 -1392
  239. spluspy-2.2.2/docs/logo.svg +0 -0
  240. {spluspy-2.2.2 → spluspy-2.2.4}/.gitignore +0 -0
  241. {spluspy-2.2.2 → spluspy-2.2.4}/CHANGELOG.md +0 -0
  242. {spluspy-2.2.2 → spluspy-2.2.4}/CONTRIBUTING.md +0 -0
  243. {spluspy-2.2.2 → spluspy-2.2.4}/Dockerfile +0 -0
  244. {spluspy-2.2.2 → spluspy-2.2.4}/LICENSE +0 -0
  245. {spluspy-2.2.2 → spluspy-2.2.4}/MANIFEST.in +0 -0
  246. {spluspy-2.2.2 → spluspy-2.2.4}/README.rst +0 -0
  247. {spluspy-2.2.2 → spluspy-2.2.4}/examples/01_hello_bot.py +0 -0
  248. {spluspy-2.2.2 → spluspy-2.2.4}/examples/02_echo_bot.py +0 -0
  249. {spluspy-2.2.2 → spluspy-2.2.4}/examples/03_command_bot.py +0 -0
  250. {spluspy-2.2.2 → spluspy-2.2.4}/examples/04_private_only.py +0 -0
  251. {spluspy-2.2.2 → spluspy-2.2.4}/examples/05_group_only.py +0 -0
  252. {spluspy-2.2.2 → spluspy-2.2.4}/examples/06_regex_bot.py +0 -0
  253. {spluspy-2.2.2 → spluspy-2.2.4}/examples/07_user_filter.py +0 -0
  254. {spluspy-2.2.2 → spluspy-2.2.4}/examples/08_combined_filters.py +0 -0
  255. {spluspy-2.2.2 → spluspy-2.2.4}/examples/09_inline_keyboard.py +0 -0
  256. {spluspy-2.2.2 → spluspy-2.2.4}/examples/10_reply_keyboard.py +0 -0
  257. {spluspy-2.2.2 → spluspy-2.2.4}/examples/11_message_actions.py +0 -0
  258. {spluspy-2.2.2 → spluspy-2.2.4}/examples/12_media_bot.py +0 -0
  259. {spluspy-2.2.2 → spluspy-2.2.4}/examples/13_fsm_bot.py +0 -0
  260. {spluspy-2.2.2 → spluspy-2.2.4}/examples/14_plugin_bot.py +0 -0
  261. {spluspy-2.2.2 → spluspy-2.2.4}/examples/15_middleware_bot.py +0 -0
  262. {spluspy-2.2.2 → spluspy-2.2.4}/examples/16_scheduler_bot.py +0 -0
  263. {spluspy-2.2.2 → spluspy-2.2.4}/examples/17_conversation.py +0 -0
  264. {spluspy-2.2.2 → spluspy-2.2.4}/examples/18_chat_management.py +0 -0
  265. {spluspy-2.2.2 → spluspy-2.2.4}/examples/19_event_types.py +0 -0
  266. {spluspy-2.2.2 → spluspy-2.2.4}/examples/20_sync_bot.py +0 -0
  267. {spluspy-2.2.2 → spluspy-2.2.4}/examples/21_album_handler.py +0 -0
  268. {spluspy-2.2.2 → spluspy-2.2.4}/examples/22_download_bot.py +0 -0
  269. {spluspy-2.2.2 → spluspy-2.2.4}/examples/23_url_button.py +0 -0
  270. {spluspy-2.2.2 → spluspy-2.2.4}/examples/24_string_session.py +0 -0
  271. {spluspy-2.2.2 → spluspy-2.2.4}/examples/25_error_handling.py +0 -0
  272. {spluspy-2.2.2 → spluspy-2.2.4}/examples/25_working_bot.py +0 -0
  273. {spluspy-2.2.2 → spluspy-2.2.4}/examples/26_message_entities.py +0 -0
  274. {spluspy-2.2.2 → spluspy-2.2.4}/examples/27_search_messages.py +0 -0
  275. {spluspy-2.2.2 → spluspy-2.2.4}/examples/28_poll_bot.py +0 -0
  276. {spluspy-2.2.2 → spluspy-2.2.4}/examples/29_dice_bot.py +0 -0
  277. {spluspy-2.2.2 → spluspy-2.2.4}/examples/30_cache_bot.py +0 -0
  278. {spluspy-2.2.2 → spluspy-2.2.4}/examples/31_reaction_bot.py +0 -0
  279. {spluspy-2.2.2 → spluspy-2.2.4}/examples/32_mark_read_bot.py +0 -0
  280. {spluspy-2.2.2 → spluspy-2.2.4}/examples/33_context_manager.py +0 -0
  281. {spluspy-2.2.2 → spluspy-2.2.4}/examples/34_user_info.py +0 -0
  282. {spluspy-2.2.2 → spluspy-2.2.4}/examples/35_chat_info.py +0 -0
  283. {spluspy-2.2.2 → spluspy-2.2.4}/examples/36_forward_copy.py +0 -0
  284. {spluspy-2.2.2 → spluspy-2.2.4}/examples/37_admin_bot.py +0 -0
  285. {spluspy-2.2.2 → spluspy-2.2.4}/examples/38_media_filters.py +0 -0
  286. {spluspy-2.2.2 → spluspy-2.2.4}/examples/39_status_bot.py +0 -0
  287. {spluspy-2.2.2 → spluspy-2.2.4}/examples/40_delete_detection.py +0 -0
  288. {spluspy-2.2.2 → spluspy-2.2.4}/examples/41_read_detection.py +0 -0
  289. {spluspy-2.2.2 → spluspy-2.2.4}/examples/42_raw_events.py +0 -0
  290. {spluspy-2.2.2 → spluspy-2.2.4}/examples/43_poll_handler.py +0 -0
  291. {spluspy-2.2.2 → spluspy-2.2.4}/examples/44_reaction_handler.py +0 -0
  292. {spluspy-2.2.2 → spluspy-2.2.4}/examples/45_typing_handler.py +0 -0
  293. {spluspy-2.2.2 → spluspy-2.2.4}/examples/46_get_messages.py +0 -0
  294. {spluspy-2.2.2 → spluspy-2.2.4}/examples/47_iter_messages.py +0 -0
  295. {spluspy-2.2.2 → spluspy-2.2.4}/examples/48_get_members.py +0 -0
  296. {spluspy-2.2.2 → spluspy-2.2.4}/examples/49_resolve_username.py +0 -0
  297. {spluspy-2.2.2 → spluspy-2.2.4}/examples/50_invoke.py +0 -0
  298. {spluspy-2.2.2 → spluspy-2.2.4}/setup.py +0 -0
  299. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/__init__.py +0 -0
  300. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/__init__.py +0 -0
  301. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/_updates/__init__.py +0 -0
  302. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/_updates/entitycache.py +0 -0
  303. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/_updates/messagebox.py +0 -0
  304. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/_updates/session.py +0 -0
  305. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/__init__.py +0 -0
  306. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/account.py +0 -0
  307. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/auth.py +0 -0
  308. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/bots.py +0 -0
  309. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/buttons.py +0 -0
  310. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/chats.py +0 -0
  311. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/dialogs.py +0 -0
  312. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/downloads.py +0 -0
  313. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/messageparse.py +0 -0
  314. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/messages.py +0 -0
  315. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/soroushclient.py +0 -0
  316. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/uploads.py +0 -0
  317. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/client/users.py +0 -0
  318. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/__init__.py +0 -0
  319. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/aes.py +0 -0
  320. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/aesctr.py +0 -0
  321. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/authkey.py +0 -0
  322. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/cdndecrypter.py +0 -0
  323. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/factorization.py +0 -0
  324. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/libssl.py +0 -0
  325. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/crypto/rsa.py +0 -0
  326. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/custom.py +0 -0
  327. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/errors/__init__.py +0 -0
  328. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/errors/common.py +0 -0
  329. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/errors/rpcbaseerrors.py +0 -0
  330. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/errors/rpcerrorlist.py +0 -0
  331. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/__init__.py +0 -0
  332. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/album.py +0 -0
  333. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/callbackquery.py +0 -0
  334. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/chataction.py +0 -0
  335. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/common.py +0 -0
  336. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/inlinequery.py +0 -0
  337. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/messagedeleted.py +0 -0
  338. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/messageedited.py +0 -0
  339. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/messageread.py +0 -0
  340. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/newmessage.py +0 -0
  341. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/raw.py +0 -0
  342. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/events/userupdate.py +0 -0
  343. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/extensions/__init__.py +0 -0
  344. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/extensions/binaryreader.py +0 -0
  345. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/extensions/html.py +0 -0
  346. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/extensions/markdown.py +0 -0
  347. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/extensions/messagepacker.py +0 -0
  348. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/functions.py +0 -0
  349. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/helpers.py +0 -0
  350. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/hints.py +0 -0
  351. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/__init__.py +0 -0
  352. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/authenticator.py +0 -0
  353. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/__init__.py +0 -0
  354. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/connection.py +0 -0
  355. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/http.py +0 -0
  356. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/tcpabridged.py +0 -0
  357. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/tcpfull.py +0 -0
  358. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/tcpintermediate.py +0 -0
  359. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/tcpmtproxy.py +0 -0
  360. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/tcpobfuscated.py +0 -0
  361. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/connection/websocket.py +0 -0
  362. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/mtprotoplainsender.py +0 -0
  363. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/mtprotostate.py +0 -0
  364. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/network/requeststate.py +0 -0
  365. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/password.py +0 -0
  366. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/requestiter.py +0 -0
  367. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/sessions/__init__.py +0 -0
  368. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/sessions/abstract.py +0 -0
  369. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/sessions/memory.py +0 -0
  370. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/sessions/string.py +0 -0
  371. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/sync.py +0 -0
  372. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/__init__.py +0 -0
  373. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/alltlobjects.py +0 -0
  374. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/core/__init__.py +0 -0
  375. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/core/gzippacked.py +0 -0
  376. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/core/messagecontainer.py +0 -0
  377. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/core/rpcresult.py +0 -0
  378. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/core/tlmessage.py +0 -0
  379. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/__init__.py +0 -0
  380. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/adminlogevent.py +0 -0
  381. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/button.py +0 -0
  382. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/chatgetter.py +0 -0
  383. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/conversation.py +0 -0
  384. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/dialog.py +0 -0
  385. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/draft.py +0 -0
  386. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/file.py +0 -0
  387. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/forward.py +0 -0
  388. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/inlinebuilder.py +0 -0
  389. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/inlineresult.py +0 -0
  390. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/inlineresults.py +0 -0
  391. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/inputsizedfile.py +0 -0
  392. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/message.py +0 -0
  393. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/messagebutton.py +0 -0
  394. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/participantpermissions.py +0 -0
  395. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/qrlogin.py +0 -0
  396. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/sendergetter.py +0 -0
  397. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/custom/types.py +0 -0
  398. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/__init__.py +0 -0
  399. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/account.py +0 -0
  400. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/auth.py +0 -0
  401. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/bots.py +0 -0
  402. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/channels.py +0 -0
  403. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/chatlists.py +0 -0
  404. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/conference.py +0 -0
  405. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/contacts.py +0 -0
  406. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/folders.py +0 -0
  407. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/help.py +0 -0
  408. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/langpack.py +0 -0
  409. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/messages.py +0 -0
  410. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/payments.py +0 -0
  411. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/phone.py +0 -0
  412. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/photos.py +0 -0
  413. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/premium.py +0 -0
  414. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/stats.py +0 -0
  415. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/stories.py +0 -0
  416. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/thirdParty.py +0 -0
  417. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/updates.py +0 -0
  418. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/upload.py +0 -0
  419. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/functions/users.py +0 -0
  420. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/patched/__init__.py +0 -0
  421. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/tlobject.py +0 -0
  422. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/__init__.py +0 -0
  423. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/account.py +0 -0
  424. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/auth.py +0 -0
  425. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/bots.py +0 -0
  426. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/channels.py +0 -0
  427. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/chatlists.py +0 -0
  428. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/conference.py +0 -0
  429. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/contacts.py +0 -0
  430. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/help.py +0 -0
  431. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/messages.py +0 -0
  432. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/payments.py +0 -0
  433. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/phone.py +0 -0
  434. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/photos.py +0 -0
  435. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/premium.py +0 -0
  436. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/stats.py +0 -0
  437. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/stickers.py +0 -0
  438. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/storage.py +0 -0
  439. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/stories.py +0 -0
  440. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/thirdParty.py +0 -0
  441. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/update.py +0 -0
  442. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/updates.py +0 -0
  443. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/upload.py +0 -0
  444. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/tl/types/users.py +0 -0
  445. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/types.py +0 -0
  446. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/_engine/utils.py +0 -0
  447. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/admin.py +0 -0
  448. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/afk.py +0 -0
  449. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/cli.py +0 -0
  450. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/client/__init__.py +0 -0
  451. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/client/chat_mixin.py +0 -0
  452. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/client/conversation.py +0 -0
  453. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/compat.py +0 -0
  454. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/errors/__init__.py +0 -0
  455. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/errors/exceptions.py +0 -0
  456. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/__init__.py +0 -0
  457. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/album.py +0 -0
  458. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/base.py +0 -0
  459. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/callback.py +0 -0
  460. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/chat_action.py +0 -0
  461. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/edited.py +0 -0
  462. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/inline.py +0 -0
  463. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/message.py +0 -0
  464. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/message_deleted.py +0 -0
  465. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/message_read.py +0 -0
  466. {spluspy-2.2.2 → spluspy-2.2.4}/spluspy/events/user_update.py +0 -0
  467. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/_engine/client/telegrambaseclient.py +0 -0
  468. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/_engine/client/updates.py +0 -0
  469. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/_engine/network/mtprotosender.py +0 -0
  470. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/_engine/sessions/sqlite.py +0 -0
  471. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/client/client.py +0 -0
  472. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/client/media_mixin.py +0 -0
  473. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/filters/__init__.py +0 -0
  474. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/filters/filters.py +0 -0
  475. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/fsm/__init__.py +0 -0
  476. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/fsm/state.py +0 -0
  477. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/middleware/__init__.py +0 -0
  478. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/middleware/base.py +0 -0
  479. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/middleware/rate_limit.py +0 -0
  480. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/mirror.py +0 -0
  481. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/__init__.py +0 -0
  482. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/bot.py +0 -0
  483. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/chat.py +0 -0
  484. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/enums.py +0 -0
  485. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/media.py +0 -0
  486. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/message.py +0 -0
  487. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/objects.py +0 -0
  488. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/models/user.py +0 -0
  489. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/__init__.py +0 -0
  490. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/client.py +0 -0
  491. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/connection.py +0 -0
  492. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/http_client.py +0 -0
  493. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/mtproto.py +0 -0
  494. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/protocols.py +0 -0
  495. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/spluspy_adapter.py +0 -0
  496. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/network/transport.py +0 -0
  497. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/plugins/__init__.py +0 -0
  498. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/plugins/loader.py +0 -0
  499. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/py.typed +0 -0
  500. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/scheduler/__init__.py +0 -0
  501. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/scheduler/scheduler.py +0 -0
  502. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/session/__init__.py +0 -0
  503. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/session/base.py +0 -0
  504. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/session/memory.py +0 -0
  505. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/session/sqlite.py +0 -0
  506. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/session/string.py +0 -0
  507. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/__init__.py +0 -0
  508. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/base.py +0 -0
  509. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/entity_cache.py +0 -0
  510. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/memory.py +0 -0
  511. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/postgres.py +0 -0
  512. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/redis.py +0 -0
  513. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/storage/sqlite.py +0 -0
  514. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/sync/__init__.py +0 -0
  515. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/sync/client.py +0 -0
  516. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/__init__.py +0 -0
  517. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/batch.py +0 -0
  518. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/cache.py +0 -0
  519. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/chat_lock.py +0 -0
  520. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/file_transfer.py +0 -0
  521. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/helpers.py +0 -0
  522. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/logger.py +0 -0
  523. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/rate_limiter.py +0 -0
  524. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/resolver.py +0 -0
  525. {spluspy-2.2.2/spluspy → spluspy-2.2.4/spluspy/extracted}/utils/version_check.py +0 -0
  526. /spluspy-2.2.2/docs/.nojekyll → /spluspy-2.2.4/spluspy/py.typed +0 -0
  527. {spluspy-2.2.2 → spluspy-2.2.4}/tests/__init__.py +0 -0
  528. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_client.py +0 -0
  529. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_filters.py +0 -0
  530. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_fsm.py +0 -0
  531. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_fsm_enhanced.py +0 -0
  532. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_middleware.py +0 -0
  533. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_rate_limiter.py +0 -0
  534. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_resolver.py +0 -0
  535. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_scheduler.py +0 -0
  536. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_session.py +0 -0
  537. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_storage.py +0 -0
  538. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_types.py +0 -0
  539. {spluspy-2.2.2 → spluspy-2.2.4}/tests/test_utils.py +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: spluspy
3
- Version: 2.2.2
4
- Summary: A modern async Python library for interacting with Soroush Plus
3
+ Version: 2.2.4
4
+ Summary: The most comprehensive async Python library for Soroush and Soroush Plus (سروش پلاس). Build bots, userbots, and automations easily.
5
5
  Project-URL: Homepage, https://github.com/Itskillmaster/spluspy
6
6
  Project-URL: Documentation, https://github.com/Itskillmaster/spluspy#readme
7
7
  Project-URL: Repository, https://github.com/Itskillmaster/spluspy
@@ -9,7 +9,7 @@ Project-URL: Issues, https://github.com/Itskillmaster/spluspy/issues
9
9
  Author: Ali Mirshekari
10
10
  License-Expression: MIT
11
11
  License-File: LICENSE
12
- Keywords: async,bot,mtproto,soroush,splus,userbot
12
+ Keywords: api-soroush,async,bot,mtproto,python-soroush,soroush,soroush-bot,soroush-plus,soroush-userbot,splus,userbot,ربات-سروش,سروش,سروش-پلاس,یوزربات-سروش
13
13
  Classifier: Development Status :: 4 - Beta
14
14
  Classifier: Intended Audience :: Developers
15
15
  Classifier: License :: OSI Approved :: MIT License
@@ -58,9 +58,9 @@ Description-Content-Type: text/markdown
58
58
 
59
59
  <div align="center">
60
60
 
61
- # SplusPy
61
+ # SplusPy - Soroush & Soroush Plus Python Library
62
62
 
63
- **A modern async Python library for Soroush Plus**
63
+ **The Ultimate Async Python Library for Building Bots and Userbots on Soroush Plus**
64
64
 
65
65
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://github.com/Itskillmaster/spluspy/blob/main/LICENSE)
66
66
  [![PyPI version](https://img.shields.io/pypi/v/spluspy)](https://pypi.org/project/spluspy/)
@@ -73,13 +73,9 @@ Description-Content-Type: text/markdown
73
73
 
74
74
  ---
75
75
 
76
- **SplusPy** is a modern, asynchronous Python library for interacting with [Soroush Plus](https://web.splus.ir) both as a user account and a bot account.
76
+ **SplusPy** is the most comprehensive async Python library for building bots, userbots, and automations on [Soroush Plus](https://web.splus.ir). Whether you're creating a ربات سروش پلاس (Soroush Plus bot) or a یوزربات سروش (Soroush userbot), SplusPy provides everything you need with a clean, modern API inspired by Telethon and Pyrogram. This کتابخانه پایتون سروش supports both bot and user accounts out of the box with built-in MTProto credentials.
77
77
 
78
- Built from the ground up with clean architecture, it's designed to feel like [Telethon](https://github.com/LonamiWebs/Telethon) or [Pyrogram](https://github.com/pyrogram/pyrogram), but specifically for the Soroush Plus ecosystem.
79
-
80
- **SplusPy** یک کتابخانه پایتون مدرن و ناهمگام (Asynchronous) برای تعامل با [سروش پلاس](https://web.splus.ir) است — هم به عنوان حساب کاربری و هم به عنوان حساب ربات.
81
-
82
- این کتابخانه از صفر با معماری تمیز طراحی شده و الهام گرفته از [Telethon](https://github.com/LonamiWebs/Telethon) و [Pyrogram](https://github.com/pyrogram/pyrogram) است، اما مخصوص اکوسیستم سروش پلاس می‌باشد.
78
+ **SplusPy** جامع‌ترین کتابخانه پایتون ناهمگام برای ساخت ربات سروش پلاس، یوزربات سروش و اتوماسیون روی پلتفرم سروش پلاس است. این کتابخانه پایتون سروش هم برای حساب کاربری و هم برای حساب ربات پشتیبانی کامل دارد و با API مدرن و تمیز خود توسعه ربات‌ها و یوزربات‌های سروش پلاس را بسیار آسان می‌کند.
83
79
 
84
80
  </div>
85
81
 
@@ -1,8 +1,8 @@
1
1
  <div align="center">
2
2
 
3
- # SplusPy
3
+ # SplusPy - Soroush & Soroush Plus Python Library
4
4
 
5
- **A modern async Python library for Soroush Plus**
5
+ **The Ultimate Async Python Library for Building Bots and Userbots on Soroush Plus**
6
6
 
7
7
  [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://github.com/Itskillmaster/spluspy/blob/main/LICENSE)
8
8
  [![PyPI version](https://img.shields.io/pypi/v/spluspy)](https://pypi.org/project/spluspy/)
@@ -15,13 +15,9 @@
15
15
 
16
16
  ---
17
17
 
18
- **SplusPy** is a modern, asynchronous Python library for interacting with [Soroush Plus](https://web.splus.ir) both as a user account and a bot account.
18
+ **SplusPy** is the most comprehensive async Python library for building bots, userbots, and automations on [Soroush Plus](https://web.splus.ir). Whether you're creating a ربات سروش پلاس (Soroush Plus bot) or a یوزربات سروش (Soroush userbot), SplusPy provides everything you need with a clean, modern API inspired by Telethon and Pyrogram. This کتابخانه پایتون سروش supports both bot and user accounts out of the box with built-in MTProto credentials.
19
19
 
20
- Built from the ground up with clean architecture, it's designed to feel like [Telethon](https://github.com/LonamiWebs/Telethon) or [Pyrogram](https://github.com/pyrogram/pyrogram), but specifically for the Soroush Plus ecosystem.
21
-
22
- **SplusPy** یک کتابخانه پایتون مدرن و ناهمگام (Asynchronous) برای تعامل با [سروش پلاس](https://web.splus.ir) است — هم به عنوان حساب کاربری و هم به عنوان حساب ربات.
23
-
24
- این کتابخانه از صفر با معماری تمیز طراحی شده و الهام گرفته از [Telethon](https://github.com/LonamiWebs/Telethon) و [Pyrogram](https://github.com/pyrogram/pyrogram) است، اما مخصوص اکوسیستم سروش پلاس می‌باشد.
20
+ **SplusPy** جامع‌ترین کتابخانه پایتون ناهمگام برای ساخت ربات سروش پلاس، یوزربات سروش و اتوماسیون روی پلتفرم سروش پلاس است. این کتابخانه پایتون سروش هم برای حساب کاربری و هم برای حساب ربات پشتیبانی کامل دارد و با API مدرن و تمیز خود توسعه ربات‌ها و یوزربات‌های سروش پلاس را بسیار آسان می‌کند.
25
21
 
26
22
  </div>
27
23
 
@@ -0,0 +1,98 @@
1
+ import sqlite3
2
+ import json
3
+
4
+ DB_PATH = r"C:\Users\sheydapc0405\.local\share\mimocode\mimocode.db"
5
+
6
+ conn = sqlite3.connect(DB_PATH)
7
+ conn.row_factory = sqlite3.Row
8
+ cur = conn.cursor()
9
+
10
+ # 1. Search user messages for durable signals: decisions, rules, problems
11
+ print("=== USER MESSAGES WITH DURABLE SIGNALS ===")
12
+ keywords = ['always', 'never', 'remember', 'rule', 'do not', 'fix', 'bug', 'error',
13
+ 'problem', 'issue', 'broken', 'crash', 'failed', 'wrong', 'incorrect',
14
+ 'revert', 'undo', 'stop', 'remove', 'delete', 'add', 'implement']
15
+ for kw in keywords:
16
+ cur.execute("""
17
+ SELECT m.session_id,
18
+ datetime(m.time_created/1000, 'unixepoch', 'localtime') as created,
19
+ substr(json_extract(m.data, '$.content'), 1, 300) as content
20
+ FROM message m
21
+ WHERE json_extract(m.data, '$.role') = 'user'
22
+ AND json_extract(m.data, '$.content') LIKE ?
23
+ ORDER BY m.time_created DESC
24
+ LIMIT 5
25
+ """, (f'%{kw}%',))
26
+ rows = cur.fetchall()
27
+ if rows:
28
+ print(f"\n Keyword '{kw}':")
29
+ for row in rows:
30
+ content_preview = (row[2] or 'N/A')[:250]
31
+ print(f" [{row[0][:20]}...] {row[1]}: {content_preview}")
32
+
33
+ # 2. Extract assistant conclusions from key sessions (text parts with > 100 chars)
34
+ key_sessions = [
35
+ "ses_0969836caffeI0K7VUUwLTqWXf", # WebSocket fault tolerance
36
+ "ses_096580694ffeWvUTAwwQsjHcQX", # SSL library fix
37
+ "ses_089988756ffeZbmRaQmftgXR3q", # Performance optimization
38
+ "ses_089e1f3f4ffe8jFZFQBL4lDVei", # Bot message deletion fix
39
+ "ses_0990b67eeffel9A372rN8B5lsF", # Fixing async errors
40
+ "ses_0a37055dcffeuWNaWa8nesowbV", # Advanced loop error fix
41
+ "ses_0a8cde3e4ffe2F8TAOxI2vx05u", # edited_message error fix
42
+ "ses_0716e1947ffeRoRHp7Gr43RQ2e", # SQLite consolidation
43
+ "ses_0a5dbb28cfferz1ePkpi3WgryN", # Group lock
44
+ "ses_0a5c47358ffe8Z4LM6jiwnL9bY", # Version update 2.1.2
45
+ "ses_095ccb8feffeviJXzgjAgn90DU", # Auth errors prevention
46
+ "ses_095d7a0b7fferSir2HQXM7ixne", # WebSocket auth Pydroid3
47
+ "ses_099c82173ffeKZml69FQTwVw3f", # Bot kill diagnosis
48
+ "ses_0a85a2e01ffeovMrAUq1K33VXv", # Delete owner message
49
+ "ses_0a5ef6f75ffeIHNNWnFp1lCxf0", # set_chat_permissions
50
+ ]
51
+
52
+ print("\n\n=== ASSISTANT CONCLUSIONS FROM KEY SESSIONS ===")
53
+ for sid in key_sessions:
54
+ cur.execute("""
55
+ SELECT substr(json_extract(p.data, '$.text'), 1, 500) as text_content
56
+ FROM message m
57
+ JOIN part p ON p.message_id = m.id
58
+ WHERE m.session_id = ?
59
+ AND json_extract(m.data, '$.role') = 'assistant'
60
+ AND json_extract(p.data, '$.type') = 'text'
61
+ AND length(json_extract(p.data, '$.text')) > 100
62
+ ORDER BY m.time_created DESC
63
+ LIMIT 3
64
+ """, (sid,))
65
+
66
+ cur2 = conn.cursor()
67
+ cur2.execute("SELECT title FROM session WHERE id = ?", (sid,))
68
+ row = cur2.fetchone()
69
+ title = row[0] if row else "N/A"
70
+
71
+ rows = cur.fetchall()
72
+ if rows:
73
+ print(f"\n--- {sid[:20]}... | {title[:60]} ---")
74
+ for r in rows:
75
+ text = r[0] or ''
76
+ if text.strip():
77
+ # Clean up text
78
+ text = text.replace('\n', ' ').strip()
79
+ print(f" >> {text[:400]}")
80
+
81
+ # 3. Check for version bumps
82
+ print("\n\n=== VERSION HISTORY ===")
83
+ cur.execute("""
84
+ SELECT m.session_id,
85
+ datetime(m.time_created/1000, 'unixepoch', 'localtime') as created,
86
+ substr(json_extract(m.data, '$.content'), 1, 200) as content
87
+ FROM message m
88
+ WHERE json_extract(m.data, '$.role') = 'user'
89
+ AND (json_extract(m.data, '$.content') LIKE '%version%'
90
+ OR json_extract(m.data, '$.content') LIKE '%نسخه%'
91
+ OR json_extract(m.data, '$.content') LIKE '%ورژن%')
92
+ ORDER BY m.time_created DESC
93
+ LIMIT 10
94
+ """)
95
+ for row in cur.fetchall():
96
+ print(f" [{row[0][:20]}...] {row[1]}: {(row[2] or '')[:200]}")
97
+
98
+ conn.close()
@@ -0,0 +1,74 @@
1
+ import sqlite3
2
+
3
+ DB_PATH = r"C:\Users\sheydapc0405\.local\share\mimocode\mimocode.db"
4
+ conn = sqlite3.connect(DB_PATH)
5
+ cur = conn.cursor()
6
+
7
+ # Get full assistant text conclusions from key sessions
8
+ key_sessions = [
9
+ "ses_0969836caffeI0K7VUUwLTqWXf", # WebSocket fault tolerance
10
+ "ses_099c82173ffeKZml69FQTwVw3f", # Bot kill diagnosis
11
+ "ses_0716e1947ffeRoRHp7Gr43RQ2e", # SQLite consolidation
12
+ "ses_0a8cde3e4ffe2F8TAOxI2vx05u", # edited_message error
13
+ "ses_0990b67eeffel9A372rN8B5lsF", # async errors
14
+ ]
15
+
16
+ for sid in key_sessions:
17
+ cur.execute("""
18
+ SELECT json_extract(p.data, '$.text')
19
+ FROM message m
20
+ JOIN part p ON p.message_id = m.id
21
+ WHERE m.session_id = ?
22
+ AND json_extract(m.data, '$.role') = 'assistant'
23
+ AND json_extract(p.data, '$.type') = 'text'
24
+ AND length(json_extract(p.data, '$.text')) > 200
25
+ ORDER BY m.time_created DESC
26
+ LIMIT 2
27
+ """, (sid,))
28
+
29
+ cur2 = conn.cursor()
30
+ cur2.execute("SELECT title FROM session WHERE id = ?", (sid,))
31
+ row = cur2.fetchone()
32
+ title = row[0] if row else "N/A"
33
+
34
+ rows = cur.fetchall()
35
+ if rows:
36
+ print(f"\n{'='*80}")
37
+ print(f"SESSION: {sid[:30]} | {title[:70]}")
38
+ print(f"{'='*80}")
39
+ for r in rows:
40
+ text = (r[0] or '').replace('\n', ' ').strip()[:1500]
41
+ print(f"\n{text}")
42
+
43
+ # Also check for the on_edited_message fix details
44
+ print("\n\n=== edited_message fix details ===")
45
+ cur.execute("""
46
+ SELECT json_extract(p.data, '$.text')
47
+ FROM message m
48
+ JOIN part p ON p.message_id = m.id
49
+ WHERE m.session_id = 'ses_0a8cde3e4ffe2F8TAOxI2vx05u'
50
+ AND json_extract(m.data, '$.role') = 'assistant'
51
+ AND json_extract(p.data, '$.type') = 'text'
52
+ ORDER BY m.time_created ASC
53
+ LIMIT 5
54
+ """)
55
+ for r in cur.fetchall():
56
+ text = (r[0] or '').replace('\n', ' ').strip()[:1000]
57
+ if len(text) > 50:
58
+ print(f" >> {text}")
59
+
60
+ # Check task table for completed tasks
61
+ print("\n\n=== COMPLETED TASKS (last 7 days) ===")
62
+ cur.execute("""
63
+ SELECT t.id, t.summary, t.status,
64
+ datetime(t.created_at/1000, 'unixepoch', 'localtime') as created,
65
+ t.session_id
66
+ FROM task t
67
+ WHERE t.created_at >= 1752624000000
68
+ ORDER BY t.created_at DESC
69
+ LIMIT 30
70
+ """)
71
+ for r in cur.fetchall():
72
+ print(f" {r[2]:10} | {r[0][:15]} | {r[1][:80]} | {r[3]} | {r[4][:20]}")
73
+
74
+ conn.close()
@@ -4,8 +4,8 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "spluspy"
7
- version = "2.2.2"
8
- description = "A modern async Python library for interacting with Soroush Plus"
7
+ version = "2.2.4"
8
+ description = "The most comprehensive async Python library for Soroush and Soroush Plus (سروش پلاس). Build bots, userbots, and automations easily."
9
9
  readme = "README.md"
10
10
  license = "MIT"
11
11
  requires-python = ">=3.10"
@@ -14,11 +14,20 @@ authors = [
14
14
  ]
15
15
  keywords = [
16
16
  "soroush",
17
+ "soroush-plus",
18
+ "سروش",
19
+ "سروش-پلاس",
17
20
  "splus",
21
+ "soroush-bot",
22
+ "soroush-userbot",
23
+ "ربات-سروش",
24
+ "یوزربات-سروش",
18
25
  "mtproto",
19
26
  "bot",
20
27
  "userbot",
21
28
  "async",
29
+ "python-soroush",
30
+ "api-soroush"
22
31
  ]
23
32
  classifiers = [
24
33
  "Development Status :: 4 - Beta",
@@ -135,4 +144,4 @@ exclude_lines = [
135
144
  "if TYPE_CHECKING:",
136
145
  "if __name__ == .__main__.",
137
146
  "raise NotImplementedError",
138
- ]
147
+ ]
@@ -1,6 +1,6 @@
1
1
  """SplusPy version information."""
2
2
 
3
- __version__ = "2.2.2"
3
+ __version__ = "2.2.4"
4
4
  __author__ = "Ali Mirshekari"
5
5
  __license__ = "MIT"
6
6
  __url__ = "https://github.com/Itskillmaster/spluspy"