Я предлагаю использовать поведение jade.proto.AchieveREInitiator Координатором. Это позволяет вести простой разговор с несколькими респондентами.
Ответчики, ваши 4 устройства будут отвечать jade.proto.AchieveREResponder behiours.
Код должен выглядеть Алил что-то вроде этого на стороне координатора
class CoordinatorRequestService extends AchieveREInitiator
{
String agentName;
String Service;
public CoordinatorRequestService (Agent a, ACLMessage msg,String Service ,String agentLocalID) {
super(a, msg);
// TODO Auto-generated constructor stub
this.agentName=agentLocalID;
this.Service=Service;
}
protected Vector prepareRequests(ACLMessage predefinedRequest)
{
ACLMessage requestmsg=new ACLMessage(ACLMessage.REQUEST);
requestmsg.addreciever(//add your agents here)
requestMsgVector.add(requestmsg);
return requestMsgVector;
}
protected void handleInform(ACLMessage inform)
{
recieveData=inform.extractDataRecieved();
globalarray.append(recieveData)
}
Google, чтобы найти больше примеров сети контракта и достижения связи.
Goodluck
Как вы обрабатываете полученные сообщения в координаторе? –