更改电子邮件主题行应开启新主题

当有人回复邮件并更改主题时,应开启一个新话题,而不是作为对原话题的回复。

例如,假设原话题的主题是“十二月议程”,有人通过邮件回复并将主题改为“新年派对策划”,那么系统应创建一个带有新主题的新话题。

当前的行为让收到新帖子邮件的用户感到特别困惑。在这种情况下,用户回复邮件并更改了主题,但系统向所有人发送邮件时,主题行却似乎被还原了。


我还有几项关于将邮件惯例转换为论坛惯例的请求(例如,去除“转发:”前缀)。

@sam@codinghorror,是否可以在实施前审查提案,以便在着手开发前获得反馈?例如,这能否成为默认行为?是否需要作为插件来实现?

以下是其他相关链接:

谢谢!

2 个赞

这目前是有意为之。您需要仔细查看邮件头,但回复链在那里有明确指示。

如果有人想开启一个新话题,他们应该发送一封新邮件。

2 个赞

你好 @codinghorror

请注意,这一常见用例已通过网页界面中的“作为关联主题回复”按钮处理:

当用户通过电子邮件回复并修改主题行时,他们几乎总是希望“作为关联主题回复”,而绝不希望 Discourse 覆盖他们的修改。

您是否也认同这一点?

无论如何,有些人希望 Discourse 将收到的邮件普遍视为电子邮件进行处理(并进行必要的转换),而不是作为论坛帖子处理。那么,对我们来说,推进此事的最佳方式是什么?能否将其设为管理员设置?制作一个插件?还是在 Docker 文件中应用补丁?

1 个赞

这听起来像是插件的范畴。

你描述的功能在我看来很有意义,但实现起来可能有些棘手,因为某些电子邮件客户端会不会篡改主题行(例如添加“回复:”前缀、截断内容等)?

3 个赞

只要电子邮件存在,人们就会继续这样做。

或许更简单的解决方案是在通知电子邮件中添加一个“作为关联主题回复”按钮,和/或提供指向该分类新建主题电子邮件地址的链接。

2 个赞

完全同意,这确实是最合理的做法。就我个人而言,如果我只是修改了一封自动邮件的主题行,我绝不会期望实现原帖作者所希望的功能。这并不是说这个建议不好,但它似乎不太符合主题。正如 Jonathan Shaw 所说,将其作为一个插件来实现确实很合理。

就我个人而言,如果我只是更改了自动邮件的主题行,我不会期待 OP 所希望的功能。

你说的“自动”是什么意思?当有人更改邮件主题(例如从"12 月会议议程”改为“会后社交活动”)时,他们实际上是在更改主题,而在 Discourse 中这相当于更改话题。对吗?

你期望发生什么?你是否会期望 Discourse 丢弃你的更改,并使用之前的主题/话题发送邮件通知?

至少,我希望 Discourse 能够拒绝该邮件,并提示“通过回复更改话题/主题是不允许的”。

也许一个更简单的解决方案是在通知邮件上添加一个“作为关联话题回复”按钮

我并不是在寻求新功能。我的担忧在于邮件处理功能与预期不符(例如,“回复”意外地变成了“回复全部”)。

是的,这正是我预期的情况。Discourse 并不是一个邮件列表(即使它的邮件列表模式也只是一个真正的邮件列表的拙劣仿制品),每封邮件只是对论坛上某个事件的单独通知。通知邮件中的标准文本也强调了这一点:“访问话题或回复此邮件以进行回应。”

顺便提一下,我相当确定 Mailman 2 和 3 都会发送带有新 Subject: 头的邮件,但会将这些邮件归档原始线程旁边。

Discourse 的一大优点在于(在我看来)几乎任何功能都可以通过插件进行修改。我敢打赌,这种效果很容易通过这种方式实现。

抱歉,我所说的“自动化”是指将线程自动转发为电子邮件。

老实说,我开始理解你的观点了。但我更多是从传统电子邮件的角度思考,比如有人可能会在转发邮件给其他人时,在主题行中缩写原本较长的邮件链(从而更改主题行),而这样做可能脱离了原始上下文。由于我不使用电子邮件功能,因此对其应有的行为以及当前实际行为有些不了解。此外,我也曾设想人们可能会在适用时为了制造梗(meme)而更改主题行。

感谢保持开放的心态。

有人在转发邮件时,会在主题行中缩写一长串邮件内容,却脱离了上下文。

不,只需执行以下任一操作:

看起来这封邮件的互动理应触发 Discourse 现有的“以链接话题形式回复”功能,对吧?

我敢打赌你可以写一个插件来实现这个功能。它只需要检查 Subject: 头是否足够不同,然后采取相应的操作。我从未编写过 Discourse 插件,所以可能低估了这项任务的难度。

我也没试过,但有人建议过,那我就试试看吧!

1 个赞

如果您已设置 https://meta.discourse.org/t/start-a-new-topic-via-email/62977,那么您只需拦截用户的邮件,检查“主题:”头部,添加“继续讨论……”的文本,或许移除“In-Reply-To:”头部(或其对应的名称),然后将其转发到相应类别的邮件地址即可。

是的,“通过电子邮件开始新主题”已设置完毕。判断一封邮件是回复还是新帖子的逻辑似乎在此处实现:

1 个赞