def __init__(self, configuration): super(RotcBot,self).__init__(configuration) Watcher.__init__(self) logging.Handler.__init__(self) # Logging stuff chandler = logging.StreamHandler() chandler.setFormatter(logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")) self.log.addHandler(chandler) self.setLevel(logging.INFO) # Only send INFO messages to the control room self.setFormatter(logging.Formatter("%(levelname)s - %(message)s")) self.log.addHandler(self) # The messages that go to the console self.log.setLevel(logging.DEBUG) ##### self.server_ids = [] # enumerate keys of server_list self.last_rotc_update = 0 self.EVENTS = { 'new_game': 'The first player joins a server.', 'game_close': 'The last player leaves a server, or a server which had players is closed.', 'player_change': 'A change in player numbers on a server.', 'new_server': 'A new server was created (any number of players, even 0).', 'server_close': 'A server was closed (even if it had no players)' } # Build the server list self._build_server_list() # Connect the events self.callback_new_server = self._callback_new_server self.callback_detail_change = self._callback_detail_change self.callback_server_close = self._callback_server_close