28 lines
894 B
Python
28 lines
894 B
Python
from aiogram import Router, F
|
|
from aiogram.types import Message
|
|
|
|
from bot.utils.database import add_sticker_message, ban_user_stickers, is_user_sticker_banned
|
|
from config import MODERATION_LIMIT
|
|
|
|
router = Router()
|
|
|
|
|
|
@router.message(F.sticker | F.animation)
|
|
async def handle_sticker_or_gif(message: Message):
|
|
user_id = message.from_user.id
|
|
chat_id = message.chat.id
|
|
|
|
if await is_user_sticker_banned(user_id, chat_id):
|
|
await message.delete()
|
|
return
|
|
|
|
count = await add_sticker_message(user_id, chat_id)
|
|
|
|
if count >= MODERATION_LIMIT:
|
|
await ban_user_stickers(user_id, chat_id)
|
|
await message.answer(
|
|
f"⚠️ {message.from_user.full_name}, вы превысили лимит стикеров/GIF!\n"
|
|
"Отправка стикеров и GIF ограничена на 5 минут.",
|
|
parse_mode=None,
|
|
)
|