I think I bought this up way back when I first started testing the platform.
Will there ever be a way to know how many people are subscribing (watching) a particular topic?
I am being asked for this information more often these days.
I think I bought this up way back when I first started testing the platform.
Will there ever be a way to know how many people are subscribing (watching) a particular topic?
I am being asked for this information more often these days.
This seems unlikely to ever be added as visible to non-administrators.
The freedom of individual users to choose how they want to consume the forum is important, and giving special consideration to Watching a topic by making the number visible to everyone is likely to create bad behavior patterns. (Number Go Up Syndrome is very powerful.)
You should be able to take a Data Explorer query that gets this data and mark it as runnable by moderators or employees, if that’s who the requests are coming from.
We would never want this for non-admins. I will try this with the DE.
Was this ability ever added to Discourse reporting?
Ci sono stati aggiornamenti a questo?
Ciao Tom,
Questo non è stato aggiunto come report DE predefinito. Tuttavia, ho trovato un argomento che fornisce una query DE di base per estrarre queste informazioni, forse può essere utile:
Ciao Mark,
Grazie. Quindi da questo sembra che non possa eseguire questa funzione a livello di argomento. È corretto?
Tom,
No, puoi ottenere tali informazioni a livello di argomento scambiando ‘topic’ con ‘category’ in questo modo:
SELECT
COUNT(topic_id)
FROM
topic_users
WHERE
notification_level = 3
Di nuovo, questa è una query molto basilare che restituisce solo un conteggio totale di osservatori da… in questo caso… tutti gli argomenti. Se desideri specificare un argomento particolare, potresti aggiungerlo alla clausola WHERE, ad esempio:
WHERE
notification_level = 3
AND topic_id = 29
Questo è fantastico!
Grazie!
Questo è molto utile, grazie @MarkDoerr. Ho modificato la query per segnalare tutti e quattro i livelli di notifica in un unico passaggio e per accettare un array di topic_id se necessario.
La tabella di output completa della griglia non è bella ma contiene tutte le informazioni di cui ho bisogno.
modifica: ovviamente non appena ho pubblicato, Discourse mi ha gentilmente mostrato sei collegamenti con altri modi per risolvere questo problema! Continua la query!
SELECT
topic_id,
notification_level,
COUNT(CASE WHEN notification_level = 0 THEN topic_id END) AS Muted_0,
COUNT(CASE WHEN notification_level = 1 THEN topic_id END) AS Normal_1,
COUNT(CASE WHEN notification_level = 2 THEN topic_id END) AS Tracking_2,
COUNT(CASE WHEN notification_level = 3 THEN topic_id END) AS Watching_3
FROM
topic_users
WHERE
topic_id IN (9831, 9572, 9424, 7567) -- Aggiungi qui i tuoi topic_id
GROUP BY
topic_id, notification_level