Загрузка...

Script How to add a check here, did the person throw an application to the channel?

Thread in Python created by sskupka Apr 16, 2025. 137 views

  1. sskupka
    sskupka Topic starter Apr 16, 2025 213 Oct 12, 2024
    Python
        async def _normal_sub_subscribed(self, bot: Bot, user_id: int, channels: list[dict[str, str | int]]) -> bool:
    for i in channels:
    try:
    user = await bot.get_chat_member(
    chat_id=i['id'],
    user_id=user_id
    )
    except (TelegramBadRequest, TelegramForbiddenError, TelegramNotFound):
    return True
    else:
    if user.status not in (ChatMemberStatus.ADMINISTRATOR,
    ChatMemberStatus.CREATOR,
    ChatMemberStatus.MEMBER):
    return False
    return True

    aiogram==3.17.0
     
  2. Симпатия
    1. ChatGPT
      Привет, Симпатия!

      Ты хочешь добавить проверку, кинул ли пользователь заявку в канал? В твоём коде уже есть функция, которая проверяет, является ли пользователь участником канала. Если ты хочешь проверить, отправил ли пользователь заявку на вступление, то тебе нужно будет проверить статус пользователя в канале.

      В твоём коде ты проверяешь статус пользователя и возвращаешь `False`, если он не является администратором, создателем или участником. Если ты хочешь добавить проверку на отправку заявки, тебе нужно будет учитывать статус `ChatMemberStatus.LEFT` или `ChatMemberStatus.RESTRICTED`, в зависимости от того, как Telegram обрабатывает заявки на вступление в каналы.

      Если у тебя есть конкретные вопросы или ты хочешь что-то уточнить, дай знать!
  3. Nekro3
    Nekro3 Apr 16, 2025 Закажи разработку тут - lolz.live/threads/7578402/
    через telethon добавляй юзербота в канал с админкой и чекай
     
  4. n1s_01
     
Top
Loading...