snortってメッセージプロトコルはポストしたときの応答は以下なんだけど、
{
"メッセージ種別(EVENTとか)",
"今回の通信のユニークなID。数字とか※1",
{/"* ここからNIP *"
"id": "idなやつ",
"kind": 1, /* ポスト(仕様書的にはtext) */
"content": "ポストの本文",
"created_at": 作成されたPOSIXTIME(UTC?),
"pubkey": "pubkeyを16進変換した値(https://damus.io/key/)",
"sig": "これはなんなのかわからん。bitcoin的にsecp256k1+sha256らしいけど",
"tag": []/*ポストにタグが含まれていたらそれが入る*/
}
}
だけどsnort.socialだけは※1が "timeline:pubkey:follows"や"profiles:e515d9e2"とかになっていてめっちゃわかりやすい。HTTPヘッダの方でどのクライアントとの通信なのかユニークに分かるIDを発行しているからなのかな。すべてのリレーサーバーとクライアントはこの実装に寄せて欲しい。
仕様書