Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Плагин [DEV/WEB]MSC_bridge[1.7.10-R0.1|*]

Тема в разделе "Неподтвержденные плагины", создана пользователем danilko, 16 фев 2015.

  1. Автор темы
    danilko

    danilko Старожил Пользователь

    Баллы:
    103
    MSC_bridge - мост для соединения с сайтом:
    Довольно простое API для взаимодействия между плагинами на сервере и скриптами на сайте.
    Функционал минимален, но открывает огромные возможности для интеграции сервера с сайтом. Пока писал этот текст придумал уже множество разных плагинов: чат сервера на сайте, общение с игроками во время скачивания клиента, различные топы, шопы и так далее.
    В качестве примера использования API чуть позже приложу дополнительный плагин и его web-часть.
    Особенности:
    • Позволяет выполнять двунаправленные запросы "сайт<=>сервер"
    Скачать версию 0.2
    Веб-часть доступна в репозиториях msc-repo для CMS MSC: WebSiteEngine 4 пакет MSC_bridge на ветке dev.

    Лог изменений:
    Версия 0.1
    • Релиз плагина
    Версия 0.2
    • Исправлена ошибка с закрытием порта при перезагрузке плагина
    Требования: может подойти любая версия bukkit. (Я так думаю, так как кроме загрузки плагина ничего особенного не используется из bukkit API)
     
    Последнее редактирование: 7 окт 2015
  2. Хостинг MineCraft
    <
  3. Автор темы
    danilko

    danilko Старожил Пользователь

    Баллы:
    103
    API плагина так же очень простое, как и функционал.
    Есть всего один интерфес, который нужно реализовать для приема запросов с сайта.

    Код:
    package danilko09.msc_bridge;
    
    public interface event_handler {
      
      public String onRequest(String uri);
      
    }
    
    Собственно, помимо реализации этого интерфейса обработчик нужно зарегистрировать.
    Можно это сделать примерно так:
    Код:
    import danilko09.msc_bridge.MSC_bridge;
    ...
    ((MSC_bridge) Bukkit.getPluginManager().getPlugin("MSC_bridge")).addHandler("hand", new Handler());
    
    Где Handler - класс, который реализует интерфейс, а hand - внешний идентификатор. (Лучше всего, если вы будете использовать в качестве идентификатора название вашего плагина)

    Это был прием запроса, теперь как обратиться к сайту из плагина.
    Все тоже не очень сложно.
    ((MSC_bridge) Bukkit.getPluginManager().getPlugin("MSC_bridge")).callSite("hand","data");
    hand - тот же идентификатор, а data данные, которые передаются обработчику на сайте.
    Забыл упомянуть про то, что в единственном параметре функции (из интерфеса) обработчику передаются данные с сайта.

    Более подробный мануал будет позже. (В субботу-воскресенье, если время будет напишу)
     
    Последнее редактирование: 16 фев 2015
  4. Plasticable

    Plasticable Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    plasticable
    Имя в Minecraft:
    Plasticable
    Not bad.
    Очень даже.

    ---
    Не знал, что ты плагины разрабатываешь
     
  5. Автор темы
    danilko

    danilko Старожил Пользователь

    Баллы:
    103
    Это первый публичный :)[DOUBLEPOST=1444158645,1424112012][/DOUBLEPOST]UP что-ли. Собираюсь магазин писать на основе этого API.
     

Поделиться этой страницей