投稿の転送(forwarding)
forwarding とは
投稿元がアクセスできない受け取り手に、代わりに投稿を転送してあげるという仕様 たとえば、
アリスが「あけましておめでとう!」という投稿をすると、アリスのフォロワーであるボブとキャロルには、その投稿が到達する
それに対してボブが「今年もよろしく!」とリプライすると、アリスには投稿が到達する
しかし、キャロルがボブをフォローしていない場合は、キャロルはボブの投稿を見ることができない
この問題を緩和するのが forwarding
forwarding の流れ
ボブがアリスにリプライするとき、そのリクエストの cc に https://mastodon.wonderland/users/alice/followers という文字列を入れる
それを見たアリスは、「このリプライを https://mastodon.wonderland/users/alice/followers に転送しなければならない」と認識する
アリスは、https://mastodon.wonderland/users/alice/followers に含まれるところの キャロル にボブの投稿を転送する
キャロルはアリスからボブの投稿を受け取り、ボブの「今年もよろしく!」という投稿を閲覧できるようになる
forwarding の実際
署名がない投稿は、多くの実装では無視される
type: Create の activity に JSON-LD署名 が付与されるかどうかは、実装によってまちまちだった hollo → 検証に成功(受け入れる)
misskey → 検証に成功(受け入れる)
mastodon → 検証に失敗(受け入れない)
misskey → そもそも検証してなさそう(受け入れる)
そもそも misskey は投稿に署名しない
つまり、mastodon の投稿は大抵の実装で受け入れてもらえるが、他の実装の投稿については組み合わせによりそうという感じです
hr.icon
genya0407.icon mastodon / hollo / misskey 以外の実装でアカウントを持っておらず、特に pleroma / akkoma 系列の動作が確認できてないです
genya0407.icon misskey の投稿を hollo に forward した場合、hollo は署名なしの misskey 投稿を reject するのかと思いきや普通に表示できたので???と思っている
ログを見ると 401 でエラーにしているようなのだが、実際にはユーザーに見せているという謎の挙動だった
動作確認の方法が間違っている可能性もあるので後日また検証してみようと思います