Punteggio community e badge communities-scoring-and-badges

Panoramica overview

La funzione Punteggio e badge di AEM Communities consente di identificare e premiare i membri della community.

I principali aspetti del punteggio e dei distintivi sono:

Si noti che l'assegnazione dei distintivi è non abilitata per impostazione predefinita.

CAUTION
La struttura di implementazione visibile in CRXDE Lite è soggetta a modifiche una volta che l’interfaccia utente diventa disponibile.

Badge badges

I badge sono posti sotto il nome di un membro per indicare il suo ruolo o la sua posizione nella comunità. I badge possono essere visualizzati come immagine o come nome. Quando viene visualizzato come immagine, il nome viene incluso come testo alternativo per l’accessibilità.

Per impostazione predefinita, i badge si trovano nell’archivio nei seguenti punti:

  • /libs/settings/community/badging/images

Se vengono memorizzati in una posizione diversa, dovrebbero essere letti e accessibili a tutti.

I distintivi sono differenziati in UGC a seconda che siano stati assegnati o siano stati ottenuti in base alle regole. Al momento, i badge assegnati vengono visualizzati come testo e quelli guadagnati come immagine.

Interfaccia utente per la gestione dei badge badge-management-ui

La console Badge per community consente di aggiungere distintivi personalizzati che possono essere visualizzati per un membro quando guadagnato (assegnato) o quando assume un ruolo specifico nella community (assegnato).

Badge assegnati assigned-badges

I badge basati sul ruolo vengono assegnati da un amministratore ai membri della community in base al loro ruolo all’interno della community.

I badge assegnati (e assegnati) sono archiviati nel SRP selezionato e non sono direttamente accessibili. Finché non sarà disponibile un’interfaccia utente grafica, l’unico modo per assegnare i badge basati sui ruoli consiste nell’utilizzare codice o cURL. Per le istruzioni cURL, vedere la sezione Assegnare e revocare i badge.

Nella versione sono inclusi tre badge basati sui ruoli:

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

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

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

    badge assegnati

Distintivi assegnati awarded-badges

I badge basati su premi vengono assegnati dal servizio di punteggio ai membri della community in base alle regole applicate alla loro attività nella community.

Affinché i distintivi vengano visualizzati come ricompensa per l’attività, è necessario che si verifichino due cose:

  • Il badge deve essere abilitato per il componente funzionalità.
  • Le regole per assegnazione punteggi e assegnazione badge devono essere applicate alla pagina (o al predecessore) in cui è posizionato il componente.

Nella versione sono inclusi tre badge basati su premi:

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

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

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

    distintivi assegnati

NOTE
Le regole di punteggio possono essere configurate per assegnare punti negativi ai post contrassegnati come inappropriati e quindi influenzare il valore del punteggio. Tuttavia, una volta ottenuto un distintivo, non verrà rimosso automaticamente a causa della riduzione del punto di punteggio o di modifiche alla regola di punteggio.
I badge assegnati possono essere revocati allo stesso modo dei badge assegnati. Consulta la sezione Assegnare e revocare i badge. I miglioramenti futuri includeranno un’interfaccia utente per la gestione dei badge dei membri.

Badge personalizzati custom-badges

I badge personalizzati possono essere installati utilizzando la Console badge e assegnati o specificati nelle regole di badge.

Se installati dalla console Badge, i badge personalizzati vengono replicati automaticamente nell’ambiente di pubblicazione.

Abilita punteggio enable-scoring

Il punteggio non è abilitato per impostazione predefinita. I passaggi di base per impostare e abilitare il punteggio e l’assegnazione dei distintivi sono i seguenti:

Consulta la sezione Test rapido per abilitare il punteggio per un sito community utilizzando le regole predefinite di punteggio e contrassegno per forum e commenti.

Applicare regole al contenuto apply-rules-to-content

Per abilitare il punteggio e i badge, aggiungere le proprietà scoringRules e badgingRules a qualsiasi nodo nella struttura del contenuto del sito.

