Notation et badges des communautés

Présentation

La fonction Scores et badges d’AEM Communities permet d’identifier et de récompenser les membres de la communauté.

Les principaux aspects de la notation et des badges sont les suivants :

  • Attribuez des badges pour identifier le rôle d’un membre dans la communauté.

  • Octroi basique de badges aux membres pour encourager leur participation (quantité de contenu créé).

  • Attribution avancée de badges pour identifier les membres comme experts (qualité du contenu créé).

​Notez que l’attribution des badges n’est pas activée par défaut.

ATTENTION

La structure d’implémentation visible dans CRXDE Lite peut être modifiée une fois l’interface utilisateur disponible.

Badges

Les badges sont placés sous le nom d’un membre pour indiquer son rôle ou sa position dans la communauté. Les badges peuvent être affichés sous forme d’image ou de nom. Lorsqu’il est affiché sous forme d’image, le nom est inclus en tant que texte de remplacement pour l’accessibilité.

Par défaut, les badges se trouvent dans le référentiel à l’adresse

  • /libs/settings/community/badging/images

S’ils sont stockés à un autre emplacement, ils doivent être lus et accessibles à tous.

Les badges sont différenciés par rapport au contenu généré par l’utilisateur selon qu’ils ont été attribués ou acquis selon les règles. Actuellement, les badges attribués apparaissent sous forme de texte et les badges gagnés apparaissent sous forme d’image.

Interface utilisateur de gestion des badges

La console Badges de Communities permet d’ajouter des badges personnalisés qui peuvent être affichés pour un membre lorsqu’il est gagné (attribué) ou lorsqu’il occupe un rôle spécifique dans la communauté (affecté).

Badges attribués

Les badges en fonction du rôle sont attribués par un administrateur aux membres de la communauté en fonction de leur rôle dans la communauté.

Les badges attribués (et récompensés) sont stockés dans la SRP sélectionnée et ne sont pas directement accessibles. Tant qu’une interface utilisateur graphique n’est pas disponible, le seul moyen d’affecter des badges basés sur un rôle consiste à utiliser du code ou cURL. Pour obtenir des instructions sur cURL, reportez-vous à la section intitulée Attribuer et révoquer des badges.

Cette version comprend trois badges basés sur les rôles :

  • modérateur

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

  • gestionnaire de groupe

    /libs/settings/community/badging/images/group-manager/jcr:content/group-manager.png

  • membre privilégié

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

    assigned-badges

Badges décernés

Les badges récompensés sont attribués par le service de notation aux membres de la communauté selon les règles appliquées à leur activité dans la communauté.

Pour que les badges apparaissent comme une récompense pour l’activité, deux choses doivent se produire :

  • Le badge doit être activé pour le composant de fonctionnalité.
  • Les règles de notation et de badge doivent être appliquées à la page (ou ancêtre) sur laquelle le composant est placé.

Trois badges basés sur les récompenses sont inclus dans la version :

  • or

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

  • argent

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

  • bronze

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

    badges primés

REMARQUE

Les règles de notation peuvent être configurées pour affecter des points négatifs aux publications marquées comme inappropriées et affecter ainsi la valeur du score. Cependant, une fois qu’un badge est gagné, il n’est pas automatiquement supprimé en raison de la réduction du point de notation ou des modifications des règles de notation.

Les badges primés peuvent être révoqués de la même manière que les badges attribués. Voir la section Attribuer et révoquer des badges . À l’avenir, une interface utilisateur sera ajoutée pour gérer les badges des membres.

Badges personnalisés

Les badges personnalisés peuvent être installés à l’aide de la console Badges et attribués ou spécifiés dans les règles de badge.

Une fois installés à partir de la console Badges, les badges personnalisés sont automatiquement répliqués vers l’environnement de publication.

Activation de la notation

La notation n’est pas activée par défaut. Les étapes de base pour configurer et activer la notation et l’attribution de badges sont les suivantes :

Consultez la section Test rapide pour activer la notation pour un site de communauté à l’aide des règles de notation et de badge par défaut pour les forums et les commentaires.

Application de règles au contenu

Pour activer la notation et les badges, ajoutez les propriétés scoringRules et badgingRules à n’importe quel noeud de l’arborescence de contenu du site.

Si le site est déjà publié, après avoir appliqué toutes les règles et activé les composants, republiez le site.

Les règles qui s’appliquent à un composant activé par badge sont celles du noeud actif ou de son ancêtre.

