MCPcopy Create free account
hub / github.com/HiddenCodeDevs/BlumTelegramBot / check_tribe

Method check_tribe

bot/core/tapper.py:49–81  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

47 self._log.info("Account login successfully")
48
49 async def check_tribe(self):
50 try:
51 my_tribe = await self._api.get_my_tribe()
52 self._log.trace(f"my_tribe got: {my_tribe}")
53 if not isinstance(my_tribe, dict):
54 self._log.warning(f"Unknown my tribe data: {my_tribe}")
55 return
56 if my_tribe.get("blum_bug"):
57 return self._log.warning("<r>Blum or TG Bug!</r> Account in tribe, but tribe not loading and leaving.")
58 if my_tribe.get("title"):
59 self._log.info(f"My tribe <g>{my_tribe.get('title')}</g> ({my_tribe.get('chatname')})")
60
61 chat_name = settings.TRIBE_CHAT_TAG
62 if not chat_name or my_tribe.get("chatname") == chat_name:
63 return
64 await asyncio.sleep(uniform(0.1, 0.5))
65
66 chat_tribe = await self._api.search_tribe(chat_name)
67
68 if not chat_tribe or not chat_tribe.get("id"):
69 self._log.warning(f"Tribe chat tag from config '{chat_name}' not found")
70 settings.TRIBE_CHAT_TAG = None
71 return
72
73 if my_tribe.get('id') != chat_tribe.get('id'):
74 await asyncio.sleep(uniform(0.1, 0.5))
75 if my_tribe.get("title"):
76 await self._api.leave_tribe()
77 self._log.info(f"<r>Leave tribe {my_tribe.get('title')}</r>")
78 if await self._api.join_tribe(chat_tribe.get('id')):
79 self._log.success(f'Joined to tribe {chat_tribe["title"]}')
80 except Exception as error:
81 self._log.error(f"{traceback.format_exc()}")
82
83 async def get_tasks(self):
84 try:

Callers 1

runMethod · 0.95

Calls 5

get_my_tribeMethod · 0.80
getMethod · 0.80
search_tribeMethod · 0.80
leave_tribeMethod · 0.80
join_tribeMethod · 0.80

Tested by

no test coverage detected