init commit
This commit is contained in:
197
docs/QUICKSTART.md
Normal file
197
docs/QUICKSTART.md
Normal file
@@ -0,0 +1,197 @@
|
||||
# Быстрый Старт 🚀
|
||||
|
||||
## За 5 минут до первого запуска
|
||||
|
||||
### 1. Получить Bot Token
|
||||
|
||||
1. Откройте Telegram и найдите **@BotFather**
|
||||
2. Отправьте `/newbot`
|
||||
3. Скопируйте полученный токен
|
||||
|
||||
### 2. Клонировать репозиторий
|
||||
|
||||
```bash
|
||||
cd ~/dev
|
||||
git clone <ссылка_на_репо>
|
||||
cd TG_autoposter
|
||||
```
|
||||
|
||||
### 3. Установить зависимости
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### 4. Настроить окружение
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
Отредактируйте `.env`:
|
||||
```env
|
||||
TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklmNoPqrsTuvWxyzABC
|
||||
```
|
||||
|
||||
### 5. Запустить бота
|
||||
|
||||
```bash
|
||||
python main.py
|
||||
```
|
||||
|
||||
Должны увидеть:
|
||||
```
|
||||
INFO:app:Инициализация базы данных...
|
||||
INFO:app:База данных инициализирована
|
||||
INFO:app:Бот запущен
|
||||
```
|
||||
|
||||
## Использование
|
||||
|
||||
### 1. Добавьте бота в группу
|
||||
|
||||
- Найдите вашего бота в Telegram (по username)
|
||||
- Добавьте его в группу (как любого обычного участника)
|
||||
- Бот автоматически обнаружит группу и сохранит информацию
|
||||
|
||||
### 2. В личных сообщениях с ботом
|
||||
|
||||
- Отправьте `/start`
|
||||
- Выберите **"📨 Сообщения"** → **"➕ Новое сообщение"**
|
||||
- Введите название и текст
|
||||
- Выберите группы
|
||||
- Нажмите **"📤 Отправить"** в списке сообщений
|
||||
|
||||
## Практические примеры
|
||||
|
||||
### Пример 1: Простая рассылка
|
||||
|
||||
```
|
||||
1. /start
|
||||
2. 📨 Сообщения
|
||||
3. ➕ Новое сообщение
|
||||
4. Название: "Привет"
|
||||
5. Текст: "Привет всем!"
|
||||
6. Выберите группы: ✅ Группа 1, ✅ Группа 2
|
||||
7. ✔️ Готово
|
||||
8. Список сообщений → 📤 Отправить
|
||||
```
|
||||
|
||||
### Пример 2: Сообщение с форматированием
|
||||
|
||||
```
|
||||
Текст:
|
||||
<b>Важное объявление!</b>
|
||||
|
||||
Приложение будет <i>недоступно</i> <u>завтра</u> с 00:00 до 06:00.
|
||||
|
||||
<a href="https://status.example.com">Статус сервиса</a>
|
||||
```
|
||||
|
||||
## Команды
|
||||
|
||||
### Главное меню
|
||||
- `/start` - Открыть главное меню
|
||||
- `/help` - Справка
|
||||
|
||||
### CLI (в терминале)
|
||||
|
||||
```bash
|
||||
# Создать сообщение
|
||||
python cli.py message create
|
||||
|
||||
# Список сообщений
|
||||
python cli.py message list
|
||||
|
||||
# Список групп
|
||||
python cli.py group list
|
||||
|
||||
# Инициализировать БД
|
||||
python cli.py db init
|
||||
|
||||
# Сбросить БД (осторожно!)
|
||||
python cli.py db reset
|
||||
|
||||
# Запустить бота
|
||||
python cli.py run
|
||||
```
|
||||
|
||||
## Что дальше?
|
||||
|
||||
- 📖 Прочитайте [README.md](README.md) для полной документации
|
||||
- 🔌 Изучите [API.md](API.md) для разработки
|
||||
- 🧪 Запустите [examples.py](examples.py) для примеров
|
||||
|
||||
## Решение проблем
|
||||
|
||||
### "Токен невалиден"
|
||||
- Проверьте что скопировали правильный токен из @BotFather
|
||||
- Убедитесь что он в файле `.env`
|
||||
- Перезапустите бота
|
||||
|
||||
### "Бот не видит группы"
|
||||
- Убедитесь что бот добавлен в группу
|
||||
- Проверьте что у вас есть права администратора в группе
|
||||
- Посмотрите консоль для логов
|
||||
|
||||
### "Сообщение не отправляется"
|
||||
- Проверьте что бот есть в группе и может писать
|
||||
- Попробуйте отправить тестовое сообщение руками
|
||||
- Посмотрите логи (папка `logs/`)
|
||||
|
||||
### "БД ошибка"
|
||||
```bash
|
||||
# Сбросьте БД
|
||||
python migrate_db.py
|
||||
# Выберите опцию 2 (полный сброс)
|
||||
```
|
||||
|
||||
## Структура для быстрого понимания
|
||||
|
||||
```
|
||||
👤 Пользователь (вы в Telegram)
|
||||
↓
|
||||
🤖 Telegram Bot (main.py)
|
||||
↓
|
||||
🗄️ База данных
|
||||
├── Groups (группы)
|
||||
├── Messages (сообщения)
|
||||
└── MessageGroups (связи)
|
||||
↓
|
||||
📤 Отправка в группы
|
||||
├── Проверка slow mode
|
||||
├── Отправка через Bot API
|
||||
└── Сохранение статуса
|
||||
```
|
||||
|
||||
## Горячие клавиши
|
||||
|
||||
В боте используйте эти кнопки:
|
||||
- **📨 Сообщения** - Работа с сообщениями
|
||||
- **👥 Группы** - Работа с группами
|
||||
- **⬅️ Назад** - Вернуться назад
|
||||
- **✔️ Готово** - Подтвердить выбор
|
||||
|
||||
## Производительность
|
||||
|
||||
Бот может обрабатывать:
|
||||
- ✅ Неограниченное количество сообщений
|
||||
- ✅ Неограниченное количество групп
|
||||
- ✅ Автоматический учет slow mode
|
||||
- ✅ Асинхронная отправка
|
||||
|
||||
## Безопасность
|
||||
|
||||
- 🔐 Токен в `.env` никогда не коммитится
|
||||
- 🔐 БД может быть зашифрована
|
||||
- 🔐 Используйте сильные пароли для PostgreSQL
|
||||
|
||||
## Поддержка
|
||||
|
||||
Если что-то не работает:
|
||||
1. Прочитайте логи в папке `logs/`
|
||||
2. Проверьте README.md
|
||||
3. Посмотрите примеры в `examples.py`
|
||||
4. Создайте Issue в репо
|
||||
|
||||
Удачи! 🎉
|
||||
Reference in New Issue
Block a user