@Oxblad

Как сделать проверку на администратора в телеграм?

Хочу сделать проверку является ли человек в группе администратором или нет. На библиотеке aiogram
Я нашел метод проверки администратора
asyn ccheck( obj: Union [aiogram.types.message.Message, aiogram.types.callback_query.CallbackQuery, aiogram.types.inline_query.InlineQuery] )

Но я так и не понял что нужно ввести в скобках
  • Вопрос задан
  • 9834 просмотра
Пригласить эксперта
Ответы на вопрос 1
shabelski89
@shabelski89
engineer
Согласно загугленной документации
from aiogram.dispatcher.filters import BoundFilter

class MyFilter(BoundFilter):
    key = 'is_admin'

    def __init__(self, is_admin):
        self.is_admin = is_admin

    async def check(self, message: types.Message):
        member = await bot.get_chat_member(message.chat.id, message.from_user.id)
        return member.is_chat_admin()

dp.filters_factory.bind(MyFilter)

@dp.message_handler(is_admin=True)
async def ...

Хендлер @dp.message_handler(is_admin=True) перехватывает сообщения и проверяет их функцией Check, которая возвращает True если сообщение написано админом, далее становится доступно выполнение придуманной Вами функции def ... внутри хендлера, при возврате False хендлер отбросит обработку сообщениы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы