首页 > 解决方案 > Amazon SES 向电子邮件列表中的收件人发送重复的电子邮件

问题描述

我已经编写了一个成功的 Lambda 函数......

我面临的问题是收件人收到重复的电子邮件。之前收到了 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>

任何指导都会有所帮助

谢谢

标签: amazon-web-servicesemailaws-lambdaamazon-ses

解决方案


推荐阅读