电子邮件线程

dan*_*els 4 sorting parsing email-threading

我正在帮助台应用程序中工作,我有一个独立的脚本来查询邮件服务器并解析它在那里找到的邮件.
我面临以下问题:我如何以可靠的方式弄明白邮件是什么邮件回复?
我可以在主题中添加一些内容,例如"[ticket:21312]"并查找该内容但是如果用户更改了主题该怎么办?还有另外一种方法吗?我可以通过设置自定义邮件标题来查找,或者在用户回复的邮件服务器之间不保留标题吗?当我从我的应用程序向非现有用户或配额已满的用户发送消息时,他的服务器以通常的标准消息回复"邮件守护程序在....不能......"然后主题也将被修改,我不能正确地将消息作为对现有邮件的回复.

gmail是如何做到的?在几乎所有情况下,消息都完美地排序.

jsp*_*cal 7

在帮助台电子邮件管道中有3种基本方法:

a)在主题中包含id(在实践中工作正常)

b)在身体某处有身份证

c)使用带有id的自动生成的电子邮件别名,例如"case-76236781980893@helpdesk.mycompany.com".这可以很容易地通过procmail或脚本来处理id来处理.

gmail可能会使用主题的组合,In-Reply-To标题(可能没有定义)(也可能是引用和原始消息ID标题),以及各种启发式方法,它们工作得非常好,但当然不一定是防弹的,实施起来稍微复杂一些.或许像nestscape的原始线程算法.虽然有些人报告说gmail没有使用In-Reply-To标头并且主要依赖于主题(如本文所述).

  • 除了选项C:如果您的邮件服务器支持,您还可以使用加号.例如:`case + 76236781980893 @ helpdesk.mycompany.com`被送到`case @ helpdesk.mycompany.com`并可以从那里解析. (3认同)