자동 배지 만료

Discourse에서 주기적으로 꾸준히 활동하는 사용자에게 혜택을 제공하려고 합니다. 예를 들어, 한 달에 최소 1명의 신규 사용자를 초대하는 사용자에게만 혜택을 주고 싶습니다.

이를 위해 “Promoter” 배지를 보유한 모든 사용자에게 해당 혜택을 제공하도록 설정할 수 있습니다. 하지만 “Promoter” 배지는 사용자가 방문자를 단 한 명만 초대하면 획득할 수 있으며, 일단 획득하면 영구적으로 유지됩니다.

“Promoter”(또는 기타 배지)가 1개월 후 자동으로 만료되어 사용자의 배지가 제거되고, 다시 획득해야 하는 자동 배지 만료 설정이 가능한가요?

아니면 제가 시도하고 있는 것(사용자의 월별 활동 요구)에 대해 더 나은 접근 방식이 있을까요?

미리 감사드립니다.

정말 흥미로운 아이디어네요.

@codinghorror, 그러면 아직 그런 기능이 없다는 말씀이신가요? :slight_smile:
수동으로라도 구현할 수 있는 우회 방법이 있을까요? 제가 지금 가장 큰 문제라고 생각하는 것은 사용자가 배지를 받은 시점에 대한 정보조차 볼 수 없다는 점입니다. API를 통해서라도 이 정보가 어딘가에서 제공되고 있나요?

Discourse Data Explorer 을 사용하여 SQL 쿼리를 복제하고 시간 제약 조건을 추가하여 새로운 “만료” 배지를 만들 수 있을 것 같습니다. #plugin:data-explorer 카테고리나 (Superseded) What cool data explorer queries have you come up with? 컬렉션에서 이미 그런 쿼리가 있는지 확인하지는 않았습니다. 이 토픽에서 여러분이 만들어낸 쿼리를 공유해 주시면 정말 감사하겠습니다!

아바타 옆의 3줄 아이콘을 클릭한 다음 배지(Badges)를 선택하세요. 각 배지에는 해당 배지를 가진 사용자의 수가 표시됩니다. 표시된 숫자를 클릭하면, 배지를 획득한 각 사용자와 획득 날짜가 나열됩니다.

그런데 왜 만료되는 배지를 원하겠습니까? 제 생각에는 사용자들이 불만을 제기할 것입니다.

사실 커뮤니티 공간에서 이런 요청은 꽤 흔합니다. 사용자가 최근 또는 현재 수행한 행동에 따라 부여되는 배지와, 커뮤니티에서 더 이상 활동하지 않아도 영구적으로 유지되는 과거에 부여된 배지와의 차이입니다. 특히 수년간 운영되어 온 커뮤니티에서 이런 차이가 두드러집니다. Facebook은 페이지에 대한 참여가 줄어들면 사라질 수 있는 동적인 “Top Fan” 배지를 통해 이러한 방식을 적용하고 있습니다.

만약 사용자가 특정 배지를 수동으로 삭제한 경우, 해당 사용자가 필요한 작업을 수행하면 다시 그 배지를 획득할 수 있나요?

이를 위해, 여전히 기본 SQL 쿼리에 시간 요소를 내장한 새로운 배지를 생성하는 것이 좋다고 생각합니다.

쿼리에 도움이 필요하신 분은 #data-reporting에서 주제를 시작해 주세요. :+1: