Хотя, стоит отметить: если они смотрят тему, они всё равно будут получать уведомления, даже если она установлена как «Скрытая».
Кажется, теперь можно использовать эндпоинт /t/ID_ТЕМЫ/notifications, чтобы установить уровень уведомлений для конкретного пользователя в определённой теме, если это кажется более удобным вариантом, чем консоль Rails?
Дополнительные детали
- Пользователь API должен быть администратором (то есть иметь глобальные права), чтобы иметь возможность изменять уровень уведомлений другого пользователя.
- URL эндпоинта:
siteurl/t/<topic_id>/notifications - Тип запроса:
POST - Параметры:
usernameилиexternal_idцелевого пользователя. Если пусто, будет изменён уровень уведомлений самого администратора для этой темы.notification_level: целочисленное значение, соответствующее уровнюmuted: 0,regular: 1,normal: 1, # алиас для regulartracking: 2,watching: 3,
Но для консоли Rails, как я понимаю, это будет выглядеть так: (не забудьте сделать резервную копию на всякий случай перед внесением изменений в Rails
)
TopicUser.where(topic_id: TOPIC_ID).update(notification_level: 1)
(1 — normal, 0 — mute)
Это изменит уровни для самой темы, но могут существовать уровни для категории и тегов, которые всё ещё могут влиять на то, кто получит уведомление о новой активности.
И небольшой запрос через Data Explorer для проверки уровней уведомлений пользователей в теме, если это будет полезно:
SELECT
topic_id,
user_id,
notification_level
FROM topic_users
WHERE topic_id = TOPIC_ID