Scalaアプリにいくつかのbittorrent機能を含めたいと思っています。使いやすさのために、できればマグネットリンクだけを使いたいです。問題は、 ttorrentのようなビルド済みのライブラリを使用したいということです。しかし、これらのライブラリはマグネットリンクを使用せず、metainfoまたはトレントファイル自体を使用していることがわかりました。
したがって、私の最初のステップは、マグネットリンクを取得し、自分でmetainfoオブジェクトを作成することだと思います。マグネットリンクの構成をよく理解しており、パラメータに解析できます。マグネットパラメータの使い方がよくわかりません。どうしたらいいのかわからない。
これは、PBで使用できるテストマグネットリンクです。
magnet:?xt=urn:btih:ad11eb1a0aeed57116225fb341dc61883c22aeba&dn=Rise.of.the.Guardians.2012.TS.NEW.SOURCE.x264.AAC-UNiQUE&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80
それを解析した後、私は得ます:
xt=urn:btih:ad11eb1a0aeed57116225fb341dc61883c22aeba
dn=Rise.of.the.Guardians.2012.TS.NEW.SOURCE.x264.AAC-UNiQUE
tr=udp://tracker.openbittorrent.com:80
tr=udp://tracker.publicbt.com:80
tr=udp://tracker.istole.it:6969
tr=udp://tracker.ccc.de:80
十分に単純です。今はあまりハッシュを使用していませんが、ハッシュから直接情報を取得することはできないと確信しています。私の唯一の推測は、メタ情報を取得するためにトラッカーの1つに連絡する必要があるかもしれないということです。でもわかりません。
[fyi]トレントは、アプリのユーザー間でアプリデータとアプリファイルを共有するための合法的な共有にのみ使用されます。