La funzione di valutazione e badge di AEM Communities consente di identificare e premiare i membri della community.
I dettagli della configurazione della funzione sono descritti in
Questa pagina contiene ulteriori dettagli tecnici :
La struttura di implementazione visibile in CRXDE Lite è soggetta a modifiche.
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 a un ruolo e che il badge deve essere visualizzato come testo.
Se false, viene assegnato indica che il badge è stato assegnato per un punteggio ottenuto e che il badge deve essere visualizzato come immagine.
Qualsiasi modifica a questo comportamento deve essere apportata in uno script personalizzato (override o sovrapposizione). Vedi Personalizzazione lato client.
Per facilitare il debug del punteggio e del badging, è 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 impostare rapidamente un file slinglog :
Accedere al Supporto per il registro della console Web di Adobe Experience Manager, ad esempio
Seleziona Aggiungi nuovo logger
Seleziona DEBUG
per Livello di log
Immettere un nome per File di log, ad esempio
Inserisci due Registratore (classe) voci (utilizzando +
icona)
com.adobe.cq.social.scoring
com.adobe.cq.social.badging
Seleziona Salva
Per visualizzare le voci di registro:
Dalla console Web
scoring-debug
Sul disco locale del server
Il file di registro si trova in <server-install-dir>/crx-quickstart/logs/<nome-file-registro>.log
Esempio, .../crx-quickstart/logs/scoring-debug.log
È possibile visualizzare l’UGC relativo al punteggio e al contrassegno quando l’SRP scelto è JSRP o MSRP, ma non ASRP. (Se non conosci questi termini, consulta Archiviazione dei contenuti della community e Panoramica del provider di risorse di storage.)
Le descrizioni per l’accesso ai dati di punteggio e badging utilizzano JSRP, in quanto l’UGC è facilmente accessibile tramite CRXDE Lite.
JSRP sull'autore: la sperimentazione nell’ambiente di authoring genera contenuti generati dagli utenti che sono visibili solo nell’ambiente di authoring.
JSRP in pubblicazione: analogamente, se esegui test sull’ambiente di pubblicazione, sarà necessario accedere ad CRXDE Lite con privilegi amministrativi su un’istanza di pubblicazione. Se l'istanza di pubblicazione è in esecuzione in modalità di produzione (modalità runmode nosamplecontent), è necessario abilita CRXDE Lite.
La posizione di base di UGC su JSRP è /content/usergenerated/asi/jcr/
.
Le seguenti API sono disponibili per l’uso :
Gli sviluppatori dell’archivio Adobe possono accedere agli ultimi Javadocs per il feature pack installato. Vedi Utilizzo di Maven per Communities: Javadocs.
La posizione e il formato dell’UGC nell’archivio sono soggetti a modifiche senza preavviso.
Le schermate dei dati dell’archivio provengono dalla configurazione del punteggio e del contrassegno per un forum su due siti di AEM diversi :
Un sito AEM con un id univoco (sito community creato tramite la procedura guidata) :
Utilizzo del sito tutorial (coinvolgi) introduttivo creato durante esercitazione introduttiva
Individua il nodo della pagina del forum
/content/sites/engage/en/forum/jcr:content
Aggiungere proprietà di valutazione e contrassegno
scoringRules = [/libs/settings/community/scoring/rules/comments-scoring,
/libs/settings/community/scoring/rules/forums-scoring]
badgingRules =[/libs/settings/community/badging/rules/comments-scoring,
/libs/settings/community/badging/rules/forums-scoring]
Individua il nodo componente forum
/content/sites/engage/en/forum/jcr:content/content/primary/forum
( sling:resourceType = social/forum/components/hbs/forum
)
Aggiungi proprietà per visualizzare i badge
allowBadges = true
L'utente effettua l'accesso, crea un argomento del forum e viene assegnato un badge in bronzo
Un sito AEM senza un id univoco :
Utilizzo della Guida ai componenti della community
Individua il nodo della pagina del forum
/content/community-components/en/forum/jcr:content
Aggiungere proprietà di valutazione e contrassegno
scoringRules = [/libs/settings/community/scoring/rules/comments-scoring,
/libs/settings/community/scoring/rules/forums-scoring]
badgingRules =[/libs/settings/community/badging/rules/comments-badging,
/libs/settings/community/badging/rules/forums-badging]
Individua il nodo componente forum
/content/community-components/en/forum/jcr:content/content/forum
( sling:resourceType = social/forum/components/hbs/forum
)
Aggiungi proprietà per visualizzare i badge
allowBadges = true
L'utente effettua l'accesso, crea un argomento del forum e viene assegnato un badge in bronzo
A un utente viene assegnato un badge moderatore utilizzando cURL :
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
Come un utente ha guadagnato due distintivi di bronzo ed è stato assegnato un badge moderatore, questo è il modo in cui l'utente appare con la loro voce del forum.
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 not per eseguire:
/libs/settings/community/scoring/rules/site1/forums-scoring
/libs/settings/community/scoring/rules/site2/forums-scoring
Creazione di immagini di badge univoche per siti AEM diversi
Uso del API è da preferirsi.
A scopo investigativo, utilizzando JSRP per l’esempio, la cartella base contenente i punteggi è
/content/usergenerated/asi/jcr/scoring
Il nodo figlio di scoring
è il nome della regola di punteggio. Di conseguenza, è consigliabile 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 conteggiato con il nome della regola di punteggio, l'ID del sito della community ( engage-ba81p
), un id univoco e l'id dell'utente :
.../scoring/forums-scoring/engage-ba81p/6d179715c0e93cb2b20886aa0434ca9b5a540401/riley
Per il sito della guida ai componenti della 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 può contenere solo un valore o fare riferimento indirettamente a un atomicCounter.
Uso del API è da preferirsi.
A scopo investigativo, utilizzando JSRP per esempio, la cartella base contenente informazioni sui badge assegnati o assegnati è
/content/usergenerated/asi/jcr
Seguito dal percorso del profilo dell’utente, che termina in una cartella dei badge, ad esempio:
/home/users/community/w271OOup2Z4DjnOQrviv/profile/badges
Per visualizzare un elenco ordinato di membri in base ai punti: