dr.botzo, the IRC bot with Django integration.
more of a moving of the code, actually, it now exists in (an overridden) _handle_event, so that recursions happen against irc events directly, rather than an already partially interpreted object. with this change, modules don't need to implement do() nor do we have a need for the internal_bus, which was doing an additional walk of the modules after the irc event was already handled and turned into text. now the core event handler does the recursion scans. to support this, we bring back the old replypath trick and use it again, so we know when to send a privmsg reply and when to return text so that it may be chained in recursion. this feels old hat by now, but if you haven't been following along, you should really look at the diff. that's the meat of the change. the rest is updating modules to use self.reply() and reimplementing (un)register_handlers where appropriate |
||
---|---|---|
extlib | ||
modules | ||
scripts | ||
.gitignore | ||
BUGS | ||
COPYING | ||
dr.botzo.cfg.example | ||
dr.botzo.py | ||
DrBotIRC.py | ||
EXTERNALS | ||
Module.py | ||
README | ||
TODO |
dr.botzo --- an IRC bot dr.botzo is an IRC bot written in Python and using irclib.py to handle most of the protocol stuff. It is mostly a fun project for a couple of us to hack around on, but you may find it useful, in which case you're free to copy this source, send patches, etc. SOURCE http://www.incorporeal.org/sw/?a=summary&p=dr.botzo AUTHORS Brian S. Stephan <bss@incorporeal.org> DEVELOPMENT The bot is currently written to be fairly modular. No real documentation on this yet, but those interested in developing more features should take a look at the classes in dr.botzo.py.