通过创建事件通知规则,消息服务MNS可以将邮件推送产生的事件以消息的方式推送到指定的接收端。本文介绍邮件推送事件通知的背景信息、适用场景、事件类型以及消息格式。
背景信息

适用场景
- 异步获取邮件推送结果消息,再根据业务需求进行处理,例如重新发送。
- 批量发送邮件,根据邮件推送结果消息异步统计邮件发送结果。
- 监控邮件推送结果,例如大量邮件推送失败时,您可以第一时间收到通知。
- 邮件推送结果消息通过多种方式推送到不同的接收端,以进行不同处理,例如多个业务部门都关心这些数据。
- 如果用户A将邮件推送的权限授予用户B,用户A可以通过邮件推送通知了解用户B邮件推送的情况。
事件类型
邮件推送支持以下事件类型。
事件类型 | 描述 |
---|---|
Deliver:Click | 单击邮件中的链接。 |
Deliver:Open | 打开邮件。 |
Deliver:SendSuccessfully | 邮件推送成功。 |
Deliver:SendFailed | 邮件推送失败。 |
消息格式
消息格式如下所示:
- 发送成功示例
env_id=457323378&msg_id=77041400535408&account=test@example.com&from=test@example.com&rcpt=abc@example.net&recv_time=2017-04-14 11:44:47&end_time=2017-04-14 11:44:48&status=0&event=deliver®ion=cn-hangzhou&err_code=250&err_msg=250 Send Mail OK
- 发送失败示例
env_id=457323379&msg_id=77041400535409&account=test@example.com&from=test@example.com&rcpt=abc@example.net&recv_time=2017-04-14 11:44:48&end_time=2017-04-14 11:44:49&status=2&event=deliver®ion=cn-hangzhou&err_code=550&err_msg=550 No Such User
说明- 错误信息,请参见邮件推送常见退信代码及处理方法。
- 邮件推送时调用API错误,请参见SingleSendMail和BatchSendMail。
消息格式字段解释如下表所示。
字段 | 描述 |
---|---|
env_id | 系统内ID。用于反馈查询问题。 |
msg_id | 邮件原文中的Message-ID字段。 |
account | 发件人账户。 |
from | 发件人地址。 |
rcpt | 收件人地址。 |
recv_time | 邮件接收入队时间。 |
end_time | 邮件投递完成时间。 |
status | 投递完成结果状态。
取值说明如下:
|
event | 触发的事件。 |
region | 事件规则所在地域。 |
err_code | 投递完成时接收端的返回码。 |
err_msg | 投递完成时接收端的返回信息。 |