Si le noeud est de type cq:Page (recommandé), ajoutez les propriétés à son noeud jcr:content à l’aide de CRXDE|Lite.

Propriété Type Description
badgingRules Chaîne une liste de tableaux de règles de badge
scoringRules Chaîne une liste de tableaux de règles de notation
REMARQUE

Si une règle de notation ne semble avoir aucun effet sur l’attribution des badges, assurez-vous que la règle de notation n’a pas été bloquée par la propriété scoringRules de la règle de badge. Voir la section intitulée Règles de badge.

Activation des badges pour le composant

Les règles de notation et de mise en page ne sont appliquées que pour les instances de composants qui ont activé la mise en badge en modifiant la configuration du composant en mode de création.

Une propriété booléenne, allowBadges, active/désactive l’affichage des badges pour une instance de composant. Il est configurable dans la boîte de dialogue de modification du composant pour les composants de forum, de Q&R et de commentaire via une case à cocher intitulée Afficher les badges.

Exemple : allowBadges pour l’instance de composant Forum

enable-badges-component

REMARQUE

N’importe quel composant peut être superposé pour afficher les badges à l’aide du code HBS trouvé dans les forums, la qualité de service et les commentaires comme exemple.

Règles de notation

Les règles de notation sont la base de la notation dans le but d’attribuer des badges.

Très simplement, chaque règle de notation est une liste d’une ou de plusieurs sous-règles. Les règles de notation sont appliquées au contenu du site de la communauté afin d’identifier les règles à appliquer lorsque les badges sont activés.

Les règles de notation sont héritées, mais pas additifs. Par exemple :

  • Si la page 2 contient la règle de notation 2 et que sa page 1 ancêtre contient la règle de notation 1.

  • Une action sur un composant page2 appelle à la fois règle1 et règle2.

  • Si les deux règles contiennent des sous-règles applicables pour le même topic/verb :

    • Seule la sous-règle de la règle 2 affectera le score.
    • Les scores des deux sous-règles ne sont pas cumulés.

S’il existe plusieurs règles de notation, les scores sont conservés séparément pour chaque règle.

Les règles de notation sont des noeuds de type cq:Page avec des propriétés sur leur noeud jcr:content qui spécifient la liste des sous-règles qui les définissent.

Les scores sont stockés dans SRP.

REMARQUE

Bonne pratique : nommez de manière unique chaque règle de notation.

Les noms des règles de notation doivent être uniques au niveau global. ils ne doivent pas se terminer par le même nom.

Exemple de ce que ne doit pas faire :

/libs/settings/community/scoring/rules/site1/forums-scoring
/libs/settings/community/scoring/rules/site2/forums-scoring

Sous-règles de notation

Les sous-règles de notation contiennent les propriétés qui détaillent les valeurs de participation à la communauté.

Chaque sous-règle de notation identifie :

  • Quelles activités sont suivies ?
  • Quelle fonction communautaire spécifique est impliquée ?
  • Combien de points sont attribués ?

Par défaut, les points sont attribués au membre qui agit, sauf si la sous-règle spécifie au propriétaire du contenu qu’il reçoit les points ( forOwner).

Chaque sous-règle peut être incluse dans une ou plusieurs règles de notation.

Le nom de la sous-règle suit généralement le modèle d’utilisation d’un subject , object et verb. Par exemple :

  • member-comment-create
  • member-receive-vote

Les sous-règles sont des noeuds de type cq:Page avec des propriétés sur son noeud jcr:contentqui spécifient les verbes et rubriques .

Propriété Type Description de la valeur
VERB Long
  • requis; le verbe correspond à une action d’événement
  • il doit y avoir au moins une propriété verb
  • le verbe doit être saisi en MAJUSCULES
  • il peut y avoir plusieurs propriétés de verbe, mais pas de doublons.
  • la valeur est le score à appliquer pour cet événement.
  • la valeur peut être positive ou négative.
  • la liste des verbes pris en charge dans la version figure dans la section Rubriques et verbes .
topics Chaîne
  • facultatif ; limite la sous-règle aux composants de communauté identifiés par les rubriques d’événement ;
  • si spécifié : La valeur est une chaîne à plusieurs valeurs de rubriques d’événement.
  • une liste des rubriques de la version figure dans la section Sujets et verbes .
  • La valeur par défaut est d’appliquer à toutes les rubriques associées aux verbes.
forOwner Booléen
  • facultatif ; n’est pas pertinent lorsque le membre agit sur le contenu qu’il possède
  • si la valeur est true, appliquez un score au propriétaire du contenu sur lequel l’action est effectuée.
  • si la valeur est false, appliquez un score à l’action du membre.
  • false par défaut
