Значок за чтение темы?

Можно ли добавить значок, если пользователь прочитал конкретную тему/раздел форума? И не просто открыл тему, а провёл в ней около 5 минут, чтобы убедиться, что пользователь ознакомился с информацией?

Я думаю, это можно реализовать примерно так:

SELECT user_id, CURRENT_TIMESTAMP AS granted_at
FROM topic_users
WHERE topic_id = 281534
  AND total_msecs_viewed/60000 >= 5 -- минимальное количество просмотренных минут

Я протестировал и получил эту ошибку:

Ошибка: Нарушение контракта: Запрос обращается к posts, но не возвращает столбец 'post_id'

Я думаю, это потому, что вы отметили галочкой опцию «Запрос нацелен на сообщения». Если настроить это примерно так, всё должно работать нормально:

Ок, спасибо, ошибки больше нет.

Что вы рекомендуете в качестве триггера?

Думаю, это должно быть «Обновлять ежедневно». Ни один из других триггеров, вероятно, не отловит изменение статистики времени чтения в topic_users.

Хорошо, я сначала настроил это для теста.

Похоже, это происходит каждые 22 часа в отношении назначения значков.