Для работы требуется библиотека Cyclops Core и Integrated Dynamics!
Данный мод позволяет читать данные из ваших сетей Integrated Dynamics и записывать в них через REST API.
Это делает возможным отслеживание состояния ваших сетей и миров через веб-протоколы, а также взаимодействие с ними путем отправки значений через HTTP Proxy блоки в вашем мире.
Примеры возможного применения (с дополнительным внешним программированием):
- Управление освещением в доме на основе времени суток в вашем мире Minecraft.
- Воспроизведение звука в Minecraft при получении электронного письма.
- Отображение позиций всех онлайн-игроков в Оверворлде на вашем веб-сайте.
- Открытие двери на ферме мобов при получении нового подписчика на Twitch или Mixer.
ПРЕДУПРЕЖДЕНИЕ: Если вам не знакомы понятия 'API' или 'REST', этот мод, вероятно, не для вас. Он ориентирован на опытных пользователей, желающих реализовать сложную автоматизацию с использованием внешних систем, способных взаимодействовать через HTTP.
Мод предоставляет данные о ваших сетях в формате JSON на настраиваемом порту. Пример вывода для одного сетевого элемента:
{ "@context": "https://raw.githubusercontent.com/CyclopsMC/IntegratedREST/master-1.12/src/main/resources/context.jsonld", "@id": "http://localhost:3000/", "networkElements": [ { "@id": "http://localhost:3000/networkElement/integrateddynamics/part/4", "position": { "world": 0, "x": -26, "y": 57, "z": -249, "side": "ir:east" }, "block": "http://localhost:3000/registry/block/integrateddynamics/cable", "@type": [ "NetworkElement", "http://localhost:3000/registry/part/display_panel" ], "channel": 0, "priority": 0, "updateInterval": 1, "network": "http://localhost:3000/network/1619976862", "valueType": "http://localhost:3000/registry/value/valuetype/valuetypes/integrateddynamics/string/name", "value": "I was updated\nvia HTTP!", "target": { "world": 0, "x": -25, "y": 57, "z": -249, "side": "ir:west" }, "loaded": true }, ... ] }
Данный JSON является валидным JSON-LD (Linked Data JSON), что позволяет использовать этот вывод в инструментах RDF.
Помимо состояния сети и её элементов, мод предоставляет данные о большинстве реестров Forge.
Вся доступная информация (через индексную страницу API):
- Сети
- Сетевые элементы
- Типы деталей (parts)
- Типы аспектов (aspects)
- Типы значений (value types)
- Предметы (items)
- Блоки (blocks)
- Жидкости (fluids)
- Моды (mods)
Мод добавляет один создаваемый блок - HTTP Proxy.
Как и все сетевые элементы, этот блок доступен через HTTP. Например, HTTP Proxy с ID 7 будет доступен по адресу http://localhost:3000/networkElement/integrateddynamics/http/7.
Блок имеет внутреннее состояние значения, которое может быть обновлено через HTTP POST запросы (подробности в вики).
Примечание: При использовании мода на сервере рекомендуется отключить запуск HTTP-сервера на стороне клиента через конфигурационный файл игроков.