I am making a torrent client. I decode the torrent file and send this request to the tracker:
http://tracker.mininova.org/announce?uploaded=0&downloaded=0&compact=0&event=started&peer_id=12345678987654321234&port=6881&info_hash=%18%28n%23K%ECt%B7%93S%C5%F1-%F3%1C%18k%CEX%A4&left=0
and this is what I received:
{'min interval': 1800, 'peers': '', 'interval': 1800, 'complete': 37, 'incomplete': 0}
Why is the peer list empty? There are 37 peers that are seeders, shouldn't I get some peer information from them?
The reason that you got an empty peer list is because the tracker don't send seeds to other seeds and there was no leechers registered at the moment of the request.
The tracker registered you as a seed because you sent &left=0
in the request string, indicating that you have the complete torrent.
Instead, say the torrent is 200075 bytes and the client has not downloaded anything yet,
it should add &left=200075
and the announce will be:
http://tracker.mininova.org/announce?uploaded=0&downloaded=0&compact=0&event=started&peer_id=12345678987654321234&port=6881&info_hash=%18%28n%23K%ECt%B7%93S%C5%F1-%F3%1C%18k%CEX%A4&left=200075
and there will be no answer because the tracker is long dead.
See: https://wiki.theory.org/index.php/BitTorrent_Tracker_Protocol#Basic_Tracker_Announce_Request
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With