#!/usr/bin/env python3
"""
Отправка уведомления о тестировании запланированных постов
"""
import asyncio
import sys
from pathlib import Path
BASE_DIR = Path(__file__).resolve().parent
sys.path.insert(0, str(BASE_DIR))
from aiogram import Bot
from aiogram.client.default import DefaultBotProperties
from aiogram.enums import ParseMode
from aiogram.client.session.aiohttp import AiohttpSession
from config import BOT_TOKEN, ADMIN_USER_ID, get_proxy_url
async def send_notification():
"""Отправка уведомления"""
proxy_url = get_proxy_url()
if proxy_url:
session = AiohttpSession(proxy=proxy_url)
bot = Bot(token=BOT_TOKEN, session=session, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
else:
bot = Bot(token=BOT_TOKEN, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
message = """
🎉 НОВЫЙ ФУНКЦИОНАЛ ГОТОВ!
✅ Запланированные посты - РАБОТАЕТ!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📅 ЧТО СОЗДАНО:
✅ Страница в веб-панели: /scheduled_posts
✅ API для создания постов
✅ Фоновая отправка по расписанию
✅ Уведомления о публикации
✅ Поддержка тем форума
✅ Поддержка фото
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🧪 ТЕСТОВЫЙ ПОСТ:
Создан тестовый пост ID=1
Тема: Мемы
Время публикации: через 2 минуты
Текст: Юмор про мусор 😂
⏳ Подожди 2 минуты и проверь:
• Пост появится в теме "Мемы"
• Тебе придёт уведомление об успехе
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🌐 КАК ИСПОЛЬЗОВАТЬ:
1. Зайди в веб-панель: http://localhost:8000
2. Логин: MatrixHasYou
3. Пароль: 5nMVkjd5nMVkjd
4. Кликни "📅 Запланированные посты"
5. Заполни форму:
• Текст поста
• Картинка (опционально)
• Тема форума
• Дата и время
6. Жми "Запланировать пост"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📋 ДОСТУПНЫЕ ТЕМЫ:
💬 Общий чат
😂 Мемы
📢 Важные объявления
🏛️ Собрания собственников
🗑️ Вывоз КГМ
🔍 Потеряшки
🚗 Для автовладельцев
📞 Важные телефоны
🔗 Ссылки
📝 Переписка с УО
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🛡️ БЕЗОПАСНОСТЬ:
✅ Ни один существующий функционал не сломан
✅ Все изменения изолированы
✅ Можно откатиться через Gitea
✅ Логи всех действий
После тестирования скажи - закоммичу в Gitea!
"""
try:
await bot.send_message(ADMIN_USER_ID, message)
print("✅ Уведомление отправлено!")
except Exception as e:
print(f"❌ Ошибка: {e}")
finally:
await bot.session.close()
if __name__ == '__main__':
asyncio.run(send_notification())