Does anyone know a safe way to set the notification levels for all users on a topic to a single value? I’m guessing that it would be something in the Rails console.
I want to set all the users on a topic to “Mute” or “Normal” instead of “Watching” or “Tracking.”
The goal is to reduce activity on a big topic in a complex moderation situation.
This situation is complex and I don’t want a visual indication that triggers a public discussion about it that might take up hours of moderation time. (I’m already completely overwhelmed.) The ideal outcome is that people just aren’t reminded that the topic exists.
I would unlist the topic. Then it is hidden from the forum so probably most users won’t see it there anymore. But when they have a link to that topic (e.g., because they received a notification), they can still open the topic.
Though, just to note, if they’re Watching it then they’d still get notifications when it’s Unlisted.
I think you can now use the /t/TOPIC_ID/notifications endpoint to set the notification level for a user on a specific topic, if that’s a more appealing choice than the rails console?
Extra details
The API user should be an admin(so they should have global scope) to be able to change another user’s notification level.
Endpoint URL: siteurl/t/<topic_id>/notifications
Request type: POST
Parameters:
username or external_id of the target user. If empty, the admin’s own notifcation level for the topic will be changed.
notification_level: integer value corresponding to the level
muted: 0,
regular: 1,
normal: 1, # alias for regular
tracking: 2,
watching: 3,
But for the rails console I think it would be this: (remember to take a backup just in case before trying to change things in rails )