# 🚀 QIYANA AUTO-BUMP BOT для Lolz.live Бот для автоматического поднятия тем на форуме Lolz.live с удобным кнопочным интерфейсом ## ✨ Возможности - ➕ **Добавление тем** - через запятую (12345, 67890, 11111) - 🗑️ **Удаление тем** - через кнопки с ID и названием темы - 📋 **Список тем** - с датой последнего поднятия - 🚀 **Ручное поднятие** - поднять все темы прямо сейчас - ⏰ **Автоподнятие** - каждые N часов автоматически - 📊 **Статистика** - успешность, количество поднятий - 👤 **Кнопка автора** - ссылка на профиль ## 🎮 Интерфейс Бот работает через **кнопки**: ``` ┌─────────────────────────────────┐ │ ➕ Добавить темы │ 📋 Список тем │ │ 🗑️ Удалить тему │ 🚀 Поднять темы │ │ 📊 Статистика │ 👤 Автор │ └─────────────────────────────────┘ ``` ## 📦 Установка ### 1. Установите зависимости: ```bash pip install -r requirements.txt ``` ### 2. Получите токены: **Telegram Bot Token:** 1. Напишите [@BotFather](https://t.me/BotFather) 2. Создайте бота командой `/newbot` 3. Скопируйте токен **Lolz API Token:** 1. Зайдите на [zelenka.guru/account/api](https://zelenka.guru/account/api) 2. Создайте токен с правами `read`, `post` 3. Скопируйте токен ### 3. Заполните `config.json`: ```json { "bot": { "api_token": "1234567890:ABCdefGHIjklMNOpqrsTUVwxyz" }, "api": { "base_url": "https://api.zelenka.guru", "auth_token": "eyJ0eXAiOiJKV1QiLCJhbGc..." }, "database": { "path": "threads.db" }, "scheduling": { "bump_interval_hours": 12, "enable_auto_bump": true } } ``` ### 4. Запустите бота: ```bash python app.py ``` ## 📖 Использование ### Первый запуск: 1. Отправьте `/start` боту 2. Нажмите **➕ Добавить темы** 3. Введите ID тем через запятую: `12345, 67890, 11111` 4. Нажмите **🚀 Поднять темы** - все темы поднимутся 5. Бот будет автоматически поднимать темы каждые 12 часов ### Добавление тем: 1. Нажмите **➕ Добавить темы** 2. Введите ID через запятую: `12345, 67890` 3. Бот автоматически получит название каждой темы из API 4. Темы добавятся в базу данных **Пример:** ``` Ввод: 9247920, 9247921, 9247922 Результат: ✅ 9247920 - Qiyanas steam idler ✅ 9247921 - Discord bot ✅ 9247922 - VPN service ``` ### Удаление темы: 1. Нажмите **🗑️ Удалить тему** 2. Выберите тему из списка (показывается ID - название) 3. Тема удалится из базы данных ### Ручное поднятие: 1. Нажмите **🚀 Поднять темы** 2. Бот поднимет все темы по очереди 3. Каждый результат придет отдельным сообщением: ``` [1/3] ✅ Тема 9247920 поднята успешно [2/3] ✅ Тема 9247921 поднята успешно [3/3] ✅ Тема 9247922 поднята успешно ``` ### Список тем: Нажмите **📋 Список тем** - покажет: - ID темы - Название темы - Дату последнего поднятия ### Статистика: Нажмите **📊 Статистика** - покажет: - Количество тем в списке - Сколько готовы к поднятию - Всего попыток поднятия - Успешность (%) - Настройки интервала - Время работы бота ## ⚙️ Настройки ### Интервал автоподнятия В `config.json` можно изменить `bump_interval_hours`: | Значение | Интервал | |----------|----------| | `12` | 12 часов | ### Тестовый запуск (5 минут): Для теста поставьте: ```json "scheduling": { "bump_interval_hours": 0.0833, "enable_auto_bump": true } ``` ## 🔄 Как работает автоподнятие 1. Запускаете бота 2. **Вручную** поднимаете темы через кнопку 🚀 (первый раз) 3. Бот ждет указанный интервал (например, 12 часов) 4. Автоматически поднимает темы, у которых прошло 12+ часов 5. Повторяет каждые 12 часов **Пример:** ``` 00:00 - Запуск бота 00:05 - Вы вручную нажали "Поднять темы" (все темы поднялись) 12:05 - Автоматическое поднятие готовых тем 24:05 - Автоматическое поднятие готовых тем 36:05 - Автоматическое поднятие готовых тем ... ``` ⚡ **Важно:** Первое поднятие делаете ВЫ вручную через кнопку, потом бот сам! ## 📝 Логи - **Консоль** - основные события - **bot.log** - детальные логи с ошибками ## 🔧 Технические детали - **Версия aiogram**: 3.4.1 - **Python**: 3.8+ - **База данных**: SQLite (threads.db) - **API**: https://api.zelenka.guru - **Задержка между поднятиями**: 2 секунды ## 📡 API запрос для поднятия Бот использует такой запрос для каждой темы: ```bash curl --request POST \ --url https://api.zelenka.guru/threads/{THREAD_ID}/bump \ --header 'accept: application/json' \ --header 'authorization: Bearer {YOUR_TOKEN}' ``` Бот автоматически извлекает: - `thread_id` - ID темы - `thread_title` - название темы Из ответа API: ```json { "thread": { "thread_id": ID, "thread_title": "TITLE" } } ``` ## 🐛 Если возникли проблемы 1. Проверьте токены в `config.json` 2. Убедитесь, что токены валидные 3. Посмотрите `bot.log` для деталей 4. Перезапустите бота ## 👤 Автор [QIYANA](https://lolz.live/kqlol/) - создатель бота --- **Приятного использования! 🚀**