bome
(Florian)
1
你好,这算是对此讨论的一个补充:
在我们的 Discourse 论坛(v2.6.5)中,我们鼓励通过电子邮件发帖。但不幸的是,我们遇到了多个案例,其中传入的电子邮件在中间被截断,或直接因 Email::Receiver::NoBodyDetectedError 被拒绝。这些问题背后有多种原因。例如:
- 看似无害的帖子内容分隔方式会导致论坛丢弃剩余部分
- 签名检测器似乎是基于电子邮件的 ASCII 版本进行操作的。我们曾遇到一种情况:HTML 邮件以空的
<b/> 标签开头。邮件客户端将其转换为 ASCII 版本中的 **,随后该标记被“检测”为签名的开始。
改善现状的可能方法:
- 在将帖子添加到论坛之前不要截断签名:保留包含完整签名的帖子内容以供编辑。这样,如果被错误删除的部分可以通过编辑帖子恢复。
- 让签名检测更加智能(如何实现?我也不确定……)
- 让签名检测器使用 HTML 版本
- 使签名分隔符可配置
- 允许在论坛设置中完全关闭签名移除功能
感谢您的考虑,这将对我们有很大帮助。
我们正在优化邮件解析逻辑,但在此期间,能否请您尝试禁用“trim incoming emails”站点设置?
1 个赞
bome
(Florian)
4
嗨 @zogstrip,非常感谢!我错过了那个选项。
它现在能正常工作,不会拒绝或截断邮件。现在显示一个可点击的 ...,点击即可查看完整帖子。我也可以手动编辑帖子来去掉那个 ...。
如果你能解决我们之前遇到的签名检测器问题,那就更好了。谢谢!