Я хотел бы предоставлять бонусы пользователям Discourse, которые периодически проявляют активность. Например, я хочу давать бонусы только тем пользователям, которые приглашают как минимум одного нового пользователя в месяц.
Я мог бы настроить это, объявив, что все пользователи с бейджем «Промоутер» получают такие бонусы. Однако бейдж «Промоутер» присваивается после приглашения всего одного посетителя, и пользователь сохраняет его навсегда.
Существует ли способ настроить автоматическое истечение срока действия бейджа, чтобы через месяц бейдж «Промоутер» (или любой другой) снимался с пользователя, заставляя его снова заслужить его?
Или есть ли более подходящий подход к решению моей задачи (требование ежемесячной активности от пользователей)?
@codinghorror, значит, такой функции пока нет?
Существует ли какой-либо обходной путь для реализации этого, даже если вручную? Основная проблема, которую я сейчас вижу, заключается в том, что я не могу увидеть даже информацию о том, когда пользователю была выдана значок. Доступна ли эта информация где-либо, даже через API?
Думаю, можно использовать Discourse Data Explorer, чтобы воспроизводить SQL-запросы и добавлять ограничения по времени для создания новых «исчезающих» бейджей. Я не проверял категорию #plugin:data-explorer или коллекцию (Superseded) What cool data explorer queries have you come up with?, есть ли там уже такие запросы. Было бы очень здорово, если бы вы поделились результатами в этой теме!
Под тремя строками рядом с вашим аватаром нажмите «Значки». У каждого значка есть число… показывающее, у скольких пользователей он есть. Нажмите на это число. Затем будет показан список всех пользователей с этим значком и дата, когда они его получили.
Но зачем вообще нужны значки с истекающим сроком действия? Пользователи, на мой взгляд, будут раздражены.
Это действительно частый запрос в пространстве комьюнити. Речь идет о бейджах, привязанных к более недавним или текущим действиям пользователей, в отличие от исторического награждения бейджами, которые остаются у вас навсегда, независимо от того, активны ли вы в комьюнити или нет. Это особенно актуально для комьюнити, которые существуют уже несколько лет. Facebook делает это с бейджем «Топ-фанат», который не является статичным и может быть утерян, если вы перестанете участвовать на странице.