Pontuação e medalhas das comunidades communities-scoring-and-badges

Visão geral overview

O recurso de pontuação e medalhas do AEM Communities oferece a capacidade de identificar e premiar membros da comunidade.

Os principais aspectos de pontuação e medalhas são:

Nota que a atribuição de medalhas é não ativado por padrão.

CAUTION
A estrutura de implementação visível no CRXDE Lite está sujeita a alterações assim que a interface do usuário estiver disponível.

Selos badges

As medalhas são colocadas sob o nome de um membro para indicar seu papel ou sua posição na comunidade. Os emblemas podem ser exibidos como uma imagem ou como um nome. Quando exibido como uma imagem, o nome é incluído como texto alternativo para acessibilidade.

Por padrão, os selos estão no repositório no seguinte local:

  • /libs/settings/community/badging/images

Se armazenadas em um local diferente, elas devem ser lidas e acessíveis a todos.

As medalhas são diferenciadas em UGC, sejam elas atribuídas ou ganhas de acordo com as regras. Atualmente, as medalhas atribuídas são exibidas como texto e as medalhas obtidas são exibidas como uma imagem.

Interface do usuário de gerenciamento de selos badge-management-ui

As Comunidades Console de selos permite adicionar medalhas personalizadas que podem ser exibidas para um membro quando ganho (premiado) ou quando ele assume uma função específica na comunidade (atribuído).

Medalhas atribuídas assigned-badges

As medalhas baseadas em função são atribuídas por um administrador aos membros da comunidade com base em sua função na comunidade.

Os emblemas atribuídos (e concedidos) são armazenados no SRP e não estão diretamente acessíveis. Até que uma GUI esteja disponível, o único meio de atribuir emblemas baseados em função é fazê-lo com código ou cURL. Para obter instruções sobre cURL, consulte a seção intitulada Atribuir e revogar selos.

Estão incluídos na versão três selos com base em funções:

  • moderador
    /libs/settings/community/badging/images/moderator/jcr:content/moderator.png

  • gerente de grupo
    /libs/settings/community/badging/images/group-manager/jcr:content/group-manager.png

  • membro privilegiado
    /libs/settings/community/badging/images/privileged-member/jcr:content/privileged-member.png

    selos atribuídos

Medalhas premiadas awarded-badges

Os emblemas baseados em recompensas são concedidos pelo serviço de pontuação aos membros da comunidade com base nas regras aplicadas à atividade na comunidade.

Para que os selos apareçam como uma recompensa por atividade, há duas coisas que devem acontecer:

  • A insígnia deve ser habilitado para o componente de recurso.
  • As regras de pontuação e medalha devem ser aplicado à página (ou antecessora) em que o componente é colocado.

Estão incluídos na versão três medalhas com base em recompensa:

  • ouro
    /libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

  • prata
    /libs/settings/community/badging/images/silver-badge/jcr:content/silver.png

  • bronze
    /libs/settings/community/badging/images/bronze-badge/jcr:content/bronze.png

    medalhas concedidas

NOTE
As regras de pontuação podem ser configuradas para atribuir pontos negativos para postagens sinalizadas como inadequadas e, portanto, afetar o valor da pontuação. No entanto, uma vez que um selo é ganho, ele não será removido automaticamente devido à redução do ponto de pontuação ou a alterações nas regras de pontuação.
As medalhas concedidas podem ser revogadas da mesma maneira que as medalhas atribuídas. Consulte a Atribuir e revogar selos seção. Os aprimoramentos futuros incluirão uma interface para gerenciar os emblemas dos membros.

Medalhas personalizadas custom-badges

Os emblemas personalizados podem ser instalados usando o Console de selos e atribuído ou especificado nas regras de medalha.

Quando instalados no console Selos, os selos personalizados são replicados automaticamente para o ambiente de publicação.

Ativar pontuação enable-scoring

A pontuação não está ativada por padrão. As etapas básicas para configurar e ativar a pontuação e a atribuição de medalhas são:

Consulte a Teste rápido para ativar a pontuação para um site da comunidade usando as regras padrão de pontuação e selo para fóruns e comentários.