scoringType Chaîne
  • facultatif ; identifie le moteur de notation
  • si "basic", spécifie le moteur de notation en fonction de la quantité
    • inclus dans la version
  • si "advanced", indique le moteur de notation en fonction de la qualité et de la quantité
  • La valeur par défaut est "basic"

Règles de notation et sous-règles incluses

Cette version comprend deux règles de notation pour la fonction Forum (une pour les composants Forum et Commentaires de la fonction Forum) :

  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-don-vote
      /libs/settings/community/scoring/rules/sub-rules/member-is-modéated
  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-don-vote
      /libs/settings/community/scoring/rules/sub-rules/member-is-modéated

Remarques:

  • Les noeuds rules et sub-rules sont de type cq:Page.

  • subRules est un attribut de type [] Chaîne sur le jcr:content noeud de la règle.

  • sub-rules peut être partagée entre différentes règles de notation.

  • rules doit être situé dans un emplacement de référentiel avec une autorisation de lecture pour tout le monde.

    • Les noms des règles doivent être uniques, quel que soit l’emplacement.

Activation de règles de notation personnalisées

Toutes les modifications ou ajouts apportés aux règles de notation ou aux sous-règles effectuées dans l’environnement de création doivent être installés lors de la publication.

Règles de badge

Les règles de badge lient les règles de notation aux badges en spécifiant :

  • Règle de notation
  • Score nécessaire pour recevoir un badge spécifique

Les règles de badge sont des noeuds de type cq:Page avec des propriétés sur son noeud jcr:content qui mettent en corrélation les règles de notation avec les scores et les badges.

Les règles de badge se composent d’une propriété thresholds obligatoire qui est une liste ordonnée de scores mappés à des badges. Les scores doivent être triés en valeur croissante. Par exemple :

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

    • Un badge en bronze est décerné pour avoir gagné 1 point.
  • 60|/libs/settings/community/badging/images/silver-badge/jcr:content/silver.png

    • Un badge d'argent est attribué lorsque 60 points ont été accumulés.
  • 80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

    • Un badge d'or est décerné lorsque 80 points ont été accumulés.

Les règles de badge sont associées à des règles de notation qui déterminent la manière dont les points s’accumulent. Voir la section intitulée Appliquer des règles au contenu.

La propriété scoringRules d’une règle de badge limite simplement les règles de notation qui peuvent être associées à cette règle de badge spécifique.

REMARQUE

Bonne pratique : créer des images de badge uniques à chaque site AEM.

badging-rule-configuration

Propriété Type Description de la valeur
seuils Chaîne (obligatoire) Chaîne à plusieurs valeurs de la forme 'number|path'
  • nombre = score
  • | = la ligne verticale char (U+007C)
  • path = chemin complet de la ressource image de badge
Les chaînes doivent être triées de sorte que les nombres augmentent en valeur et qu’aucun espace vide ne s’affiche entre le nombre et le chemin.
Exemple d’entrée :
80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png
badgingType Chaîne (facultatif) Identifie le moteur de notation comme "de base" ou "avancé". Si vous souhaitez utiliser le moteur de notation avancé, voir Notation avancée et badges. La valeur par défaut est "basic".
scoringRules Chaîne (facultatif) Chaîne à plusieurs valeurs permettant de limiter la règle de badge aux événements de notation identifiés par les règles de notation.

Règles de badge incluses

Cette version comprend deux règles de badge qui correspondent aux forums et aux règles de notation des commentaires.

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

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

Remarques:

  • rules Les noeuds sont de type cq:Page.

  • rules doit être situé dans un emplacement de référentiel avec une autorisation de lecture pour tout le monde.

    • Les noms des règles doivent être uniques, quel que soit leur emplacement.

Activation de règles de badge personnalisées

Toute modification ou tout ajout apporté aux règles de badge ou aux images effectuées dans l’environnement de création doit être installé lors de la publication.

Affectation et révocation de badges

Les badges peuvent être attribués aux membres à l’aide de la console des membres ou par programmation à l’aide des commandes cURL.

Les commandes cURL suivantes indiquent les éléments nécessaires à une requête HTTP d’attribution et de révocation des badges. Le format de base est le suivant :

cURL -i -X POST -H header -u signature -F opération -F badge member-profile-url

header = "Accept:application/json" en-tête personnalisé à transmettre au serveur (obligatoire)

signature = administrator-id:password par exemple : admin:admin

