我已设置 Mailgun 域来跟踪我发送的电子邮件的打开和点击情况Laravel https://laravel.com/docs/5.7/mail#introduction app.
现在我想设置webhooks https://documentation.mailgun.com/en/latest/user_manual.html#webhooks收到这些事件的通知。
特别是,我很想知道事件类型(例如打开、单击、失败等)、主题、收件人电子邮件地址以及理想的消息正文(尽管不是必需的)。对于“点击”事件,我还想查看被点击的链接的 URL。
我看到哪些领域事件数据 https://documentation.mailgun.com/en/latest/api-events.html#event-structure通过 webhook 发送,与亚马逊SES https://docs.aws.amazon.com/ses/latest/DeveloperGuide/notification-contents.html, Mailgun 的 webhooks 可以not似乎包括电子邮件主题或正文。
Webhook 提供如下数据:
"message": {
"headers": {
"message-id": "[email protected] /cdn-cgi/l/email-protection"
}
}
所以在我看来,我需要以某种方式去我的应用程序中发送电子邮件的每个地方,并添加额外的功能来将电子邮件的详细信息以及唯一的 Mailgun 消息 ID https://stackoverflow.com/a/33955435/470749每条消息发送后立即记录。
然后,当接收 webhook 时,我会在自己的数据库中搜索消息 ID,并可以看到我存储的主题和正文。
这看起来是一个可怕的麻烦和糟糕的设计,特别是考虑到其他服务(例如 SES)会在 webhook 中为我提供电子邮件主题。
有没有更简单的方法让我知道which电子邮件被打开或单击(当我收到有关打开或单击事件的 Mailgun Webhook 时)?
(我是否误解了什么,或者我真的需要修改我的整个应用程序才能利用 Mailgun 中的开放跟踪功能吗?)