Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from typing import Callable, Dict, Any, Awaitable
- from aiogram import BaseMiddleware
- from aiogram.types import TelegramObject
- from bot.db.requests import Database # your class with database queries
- class IsBanedMiddleware(BaseMiddleware):
- async def __call__(
- self,
- handler: Callable[[TelegramObject, Dict[str, Any]], Awaitable[Any]],
- event: TelegramObject,
- data: Dict[str, Any],
- ) -> Any:
- user_id = data['event_from_user'].id
- db: Database = data['db']
- banned = await db.get_ban_user(user_id)
- if banned:
- return
- return await handler(event, data)
Advertisement
Add Comment
Please, Sign In to add comment