operation = ":operation=social:assignBadge" OU ":operation=social:deleteBadge"

badge = "badgeContentPath=badge-image-file"

badge-image-file = emplacement du fichier image de badge dans le référentiel, par exemple : /libs/settings/community/badging/images/modérator/jcr:content/moderator.png

member-profile-url = point de terminaison du profil du membre lors de la publication, par exemple : https://<server> : <port>/home/users/community/riley/profile.social.json

REMARQUE

member-profile-url :

Exemples :

Attribution d’un badge de modérateur

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

Révoquer un badge d’argent attribué

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
REMARQUE

L’utilisation de cURL pour attribuer et révoquer des badges fonctionne pour n’importe quelle image de badge, mais lorsqu’elle est affectée au lieu d’être acquise, elles sont marquées comme des badges attribués et gérées en conséquence.

Notation et badges pour les composants personnalisés

Il est possible de créer des règles de notation et de badge pour les composants personnalisés en associant les rubriques d’événement créées pour le composant aux verbes.

Rubriques et verbes

Lorsque les membres interagissent avec les fonctionnalités des communautés, des événements sont envoyés, qui peuvent déclencher des écouteurs asynchrones, tels que des notifications et des scores.

L’instance SocialEvent d’un composant enregistre les événements sous la forme actions qui se produisent pour une balise topic. SocialEvent inclut une méthode pour renvoyer une verb associée à l’action. Il existe une relation n-1 entre actions et verbs.

Pour les composants des communautés livrés, les tableaux suivants décrivent les verbs définis pour chaque topic disponible pour utilisation dans les sous-règles de notation.

REMARQUE

Une nouvelle propriété booléenne, allowBadges, active/désactive l’affichage des badges pour une instance de composant. Il sera configurable dans les boîtes de dialogue de modification des composants mises à jour par le biais d’une case à cocher intitulée Badges d’affichage.

Calendrier
ComponentSocialEvent topic= com/adobe/cq/social/calendar

Verbe Description
POST Un membre crée un événement de calendrier
AJOUTER commentaires d’un membre sur un événement de calendrier
UPDATE l’événement ou le commentaire de calendrier du membre est modifié.
DELETE l’événement ou le commentaire de calendrier du membre est supprimé.

Comments
ComponentSocialEvent topic= com/adobe/cq/social/comment

Verbe Description
POST Un membre crée un commentaire
AJOUTER réponses du membre au commentaire
UPDATE le commentaire du membre est modifié.
DELETE le commentaire du membre est supprimé.

File Library
ComponentSocialEvent topic= com/adobe/cq/social/fileLibrary

Verbe Description
POST crée un dossier
ATTACH Le membre charge un fichier
UPDATE met à jour un dossier ou un fichier
DELETE supprime un dossier ou un fichier

Forum
ComponentSocialEvent topic= com/adobe/cq/social/forum

Verbe Description
POST thème de forum de création de membre
AJOUTER réponses des membres au sujet du forum
UPDATE Le sujet ou la réponse du forum du membre est modifié
DELETE La rubrique ou la réponse du forum du membre est supprimée

Journal
ComponentSocialEvent topic= com/adobe/cq/social/journal

Verbe Description
POST Un membre crée un article de blog.
AJOUTER commentaires d'un membre sur un article de blog
UPDATE article ou commentaire de blog du membre modifié
DELETE article ou commentaire de blog du membre supprimé

Q&R
ComponentSocialEvent topic = com/adobe/cq/social/qna

Verbe Description
POST crée une question Q&R
AJOUTER crée une réponse Q&R
UPDATE Q&R du membre : une question ou une réponse est modifiée
SELECT la réponse du membre est sélectionnée.
UNSELECT la réponse du membre est désélectionnée.
DELETE Q&R du membre : une question ou une réponse est supprimée

Révisions
ComponentSocialEvent topic= com/adobe/cq/social/review

Verbe Description
POST création de la révision par le membre
UPDATE la révision du membre est modifiée.
DELETE la révision du membre est supprimée.

Évaluation
ComponentSocialEvent topic= com/adobe/cq/social/tally/rating

Verbe Description
AJOUTER UNE NOTE le contenu du membre a été mis au point
SUPPRESSION DE LA NOTE le contenu du membre a été abaissé.

Vote
ComponentSocialEvent topic= com/adobe/cq/social/tally/vote

Verbe Description
AJOUTER UN VOTE le contenu du membre a été voté
SUPPRIMER LE VOTE le contenu du membre a été rejeté


