如何解决Amazon SES 向电子邮件列表中的收件人发送重复的电子邮件
- 当收到的电子邮件到达 s3 存储桶时触发
- Strips 表示它的 csv 附件的传入电子邮件
- 将原始 csv 保存到 s3 存储桶中的文件夹
- 对 csv 文件执行一些处理
- 将处理后的文件作为 csv 和 .xlsx 文件保存到 s3 存储桶中的另一个文件夹
- 向收件人列表发送电子邮件,并附上已处理的 .xlsx 文件。在我调试时,电子邮件列表被限制为 3 个电子邮件地址。该列表名为
customer_emails
我面临的问题是收件人收到重复的电子邮件。以前收到了 4 封电子邮件,但是自从将 Lambda 超时修改为 1'25" 后,我已将其减少到每个收件人 2 封电子邮件。
我无法确定这是由多次调用 Lambda 函数引起的,还是 SES 调用本身存在问题。
查看 Cloudwatch 日志中的“发送”指标表明每次给定调用仅发送 3 封电子邮件,这是预期的。请看截图。
代码摘录:
ses_client = boto3.client(
'ses',region_name='eu-west-1',aws_access_key_id=[REDACTED],aws_secret_access_key=[REDACTED]
)
message = MIMEMultipart()
message['Subject'] = 'Email for ' + str(today.strftime("%B %d,%Y"))
message['From'] = [REDACTED]
#message['Bcc'] = ','.join(customer_emails)
# MESSAGE BODY
part = MIMEText('Here is today's email! Enjoy!','html')
message.attach(part)
# ATTACHEMENT
#if attachment_string: # if bytestring available
# part = MIMEApplication(str.encode('attachment_string'))
#else: # if file provided
part = MIMEApplication(open('/tmp/filename{}.xlsx'.format(d2),'rb').read())
part.add_header('Content-disposition','attachment',filename='filename{}.xlsx'.format(d2))
message.attach(part)
response = ses_client.send_raw_email(
Source=message['From'],Destinations=customer_emails,RawMessage={
'Data': message.as_string()
}
)
如果有帮助,收到的电子邮件具有不同的消息 ID。例如:
<01020178e56d2519-f6373855-6099-4abb-bbea-76c8d3c662e8-000000@eu-west-1.amazonses.com>
<01020178e56c2977-122e40c3-16c3-4aaa-9e14-b551e81ceab2-000000@eu-west-1.amazonses.com>
任何指导都会有所帮助
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。