如何更改某个主题上所有用户的通知级别?

不过,请注意,如果他们正在观看,当视频设为“未公开”时,他们仍然会收到通知。

我认为您现在可以使用 /t/TOPIC_ID/notifications 端点来设置用户在特定帖子上的通知级别,如果这比 Rails 控制台更具吸引力的话?

额外详情
  • API 用户应该是管理员(因此他们应该具有全局范围),才能更改另一个用户的通知级别。
  • 端点 URL:siteurl/t/<topic_id>/notifications
  • 请求类型:POST
  • 参数:
    • 目标用户的 username 或 external_id。如果为空,将更改管理员自己帖子的通知级别。
    • notification_level:与级别对应的整数值
      • muted: 0,
      • regular: 1,
      • normal: 1, # regular 的别名
      • tracking: 2,
      • watching: 3,

但对于 Rails 控制台,我认为会是这样:(在尝试在 Rails 中更改内容之前,请务必先进行备份 :warning:)

TopicUser.where(topic_id: TOPIC_ID).update(notification_level: 1)

(1 是正常,0 是静音)

这将更改帖子级别的通知,但可能还有类别和标签级别的通知,这些通知仍会影响谁会收到新活动的通知。

还有一个数据浏览器查询,可以检查用户在某个帖子上的通知级别,如果这有用的话:

SELECT 
    topic_id,
    user_id,
    notification_level
FROM topic_users
WHERE topic_id = TOPIC_ID