Aplicar regras ao conteúdo apply-rules-to-content

Para ativar a pontuação e os selos, adicione as propriedades scoringRules e badgingRules para qualquer nó na árvore de conteúdo do site.

Se o site já estiver publicado, depois de aplicar todas as regras e ativar os componentes, publique novamente o site.

As regras que se aplicam a um componente habilitado para marcação são aquelas do nó atual ou de seu antecessor.

Se o nó for do tipo cq:Page (recomendado), em seguida, usando o CRXDE|Lite, adicione as propriedades à jcr:content nó.

Propriedade
Tipo
Descrição
badgingRules
String
uma lista de matriz de regras de medalha
scoringRules
String
uma lista de matriz de regras de pontuação
NOTE
Se uma regra de pontuação parecer não ter efeito na atribuição de medalhas, verifique se a regra de pontuação não foi bloqueada pela propriedade scoringRules da regra de medalha. Consulte a seção intitulada Regras de insígnia.

Ativar selos para componente enable-badges-for-component

As regras de pontuação e faixas estão em vigor somente para instâncias de componentes que ativaram a marcação editando a configuração do componente no modo de criação.

Uma propriedade booleana, allowBadges, ativa/desativa a exibição de selos para uma instância de componente. É configurável na variável caixa de diálogo editar componente para componentes de fórum, QnA e comentário por meio de uma caixa de seleção rotulada Exibir selos.

Exemplo: allowBadges para a instância do componente do Fórum example-allowbadges-for-forum-component-instance

enable-badges-component

NOTE
Qualquer componente pode ser sobreposto para exibir emblemas usando o código HBS encontrado em fóruns, QnA e comentários como exemplo.

Regras de pontuação scoring-rules

As regras de pontuação são a base da pontuação para a atribuição de medalhas.

Cada regra de pontuação é uma lista de uma ou mais subregras. As regras de pontuação são aplicadas ao conteúdo do site da comunidade para identificar as regras a serem aplicadas quando os selos estiverem ativados.

As regras de pontuação são herdadas, mas não aditivas. Por exemplo:

  • Se a página2 contiver a regra de pontuação 2 e sua página1 antecessora contiver a regra de pontuação 1.

  • Uma ação em um componente página2 chama a regra 1 e a regra 2.

  • Se ambas as regras contiverem subregras aplicáveis para a mesma topic/verb:

    • Somente a subregra da regra 2 afeta a pontuação.
    • As pontuações de ambas as subregras não são adicionadas.

Quando houver mais de uma regra de pontuação, as pontuações serão mantidas separadamente para cada regra.

As regras de pontuação são nós do tipo cq:Page com propriedades em seu jcr:content nó que especifica a lista de subregras que a definem.

As pontuações são armazenadas no SRP.

NOTE
Prática recomendada: nomear cada regra de pontuação de maneira exclusiva.
Os nomes das regras de pontuação devem ser globalmente exclusivos; eles não devem terminar com o mesmo nome.
Um exemplo do que não fazer:
/libs/settings/community/scoring/rules/site1/forums-scoring
/libs/settings/community/scoring/rules/site2/forums-scoring

Sub-regras de pontuação scoring-sub-rules

As subregras de pontuação contêm as propriedades que detalham os valores para participar da comunidade.

Cada subregra de pontuação identifica:

  • Quais atividades estão sendo rastreadas?
  • Que função comunitária específica está envolvida?
  • Quantos pontos são concedidos?

Por padrão, os pontos são atribuídos ao membro que está executando a ação, a menos que a subregra especifique o proprietário do conteúdo como destinatário dos pontos ( forOwner).

Cada subregra pode ser incluída em uma ou mais regras de pontuação.

O nome da subregra normalmente segue o padrão de uso de um assunto, objeto, e verbo. Por exemplo:

  • member-comment-create
  • membro-recebe-voto

As sub-regras são nós do tipo cq:Page com propriedades em seu jcr:contentnó que especifica a verbos e tópicos .