Se il sito è già pubblicato, dopo aver applicato tutte le regole e abilitato i componenti, ripubblica il sito.

Le regole applicabili a un componente abilitato per i badge sono quelle per il nodo corrente o il suo predecessore.

Se il nodo è di tipo cq:Page (consigliato) e quindi si utilizza CRXDE|Lite, aggiungere le proprietà al nodo jcr:content.

Proprietà
Tipo
Descrizione
badgingRules
Stringa
un elenco di array di regole di badging
scoringRules
Stringa
un elenco di array di regole di punteggio
NOTE
Se una regola di punteggio sembra non avere alcun effetto sull’assegnazione dei badge, assicurati che non sia stata bloccata dalla proprietà scoringRules della regola di punteggio. Vedere la sezione con titolo Regole di assegnazione dei badge.

Abilita badge per componente enable-badges-for-component

Le regole di assegnazione e punteggio sono attive solo per le istanze dei componenti per i quali è stato abilitato il contrassegno modificando la configurazione del componente in modalità di creazione.

Una proprietà booleana, allowBadges, abilita/disabilita la visualizzazione dei badge per un'istanza del componente. È configurabile nella finestra di dialogo per modifica dei componenti per i componenti forum, QnA e commento tramite una casella di controllo etichettata Distintivi di visualizzazione.

Esempio: allowBadges per l’istanza del componente Forum example-allowbadges-for-forum-component-instance

enable-badges-component

NOTE
Qualsiasi componente può essere sovrapposto per visualizzare i badge utilizzando come esempio il codice HBS presente in forum, domande e commenti.

Regole punteggio scoring-rules

Le regole di punteggio sono alla base del punteggio per l’assegnazione dei badge.

Ogni regola di punteggio è un elenco di una o più regole secondarie. Le regole di punteggio vengono applicate al contenuto del sito community per identificare le regole da applicare quando i badge sono abilitati.

Le regole di punteggio vengono ereditate ma non aggiunte. Ad esempio:

  • Se la pagina2 contiene la regola di punteggio2 e la pagina padre1 contiene la regola di punteggio1.

  • Un’azione su un componente page2 richiama sia la regola1 che la regola2.

  • Se entrambe le regole contengono regole secondarie applicabili per lo stesso topic/verb:

    • Solo la sottoregola di rule2 influisce sul punteggio.
    • I punteggi di entrambe le sottoregole non vengono aggiunti.

In presenza di più regole di punteggio, i punteggi vengono mantenuti separatamente per ciascuna regola.

Le regole di punteggio sono nodi di tipo cq:Page con proprietà nel nodo jcr:content che specificano l'elenco di regole secondarie che lo definiscono.

I punteggi vengono memorizzati in SRP.

NOTE
Best practice: assegna un nome univoco a ogni regola di punteggio.
I nomi delle regole di punteggio devono essere univoci a livello globale; non devono terminare con lo stesso nome.
Esempio di cosa non fare:
/libs/settings/community/scoring/rules/site1/forums-scoring
/libs/settings/community/scoring/rules/site2/forums-scoring

Sottoregole punteggio scoring-sub-rules

Le sottoregole di punteggio contengono le proprietà che descrivono nel dettaglio i valori per la partecipazione alla community.

Ogni sottoregola di punteggio identifica:

  • Quali attività vengono tracciate?
  • Quale funzione specifica della community è coinvolta?
  • Quanti punti vengono assegnati?

Per impostazione predefinita, i punti vengono assegnati al membro che esegue un'azione, a meno che la regola secondaria non specifichi che il proprietario del contenuto riceve i punti ( forOwner).

Ogni regola secondaria può essere inclusa in una o più regole di punteggio.

Il nome della regola secondaria segue in genere il modello di utilizzo di un oggetto, oggetto e verbo. Ad esempio:

  • member-comment-create
  • membro-ricevente-voto

I substrati sono nodi di tipo cq:Page con proprietà nel nodo jcr:content che specificano i verbi e argomenti.

