Плагин WebConnector - мост между WEB и Minecraft [2.0.0]

WebConnector - мост между WEB и Minecraft
Краткое описание:
Это плагин для связи Minecraft-сервера с внешними сервисами через HTTP API и webhooks: сайтами, пане
4
103
Для версий
  1. 1.20.✘
  2. 1.21.✘
  3. 26.✘
Источник
https://modrinth.com/plugin/webconnector
Java
  1. Java 17
  2. Java 21
  3. Java 25
Документация
https://github.com/kekaop/WebConnector/blob/main/README.ru.md
Исходный код
https://github.com/kekaop/WebConnector

WebConnector​


Подключайте Minecraft-сервер к сайтам, магазинам, Discord-ботам и другим плагинам через контролируемый HTTP API, публичный Java API и подписанные вебхуки.


Точно определяйте, какие действия разрешено выполнять каждой интеграции. WebConnector проверяет входящий JSON, права клиента, отслеживает каждую операцию и сохраняет ключи идемпотентности даже после перезапуска сервера.


Что можно сделать​


  • Магазин, который выдаёт настроенный ранг или проходку, используя постоянный ID заказа.
  • Discord-бот или сайт, получающий события входа и первого входа игроков.
  • Интеграцию с NodeDashboard с разграниченным доступом к отдельным действиям сервера.
  • Java-плагин, который регистрирует приватные действия или явно открывает их через HTTP.
  • Интеграции со Skript с использованием существующего HTTP-аддона.

Возможности​


  • Именованные API-ключи со сроком действия, ограничениями по действиям и разрешениями.
  • Списки разрешённых IP-адресов и CIDR-подсетей, ограничения размера запросов, тайм-ауты и лимиты частоты запросов.
  • Типизированная проверка имён игроков, UUID, строк, целых чисел, логических значений, перечислений и правил на основе регулярных выражений.
  • Асинхронные операции с ID запросов, проверкой статуса и устойчивой к перезапускам защитой от повторного выполнения.
  • Подписанные webhook-запросы с фильтрами, отдельными адресами для каждого маршрута и экспоненциальными повторными попытками.
  • Опциональное удаление файлов, ограниченное списком разрешённых обычных файлов, а также явное управление потенциально опасными действиями.
  • Перезагрузка действий, ключей и маршрутов событий без перезапуска сервера.

Совместимость​


Один серверный JAR поддерживает Paper 1.20.1–26.2, а поддержка 26.3 является экспериментальной. Используйте Java 17 для Minecraft 1.20.1–1.20.4, Java 21 для 1.20.5–1.21.11 и Java 25 для 26.1+. Установка чего-либо на клиент не требуется. Folia и прокси-серверы не поддерживаются.


WebConnector использует стандартный Bukkit API без NMS. Объём проведённых проверок указан в таблице совместимости. Skript и HTTP-аддоны являются необязательными и имеют собственные требования к версиям.


Начало работы​


  1. Установите основной JAR-файл WebConnector в plugins/ и запустите сервер.
  2. Откройте созданный файл plugins/WebConnector/config.yml. Приватный API-секрет генерируется автоматически.
  3. Настройте необходимые действия и выдайте каждой интеграции ключ с нужными правами.
  4. После изменения действий, ключей или маршрутов событий используйте /webconnector reload.

По умолчанию API привязывается к localhost и предоставляет только безопасное действие ping. Для удалённых интеграций ваш хостинг должен предоставлять доступный дополнительный порт или reverse proxy. Если трафик передаётся по сети, используйте HTTPS на прокси.


При повторной попытке выполнения награды или заказа используйте тот же Idempotency-Key. Завершённые или прерванные операции с этим ключом не выполняются автоматически повторно. Внешние команды не являются транзакционными: после тайм-аута или ошибки проверьте состояние операции и сервера, прежде чем создавать новый ключ.


WebConnector предоставляет шлюз для интеграций, но не включает панель управления или обработчик платежей. Удаление файлов и выключение сервера по умолчанию отключены.
Документация · HTTP API ·Java API· Русская документация · Issues

Автор

Orven

Еще ресурсы от Orven

UIcore | Интерактивные интерфейсы прямо в мире Minecraft
UIcore | Интерактивные интерфейсы прямо в мире Minecraft
Зачем ограничиваться привычными окнами сундуков и инвентаря, когда интерфейс может стать полноценной
ВерхНиз