I thought I'd finally sign up and share my first raspberry pi project.
Firstly, I must say I do not endorse or condone the use or development of such a device, and have never used it myself
- My raspi hosts a web-app I made that serves as a front-end to popular torrent sites. You can search or return a list of the top seeded movies.
- Clicking on one of the results brings up some basic information; seeders, leechers, a details link, and a download button.
- Pressing the download button starts the Pi downloading the torrent.
- The Downloads tab shows progress/completion of downloads
- Once the download is complete, it is moved to the Libraries directory and is available for streaming via DLNA.
- The libraries directory shows a list of completed downloads, remaining space on storage, and allows the user to delete items.
- The Pi runs lighttpd, php, rtorrent & miniDLNA
- All requests to/from torrent sites is via a custom PHP API I wrote that parses the sites' HTML and returns data in JSON.
- This request for JSON results is done via JQuery and AJAX. The user interface is one page - everything is updated dynamically.
- The Downloads tab data is populated by a PHP ajax request that returns data in JSON, that uses a class I wrote to control rTorrent via XML-RPC. This class can list current downloads & start new ones from a provided .torrent file URL.
- When downloads are complete, they are moved them into a directory that is monitored by miniDLNA.
- The Library class works similarly to the rest
- And finally it's all wrapped up nicely in twitter bootstrap's CSS.
It's incredibly stable - been up and running perfectly for a couple of weeks now. Can simultaneously download as many as 5 (maybe more) torrents and stream to 2 devices.
Future plans are to make it download torrent chunks sequentially/contiguously so streaming is possible. Possibly make an interface on the device itself using QT5 (already experimenting with this).
Check out the screen captures from my iPhone:
Hope this gives you some ideas