Subject: RE: [jade-develop] Proxy with multiplataform agents
From: Bellifemine Fabio (Fabio.Bellifemine@TILAB.COM)
Date: Mon Dec 02 2002 - 15:05:42 MET
Erick, I agree with all your considerations about text and string manipulation, but do not be too much afraid of that: all the XML-world and Web-services are based also on string passing and manipulation.
Fabio.
> -----Original Message-----
> From: Erick Martinez [mailto:erickm@cs.yorku.ca]
> Sent: 30 November 2002 20:47
> To: David
> Cc: jade-develop@sharon.cselt.it; aart@swi.psy.uva.nl;
> jansweij@swi.psy.uva.nl
> Subject: RE: [jade-develop] Proxy with multiplataform agents
>
>
>
> Hi David, well so far I am using sockets. As I mentioned
> before on the
> JADE side I am using a SocketProxyAgent (SPA) to route all incoming
> messages to other agents. This basically acts as a server,
> the main advantage here
> you get an ACL aware server that does all incoming message parsing.
> On the Prolog side, I created a preliminary ACL wrapper to deal with
> parsing and generation of ACL messages. DCG grammar is very good to
> handle this kind of stuff, and it is available in most Prolog
> implementations (currently using SWI)
>
> You should have already noticed, I am mostly concentrating on
> the Prolog
> side. One alternative could be to implement a translator on the JADE
> side, and send propietary Prolog-like messages. Then you have to
> translate incoming messages into ACL. Sounds like a lot of text
> manipulation to me, but in can be done.
>
> After posting my previous message, I managed to bypass the
> SPA. Basically
> I implemented a regular Java client. I use the implicit ACL generation
> capabilities of one of the JADE agents to assemble the
> message, and then I
> rely on the client to send it out.
>
> So far so good, but I find this still very primitive in the sense, all
> message content is handled as ad hoc strings. Time provided,
> using some
> content language manipulation could improve things considerably.
>
> I hope this was useful.
>
> Cheers,
>
> --
>
> Erick Martinez
> Graduate Student
> Department of Computer Science
> York University
> 4700 Keele Street
> Toronto, Ontario M3J 1K7
>
>
> On Sat, 30 Nov 2002, David wrote:
>
> > Hi Erick,
> >
> > I am also working on a JADE agents sing Prolog as the
> inference engine.
> > I would appreciate very much if you can share with me how
> you did this
> > interfacing and what other useful information on using
> Prolog with JADE.
> >
> > Many thanks.
> >
> > Regards
> > David
> >
> > > -----Original Message-----
> > > From: jade-develop-admin@sharon.cselt.it [mailto:jade-develop-
> > > admin@sharon.cselt.it] On Behalf Of Erick Martinez
> > > Sent: Saturday, November 30, 2002 6:04 AM
> > > To: jade-develop@sharon.cselt.it
> > > Subject: [jade-develop] Proxy with multiplataform agents
> > >
> > > Hi there, I am working on a project to interface JADE
> with some legacy
> > > Prolog-like agents (pretty much the other way around but ...)
> > >
> > >
> > >
> > >
> > > --> This is the scenario:
> > >
> > >
> > >
> > >
> > > On the JADE side:
> > >
> > >
> > > - 1 reactive GUI agent
> > >
> > >
> > > - 1 proxy agent
> > >
> > >
> > >
> > >
> > > On the Prolog side:
> > >
> > >
> > > - a multilayered ACL wrapper
> > >
> > >
> > > - several agents, brokered by a only one dispatcher
> > >
> > >
> > >
> > >
> > > --> This is the problem:
> > >
> > >
> > > - The JADE proxy agent acts as a server (default port 6789), and
> > routes
> > > all
> > > incoming messages to the GUI (so far, so good)
> > >
> > >
> > > - The GUI agent needs to send messages to the other side, but they
> > have to
> > > be
> > > delivered through a port other than the one the proxy is
> listening to.
> > > This is
> > > because on the other side there is also a server listening for
> > incoming
> > > messages. Both platforms can't share the same port and
> behave like
> > > servers at
> > > the same time.
> > >
> > >
> > >
> > >
> > > How can I manage to either bypass the proxy and send
> messages directly
> > > (this
> > > doesn't sound very FIPA compliant), or make the proxy to get the
> > message
> > > and
> > > send it through a different port?
> > >
> > >
> > >
> > >
> > > I tried to subclass the SocketProxyAgent class but the
> compiler keeps
> > > complining
> > > about access types. How can I do it? Any ideas?
> > >
> > >
> > >
> > >
> > > Thanks for your time and help, in advance.
> > >
> > >
> > >
> > >
> > > --
> > >
> > >
> > >
> > >
> > > Erick Martinez
> > >
> > >
> > > Graduate Student
> > >
> > >
> > > Department of Computer Science
> > >
> > >
> > > York University
> > >
> > >
> > > 4700 Keele Street
> > >
> > >
> > > Toronto, Ontario M3J 1K7
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > -------------------------------------------------
> > > This mail sent through IMP: http://horde.org/imp/
> > > _______________________________________________
> > > jade-develop mailing list
> > > jade-develop@sharon.cselt.it
> > > http://sharon.cselt.it/mailman/listinfo/jade-develop
> > > UNSUBSCRIBE INSTRUCTIONS AT
> > http://jade.cselt.it/mailing.htm#unsubscribe
> >
> >
>
>
>
>
>
> _______________________________________________
> jade-develop mailing list
> jade-develop@sharon.cselt.it
> http://sharon.cselt.it/mailman/listinfo/jade-develop
> UNSUBSCRIBE INSTRUCTIONS AT
> http://jade.cselt.it/mailing.htm#unsubscribe
>
This archive was generated by hypermail 2a22 : Mon Dec 02 2002 - 15:05:43 MET