もっと見る

これまでのサーバ単位の単純リレーと違って、

配信先のリストを動的に組み立てていかないといけないので、割と処理は重くなったと思う。

まだ最適化するには早い段階なので、しばらく高速化とか省メモリとかそういう方面はいじらないつもりだけど。

statusコマンドのひみつ

所属インスタンスが、ハッシュタグリレーに参加しているかどうか確認できます。

リレーの新機能、まだまだ試験導入で、いろいろ不具合起きると思うけど、可能性を探ってみてください。

フィードバックお願いします。

■ 使い方

まず、 @relay@hashtag-relay.dtp-mstdn.jp を直接フォローしておいてください。

@relayctl@hashtag-relay.dtp-mstdn.jp にメンションを送ることでコマンドを実行します。皆に見えてしまうので、DMがお薦めです。

subscribe Gargron@mastodon.social

のように、アカウントは先頭の@を除いたドメイン込みの表記、ハッシュタグはそのまま、追加したい分だけ記載します。

unsubscribe Gargron@mastodon.social

解除したいアカウント、タグを指定します。全部消しちゃう時は、 :all というオプションをつけてください。 :all-tag でタグだけ、 :all-account でアカウントだけ全消です。

status

現在のリレーの登録状況を確認します。

set :lang:ja

言語を指定します。:lang:en で英語、:lang:ja で日本語、という簡易の対応です。Mastodonの投稿言語の設定も反映されます。

hello

こんにちは!


スレッドを表示

に、ハッシュタグとアカウントの購読機能を追加しました。

先に投入した、個人参加の機能は、リレーへの送信のみでしたが、こちらは受信のみの機能です。

組み合わせることで、特定タグの送受信が可能になります。

また、直接フォローせずに、特定のアカウントの公開投稿をホームタイムラインで購読できる機能でもあります。

Public Followとか、Weak Followとか、何か名称が必要になりそうな概念です。

現在、Mastodonでの動作は確認されていますが、Pleromaについてはまだカバーできていません。Misskey他、テストできていないシステムで実行すると異常が発生するかもしれませんので、あらかじめご了承ください。


よし、Mastodonで動いたぞ、と思うと、だいたいPleromaで動かないので、そこからが本番って感じ……

の制御コマンドが増えてきて便利になってきたんだけど、これ一般の人に使ってもらうような代物じゃないな、やっぱり……。

WebUIを真面目に作らないと、使い方が難しくてわからん、という感じになっている。

まぁ、もうしばらくはその方がいいかもしれんけどw

のrelayctlに制御コマンドを送ると実行結果をDMで返信してくるんだけど、これすっごい邪魔なことに気がついた……。

自分の投稿はいくらでも消せるけど、相手から届いたDMは消せない。DMカラムが汚染されていく……。

そういうわけで、プライベートで返信するように変更。実行結果は主に通知をみてもらうようにする。

通知はその気になれば消せるし、どのみち他のモノで埋まっていくものなので、ここならまぁ邪魔にはならない。リプライになっているので、制御コマンド投稿にぶら下がっている。あと、relayctlのアカウントページからまとめて辿ることもできるハズ。

relayctlは誰もフォローできないので、メンション付きプライベート投稿の公開範囲は、実質DMなのだ。

CrystalのI18n対応、ひとまずこのshardsに落ち着いた。
github.com/TechMagister/i18n.c

あと、HTTP::HandlerについてはAmberで使われているcitrine-i18nを使わせてもらうことにした。
github.com/amberframework/citr

だが、MastodonもPleromaも、Activityを送ってくる時にAccept-Languageをつけてこないので役に立たないw

MastodonはActivityにcontent付ける時contentMapで使用言語の情報をよこすので、それを利用。

Pleromaは特に情報がないので拾えず。

わりといいところまで新機能書いたりしてたんだけど、開発環境が動かなくなったので復旧してからの再開になります……まぁ一日あれば戻るけども。

githubも、pushしてないと最新版になっているわけではないから、デバッグしてたヤツは手元にはない。なんでもかんでもpushする気にはならないしなー。

まぁTimeMachineでバックアップされてるので、そこから復旧するのだけども。

オイゲンさんがハッシュタグに力を入れている件、具体的にはまずこれです。

ユーザー自身で、注目しているハッシュタグを10個まで、設定ページからエントリーすることができます。(候補が提案されているのが親切ですね!)

そうすると、公開のプロフィールページに設定したハッシュタグのボタンが表示されるようになって、絞り込み表示ができます!

画像は、私のプロファイルページで、 に絞り込んで表示した実例です。
dtp-mstdn.jp/@noellabo/tagged/

私のプロフィールに表示されているハッシュタグも、わりとイカした実例だと思いますが、他にも上手な使い方があるかと思います。

たとえば作品発表している人なら、自作品につけているタグを掲載したら、かなり便利だと思いませんか?

、以前はブーストを適切にフィルタしてなかったんですが、今回の更新分からはフェッチして中身をみて判定するようになっています。

サーバ参加は、まだ全部を受け取れないみたい。バグがあるね、こりゃ。またあとで調べます。

スレッドを表示

@noellabo URLが入ると変換されちゃってアレだな……。

mix pleroma.relay follow https://hashtag-relay.dtp-mstdn.jp/actor

//だけ全角にしてみた。

スレッドを表示

結局、Pleromaとずっと格闘してしまった……。

・個人リレー参加(送信のみ)
・サーバ参加(受信のみ)

このへんは で動くようになっています。

サーバ参加の場合、コマンドはこんな感じです。
mix pleroma.relay follow hashtag-relay.dtp-mstdn.jp/act

Pleroma側にも機能を実装していきたいところだけど、その前に、 のコード(pub-relayのフォークで、selective-relayというのがプロダクト名だったりする)をちゃんとして、独自性、有用性、存在感を確立させておかないと相手にされないでありましょう。

取り急ぎ、Misskeyの方を先にやろう。

スレッドを表示

Pleromaのリレー機能追いかけていたんだけど、今のこれってちゃんと機能してるんだろうか……。

まぁとりあえず、 では、Pleroma標準のリレー参加コマンドで参加を受け付けるようにして、リレーから受信できるようにはした。

リレーへの送信は、個人参加は動くので、とりあえずそれでなんとかしてくれって感じ。

まだ本番環境には適用してない。とりえあず現状報告。

Pleromaを(手動で)ハッシュタグリレーに参加させた状態です。リレーから受信できています。

送信も個人参加で実現できています。サーバ単位での参加は、Pleroma側の実装を確認中です。

まだ細かな部分では問題含みなので、解決に取り組んでいます。

とりあえず、技術的には可能、ということをお伝えしておきます。

リレー制限を10分にしたよ。ぽむたんを再召還して能力が封じられたか確認しようず。 @nippon

もっと見る

のえる :cava_red: DTP鯖管 によるおすすめ:

DTP-Mstdn.jp

DTP-Mstdn.jpは、DTP・デザイン・印刷に関わる人々のためのMastodonインスタンスです。特定分野の専門インスタンスですので、日々のつぶやき、耳寄りな情報の共有、ディスカッション、質問とその回答、役立つスクリプトなど、他では投稿しづらい内容も、思う存分トゥートしましょう!