Propriedade
Tipo
Valor Descrição
VERB
Longo
  • obrigatório; o verbo corresponde a uma ação de evento
  • deve haver pelo menos uma propriedade de verbo
  • o verbo deve ser inserido totalmente em MAIÚSCULAS
  • pode haver várias propriedades de verbo, mas nenhuma duplicata
  • o valor é a pontuação a ser aplicada para esse evento
  • o valor pode ser positivo ou negativo
  • uma lista de verbos suportados na versão está na variável Tópicos e verbos seção
topics
String
  • opcional; restringe a subregra aos componentes da comunidade identificados por tópicos do evento
  • se especificado : o valor é uma cadeia de caracteres de vários valores de tópicos de evento
  • uma lista de tópicos da versão está na Tópicos e verbos seção
  • o padrão é aplicar a todos os tópicos associados aos verbos
forOwner
Booleano
  • opcional; não relevante quando o membro está agindo em seu conteúdo
  • se verdadeiro, aplicar pontuação ao proprietário do conteúdo sobre o qual está sendo atuado
  • se for falso, aplicar pontuação ao membro que está executando a ação
  • o padrão é falso
scoringType
String
  • opcional; identifica o mecanismo de pontuação
  • se "básico", especifica o mecanismo de pontuação com base na quantidade
    • incluído na versão
  • se "avançado", especifica o mecanismo de pontuação com base na qualidade e na quantidade
  • o padrão é "basic"

Regras e sub-regras de pontuação incluídas included-scoring-rules-and-sub-rules

Estão incluídas na versão duas regras de pontuação para o Função do fórum (um para os componentes Fórum e Comentários do recurso Fórum):

  1. /libs/settings/community/scoring/rules/comments-scoring

    • subRules[] = /libs/settings/community/scoring/rules/sub-rules/member-comment-create /libs/settings/community/scoring/rules/sub-rules/member-receive-vote /libs/settings/community/scoring/rules/sub-rules/member-give-vote /libs/settings/community/scoring/rules/sub-rules/member-is-moderated
  2. /libs/settings/community/scoring/rules/forums-scoring

    • subRules[] = /libs/settings/community/scoring/rules/sub-rules/member-forum-create /libs/settings/community/scoring/rules/sub-rules/member-receive-vote /libs/settings/community/scoring/rules/sub-rules/member-give-vote /libs/settings/community/scoring/rules/sub-rules/member-is-moderated

Notas:

  • Ambos rules e sub-rules Os nós são do tipo cq:Page.

  • subRules é um atributo do tipo String[] no campo de jcr:content nó.

  • sub-rules podem ser compartilhados entre várias regras de pontuação.

  • rules deve estar em um local de repositório com permissão de leitura para todos.

    • Os nomes das regras devem ser exclusivos independentemente da localização.

Ativação de regras de pontuação personalizadas activating-custom-scoring-rules

Quaisquer alterações ou adições feitas às regras de pontuação ou subregras feitas no ambiente de criação devem ser instaladas na publicação.

Regras de insígnia badging-rules

As regras de atribuição de emblemas vinculam regras de pontuação aos emblemas especificando:

  • Regra de pontuação
  • Pontuação necessária para receber um selo específico

As regras de insígnia são nós do tipo cq:Page com propriedades em seu jcr:content nó que correlaciona regras de pontuação a pontuações e selos.

As regras para a aposição de thresholds propriedade que é uma lista ordenada de pontuações mapeadas aos selos. As pontuações devem ser ordenadas em valor crescente. Por exemplo:

  • 1|/libs/settings/community/badging/images/bronze-badge/jcr:content/bronze.png

    • Uma medalha de bronze é concedida por ganhar um ponto.
  • 60|/libs/settings/community/badging/images/silver-badge/jcr:content/silver.png

    • Um emblema de prata é concedido quando 60 pontos foram acumulados.
  • 80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

    • Um selo de ouro é concedido quando 80 pontos foram acumulados.

As regras de insígnia são combinadas às regras de pontuação, que determinam como os pontos se acumulam. Consulte a seção intitulada Aplicar regras ao conteúdo.