Proprietà
Tipo
Descrizione valore
VERB
Lungo
  • obbligatorio; il verbo corrisponde a un'azione evento
  • deve essere presente almeno una proprietà verbo
  • il verbo deve essere inserito in MAIUSCOLO
  • possono esistere più proprietà verbo, ma non duplicati
  • il valore è il punteggio da applicare per questo evento
  • il valore può essere positivo o negativo
  • un elenco di verbi supportati nella versione è disponibile nella sezione Argomenti e verbi
topics
Stringa
  • facoltativo; limita la regola secondaria ai componenti community identificati dagli argomenti dell’evento
  • se specificato : valore è una stringa con più valori di argomenti evento
  • un elenco di argomenti della versione è disponibile nella sezione Argomenti e verbi
  • l'impostazione predefinita viene applicata a tutti gli argomenti associati ai verbi
forOwner
Booleano
  • facoltativo; non pertinente quando il membro agisce sul contenuto di sua proprietà
  • se true, applica il punteggio al proprietario del contenuto su cui viene eseguita l’azione
  • se false, applica il punteggio al membro che intraprende un'azione
  • il valore predefinito è false
scoringType
Stringa
  • facoltativo; identifica il motore di punteggio
  • se "base", specifica il motore di assegnazione del punteggio in base alla quantità
    • incluso nella versione
  • se "avanzato", specifica il motore di punteggio in base alla qualità e alla quantità
  • il valore predefinito è "basic"

Regole e sottoregole di punteggio incluse included-scoring-rules-and-sub-rules

