Nozioni di base su punteggio e distintivi scoring-and-badges-essentials

La funzione di punteggio e badge di AEM Communities identifica e premia i membri della community.

I dettagli della configurazione della funzione sono descritti in

Questa pagina contiene ulteriori dettagli tecnici:

CAUTION
La struttura di implementazione visibile in CRXDE Liti è soggetta a modifiche.

Visualizzazione dei badge displaying-badges

Se un badge viene visualizzato come testo o immagine è controllato sul lato client nel modello HBS.

Ad esempio, cerca this.isAssigned in /libs/social/forum/components/hbs/topic/list-item.hbs:

{{#each author.badges}}

  {{#if this.isAssigned}}

    <div class="scf-badge-text">

      {{this.title}}

    </div>

  {{/if}}

{{/each}}

{{#each author.badges}}

  {{#unless this.isAssigned}}

    <img class="scf-badge-image" alt="{{this.title}}" title="{{this.title}}" src="{{this.imageUrl}}" />

  {{/unless}}

{{/each}}

Se true, isAssigned indica che il badge è stato assegnato per un ruolo e deve essere visualizzato come testo.

Se false, isAssigned indica che il badge è stato assegnato per un punteggio ottenuto e deve essere visualizzato come immagine.

Qualsiasi modifica a questo comportamento deve essere apportata in uno script personalizzato (override o overlay). Consulta Personalizzazione lato client.

Registro di debug per punteggio e badge debug-log-for-scoring-and-badging

Per facilitare il debug di punteggi e contrassegni, è possibile impostare un file di registro personalizzato. Il contenuto di questo file di registro può quindi essere fornito all’assistenza clienti in caso di problemi con la funzione.

Per istruzioni dettagliate, visita Creare un file di registro personalizzato.

Per configurare rapidamente un file di log di Slinglog:

  1. Accedere a Supporto del registro della console Web Adobe Experience Manager, ad esempio

    • https://localhost:4502/system/console/slinglog
  2. Seleziona Aggiungi nuovo logger

    1. Seleziona DEBUG per Livello registro

    2. Inserisci un nome per File di registro, ad esempio

      • logs/scoring-debug.log
    3. Inserisci due Logger voci (classe) (utilizzando + )

      • com.adobe.cq.social.scoring
      • com.adobe.cq.social.badging
    4. Seleziona Salva

debug-scoring-log

Per visualizzare le voci di registro:

  • Dalla console web

    • Sotto Stato menu
    • Seleziona File di registro
    • Cerca il nome del file di registro, ad esempio scoring-debug
  • Sul disco locale del server

    • Il file di registro si trova in <server-install-dir>/crx-quickstart/logs/<log-file-name>.log

    • Ad esempio .../crx-quickstart/logs/scoring-debug.log

registro punteggio

UGC per punteggio e badge ugc-for-scoring-and-badging

È possibile visualizzare il UGC relativo al punteggio e al contrassegno quando l’SRP scelto è JSRP o MSRP, ma non ASRP. (Se non conosci questi termini, consulta Archiviazione contenuti community e Panoramica del provider di risorse di archiviazione.)

Le descrizioni per l’accesso ai dati di punteggio e badge utilizzano JSRP, in quanto l’UGC è facilmente accessibile tramite CRXDE Liti.

JSRP sull’autore: la sperimentazione nell’ambiente di authoring genera contenuti generati dall’utente che sono visibili solo dall’ambiente di authoring.

JSRP in fase di pubblicazione: analogamente, se si esegue il test nell’ambiente di pubblicazione, è necessario accedere a CRXDE Liti con privilegi amministrativi su un’istanza di pubblicazione. Se l’istanza Publish è in esecuzione in modalità di produzione (modalità di esecuzione nosamplecontent), è necessario abilita CRXDE Liti.

La posizione di base di UGC su JSRP è /content/usergenerated/asi/jcr/.

API per assegnazione punteggi e assegnazione badge scoring-and-badging-apis

Sono disponibili le seguenti API:

Gli ultimi JavaScript per il feature pack installato sono disponibili per gli sviluppatori dall’archivio Adobe. Consulta Utilizzo di Maven per le community : Javadocs.

La posizione e il formato dell’UGC nell’archivio sono soggetti a modifiche senza preavviso.

Esempio di configurazione example-setup

Le schermate dei dati dell'archivio provengono dall'impostazione del punteggio e del badge per un forum su due diversi siti AEM:

  1. Un sito AEM con id univoco (sito community creato tramite procedura guidata):

    • Utilizzo del sito Guida introduttiva (coinvolgi) creato durante il tutorial introduttivo

    • Individua il nodo della pagina del forum

      /content/sites/engage/en/forum/jcr:content

    • Aggiungere proprietà di punteggio e badge

    code language-none
    scoringRules = [/libs/settings/community/scoring/rules/comments-scoring,
    /libs/settings/community/scoring/rules/forums-scoring]
    
    code language-none
    badgingRules =[/libs/settings/community/badging/rules/comments-scoring,
    /libs/settings/community/badging/rules/forums-scoring]
    
    • Individua il nodo del componente forum

      /content/sites/engage/en/forum/jcr:content/content/primary/forum
      ( sling:resourceType = social/forum/components/hbs/forum)

    • Per visualizzare i badge, aggiungi la proprietà

      allowBadges = true

    • Un utente effettua l’accesso, crea un argomento del forum e riceve un distintivo bronzo

  2. Un sito AEM senza un id univoco :

    • Utilizzo di Guida ai componenti della community

    • Individua il nodo della pagina del forum

      /content/community-components/en/forum/jcr:content

    • Aggiungere proprietà di punteggio e badge

    code language-none
    scoringRules = [/libs/settings/community/scoring/rules/comments-scoring,
    /libs/settings/community/scoring/rules/forums-scoring]
    
    code language-none
    badgingRules =[/libs/settings/community/badging/rules/comments-badging,
    /libs/settings/community/badging/rules/forums-badging]
    
    • Individua il nodo del componente forum

      /content/community-components/en/forum/jcr:content/content/forum
      ( sling:resourceType = social/forum/components/hbs/forum)

    • Per visualizzare i badge, aggiungi la proprietà

      allowBadges = true

    • Un utente effettua l’accesso, crea un argomento del forum e riceve un distintivo bronzo

  3. A un utente viene assegnato un badge moderatore utilizzando cURL:

    code language-shell
    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" https://localhost:4503/home/users/community/w271OOup2Z4DjnOQrviv/profile.social.json
    

    Poiché un utente ha ottenuto due distintivi bronzo ed è stato insignito di un distintivo moderatore, appare con la sua voce forum come segue:

    moderatore

NOTE
Questo esempio non segue le seguenti best practice:
  • I nomi delle regole di punteggio devono essere univoci a livello globale; non devono terminare con lo stesso nome.

    Un esempio di cosa non da fare:

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

  • Creazione di immagini distintive univoche per diversi siti AEM

UGC per punteggio di accesso access-scoring-ugc

Uso del API è da preferirsi.

A scopo investigativo, utilizzando JSRP per l’esempio, la cartella di base contenente i punteggi è

  • /content/usergenerated/asi/jcr/scoring

Nodo figlio di scoring è il nome della regola di punteggio. Pertanto, una best practice prevede che i nomi delle regole di punteggio su un server siano univoci a livello globale.

Per il sito Geometrixx Engage, l’utente e il relativo punteggio si trovano in un percorso costruito con il nome della regola di punteggio, ID sito community ( engage-ba81p), un ID univoco e l'ID dell'utente:

  • .../scoring/forums-scoring/engage-ba81p/6d179715c0e93cb2b20886aa0434ca9b5a540401/riley

Per il sito guida dei componenti community, l’utente e il relativo punteggio si trovano in un percorso costruito con il nome della regola di punteggio, un ID predefinito ( default-site), un ID univoco e l'ID dell'utente:

  • .../scoring/forums-scoring/default-site/b27a17cb4910a9b69fe81fb1b492ba672d2c086e/riley

Il punteggio viene memorizzato nella proprietà scoreValue_tl che possono contenere solo un valore o fare riferimento indirettamente a un atomicCounter.

access-scoring-ugc

UGC per assegnazione badge di accesso access-badging-ugc

Uso del API è da preferirsi.

A scopo investigativo, utilizzando JSRP per l’esempio, la cartella di base contenente le informazioni sui badge assegnati o assegnati è

  • /content/usergenerated/asi/jcr

Seguito dal percorso del profilo dell’utente, che termina con una cartella di badge, ad esempio:

  • /home/users/community/w271OOup2Z4DjnOQrviv/profile/badges

Badge aggiudicato awarded-badge

award-badging-ugc

Badge assegnato assigned-badge

assigned-badge

Informazioni aggiuntive additional-information

Per visualizzare un elenco ordinato di membri in base ai punti:

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