Java 코드를 통해 사용 가능한 에이전트 컨테이너를 찾는 방법을 알려줄 사람이 있습니까? JADE 에이전트 프레임 워크를 사용하고 있는데 새 컨테이너를 만드는 방법을 알아 냈지만 기존 컨테이너를 찾을 수 없으므로 에이전트를 배치 할 수 있습니다.Jade Agent Containers
답변
진행중인 서비스를 통해 정보를 수신할지 또는 메시지의 현재 스냅 샷을 수신할지 여부에 따라이 작업을 수행하는 두 가지 방법이 있습니다.
현재 사용 가능한 에이전트 컨테이너의 ID 스냅 샷을 보려면 AMS (Agent Management Service)에 요청 메시지를 보내고 응답을 기다립니다.
private void queryAMS() throws CodecException, OntologyException {
QueryPlatformLocationsAction query = new QueryPlatformLocationsAction();
Action action = new Action(myAgent.getAID(), query);
ACLMessage message = new ACLMessage(ACLMessage.REQUEST);
message.addReceiver(myAgent.getAMS());
message.setLanguage(FIPANames.ContentLanguage.FIPA_SL);
message.setOntology(JADEManagementOntology.getInstance().getName());
myAgent.getContentManager().fillContent(message, action);
myAgent.send(message);
}
private void listenForAMSReply() throws UngroundedException, CodecException,
OntologyException {
ACLMessage receivedMessage = myAgent.blockingReceive(MessageTemplate
.MatchSender(myAgent.getAMS()));
ContentElement content = myAgent.getContentManager().extractContent(
receivedMessage);
// received message is a Result object, whose Value field is a List of
// ContainerIDs
Result result = (Result) content;
List listOfPlatforms = (List) result.getValue();
// use it
Iterator iter = listOfPlatforms.iterator();
while (iter.hasNext()) {
ContainerID next = (ContainerID) iter.next();
System.out.println(next.getID());
}
}
는 지속적인 서비스로이 정보를 얻으려면, 그리고는 AMS에 등록 각 컨테이너의 ContainerID를받을 : 옥 관리 온톨로지와 QueryPlatformLocationsAction 용어, 송신 및 수신 방법을 사용하는 것 , AMSSubscriber를 확장하는 Behavior를 작성하십시오. 이 오래된 질문이지만, 누군가를 위해,
러스
in 새로운 JADE는 AMS와 통신하는 것 외에 다른 방법이 있습니까? – Purushottam
AMS는 에이전트가 시스템 레벨 정보에 액세스 할 수있게 해줍니다.이 작업은 정확하게이 작업을 위해 설계되었습니다! 유사한 작업을 수행하기 위해 커널 서비스를 작성할 수도 있지만, 실제로는 매우 까다 롭습니다. – DoctorRuss
- 1. jade in jade
- 2. std :: shared_ptr with std containers
- 3. Microsoft Agent 사용 방법
- 4. android user agent
- 5. gpg-agent in gpg2
- 6. C#의 SNMP-Agent
- 7. JADE 시스템 중지 (자바 에이전트)
- 8. jade 템플릿 구문 지원 이클립스?
- 9. JADE (Java) - 에이전트 컨테이너 변경
- 10. Swing ContainerS (JFrameS 등)의 액션
- 11. Urlretrieve 및 User-Agent? - Python
- 12. Nunit-agent 디버그 해결 방법
- 13. PHP User-Agent Graceful Degradation
- 14. SQL Agent 작업이 실패 함
- 15. User-agent Processing in php
- 16. express + jade : 제공된 로컬 변수가 뷰에서 정의되지 않았습니다. (node.js + express + jade)
- 17. node.js jade - jade에서 내용 유형을 설정하는 방법
- 18. Jade 로컬 변수를 태그 속성에 넣습니다.
- 19. Ajax 게시물의 Jade Template 양식을 어떻게 업데이트합니까?
- 20. Node.js - 옥 (Jade)보기의 중첩 배열
- 21. std :: containers 호출의 복사 생성자에 복사 생성자가 있습니까?
- 22. Python MTA (Mail transfer agent)가 있습니까
- 23. Eclipse 보안 암호 저장 및 ssh-agent
- 24. HTTP : 일반적인 User-Agent : 헤더에 대한 지침?
- 25. microsoft agent 디 컴파일/압축 해제 하시겠습니까?
- 26. Google App Engine python의 User-Agent
- 27. Express.js, Node.js Jade - expressjs.com 자습서를 따르고 오류가 발생합니다.
- 28. HAML 또는 Jade 템플릿 구문을 Python에서 사용할 수 있습니까?
- 29. 벤치 마크 HAML 대 JADE 대 PHP의 HTML?
- 30. Sql Server 2005 SSIS/Agent - 작업 상태 쿼리
을이 도움이
희망 다음 AddedContainer 이벤트에 대한 핸들러를 등록하고 새로 가능한 컨테이너의 ContainerID에 액세스 할 수 있습니다 거기에 더 비슷한 질문이 있습니다. 대답은 컨테이너를 "지속적인 서비스"로 만드는 것에 초점을 맞추고 있습니다 : http://stackoverflow.com/questions/9094522/getting-a-list-of-all-jade-containers – edmundo096