收到的电子邮件回复不共享同一主题

场景

我们有一个专门用于接收电子邮件的分类,邮箱地址是 here@example.org。当有人从该地址发送电子邮件时,回复会被捕获到此分类中。

然而,后续的回复似乎没有检测到它们属于同一个邮件线程,而是每次都创建一个带有单个帖子的新主题。

An example topic list

应该发生什么?

Discourse 应该检测到现有主题并创建回复,而不是创建新主题。

如何解决?

我还不确定如何解决这个问题,但我有兴趣帮助调试此问题,因为我们大量使用邮件接入功能,这使我们的工作变得困难,特别是当多个人参与对话时,他们可能会错过队友之前的回复,并向第三方提供可能相互矛盾或多余的信息。

1 个赞

哎呀,很抱歉您要处理这个问题。电子邮件真让人头疼!

这在您之前奏效过吗,还是您正在尝试但没有成功的新设置?您使用的是哪种邮件接收方法?POP3 还是 mail-receiver

您能更详细地解释一下您的设置和流程吗?我有点困惑。我不认为如果您回复的电子邮件不是来自 Discourse,您就能期望所有回复都与同一主题相关联。

我在我的社区论坛上以这种方式设置了一个类别,作为雅虎群组的替代品。人们可以写信给该类别的自定义收件邮箱地址,这会创建主题并分发给所有关注该类别的人(默认是所有人)。他们也可以直接在论坛上发起主题,这些主题也会被分发。任何通过电子邮件的回复都会与创建的主题相关联,也会被分发。

4 个赞

不,这个设置一直都是一样的。也许是因为我们以前没有进行过这么长的对话,所以我没有太注意到。

我使用的是 POP3。

这是电子邮件服务器设置的截图(我替换了域名和电子邮件,但保留了选项相同):

Screenshot of server settings

以下是一些相关的电子邮件设置(抱歉没有文本详情):

More server settings

forwarded_email_behaviour: create_replies

然而,如果 Discourse 收到了副本,它应该能够识别回复,因为它们带有 Message-IDReferencesIn-Reply-To 标头。此外,Subject 标头应该保持足够接近(主要是跨语言可能变化的“Re:”),那么在_大多数情况下_处理对现有主题的回复应该非常简单。我认为大多数电子邮件客户端都是这样做的?

我很想了解什么会阻止 Discourse 为它收到的_任何_电子邮件(不仅仅是它生成的电子邮件)实施适当的电子邮件线程。由于 email-in 是一项功能,应该有一种方法来确保适当的可用性。再说一次,我很乐意帮忙。我应该看哪里?

在我的情况下,分配给 Discourse 类别的电子邮件地址正在发送电子邮件,然后使用各种电子邮件地址的人们之间开始了一场对话。Discourse 接收到所有内容。尽管它没有生成这些标头,但它们是一致的并且相互关联的。

2 个赞

感谢您提供所有这些背景信息。

正如我在回复中所说……电子邮件很难处理。其他更有知识的人可以发表意见,但我个人建议不要对 Discourse 和电子邮件抱有太高期望。毕竟它是一个在线平台,而不是一个邮件列表。如果你期望一个与 Discourse 类别关联的电子邮件地址的少数参与者之间的电子邮件交换能像电子邮件客户端一样运行,你将会失望。

如果你想深入研究,你可以收集并查看受影响电子邮件中的信息,包括来自电子邮件客户端的信息,以及所使用的电子邮件客户端(Outlook 以出问题而臭名昭著),看看是否能从中发现一些线索。

2 个赞

我怀疑回复键(reply keys)出了什么问题。
我找到了一个很旧的帖子 https://meta.discourse.org/t/reply-own-mail-creates-new-topic/74519/2
也许您可以禁用“查找相关帖子键”(Find related post with key)来测试是否能改善情况。
Screenshot_20251206_000810_Firefox

2 个赞

所以,这在正确条件下确实可以工作。

我今天有机会亲自测试了一下:

  • 我正在我们欧盟数据中心进行维护
  • 我拔下并移动了一个供应商电路的电缆
  • 他们给我和我们的团队收件箱(这会创建一个群组收件箱主题)发邮件,告知电路已断开
  • 我回复了他们发送的邮件,并将我们的团队邮箱地址抄送了:
  • 我的回复进入了与他们原始邮件相同的主题

没有确切了解您的设置情况,很难说您那里出了什么问题。

3 个赞