Роутер servers предоставляет информацию о Minecraft серверах: список, статус онлайн, моды и управление (создание, обновление, удаление). Путь: trpc.servers.*

Процедуры

getAll

Получение всех серверов (включая скрытые).
  • Тип: query
  • Доступ: publicProcedure
Ответ: массив объектов серверов, отсортированных по дате создания (по убыванию).

getVisible

Получение только видимых серверов с модами.
  • Тип: query
  • Доступ: publicProcedure
Ответ: массив видимых серверов с вложенными модами и подмодами.
id
number
ID сервера
name
string
Название сервера
description
string | null
Описание сервера
queryHost
string | null
Хост для опроса статуса сервера
queryPort
number | null
Порт для опроса статуса сервера
version
string | null
Версия сервера
status
string
Статус сервера (online / offline)
online
number
Текущий онлайн
maxOnline
number
Максимум игроков
isVisible
boolean
Видимость на сайте
icon
string | null
Иконка сервера
mainWorldArea
number
Площадь основного мира
netherWorldArea
number
Площадь Незера
endWorldArea
number
Площадь Энда
otherWorldsArea
number
Площадь прочих миров
isPvpEnabled
boolean
Включён ли PvP
permissionProvider
string
Провайдер прав (по умолчанию none)
wipeDate
Date | null
Дата вайпа
createdAt
Date
Дата создания
mods
array
Список основных модов с подмодами (поле submods)

getById

Получение сервера по ID с модами и текущим онлайном.
  • Тип: query
  • Доступ: publicProcedure
id
number
required
ID сервера
Ответ: объект сервера с вложенными модами (mods с подмодами в submods) и массивом игроков онлайн (onlinePlayers), либо null, если сервер не найден.

create

Создание сервера вместе с модами и подмодами.
  • Тип: mutation
  • Доступ: adminProcedure
name
string
required
Название сервера (от 1 до 100 символов)
description
string
Описание сервера
queryHost
string
Хост для опроса статуса
queryPort
number
Порт для опроса статуса
version
string
Версия сервера
status
string
Статус: online или offline (по умолчанию offline)
online
number
Текущий онлайн (по умолчанию 0)
maxOnline
number
Максимум игроков (по умолчанию 0)
isVisible
boolean
Видимость на сайте (по умолчанию true)
icon
string
Иконка сервера
mainWorldArea
number
Площадь основного мира (по умолчанию 0)
netherWorldArea
number
Площадь Незера (по умолчанию 0)
endWorldArea
number
Площадь Энда (по умолчанию 0)
otherWorldsArea
number
Площадь прочих миров (по умолчанию 0)
isPvpEnabled
boolean
Включён ли PvP (по умолчанию true)
wipeDate
string
Дата вайпа в формате ISO datetime (или null)
mods
array
Массив модов. Каждый мод: name (обязательно), icon, description, link, isMain (по умолчанию false), submods (массив подмодов с полями name, icon, description, link)
Ответ: { id: number } — ID созданного сервера.

update

Обновление сервера. При передаче mods существующие моды сервера удаляются и заменяются новыми.
  • Тип: mutation
  • Доступ: adminProcedure
id
number
required
ID сервера
name
string
Название сервера (от 1 до 100 символов)
description
string
Описание сервера
queryHost
string
Хост для опроса статуса
queryPort
number
Порт для опроса статуса
version
string
Версия сервера
status
string
Статус: online или offline
online
number
Текущий онлайн
maxOnline
number
Максимум игроков
isVisible
boolean
Видимость на сайте
icon
string
Иконка сервера
mainWorldArea
number
Площадь основного мира
netherWorldArea
number
Площадь Незера
endWorldArea
number
Площадь Энда
otherWorldsArea
number
Площадь прочих миров
isPvpEnabled
boolean
Включён ли PvP
wipeDate
string
Дата вайпа в формате ISO datetime (или null)
mods
array
Массив модов (структура та же, что в create). При передаче полностью заменяет моды сервера.
Ответ: { success: true }.

delete

Удаление сервера.
  • Тип: mutation
  • Доступ: adminProcedure
id
number
required
ID сервера
Ответ: { success: true }.