# ActivityPub 플러그인

**URL:** https://meta.discourse.org/t/activitypub-plugin/266794
**Category:** Plugin
**Tags:** experimental, activitypub
**Created:** [5월 31, 2023, 5:21오후 UTC](https://meta.discourse.org/t/activitypub-plugin/266794 "2023-05-31T17:21:52Z")
**Posts on this page:** 1
**Showing post:** 138

<div class="post-metadata">

### Author: ![evilham](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/evilham/32/365688_2.png) [@evilham](https://meta.discourse.org/u/evilham)
#### Post date: [2월 26, 2024, 8:19오후 UTC](https://meta.discourse.org/t/activitypub-plugin/266794/138 "2024-02-26T20:19:56Z")

</div>

# 문제

안녕하세요, agora.eXO.cat에서 이 플러그인을 테스트하고 있는데 작동하지 않습니다 (Discourse 웹에서 상태가 "Note was not published via ActivityPub"라고 표시되고, 다른 Fediverse 앱에서는 액터를 찾을 수 없습니다).

특별히 주의해야 할 점이 있을까요? 문서를 확인해 보았지만 따라야 할 특별한 문제 해결 방법을 찾을 수 없었고, 로그(아래 참조)도 더 이상 도움을 주지 못합니다 :-(.

# 설정

플러그인 버전: [79da1c2](https://github.com/discourse/discourse-activity-pub/commit/79da1c22c78755b0946839b059e5c844ac9723c3)

Fediverse에 게시하기를 원하는 [공개 하위 카테고리](https://agora.exo.cat/c/exo/exofasia/33)를 사용하고 있습니다.

설정은 단순하며, 다음을 제외하고는 변경된 것이 없습니다:

- 테스트를 위해 스케줄 시간을 1분으로 설정
- 카테고리에 대한 액터 이름과 표시 이름 선택

시도해 본 몇 가지 사항:

- "activity pub object logging"을 활성화하고 로그 확인
- 오류를 발생시킨 줄을 패치하여 제거함. 이 줄은 “달걀과 닭” 같은 문제를 일으켰기 때문입니다(“수신자가 없어 게시물을 예약할 수 없을 수 있음, 게시물이 생성될 때까지 액터를 생성하지 않음”)

> **테스트한 패치**
>
> ```plaintext
> > ./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
> 
> ```

- 해당 패치가 작동하지 않자 패치를 제거함
- 어딘가에 “특수” 문자가 없도록 카테고리를 삭제하고 다시 생성함 (실제 단어는 exofàsia이며, eXOfà시아로 표기하기를 원함)
- 카테고리를 다시 생성할 때 `Article`(원하는 값) 대신 `Note`(기본값) 사용

# 로그

> **로그에서 확인되는 내용**
>
> ```plaintext
> Message
> 
> [Discourse Activity Pub] https://agora.exo.cat/ap/actor/31cb67a1093eca932caaf1e764814bde failed to schedule https://agora.exo.cat/ap/activity/803be329c95f67b5ab62d43c7c61f6f3 for delivery: no recipients
> 
> 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
> 
> ```

> **인터페이스에서 다시 게시할 때 오류가 일관되게 발생함**
>
> ```plaintext
> Message
> 
> [Discourse Activity Pub] https://agora.exo.cat/ap/actor/31cb67a1093eca932caaf1e764814bde failed to schedule https://agora.exo.cat/ap/activity/30d34f8b38be0d2d5bc997fd4147c5b2 for delivery: no recipients
> 
> 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

그리고 Webfinger가 반환하는 내용은 다음과 같습니다:

```plaintext
> 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"}]}

```

---

_[View the full topic](https://meta.discourse.org/t/activitypub-plugin/266794)._
