| Resumo | Gerenciar automaticamente a filiação a grupos | |
| Link do Repositório | https://github.com/communiteq/discourse-dynamic-groups | |
| Guia de Instalação | Como instalar plugins no Discourse |
Recursos
Comunidades Discourse frequentemente precisam automatizar a filiação a grupos com base em condições, como posse de distintivos ou filiação a outros grupos.
Casos de uso comuns incluem:
-
Usuários que não estão no grupo ‘assinantes’
-
Usuários que não estão banidos de postar em Marketplace
-
Usuários no NL0 ou NL1, mas não no NL2
-
Usuários que concluíram o tutorial para novos usuários ou são membros há mais de um ano
-
Usuários que pertencem a cliente_1, cliente_2 ou cliente_3 e não são estagiários
Anteriormente, resolver isso exigia scripts personalizados que sincronizavam os grupos periodicamente. O plugin Dynamic Groups elimina essa necessidade.
Este plugin introduz um campo de expressão booleana nas configurações do grupo, permitindo que administradores definam regras que determinam dinamicamente a filiação ao grupo.
Exemplos:
-
usuários que não estão no grupo ‘assinantes’
trust_level_0 AND NOT subscribers -
usuários que não estão banidos de postar em Marketplace
trust_level_2 AND NOT banned_users -
usuários que estão no NL0 ou NL1, mas não no NL2
trust_level_0 AND NOT trust_level_2 -
usuários que concluíram o tutorial para novos usuários ou são membros há mais de um ano
badge:certified OR badge:anniversary -
usuários que pertencem ao cliente 1, 2 ou 3 e não são estagiários
(client_1 OR client_2 OR client_3) AND NOT interns
Configuração
Depois que o plugin for instalado e habilitado, uma nova aba aparecerá na interface de administração do grupo:
Ao inserir ou atualizar a expressão booleana, o sistema levará alguns momentos para popular o grupo com os usuários correspondentes. A partir desse momento, a filiação ao grupo será atualizada automaticamente conforme o status do usuário mudar.
Importante:
Quando uma regra é definida, o grupo é marcado como automático, desabilitando alterações manuais de membros. Para reverter o grupo para gerenciamento manual, basta limpar o campo de expressão. Os membros existentes permanecerão, e você recuperará o controle manual.