Nella versione sono incluse due regole di punteggio per la funzione forum (una per ogni componente Forum e Commenti della funzione 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-voting
      /libs/settings/community/scoring/rules/sub-rules/member-given-voting
      /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-voting
      /libs/settings/community/scoring/rules/sub-rules/member-given-voting
      /libs/settings/community/scoring/rules/sub-rules/member-is-moderated

Note:

  • Entrambi i nodi rules e sub-rules sono di tipo cq:Page.

  • subRules è un attributo di tipo String[] nel nodo jcr:content della regola.

  • sub-rules può essere condiviso tra varie regole di punteggio.

  • rules deve trovarsi in un percorso archivio con autorizzazione di lettura per tutti.

    • I nomi delle regole devono essere univoci indipendentemente dalla posizione.

Attivazione di regole di punteggio personalizzate activating-custom-scoring-rules

Eventuali modifiche o aggiunte apportate alle regole o alle sottoregole di punteggio nell’ambiente di authoring devono essere installate al momento della pubblicazione.

Regole di assegnazione dei badge badging-rules

Le regole di assegnazione dei badge collegano le regole di assegnazione dei punteggi ai badge specificando:

  • Regola punteggio
  • Punteggio necessario per ottenere un distintivo specifico

Le regole di assegnazione dei punteggi sono nodi di tipo cq:Page con proprietà nel nodo jcr:content che correlano le regole di assegnazione dei punteggi a punteggi e badge.

Le regole per i badge sono costituite da una proprietà thresholds obbligatoria che è un elenco ordinato di punteggi mappati ai badge. I punteggi devono essere ordinati in modo crescente. Ad esempio:

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

    • Un distintivo di bronzo è assegnato per aver guadagnato un punto.
  • 60|/libs/settings/community/badging/images/silver-badge/jcr:content/silver.png

    • Un distintivo d'argento viene assegnato quando sono stati accumulati 60 punti.
  • 80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

    • Un distintivo d'oro viene assegnato quando sono stati accumulati 80 punti.

Le regole di assegnazione dei punteggi sono associate alle regole di assegnazione dei punteggi, che determinano l’accumulo dei punti. Vedere la sezione con titolo Applica regole al contenuto.

La proprietà scoringRules di una regola di badge limita semplicemente le regole di punteggio che possono essere associate a quella particolare regola di badge.

NOTE
Best practice : crea immagini distintive univoche per ciascun sito AEM.

badging-rule-configuration

Proprietà
Tipo
Descrizione valore
soglie
Stringa

(obbligatorio) Stringa con più valori nel formato 'number|path'

  • number = score
  • | = carattere della linea verticale (U+007C)
  • path = percorso completo della risorsa immagine del badge

Le stringhe devono essere ordinate in modo che i numeri aumentino di valore e non venga visualizzato alcuno spazio tra il numero e il percorso.
Voce di esempio:
80|/libs/settings/community/badging/images/gold-badge/jcr:content/gold.png

badgingType
Stringa
(facoltativo) identifica il motore di punteggio come "di base" o "avanzato". Per informazioni sul motore di punteggio avanzato, vedere Punteggio avanzato e distintivi. Il valore predefinito è "basic".
scoringRules
Stringa
(facoltativo) Stringa con più valori per limitare la regola di assegnazione dei badge agli eventi di punteggio identificati dalle regole di assegnazione dei punteggi

Regole di assegnazione dei badge incluse included-badging-rules

Nella versione sono incluse due regole di assegnazione dei punteggi che corrispondono alle regole di assegnazione dei punteggi per forum e commenti.

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

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

Note:

  • rules nodi sono di tipo cq:Page.

  • rules deve trovarsi in un percorso archivio con autorizzazione di lettura per tutti.

    • I nomi delle regole devono essere univoci indipendentemente dalla posizione.

Attivazione di regole di assegnazione dei badge personalizzate activating-custom-badging-rules

Eventuali modifiche o aggiunte apportate alle regole di badge o alle immagini nell’ambiente di authoring devono essere installate al momento della pubblicazione.

Assegnare e revocare i badge assign-and-revoke-badges

I badge possono essere assegnati ai membri utilizzando la console membri o a livello di programmazione utilizzando i comandi cURL.

I seguenti comandi cURL mostrano ciò che è necessario per una richiesta HTTP per l’assegnazione e la revoca dei badge. Il formato di base è:

cURL -i -X POST -H intestazione -u firma -F operazione -F distintivo membro-profilo-url

intestazione = "Accept:application/json"
intestazione personalizzata da passare al server (obbligatoria)

accesso = administrator-id:password
ad esempio, admin:admin

operation = ":operation=social:assignBadge" OPPURE ":operation=social:deleteBadge"

badge = "badgeContentPath=badge-image-file"

badge-image-file = percorso del file di immagine del badge nell'archivio
ad esempio, /libs/settings/community/badging/images/moderator/jcr:content/moderator.png

member-profile-url = endpoint per il profilo del membro al momento della pubblicazione
ad esempio, https://<server>:<porta>/home/users/community/riley/profile.social.json

NOTE
member-profile-url:
  • È possibile fare riferimento a un'istanza di authoring se il servizio Tunnel è abilitato.
  • Può essere un nome casuale oscuro. Vedere Elenco di controllo protezione relativo all'ID autorizzabile.

Esempi: examples

Assegna un badge moderatore 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

Revoca di un distintivo silver assegnato 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
L’utilizzo di cURL per assegnare e revocare i badge funziona per qualsiasi immagine del badge, ma quando viene assegnata invece che ottenuta, viene contrassegnata come badge assegnati e gestita di conseguenza.

Punteggio e badge per i componenti personalizzati scoring-and-badges-for-custom-components

È possibile creare regole di punteggio e contrassegno per i componenti personalizzati associando gli argomenti dell’evento creati per il componente ai verbi.

Argomenti e verbi topics-and-verbs

Quando i membri interagiscono con le funzionalità delle community, vengono inviati eventi che possono attivare listener asincroni, come notifiche e punteggi.

L'istanza SocialEvent di un componente registra gli eventi come actions che si verificano per un topic. SocialEvent include un metodo per restituire un verb associato all'azione. Esiste una relazione n-1 tra actions e verbs.

Per i componenti community consegnati, le tabelle seguenti descrivono i verbs definiti per ogni topic disponibile nelle sottoregole di punteggio.

NOTE
Una nuova proprietà booleana, allowBadges, abilita/disabilita la visualizzazione dei badge per un'istanza del componente. È configurabile nelle finestre di dialogo di modifica dei componenti aggiornate tramite una casella di controllo con etichetta Distintivi visualizzati.

Componente Calendario
SocialEvent topic= com/adobe/cq/social/calendar

Verbo
Descrizione
POST
il membro crea un evento calendario
AGGIUNGI
commenti dei membri su un evento calendario
AGGIORNA
evento calendario o commento del membro modificato
ELIMINA
l'evento o il commento del calendario del membro viene eliminato

Componente Commenti
SocialEvent topic= com/adobe/cq/social/comment

Verbo
Descrizione
POST
il membro crea un commento
AGGIUNGI
risposte dei membri al commento
AGGIORNA
commento del membro modificato
ELIMINA
commento del membro eliminato

Componente Libreria File
SocialEvent topic= com/adobe/cq/social/fileLibrary

Verbo
Descrizione
POST
il membro crea una cartella
ALLEGA
membro carica un file
AGGIORNA
il membro aggiorna una cartella o un file
ELIMINA
il membro elimina una cartella o un file

Componente forum
SocialEvent topic= com/adobe/cq/social/forum

Verbo
Descrizione
POST
membro crea argomento forum
AGGIUNGI
risposte dei membri all'argomento forum
AGGIORNA
l'argomento del forum o la risposta del membro è stata modificata
ELIMINA
l'argomento del forum o la risposta del membro è stata eliminata

Componente diario
SocialEvent topic= com/adobe/cq/social/journal

Verbo
Descrizione
POST
un membro crea un articolo di blog
AGGIUNGI
commenti dei membri su un articolo del blog
AGGIORNA
articolo del blog o commento di un membro è stato modificato
ELIMINA
l'articolo o il commento del blog del membro è stato eliminato

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

Verbo
Descrizione
POST
il membro crea una domanda di controllo qualità
AGGIUNGI
il membro crea una risposta QnA
AGGIORNA
domanda o risposta QnA del membro modificata
SELEZIONA
risposta del membro selezionata
DESELEZIONA
la risposta del membro è deselezionata
ELIMINA
la domanda o la risposta QnA del membro viene eliminata

Componente recensioni
SocialEvent topic= com/adobe/cq/social/review

Verbo
Descrizione
POST
il membro crea la revisione
AGGIORNA
revisione del membro modificata
ELIMINA
revisione del membro eliminata

Componente valutazione
SocialEvent topic= com/adobe/cq/social/tally/rating

Verbo
Descrizione
AGGIUNGI VALUTAZIONE
il contenuto dell'utente è stato rivalutato
RIMUOVI VALUTAZIONE
il contenuto dell'utente non è stato valutato correttamente

Componente Votazione
SocialEvent topic= com/adobe/cq/social/tally/voting

Verbo
Descrizione
AGGIUNGI VOTAZIONE
il contenuto del membro è stato votato
RIMUOVI VOTAZIONE
il contenuto del membro non è stato votato

Componenti abilitati per moderazione
SocialEvent topic= com/adobe/cq/social/moderation

Verbo
Descrizione
RIFIUTA
contenuto dell'utente negato
SEGNALA COME INAPPROPRIATO
il contenuto del membro è contrassegnato
ANNULLA SEGNALAZIONE COME INAPPROPRIATO
il contenuto del membro non è contrassegnato
ACCETTA
il contenuto del membro è approvato dal moderatore
CHIUDI
il membro chiude il commento alle modifiche e alle risposte
APRI
membro riapre commento

Eventi dei componenti personalizzati custom-component-events

Per un componente personalizzato, viene creata un'istanza di SocialEvent per registrare gli eventi del componente come actions che si verificano per topic.

Per supportare il punteggio, SocialEvent deve eseguire l'override del metodo getVerb() in modo che venga restituito un verb appropriato per ogni action. Il verb restituito per un'azione può essere uno usato comunemente (ad esempio POST) o uno specializzato per il componente (ad esempio ADD RATING). Esiste una relazione n-1 tra actions e verbs.

Risoluzione dei problemi troubleshooting

I badge non vengono visualizzati badges-are-not-appearing

Se sono state applicate regole di punteggio e badge al contenuto del sito web, ma i badge non vengono assegnati per alcuna attività, assicurati che i badge siano stati abilitati per l’istanza di quel componente.

Vedere Abilitare i badge per il componente.

La regola punteggio non ha alcun effetto scoring-rule-has-no-effect

Se al contenuto del sito web sono state applicate regole di punteggio e badge e questi vengono assegnati per alcune azioni, ma non per altre, verifica che la regola di badge non abbia limitato le regole di punteggio a cui si applica.

Vedere la proprietà scoringRules di Regole di assegnazione dei badge.

Tipo sensibile a maiuscole e minuscole case-sensitive-typo

La maggior parte delle proprietà e dei valori, in particolare i verbi, fanno distinzione tra maiuscole e minuscole. I verbi devono essere tutti maiuscoli se utilizzati in una sottoregola di punteggio.

Se la funzione non funziona come previsto, assicurati che i dati siano stati immessi correttamente.

Test rapido quick-test

È possibile provare rapidamente a assegnare punteggi e contrassegni utilizzando il sito Esercitazione introduttiva (coinvolgimento):

  • Accedi a CRXDE Lite durante la creazione.

  • Passa alla pagina base:

    • /content/sites/engagement/en/jcr:content
  • Aggiungi la proprietà badgingRules:

    • Nome: badgingRules
    • Tipo: String
    • Seleziona Più
    • Seleziona Aggiungi
    • Immetti /libs/settings/community/badging/rules/forums-badging
    • Seleziona +
    • Immetti /libs/settings/community/badging/rules/comments-badging
    • Seleziona OK
  • Aggiungere la proprietà scoringRules:

    • Nome: scoringRules
    • Tipo: String
    • Seleziona Più
    • Seleziona Aggiungi
    • Immetti /libs/settings/community/scoring/rules/forums-scoring
    • Seleziona +
    • Immetti /libs/settings/community/scoring/rules/comments-scoring
    • Seleziona OK
  • Seleziona Salva tutto.

test-scoring-badging

Quindi, assicurati che i componenti forum e commenti consentano la visualizzazione dei badge:

  • Di nuovo utilizzando CRXDE Lite.

  • Passa al componente forum

    • /content/sites/engage/en/forum/jcr:content/content/primary/forum
  • Aggiungi la proprietà booleana allowBadges, se necessario, e assicurati che sia true.

    • Nome: allowBadges
    • Tipo: Boolean
    • Valore: true

test-forum-component

Successivamente, ripubblica il sito della community.

Infine,

  • Individua il componente nell’istanza di pubblicazione.

  • Accedi come membro della community (ad esempio, weston.mccall@dodgit.com / password).

  • Post un nuovo argomento forum.

  • Affinché il badge sia visibile, è necessario aggiornare la pagina.

    • Esci e accedi come membro diverso della community (ad esempio: aaron.mcdonald@mailinator.com/password).
  • Selezionare il forum.

Questo dovrebbe far sì che il membro della community riceva un distintivo in bronzo visibile con il suo post sul forum, poiché la prima soglia della regola di assegnazione del badge ai forum è un punteggio di 1.

bronzebadge

Informazioni aggiuntive additional-information

Ulteriori informazioni sono disponibili nella pagina Nozioni fondamentali su punteggio e distintivi per gli sviluppatori.

Per informazioni sul motore di punteggio avanzato, vedere Punteggio avanzato e distintivi.

La classifica configurabile componente e funzione semplifica la visualizzazione dei membri e dei relativi punteggi in un sito community.

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