62 lines
2.3 KiB
Markdown
62 lines
2.3 KiB
Markdown
# BotBoard Travel Border Bot
|
||
|
||
Telegram-бот `@vacation_sml_bot` для помощи в поездке через границу Беларусь-Польша.
|
||
|
||
## Возможности
|
||
|
||
- Показывает очереди по польскому направлению с официальной страницы ГПК.
|
||
- Выделяет самые свободные пункты пропуска по текущим числовым данным.
|
||
- Отвечает на вопросы через AI с учетом свежих данных очередей.
|
||
- Работает через long polling, поэтому не требует публичного webhook URL.
|
||
|
||
## Локальный запуск
|
||
|
||
1. Создай `.env` рядом с `.env.example`.
|
||
2. Заполни переменные окружения:
|
||
|
||
```env
|
||
TELEGRAM_BOT_TOKEN=...
|
||
BORDER_STATUS_URL=https://gpk.gov.by/situation-at-the-border/
|
||
AI_BASE_URL=https://uat1-www.a1.by:7443/aisearch
|
||
AI_API_KEY=...
|
||
AI_MODEL=gpt-5.5
|
||
REQUEST_TIMEOUT_SECONDS=20
|
||
```
|
||
|
||
3. Установи зависимости и запусти:
|
||
|
||
```bash
|
||
python -m venv .venv
|
||
source .venv/bin/activate
|
||
pip install -r requirements.txt
|
||
python -m app.main
|
||
```
|
||
|
||
## Docker
|
||
|
||
```bash
|
||
docker compose up -d --build
|
||
docker compose logs -f botboard
|
||
```
|
||
|
||
## Portainer
|
||
|
||
1. Открой Portainer.
|
||
2. Создай новый Stack.
|
||
3. Используй содержимое `docker-compose.yml`.
|
||
4. В рабочую директорию/репозиторий стека добавь `.env` с реальными секретами.
|
||
5. Запусти Deploy the stack.
|
||
|
||
Секреты не коммитятся: `.env` исключен через `.gitignore` и `.dockerignore`.
|
||
|
||
## Команды бота
|
||
|
||
- `/start` - стартовое меню.
|
||
- `/poland` - очереди по Польше.
|
||
- `/best` - лучшие пункты по минимальной очереди.
|
||
- `/ai вопрос` - вопрос AI с учетом очередей.
|
||
|
||
## Важно
|
||
|
||
Данные берутся из открытого официального источника ГПК. Бот помогает ориентироваться, но не заменяет официальные правила, требования к документам, визам и решения пограничных служб.
|