GSoC 2009/Projects/BitTorrent plugin for Canola

 
(19 intermediate revisions not shown)
Line 5: Line 5:
*'''Repository''': http://gitorious.org/canola-bittorrent-plugin
*'''Repository''': http://gitorious.org/canola-bittorrent-plugin
-
== INTRO ==
+
== Intro ==
The purpose of this project is to develop a BitTorrent plugin for Canola2.
The purpose of this project is to develop a BitTorrent plugin for Canola2.
== Features ==
== Features ==
* Browse RSS feeds of several (legal) torrent sites. Includes detailed view of feed entry
* Browse RSS feeds of several (legal) torrent sites. Includes detailed view of feed entry
 +
* Allow seaching torrent sites: The Pirate Bay, Mininova and LegalTorrents
* Download torrents using built-in BitTorrent 3. Includes detailed view of download
* Download torrents using built-in BitTorrent 3. Includes detailed view of download
* Download torrents using locally running Transmission via JSON RPC interface
* Download torrents using locally running Transmission via JSON RPC interface
Line 19: Line 20:
== To-do ==
== To-do ==
-
* Add download destination choice for feed entry view
 
-
* Add upload bitrate limit option
 
-
* Add connection limit option
 
* Make possible to choose between built-in BitTorrent engine and running Transmission for local downloads
* Make possible to choose between built-in BitTorrent engine and running Transmission for local downloads
 +
* Consistent terminology among the source code (leechers vs peers for example)
 +
* Save some of the runtime options to SQL database included in Canola (SQL table for dict perhaps?)
 +
 +
== Other ideas ==
 +
* Allow searching in RSS feed
 +
* Allow browsing Torrent contents and playback of retrieved media.
* Clean up download view and feed entry view
* Clean up download view and feed entry view
* Clean up menus
* Clean up menus
* Debug
* Debug
-
==Beta version==
+
==Installing and usage==
-
To install on your Nokia internet tablet, point your web browser to:
+
Please follow manual [http://v6sa.itcollege.ee/shared/canola/man here]
-
http://v6sa.itcollege.ee/shared/canola/canola2-torrent-plugin-0.1-maemo4.deb
+
==Reports==
 +
[[GSoC_2009/Projects/BitTorrent_plugin_for_Canola/Report1|First report]], a bit late tough :P
-
Follow your application manager dialogs and you're done!
+
[[GSoC_2009/Projects/BitTorrent_plugin_for_Canola/Report2|Second report]], some new stuff
-
NB! You are expected to have Canola2 installed on your device!
+
[[GSoC_2009/Projects/BitTorrent_plugin_for_Canola/Report3|Third report]], we're approaching finish soon
-
License: Mixed Free Software licenses
+
[[GSoC_2009/Projects/BitTorrent_plugin_for_Canola/Report4|Final report]]
-
Screenshots:
+
[[Category:Google Summer of Code]]
-
[http://v6sa.itcollege.ee/shared/canola/screenshot1.png]
+
-
[http://v6sa.itcollege.ee/shared/canola/screenshot2.png]
+
-
[http://v6sa.itcollege.ee/shared/canola/screenshot3.png]
+
-
[http://v6sa.itcollege.ee/shared/canola/screenshot4.png]
+
-
 
+
-
==Done==
+
-
This is multi-purpose torrent plugin, so far I have completed
+
-
* Management of Transmission instances on several hosts:
+
-
** Pause, resume, remove torrents.
+
-
** Show done/total sizes and up/download speeds.
+
-
** Options panel includes Pause all and Resume all.
+
-
** Hosts and their login information is stored in Canola's SQL database.
+
-
** This allows user to manage their downloads on desktop, laptop, router etc.
+
-
* Painless management of local Transmission instance on the tablet
+
-
** Starts Transmission minimized and paused if required.
+
-
** Reads Transmission settings automatically or resets them.
+
-
** Using separate process allows user to exit Canola while keeping their downloads running.
+
-
* Read RSS feeds of several (legal) torrent websites.
+
-
** Add linked torrents to running Transmission instances (currently adds to local Transmission only).
+
-
** Respects your download folder location set in Canola settings panel
+
-
** This allows user easily to browse new media availible and start downloading with single click.
+
-
* Manipulation of host list.
+
-
** You can also enter passworded Transmission instances in the standard URL format: http://user:pass@host:9091
+
-
* Manipulation of feed list
+
-
* I have successfully forked pure-python BitTorrent 3, cleaned up the code and integrated it to my plugin. Basic functions seem to be working. Will update Debian package ASAP.
+
-
* Fullscreen view of feed entry:
+
-
** Title
+
-
** Updated
+
-
** Description
+
-
* Fullscreen view of download details:
+
-
** Big progress bar
+
-
** Pieces downloaded/verified
+
-
** Total size
+
-
** Peers
+
-
** Seeders
+
-
** Upload rate
+
-
** Download rate
+
-
 
+
-
 
+
-
 
+
-
==To-Do==
+
-
* Fullscreen view of feed item:
+
-
** In Options panel choice for download destination (which Transmission instance)
+
-
* Allow browsing Torrent contents and playback of retrieved media.
+
-
* Add feature to search in RSS feeds
+
-
 
+
-
 
+
-
==Reports==
+
-
[http://wiki.maemo.org/GSoC_2009/Projects/BitTorrent_plugin_for_Canola/Report1 First report], a bit late tough :P
+

Latest revision as of 09:57, 12 February 2010

Contents

[edit] BitTorrent plugin for Canola - GSoC 2009 Project

[edit] Intro

The purpose of this project is to develop a BitTorrent plugin for Canola2.

[edit] Features

  • Browse RSS feeds of several (legal) torrent sites. Includes detailed view of feed entry
  • Allow seaching torrent sites: The Pirate Bay, Mininova and LegalTorrents
  • Download torrents using built-in BitTorrent 3. Includes detailed view of download
  • Download torrents using locally running Transmission via JSON RPC interface
  • Manage torrent downloads on remote Transmission instance
  • Allows accessing password protected remote instances of Transmission via standard URL format: http://user:pass@host:9091
  • Respects your Canola settings of download folder
  • Allows adding, modifying, deleting and renaming RSS feeds
  • Allows adding, modifying, deleting and renaming Transmission hosts

[edit] To-do

  • Make possible to choose between built-in BitTorrent engine and running Transmission for local downloads
  • Consistent terminology among the source code (leechers vs peers for example)
  • Save some of the runtime options to SQL database included in Canola (SQL table for dict perhaps?)

[edit] Other ideas

  • Allow searching in RSS feed
  • Allow browsing Torrent contents and playback of retrieved media.
  • Clean up download view and feed entry view
  • Clean up menus
  • Debug

[edit] Installing and usage

Please follow manual here

[edit] Reports

First report, a bit late tough :P

Second report, some new stuff

Third report, we're approaching finish soon

Final report