dev_mail #18
@ -22,3 +22,11 @@ openai:
|
|||||||
API_KEY:
|
API_KEY:
|
||||||
MODEL_NAME: gpt-3.5-turbo
|
MODEL_NAME: gpt-3.5-turbo
|
||||||
PROMPT: 你是一个有用的人工智能助理,你尽力确保回答的准确性,避免给出误导信息。
|
PROMPT: 你是一个有用的人工智能助理,你尽力确保回答的准确性,避免给出误导信息。
|
||||||
|
|
||||||
|
|
||||||
|
mail:
|
||||||
|
host:
|
||||||
|
port:
|
||||||
|
username:
|
||||||
|
from:
|
||||||
|
password:
|
||||||
|
@ -27,6 +27,7 @@ def create_app():
|
|||||||
app.config['OPENAI_API_KEY'] = conf['openai']['API_KEY']
|
app.config['OPENAI_API_KEY'] = conf['openai']['API_KEY']
|
||||||
app.config['OPENAI_MODEL_NAME'] = conf['openai']['MODEL_NAME']
|
app.config['OPENAI_MODEL_NAME'] = conf['openai']['MODEL_NAME']
|
||||||
app.config['OPENAI_PROMPT'] = conf['openai']['PROMPT']
|
app.config['OPENAI_PROMPT'] = conf['openai']['PROMPT']
|
||||||
|
app.config['mail'] = conf['mail']
|
||||||
|
|
||||||
db.init_app(app)
|
db.init_app(app)
|
||||||
login_manager = LoginManager()
|
login_manager = LoginManager()
|
||||||
|
25
project/smtp.py
Normal file
25
project/smtp.py
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
import smtplib
|
||||||
|
import logging
|
||||||
|
from email.mime.multipart import MIMEMultipart
|
||||||
|
from email.mime.text import MIMEText
|
||||||
|
from email.header import Header
|
||||||
|
from . import app
|
||||||
|
|
||||||
|
mail_config = app['mail']
|
||||||
|
logger = logging.getLogger('waitress')
|
||||||
|
|
||||||
|
|
||||||
|
def sendmail(to: str, subject: str, message: str):
|
||||||
|
if not (mail_config['username'] and mail_config['password']):
|
||||||
|
logger.error("smtp email account is not configured")
|
||||||
|
mail = MIMEText(message, "plain")
|
||||||
|
mail['Subject'] = Header(subject)
|
||||||
|
mail['From'] = Header(mail_config['from'])
|
||||||
|
mail['To'] = Header(to)
|
||||||
|
try:
|
||||||
|
smtp = smtplib.SMTP_SSL(mail_config['host'], int(mail_config['port']))
|
||||||
|
smtp.login(mail_config['username'], mail_config['password'])
|
||||||
|
smtp.sendmail(mail_config['username'], to, mail.as_string())
|
||||||
|
except Exception as e:
|
||||||
|
logger.error("sendmail error: %s", repr(e))
|
||||||
|
smtp.quit()
|
Reference in New Issue
Block a user