IRC bot framework using mixins to provide commonly desired functionality.
The irc python library's irc.bot.SingleServerIRCBot provides a nice base for making a new bot, but there are many common tasks needed by a robust bot that it does not handle out of the box. IB3 collects some commonly desired behaviors for a bot as mixin classes that can be used via multiple inheritance:
from ib3 import Bot from ib3.auth import SASL from ib3.connection import SSL from ib3.mixins import DisconnectOnError class TestBot(SASL, SSL, DisconnectOnError, Bot): pass
python3 -m pip install --upgrade ib3(recommended)python3 -m pip install .(from source distribution)
IB3 is licensed under the GPL-3.0-or-later license.
Some code and much inspiration taken from Wikimedia irc bots Adminbot, Jouncebot, and Stashbot.