A variável scoringRules em uma regra de notificação, o simplesmente restringe quais regras de pontuação podem ser emparelhadas com essa regra de notificação específica.

NOTE
Prática recomendada : criar imagens de selo exclusivas para cada site de AEM.

badging-rule-configuration

Propriedade
Tipo
Valor Descrição
limites
String

(obrigatório) Uma cadeia de caracteres de vários valores no formato 'número|caminho'

  • número = pontuação
  • | = sinal de linha vertical (U+007C)
  • caminho = caminho completo para o recurso de imagem do selo

As cadeias de caracteres devem ser ordenadas de modo que os números aumentem em valor e nenhum espaço em branco deva aparecer entre o número e o caminho.
Exemplo de entrada:
80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

badgingType
String
(opcional) Identifica o mecanismo de pontuação como "básico" ou "avançado". Se o mecanismo de pontuação avançado for desejado, consulte Pontuação avançada e medalhas. O padrão é "basic".
scoringRules
String
(opcional) Uma string de vários valores para restringir a regra de classificação a eventos de pontuação identificados pelas regras de classificação

Regras de insígnia incluídas included-badging-rules

Estão incluídas na versão duas regras de insígnia que correspondem à Regras de pontuação de fóruns e comentários.

  • /libs/settings/community/badging/rules/comments-badging

  • /libs/settings/community/badging/rules/forums-badging

Notas:

  • rules Os nós são do tipo cq:Page.

  • rules deve estar em um local de repositório com permissão de leitura para todos.

    • Os nomes das regras devem ser exclusivos independentemente da localização.

Ativação das regras personalizadas de marcação activating-custom-badging-rules

Quaisquer alterações ou adições feitas às regras de marcação ou imagens feitas no ambiente de criação devem ser instaladas na publicação.

Atribuir e revogar selos assign-and-revoke-badges

Os emblemas podem ser atribuídos aos membros usando o console de membros ou programaticamente usando comandos cURL.

Os seguintes comandos cURL mostram o que é necessário para uma solicitação HTTP para atribuir e revogar selos. O formato básico é:

cURL -i -X POST -H cabeçalho -u fazer logon -F operação -F selo member-profile-url

cabeçalho = cabeçalho personalizado "Accept:application/json" para passar para o servidor (obrigatório)

fazer logon = administrator-id:password por exemplo, admin:admin

operação = ":operation=social:assignBadge" OR ":operation=social:deleteBadge"

selo = "badgeContentPath=badge-image-file"

badge-image-file = o local do arquivo de imagem do selo no repositório, por exemplo, /libs/settings/community/badging/images/moderator/jcr:content/moderator.png

member-profile-url = o endpoint do perfil do membro em publicar, por exemplo, https://<server>:<port>/home/users/community/riley/profile.social.json

NOTE
A variável member-profile-url:

Exemplos: examples

Atribuir um selo de moderador assign-a-moderator-badge

curl -i -X POST -H "Accept:application/json" -u admin:admin -F ":operation=social:assignBadge" -F "badgeContentPath=/libs/settings/community/badging/images/moderator/jcr:content/moderator.png" /home/users/community/updcs9DndLEI74DB9zsB/profile.social.json

Revogar um selo prateado atribuído revoke-an-assigned-silver-badge

curl -i -X POST -H "Accept:application/json" -u admin:admin -F ":operation=social:deleteBadge" -F "badgeContentPath=/libs/settings/community/badging/images/silver/jcr:content/silver.png" /home/users/community/updcs9DndLEI74DB9zsB/profile.social.json
NOTE
O uso de cURL para atribuir e revogar selos funciona para qualquer imagem de selo, mas quando atribuído em vez de ganho, eles são marcados como selos atribuídos e manipulados adequadamente.

Pontuação e selos para componentes personalizados scoring-and-badges-for-custom-components

As regras de pontuação e medalha podem ser criadas para componentes personalizados associando os tópicos do evento criados para o componente com verbos.

Tópicos e verbos topics-and-verbs

Quando os membros interagem com os recursos de comunidades, são enviados eventos que podem acionar ouvintes assíncronos, como notificações e pontuação.

