BlueSkyで最小限の手間で自動投稿までメモ。
1. アカウントを作成
2. 自分の設定の「ハンドルを変更」→「自分のドメインを持っています」でDID(did:plc:ほにゃらら)を取得
3. ブラウザのコンソールとかでトークン取得(良い方法見つからなかった)
4. curl -X POST 'https://bsky.social/xrpc/com.atproto.repo.createRecord' -H 'Content-Type: application/json' -H 'Authorization: Bearer アクセストークン' -d '{ "repo": "did:plc:ほにゃらら", "collection": "app.bsky.feed.post", "record": { "text": "Hello", "createdAt": "'`date +%Y-%m-%dT%H:%M:%SZ`'" } }'
AT Protocol
ATP
About
AT ProtocolはBluesky PBCが開発・保守している分散SNSのための通信プロトコル。
Link
- The AT Protocol
- bluesky-social/atproto: Social networking technology created by Bluesky
- bluesky-social/pds: Bluesky PDS (Personal Data Server) container image, compose file, and documentation
- Paul's Dev Notes
- bluesky-social
- AT Protocol Developers (@atproto.com) — Bluesky
Account
name | Bluesky | X/Twitter |
---|---|---|
Rose 🌹 | X | [ X] |
Emily Liu | X | X |
Bluesky | X | X |
Jay Graber | X | X |
AT Protocol | X | X |
Bluesky
About
AT Protocolを実装した最初の実装とそのサーバー。
2023年2月末にプラベートβ版として招待制で始まる。
2024-02-06 Tueに一般登録を開始した (報道: Blueskyの招待制廃止・一般登録受付開始と月末の連合対応の初期版公開予告 | GNU social JP Web)。
2024-02-22 Thuに連合機能を開始した (報道: Blueskyの連合開始はATP/Blueskyの分散SNSの始まり | GNU social JP Web)。ただし、連合にはDiscordでの申請が必要だったり、レートやアカウント制限があり、アカウント移転もIDが破壊的など、かなり制限がある状態での初回開始となる。
Federation
「公式: Blueskyの連合機能の概要 | GNU social JP Web」にあるように、2023-05-05に連合機能の大まかな説明が最初にされた。
- PDS (Personal Data Server): 個人のデータが保存されているサーバー。ActivityPubでのサーバーに相当。
- BGS (Big Graph Service): ATPは基本的にプル型の通信形態。ネットワーク上のデータをクロールして個別のPDSにデータを配信する。リレーサーバー相当。
- App View: BGSの下流に存在し、BGSなどのネットワーク上のデータを集約してPDSなどから参照可能なフィード類のビューを提供する。
ATP/Blueskyでの連合は基本的に上記の異なる役割が点在する形となる。基本は、ActivityPubのサーバー相当のPDSをそれぞれが運営して、PDSに人々がアカウントを登録する形になる。
連合開始前は、Bluesky PDSが単独で存在する状態となる。
ToS
Blueskyの利用規約 (Term of Service=ToS) は以下で紹介した。
- 公式: Bluesky Socialの利用規約とコミュニティーガイドラインの改定予告 | GNU social JP Web
- 報道: Blueskyの一般登録開始に伴う利用規約更新 | GNU social JP Web
一般的なSNSの利用規約になっている。が、ATP/Blueskyの運営陣は欧米の白人で左派的な傾向があるので、それらの文化に準じた規則になっている模様。具体的には、ロリエエロ関係の表現は厳しく、黒人差別関係の話題も厳しい (記事: Blueskyでの黒人差別騒動 | GNU social JP Web)。
Problem
Bluesky関係で過去に以下のような騒動があった。
- BlueskyでのMastodon著者Eugen Rochkoの偽アカウントの登場 | GNU social JP Web
- 記事: Blueskyでの黒人差別騒動 | GNU social JP Web
Link
- Home — Bluesky
- Bluesky
- Bluesky Documentation | Bluesky: 開発者向け文書。
- bluesky-social/bsky-docs: Bluesky API documentation
- bluesky-social/social-app: The Bluesky Social application for Web, iOS, and Android
- Martin Kleppmann (@martin.kleppmann.com) — Bluesky: Blueskyの技術顧問 (https://bsky.app/profile/bsky.app/post/3kkqwoy7jfc2u)。
API
Post
DIDは https://bsky.social/xrpc/com.atproto.identity.resolveHandle?handle=自分のアカウント名 で見た方が楽かも。
createdAtはミリ秒まで渡した方が良いし、トークンはいつまで使い回せるか分からないのでちゃんとAPI(https://bsky.social/xrpc/com.atproto.server.createSession)を叩いて取って来た方が良い。
ただこれでざっとした流れが分かるし、何で検索したら良いか分かるのでそのためのメモです。