# OreolRP Subscription Bot Telegram-бот для продажи подписок на **aiogram 3.x** с поддержкой нескольких языков. ## Структура проекта ``` botyobshik/ ├── main.py # Точка входа ├── requirements.txt # Зависимости ├── .env # Конфигурация (не в git) ├── .env.example # Пример конфигурации ├── README.md # Документация ├── config/ │ └── __init__.py # Загрузка настроек из .env ├── core/ │ └── __init__.py # Работа с БД (авто-создание) ├── handlers/ │ └── __init__.py # Обработчики команд ├── keyboards/ │ └── __init__.py # Клавиатуры └── locales/ ├── __init__.py # Локализация ├── ru.json # Русский ├── en.json # English └── kz.json # Қазақша ``` ## Быстрый старт 1. **Установите зависимости:** ```bash pip install -r requirements.txt ``` 2. **Создайте `.env` файл:** ```bash cp .env.example .env ``` 3. **Настройте `.env`:** ```ini BOT_TOKEN=1234567890:AAH... DB_HOST=localhost DB_USER=root DB_PASSWORD=ваш_пароль DB_NAME=botyobshik SUPPORT_USERNAME=@support_username ``` 4. **Запустите бота:** ```bash python main.py ``` 🎉 База данных и таблицы создадутся **автоматически**! ## Возможности - ✅ Авто-создание БД и таблиц - ✅ Команда `/start` с меню - ✅ Проверка статуса подписки - ✅ Покупка подписки (тарифы) - ✅ Техподдержка - ✅ Правила сервиса - ✅ Смена языка (RU/EN/KZ) - ✅ Асинхронная работа с БД - ✅ Конфигурация через `.env` ## Редактирование ### Переменные окружения (`.env`) | Переменная | Описание | |------------|----------| | `BOT_TOKEN` | Токен от @BotFather | | `DB_HOST` | Хост MySQL | | `DB_USER` | Пользователь MySQL | | `DB_PASSWORD` | Пароль MySQL | | `DB_NAME` | Имя базы данных | | `SUPPORT_USERNAME` | Контакт поддержки | ### Тексты и кнопки Все тексты редактируются в `locales/*.json`: | Ключ | Описание | |------|----------| | `welcome` | Приветствие | | `subscription_active/inactive` | Статусы подписки | | `buttons.*` | Текст кнопок (buy, support, rules, language, back) | | `messages.rules_title` | Заголовок правил | | `messages.rules_text` | Текст правил (многострочный) | | `messages.support` | Сообщение поддержки | | `messages.select_tariff` | Выбор тарифа | | `tariffs.*` | Названия тарифов | | `languages.*` | Названия языков | ### Пример редактирования правил Откройте `locales/ru.json` и измените: ```json "messages": { "rules_title": "📜 Правила сервиса", "rules_text": "1. Первое правило\n2. Второе правило\n3. Третье правило" } ``` Используйте `\n` для переноса строки. ## База данных При запуске бот автоматически создаёт: - Базу данных `botyobshik` - Таблицу `subscriptions` (подписки) - Таблицу `user_languages` (языки пользователей)