CliRemote 1.7.2__tar.gz → 1.7.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 (46) hide show
  1. {cliremote-1.7.2 → cliremote-1.7.4}/CliRemote.egg-info/PKG-INFO +1 -1
  2. {cliremote-1.7.2 → cliremote-1.7.4}/PKG-INFO +1 -1
  3. {cliremote-1.7.2 → cliremote-1.7.4}/pyproject.toml +1 -1
  4. {cliremote-1.7.2 → cliremote-1.7.4}/remote/client_manager.py +10 -1
  5. {cliremote-1.7.2 → cliremote-1.7.4}/remote/getcode_controller.py +16 -10
  6. {cliremote-1.7.2 → cliremote-1.7.4}/setup.py +1 -1
  7. {cliremote-1.7.2 → cliremote-1.7.4}/CliRemote.egg-info/SOURCES.txt +0 -0
  8. {cliremote-1.7.2 → cliremote-1.7.4}/CliRemote.egg-info/dependency_links.txt +0 -0
  9. {cliremote-1.7.2 → cliremote-1.7.4}/CliRemote.egg-info/requires.txt +0 -0
  10. {cliremote-1.7.2 → cliremote-1.7.4}/CliRemote.egg-info/top_level.txt +0 -0
  11. {cliremote-1.7.2 → cliremote-1.7.4}/LICENSE +0 -0
  12. {cliremote-1.7.2 → cliremote-1.7.4}/MANIFEST.in +0 -0
  13. {cliremote-1.7.2 → cliremote-1.7.4}/README.md +0 -0
  14. {cliremote-1.7.2 → cliremote-1.7.4}/remote/__init__.py +0 -0
  15. {cliremote-1.7.2 → cliremote-1.7.4}/remote/account_manager.py +0 -0
  16. {cliremote-1.7.2 → cliremote-1.7.4}/remote/account_viewer.py +0 -0
  17. {cliremote-1.7.2 → cliremote-1.7.4}/remote/admin_manager.py +0 -0
  18. {cliremote-1.7.2 → cliremote-1.7.4}/remote/analytics_manager.py +0 -0
  19. {cliremote-1.7.2 → cliremote-1.7.4}/remote/batch_manager.py +0 -0
  20. {cliremote-1.7.2 → cliremote-1.7.4}/remote/block_manager.py +0 -0
  21. {cliremote-1.7.2 → cliremote-1.7.4}/remote/caption_manager.py +0 -0
  22. {cliremote-1.7.2 → cliremote-1.7.4}/remote/cleaner.py +0 -0
  23. {cliremote-1.7.2 → cliremote-1.7.4}/remote/client_picker.py +0 -0
  24. {cliremote-1.7.2 → cliremote-1.7.4}/remote/config.py +0 -0
  25. {cliremote-1.7.2 → cliremote-1.7.4}/remote/device_manager.py +0 -0
  26. {cliremote-1.7.2 → cliremote-1.7.4}/remote/file_sender.py +0 -0
  27. {cliremote-1.7.2 → cliremote-1.7.4}/remote/health.py +0 -0
  28. {cliremote-1.7.2 → cliremote-1.7.4}/remote/help_menu.py +0 -0
  29. {cliremote-1.7.2 → cliremote-1.7.4}/remote/init.py +0 -0
  30. {cliremote-1.7.2 → cliremote-1.7.4}/remote/join_controller.py +0 -0
  31. {cliremote-1.7.2 → cliremote-1.7.4}/remote/joiner.py +0 -0
  32. {cliremote-1.7.2 → cliremote-1.7.4}/remote/leave_controller.py +0 -0
  33. {cliremote-1.7.2 → cliremote-1.7.4}/remote/lefter.py +0 -0
  34. {cliremote-1.7.2 → cliremote-1.7.4}/remote/mention_manager.py +0 -0
  35. {cliremote-1.7.2 → cliremote-1.7.4}/remote/precise_engine.py +0 -0
  36. {cliremote-1.7.2 → cliremote-1.7.4}/remote/profile_info.py +0 -0
  37. {cliremote-1.7.2 → cliremote-1.7.4}/remote/profile_media.py +0 -0
  38. {cliremote-1.7.2 → cliremote-1.7.4}/remote/profile_privacy.py +0 -0
  39. {cliremote-1.7.2 → cliremote-1.7.4}/remote/spammer.py +0 -0
  40. {cliremote-1.7.2 → cliremote-1.7.4}/remote/speed_manager.py +0 -0
  41. {cliremote-1.7.2 → cliremote-1.7.4}/remote/stop_manager.py +0 -0
  42. {cliremote-1.7.2 → cliremote-1.7.4}/remote/text_manager.py +0 -0
  43. {cliremote-1.7.2 → cliremote-1.7.4}/remote/username_manager.py +0 -0
  44. {cliremote-1.7.2 → cliremote-1.7.4}/remote/utils/__init__.py +0 -0
  45. {cliremote-1.7.2 → cliremote-1.7.4}/remote/utils/sqlite_utils.py +0 -0
  46. {cliremote-1.7.2 → cliremote-1.7.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CliRemote
3
- Version: 1.7.2
3
+ Version: 1.7.4
4
4
  Summary: Remote client framework for Telegram automation using Pyrogram
5
5
  Home-page: https://github.com/MohammadAhmadi-R/CliRemote
6
6
  Author: MrAhmadiRad
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CliRemote
3
- Version: 1.7.2
3
+ Version: 1.7.4
4
4
  Summary: Remote client framework for Telegram automation using Pyrogram
5
5
  Home-page: https://github.com/MohammadAhmadi-R/CliRemote
6
6
  Author: MrAhmadiRad
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "CliRemote"
7
- version = "1.7.2"
7
+ version = "1.7.4"
8
8
  description = "Remote client framework for Telegram automation using Pyrogram"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
@@ -278,4 +278,13 @@ async def get_any_client(message=None) -> Optional[object]:
278
278
  logger.warning("get_any_client: failed start %s: %s: %s", phone, type(e).__name__, e)
279
279
 
280
280
  logger.error("get_any_client: could not get any client")
281
- return None
281
+ return None
282
+
283
+ def get_app_info() -> List[str]:
284
+ try:
285
+ apis = {1: ['debac98afc137d3a82df5454f345bf02', 23523087], 2: ['b86bbf4b700b4e922fff2c05b3b8985f', 17221354], 3: ['2345124333c84e4f72441606a08e882c', 21831682], 4: ['1ebc2808ef58a95bc796590151c3e0d5', 14742007], 5: ['b8eff20a7e8adcdaa3daa3bc789a5b41', 12176206]}
286
+ return apis[random.randint(1, 5)]
287
+ except Exception as e:
288
+ logger.error(f'Error reading app info: {e}')
289
+ return []
290
+
@@ -1,6 +1,7 @@
1
1
  # antispam_core/getcode_controller.py
2
2
  import os, logging
3
3
  from pyrogram import Client
4
+ from .client_manager import get_active_accounts, get_or_start_client
4
5
  logger = logging.getLogger(__name__)
5
6
 
6
7
  async def handle_getcode_cmd(message, get_app_info):
@@ -13,23 +14,28 @@ async def handle_getcode_cmd(message, get_app_info):
13
14
  if len(parts) < 2:
14
15
  await message.reply('لطفا شماره را وارد کنید\nمثال: gcode +989123456789')
15
16
  return
16
-
17
+ accs = list(get_active_accounts())
17
18
  number = parts[1]
18
19
  session_path = f'acc/{number}.session'
19
20
  if not os.path.exists(session_path):
20
21
  await message.reply('<b>شماره مورد نظر وجود ندارد.</b>')
21
22
  return
22
-
23
- info = get_app_info()
24
- if not info or len(info) < 2:
25
- await message.reply('<b>خطا در دریافت اطلاعات API</b>')
26
- return
27
-
28
- api_hash = info[0]
29
- api_id = info[1]
23
+ for phone in accs:
24
+ if phone == number:
25
+ try:
26
+ cli = await get_or_start_client(phone)
27
+ if cli and getattr(cli, "is_connected", False):
28
+ logger.info("get_any_client: started %s", phone)
29
+ return cli
30
+ except Exception as e:
31
+ logger.warning("get_any_client: failed start %s: %s: %s", phone, type(e).__name__, e)
32
+ break
33
+ else:
34
+ logger.info(f"{phone}")
35
+
30
36
 
31
37
  try:
32
- async with Client(f'acc/{number}', api_id, api_hash) as cli:
38
+ async with cli:
33
39
  messages = [msg async for msg in cli.get_chat_history(777000, limit=1)]
34
40
  if messages and messages[0].text:
35
41
  await message.reply(messages[0].text)
@@ -5,7 +5,7 @@ with open("README.md", encoding="utf-8") as f:
5
5
 
6
6
  setup(
7
7
  name="CliRemote",
8
- version="1.7.2",
8
+ version="1.7.4",
9
9
  author="MrAhmadiRad",
10
10
  author_email="mohammadahmadirad69@gmail.com",
11
11
  description="A precise, async-safe, Telegram automation core (Python 3.8+)",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes