为被限制的用户重新开启摘要功能

我们有一个实例,对某些用户来说,除非发生非常重要的事情,否则他们很少使用。在 x 天(在管理员界面中设置,默认为 180 天)后,他们的电子邮件摘要将被禁止。但是,当发生十年一次的事件时,他们会错过突然对他们重要的重要讨论。

我们不想直接向他们发送电子邮件。在这种用例中,是否有办法通过管理员为他们重新启用摘要?可以全部重新启用,或者最好是选择性地重新启用,按他们所属的组进行过滤。甚至可以单独启用。

如果没有这样的方法,那就太好了!

所以,当有一个新主题(例如,关于活动)在类别 x 中,并且它们属于组 y,则发送电子邮件摘要?

是的,大致就是这样。目前我只能想到一个变通的方法,那就是模拟用户并重新激活他们。但这远非理想。

在我们的用例中,我们的社区发生了一些有争议的事情。我们有很多沉默的成员,他们会发现相关信息很有用,以便他们自己做出现实世界的决定。

作为管理员,我们不希望通过直接发送消息来搅浑水(因为这会激怒主角)。但重新接收摘要将是让他们重新参与对话的绝佳方式。最理想的情况是,我作为管理员可以选择群组中的所有成员,并重置他们所有的摘要触发器。

1 个赞

您可以在 Rails 中执行此操作,类似以下代码:

group=Group.find_by_name('mygroup')
group_users=GroupUser.where(group_id: group.id)
group_users.each do |gu|
   u = User.find(gu.user_id)
   op=UserOption.where(user_id: u.id)
   op.email_digests = true
   op.digest_after_minutes = ???
   op.save
end

以上代码由人工生成,可能存在幻觉。请自行承担使用风险。

5 个赞