A instância SocialEvent de um componente registra os eventos como actions que ocorrem por um topic. O SocialEvent inclui um método para retornar um verb associada à ação. Existe uma n-1 relação entre actions e verbs.

Para os componentes de comunidades entregues, as tabelas a seguir descrevem a verbs definido para cada topic disponível para uso no subregras de pontuação.

NOTE
Uma nova propriedade booleana, allowBadges, ativa/desativa a exibição de selos para uma instância de componente. Pode ser configurado na versão atualizada caixas de diálogo de edição de componente por meio de uma caixa de seleção rotulada Exibir selos.

Componente de calendário
SocialEvent topic= com/adobe/cq/social/calendar

Verbo
Descrição
POST
membro cria um evento de calendário
ADICIONAR
comentários de membros em um evento de calendário
ATUALIZAR
o comentário ou evento de calendário do membro foi editado
EXCLUIR
o evento de calendário ou comentário do membro foi excluído

Componente de comentários
SocialEvent topic= com/adobe/cq/social/comment

Verbo
Descrição
POST
membro cria um comentário
ADICIONAR
membro responde ao comentário
ATUALIZAR
comentário do membro editado
EXCLUIR
comentário do membro excluído

Componente da biblioteca de arquivos
SocialEvent topic= com/adobe/cq/social/fileLibrary

Verbo
Descrição
POST
membro cria uma pasta
ANEXE
membro carrega um arquivo
ATUALIZAR
membro atualiza uma pasta ou arquivo
EXCLUIR
membro exclui uma pasta ou arquivo

Componente do fórum
SocialEvent topic= com/adobe/cq/social/forum

Verbo
Descrição
POST
membro cria tópico de fórum
ADICIONAR
respostas dos membros ao tópico do fórum
ATUALIZAR
o tópico ou a resposta do fórum do membro for editado
EXCLUIR
o tópico ou a resposta do fórum do membro for excluído

Componente do diário
SocialEvent topic= com/adobe/cq/social/journal

Verbo
Descrição
POST
membro cria um artigo de blog
ADICIONAR
comentários de membros em um artigo de blog
ATUALIZAR
artigo ou comentário do blog do membro editado
EXCLUIR
artigo ou comentário do blog do membro excluído

Componente de QnA
SocialEvent topic = com/adobe/cq/social/qna

Verbo
Descrição
POST
membro cria uma pergunta QnA
ADICIONAR
membro cria uma resposta QnA
ATUALIZAR
a pergunta ou resposta QnA do membro é editada
SELECIONE
a resposta do membro está selecionada
DESMARCAR
a resposta do membro foi desmarcada
EXCLUIR
A pergunta ou resposta QnA do membro é excluída

Componente de análises
SocialEvent topic= com/adobe/cq/social/review

Verbo
Descrição
POST
membro cria revisão
ATUALIZAR
revisão do membro editada
EXCLUIR
revisão do membro excluída

Componente de classificação
SocialEvent topic= com/adobe/cq/social/tally/rating

Verbo
Descrição
ADICIONAR CLASSIFICAÇÃO
o conteúdo do membro foi avaliado em alta
REMOVER CLASSIFICAÇÃO
o conteúdo do membro foi classificado como inativo

Componente de votação
SocialEvent topic= com/adobe/cq/social/tally/voting

Verbo
Descrição
ADICIONAR VOTAÇÃO
o conteúdo do membro foi aprovado
REMOVER VOTAÇÃO
o conteúdo do membro foi rejeitado

Componentes habilitados para moderação
SocialEvent topic= com/adobe/cq/social/moderation

Verbo
Descrição
NEGAR
conteúdo do membro negado
SINALIZAR COMO INADEQUADO
o conteúdo do membro está sinalizado
NÃO SINALIZAR COMO INAPROPRIADO
o conteúdo do membro não está sinalizado
ACCEPT
o conteúdo do membro é aprovado pelo moderador
FECHAR
membro fecha comentário para edições e respostas
ABRIR
membro reabre comentário

Eventos de componente personalizados custom-component-events

