Перейти к основному содержанию
У нас есть множество различных интеграций с Discord, которые вы можете использовать в своём сообществе. Это руководство по настройке всего этого. Наши интеграции в настоящее делятся на три категории. Пожалуйста, прочитайте каждый раздел, чтобы узнать, какие возможности доступны.
  • Webhook’и игрового сервера
  • Встроенный бот игрового сервера
  • Отдельный бот

Предварительные требования

В этом руководстве часто будут упоминаться «ID» каналов Discord, серверов и т.д. Чтобы получить их, включите «Режим разработчика» в настройках Discord, после чего вы сможете щёлкать правой кнопкой мыши по объектам, чтобы получить их ID.

Webhook’и игрового сервера

Самая простая форма интеграции предоставляется Discord Webhook’ами. Она позволяет игровому серверу напрямую отправлять сообщения в определённые каналы Discord с минимальной настройкой. В настоящее время это используется для следующих функций:
  • Автоматические уведомления о статусе раунда (завершение, начало).
    • Включает пинг роли, когда раунд завершён.
  • Пересылка внутриигровых сообщений adminhelp.
Настройка крайне проста. Создайте webhook для соответствующих каналов Discord (см. ссылку выше), затем укажите их в конфигурационном файле сервера:
[discord]
# Webhook для отправки сообщений adminhelp.
ahelp_webhook = "<Webhook для ahelps>"

# Webhook для отправки сообщений о статусе раунда.
round_update_webhook = "<Webhook для оповещений о раунде>"

# Опционально: ID роли для пинга при завершении раунда.
round_end_role = "<ID роли для пинга>"

Встроенный бот игрового сервера

Это подразумевает, что игровой сервер размещает собственного внутреннего Discord-бота, что позволяет использовать более продвинутые функции, чем могут предоставить простые webhook’и, но опять же с относительно небольшими усилиями по настройке. В настоящее время это используется для следующих функций:
  • Двунаправленный мост OOC/Admin чата
  • И многое другое!

Обзор

Игровой сервер способен запускать собственного Discord-бота напрямую через Discord.Net. Это означает, что вам не нужно запускать отдельную программу на вашем сервере для получения этой функциональности, вам нужно только создать бота на сайте разработчиков Discord и соответствующим образом настроить ваш сервер.

Основная настройка

Создание бота

Каждый игровой сервер должен иметь собственное независимое Discord-приложение/бота. Не используйте повторно токены Discord-ботов, это может вызвать кучу забавных багов!
  1. Перейдите на сайт разработчиков Discord, чтобы зарегистрировать новое приложение.
  2. Дайте вашему боту подходящее имя, аватар и всё такое.
  3. Скорее всего, вы захотите сделать бота приватным, чтобы только вы могли добавлять его в Discord-сообщества. Для этого:
    1. Перейдите в «Installation» и установите «Install Link» в «None».
    2. Перейдите в «Bot» и отключите «Public Bot»
  4. В разделе «Bot» включите «Server Members Intent» и «Message Content Intent».
  5. Перейдите в «OAuth» и сгенерируйте URL для установки, отметив следующие флажки и нажав кнопку копирования: Discord's OAuth2 URL generator, with "bot" scopes and "Send Messages" bot permissions checked
  6. Вставьте сгенерированный URL в браузер, чтобы установить бота.
  7. Перейдите в «Bot», нажмите «Reset Token» и скопируйте полученный токен.

Конфигурация сервера

Добавьте следующее в конфигурационный файл сервера для настройки Discord-бота:
[discord]
# Токен бота, который вы скопировали ранее.
token = "заполните меня"
# ID вашего Discord-сервера. Щёлкните правой кнопкой мыши по серверу, чтобы скопировать ID.
guild_id = заполните_меня
# Префикс, который должен добавляться ко всем командам, интерпретируемым ботом.
# Он должен быть уникальным для каждого игрового сервера (и любых других ботов на вашем Discord).
# Обратите внимание, что команды в настоящее время не используются, но, вероятно, будут добавлены в будущем.
prefix = "!"
Если вы всё сделали правильно, ваш сервер должен подключиться к Discord при следующем перезапуске. Вы можете подтвердить это, проверив логи сервера и увидев, появился ли у вашего бота статус «онлайн».

Релей чата (OOC/Admin чат)

Discord-бот может автоматически пересылать сообщения между Discord и внутриигровыми каналами. Это поддерживается как для OOC, так и для admin чата. Для настройки создайте каналы на стороне Discord и убедитесь, что у бота есть права на чтение и отправку сообщений в них. Затем добавьте следующую конфигурацию на ваш сервер:
[ooc]
# ID канала в Discord. Скопируйте его, щёлкнув правой кнопкой мыши по каналу.
discord_channel_id = заполните_меня

[admin]
# ID канала в Discord. Скопируйте его, щёлкнув правой кнопкой мыши по каналу.
chat_discord_channel_id = заполните_меня
Вы можете, конечно, пропустить один из каналов, если хотите ретранслировать только один из двух.

Отдельный бот

