Revisão Anual do 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 curtidas

Algumas boas melhorias que poderiam ser feitas neste plugin, espero que esteja compartilhando no lugar certo? Me avisem se não estiver.

  • Capacidade de excluir funcionários da lista de usuários, mas ainda incluir os tópicos que eles criam
  • Capacidade de excluir TL4 da lista de usuários (e como acima, ainda incluir os tópicos que eles criam)
  • Capacidade de criar várias postagens de revisão para que possamos ter uma para membros TL4 (usamos isso para funcionários) e membros da equipe, e depois ter uma postagem apenas para membros da comunidade
5 curtidas

Olá!
Instalei o plugin este ano, mas mesmo ele estando habilitado, não sei quando a avaliação é postada, ou se devo fazer algo mais para publicá-la.

Alguém pode me informar?
Muito obrigado!!

2 curtidas

Saudações @Ayelen_Rives,

Ao inspecionar o console administrativo, você será apresentado ao seguinte auxílio visual:

Uma análise mais aprofundada dentro do plugin intitulado ‘plugin:discourse-yearly-review’ revela outro exemplo ilustrativo:

É imperativo que, ao configurar as definições, você designe a categoria de publicação da revisão anual para a equipe ou outra categoria restrita. Isso garante uma revisão preliminar antes de permitir uma visibilidade mais ampla.

6 curtidas

Muito obrigado, Aaron!

Inesperadamente, não vejo essas mensagens no console administrativo, nem nas configurações:

A categoria de publicação é Staff, então descobrirei em 1º de janeiro se ela foi criada.

Obrigado novamente e boas festas!

2 curtidas

Feliz Ano Novo! :partying_face:

O plugin não rodou aqui em dois fóruns. E agora mostra a mensagem para 1º de janeiro de 2025. Estranho.

Eu o executei manualmente no console do Rails em um fórum e ele retornou em inglês, não em alemão, que é o idioma do fórum.

Algo está/estava errado aqui.

2 curtidas

Ainda não chegou aqui no meta também. Segui o conselho e defini para publicar primeiro em #staff, que acho que é a única diferença em relação ao ano passado?

Eu esperava que aparecesse magicamente com um pouco de paciência, mas talvez eu esteja otimista.

2 curtidas

Não alterei nada na configuração, nem mesmo o fórum para verificá-lo primeiro como membro da equipe e depois movê-lo,

No meu segundo fórum ainda não há nada. E são 11:24 aqui.

Parece que algo está quebrado.

É necessária uma flag de idioma ao executá-lo manualmente? Eu também não quero traduzir tudo no segundo fórum. :wink:

1 curtida

Eu estaria tentado a deixar um pouco mais para ver se há um atraso no trabalho em segundo plano, mas também não tenho certeza por que acioná-lo manualmente daria um resultado diferente de ter o trabalho em segundo plano executado por conta própria?

Podemos precisar de alguém mais experiente para opinar.

3 curtidas

O meu não rodou automaticamente, mas acabei de rodar manualmente e parece ter funcionado bem, embora eu não quisesse que fosse em um idioma diferente.

1 curtida

Hoje de manhã, o Sidekiq me informou que a revisão anual seria agendada em 50 minutos, o que seria por volta das 11h no horário local. Eu não esperei, porém, e fiz manualmente. Não houve problemas e a linguagem estava correta também.

Depois disso, fui forçado a rebaixar meus moderadores e fazer o Sidekiq novamente porque eles estavam muito chateados — eu excluía a equipe… Eu não podia permitir a equipe porque, como um administrador muito ativo, eu dominaria totalmente as listas, então escolhi o caminho mais rápido.

Bem, essa é outra história, mas poderíamos ter um pouco mais de liberdade para incluir ou excluir grupos?

2 curtidas

Santo… No outro fórum, o tópico de 2023 está lá… 14:31, horário local. E em alemão. Então, ainda é um mistério…

1 curtida

Eu acionei o nosso do Sidekiq no final. :rocket:

2 curtidas

Nos meus sites o tópico foi gerado sem que eu tivesse que executá-lo manualmente no sidekiq.

Estas são ótimas sugestões. Obrigado! É interessante ouvir sobre mais casos de uso para este plugin. Analisaremos isso mais de perto em breve, com base na experiência deste ano, para ver o que podemos fazer para melhorá-lo antes do próximo ano!

Enquanto isso, para esta rodada, você pode editar o post assim que ele for publicado, como achar melhor.

Um comportamento interessante que notei é que, se você excluir o tópico gerado, ele criará um novo no dia seguinte, desde que o plugin esteja ativado. Assim, você pode brincar com as configurações e gerar várias versões do tópico de revisão anual, copiar o texto delas e, em seguida, publicar novos tópicos você mesmo, como achar melhor. Se você tiver acesso a /sidekiq, poderá encontrar o job lá e executá-lo imediatamente.

2 curtidas

E é por isso que uma dica para publicar a revisão primeiro em uma categoria mais privada, ou seja, Staff, e depois movê-la para pública, na verdade não é um bom conselho :wink: A menos que um administrador queira manter duas versões.

Nada demais, porém.

1 curtida

Olá! Felizmente o plugin disparou sozinho em 1º de janeiro sem nenhum problema! :raised_hands:

Venho agora com algumas perguntas sobre como funciona, pois alguns relatórios (como Tópicos Mais Criados e Likes Mais Dadas) mostram resultados diferentes da página de Usuários para o mesmo período.

Por exemplo, para Tópicos Mais Criados, a página de Usuários mostra primeiro o usuário “S”:

E a revisão anual mostra primeiro o usuário “C” e nunca mostra o usuário “S” na tabela:

(Desculpe, tive que borrar as imagens por confidencialidade da empresa, mas acho que fica mais claro se eu as adicionar. Além disso, a tabela está quebrada, você pode ignorá-la :upside_down_face:)

Alguém sabe por que isso pode estar acontecendo? Outros relatórios mostram exatamente as mesmas informações, mas Tópicos Mais Criados e Likes Mais Dadas mostram usuários diferentes.

Muito obrigado pela ajuda! :100:

1 curtida

Uau, eu não sabia que era isso que acontecia. Acabei de testar e você está certo! Este é um bug. Ele não deveria criar um segundo tópico de avaliação anual se um já existe.

Passos para reprodução:

  1. Assim que o tópico de avaliação anual for criado, mova-o para uma categoria diferente
  2. Acione a criação do tópico de avaliação anual via /sidekiq
  3. Um segundo tópico de avaliação anual é criado.

Se você for afetado por este problema, sugiro desabilitar o plugin. Vamos analisar este plugin em breve para corrigir bugs e melhorá-lo antes do próximo ano.

1 curtida

:thinking: Quão persistente é isso? Se eu continuar excluindo, ainda estaremos dançando em junho? :joy:

E isso significa que não preciso entrar em contato com o suporte para gerar retroativamente a postagem para o meu site? Ela simplesmente aparecerá amanhã?

1 curtida

Realmente. Funciona via sidekiq todos os dias.

1 curtida

Eu esperaria que parasse no final de janeiro.

2 curtidas