Bilan annuel de Discourse

:discourse2: Summary Discourse Yearly Review creates a topic on January 1st that summarizes the previous year’s forum activity. (See our examples here on Meta - year-in-review)
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-yearly-review
:open_book: Install Guide How to install plugins in Discourse

Initial Setup

Head to your /admin/plugins page to click the discourse-yearly-review :gear: Settings button:

Yearly Review settings

  1. Enter categories to pull data from into the yearly review categories setting. If left blank, it will default to the top 5 public categories.

  2. Using the yearly review publish category setting, choose a destination category for the review to be posted.

    :bulb: It is highly recommended to set the yearly review publish category to the staff or other private category so that you can view the topic before making it public. You might also like to edit it first.

  3. Then, enable the plugin using the yearly review enabled setting.

Features

As you can see at 2022: The Year in Review, data is displayed in two sections - users and topics.

The users section includes:

  • Most Time Reading
  • Most Topics Created
  • Most Replies Created
  • Most Replied to
  • Most Likes Given
  • Most Likes Received
  • Most Visits
  • Users who have been granted a featured badge (the badge is set by the yearly review featured badge Site Setting

The topics section includes:

  • Most Read
  • Most Liked
  • Most Replied to
  • Most Popular
  • Most Bookmarked

Generating the Yearly Review

The plugin sets thresholds for deciding which topics to display. There need to be a minimum of 10 likes or replies, 5 bookmarks, a score of 10, or one hour’s read time before a topic will be displayed. The topic is published automatically through a background job. The job checks that the plugin is enabled and that it is within the first 31 days of the first month of the year. It then checks to see if a topic with the title yearly_review.topic_title has already been published by the system user. If all checks pass, the topic is published to the category set in the yearly review publish category setting. If this is not configured, the topic will be published to the Uncategorized category.

Extra Options

Yearly review categories

Categories used in this section are those set in the yearly review categories Site Setting. If this setting is not configured, the 5 best public categories from the forum will be chosen. “Best” is determined by the category topics_year count.

Sub-categories of any categories specified in the yearly review categories Site Setting will not be included in the yearly review report. If you want sub-categories to be included in the yearly review report, you will need to explicitly specify them in the yearly review categories Site Setting.

Yearly review exclude staff

The plugin has a yearly review exclude staff setting. It is enabled by default so that staff members are excluded from the users section and topics created by staff are excluded from the topics section.

Yearly review featured badge

A featured badge can be set via the yearly review featured badge setting. A maximum of 15 badge users are displayed. If more than 15 users have been granted this badge, a link to the badge’s page is displayed. If the yearly review featured badge is not configured, this section will not be displayed.

Running the Yearly Review manually

If you don’t want to wait for the background job, you can publish the topic from the rails console with:

Jobs::YearlyReview.new.execute(force: true)

If you want to generate a report for a specific year just add review_year: 'year', e.g.:

Jobs::YearlyReview.new.execute(force: true, review_year: '2021')

:discourse2: Hosted by us? If you would like to run the Yearly Review manually you can contact us at team@discourse.org and we’ll be happy to arrange that for you.

Settings

Name Description
yearly review enabled Enable the yearly review.
yearly review categories Public categories to pull topics from. The top 5 categories from this group will be selected. If left blank will default to the top 5 public categories.
yearly review exclude staff Exclude Staff from user stats.
yearly review include user stats Add user-identifying stats to the first post of the review topic.
yearly review include private categories Include user activity from private or read-restricted categories in the review.
yearly review publish category The category the review will be published in.
yearly review featured badge Enter the full badge name. Can be left blank.

:discourse2: Hosted by us? This plugin is available on all of our hosting tiers Yearly Review | Discourse - Civilized Discussion


Known Issues

  • The data is displayed in HTML tables. Tables are wrapped in div tags that have data-review-topic-users="true' and data-review-featured-topics="true" attributes. This allows the tables to be styled when they are displayed on Discourse. The styles are not copied when emails for the topics are created. Emails sent out for the topic don’t look great.

  • The first post in the generated topic is ≈ 40,000 characters due to using HTML. As a result, it cannot be edited unless you first increase the body character limit above this (see Body is limited to 32000 characters; you entered 43659)

  • emojis in titles are not rendered in the featured topic links

Last edited by @nathank 2025-01-06T21:23:15Z

Check documentPerform check on document:
88 « J'aime »

Quelques améliorations intéressantes qui pourraient être apportées à ce plugin, j’espère que je partage cela au bon endroit ? Faites-moi savoir si ce n’est pas le cas.

  • Possibilité d’exclure le personnel de la liste des utilisateurs, tout en incluant les sujets qu’ils créent
  • Possibilité d’exclure les TL4 de la liste des utilisateurs (et comme ci-dessus, inclure toujours les sujets qu’ils créent)
  • Possibilité de créer plusieurs publications de révision afin que nous puissions en avoir une pour les TL4 (nous l’utilisons pour les employés) et les membres du personnel, puis avoir une publication réservée aux membres de la communauté.
5 « J'aime »

Salut !
J’ai installé le plugin cette année, mais même s’il est activé, je ne sais pas quand la critique est publiée, ou si je dois faire autre chose pour la publier.
Quelqu’un peut-il me le faire savoir ?
Merci beaucoup !!

2 « J'aime »

Salutations @Ayelen_Rives,

Après avoir examiné la console d’administration, vous serez présenté avec l’aide visuelle suivante :

Un examen plus approfondi du plugin intitulé ‘plugin:discourse-yearly-review’ révèle un autre exemple illustratif :

Il est impératif que lors de la configuration des paramètres, vous désigniez la catégorie de publication de la revue annuelle soit au personnel, soit à une autre catégorie restreinte. Cela garantit un examen préliminaire avant d’autoriser une visibilité plus large.

6 « J'aime »

Merci beaucoup, Aaron !

De manière inattendue, je ne vois pas ces messages dans la console d’administration, ni dans les paramètres :

La catégorie de publication est Staff, donc je découvrirai le 1er janvier si elle est créée.

Merci encore et bonnes fêtes !

2 « J'aime »

Bonne année ! :partying_face:

Le plugin n’a pas fonctionné ici dans deux forums. Et maintenant, il affiche le message pour le 1er janvier 2025. Étrange.

Je l’ai exécuté manuellement dans la console Rails dans un forum et il est revenu en anglais, pas en allemand, la langue du forum.

Quelque chose ne va pas/n’allait pas ici.

2 « J'aime »

Il n’est pas encore arrivé ici non plus sur meta. J’ai suivi le conseil et l’ai configuré pour publier d’abord sur #staff, ce qui, je pense, est la seule différence par rapport à l’année dernière ?

J’espérais qu’il apparaîtrait comme par magie avec un peu de patience, mais je suis peut-être optimiste.

2 « J'aime »

Je n’ai rien changé dans la configuration, pas même le forum pour le vérifier d’abord en tant que membre du personnel et ensuite le déplacer,

Dans mon deuxième forum, il n’y a toujours rien. Et il est 11h24 ici.

On dirait que quelque chose est cassé.

Faut-il un indicateur de langue pour l’exécuter manuellement ? Je ne veux pas tout traduire dans le deuxième forum non plus. :wink:

1 « J'aime »

Je serais tenté de laisser cela un peu plus longtemps pour voir s’il y a un délai dans le travail d’arrière-plan, mais je ne suis pas non plus sûr pourquoi le déclencher manuellement donnerait un résultat différent de celui du travail d’arrière-plan qui s’exécute tout seul ?

Nous aurons peut-être besoin de quelqu’un de plus compétent pour intervenir.

3 « J'aime »

Le mien ne s’est pas exécuté automatiquement, mais je l’ai juste exécuté manuellement et cela semble avoir fonctionné correctement, bien que je ne le voulais pas dans une langue différente.

1 « J'aime »

Ce matin, sidekiq m’a indiqué que la revue annuelle serait programmée dans 50 minutes, ce qui correspondrait à environ 11h, heure locale. Je n’ai pas attendu, mais je l’ai fait manuellement. Aucun problème et la langue était correcte aussi.

Après cela, j’ai été contraint de rétrograder mes modérateurs et de refaire sidekiq car ils étaient vraiment contrariés — j’avais exclu le personnel… Je ne pouvais pas autoriser le personnel car alors moi, en tant qu’administrateur très actif, j’aurais totalement dominé les listes, j’ai donc choisi la voie la plus rapide.

Enfin, c’est une autre histoire, mais pourrions-nous avoir un peu plus de liberté pour inclure ou exclure des groupes ?

2 « J'aime »

Sainte m… Sur l’autre forum, le fil de discussion de 2023 est là… 14h31 heure locale. Et en allemand. Donc, toujours mystérieux…

1 « J'aime »

Je l’ai déclenché depuis Sidekiq finalement. :rocket:

2 « J'aime »

Sur mes sites, le sujet a été généré sans que j’aie à l’exécuter manuellement dans sidekiq.

Ce sont d’excellentes suggestions. Merci ! Il est intéressant d’entendre parler de plus de cas d’utilisation pour ce plugin. Nous allons examiner cela de plus près bientôt, en nous basant sur l’expérience de cette année, pour voir ce que nous pourrions faire pour l’améliorer avant l’année prochaine !

En attendant, pour cette fois, vous pouvez modifier le message une fois qu’il est publié, comme bon vous semble.

Un comportement intéressant que j’ai remarqué est que si vous supprimez le sujet généré, il en créera un nouveau le lendemain, tant que le plugin est activé. Vous pourriez donc jouer avec les paramètres et générer plusieurs versions du sujet de révision annuelle, en copier le texte, puis publier vous-même de nouveaux sujets comme bon vous semble. Si vous avez accès à /sidekiq, vous pouvez trouver le travail là-bas et l’exécuter immédiatement.

2 « J'aime »

Et c’est pourquoi un conseil pour publier d’abord la critique dans une catégorie plus privée, c’est-à-dire le personnel, puis la déplacer vers le public, n’est en fait pas un très bon conseil :wink: À moins qu’un administrateur ne veuille conserver deux versions.

Ce n’est pas grave, cependant.

1 « J'aime »

Salut ! Heureusement, le plugin s’est déclenché le 1er janvier sans aucun problème ! :raised_hands:

Je viens maintenant avec quelques questions sur son fonctionnement car certains rapports (comme “Most Topics” et “Most likes given”) montrent des résultats différents de la page “Users” pour la même période.

Par exemple, pour Most topics, la page “Users” montre d’abord l’utilisateur “S” :

Et le “Yearly review” montre d’abord l’utilisateur “C” et ne montre jamais l’utilisateur “S” dans le tableau :

(Désolé, je dois flouter les images pour des raisons de confidentialité d’entreprise, mais je pense que c’est plus clair si je les ajoute. De plus, le tableau est cassé, vous pouvez l’ignorer :upside_down_face:)

Quelqu’un sait pourquoi cela pourrait se produire ? D’autres rapports montrent exactement les mêmes informations, mais “Most topics” et “Most likes given” montrent des utilisateurs différents.

Merci beaucoup pour votre aide ! :100:

1 « J'aime »

Whoa, je n’étais pas au courant que c’était ce qui se passait. Je viens de le tester et vous avez raison ! C’est un bug. Il ne devrait pas créer un deuxième sujet d’examen annuel si un existe déjà.

Étapes de reproduction :

  1. une fois que le sujet d’examen annuel est créé, déplacez-le dans une catégorie différente
  2. déclencher la création du sujet d’examen annuel via /sidekiq
  3. un deuxième sujet d’examen annuel est créé.

Si vous êtes confronté à ce problème, je vous suggère de désactiver le plugin. Nous allons examiner ce plugin bientôt pour corriger les bugs et l’améliorer avant l’année prochaine.

1 « J'aime »

:thinking: Quelle est sa persistance ? Si je continue à le supprimer, continuerons-nous la danse en juin ? :joy:

Et cela signifie-t-il que je n’ai pas besoin de contacter le support pour générer rétroactivement le message pour mon site ? Il apparaîtra simplement demain ?

1 « J'aime »

Vraiment. Il fonctionne via Sidekiq tous les jours.

1 « J'aime »

J’espérerais que cela s’arrête fin janvier.

2 « J'aime »