artur
(Artur Lobanov)
2022 年4 月 27 日 12:38
1
我们的论坛服务于一个庞大的、不同群体组成的社区,这些群体之间不经常互动,但有时需要共享信息。
问题是,如果有人通过电子邮件转发一封邮件,从一个类别转发到另一个类别,那么邮件就会出现在原始主题中,而不是转发邮件所在的类别。
详细信息:
运行的是 2.9.0.beta1
我们的实例启用了电子邮件进入和邮件回复功能
每个类别都分配了一个电子邮件,格式为 discourse+CATEGORY@...
重现步骤:
收到类别 A 中新帖子的电子邮件通知
使用类别 B 的电子邮件 discourse+CAT-B@... 将收到的电子邮件转发到类别 B
转发的邮件出现在类别 A 的原始主题中
问题:如何确保转发的邮件出现在正确的类别 B 中?(无需修改任何邮件头!)
2 个赞
Jagster
(Jakke Lehtonen)
2022 年4 月 27 日 14:16
2
Artur L:
转发的消息最终会出现在 B 类别的原始主题中
您的意思是它最终会出现在 A 类别的原始主题 中?
我再次在什么都不知道的情况下回答,很快就会有人来告诉我事情的真相——但据我所知,它应该会那样,回复也不会变成新主题,只是更改电子邮件。
artur
(Artur Lobanov)
2022 年4 月 27 日 14:47
3
好的,谢谢——已修复!
澄清一下:此人不是通过“回复至”(reply-to)回复邮件,而是手动将“收件人”(to:)地址设置为 discourse+cat-B@ 邮箱来转发邮件。
我似乎无法重现此问题。到目前为止,我的步骤如下:
设置 CategoryA 和 CategoryB,并为它们分配邮件地址(categorya@[MyTestSite] 和 categoryb@[MyTestSite])
将 test_user 设置为这两个类别的“Watching”
将 email time window mins 设置为 1 分钟(可选,但可以加快速度)
管理员在 CategoryA 中发布主题
Test_user 收到 CategoryA 中新主题的通知邮件,并将其连同消息转发到 CategoryB
在 CategoryB 中创建新主题(标题非常丑陋 - Fwd: [JammyDodger's Test Site] [categorya] Topic for Category A),但只包含添加的消息,而不包含预期的转发信息)
我似乎无法复制将邮件转发到某个类别,结果却成为现有主题的回复的问题?有什么我可以尝试的其他方法吗?
2 个赞
artur
(Artur Lobanov)
2022 年4 月 29 日 10:20
5
谢谢你的尝试!
这与电子邮件客户端有关吗?我曾“责怪”Discourse根据“in-reply-to”字段而不是“to”字段对消息进行分组。
Moin
2022 年4 月 29 日 10:47
8
4 个赞
Nice spot @Moin
Loïc Dachary:
Here is how to reproduce the behavior on discourse 2.7.9:
Create category A with mail a@example.com and category B with mail b@example.com
Post a message in category A
Reply via email and change the To: so that it is b@example.com
The message ends up in category A, as a reply to the original message, instead of category B
This is presumably because the mail headers have information that allow discourse to know this mail was sent as a reply from the original message. So it has to make a choice: should this message be sent to:
I’ve just tried repro-ing this as well (a key difference seemed to be pressing ‘Reply’ and then manually changing the To address, rather than Forwarding), but mine ended up as a new topic in Category B again. Perhaps this does make it client specific? @artur Which are you using?
1 个赞
artur
(Artur Lobanov)
2022 年4 月 29 日 13:20
10
我刚用我的Gmail试了一下,但邮件仍然被归到了原始类别。
奇怪——我很惊讶它对你有效!
你能检查一下转发邮件的邮件头吗?
我看到例如“References”包含原始主题ID——这会不会比“to:”字段优先级更高?
artur
(Artur Lobanov)
2022 年4 月 30 日 08:44
11
谢谢链接!
情况似乎类似,只是在我的例子中,这是关于转发邮件而不是回复。因此,我仍然不理解这种行为。
我一直在尝试回复,然后又想出别的方法来尝试。 但到目前为止,我还没有成功复制您的问题。一些可能相关的事情——我的测试站点设置的是 mail-receiver ,而不是 POP3,您是在转发第一个帖子/OP 还是回复?
artur
(Artur Lobanov)
2022 年5 月 2 日 07:56
14
您好 @JammyDodger ,我刚意识到我的大多数类别都被历史性地设置为“类别镜像邮件列表”。您能否在启用此选项时尝试重现此问题?我刚在我的测试实例上禁用了它,似乎解决了奇怪的行为。
1 个赞
我已经启用了“Category mirrors a mailing list”来测试 Category A 和 Category B,现在可以重现该问题了。
设置 CategoryA 和 CategoryB,并为它们分配邮件地址(categorya@[MyTestSite] 和 categoryb@[MyTestSite])
为每个类别设置 Category mirrors a mailing list
将 test_user 设置为两个类别的 Watching
将 email time window mins 设置为 1 分钟(可选,但可以加快速度)
管理员向 CategoryA 发布主题
Test_user 收到 CategoryA 中新主题的通知邮件,并将其转发给 CategoryB
转发显示为对 Category A 中原始主题的回复
我对邮件列表不太了解,这会是一个 bug 还是设置冲突?
@dachary ,这听起来也能帮助你解决问题吗?
artur
(Artur Lobanov)
2022 年5 月 2 日 09:49
16
谢谢检查!
嗯,鉴于我重新阅读了邮件列表镜像的功能 ,我想这并不是一个 bug,而是有意为之:
通常 find_related_post_with_key 在站点设置中是启用的。不建议为整个站点禁用它,因为它允许基于电子邮件地址的用户冒充。发送到邮件列表的入站电子邮件始终使用邮件的 Message-ID 来查找相关帖子,并忽略该站点设置的值。
我主要保留该选项是因为另一点:
通常 Discourse 希望入站电子邮件包含格式化为 Markdown 的文本。邮件列表用户通常不知道这个要求,因此 Discourse 不会解释纯文本电子邮件中的任何 Markdown(除了用三个反引号括起来的代码块)或 HTML,而是以原始格式将其发布。
这对于那些不了解 markdown 的人来说是说得通的
3 个赞
Artur L:
谢谢检查!
很荣幸。 我已将此主题移至 Support
现在您对设置如何协同工作有了更多的了解,您能大致了解您希望它如何工作吗?
2 个赞
artur
(Artur Lobanov)
2022 年5 月 4 日 16:55
18
我认为,对于纯邮件列表镜像站点来说,它能正确完成工作。
我将看看用户如何处理 Markdown - 他们肯定不知道这是预期的!
在我禁用邮件列表镜像时出现的一个问题是,对于代表某些用户发送的自动生成消息,会出现 Discourse::InvalidAccess 错误。拒绝消息显示:
您的帐户无权在该类别中发布新主题。
尽管之前同一用户也能正常工作。所以我想镜像选项禁用了某种保护机制。
system
(system)
关闭
2022 年6 月 3 日 16:55
19
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.