与许多Web应用程序一样,我们使用Postmark发送有关服务器端事件的所有通知。我们的许多事件都通过简单而合乎逻辑的方式进行分组和关联(请考虑对同一问题进行多次答复,例如在GitHub中)。
现在,针对这些相关事件发送的每封电子邮件都是其自己的电子邮件线程。我的问题是:如何发送这些电子邮件,以便将相关电子邮件发送到同一线程?
我不确定这是否属于邮戳级别(例如包含以前的邮件ID)还是我对SMTP所做的事情(例如我应该更好地格式化主题并内联先前的回复),所以这就是为什么寻求指导。此外,每一次有关“邮戳电子邮件线程”的Google搜索都返回对Ruby Gem线程安全性的担忧。
有关更多信息,该应用程序是用PHP编写的,现在我们是znarkus / postmark-php用于发送电子邮件,而jjaffeux / postmark-inbound-php用于解析入站电子邮件。但是,如果他们对我的任务有帮助,我非常愿意添加任何额外的软件包。
提前致谢!
您可以添加一些带有Message-ID
大多数客户端用来将回复链接在一起的原始邮件的SMTP标头。如果原始电子邮件具有您发送的新电子邮件的Message-ID
标题,<123@mail.example.com>
请保持主题行不变,并添加以下标题:
In-Reply-To: <123@mail.example.com>
References: <123@mail.example.com>
这应该通知客户这两封电子邮件应该是线程化的。
编辑:
这些标头的值应该是SMTP Message-ID标头,这有点令人困惑,因为它是与邮戳MessageID值(邮件的UUID)不同的概念。
该SMTP Message-ID
头总是在形式的电子邮件地址,因为这是它应该如何形成,但不具有从地址有关。