Plugin ActivityPub

Ah, c’est une bonne nouvelle ! Oui, je suppose que vous avez raison de suivre quelqu’un qui publie sur un forum, mais il pourrait y avoir la fonctionnalité de publier sur le fediverse et pas dans un forum. NodeBB, par exemple, place tout le contenu fedivers en dehors des communautés dans une catégorie « Non classé », donc si vous publiez là-bas, c’est à peu près comme publier sur Mastodon. Mbin fait également quelque chose de similaire, ils ont commencé comme un agrégateur de liens et ont ajouté un onglet « Microblogging ». Je comprends que ce n’est pas dans le champ d’application de Discourse pour le moment, merci d’avoir clarifié cela !

2 « J'aime »

Il y a des gens fous (comme moi) qui veulent utiliser Discourse comme leur foyer principal dans le Fediverse. Je veux publier vers le Fediverse uniquement via Discourse.

Ne devrions-nous pas soutenir les gens qui veulent utiliser Discourse comme leur solution de « travail au grand jour » ou de « quelque chose de mieux qu’un blog » ?

Puisque la mise en œuvre des souhaits des utilisateurs ne rapporte rien, avez-vous envisagé de voter pour des fonctionnalités par l’argent comme option ?

4 « J'aime »

Le vote par l’argent est pris en charge. Vous pouvez financer le développement après vous être assuré que les nouvelles fonctionnalités sont pr-welcome

1 « J'aime »

D’un autre côté, c’est exactement ce que fait Facebook avec les groupes et les contacts, et c’est l’une des raisons pour lesquelles il est si accrocheur là-bas. Parce que vous allez de toute façon vous connecter avec vos contacts, et cela « amène » les publications de groupe/communauté dans cet espace.

Je peux très bien imaginer quelque chose comme ça être super précieux pour ma communauté. Les communautés rassemblent les gens et ils voudront maintenir cette connexion « en dehors » de la communauté. Si l’outil communautaire leur permet d’apporter cette connexion supplémentaire dans le même espace/application, cela évite un exode vers d’autres espaces sociaux des personnes qui ont noué des relations solides au sein de la communauté.

Je sais que nous n’essayons pas de « reproduire Facebook » ici, mais il vaut la peine de réfléchir à la raison pour laquelle cela fonctionne si bien pour certaines choses.

J’aimerais pouvoir dire à mes membres qui émigrent de Facebook : « Regardez, vous pouvez créer un compte fediverse et vous connecter avec des personnes que vous aimez en dehors des sujets ».
Peut-être que cela devrait être considéré comme un moyen de fournir aux membres de la communauté un espace hors sujet qui est plus « ouvert ».

De mon point de vue, cela aurait beaucoup de sens. Le manque d’intégration entre « les réseaux sociaux » (comptes fediverse), les blogs (mais la connexion de ceux-ci avec le fediverse est en cours) et les communautés est ce qui empêche les outils ouverts comme Mastodon ou Discourse ou Wordpress d’être une alternative efficace à Facebook.

1 « J'aime »

Eh bien, Mastodon et WordPress font déjà tout cela. Discourse seulement en partie et la direction est principalement sortante, mais ce n’est pas une plateforme de médias sociaux.

1 « J'aime »

Lorsque nous essayons de suivre @announcements@meta.discourse.org, nous recevons le message d’erreur suivant :

Les journaux contiennent deux avertissements :

Échec du traitement de https://meta.discourse.org/ap/actor/68efb2d756abf76171ed302b7ffd3c58 : Impossible de résoudre l’acteur

La requête GET vers https://meta.discourse.org/ap/actor/68efb2d756abf76171ed302b7ffd3c58 a échoué :

Nous pouvons suivre les acteurs sur Mastodon, cependant.

Est-ce que je manque quelque chose, ou comment puis-je enquêter davantage ?

Je peux confirmer le comportement identique ; voici les journaux :

