gpt4 book ai didi

java - 检索 Gmail 收件箱中存在的关联邮件的算法

转载 作者:行者123 更新时间:2023-12-01 16:33:38 25 4
gpt4 key购买 nike

我想知道 Gmail 检索关联邮件所遵循的算法。

示例:我正在考虑两个人,汤姆和约翰。汤姆已开始与约翰对话。

注意:这些是 Tom 和 John 发送的邮件的一些表示

  (J-mail-1) : John's first mail.
(T-mail-1) : Tom's first mail.
(T-mail-2) : Tom's second mail.
(J-mail-2) : John's second mail.
(J-mail-3) : John's third mail.
  • Tom:从他的邮箱中向 John 发送一封邮件。(T-mail-1)
  • John:回复给 Tom 的邮件。(J-mail-1)
  • Tom:他再次向 Tom 发送了同一条线索。(T-mail-2)
  • 约翰:这次约翰,回复汤姆(J-mail-2)发送的第一封邮件
  • 约翰:约翰再次回复汤姆的第二封邮件。(J-mail-3)

现在,如果我们在 Tom 的 Gmail 收件箱中查看,我们可以发现 John 的第一封邮件的响应与 Tom 的第一封邮件和最后一封邮件关联或映射。

所以,我想知道服务器端使用什么算法来执行上述类型的操作。这是如何正确映射的。

上述场景的最终结果。(在 Tom 的收件箱中)

(T-mail-1) ::::(Associated/Mapped) ::::: (J-mail-1) and (J-mail-2)

(T-mail-2) :::: (Associated/Mapped) ::::: (J-mail-3)

谢谢

最佳答案

不确定 Google 到底做什么,但是...

RFC 2822(以及其他许多)定义了电子邮件。每封电子邮件都应该有一个消息 ID,在 Message-ID: header 中传递。当您回复电子邮件时,邮件客户端应该包含一个 In-Reply-To: header ,其中包含您回复的消息的消息 ID 值 (section 3.6.4) 。现在,在收件箱中,您查看每封电子邮件,检查其是否具有 In-Reply-To: header ,然后查找具有该 ID 的电子邮件。那将是它的父级。

一些迟钝的电子邮件客户支持系统可能会丢弃 In-reply-to: header 。作为第二个最佳猜测,您可以查看电子邮件的 Subject: header 并使用正则表达式来查看两封电子邮件是否可能来自同一对话:它们是否仅在“Re:”前缀上有所不同,他们可能在同一个对话中。计算“Re:”前缀并比较时间戳以找出对话顺序。

关于java - 检索 Gmail 收件箱中存在的关联邮件的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62004978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com