diff --git a/BotCode/routers/administration/easteggs_handlers.py b/BotCode/routers/administration/easteggs_handlers.py new file mode 100644 index 0000000..80226ac --- /dev/null +++ b/BotCode/routers/administration/easteggs_handlers.py @@ -0,0 +1,193 @@ +# BotCode/routers/administration/easteggs_handlers.py +# Функции с шуточными пасхалками (разобраться с логированием и ошибками) + +from aiogram import Router, types, F +from aiogram.enums import ChatAction +from BotLibrary import * + + +# Создание роутера и настройка экспорта +__all__ = ("router", "secret_admin_message_finaki", "secret_admin_message_lostik", + "secret_admin_message_rishkus", "secret_admin_message_finik", "secret_admin_message_skodavano",) +router = Router(name="easteggs_router") +log_type = "EastEggs" + + +# Хэндлер на текст финаки228 +@router.message(F.text.lower() == "финаки228") +async def secret_admin_message_finaki(message: types.Message): + text = "Пасхалка 1 Финаки228 найдена!" + + # Отправка действия "печатает" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.TYPING, + ) + + # Отправка фотографии + try: + await message.reply_photo( + photo=types.FSInputFile(path=f"{ImportantPath.bot_personal_media}/{ImportantPath.photo}/Undertale.jpg"), + caption="ОНА МЕНЯ ЗАСТАВИЛА ПОМОГИТЕ😭... (Кст @fin_aki любит анал, тс..)", + ) + + # Проверка на ошибку и ее логирование + except Exception as e: + logger.error(f"Ошибка при отправке фото: {e}") + await message.answer("Не удалось отправить фото, проверьте настройки пути или файл.") + + # Дополнительное логирование + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст финикх +@router.message(F.from_user.id.in_(ListId.important_ids), F.text.lower() == "финикх") +async def secret_admin_message_finik(message: types.Message): + text = f"Пасхалка 2 финикx найдена!" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_PHOTO, + ) + await message.answer_photo( + photo="https://vos-mo.ru/upload/iblock/329/g0s939ge8o1n8xp7rcqnw9kkz9mcfrg2/risunok.jpg", + caption="Привет, это польза Фиников!") + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст андертейлкино +@router.message(F.text.lower() == "андертейлкино") +async def secret_admin_message_finik(message: types.Message): + text = f"Пасхалка 3 андертейлкино найдена!" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_PHOTO, + ) + await message.answer_photo( + photo="https://i.ytimg.com/vi/c-o4_p4YKIc/mqdefault.jpg", + caption="Меня заставила Финаки, честно!") + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст ришкус + отправка с локального хранилища +@router.message(F.text.lower() == "ришкус") +async def secret_admin_message_rishkus(message: types.Message): + text = f"Пасхалка 4 ришкус найдена!" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_PHOTO, + ) + await message.reply_photo( + photo=types.FSInputFile(path=f"{ImportantPath.bot_personal_media}/{ImportantPath.photo}/Кусь.jpg"), + caption="Россия для грустных", + ) + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст skodavano + отправка с локального хранилища +@router.message(F.text.lower() == "skodavano") +async def secret_admin_message_skodavano(message: types.Message): + text = f"Пасхалка 5 skodavano найдена!" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_PHOTO, + ) + await message.reply_photo( + photo=types.FSInputFile(path=f"{ImportantPath.bot_personal_media}/{ImportantPath.photo}/Vano.jpg"), + caption="SkodaRacingVano24 -> Синяя изолента", + ) + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст лостикслешик + отправка с локального хранилища +@router.message(F.text.lower() == "лостикслешик") +async def secret_admin_message_lostik(message: types.Message): + try: + text = f"Пасхалка 6 лостикслешик найдена!" + logger.bind(log_type=log_type, user=message.from_user.username).info(text) + # Отправка статуса отправки гифки + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_VIDEO + ) + + # Вывод сообщения-гифки пользователю + await message.reply_animation( + animation=types.FSInputFile(path=f"{ImportantPath.bot_personal_media}/{ImportantPath.gif}/ЛжеРайяПрайм.mp4") + ) + + # Активация логгера + await cmd_logginger(message, types_message, text) + return text + + # Проверка на ошибку и ее логирование + except Exception as e: + text_error = await error_cmd_logginger(message, log_type, e) + return text_error + + +# Хэндлер на текст ещкере +@router.message(F.text.lower() == "ещкере") +async def secret_admin_message_finaki(message: types.Message): + text = "Пасхалка 7 ещкере найдена!" + + # Отправка действия "печатает" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.TYPING, + ) + + # Логгирование с дополнительными переменными + logger.bind(log_type=log_type, user=message.from_user.username).info(text) + + # Отправка фотографии + try: + await message.reply_photo( + photo="https://t2.genius.com/unsafe/1249x0/https%3A%2F%2Fimages" + ".genius.com%2Fb7b22809fa5a38a3bbf861abb2a74b87.400x400x1.jpg", + caption="ЕЩКЕРЕ " * 50) + + # Проверка на ошибку и ее логирование + except Exception as e: + error_text = f"Ошибка при отправке фото: {e}" + logger.bind(log_type=log_type, user=message.from_user.username).error(error_text) + await message.answer("Не удалось отправить фото, проверьте настройки пути или файл.") + + # Дополнительное логирование + await cmd_logginger(message, log_type, text) + return text + + +# Хэндлер на текст маз +@router.message(F.text.lower() == "маз") +async def secret_admin_message_finaki(message: types.Message): + text = "Пасхалка 8 маз найдена!" + + # Отправка действия "загружает видео" + await message.bot.send_chat_action( + chat_id=message.chat.id, + action=ChatAction.UPLOAD_VIDEO, # Действие изменено на загрузку видео + ) + + # Логирование с дополнительными переменными + logger.bind(log_type=log_type, user=message.from_user.username).info(text) + + # Отправка видео + try: + await message.reply(text="[ФИНАКИ+МАЗЕЛОВ=ЛЮБОВЬ](https://www.youtube.com/watch?v=st3avf3QZ1w)", + parse_mode="Markdown") + + # Проверка на ошибку и её логирование + except Exception as e: + error_text = f"Ошибка при отправке видео: {e}" + logger.bind(log_type=log_type, user=message.from_user.username).error(error_text) + await message.answer("Не удалось отправить видео, проверьте настройки пути или файл.") + + # Дополнительное логирование + await cmd_logginger(message, log_type, text) + return text +