Это подразумевает запуск отдельного Discord-бота, который работает независимо от игровых серверов. Это функциональность, которая работает на официальном боте Overseer на Discord’е, включающая:
  • Проверка статуса игрового сервера и автоматическое обновление канала.
  • Команды для перезапуска/остановки игровых серверов.
  • Автоматические ответы на сообщения.
Screenshot of Overseer's Discord profile Бот использует Red Discord Bot в качестве модульной основы, с нашими собственными cog’ами, расположенными здесь. Это означает, что вы можете добавить гораздо больше функциональности от других разработчиков cog’ов, если захотите.
Мы предоставляем поддержку только для официальных wizard-cogs. Поддержка самого Red или других cog’ов не предоставляется нами, обращайтесь за поддержкой на официальный Discord RedBot или к соответствующему разработчику cog.
Большинству наших cog’ов требуется минимальная версия Python 3.11, пожалуйста, убедитесь, что у вас установлена эта версия, прежде чем обращаться за поддержкой.

Настройка

  1. Следуйте документации Red по установке и запуску базового Red-бота. Обратите внимание, что, как и сервер SS14, вам нужен компьютер, который будет оставаться включённым для работы вашего бота.
  2. Если вы ещё этого не сделали, прочитайте страницу Getting started для Red.
  3. После того как вы настроили бота и пригласили его на свой сервер, вы можете установить репозиторий wizard-cogs для вашего бота. [p] в данном случае — это префикс вашего бота, который вы выбрали во время настройки redbot.
Включите встроенный cog downloader
[p]load downloader

Добавьте репозиторий wizard-cogs
[p]repo add wizard-cogs https://github.com/space-wizards-federation/wizard-cogs

Установите выбранный cog, посмотрите ссылку на GitHub, чтобы узнать ваши варианты
[p]cog install wizard-cogs <cog_name>

Загрузите cog
[p]load <cog_name>
Подсказки
Ищете другие интересные cog'и? Посмотрите [Redbot Cog index](https://index.discord.red/). Как указано выше, мы не предоставляем поддержку для этих cog'ов.

Ваш сервер не на английском? Некоторые cog'и имеют переводы. Вы можете изменить это с помощью ```[p]set locale <language_code>```. Наши cog'и в настоящее время не поддерживают другие языки, кроме английского.

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

SS14 Status
Настройка
  1. Установите [p]cog install wizard-cogs gameserverstatus
  2. Добавьте ваш сервер [p]statuscfg addserver ss14 <имя-сервера> <адрес-вашего-сервера>
  3. Готово! Посмотрите результат с помощью [p]status <имя-сервера> (Конечно, ваш сервер должен быть онлайн)
Настройка автоматического отслеживания
SS14 Status Watches Если вы хотите иметь канал, где сообщение о статусе обновляется автоматически, то watch — это та функция, которая вам нужна.
  1. После добавления сервера используйте следующую команду [p]statuscfg addwatch <сервер> <#канал>
  2. Пока у бота есть права на публикацию в этом канале, вы увидите, что статус сервера автоматически обновляется в сообщении примерно каждые 2 секунды.

Действия управления через SS14.Watchdog

Poweractions Позволяет взаимодействовать с SS14.Watchdog для выполнения определённых действий.
  1. Установите [p]cog install wizard-cogs poweractions
  2. Настройте ваш сервер, выполнив [p]poweractionscfg add и нажав зелёную кнопку добавления. Только администраторы могут выполнять эту команду. В противном случае бот не ответит. Вы увидите форму, которую нужно заполнить (Примечание: ни мы, ни разработчики RedBot не получат эту информацию. Эта информация будет храниться только ботом и не будет отображаться публично.)
Input field
  • Name: Имя сервера, которое вы будете указывать боту при перезапуске сервера.
  • URL: URL экземпляра watchdog, убедитесь, что URL доступен боту. Пример: если вы открываете API watchdog по адресу ‘https://example.com/watchdog’, то это то, что вам нужно ввести. Вы также можете использовать ‘localhost’, если бот работает на той же машине, что и watchdog. Порт watchdog по умолчанию — 5000
  • Server ID: Имя вашего сервера в appsettings.yml вашего watchdog, где хранится конфигурация вашего сервера. Не конфиг «Name».
  • API token: ApiToken из конфигурации вашего watchdog.
  1. После нажатия кнопки отправки, если бот сообщил об успехе, вы закончили! Повторите для других ваших серверов.
Доступные команды
Перезапустить сервер сейчас: [p]restartserver <имя> Перезапустить все серверы, настроенные у бота: [p]restartnetwork Запросит подтверждение перед выполнением Остановить сервер после завершения текущего раунда: [p]stopserver <имя> Сообщить watchdog’у о необходимости подготовиться к обновлению сервера: [p]updateserver <имя>

GitHub интеграция

Ещё не портировано на redbot. Вы можете использовать github webhook в качестве временного решения.

Автоответчик (WYCI, Nanotrasen Block Game, Based)

why [p]cog install wizard-cogs autoresponder Почему… (Отвечает пользователям, говорящим «Something when» — фразой «When you code it», «Tetris» — «Nanotrasen Block Game» и «Based» — «Based on what». Это внутренняя шутка в сообществах Space Station 14)
Последнее изменение 21 июня 2026 г.