Discourse 每日邮件摘要插件

:information_source: 摘要 将所有新帖子整合到每日或每周更新中发送
:hammer_and_wrench: 仓库链接 https://github.com/thoka/discourse-mail-daily-summary
:open_book: 安装指南 如何在 Discourse 中安装插件

功能

基于 discourse-mlm-summary 的分支,新增或修改的行为如下:

  • 在指定时间发送每日/每周摘要
  • 可选择发送摘要或完整帖子
  • 可选的诊断输出以支持配置和故障排除
  • 可为用户组强制启用每日摘要:mail_daily_summary_auto_enabled_groups
  • 可将每日摘要限定于特定类别(包括所有子类别):mail_daily_summary_enabled_categories
  • 上次运行时间将保存在 mail_daily_summary_last_run_at 中。如果已设置,则发送时间与 mail_daily_summary_last_run_at 之间的消息将被包含在摘要中;否则,将发送过去 24 小时/7 天内的更新。
  • 可选择为所有用户启用(支持退出)
  • 消息模板基于当前(2024-04-30)的摘要模板
  • 已添加取消订阅链接

配置

如果未设置 mail_daily_summary_at,则摘要将每小时发送给那些首次登录时间与当前时间相同的人。

如果设置了 mail_daily_summary_at,则所有消息将在达到配置时间后每天排队发送一次。

摘要将包含从 mail_daily_summary_last_run_at 开始的消息,最多追溯 14 天(以防止意外)。

注意

  • 此插件会忽略“禁用邮件列表模式”设置

待办事项

  • 添加仅通知已订阅类别的选项
  • 添加排除特定组的配置选项
  • 添加排除特定类别的配置选项
  • 添加通过邮件回复单个主题/帖子的功能
  • 添加测试规范

维护

该插件由 Communitec 使用。
:folded_hands: @RGJ 负责确保其与新版 Discourse 的兼容性。

8 个赞

很棒的工作!!!

您是否愿意使频率可配置?

例如,我想在周日晚上推送上周的内容。

1 个赞

似乎作为一个全局设置,这相当容易实现。
需要哪些选项(每日、每周、每月)?
如果为负数,则从末尾开始计算星期几/月份?

1 个赞

可以有很多方法来解决这个问题,对吧?

一个简单的开始是增加一个设置,询问它应该在每周的哪几天生效。

也许也可以选择每月的哪几周,但这会有点棘手,因为存在变数。

1 个赞

每封电子邮件是为每个用户创建的,还是会向所有用户发送一封电子邮件?如果电子邮件是单独发送的,那么发送电子邮件的时间和频率的设置最好是针对每个用户设置的(您提到的是全局设置——那将是默认设置)。

每个用户都会收到单独的邮件。
但是,与全局设置相比,为单独的计划进行簿记将是更多的工作。

2 个赞

现在可以进行每周摘要了。

3 个赞

非常有趣的插件!有一个关于……的问题

根据这个插件的设计方式,是否有可能获取“置顶新帖子”而不是“所有帖子”?作为对 Discourse 核心的这个功能请求的替代方案:Option to always receive Activity Summaries even when you've been on the forum

1 个赞

我最近才安装了这个插件,看起来它似乎能正常工作,因为它在下午的正确时间发送了摘要。但是,它只发送给了 56 人中的 22 人,然后下一次只发送给了 2 人,再下一次也只发送给了 2 人。

我们的论坛上刚超过 50 人,我实在弄不明白为什么它没有发送给所有人。发送成功的那些人是最近一天到 50 天内最后登录论坛的人,他们有零级和一级信任等级的混合。

抱歉,我已不再使用此插件,并且在不久的将来也无法抽出时间来帮助调试它。

您的截图似乎显示的是摘要电子邮件,而不是每日摘要。

此核心提交 更改了偏好属性的保存方式。
由于该更改,插件在偏好设置 - 电子邮件时会抛出错误。

我们已经修复了这个问题并开了一个 PR。您能合并它吗?

2 个赞

谢谢。已合并。

是否可以认为更新插件的用户也会更新 Discourse?如果不会,它会因此中断吗?

既然您似乎在使用该插件:当您停止使用它时,我们是否应该在进一步通知之前更新“未维护”状态?

1 个赞

我认为这是一个相当安全的假设。

我们有几位客户在使用它,所以——在另行通知之前——我们准备好维护它,是的 :+1:t3:
我已经删除了该标签。

2 个赞

添加了一些额外选项,更新了设置界面,并提交了 PR

  • 添加选项以使用摘要而非完整帖子(mail_daily_summary_min_excerpt_length,其作用方式与常规的 digest_min_excerpt_length 类似)
  • 添加选项以限制每个主题的帖子数量(mail_daily_summary_max_posts_per_topic
  • 添加选项以复用 /admin/email/preview-digest 功能来预览每日摘要(mail_daily_summary_preview_uses_daily_summary

感谢您进行维护并添加更多功能。

1 个赞