Problema
Ciao, stiamo testando questo plugin su agora.eXO.cat e non riusciamo a farlo funzionare (lo stato sul web di Discourse dice “Nota non è stata pubblicata tramite ActivityPub”, altre app del fediverso non trovano l’attore)
C’è qualcosa di particolare a cui dovremmo prestare attenzione? La consultazione della documentazione non ha indicato nulla di particolare per la risoluzione dei problemi che possiamo seguire e i log (vedi sotto) non ci aiutano ulteriormente :-(.
Configurazione
Versione del plugin: 79da1c2
Stiamo utilizzando una sottocategoria pubblica, che vogliamo pubblicare sul fediverso.
Le impostazioni sono semplici, non è stato modificato nulla tranne:
- Orario di pianificazione ridotto a 1 minuto per il test
- Scelta del nome dell’attore e del nome visualizzato per la categoria
Alcune cose che abbiamo provato:
- Abilitare “activity pub object logging” e controllare i log
- Patchare la riga che ha prodotto l’errore, poiché ci dava un senso di “uovo e gallina” (“forse non è possibile pianificare un post perché non ci sono destinatari, non creerà l’attore finché il post non sarà creato”)
> ./launcher enter app
> sed -i.orig -E 's!^(.*no recip.*)$!#\\1!' /var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb
> ./launcher restart app
- Quando quella patch non ha funzionato, l’abbiamo rimossa
- Eliminazione e ricreazione della categoria in modo che non ci siano caratteri “speciali” ovunque (la parola è in realtà exofàsia, che vogliamo scrivere: eXOfàsia)
- Ricreando la categoria, usare
Note(predefinito) invece diArticle(quello che vogliamo)
Log
Messaggio
[Discourse Activity Pub] eXOfàsia - Àgora de l'eXO non è riuscito a pianificare https://agora.exo.cat/ap/activity/803be329c95f67b5ab62d43c7c61f6f3 per la consegna: nessun destinatario
Backtrace
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:93:in log_failure' /var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:35:in can_deliver?’
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:13:in perform' /var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:27:in perform’
/var/www/discourse/plugins/discourse-activity-pub/app/models/concerns/discourse_activity_pub/ap/model_callbacks.rb:140:in activity_pub_deliver_activity' /var/www/discourse/plugins/discourse-activity-pub/app/models/concerns/discourse_activity_pub/ap/model_callbacks.rb:38:in perform_activity_pub_activity’
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:473:in block (2 levels) in activate!' /var/www/discourse/lib/plugin/instance.rb:341:in public_send’
/var/www/discourse/lib/plugin/instance.rb:341:in block (2 levels) in add_to_class' /var/www/discourse/plugins/discourse-activity-pub/plugin.rb:654:in block (2 levels) in activate!’
Env
HTTP HOSTS: agora.exo.cat
Messaggio
[Discourse Activity Pub] eXOfàsia - Àgora de l'eXO non è riuscito a pianificare https://agora.exo.cat/ap/activity/30d34f8b38be0d2d5bc997fd4147c5b2 per la consegna: nessun destinatario
Backtrace
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:93:in log_failure' /var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:35:in can_deliver?’
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:13:in perform' /var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/delivery_handler.rb:27:in perform’
/var/www/discourse/plugins/discourse-activity-pub/app/models/concerns/discourse_activity_pub/ap/model_callbacks.rb:140:in activity_pub_deliver_activity' /var/www/discourse/plugins/discourse-activity-pub/app/models/concerns/discourse_activity_pub/ap/model_callbacks.rb:38:in perform_activity_pub_activity’
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:473:in block (2 levels) in activate!' /var/www/discourse/lib/plugin/instance.rb:341:in public_send’
/var/www/discourse/lib/plugin/instance.rb:341:in block (2 levels) in add_to_class' /var/www/discourse/plugins/discourse-activity-pub/plugin.rb:481:in block (2 levels) in activate!’
Env
HTTP HOSTS: agora.exo.cat
Webfinger
E questo è ciò che restituisce un webfinger:
> curl -L 'https://agora.eXO.cat/.well-known/webfinger?resource=acct:exofasia@agora.exo.cat'
{"subject":"acct:exofasia@agora.exo.cat","aliases":["https://agora.exo.cat/c/exo/exofasia/33"],"links":[{"rel":"self","type":"application/activity+json","href":"https://agora.exo.cat/ap/actor/31cb67a1093eca932caaf1e764814bde"}]}