Started POST "/webfinger/handle/validate" for 172.17.0.1 at 2026-03-15 16:10:39 +0000
Processing by DiscourseActivityPub::Webfinger::HandleController#validate as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org"}
Completed 200 OK in 36ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 11.8ms)
Started GET "/ap/local/actor/57934/find-by-handle?handle=%40announcements%40meta.discourse.org" for 172.17.0.1 at 2026-03-15 16:10:40 +0000
Processing by DiscourseActivityPub::ActorController#find_by_handle as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org", "actor_id"=>"57934"}
Started POST "/webfinger/handle/validate" for 172.17.0.1 at 2026-03-15 16:10:43 +0000
Processing by DiscourseActivityPub::Webfinger::HandleController#validate as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org"}
Completed 200 OK in 32ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.8ms)
Started GET "/ap/local/actor/57934/find-by-handle?handle=%40announcements%40meta.discourse.org" for 172.17.0.1 at 2026-03-15 16:10:43 +0000
Processing by DiscourseActivityPub::ActorController#find_by_handle as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org", "actor_id"=>"57934"}
Started POST "/webfinger/handle/validate" for 172.17.0.1 at 2026-03-15 16:10:43 +0000
Processing by DiscourseActivityPub::Webfinger::HandleController#validate as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org"}
Completed 200 OK in 30ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)
Started GET "/ap/local/actor/57934/find-by-handle?handle=%40announcements%40meta.discourse.org" for 172.17.0.1 at 2026-03-15 16:10:43 +0000
Processing by DiscourseActivityPub::ActorController#find_by_handle as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org", "actor_id"=>"57934"}
Started POST "/webfinger/handle/validate" for 172.17.0.1 at 2026-03-15 16:10:44 +0000
Processing by DiscourseActivityPub::Webfinger::HandleController#validate as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org"}
Completed 200 OK in 26ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.3ms)
Started GET "/ap/local/actor/57934/find-by-handle?handle=%40announcements%40meta.discourse.org" for 172.17.0.1 at 2026-03-15 16:10:44 +0000
Processing by DiscourseActivityPub::ActorController#find_by_handle as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org", "actor_id"=>"57934"}
Started POST "/webfinger/handle/validate" for 172.17.0.1 at 2026-03-15 16:10:44 +0000
Processing by DiscourseActivityPub::Webfinger::HandleController#validate as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org"}
Completed 200 OK in 24ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.3ms)
Started GET "/ap/local/actor/57934/find-by-handle?handle=%40announcements%40meta.discourse.org" for 172.17.0.1 at 2026-03-15 16:10:44 +0000
Processing by DiscourseActivityPub::ActorController#find_by_handle as JSON
  Parameters: {"handle"=>"@announcements@meta.discourse.org", "actor_id"=>"57934"}
2 « J'aime »

À quelle version de Discourse êtes-vous ? Je suis capable de trouver cet acteur dans une autre instance de Discourse :

1 « J'aime »

Nous utilisons la dernière version 2026.3.0-latest

Nous sommes sur la version 2026.1.2(808b2ac23d) avec la version du plugin (d99071e0)

Juste pour ajouter ici. Sur la version 2026.5.0-latest, avec un Acteur de catégorie fonctionnel par ailleurs, je rencontre le même problème. Je peux suivre les acteurs Mastodon, mais pas ceux de Discourse.

3 « J'aime »

Merci pour le rapport, nous allons examiner cela sous peu.

3 « J'aime »

Un petit mot pour vous informer que nous avons désactivé le plugin ActivityPub sur ce meta. Le plugin était en mode maintenance, nous continuerons toutefois à le supporter avec des correctifs de sécurité, de performance et de bugs. À ce sujet, nous avons fusionné plusieurs correctifs de sécurité aujourd’hui dans le dépôt du plugin, nous recommandons à tous les utilisateurs du plugin de mettre à jour vers la dernière version.

Sur le meta, malheureusement, les catégories activées pour ActivityPub n’étaient utilisées que par quelques utilisateurs et nous avons reçu des retours d’utilisateurs non-ActivityPub qui étaient confus par la terminologie, nous avons donc décidé de simplifier les choses et de mettre fin à l’intégration ActivityPub sur le meta.

3 « J'aime »

Une des raisons pour lesquelles il y a si peu d’abonnés, c’est qu’un utilisateur de Discourse doit savoir à qui s’abonner. Le système n’est pas conçu pour un suivi facile de type réseaux sociaux, mais plutôt pour partager du contenu d’un forum vers le Fediverse, en espérant que quelqu’un là-bas partage également (et même dans ce cas, un utilisateur Mastodon ou autre ne peut pas suivre un acteur Discourse).

Vous connaissez le nombre d’abonnés, mais vous n’avez aucune idée de combien de personnes voient vos publications. Mais bien sûr, Meta est un cas particulier, car les administrateurs sont probablement là, et les utilisateurs ordinaires ne s’intéressent pas aux aspects techniques de Discourse. Donc, de ce point de vue, je comprends cette décision.

1 « J'aime »

Bonjour, j’essaie de signaler un problème avec le plugin AP concernant la date et l’heure published qui sont incorrectes pour les publications qui sont manuellement « publiées » via le bouton « Publier toutes les publications ».

Exemple

https://browser.pub/https://socialhub.activitypub.rocks/ap/object/a8d6c23e6c428313efb9bf20efeb020c

Comportement attendu

published indique la date et l’heure à laquelle la publication a été originellement publiée, c’est-à-dire la date et l’heure visibles localement dans Discourse (2018).

Comportement actuel

published indique la date à laquelle la ressource AP a été créée, c’est-à-dire la date et l’heure où le bouton « Publier » a été cliqué localement dans Discourse (2026).