title: ‘[必须] 场景 4: 构建和分段我们的列表以发送"每周交易"活动’ weight: 74
在我们开始向客户大量发送电子邮件之前,我们如何确保我们在ESP中保持良好的声誉?保持良好的电子邮件声誉的最佳方式是确保我们的预期收件人实际打开他们的电子邮件。虽然ESP不公开他们用于评估发件人声誉的算法,但M<sup>3</sup>AAWG 发布了最佳通用做法。
为了评估我们的订阅者的参与率,我们可以修改SES事件处理 的现有解决方案。
与许多其他IT功能一样,发送电子邮件需要操作监督和持续管理。执行任何电子邮件传递时需要考虑的一个因素是通过事件处理进行声誉管理。应该配置SES以发出有关电子邮件活动的事件。SES可以生成许多事件,但两个高度关注的事件是退回(收件人的邮件服务器永久拒绝了电子邮件)和投诉(电子邮件成功传递给收件人,但收件人将电子邮件标记为垃圾邮件)。如果不响应这些事件,将会损害发送声誉。
下面的架构图显示了如何配置SES以将事件发送到SNS,然后路由到SQS,最后到Lambda进行处理。Lambda函数应该评估事件,对于退回和投诉,更新电子邮件地址源数据库并从将来的发送中删除有问题的地址。
此外,应该配置Lambda函数以利用SES帐户级别的抑制列表功能,自动抑制将来向此电子邮件地址发送。
除了跟踪退回和投诉之外,我们还可以跟踪参与度,将最后一次打开日期/点击日期事件保存到客户的数据库中。
任务:修改CloudFormation模板以跟踪参与度,将最后一次打开日期和点击日期保存到DynamoDB数据库中。我们应该将分区键设置为客户的电子邮件地址,值设置为last_engagement_date
。
我们将使用一个简化的CloudFormation模板来创建此练习所需的资源。从这里下载CloudFormation模板:link[here]{href=”/static/templates/lab_6_4_cfn_template.yaml” action=download}!
以下CloudFormation将创建一个SNS主题、一个SQS队列和一个占位符Lambda函数。它还将输出作为CloudFormation模板堆栈部署的一部分创建的SNS主题的ARN值,我们将其称为WeeklyDealsCampaignEventsTopicArn
。
::alert[请注意,Lambda函数代码未包含在模板中,因为我们将在后续步骤中自己编写。该资源将部署一个Python Lambda函数。我们可以更改资源部署为我们选择的语言。]{header="提示”}
Lambda函数将处理打开和点击的SES事件消息,并在DynamoDB表中更新每个收件人电子邮件的最后参与日期。
::alert[我们可以选择在yaml文件中更新Lambda函数,然后部署CloudFormation模板,或者首先部署模板并在之后编辑生成的Lambda函数。]{header="提示”}
::alert[如果我们在上一步中没有配置Lambda函数,我们可以通过转到AWS Lambda控制台 并相应地更改我们的代码来执行此操作。]
Travel Tips
组发送电子邮件,请配置TravelTipsConfigSet
以跟踪电子邮件打开和点击事件,并将它们发送到创建的SNS主题。
::alert[有关如何执行此操作的信息,请参阅实验室3.2
。]要测试该解决方案,请发送测试电子邮件。检查DynamoDB表以确保该电子邮件地址的最后参与日期已在DynamoDB表中更新。
如果成功,我们应该会在DynamoDB记录中看到类似以下的条目。
WeeklyDeals
活动,我们可以按如下方式调整参与标准:::alert[请记住,参与标准可能因行业、目标受众和我们发送的内容类型而有所不同。定期评估和调整我们的参与标准很重要,以确保我们向订阅者发送相关和有价值的内容。]