diff --git a/commands/set_emoji.py b/commands/set_emoji.py new file mode 100644 index 0000000..abeaab8 --- /dev/null +++ b/commands/set_emoji.py @@ -0,0 +1,38 @@ +from aiogram import Router +from aiogram.filters import Command +from aiogram.types import Message + +from database.database import pg_con +from filters.chat_type import ChatTypeFilter + +import emoji + +router = Router() + + +@router.message(Command('set_emoji'), ChatTypeFilter(chat_type=["group", "supergroup"])) +async def set_emoji(message: Message): + args = message.text.split()[1:] + emojis = [] + + print(len(args)) + + if len(args) < 1: + return await message.reply('Укажи emoji в качестве аргумента') + + if emoji.is_emoji(args[0][0]) is False: + return await message.reply('Не распознан emoji в тексте') + + + + for n in range(len(args)): + for x in range(len(args[n])): + + if emoji.is_emoji(args[n][x]) is True: + emojis.append(args[n][x]) + + conn = await pg_con() + + await conn.execute('UPDATE chat SET emoji_list = $2 WHERE chat_id = $1', message.chat.id, emojis) + + await message.reply(f'Следующие emoji были установлены: {''.join(str(x) for x in emojis)}') diff --git a/requirements.txt b/requirements.txt index 2569f21..a8ebc3e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ PyYAML~=6.0.2 aiogram~=3.14.0 -asyncpg~=0.30.0 \ No newline at end of file +asyncpg~=0.30.0 +emoji~=2.14.0 \ No newline at end of file diff --git a/routers.py b/routers.py index ac3836d..8c74c5c 100644 --- a/routers.py +++ b/routers.py @@ -1,8 +1,13 @@ from aiogram import Dispatcher + from events import join_chat, reactions -from commands import set_channel +from commands import set_channel, set_emoji def setup_routers(dp: Dispatcher): + # Events dp.include_router(reactions.router) dp.include_router(join_chat.router) - dp.include_router(set_channel.router) \ No newline at end of file + + # Commands + dp.include_router(set_channel.router) + dp.include_router(set_emoji.router)