''' @author: Klaus-Uwe Mitterer ''' import imaplib2 import socket import consolehelper class ImapHelper(object): folder_ = None mail_ = None def __init__(self,host,port,is_ssl,user,password,folder): self.folder_=folder try: if(is_ssl): self.mail_=imaplib2.IMAP4_SSL(host,port) else: self.mail_=imaplib2.IMAP4(host,port) if 'STARTTLS' in self.mail_.capabilities: self.mail_.starttls() self.mail_.login(user, password) except socket.error, e: print "Error while connecting: {0}".format(e) exit(1) except imaplib2.IMAP4.error, e: print "Error while connecting: {0}".format(e) exit(1) def __del__(self): if self.mail_ != None: self.mail_.logout() def addMessage(self,message): folder=self.folder_.replace('.',"/") try: ret=self.mail_.append(folder, "", None, str(message)) except socket.error, e: print "Error while appending: {0}".format(e) exit(1) except imaplib2.IMAP4.error, e: print "Error while appending: {0}".format(e) exit(1) if ret[0] != "OK": print "Error while creating message {0}".format(ret[1]) if "Folder doesn't exist" in ret[1][0]: if consolehelper.confirm("Folder doesn't exist. Do you want to create it?"): self.mail_.create(folder) self.addMessage(message) c = consolehelper.Colors() c.print_success("Done")