Sashenka is aJ2EE Servlet container and framework for IRC bots and clients.
Much of it is incomplete and it only handles basic incoming and outgoing messages but it is enough to build trivial bots with.
Bots are written as Servlets following the
Sun J2EE servlet model which are loaded by the container.
The container dispatches messages to and through the modules so that they may respond (if they so wish).
You could even build a functional IRC client with the utility classes in sashenka but there are enough of those out there already so I don't recommend that you try.
What sashenka does offer is an object oriented framework for managing IRC traffic. My only use for it is the bot framework built on top of the IRC framework.
The distro comes with the j2ee.jar from the 1.2.1 j2ee sdk. I include this for convenience, if you have the j2eesdk I encourage you to use your own copy as mine may not jive with your runtime.
· java SE sdk 1.4+
· java EE jar
$ cd src/
$ make classes
$ make jar
$ java -classpath src/sashenka.jar:lib/j2ee.jar
That will run the Sashenka runtime, connect to irc.example.com on port 6667, log in under the nick 'botnick' and join the channel '#sashenka'. The quotes are necessary otherwise the '#' character will cause the last parameter to be dropped by the shell. You can load as many modules as you want into the same bot. Each module decides if it is necessary to respond to a particular command or not.