Connaître le nombre de spectateurs

Je pense que je l’ai soulevé bien avant, lorsque j’ai commencé à tester la plateforme.
Y aura-t-il un moyen de savoir combien de personnes s’abonnent (regardent) un sujet particulier ?

On me demande de plus en plus souvent cette information ces jours-ci.

2 « J'aime »

Cela semble peu probable d’être ajouté à l’avenir en tant que visible pour les non-administrateurs.

La liberté des utilisateurs individuels de choisir comment ils souhaitent consulter le forum est importante, et accorder une attention particulière au suivi d’un sujet en rendant le nombre visible pour tous risque de créer des comportements problématiques. (Le syndrome « Les nombres montent » est très puissant.)

Vous devriez pouvoir créer une requête Data Explorer qui récupère ces données et la marquer comme exécutable par les modérateurs ou les employés, si ce sont eux qui font les demandes.

3 « J'aime »

Nous ne voudrions jamais cela pour les non-administrateurs. Je vais essayer cela avec le DE.

2 « J'aime »

Cette fonctionnalité a-t-elle déjà été ajoutée aux rapports de Discourse ?

Y a-t-il eu des mises à jour à ce sujet ?

Salut Tom,

Ceci n’a pas été ajouté comme rapport DE par défaut. Cependant, j’ai trouvé un sujet qui fournit une requête DE de base pour extraire ces informations, peut-être que cela vous sera utile :

2 « J'aime »

Salut Mark,

Merci. Donc, d’après cela, il semble que je ne puisse pas effectuer cette fonction au niveau du sujet. Est-ce correct ?

Tom,

Non, vous pouvez obtenir ces informations au niveau du sujet en remplaçant « topic » par « category » comme ceci :

SELECT 
  COUNT(topic_id)
FROM 
  topic_users 
WHERE 
  notification_level = 3

Encore une fois, il s’agit d’une requête très basique qui renvoie simplement un nombre total de spectateurs de… dans ce cas… tous les sujets. Si vous souhaitez spécifier un sujet particulier, vous pouvez l’ajouter à la clause WHERE, par exemple :

WHERE 
  notification_level = 3
  AND topic_id = 29
8 « J'aime »

C’est super !

Merci !

1 « J'aime »

C’est très utile, merci @MarkDoerr. J’ai modifié la requête pour rapporter les quatre niveaux de notification en une seule passe, et pour prendre un tableau de topic_id si nécessaire.
Le tableau de sortie complet n’est pas joli mais contient toutes les informations dont j’ai besoin.

edit : bien sûr, dès que j’ai posté, Discourse m’a gentiment montré six liens avec d’autres façons de résoudre ce problème ! Continuez à chercher !

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) -- Ajoutez vos topic_ids ici
GROUP BY
  topic_id, notification_level
1 « J'aime »