Fedibirdの投稿の公開範囲『サークル』は、フォロワー限定をさらに狭くした公開範囲で、あらかじめサークル名とメンバーをフォロワーの中から指名して作成しておき、そのサークルに限定した投稿を行う機能です。

サークルで指名した人だけが投稿を受け取って読むことができますが、投稿には宛先の情報やメンションが含まれておらず、受け取った人からは、他に誰が受け取っている投稿なのか秘匿されます。

サークルに返信することはできますが、返信元となる投稿を受け取っている人(サークルのメンバー)に転送されるという特殊な宛先になります。

ファンクラブ向け特典など限定コンテンツ配信とか、信用している人限定のつぶやきに使うなどで、一方的に配信する内容に向いています。返信はある種のリアクションと考えると良いでしょう。

発信側とメンバーの関係が対等ではないため、何らかのテーマに基づいたグループ会話などの用途には向いていません。

特殊な公開範囲で、他のサーバと連合する作りになっていますが、実質的にFedibirdと、このサークル機能に互換性のあるサーバでのみ使えます。(最新のMastodonは不具合で投稿を受け取れない状況が続いています。Misskeyとは互換性がありません)

そういえばこの前io独自アプデで一応BearcapsのURLのデータをfetchできるように https://github.com/MisskeyIO/misskey/pull/330 してありますが実際にサークル機能の投稿が届くのかは確認できていませんでした

フォロー

dereferenceしてデータベース上にnoteを記録するところまではうまくいってるけど、visibleUserIdsが空のvisibility: specifiedになるので誰も見られない、という感じかな。

shared_inboxじゃなくてユーザー毎のinboxに必要回数分だけbearcaps添えた投稿が届くので、初回はdereference(fetch)してvisibleUserIdsに追加、作成済みの時はvisibleUserIdsに追加するだけの処理して、見える人を追加してあげる必要があるかも。

タイムラインへのフィードとかはどうやってるか知らないけど、そこもみる必要あるかな?

うまくいけば、ホームにDMとしてみえるようになると思う。

なるほどー
bearcaps関係なくてもユーザー個別のinboxに届いた際の共通処理として入れておいてもよさそうですね
近いうちに連合できるようにしますー

Mastodonはサイレントメンションという扱いで見える人の一覧を制御してるけど、MisskeyにvisibleUserIdsがあるならそっちでいいね。

元々はHubzillaから届くlimited visibilityのサポートのために(サークル以外では使わない)limitedがサポートされていたのね。bearcapsは使わないけど、宛先・メンション無しで個別inboxに直接届くっていう公開範囲があるの。

bearcapsは、サークル投稿そのものの配送というより、その返信を転送する際に、フォロー関係がない同士がやりとりできるようにする仕組みなので、新規サークル投稿・サークル返信をサポートしなければ今の実装で十分だよ。たぶんMisskeyからはDM扱いで、返信もDMになるだろうし。

そうですね、サークルの本格的なサポートとなるとMisskey側の機能としてはチャンネルの連合になると思いますが、(少なくともioだと)チャンネルは今のところ連合されていないのがある意味アドバンテージとして作用していて(外に漏れないからその分暴れてもいいとされている)いきなり連合させるのはちょっと違う気がしますね(するならデフォルトオフで設定可能になりそう)
現行通りサポートしない方向でも別に別ソフトのリモートのことなので気にしないユーザーも多そうではありますが、せっかく届いた投稿が見れないのはかなしいのでとりあえずDMとして見れるようにする予定です

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。