first commit
This commit is contained in:
115
README.md
Normal file
115
README.md
Normal file
@@ -0,0 +1,115 @@
|
|||||||
|
# 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` (языки пользователей)
|
||||||
Reference in New Issue
Block a user