Je n’arrive pas à comprendre comment faire pour que des publications soient fédérées vers Mastodon, je peux suivre les acteurs sans problème. Je reçois ces erreurs dans les journaux lorsque Discourse tente de livrer une publication :
[Discourse Activity Pub] https://discuss.privacyguides.net/ap/actor/a93549c3c7883784eda700f30de0c96b failed to deliver to https://mstdn.party/users/staff/inbox --- !ruby/hash:ActiveSupport::HashWithIn
[Discourse Activity Pub] POST request to https://mastodon.neat.computer/users/jonah/inbox failed: Expected([200, 201, 202]) <=> Actual(401 Unauthorized)
[Discourse Activity Pub] https://discuss.privacyguides.net/ap/actor/227cc2ddaa4ded69c2a58214031da3ce failed to deliver to https://mastodon.neat.computer/users/jonah/inbox --- !ruby/hash:ActiveSupport:
[Discourse Activity Pub] POST request to https://mstdn.party/users/staff/inbox failed: Expected([200, 201, 202]) <=> Actual(401 Unauthorized)
J’ai désactivé Activity pub require signed requests et activé la journalisation dans les paramètres, sinon tous les paramètres sont toujours par défaut. Ces instances Mastodon sont derrière Cloudflare, mais je peux voir que Cloudflare ne bloque pas les requêtes, et les journaux du service mastodon-web montrent que Mastodon lui-même renvoie les codes 401 (bien que je ne sache pas comment augmenter la verbosité des journaux de Mastodon pour voir pourquoi c’est le cas).
Y a-t-il une raison à cela ?
Edit : Mastodon n’aime pas les signatures HTTP, bien que cette instance n’ait pas l’Authorized Fetch activé :
Mar 08 16:47:07 neat-mastodon bundle[3119591]: D, [2025-03-08T16:47:07.963455 #3119591] DEBUG -- : [e6b2bc50-09e1-464e-a937-4c43ef32bd99] Signature verification failed: Request not signed
Mar 08 16:47:07 neat-mastodon bundle[3119591]: I, [2025-03-08T16:47:07.964520 #3119591] INFO -- : [e6b2bc50-09e1-464e-a937-4c43ef32bd99] method=POST path=/users/jonah/inbox format=html controller=ActivityPub::InboxesController action=create status=401 allocations=1256 duration=9.15 view=0.69 db=1.86
Edit 2 : Il semble que la boîte de réception des utilisateurs de mon Discourse soit inaccessible : https://verify.funfedi.dev/?actor_uri=jonah%40discuss.privacyguides.net
"Resolving acct:jonah@discuss.privacyguides.net using webfinger",
"Resolved to https://discuss.privacyguides.net/ap/actor/227cc2ddaa4ded69c2a58214031da3ce",
"Running verification for alice",
"Got inbox None", [...]
Cela fonctionne comme prévu pour l’acteur de groupe : https://verify.funfedi.dev/?actor_uri=articles%40discuss.privacyguides.net ![]()
Edit 3 : pour une requête GET vers https://discuss.privacyguides.net/ap/actor/227cc2ddaa4ded69c2a58214031da3ce
{
"id": "https://discuss.privacyguides.net/ap/actor/227cc2ddaa4ded69c2a58214031da3ce",
"type": "Person",
"updated": "2025-03-08T06:34:19Z",
"url": "https://discuss.privacyguides.net/u/jonah",
"name": "Jonah Aragon",
"inbox": null,
"outbox": null,
"sharedInbox": "https://discuss.privacyguides.net/ap/users/inbox",
"followers": "https://discuss.privacyguides.net/ap/actor/227cc2ddaa4ded69c2a58214031da3ce/followers",
"preferredUsername": "jonah",
"icon": {
"type": "Image",
"mediaType": "image/png",
"url": "https://forum-cdn.privacyguides.net/user_avatar/discuss.privacyguides.net/jonah/96/8151_2.png"
},
"@context": "https://www.w3.org/ns/activitystreams"
}
