Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#1003 closed Enhancement (invalid)

Add torrent via URL

Reported by: KyleK Owned by:
Priority: Low Milestone: None Set
Component: Transmission Version: 1.21
Severity: Normal Keywords:
Cc:

Description

Now that Transmission utilizes the curl library, it would be nice to add a torrent by providing a URL for Transmission, either on the commandline:

transmission-remote --add http://www.tracker.com/some.torrent

and also via RPC. This way it will be possible to remotely add a torrent to a sever-side Transmission daemon without providing the actual .torrent file.

Change History (3)

comment:1 Changed 8 years ago by charles

  • Resolution set to invalid
  • Status changed from new to closed

This is kind of a good idea, but I'm not sure I want to take this step (yet? at all?) with the daemon because it changes the current approach of having all requests get a response immediately. A URL add can't return immediately, since we don't know how long it'll take the RPC server to fetch the remote file.

There's probably a command-line way to do this with wget and pipes. ;)

comment:2 Changed 8 years ago by KyleK

I agree that it's rather simple to do on the command-line using wget, but that still requires you to have direct access to the machine Transmission is running on (telnet, ssh, shell).

The new RPC protocol enables people to remotely control and observe Transmission. I would consider it a (rather critical) missing feature not being able to add a torrent remotely.

I'm currently experimenting with C# to produce a client that can control the new Transmission. It would obviously run on a different machine. Even consider Clutch running on a server different than the one Transmission runs on. Adding files would not be possible then.

How about sending to responses to requests that are potentially time-consuming: The first after the daemon has received the request (just stating that it has arrived). You can even do some fast checking if the request is valid (e.g. are all arguments present, is it a proper URL etc.).

You can then later send a second response informing the client whether the instruction was actually successful or whether if failed (it could contain the error message produced by curl in case a torrent could not be fetched).

comment:3 Changed 8 years ago by charles

You can add a torrent remotely, but you have to have the metainfo at-hand in order to do so. see the `metainfo' argument to torrent-add. You can already add new torrents this way without having remote access to the machine that the daemon's running on.

Note: See TracTickets for help on using tickets.