Ciao Team,
L’azienda per cui lavoro dispone di un pacchetto Discourse ospitato sia per clienti interni che esterni.
In qualità di amministratore del forum, ho alcune funzioni di reporting specifiche da eseguire per generare report sull’attività degli utenti bi-settimanali, mensili e annuali.
I periodi di reporting fissi (Tutto il tempo, Anno, Trimestre, Mese, Settimana e Giorno) sono utilizzabili, tuttavia sono tutti collegati alla Data corrente. Di conseguenza, devo eseguire report con intervallo di date specifico 01 Gennaio 20XX al 31 Dicembre 20XX e farlo utilizzando l’API di ricerca diretta e il comando Curl.
Il reporting per utente singolo di categorie o di un intervallo di tempo personalizzato è semplice, tuttavia il divertimento inizia quando tento di utilizzare l’opzione group_messages: nome_gruppo o più opzioni nel comando Curl.
Il comando di base corrente che utilizzo per tutte le mie ricerche è:
curl -i -sS -X GET -G “https://discuss.domainname.com/search.json” --data-urlencode
‘q=subject @username #questions after:2021-12-31’
| tail -n 1
| jq .topics
| sed “s|: "|:\"|g”
| grep slug
| cut -d “"” -f4
Quindi i risultati vengono elaborati con Bash, Awk, ecc. in un file .CSV per una facile importazione in Google Sheets.
Nei documenti di Ricerca, a quanto pare è possibile utilizzare più opzioni all’interno di ciascuna categoria di Opzioni, quindi potrei avere in:title in:likes in:seen ecc. tuttavia non riesco a ottenere più di un in:option per produrre una ricerca valida.
La documentazione menziona l’uso di group_messages: nome_gruppo, tuttavia se utilizzassi quell’opzione nella query Curl sopra, ottengo zero risultati e ho provato con molti dei Gruppi sul nostro forum.
Idealmente, vorrei eseguire ricerche Curl per ottenere i seguenti report:
piccolo_nome_team | Argomenti_Creati | Risposte_Inviate | Intervallo_Date
grande_nome_team | Argomenti_Creati | Risposte_Inviate | Intervallo_Date
Qualcuno può darmi qualche indicazione su cosa potrei star sbagliando o suggerire un metodo migliore?
Saluti, DDBM001.