Знает ли кто-нибудь безопасный способ установить уровень уведомлений для всех пользователей по теме на одно значение? Я предполагаю, что это можно сделать в консоли Rails.
Я хочу установить для всех пользователей по теме значение «Отключить» или «Обычный» вместо «Слежение» или «Отслеживание».
Цель — снизить активность по большой теме в сложной ситуации модерации.
Ситуация сложная, и я не хочу визуального уведомления, которое спровоцирует публичное обсуждение этого вопроса, способное занять часы времени модерации. (Я уже полностью перегружен.) Идеальный исход — чтобы люди просто не напоминали себе о существовании этой темы.
Я бы снял тему с публикации. Тогда она будет скрыта с форума, и, вероятно, большинство пользователей больше не увидят её там. Однако если у них есть ссылка на эту тему (например, потому что они получили уведомление), они всё ещё смогут открыть её.
Хотя, стоит отметить: если они смотрят тему, они всё равно будут получать уведомления, даже если она установлена как «Скрытая».
Кажется, теперь можно использовать эндпоинт /t/ID_ТЕМЫ/notifications, чтобы установить уровень уведомлений для конкретного пользователя в определённой теме, если это кажется более удобным вариантом, чем консоль Rails?
Дополнительные детали
Пользователь API должен быть администратором (то есть иметь глобальные права), чтобы иметь возможность изменять уровень уведомлений другого пользователя.
URL эндпоинта: siteurl/t/<topic_id>/notifications
Тип запроса: POST
Параметры:
username или external_id целевого пользователя. Если пусто, будет изменён уровень уведомлений самого администратора для этой темы.
Но для консоли Rails, как я понимаю, это будет выглядеть так: (не забудьте сделать резервную копию на всякий случай перед внесением изменений в Rails )
Это изменит уровни для самой темы, но могут существовать уровни для категории и тегов, которые всё ещё могут влиять на то, кто получит уведомление о новой активности.
И небольшой запрос через Data Explorer для проверки уровней уведомлений пользователей в теме, если это будет полезно:
SELECT
topic_id,
user_id,
notification_level
FROM topic_users
WHERE topic_id = TOPIC_ID