MastodonとかMisskeyの情報を入手するやつ

こんにちは。Misskey、使ってますか?私は自宅鯖でのんびり使っています。

さて、MisskeyやMastodonはお互いのサーバーの投稿をフォローやリツイート(Renote,Boost)で見る事ができます。しかし、それぞれのAPIはバラバラで、大変めんどくさいです。(MisskeyのAPIMastodonのAPI

という事でそれら以外のまとめ也。

manifest.jsonとNodeInfoを使え

こいつらはだいたいどこのサーバーも使えるよやったね。

manifest.json

こいつはhttps://example.com/manifest.jsonにアクセスすればすぐに手に入る、便利なやつ……なのだが、当然のごとく内容がバラバラである。

ひとまず、Misskey、Mastodon、Pleromaの共通項だけリストにしておく。

manifest.json
{
	"name": [インスタンスの名前],
	"start_url": [ルートディレクトリ?多分"/"],
	"display": "standalone",
	"background_color": [色コード(#000000~#ffffff)],
	"theme_color": [色コード],
	"icons": [
		{
			"src": [アイコンURL],
			"type": [MIMEタイプ]
		}

	],
}

舐め腐ってんのか???一応、それぞれのソフトウェアでバラバラに使えそうな記述はあるものの、いちいち見てられねぇな!

NodeInfo

こっちはhttps://example.com/.well-known/nodeinfoにアクセスして対応してるURLを確認しておく必要あり。

nodeinfo
{
	"links": [
		{
			"rel": "http://nodeinfo.diaspora.software/ns/schema/2.0",
			"href": [URL]
		}
	]
}

こんなのが帰ってくる。で、このURLにアクセスするといろいろ見れる。のだが、Mastodonから帰ってくる情報量がクッソ少ないせいで共通項が大した量じゃなくなってしまった。

nodeinfo
{
	"version": [nodeinfoのバージョン],
	"openRegistrations": [新規登録可能か],
	"software": {
		"name": [ソフトウェア名(Misskey,Mastodon...)],
		"version": [バージョン]
	},
	"protocols": [
		"activitypub"
	],
	"usage": {
		"users": {
			"total": [ユーザー数],
			"activeMonth": [月間アクティブユーザー、開設から時間がたってないとNull?],
			"activeHalfyear": [半年のアクティブユーザー、開設から時間がたってないとNull?]
		},
		"localPosts": [合計投稿数]
	},
}

誰か最強API作って全部のソフトウェアをまとめあげてくれや。