From: Paul L. A. <pl...@so...> - 2004-08-04 18:09:48
|
Joe McMahon writes: > Establishing an agreed-upon framework for implementing bots and/or a > protocol for communicating between bots doesn't seem like a bad idea to > me. Having bots able to communicate with each other is a good idea (provided it can be turned off if desired). All of the suggested messaging protocols have some equivalent of an IRC channel (group talk) and private messaging. It makes sense to layer any inter-bot comms over the private messaging of whichever messaging medium it's using. That makes it very, very easy to implement: if the messaging medium supports private messages then bots can communicate with each other. It also avoids having to open yet more ports in a firewall just so bots can talk to each other when you had to open up IRC, or Yahoo, or whatever so the bot could work. Do we need some pre-agreed command/data/whatever encoding? It's tempting to invent one, but you can drive a robot (feed it facts, make it forget facts, get it to join or leave channels) with private messages. After all, its whole reason for existence is to learn from what its told and to take orders from those permitted to give them. Or to put it another way, can anyone conceive of a legitimate type of inter-bot message that would not also be legitimate (in at least some situations) when given to the bot by a human (privileged to do so) in public or in private? So we don't need a special inter-bot message format. What does not make sense is adding RB or SOAP or whatever just so bots can talk to each other. > I remember Andy Lester's talk in which he quoted Nat Torkington: "...it's > hard to find capable, intelligent volunteers[;] chas[ing] one away [is] a > reprehensible act of destruction." Let's not do that. I agree entirely with Nat. However, I am far from convinced that "intelligent" is applicable to the suggestions that were made. Adding RP or SOAP just so bots can talk to each other is a needless complication and unnecessary bloat. If you want cross-server communication then give bots the ability to connect to more than one server. If you want, for some bizarre reason, to drive the bot from a desktop app then let it sit on a local port that you can telnet to and talk to it just as though you were on IRC private messaging it (except it should never have to be addressed, even if the configuration for IRC says it must be). Then you don't even need a special app, or to learn a different set of commands. -- Paul Allen Softflare Support |