Исправлено формирование адреса отправителя в MIME
- MAIL_USERNAME всегда используется как email-адрес - MAIL_DEFAULT_SENDER используется только как отображаемое имя - Исправляет ошибку SMTPSenderRefused при указании только имени отправителя
This commit is contained in:
@@ -17,11 +17,15 @@ OUTLOOK_CONTENT_ID_PROP = "http://schemas.microsoft.com/mapi/proptag/0x3712001F"
|
||||
def _build_mime_message(to_address, subject, html_body, sender_name, attachments):
|
||||
"""Собирает MIME-сообщение с inline-вложениями."""
|
||||
config = current_app.config
|
||||
sender = config.get("MAIL_DEFAULT_SENDER") or config.get("MAIL_USERNAME", "")
|
||||
sender_address = config.get("MAIL_USERNAME", "")
|
||||
if not sender_address:
|
||||
raise ValueError("MAIL_USERNAME должен быть указан в конфигурации")
|
||||
# Имя отправителя — отдельно от email-адреса
|
||||
display_name = sender_name or config.get("MAIL_DEFAULT_SENDER") or ""
|
||||
|
||||
msg = MIMEMultipart("related")
|
||||
msg["Subject"] = subject
|
||||
msg["From"] = formataddr((sender_name, sender))
|
||||
msg["From"] = formataddr((display_name, sender_address))
|
||||
msg["To"] = to_address
|
||||
msg["Date"] = formatdate(localtime=True)
|
||||
msg.attach(MIMEText(html_body, "html", "utf-8"))
|
||||
|
||||
Reference in New Issue
Block a user