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

    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 хендлер отбросит обработку сообщениы.
    Ответ написан
    4 комментария