#!/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_report():
    """Отправка отчёта админу"""
    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 = """
📊 <b>АНАЛИЗ ВОЗМОЖНОСТЕЙ РАССЫЛКИ ДОМОВОГО БОТА</b>

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎯 <b>ОТВЕТЫ НА ТВОИ ВОПРОСЫ:</b>

✅ <b>1. МОЖЕТ ЛИ БОТ ПИСАТЬ В ОТДЕЛЬНУЮ ТЕМУ?</b>

Да! Бот уже настроен для работы с темами форума Telegram.

📋 <b>Настроенные темы:</b>
├ 1️⃣ Общий чат (ID: 1)
├ 2️⃣ Важные объявления (ID: 6258)
├ 3️⃣ Ссылки (ID: 6265)
├ 4️⃣ Мемы (ID: 6262)
├ 5️⃣ Для автовладельцев (ID: 6266)
├ 6️⃣ Потеряшки (ID: 6263)
├ 7️⃣ Собрания собственников (ID: 6261)
├ 8️⃣ Вывоз КГМ (ID: 6264)
├ 9️⃣ Переписка с УО (ID: 6260)
└ 🔟 Важные телефоны (ID: 6259)

💡 <b>Как работает:</b>
Бот использует параметр message_thread_id при отправке:
• send_message(chat_id=CHAT_ID, message_thread_id=TOPIC_ID)
• Это позволяет писать в КОНКРЕТНУЮ тему!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

✅ <b>2. МОЖЕТ ЛИ БОТ ПИСАТЬ В ОБЩИЙ ЧАТ?</b>

Да! Уже реализовано в нескольких местах:

📤 <b>Способы рассылки:</b>

<b>1️⃣ Через админку в Telegram:</b>
   /admin → кнопка «📤 Рассылка»
   → Отправляет в ОБЩУЮ ТЕМУ + всем жильцам в личку

<b>2️⃣ Через веб-панель (порт 8000):</b>
   http://localhost:8000/broadcast
   → Выбор получателей:
     • Все верифицированные + чат
     • Только ИГ
     • Только чат
   → Отправка в ОБЩУЮ ТЕМУ чата

<b>3️⃣ Через команды:</b>
   • /ig_broadcast — рассылка только ИГ
   • Рассылка админа — всем жильцам

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎭 <b>ДЛЯ ТВОЕЙ ЗАДАЧИ (ЮМОР ПРО МУСОР + ДОНАТ):</b>

<b>Вариант 1: Общий чат</b>
• Писать в тему «Общий чат» (ID: 1)
• Увидят ВСЕ жильцы
• Подходит для доната на суд

<b>Вариант 2: Тема Мемы</b>
• Писать в тему «Мемы» (ID: 6262)
• Идеально для юмора про мусор!

<b>Вариант 3: Тема Объявления</b>
• Писать в тему «Важные объявления» (ID: 6258)
• Для серьёзных постов про донат

<b>Вариант 4: Тема Собрания</b>
• Писать в тему «Собрания собственников» (ID: 6261)
• Для важных решений по УК

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔧 <b>КАК ЭТО БУДЕТ РАБОТАТЬ:</b>

Создам скрипт, который:
✅ Пишет пост в КОНКРЕТНУЮ тему
✅ Использует прокси (VPN Германия)
✅ Форматирует текст с emoji
✅ Может добавить картинку
✅ Постит серию постов с интервалом

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🚀 <b>ГОТОВО К РАБОТЕ!</b>

Бот уже имеет ВСЕ необходимые функции:
✅ Отправка в конкретную тему
✅ Отправка в общий чат
✅ Рассылка всем жильцам
✅ Поддержка фото
✅ Работа через прокси

<i>Нужно только создать скрипт для постинга серии сообщений!</i>
    """
    
    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_report())
