#!/bin/python # BotManager # # (c) 2006 Andreas Jaggi <andreas.jaggi@waterwave.ch> class BotManager: def __init__(self): self.botInstances = [] self.availableChannels = {} self.observedChannels = {} def updateAvailableChannels(self): for b in self.botInstances: b.requestChannelList() def availableChannelsUpdated(self, botInstance): serverChannels = self.availableChannels[botInstance.server] newChannels = set(serverChannels).union(set(botInstance.availableChannels)) self.availableChannels[botInstance.server] = list(newChannels) def observedChannelsUpdated(self, botInstance): serverChannels = self.observedChannels[botInstance.server] newChannels = set(serverChannels).union(set(botInstance.observedChannels)) self.observedChannels[botInstance.server] = list(newChannels) def addServer(self, server, port = 6667): if server not in self.observedChannels.keys(): #b = BotInstance(self, server, port, # TODO) pass if __name__ == "__main__": botm = BotManager()