diff --git a/src/actions/fun.py b/src/actions/fun.py index 6ff8db38715c9cb85a1a2b57fb7aa807a93a3ef5..440ab14e2f3ba55169cf977641c08ef86c6a9e33 100644 --- a/src/actions/fun.py +++ b/src/actions/fun.py @@ -4,6 +4,7 @@ import random import re from datetime import datetime +import httpx from src.config import config from src.utils.responses import danger_message, mark_unread from src.utils.str_helpers import Rotor @@ -145,11 +146,30 @@ async def run_rotations(event: events.NewMessage.Event): events.NewMessage( pattern=re.compile( rf".*({'|'.join(RICK_ROLL_URLS)}).*", flags=re.MULTILINE | re.DOTALL - ) + ), + outgoing=False, ) ) @mark_unread async def rickroll_detector(event: events.NewMessage.Event): await event.reply( - "🚨Rick Roll police🚨" "\nОбнаружена вредоноÑÐ½Ð°Ñ ÑÑылка! Ð’Ð°Ñ Ð¿Ñ‹Ñ‚Ð°ÑŽÑ‚ÑÑ Ð·Ð°Ñ€Ð¾Ð»Ð»Ð¸Ñ‚ÑŒ!" + "🚨Rick Roll police🚨\nОбнаружена вредоноÑÐ½Ð°Ñ ÑÑылка! Ð’Ð°Ñ Ð¿Ñ‹Ñ‚Ð°ÑŽÑ‚ÑÑ Ð·Ð°Ñ€Ð¸ÐºÑ€Ð¾Ð»Ð»Ð¸Ñ‚ÑŒ!" + ) + + +@config.telegram_client.on( + events.NewMessage( + pattern=re.compile( + r".*(https:\/\/pastebin\.com\/(?P<paste_id>[a-zA-Z\d]+)).*", + flags=re.MULTILINE | re.DOTALL, + ) ) +) +@mark_unread +async def pastebin_unlink(event: events.NewMessage.Event): + paste_id = event.pattern_match["paste_id"] + async with httpx.AsyncClient() as client: + response = await client.get(f"https://pastebin.com/raw/{paste_id}") + if response.status_code != 200: + return + await event.reply(f".paste contents: \n```{response.text}```")