#!/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()