# -*- coding: utf-8 -*- import ConfigParser from straight.plugin import load from ircbot import IRCBot if __name__ == '__main__': from modules.module import Module config = ConfigParser.ConfigParser() config.readfp(open('config.ini')) bot = IRCBot() bot.set_config(config) plugins = [plugin_class() for plugin_class in load("modules", Module)] for plugin in plugins: bot.load_module(plugin) bot.end_load_modules() bot.connect(config.get('core', 'server'), int(config.get('core', 'port')))
return f**e if split[0]=="fibonacci": a = [0, 1] tgt = int(split[1]) v = 0 while tgt >= 2: v = a[0] + a[1] a[0] = a[1] a[1] = v tgt -= 1 return v if __name__ == '__main__': import sys c = IRCBot(sys.argv[1], verbosity=True) def exampleexitcallback(user, host, dest, mesg): if (user == 'ChloeD'): print("Oh, hello ChloeD") c.send_chat("#bottest", "I'm leaving now") c.disconnect() sys.exit(0) c.add_privmsg_callback(re.compile("!exit"), exampleexitcallback) bot = Botsync(c, "#bottest") bot.add_work_executor(StupidMathsWorker()) t1 = Thread(target=lambda:c.connect("irc.freenode.net", 6667, "#bottest")) t2 = Thread(target=bot.schedule_start) t1.start() t2.start() [ x.join() for x in [ t1, t2 ] ]
import yaml from ircbot import IRCBot from channelmodule import ChannelModule from permissionmodule import PermissionModule from autoopmodule import AutoOPModule from titlemodule import TitleModule from calcmodule import CalcModule from codeforcesmodule import CodeForcesModule from adminmodule import AdminModule from dynamicmoduleloadermodule import DynamicModuleLoaderModule if __name__ == '__main__': settings = yaml.load(open('settings.yaml')) bot = IRCBot(settings['nick'], settings['user'], settings['realname']) for network, server in settings['servers'].items(): bot.connect(network, **server) bot.install_module(ChannelModule, channels=settings['channels']) bot.install_module(PermissionModule) bot.install_module(AutoOPModule) bot.install_module(TitleModule) bot.install_module(CalcModule) bot.install_module(CodeForcesModule) bot.install_module(AdminModule) bot.install_module(DynamicModuleLoaderModule) bot.run()