Доступ к агенту JADE из локального кода
У меня есть несколько простых агентов HelloWorld, которые живут на локальной платформе Jade и общаются между собой. Теперь мне нужно подключиться к ним с помощью локально запускаемого кода Java, извлечь некоторые данные из агента Receiver и сейчас просто распечатать их на консоли (я не хочу, чтобы агент делал это).
Я понятия не имею, как это сделать.:S
В основном я думал об обмене сообщениями ACL с агентом Receiver, но я не знаю, как подключиться к платформе и найти агента Receiver. Однако, если есть способ напрямую подключиться к агенту, эта задача будет еще проще.
Так что, если у кого-то есть опыт работы с этим, скажите, пожалуйста, как перенести данные из агента в локальный код Java. Учебники также очень приветствуются:)
Спасибо за помощь, Нейц
1 ответ
Я узнал, что у Джейд есть функция под названием JadeGateway,
который может быть реализован как простой класс Java.
Когда он выполняется, он связывается с работающей средой Jade, указанной через "host" и "port". Там создается временный агент, способный отправлять и получать сообщения. Форма результата этих полученных сообщений может быть затем возвращена вызывающему классу с помощью простого оператора return.
Это очень простой способ получения данных от работающих агентов.
Больше об этом можно найти во включенном примере в дистрибутиве Jade:
~ JADE_HOME \ нефрит примеры \ нефрита \ SRC \ Примеры \ внутрипроцессным \JadeGatewayExample.java