Files
RemnaWaveBOT/README.md
2026-04-05 12:17:53 +03:00

116 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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` (языки пользователей)