From b54afa57753c53d1efd5b9930d3a5cbda504d342 Mon Sep 17 00:00:00 2001 From: clockblocker <asde3211q@gmail.com> Date: Sat, 25 Dec 2021 18:01:32 +0300 Subject: [PATCH] Make cb ignore s3 again --- clockblocker_bot/actions/basic.py | 13 +++++----- clockblocker_bot/utils/decorators.py | 38 ++++++++++------------------ 2 files changed, 19 insertions(+), 32 deletions(-) diff --git a/clockblocker_bot/actions/basic.py b/clockblocker_bot/actions/basic.py index 2a1112f..7c3cc2c 100644 --- a/clockblocker_bot/actions/basic.py +++ b/clockblocker_bot/actions/basic.py @@ -6,11 +6,11 @@ import re from datetime import datetime from clockblocker_bot.config import config +from clockblocker_bot.utils.constants import CLOCKBLOCKER_ID, S3RIUS_ID from clockblocker_bot.utils.decorators import ( beware_the_croud_policy, clean_up_policy, - ignore_clockblocker, - ignore_s3rius, + ignore_with_id, mark_unread, ) from telethon import events @@ -32,7 +32,7 @@ async def show_help(event: events.NewMessage.Event): @config.telegram_client.on( events.NewMessage(pattern=r"\W*[пП]+\s*[рР]+\s*[иИ]+\s*[вВ]+\s*[Ее]+\s*[тТ]+\W*") ) -@ignore_clockblocker +@ignore_with_id(CLOCKBLOCKER_ID) @beware_the_croud_policy @mark_unread @clean_up_policy @@ -42,13 +42,13 @@ async def ci(event: events.NewMessage.Event): @config.telegram_client.on( events.NewMessage( - pattern=re.compile(".*[Бб]Ñлдь.*", flags=re.DOTALL | re.MULTILINE), + pattern=re.compile(".*([Бб]Ñлдь|,zklm|[Бб]лÑдь).*", flags=re.DOTALL | re.MULTILINE), outgoing=True, ) ) @mark_unread async def blyad(event: events.NewMessage.Event): - permutations = set(["БлÑдь", "БлasDÑŒ", "лÑбдь", ",zklm", "блÑдь", "блÑьд", "БлÑьд"]) + permutations = set(["БлÑдь", "БлasDÑŒ", "лÑбдь", ",zklm", "блÑдь", "БлÑдь", "блÑьд", "БлÑьд"]) start_time = datetime.now() current_time = start_time last_blyad = event.message.message @@ -68,8 +68,7 @@ async def reboot_advice(event: events.NewMessage.Event): @config.telegram_client.on(events.NewMessage(pattern=r"[\)\s]+")) -@ignore_s3rius -@ignore_clockblocker +@ignore_with_id(S3RIUS_ID, CLOCKBLOCKER_ID) @clean_up_policy @mark_unread async def smile_back(event: events.NewMessage.Event): diff --git a/clockblocker_bot/utils/decorators.py b/clockblocker_bot/utils/decorators.py index 3b4b3bb..fdd5c9c 100644 --- a/clockblocker_bot/utils/decorators.py +++ b/clockblocker_bot/utils/decorators.py @@ -10,31 +10,19 @@ logger = logging.getLogger(__name__) chat_union = Union[types.User, types.Chat, types.Channel] - -def ignore_clockblocker(f): - @functools.wraps(f) - async def wrapper(event: events.NewMessage.Event): - try: - if not event.message.from_id == CLOCKBLOCKER_ID: - await f(event) - - except Exception as e: - logger.error(f"Exception found: {e}") - - return wrapper - - -def ignore_s3rius(f): - @functools.wraps(f) - async def wrapper(event: events.NewMessage.Event): - try: - if not event.message.from_id == S3RIUS_ID: - await f(event) - except Exception as e: - logger.error(f"Exception found: {e}") - - return wrapper - +def ignore_with_id(*ids): + def ignore_inner(f): + @functools.wraps(f) + async def wrapper(event: events.NewMessage.Event): + try: + if not event.message.from_id.user_id in ids: + await f(event) + + except Exception as e: + logger.error(f"Exception found: {e}") + + return wrapper + return ignore_inner def only_clockblocker(f): @functools.wraps(f) -- GitLab