Я создаю скрипт Python 3.7 для автоматической отправки около 700 электронных писем через SMTP-сервер моей компании.Вся отправка работает нормально, но я должен быть предупрежден о том, какие получатели открыли почту, чтобы я мог выделить их как действительные в моем списке.Может кто-нибудь с опытом в этом вопросе объяснить, как это работает?
Хотя есть некоторые вопросы, касающиеся опции заголовка «Disposition-Notification-To», ни один из них действительно не объясняет, как это работает.
- Кто несет ответственность за то, чтобы побудить читателя подтвердить чтение сообщения?
- Кто несет ответственность за отправку электронного письма обратно на мой адрес в случае, если читатель подтвердит запрос?
- Есть ли другие варианты для достижения этой цели?
Поскольку в каждом вопросе по этому вопросу было мало информации и / или использовались более старые версии Python, я намерен, с этим вопросом, собратьнадежный и обновленный источник информации по этому вопросу.
def build_message(address):
mail = EmailMessage()
mail['From'] = MY_EMAIL
mail['To'] = address
mail['Subject'] = "This is a TEST"
mail['Disposition-Notification-To'] = MY_EMAIL
mail.set_content('Hello this is a test')
image_cid = make_msgid(domain='xyz.com')
mail.add_alternative("""\
<html>
<body>
<p>This is a test.</p>
<img src="cid:{image_cid}">
</body>
</html>
""".format(image_cid=image_cid[1:-1]), subtype='html')
with io.open(attachment_path, 'rb') as img:
maintype, subtype = mimetypes.guess_type(img.name)[0].split('/')
mail.get_payload()[1].add_related(img.read(),
maintype=maintype,
subtype=subtype,
cid=image_cid)
return mail
Это моя функция построения сообщений, и результат отправляется через открытый сеанс SMTP (smtplib).Хотя заголовок «Disposition-Notification-To» размещен, ничего другого не происходит.
РЕДАКТИРОВАТЬ: почтовый интерфейс моей компании предлагает опцию «Уведомить о прочтении», поэтому я знаю, что мои учетные данные разрешено делать это (стандартные учетные записи GMAILне разрешать чтение уведомлений).
РЕДАКТИРОВАТЬ 2: Моя компания использует Postfix в качестве MTA.