first commit

This commit is contained in:
2026-04-05 12:17:53 +03:00
commit 4a03f3e3cf

115
README.md Normal file
View 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` (языки пользователей)