Transmission.API.RPC.NET
4.1.2
See the version list below for details.
dotnet add package Transmission.API.RPC.NET --version 4.1.2
NuGet\Install-Package Transmission.API.RPC.NET -Version 4.1.2
<PackageReference Include="Transmission.API.RPC.NET" Version="4.1.2" />
<PackageVersion Include="Transmission.API.RPC.NET" Version="4.1.2" />
<PackageReference Include="Transmission.API.RPC.NET" />
paket add Transmission.API.RPC.NET --version 4.1.2
#r "nuget: Transmission.API.RPC.NET, 4.1.2"
#:package Transmission.API.RPC.NET@4.1.2
#addin nuget:?package=Transmission.API.RPC.NET&version=4.1.2
#tool nuget:?package=Transmission.API.RPC.NET&version=4.1.2
Transmission-API-RPC
Modern Transmission RPC packet for .net10
Support Transmission server >= 4.1.0 (rpc_version_semver 6.0.0) and JSON-RPC 2.0
If your server version is less than 4.1.0 please use original old packet
Documentation
Official Transmission RPC specs
C# implementation of the Transmission RPC API.
| Command | Not Implemented | Implemented |
|---|---|---|
| torrent_start | x | |
| torrent_start_now | x | |
| torrent_stop | x | |
| torrent_verify | x | |
| torrent_reannounce | x | |
| torrent_set | x | |
| torrent_get | x | |
| torrent_add | x | |
| torrent_remove | x | |
| torrent_set_location | x | |
| torrent_rename_path | x | |
| group_set | x | |
| group_get | x | |
| session_set | x | |
| session_get | x | |
| session_stats | x | |
| blocklist_update | x | |
| port_test | x | |
| session_close | x | |
| queue_move_top | x | |
| queue_move_up | x | |
| queue_move_down | x | |
| queue_move_bottom | x | |
| free_space | x |
How to use
Install Nuget Package: PM> Install-Package Transmission.API.RPC.NET
using Transmission.API.RPC.Entity;
// URL might look like "schema://host:port/transmission/rpc" for example "https://website.com:9091/transmission/rpc"
var client = new Client("URL", "PARAM_SESSION_ID", "PARAM_LOGIN", "PARAM_PASS");
var sessionInfo = client.GetSessionInformation(); // All fields or use SessionFields class
var allTorrents = client.TorrentGet(TorrentFields.ALL_FIELDS);
//<...>
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.Http (>= 10.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
4.1.2
• FreeSpace function now returns a FreeSpace class according to the original specification
• PortTest function now return a PortTest class according to the ooriginal specification
• Improving performance when deserializing objects using the generated partial code of the JsonSerializerContext class
4.1.1
• Fix type mismatch of field SequentialDownload in SessionInfo
4.1.0
• The version corresponds to the minimum supported server
• Support JSON-RPC 2.0
• Added GroupSet, GroupGet methods.
• Added TorrentReannonce methods
• Added TorrentFields - Avalabilty, BytesCompleted, Group, SequentialDownload, SequentialDownloadFromPiece, BeginPiece, EndPiece
• Added SessionFields - BlocklistSize, ScriptTorrentAddedEnabled, ScriptTorrentAddedFilename,
ScriptTorrentDoneSeedingEnabled, ScriptTorrentDoneSeedingFilename, SequentialDownload, RpcVersionSemVer
• Added TransmissionTorrentPeers - IsIncoming, PeerId
• Added TransmissionTorrentPeersFrom - FromCache
• Added TransmissionTorrentTrackerStats - DownloaderCount, SiteName
2.2.2
• Use IHttpClientFactory instead of create new HttpClient for every request
• Added string[] fields as parameter to function GetSessionInformation
• Added static class SessionFields
2.2.0
• Porting the project to .Net 10.
• Using System.Text.Json instead of Newtonsoft Json.NET.
• Support for server version 4.1.0