Задать вопрос
  • Бот проверки подписки в телеграм работает не корректно, как исправить?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Бот всё делает так, как написано. А написано проверить, что проверяем, что пользователь по очереди creator/administrator/member и если нет - то ругаемся. Соответственно, если пользователь подписан, то два раза ругнётся и один раз поздравит (в соответствии с тем, какой у него статус, это будет 1/2/3 сообщение в цепочке).

    Надо выкинуть цикл for stat in status вообще. Получить статус пользователя один раз и проверить его:

    status = bot.get_chat_member(chat_id = '-1001670595457', user_id = message.from_user.id).status
    if status in ['creator, administrator', 'member']:
        ...
    Ответ написан
    2 комментария