@yukiyalien@best-friends.chat 「殴らないよー」
いろいろFedibirdでは解決できるように仕込んでるけど、肝心のMisskeyや、Mastodonの別のリアクション実装などでは徹底できないんだ。
たとえばFedibirdで投稿のjsonをとると、
emojiReactions: "https://fedibird.com/users/noellabo/statuses/109950820214581483/emoji_reactions",
って情報がとれるのね。ついてるリアクション(アクティビティ)の一覧。
これはMisskeyではとれないんだ。公開されてない。
だから、Fedibirdだけでネットワーク構成されてれば、投稿をfetchすればリモートの絵文字リアクションを完全把握できるんだけど、Misskeyではできない。
取りこぼしなく個々のEmojiReactionを受け取るしかないのだが、全部はこない。
@noellabo@fedibird.com これどこでリアクションごとの件数を取ってくるかわからない
@aqz 全件フラットでくるから、集約するアルゴリズムはそれぞれって感じよ。
ウチはcontentが同じなら合算しちゃう。
@noellabo@fedibird.com あ〜〜〜、配列でごっちゃり入ってるのか
@noellabo@fedibird.com Misskeyはデータベースにjsonbで{ '👍': 2, '': 1}みたいに入ってて、まあそれをコンバートすれば良さそうなんだけど、ioみたいに大量にリアクションが入ってるとデータ量すごそう
@aqz そうなんだよなー。
REST APIの方は、さっきのと同じデータこういう表現でDBに計算済みキャッシュのjsonb持ってて、提供してる。
まあこれもでかいんだけど……。
クライアントアプリは全部情報揃った状態で受け取るから、実装が容易なんよね。
誰がつけたリアクションが含まれてるのかの情報も入ってるので、相手をミュート・ブロックしてる場合は除外するとか、いろいろやってるのよ。
@aqz こっちでなるべく事例つみあげとくから、要望がでてきたら検討してみては。優先事項じゃないと思う。
@noellabo@fedibird.com Misskeyは与謝野晶子で全部持ってかれてるので
@aqz うん、まあいまさらあれねw
@noellabo@fedibird.com 投稿者がリアクションした人間をブロックしていれば弾く、というので十分だと個人的には感じた(