finished ##177
This commit is contained in:
parent
89ad67de39
commit
80fbe2b759
|
@ -10,7 +10,8 @@ default = {
|
||||||
'port': 0,
|
'port': 0,
|
||||||
'user': '',
|
'user': '',
|
||||||
'passwd': '',
|
'passwd': '',
|
||||||
'email': ''
|
'email': '',
|
||||||
|
'crypt': 'STARTTLS'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -61,6 +62,9 @@ class ConifgParser():
|
||||||
if 'email' not in self.config['Mail']:
|
if 'email' not in self.config['Mail']:
|
||||||
self.config['Mail']['email'] = default['Mail']['email']
|
self.config['Mail']['email'] = default['Mail']['email']
|
||||||
LOGGER.info("No Config for email in Mail found. Set it to default")
|
LOGGER.info("No Config for email in Mail found. Set it to default")
|
||||||
|
if 'crypt' not in self.config['Mail']:
|
||||||
|
self.config['Mail']['crypt'] = default['Mail']['crypt']
|
||||||
|
LOGGER.info("No Config for crypt in Mail found. Set it to default")
|
||||||
self.mail = self.config['Mail']
|
self.mail = self.config['Mail']
|
||||||
LOGGER.info('Set Mailconfig: {}'.format(self.mail))
|
LOGGER.info('Set Mailconfig: {}'.format(self.mail))
|
||||||
|
|
||||||
|
|
|
@ -3,24 +3,38 @@ from datetime import datetime
|
||||||
from email.mime.multipart import MIMEMultipart
|
from email.mime.multipart import MIMEMultipart
|
||||||
from email.mime.text import MIMEText
|
from email.mime.text import MIMEText
|
||||||
from email.header import Header
|
from email.header import Header
|
||||||
from . import LOGGER
|
from geruecht import getLogger
|
||||||
|
|
||||||
|
LOGGER = getLogger('E-MailController')
|
||||||
|
|
||||||
class EmailController():
|
class EmailController():
|
||||||
|
|
||||||
def __init__(self, smtpServer, user, passwd, port = 587, email = ""):
|
def __init__(self, smtpServer, user, passwd, crypt, port=587, email=""):
|
||||||
self.smtpServer = smtpServer
|
self.smtpServer = smtpServer
|
||||||
self.port = port
|
self.port = port
|
||||||
self.user = user
|
self.user = user
|
||||||
self.passwd = passwd
|
self.passwd = passwd
|
||||||
|
self.crypt = crypt
|
||||||
if email:
|
if email:
|
||||||
self.email = email
|
self.email = email
|
||||||
else:
|
else:
|
||||||
self.email = user
|
self.email = user
|
||||||
|
LOGGER.debug('Init EmailController with smtpServer={}, port={}, user={}, crypt={}, email={}'.format(smtpServer, user, port, crypt, self.email))
|
||||||
|
|
||||||
def __connect__(self):
|
def __connect__(self):
|
||||||
|
LOGGER.info('Connect to E-Mail-Server')
|
||||||
|
if self.crypt == 'SSL':
|
||||||
|
self.smtp = smtplib.SMTP_SSL(self.smtpServer, self.port)
|
||||||
|
log = self.smtp.ehlo()
|
||||||
|
LOGGER.debug(log)
|
||||||
|
if self.crypt == 'STARTTLS':
|
||||||
self.smtp = smtplib.SMTP(self.smtpServer, self.port)
|
self.smtp = smtplib.SMTP(self.smtpServer, self.port)
|
||||||
self.smtp.starttls()
|
log = self.smtp.ehlo()
|
||||||
self.smtp.login(self.user, self.passwd)
|
LOGGER.debug(log)
|
||||||
|
log = self.smtp.starttls()
|
||||||
|
LOGGER.debug(log)
|
||||||
|
log = self.smtp.login(self.user, self.passwd)
|
||||||
|
LOGGER.debug(log)
|
||||||
|
|
||||||
def sendMail(self, user):
|
def sendMail(self, user):
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -10,7 +10,7 @@ from geruecht.exceptions import UsernameExistLDAP, UsernameExistDB, DatabaseExec
|
||||||
|
|
||||||
db = dc.DatabaseController()
|
db = dc.DatabaseController()
|
||||||
ldap = lc.LDAPController(ldapConfig['dn'])
|
ldap = lc.LDAPController(ldapConfig['dn'])
|
||||||
emailController = ec.EmailController(mailConfig['URL'], mailConfig['user'], mailConfig['passwd'], mailConfig['port'], mailConfig['email'])
|
emailController = ec.EmailController(mailConfig['URL'], mailConfig['user'], mailConfig['passwd'], mailConfig['crypt'], mailConfig['port'], mailConfig['email'])
|
||||||
|
|
||||||
class UserController(metaclass=Singleton):
|
class UserController(metaclass=Singleton):
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue