新しいものを表示

みんな、寒すぎて、どんなサムになったかな?
dic.nicovideo.jp/a/○○すぎて××になった

タキシードサム?

のえる さんがブースト
のえる さんがブースト

他鯖がメンテ中の時は、ウチもメンテすると困るだろうからそっとしておきましょう……

ひょっとして:寒い

のえる さんがブースト

わかり始めた Migration
スキーマ 変えることさ

のえる さんがブースト
のえる さんがブースト

最近みんなシュトレン普通に食べるようになったよね。
QT: fedibird.com/@noellabo/1053608
[参照]

のえる  
クリストシュトレンを食べたよ。 まめつこがウィーン(オーストリア)から送ってくれたものなんだけど、すっごく美味しいね!! #gochisou_photo
のえる さんがブースト
のえる さんがブースト

「あー ありがとうございますー
 今サーバをたてましたけどもね」

「ありがとうございますー」

「こんなん
 なんぼあっても良いですからね」

「一番良いですからね」

うわっ…私のリプ、し過ぎ…?
うわっ…私のいいね、し過ぎ…?
うわっ…私のフォロー、し過ぎ…?
うわっ…私のハッシュタグ、使い過ぎ…?
うわっ…私のメンション、し過ぎ…?

X、たいへんだね

絵文字、私がたまに1〜2個足すこともありますが、99%は登録申請者による選定です。

細かい話になりますが、

NodeInfoにはmetadataに自由に項目を含められるので、Pleroma系ではここに細かいサーバの対応情報が含まれています。

Fedibirdでは、MastodonのInstance APIに、各種制限値や対応している機能の一覧を含めています。

各ソフトウェア、それぞれ、どこかにこういった情報を出すよう工夫しています。

参照するのであればこういったメタ情報をみるべきですし、明示的に無効であることが示されていないものはトライして確認するような実装にしてもらえると助かります。

スレッドを表示

こういう表記、知ってますか?

> Mozilla / 5.0 (X11; Linux x86_64) AppleWebKit / 537.36 (KHTML, like Gecko) Chrome / 51.0.2704.103 Safari / 537.36

これ、HTTPでサーバとやり取りする際に、ブラウザが自分自身の名前を応答する際の文字列(UserAgent)なんですが、

これも伝統的に名前で判別して動作が変わったり、受け入れが決まったりするので、

MozillaではないのにMozillaと名乗ったり、AppleWebKitとかKHTMLとかGeckoとかChromeとかSafariとか、とにかく名前をずらずら並べて検知されるように工夫せざるを得なくなり、大変醜い姿になり果てています。

NodeInfoの名前で動作を決めるようにすると、FedibirdもMastodonととりあえず名乗っておかないと相手にされなくなりますし、

もともとMastodonとは全く異なるソフトウェアも、MastodonのフリをするためにMastodonを名乗るようになります。そうせざるを得ないので。

まあまあ最悪なので、名前で判別するのはやめてください、というお話です。

スレッドを表示

Fediverse(広義)のサーバは、自分自身のソフトウェア名やバージョン、状態、対応機能などの情報をNodeInfoという形式で提供しています。

fedibird.comのNodeInfoはこれです。
fedibird.com/nodeinfo/2.0

クライアントアプリを実装する際、この情報を元に、指定したドメインがActivityPubのサーバであるか、どのソフトウェアかを調べ、それに応じた対応をすることができます。

ただし、ソフトウェアの名称を頼りに判別を行うと、よく知られたあらかじめ対応しているアプリならいいのですが、マイナーな実装、新規の実装は無視されることが多くなります。

実際は、ActivityPubサーバであることだけを確認し、それぞれのAPIを呼び出して応答するか確かめるようにすべきで、

そうすると、MastodonのAPIと互換性のあるサーバソフトウェアであれば、アプリ側が知らないサーバソフトウェアであったとしても、対応できるようになります。

ただし、クライアントアプリ側の事情として、未知の実装で不具合が出た際に、互換性のクレームがアプリ開発者側に来るという問題があり、避けたいというケースもままありますので、意図的に対応しないこともあります。

古いものを表示
Fedibird

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