Fediverse(ActivityPub)なリモートフォローのやりかたが難しい
<input>
の属性くらいは統一してくれ〜
ActivityPubがデファクトスタンダードになったと言って良いとは思うので、Zennのコレとか他の奴も基本的にActivityPubでパブリッシュできるように考えるのが良いのかな。つまり:
- Zennのコレ: 投稿は今迄通りココ(Zenn.dev)、.jsonで内容を拾って別途ミラー。
- Twitter: 専用の投稿ツールを作ってTwitterとActivityPub形式の両方で配布。
ActivityPubの仕様 https://www.w3.org/TR/activitypub/ 自体はクッソ単純なので、ちゃんと読んでからアーキテクチャは考えたい。。できればGitを直接バックエンドに使いたいけどチャットのような操作でいちいちコミットしてたら流石に厳しいものがあるので、 基本はCloudflareのKV、たまにコミット みたいな感じにするのが良いのかな。
MastodonのアカウントをMisskeyでフォローする
https://misskey.io/@okuoku で https://pawoo.net/@okuoku をフォローする。PawooはMastodonのインスタンスで、Mastodonには"フォロー"のボタンがあるのでそれを押し、 自分のアカウント名 を入れる。
つまり、ここでは @okuoku@misskey.io
と入れることになる。これでPawooからMisskeyにリダイレクトされ、misskey側でフォロー操作が自動的に行われる。
一部のスクリーンショットでは "リモートフォロー" と表記されていることがあるようだが、Pawooでは単にフォローと呼ばれているようだ。Pawooにログインしている状態であれば、直接フォローできる。
EDIT: いやまぁ https://misskey.io/@okuoku@pawoo.net を手で打った方が楽だわ。。
MisskeyのアカウントをMastodonでフォローする
逆に、 https://pawoo.net/@okuoku で https://misskey.io/@okuoku をフォローしたい場合、 Misskey側には相当するUIが無いので 、Mastodon側で "検索" して、ヒットしたユーザーをフォローすることになる。
このとき、 @okuoku@misskey.io
のようなクエリを使うことで、直接 misskey.io
がActivityPub準拠のサイト(を、WebFingerでlookupできるもの)であると見做して動作するようだ。
これ難しくない??
同じネットワーク、同じインスタンス内のユーザーをフォローするのに比べて、これって相当に難しいと思うんだけど。。
(連合)タイムラインにノート(Misskey)/トゥート(Mastodon)さえ流れてくれば、そこから直接フォローするのは難しくないはずなので、あんまり重視されない機能性なのかもしれない。でも、Twitterのプロフィール欄に https://pawoo.net/@okuoku みたいなURL載せたとして、それを自分が主に使っているMisskeyなりなんなりのインスタンスでフォローしたい ...というユースケースが普通に対応できないのは厳しいものがある気がする。
なので、
- アカウントページに
<meta>
でアカウント名を埋める -
<input>
で自分のアカウント名を入れられるように属性を統一する
くらいは何らかの標準が欲しいところ。。
ディスカバリはWebFingerらしい
Mastdon側は https://github.com/mastodon/mastodon/blob/main/FEDERATION.md に連携仕様が書かれている。
ちょっと古いけど実装者向けのガイドもある。
拡張仕様の提案はFEP-xxxx
連番取るのを放棄してハッシュにしてるのは思い切りが良いな。。