index.txtの仕様 - kumaryu/peercaststation GitHub Wiki

index.txtとは何か

ここに来るような人はチャンネルブラウザを大抵は使っているであろう。 そのチャンネルブラウザが読みこむのがindex.txtでチャンネルの情報を記したリストである。 2chを知っているのならdatファイルのようなもの。

仕様

文字エンコーディング

文字コードだが、現在(2016年2月1日)あるYPのうち、SPとTPはUTF-8である。

確実に文字コードを知るためにはHTTP GETした時にサーバーから返ってきたヘッダを見るとよい。 Content-Type: text/plain; charset=utf-8とか書いてあるはずだ。

項目と区切り文字

index.txtは1行に1チャンネルが記述されている。

チャンネルの項目間は<>で区切られている。 チャンネルの項目内で<または>が使われる場合、&lt;とか&gt;と記される。

記されている項目は以下の順番([]内に<>で区切られたときの0から始まる順番)。

  1. チャンネル名 [0]
  2. チャンネルID [1]
  3. TIP(トラッカーIP) [2]
  4. コンタクトURL [3]
  5. ジャンル [4]
  6. 詳細 [5]
  7. リスナー数(負の値も有り得る) [6]
  8. リレー数(負の値も有り得る) [7]
  9. ビットレート(単位はkbps) [8]
  10. タイプ(コンテナの種別: WMV,FLV,MKVなど) [9]
  11. トラック アーティスト [10]
  12. トラック アルバム [11]
  13. トラック タイトル [12]
  14. トラック コンタクトURL [13]
  15. チャンネル名をURLエンコードした文字列 [14]
  16. 配信時間(0:00形式) [15]
  17. "click"という文字列 [16]
  18. コメント [17]
  19. 0か1のいずれか [18]

さらに以下の仕様があるようだ。

  • チャンネルIDは制限されているとき全て0になる。
  • TIPはプッシュ配信時に空白。制限チャンネルは127.0.0.1。
  • コンタクトURLはどちらもURLとは限らない。任意の文字列を指定できる。
  • リスナー数はYP4Gだと-1は非表示を表わし、それ以下はサーバーメッセージを示す。
⚠️ **GitHub.com Fallback** ⚠️