当用户在gmail中取消订阅电子邮件时,gmail似乎会向发件人发送一封带有以下内容的电子邮件:
`subject`: "unsubscribe"
`body`: "This message was automatically generated by Gmail."
`to`: u+(somesuperlongrandomstring)@domain.tld
`from`: (Email of user who unsubscribed)
同样,当用户取消订阅Apple Mail中的电子邮件时,Apple Mail似乎会向发件人发送一封带有以下内容的电子邮件:
`subject`: (blank)
`body`: Apple Mail sent this email to unsubscribe from the message "(Subject of email unsubscribed from)".
`to`: u+(somesuperlongrandomstring)@domain.tld
`from`: Email of user who unsubscribed
我们已经使用mailgun处理退订,但截至2022年3月28日,这些来自两家提供商的电子邮件现在都通过我们的电子邮件路由。
有人知道如何告诉gmail或苹果邮件不要发送这些电子邮件吗?它们是多余的,因为mailgun已经像您所期望的那样使用list-unsubscribe
标头处理取消订阅。
或者,有人知道如何设置Mailgun,这样这些信息就不会通过路由传递吗?
遗憾的是,Mailgun没有提供任何帮助。但通过查看他们的文档和这些电子邮件的标题,似乎可以使用他们的Routes完全隐藏电子邮件。
三条线索是:
- 电子邮件的格式总是u+(…(@domain.tld
- Gmail的退订总是以";取消订阅">
- Apple Mail退订邮件总是有标题:
X-Apple-Unsubscribe:true
因此,您可以使用custom route
创建一个路由来捕获和丢弃这些电子邮件,raw expression
设置为:
match_recipient("u+(.*)@domain.tld") and (match_header("X-Apple-Unsubscribe", "true") or match_header('subject', 'unsubscribe'))
Mailgun自己停止了这项工作,这很可悲,但至少他们的工具有一个解决方案!
编辑(2023年5月(:遗憾的是,雅虎似乎通过这些取消订阅的电子邮件发送,主题为空,没有标题来识别它们。Mailgun似乎也不允许在空字符串上进行模式匹配,所以你不能检查空主题。这样,最好的解决方案似乎是:
match_recipient("u+(.*)@domain.tld")
你应该清楚地确保你不会收到任何这种格式的合法电子邮件!