Может, сталкивался уже кто-то?
Отправляю email:
from email.mime.application import MIMEApplication
from email.message import EmailMessage
from email.headerregistry import Address
import logging
import smtplib
import sys
def sendEmail(self, sender_email, sender_name, to_addr, to_name, subj, text, files) :
server = None
if ("USE_SSL" in self.settings and self.settings["USE_SSL"]) :
server = smtplib.SMTP_SSL('%s:%s' % (self.settings['SMTP'], self.settings['PORT']))
else :
server = smtplib.SMTP('%s:%s' % (self.settings['SMTP'], self.settings['PORT']))
server.set_debuglevel(2)
if (self.settings['WITH_AUTH']) :
server.login(self.settings['LOGIN'], self.settings['PASSWORD'])
logger.debug("MAIL = from: %s <%s>, To: %s <%s>" % (sender_name, sender_email, to_name, to_addr))
msg = EmailMessage()
msg['Subject'] = subj
msg['From'] = Address(display_name=sender_name, addr_spec=sender_email) if (sender_email.strip() != '') else Address(addr_spec=self.settings['EMAIL'])
msg['To'] = Address(display_name=to_name, addr_spec=to_addr)
#msg.set_type("text/html")
msg.add_alternative(text, subtype="html")
for f in files or []:
with open(f['filename'], "rb") as fil:
part = MIMEApplication(
fil.read(),
Name=f['name']
)
part['Content-Disposition'] = 'attachment; filename="%s"' % f['name']
msg.attach(part)
res = server.send_message(msg, from_addr=self.settings['SENDER_EMAIL'], to_addrs=to_addr)
server.quit()
Вызываю этот метод со всеми параметрами, в последнем передаю аттачменты в нужном формате. Письмо отправляется мне (для теста).
В веб-морде моей гугло почты я вижу аттачменты, в андроид-клиенте я вижу аттачменты, а вот в неправославном оутглюке - не вижу. Якобы их и нет совсем.
Это я как-то неправильно аттачменты шлю или это Микрософт виноват?