Все модули

Статус игрового сервера

Люди спрашивают «сервер живой?» по десять раз в день, а администрация узнаёт о падении последней — от тех же людей. Модуль вешает в канал одно сообщение, которое само обновляется: онлайн, карта, адрес для подключения. Когда сервер перестаёт отвечать, бот зовёт администрацию в отдельный канал и сам сообщает, когда тот вернулся. Спрашивает он сервер напрямую по тому же протоколу, что и мониторинги, — никаких посредников и чужих API.

Кому подходит

Игровой проект, где люди каждый день спрашивают, работает ли сервер
Несколько серверов — основной, тестовый, второй регион
Хочется узнавать о падении раньше, чем напишут в чат

Как это работает

Весь путь целиком, шаг за шагом. Справа — то, что реально увидят на вашем сервере.

  1. 1

    Добавляете серверы в кабинете

    Для каждого — название, адрес, query-порт и игровой порт. Query-порт нужен боту для запроса состояния, игровой — чтобы показать людям строку подключения. У DayZ query-порт обычно на единицу больше игрового, и в подсказке это написано прямо в кабинете, чтобы не искать.

    личный кабинет
    B
    Ваш ботБОТ
    Игровые серверы
    Основной · 185.10.20.30 · запрос 27016 · игра 2302 Тестовый · 185.10.20.30 · запрос 27116 · игра 2402
  2. 2

    Даёте команду в нужном канале

    Сообщение появится ровно там, где вы её дали. Перед публикацией бот сам спросит серверы и скажет, сколько из них ответило, — если адрес или порт указан неверно, вы увидите это сразу, а не через день.

    B
    Ваш ботБОТ
    видит только тот, кто нажал
    Панель опубликована. Серверов на связи: 2 из 2. Дальше сообщение обновляется само раз в 2 мин.
  3. 3

    Сообщение живёт само

    Бот правит одно и то же сообщение, а не заваливает канал новыми. Перезапуск бота ничего не ломает: где висит панель, записано в базе. Удалили сообщение руками — заведёт новое в том же канале. Правит он её, только когда что-то действительно изменилось — сменился онлайн, карта или сервер пропал; иначе Discord начинает придерживать правки, и панель обновляется рывками.

    сервер-онлайн
    B
    Ваш ботБОТ
    Состояние серверов
    Сейчас играют: 47 человек
    🟢 Основной
    41 / 60 игроков · карта: chernarusplus
    🟢 Тестовый
    6 / 20 игроков · карта: livonia
  4. 4

    Сервер упал — вы знаете об этом первым

    Тревога поднимается не с первой неудачи: у игровых серверов бывает секундная просадка на рестарте, и дёргать людей из-за неё незачем. Сколько неудачных опросов подряд считать падением — ваша настройка. Вдобавок каждый опрос делается с повтором: запрос идёт по UDP, а он доставку не гарантирует, и один потерянный пакет не должен выглядеть как упавший сервер. Поэтому ложных тревог не будет даже на неидеальной сети.

    админ-чат
    B
    Ваш ботБОТ
    @Администрация
    🔴 Основной — не отвечает
    Сервер не ответил 2 раза подряд. Проверьте, запущен ли он и верен ли query-порт.
  5. 5

    И когда вернулся — тоже

    Отдельным сообщением, с указанием, сколько сервер был недоступен. Удобно, когда падение случилось ночью и надо понять утром, насколько всё было плохо.

    админ-чат
    B
    Ваш ботБОТ
    🟢 Основной — снова на связи
    Был недоступен 12 мин.
  6. 6

    Любой может спросить сам

    Команда состояния доступна всем участникам и отвечает свежими данными лично спросившему — не дожидаясь очередного обновления панели и не засоряя канал.

    B
    Ваш ботБОТ
    видит только тот, кто нажал
    Основной — 41 / 60 игроков, карта chernarusplus, отклик 38 мс

Что вы настраиваете

Всё это меняется в личном кабинете в любой момент — каналы и роли выбираются списками с вашего сервера, вводить ID руками не нужно. Бот подхватывает изменения сам.

Серверы

  • Игровые серверы
  • Как часто спрашивать серверы, секунд
  • Сколько ждать ответа, секунд

Что показывать

  • Показывать строку «Сейчас играют»
  • Показывать адрес подключения
  • Показывать время отклика
  • Показывать карту

Оформление панели

  • Заголовок сообщения
  • Цвет, когда сервер на связи
  • Цвет, когда сервер молчит
  • Значок «сервер на связи»
  • Значок «сервер молчит»
  • Текст в панели, когда сервер молчит

Тревога о падении

  • После скольких неудачных опросов бить тревогу
  • Канал оповещений о падении
  • Кого звать при падении
  • Заголовок оповещения о падении
  • Заголовок оповещения о возврате

Статус бота

  • Показывать онлайн в статусе бота
  • Формат строки статуса
  • Ключ сервера для статуса
  • Текст, когда сервер молчит

Команды в Discord

Что вводят на сервере, когда модуль подключён. Команды набираются со слэша — Discord подсказывает список сам, наизусть помнить ничего не нужно.

/статус-панель опубликовать сразу

Вешает сообщение с состоянием серверов, которое дальше обновляется само. Перед публикацией бот опрашивает серверы и говорит, сколько из них ответило, — неверный адрес или порт видно сразу.

Где
В том канале, где дали команду, — там панель и появится. Перенести панель в другой канал можно, дав команду там.
Кто
У кого есть право «Управление сервером».
/статус

Показывает состояние серверов прямо сейчас, не дожидаясь очередного обновления панели, — ответ видит только тот, кто спросил.

Где
Любой канал. Ответ видите только вы.
Кто
Все участники.
/статус-проверка проверка настроек

Разбирает, что мешает модулю работать: отвечают ли серверы, на месте ли канал панели, хватает ли боту прав, куда уйдёт оповещение о падении.

Где
Любой канал. Ответ видите только вы.
Кто
У кого есть право «Управление сервером».

Команды для администрации Discord показывает только тем, у кого есть нужное право сервера. Чтобы ими пользовалась ваша модерация без прав администратора, откройте доступ её ролям: Настройки сервера → Интеграции → ваш бот → нужная команда.

Готовы попробовать?

Бот разворачивается за пару минут: выбираете модули, вставляете токен, приглашаете на сервер.

Собрать бота