ActivityPub (Fediverse) implementation for GNUBOARD5
Go to file
2023-02-16 15:04:08 +09:00
adm Update activitypub_form.php 2022-07-04 17:01:10 +09:00
extend Update activitypub.extend.php 2023-02-16 15:03:43 +09:00
lib Add the email contact to report abuse 2022-11-25 23:17:08 +09:00
LICENSE Create LICENSE 2022-07-05 18:52:00 +09:00
README.md Update README.md 2023-02-15 18:42:21 +09:00

gnuboard5-activitypub

ActivityPub implementation for GNUBOARD 5

사용 전 설정

  • apstreams 게시판 추가
  • apstreams 사용자 추가

작업진행

  • WebFinger
  • User
  • Inbox
  • Outbox
  • Followers
  • Following
  • Liked
  • Shares
  • Geolocation (IP2Location, Naver Cloud)
  • File attachment
  • File attachment -> Auto sharing (Download/Upload)

부가기능 (옵션)

  • 아바타 (gravatar.com)
  • 날씨 (openweathermap.org)
  • 환율 (koreaexim.go.kr)

향후 지원 예정

  • OAuth 2.0
  • w3id.org (publicKey 필드) 지원
  • 메시지 큐(Redis, RebbitMQ, Kafka 등) 지원

전문 예시

{
    "@context": "https://www.w3.org/ns/activitystreams",
    "type": "Create",
    "id": "http://example.org/bbs/board.php?bo_table=apstreams&wr_id=235",
    "to": ["https://www.w3.org/ns/activitystreams#Public", "http://example.org/?route=activitypub.user&mb_id=admin"],
    "actor": "http://example.org/?route=activitypub.user&mb_id=admin",
    "object": {
        "type": "Note",
        "generator": "GNUBOARD5 ActivityPub Plugin (INSTANCE_ID: 4d6076784cbd864ade7c746690d37051, INSTANCE_VERSION: 0.1.11-dev)",
        "id": "http://example.org/bbs/board.php?bo_table=free&wr_id=1",
        "attributedTo": "http://example.org/?route=activitypub.user&mb_id=admin",
        "content": "안녕하세요 @admin@example.org",
        "icon": "https://www.gravatar.com/avatar/bdbd5eb70305f1eaaa0340687758676a",
        "location": {
            "name": "xxx.xxx.xxx.xxx, 서울특별시 금천구 가산동 (Korea Telecom), Seoul, Seoul-teukbyeolsi, Korea (Republic of), KR, 06030, +09:00",
            "type": "Place",
            "longitude": 126.8917326,
            "latitude": 37.4769094,
            "units": "m",
            "_weather": {
                "dt": 1657163472,
                "sunrise": 1657138663,
                "sunset": 1657191385,
                "temp": 305.42,
                "feels_like": 309.65,
                "pressure": 1005,
                "humidity": 56,
                "dew_point": 295.52,
                "uvi": 8.53,
                "clouds": 100,
                "visibility": 10000,
                "wind_speed": 5.72,
                "wind_deg": 186,
                "wind_gust": 10.14,
                "weather": [{
                    "id": 804,
                    "main": "Clouds",
                    "description": "overcast clouds",
                    "icon": "04d"
                }]
            },
            "_exchange": {
                "KRW": {
                    "AED": 355.94,
                    "AUD": 887.07,
                    "BHD": 3467.72,
                    "BND": 930.73,
                    "CAD": 1003.15,
                    "CHF": 1346.86,
                    "CNH": 194.76,
                    "DKK": 178.9,
                    "EUR": 1331.33,
                    "GBP": 1558.81,
                    "HKD": 166.61,
                    "IDR(100)": 8.72,
                    "JPY(100)": 960.93,
                    "KRW": 0,
                    "KWD": 4253.09,
                    "MYR": 295.49,
                    "NOK": 128.98,
                    "NZD": 804.44,
                    "SAR": 348.27,
                    "SEK": 124.02,
                    "SGD": 930.73,
                    "THB": 36.12,
                    "USD": 1307.4
                }
            }
        }
    },
    "published": "2022-07-07T03:11:12Z",
    "updated": "2022-07-07T03:11:12Z"
}

References

문의