그누보드5용 액티비티펍(ActivityPub) 플러그인 0.1.18 > 그누보드5 플러그인

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

그누보드5용 액티비티펍(ActivityPub) 플러그인 0.1.18 정보

그누보드5용 액티비티펍(ActivityPub) 플러그인 0.1.18

첨부파일

gnuboard5-activitypub-0.1.18.zip (27.4K) 113회 다운로드 2023-08-08 20:44:03
테스트한 버전5.5
호환 가능 버전5.5 이상

본문

 

237351714_1656860629.1297.png

 

W3C 표준 문서로 등록되어 있는 액티비티펍(ActivityPub)을 그누보드5에서 지원하기 위한 플러그인입니다.

 

[ActivityPub 프로토콜 도입 시 장점]

  - ActivityPub 프로토콜이 호환되는 어플리케이션은 서로 다른 웹사이트 사이에서도 쪽지를 작성하거나 게시물에 댓글을 남기는 등의 양방향 소통이 가능합니다.

  - 다양한 종류의 어플리케이션(워드프레스, 마스토돈 등) 및 소셜 미디어 앱(텔레그램, 카카오톡, 라인, 페이스북, 왓츠앱, 인스타그램, 유투브, 디스코드, 슬랙, 트위터, 위챗, 틱톡 등), 이와 성격이 비슷한 업무용 앱(MS Teams, Google Workspace, 스카이프, 매터모스트, 사내 메신저/ERP/RPA 등), 문자메시지(SMS/LMS/MMS 등), 푸시알림(Push Notification), 이메일, 팩스, 전자계약(스마트 컨트랙트), 위치, 날씨, 환율, 증권, 송금(페이), 그 외 프로토콜 등을 연동할 때 표준화된 절차로서 사용하실 수 있습니다.

  - 그누보드5 기반 어플리케이션을 개발하기 위한 프로그래밍 언어로 PHP 뿐만이 아닌 Bash, NodeJS, Python, Java, C#, Golang, Rust, Elixir/Erlang, Kotlin, Swift, WebAssembly 등 선택의 폭이 넓어집니다.

  - 표준화된 프로토콜이므로 (schema.org 등을 응용하여) 검색엔진최적화(SEO) 용도로도 활용하실 수 있습니다.

 

[설치 방법]

1. 그누보드5 extend 폴더에 activitypub.extend.php 파일을 복사합니다. (여기서 파일 설치는 끝, adm는 필요 시 설치)

2. apstreams 라는 이름의 계정을 생성합니다.

3. apstreams 라는 이름의 게시판을 생성합니다.

4. 만약, 그누보드5 끼리의 통신이 아닌 ActivityPub 호환 외부 어플리케이션과 통신해야 되는 경우 아래와 같이 .htaccess를 설정합니다.

 

<IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteRule ^\.well-known/webfinger /?route=webfinger [QSA,L]

</IfModule>

 

경우에 따라선 (예를 들어, 엑세스 토큰이 별도로 존재하는 서비스인 경우) activitypub.extend.php 안의 다음 내용을 수정해야할 수 있습니다.

 

define("ACTIVITYPUB_ACCESS_TOKEN", "server1.example.org=xxuPtHDkMgYQfcy9; server2.example.org=PC6ujkjQXhL6lUtS;");

 

[사용방법]

아무 게시판이나 하나 선택하여 아래와 같은 메시지를 남겨봅시다. 또는 'apstreams'에게 쪽지를 보내봅시다.

 

   > 안녕하세요. 잘 지냈어요 ben? 나는 alyssa입니다. 안부 전해요. @*** 개인정보보호를 위한 이메일주소 노출방지 ***

 

그러면 server1.example.org의 '@ben'에게 메시지가 도착해있을 것입니다.

 

[그 외]

본 플러그인에는 글/댓글을 등록하는 예시, 파일을 다루는 예시, 쪽지를 다루는 예시, 훅(Hook)을 다루는 예시 등을 포함하므로 신규 플러그인을 작성하실 때 좋은 참고자료가 될 수 있습니다.

 

[최근 업데이트 및 버전]

2023년 08월 08일, 0.1.18 (개발 버전은 깃허브 링크 참고)

 

[변경사항]

- 0.1.18: 마스토돈(Mastodon)과 양방향 통신 확인 완료 (다른 어플리케이션과도 호환 가능)

- 0.1.17: HTTP 헤더 서명 관련 개선 (ActivityPub 및 HTTP 서명을 사용하는 외부 어플리케이션 대응)

- 0.1.16: 마스토돈(Mastodon)에서 그누보드5 사용자를 멘션했을 시 쪽지로 받아볼 수 있음.

- 0.1.15: 마스토돈(Mastodon)에서 그누보드5 기반 웹사이트의 사용자 검색 가능, 스레드(메타) 앱 지원 준비

- 0.1.13: 댓글 관련 버그 수정, 파일공유 기능 추가

- 0.1.12: 확장 가능하도록 작업(lib/*.activitypub.lib.php), 발행여부 관련 버그 수정

- 0.1.11: 액티비티의 발행여부(Draft/Published) 상태 명확화, 날씨(OpenWeatherMap) 및 환율(한국수출입은행) 기능 추가

- 0.1.10: HTTP 헤더 버그 수정, 위치정보 기능 추가 (IP2Location Lite, 네이버 클라우드 GeoLocation)

 

[더 보기]

* 슬랙/디스코드/네이트온 웹훅 - 엑티비티펍 연동 플러그인 https://sir.kr/g5_plugin/10412

* 그누보드5에서 ActivityPub 설계 https://sir.kr/so_restful/351

* delightful activitypub development https://codeberg.org/fediverse/delightful-activitypub-development/

 

[마스토돈에서 사용자 검색 지원 예시]

461179629_1690363915.9956.png

 

[마스토돈에서 사용자 멘션 예시 - 단방향]

1025779472_1691259903.0901.png

 

[마스토돈에서 사용자 멘션 예시 - 양방향]

239050768_1691495580.5275.png

추천
20

댓글 전체

0.1.9 버전 이후부터는 위치정보 및 파일공유 기능이 들어갈 예정이오니, 자세한 내용은 깃허브 링크를 참고해주시기 바랍니다. 관심에 감사드립니다.
전신인 ActivityStreams 2.0가 메시지 교환(Gateway) 추상화로 많이 쓰였기 때문에, ActivityStreams를 기반으로 하는 ActivityPub도 활용도를 그렇게 어필하고 있습니다. 원래 목적은 소셜 미디어에 주로 맞춰져 있긴 하지만 메시지 교환 용도로 써도 문제가 되진 않으니까요.
예전에 분산(블록체인)네트워크를 이용해서 메세지 교환방법을 찾아보다가 https://spec.matrix.org 같은 스펙을 보고
확인차원에서 언급을 했습니다
그렇군요. W3C에도 ActivityPub 말고도 IoT, DID 관련 스펙이 있습니다. 이것을 액펍에 통합하는 방안도 논의 중인 걸로 압니다. MATRIX도 구현할 때 참고해볼만 할 것 같습니다. 정보 감사합니다 ㅎㅎ
웹 페이지 다운 시 발생하는 오류를 *** 개인정보보호를 위한 이메일주소 노출방지 *** 으로 보내주시면 확인해보겠습니다. 감사합니다.
전체 503
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT