User Group Membership Management Through Badges

We recently added the update_user_group_membership_via_badge automation.

This were long standing requests at: (including one from yours truly)

What does it do?

This feature allows you to automate user group membership based on their badges. It provides you with the ability to add users to a group if they have a specific badge and remove them if they don’t. You can also choose to update the user’s title and flair based on their group membership.

How is it configured?

The feature is configured through a script in Discourse Automation. Here are the fields you need to set up:

  • badge: The badge that will be used to manage group membership. This field is required.

  • group: The group that will be managed through this feature. This field is required and automatic groups are ignored.

  • update_user_title_and_flair: A boolean field that determines whether to update the user’s title and flair based on their group membership.

  • remove_members_without_badge: A boolean field that determines whether to remove users from the group if they don’t have the specified badge.

The script can be triggered either on a recurring basis or when the user first logs in.

Use Cases

  1. Gamification: You can use this feature to create a gamified experience in your community. For example, you can create a badge for users who complete a certain task, and then automatically add them to a group when they earn the badge. This group could have special privileges or access to certain categories, rewarding users for their engagement.

  2. Access Control: If you have categories that should only be accessible to users with certain badges, you can use this feature to automate the process. Users who earn the badge will be added to the group, and thus gain access to the category.

  3. Community Recognition: You can use this feature to recognize users who have earned certain badges by giving them a special title and flair. This can help encourage other users to engage more in the community in order to earn the badges and recognition.

Special thanks to @selase for building this!

Enjoy!

25 Likes

Woah. This introduces a lot of possibilities combined with my (still-very-hacky) bridge with Fedora’s separate badges.fedoraproject.org. Really cool!

4 Likes

Is it feasible to utilize this script when a predetermined number of badges has been acquired?

The use case revolves around a gamification framework that incorporates an internal ‘reputation’ system, which tallies and rewards best and specific contributions.

1 Like