from libjarvis.config import Config from libjarvis import tools os.chdir(os.path.dirname(sys.argv[0])) # chdir to own dir config = Config() def printerr(msg): sys.stderr.write("["+str(int(time.time()))+"] " + msg + "\n") sys.stderr.flush() def nothing(msg): pass debug = printerr if config.get("debug") else nothing class JarvisBot(ircbot.SingleServerIRCBot): """Main class for the Jarvis bot""" def __init__(self): debug("Initialization...") self.bdd = None if not config.get("use_ssl"): ircbot.SingleServerIRCBot.__init__(self, [(config.get("server"), config.get("port"))], config.get("nick"), config.get("desc")) else: self.ssl_factory = irc.connection.Factory(wrapper=ssl.wrap_socket)
if multipart_msg.is_multipart(): subject = multipart_msg.get_payload(0)['Subject'] author = multipart_msg.get_payload(0)['From'] except (IndexError, TypeError): return False main_msg = mail.get_payload(0) match = re.search(r"\nDISTRIBUTE (\S) (\S)\n", str(main_msg)) if not match: return False liste = match.group(1) token = match.group(2) return ("distribution", token, liste, subject, author) if __name__ == "__main__": print('Connecting to ' + config.get("imap_server") + '… ', end='') conn = imaplib.IMAP4_SSL(config.get("imap_server")) print('Connected') to_send = [] try: print('Logging as ' + config.get("imap_user") + '… ', end='') conn.login(config.get("imap_user"), config.get("imap_password")) except: print('Failed') print(sys.exc_info()[1]) sys.exit(1) print('Logged in') try: bdd = mysql.connector.connect(**config.get("mysql"))