The Dolibarr BitTorrent module is a Dolibarr addon to make your Dolibarr to be a BitTorrent tracker. It was build from RivetTracker software.
RivetTracker is a modified version of PHPBTTracker Version 1.5rc3, written by "DeHackEd". This program provides the same functionality as most other BitTorrent trackers and uses MySQL as the database backend. It provides an RSS feed, optional support for HTTP seeding, detailed connection statistics, and much more.
PHPBTTracker was released under the GPLv2 license as is this program.
Some of the images used were provided by the Tango Desktop Project. These images are licensed under the Creative Commons Attribution-ShareAlike 2.5 License.
BitTorrent is a Peer to Peer (P2P) communication protocol for sharing files. A client downloads a small .torrent file from a website that contains the necessary information to put the whole file or files together. This torrent file contains a link to a tracker or trackers that provide information on who else is downloading or seeding the file. The term seeder refers to someone who has downloaded the entire file and is uploading parts of it to others called leechers. Leechers are people who have started the download and are downloading the file but have not finished yet. The beauty of BitTorrent is that it allows people to share files (especially large ones) easily without incuring huge hosting costs because of bandwidth limitations. Since all seeders and leechers are constantly uploading whatever data they have available, this speeds up the overall distribution of the file. You can start using BitTorrent right now by downloading and installing a BitTorrent client.
If you are new to BitTorrent and have not used it before please be careful when initially using it. Sadly, BitTorrent has become used heavily for distributing pirated movies, music, and games. That being said, many Linux distributions use BitTorrent legally to efficiently release their distribution on a global scale. Many websites use BitTorrent for purposes which may be illegal in the country that you live in. Just be careful and watch what you are downloading!
For more information on the specifics of the BitTorrent protocol you can visit the following websites:
A BitTorrent tracker is a piece of software that BitTorrent clients communicate with in order to receive information about other people downloading the file. You can think of a tracker as a mediator between clients. It doesn't actually transmit the file it just provides information about other people that have it.
RivetTracker is special because it is built using PHP and MySQL. This means you can easily create a website to share files and have a tracker that people around the world are able to connect to. The web-interface makes it easy to navigate and administer.
First step is to build a Torrent file (.torrent file). For this, you cmust use an external tool like maketorrent.
At this point you can start adding torrents to the database. Go to the add torrent file page.
Simply provide the .torrent file that you have created and specify whether you want one, both, or neither of the web seeding features. Most information can be automatically gathered from the torrent file but if you wish, you can provide a specific filename and URL for the database to use.
Click add and you have just added your first torrent to the database. If you go back to the statistics page you should see it listed as well as a link to download the torrent file.
If you want scrape functionality, edit the config.php file in bittorent directory to enable this. It is generally safe to leave this enabled, however, there is the possiblity that BitTorrent clients could use this abusively and request this information too much. For trackers that serve large numbers of torrents with many users, this will also increase bandwidth usage. Scraping is used in order to figure out if a request for additional peers is warranted. This request for peers eats up a lot of bandwidth and it is usually better to try to guage this by asking the tracker via a scrape.
The speed information is a rough estimate and only gets updated when a client connects to the tracker.
The RSS feed that is available is great for people who publish files on a regular basis, for example audio or video podcasts.
There are two standards for providing web seeding in BitTorrent. Web seeding allows an HTTP or FTP server to act as a seeder and provide files to the client. Most of the major BitTorrent clients support one standard or the other, or both.
The first standard was created by BitTornado and you can find the detailed specification here. It requires that the .torrent file be created with an additional list that holds the location or locations of a URL script that provides an interface to the BitTorrent client. The benefit of this is that the script is able to limit bandwidth usage and the number of connections to the server requesting the file. It also prevents hotlinking directly to the file and abuse. The downside is that only some BitTorrent client support this standard.
The other standard for web seeding is detailed by the GetRight creator here. This solution also requires that .torrent files include an additional list of direct links to the file or a link to a directory where the heirarchy can be re-created. The benefit of this standard is that it does not require any additional script be setup or communication with the server that the BitTornado standard does. The downside is that this standard is open to abuse from clients potentially hotlinking directly to the file.
RivetTracker includes support for both standards as well as the scripts required by BitTornado. When you go to add a torrent to the database, there is an option to add web seeding support. Simply fill in the required information and when the torrent is uploaded this information is added into the .torrent file. This makes migration of old torrent files a snap.
This module was build using Rivet Tracker software.
If you want to thanks authors of this tool, consider donating a few dollars for further development of this software and future projects that would be fantastic.