Para um componente personalizado, um SocialEvent é instanciado para registrar os eventos do componente como actions que ocorrem por um topic.

Para suportar pontuação, o SocialEvent precisa substituir o método getVerb() de modo a que um verb é retornado para cada action. A variável verb retornados para uma ação podem ser aqueles normalmente usados (como POST) ou uma especializada para o componente (como ADD RATING). Existe uma n-1 relação entre actions e verbs.

Resolução de problemas troubleshooting

As medalhas não aparecem badges-are-not-appearing

Se as regras de pontuação e medalha tiverem sido aplicadas ao conteúdo do site, mas as medalhas não estiverem sendo concedidas para nenhuma atividade, verifique se as medalhas foram ativadas para a instância desse componente.

Consulte Ativar selos para componente.

A regra de pontuação não tem efeito scoring-rule-has-no-effect

Se as regras de pontuação e medalha tiverem sido aplicadas ao conteúdo do site, e as medalhas estiverem sendo concedidas para algumas ações, mas não outras, verifique se a regra de medalha não restringiu as regras de pontuação às quais se aplica.

Consulte a scoringRules propriedade de Regras de insígnia.

Erro de digitação que diferencia maiúsculas de minúsculas case-sensitive-typo

A maioria das propriedades e valores, especialmente os verbos, fazem distinção entre maiúsculas e minúsculas. Todos os verbos devem estar em MAIÚSCULAS quando usados em uma subregra de pontuação.

Se o recurso não estiver funcionando como esperado, verifique se os dados foram inseridos corretamente.

Teste rápido quick-test

É possível tentar rapidamente a pontuação e o badging usando o Tutorial de introdução (engajar) local:

  • Acessar CRXDE Lite no autor.

  • Navegue até a página base:

    • /content/sites/engage/en/jcr:content
  • Adicione a propriedade badgingRules:

    • Nome: badgingRules
    • Tipo: String
    • Selecionar Multi
    • Selecionar Adicionar
    • Insira /libs/settings/community/badging/rules/forums-badging
    • Selecione +
    • Insira /libs/settings/community/badging/rules/comments-badging
    • Selecionar OK
  • Adicione a propriedade scoringRules:

    • Nome: scoringRules
    • Tipo: String
    • Selecionar Multi
    • Selecionar Adicionar
    • Insira /libs/settings/community/scoring/rules/forums-scoring
    • Selecione +
    • Insira /libs/settings/community/scoring/rules/comments-scoring
    • Selecionar OK
  • Selecionar Salvar tudo.

test-scoring-badging

Em seguida, verifique se os componentes do fórum e dos comentários permitem que os emblemas sejam exibidos:

  • Novamente usando o CRXDE Lite.

  • Navegue até o componente do fórum

    • /content/sites/engage/en/forum/jcr:content/content/primary/forum
  • Adicione a propriedade booleana allowBadges, se necessário, e verifique se ela é verdadeira.

    • Nome: allowBadges
    • Tipo: Boolean
    • Valor: true

test-forum-component

Em seguida, republicar site da comunidade.

Finalmente,

  • Navegue até o componente na instância de publicação.

  • Faça logon como um membro da comunidade (por exemplo, weston.mccall@dodgit.com / senha).

  • Publique um novo tópico do fórum.

  • A página deve ser atualizada para que o selo seja exibido.

    • Faça logoff e logon como um membro da comunidade diferente (por exemplo: aaron.mcdonald@mailinator.com/password).
  • Selecione o Fórum.

Isso deve dar ao membro da comunidade um selo de bronze visível com sua publicação no fórum, devido ao primeiro limite da regra de classificação em fóruns ser uma pontuação de 1.

bronzebadge

Informações adicionais additional-information

Mais informações podem ser encontradas no Fundamentos de pontuação e medalhas página para desenvolvedores.

Para obter informações sobre o mecanismo de pontuação avançado, consulte Pontuação avançada e medalhas.

O quadro de classificação configurável componente e função simplifica a exibição de membros e suas pontuações em um site da comunidade.

recommendation-more-help
81e2cd9d-0789-409d-b87c-2a8ce4f28791