将邮件列表转换为自托管的 Discourse

大家好!

我目前运营着多个基于 Mailman 的技术讨论邮件列表。

我一直在尝试使用 Discourse,并且非常喜欢它。我正在考虑从邮件列表迁移到 Discourse。

问题在于,我希望尽可能让订阅者无缝地完成从邮件列表到 Discourse 的转换。

为此,我想找到一种方法,将每个列表的订阅者邮箱添加到 Discourse 实例中,并让他们自动关注与该列表对应的主题,同时(初始状态下)处于“邮件列表模式”。

首次添加每位订阅者时,将其设置为“邮件列表模式”,关注他们订阅的主题,并屏蔽所有其他主题。当迁移新列表时,如果该邮箱地址已存在于用户数据库中,则将其设置为关注新主题,但“邮件列表模式”标志保持不变。

我是一名程序员(主要使用 RPG 和 Java),如果数据库结构清晰,编写一些代码并不是什么大问题。

我描述的内容对您来说是否合理?是否可行?

谢谢!

4 个赞

你好,David!欢迎加入。你描述的情况听起来太棒了!

我的建议是,你可以 启动一个 Discourse 实例 并尝试使用它,这样你就能在实践中了解它的功能。此外,这里已有多个主题几乎回答了你所有的疑问。搜索功能(:mag:)是你的好帮手。

为了让你快速上手,请注意:Discourse 中相当于邮件列表的概念是“分类”(Category)。分类可以配置为限制访问权限、允许通过电子邮件创建新主题等。此外,管理员还可以设置新用户的默认通知级别,让他们从一开始就能关注特定的分类。如果你的各个邮件列表中的成员差异很大且重叠很少,你可能需要考虑部署多个 Discourse 实例。

在用户界面中,你可能找不到直接导入用户的功能。虽然可以通过界面邀请用户,但如果你想直接导入用户而无需事先询问,可以查看相关的导入脚本。

如果你还想导入过去的对话内容,mbox 导入器 将是你的最佳助手。它可以导入 mbox 文件中每封邮件对应的帖子,并为文件中出现的每个电子邮件地址创建账户。由于 Mailman 归档文件本身就是 mbox 格式,你在这方面会非常顺利。

祝你玩得开心!

5 个赞