Composants activés pour la modérationSocialEvent topic= com/adobe/cq/social/modération

Verbe Description
DENY le contenu du membre est refusé ;
INDICATEUR INAPPROPRIÉ le contenu du membre est marqué
INAPPROPRIÉ le contenu du membre n’est pas marqué
ACCEPT le contenu du membre est approuvé par le modérateur ;
CLOSE le membre ferme le commentaire aux modifications et aux réponses
OUVRIR commentaire de réouverture du membre

Événements de composant personnalisés

Pour un composant personnalisé, un événement SocialEvent est appelé pour enregistrer les événements du composant sous la forme actions qui se produisent pour un topic.

Pour prendre en charge la notation, SocialEvent doit remplacer la méthode getVerb() afin qu’une verb appropriée soit renvoyée pour chaque action. La valeur verb renvoyée pour une action peut être couramment utilisée (telle que POST) ou spécialisée pour le composant (telle que ADD RATING). Il existe une relation n-1 entre actions et verbs.

Résolution des problèmes

Les badges ne s’affichent pas

Si des règles de notation et de badge ont été appliquées au contenu du site web, mais que les badges n’ont été attribués pour aucune activité, assurez-vous que les badges ont été activés pour l’instance de ce composant.

Voir Activation des badges pour le composant.

La règle de notation n’a aucun effet

Si des règles de notation et de badge ont été appliquées au contenu du site web et que des badges sont attribués pour certaines actions, mais pas pour d’autres, vérifiez que la règle de badge n’a pas restreint les règles de notation auxquelles elle s’applique.

Voir la propriété scoringRules des Règles de badge.

Type sensible à la casse

La plupart des propriétés et valeurs, en particulier les verbes, sont sensibles à la casse. Les verbes doivent être en MAJUSCULES lorsqu’ils sont utilisés dans une sous-règle de notation.

Si la fonction ne fonctionne pas comme prévu, vérifiez que les données ont été correctement saisies.

Test rapide

Il est possible d’essayer rapidement de noter et d’attribuer un badge à l’aide du Tutoriel de prise en main (engage) site :

  • Accédez au CRXDE Lite sur l’auteur.

  • Accédez à la page de base :

    • /content/sites/engage/en/jcr:content
  • Ajoutez la propriété badgingRules :

    • Nom : badgingRules
    • Type : String
    • Sélectionnez Multi
    • Sélectionnez Ajouter
    • Enter /libs/settings/community/badging/rules/forums-badging
    • Sélectionner +
    • Entrez /libs/settings/community/badging/rules/comments-badging
    • Cliquez sur OK
  • Ajoutez la propriété scoringRules :

    • Nom : scoringRules
    • Type : String
    • Sélectionnez Multi
    • Sélectionnez Ajouter
    • Entrez /libs/settings/community/scoring/rules/forums-scoring
    • Sélectionner +
    • Entrez /libs/settings/community/scoring/rules/comments-scoring
    • Cliquez sur OK
  • Sélectionnez Enregistrer tout.

test-scoring-badging

Vérifiez ensuite que les composants de forum et de commentaires permettent l’affichage des badges :

  • Encore une fois en utilisant CRXDE Lite.

  • Accédez au composant Forum

    • /content/sites/engage/en/forum/jcr:content/content/primary/forum
  • Ajoutez la propriété booléenne allowBadges, si nécessaire, et assurez-vous qu’elle est définie sur true.

    • Nom : allowBadges
    • Type : Boolean
    • Valeur: true

test-forum-component

Ensuite, republiez le site de la communauté.

Enfin,

  • Accédez au composant sur l’instance de publication.

  • Se connecter en tant que membre de la communauté (par exemple : weston.mccall@dodgit.com).

  • Publiez un nouveau sujet de forum.

  • La page doit être actualisée pour que le badge s’affiche.

    • Déconnectez-vous et connectez-vous en tant que membre de la communauté différent (par exemple : aaron.mcdonald@mailinator.com/password).
  • Sélectionnez le Forum.

Cela devrait permettre au membre de la communauté d’obtenir un badge en bronze visible avec sa publication sur le forum car le premier seuil de la règle de badge des forums est de 1.

bronzebadge

Informations supplémentaires

Pour plus d’informations, reportez-vous à la page Notions fondamentales sur la notation et les badges pour les développeurs.

Pour plus d’informations sur le moteur de notation avancée, voir Notation avancée et badges.

Le tableau de classement configurable component et function simplifie l’affichage des membres et de leurs scores sur un site communautaire.

Sur cette page