diff --git a/README.md b/README.md index 6682c61..e18c6c8 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,36 @@ # Telegram Minecraft Monitor Bot -Бот на `aiogram` который регулярно проверяет статус Minecraft сервера и: -- Отправляет уведомления в Telegram чат (онлайн/офлайн, изменения игроков). -- Записывает актуальное состояние в `status.json`, чтобы данные можно было забирать на сайт. +Бот на `aiogram`, що регулярно перевіряє статус Minecraft сервера і: +- Надсилає сповіщення в Telegram чат (онлайн/офлайн). +- Записує актуальний стан у `status.json`, щоб дані можна було підхопити на сайт. -## Быстрый старт -1) Установите зависимости: +## Швидкий старт +1) Встановіть залежності: ```bash python -m venv .venv source .venv/bin/activate pip install -r requirements.txt ``` -2) Заполните `.env` (смотрите пример в `.env.example`): +2) Заповніть `.env` (див. приклад у `.env.example`): ``` TELEGRAM_BOT_TOKEN=ваш_токен -TELEGRAM_CHAT_ID=чат_id_куда_слать_уведомления +TELEGRAM_CHAT_ID=chat_id_куди_слати_сповіщення MINECRAFT_HOST=example.org MINECRAFT_PORT=25565 POLL_INTERVAL_SECONDS=30 STATUS_FILE_PATH=data/status.json ``` -3) Запустите бота: +3) Запустіть бота: ```bash python main.py ``` -## Запуск в Docker -1) Собрать образ: +## Запуск у Docker +1) Зібрати образ: ```bash docker build -t monitor-bot . ``` -2) Запустить, передав переменные окружения: +2) Запустити, передавши змінні оточення: ```bash docker run -d \ --name monitor-bot \ @@ -43,17 +43,17 @@ docker run -d \ -v "$(pwd)/data:/data" \ monitor-bot ``` -`STATUS_FILE_PATH` лучше указывать в смонтированную директорию (`/data`), чтобы JSON был доступен снаружи. +`STATUS_FILE_PATH` варто вказувати у змонтовану директорію (`/data`), щоб JSON був доступний зовні. -## Что делает бот -- Каждые `POLL_INTERVAL_SECONDS` секунд опрашивает сервер Minecraft. -- Пишет результат в JSON файл `STATUS_FILE_PATH`, например `data/status.json`: +## Що робить бот +- Кожні `POLL_INTERVAL_SECONDS` секунд опитує Minecraft сервер. +- Пише результат у JSON файл `STATUS_FILE_PATH`, наприклад `data/status.json`: ```json { "source": "monitor-bot", "status": { "online": true, - "motd": "Привет!", + "motd": "Привіт!", "version": "1.20.4", "latency_ms": 62.5, "players_online": 3, @@ -63,18 +63,18 @@ docker run -d \ } } ``` -- Следит за изменениями и шлет уведомления в чат: сервер упал/поднялся, кто зашел/вышел, текущее число игроков. -- Команда `/status` в чате выводит актуальную информацию (берется из файла, при его отсутствии запрашивается напрямую). +- Надсилає сповіщення лише про зміну статусу (онлайн/офлайн). +- Команда `/status` у чаті показує актуальну інформацію (береться з файлу, якщо його нема — запитує напряму). -## Использование данных на сайте -- Забирайте файл `STATUS_FILE_PATH` любым удобным способом (например, отдавайте его веб-сервером или читайте напрямую из файловой системы) — структура стабильная. -- Поле `last_updated` в формате ISO 8601 поможет показывать время обновления. +## Дані для сайту +- Забирайте файл `STATUS_FILE_PATH` у зручний спосіб (наприклад, віддавайте вебсервером або читайте напряму з файлової системи) — структура стабільна. +- Поле `last_updated` у форматі ISO 8601 допоможе відображати час оновлення. -## Настройки -- Все параметры задаются через переменные окружения (см. `.env.example`). -- `POLL_INTERVAL_SECONDS` — частота опроса. -- `STATUS_FILE_PATH` — куда писать JSON. Скрипт сам создаст директорию, если ее нет. +## Налаштування +- Усі параметри задаються через змінні оточення (див. `.env.example`). +- `POLL_INTERVAL_SECONDS` — частота опитування. +- `STATUS_FILE_PATH` — куди писати JSON. Скрипт сам створить директорію, якщо її немає. -## Проверка -- Запустите бота и в Telegram отправьте `/start`, затем `/status` чтобы увидеть текущие данные. -- В каталоге `STATUS_FILE_PATH` должен появиться актуальный `status.json`. +## Перевірка +- Запустіть бота і в Telegram відправте `/start`, потім `/status`, щоб побачити поточні дані. +- У каталозі `STATUS_FILE_PATH` має з’явитися актуальний `status.json`.