diff --git a/Source/RM.Designer.cs b/Source/RM.Designer.cs index fe1de99..1170151 100644 --- a/Source/RM.Designer.cs +++ b/Source/RM.Designer.cs @@ -759,6 +759,7 @@ internal void InitializeComponent() "Azureus", "Vuze", "BitTorrent", + "Transmission", "ABC", "BitLord", "BTuga", diff --git a/Source/RM.cs b/Source/RM.cs index 295afad..3487c1c 100644 --- a/Source/RM.cs +++ b/Source/RM.cs @@ -395,6 +395,13 @@ internal void cmbClient_SelectedIndexChanged(object sender, EventArgs e) if (customPeersNum.Text == "0" || customPeersNum.Text == "") customPeersNum.Text = "200"; break; } + case "Transmission": + { + cmbVersion.Items.Add("2.82 (14160)"); + cmbVersion.SelectedItem = "2.82 (14160)"; + if (customPeersNum.Text == "0" || customPeersNum.Text == "") customPeersNum.Text = "200"; + break; + } case "BitLord": { cmbVersion.Items.Add("1.1"); diff --git a/Source/TorrentClientFactory.cs b/Source/TorrentClientFactory.cs index 8de8139..3189447 100644 --- a/Source/TorrentClientFactory.cs +++ b/Source/TorrentClientFactory.cs @@ -461,6 +461,25 @@ public static TorrentClient GetClient(string name) break; } #endregion + #region Transmission + case "Transmission 2.82 (14160)": + { + client.Name = "Transmission 2.82 (14160)"; + client.HttpProtocol = "HTTP/1.1"; + client.HashUpperCase = false; + client.Key = GenerateIdString("hex", 8, false, true); + client.Headers = "User-Agent: Transmission/2.82\r\nHost: {host}\r\nAccept: */*\r\nAccept-Encoding: gzip;q=1.0, deflate, identity\r\n"; + client.PeerID = "-TR2500-" + GenerateIdString("alphanumeric", 12, false, false); + client.Query = "info_hash={infohash}&peer_id={peerid}&port={port}&uploaded={uploaded}&downloaded={downloaded}&left={left}&numwant={numwant}&key={key}&compact=1&supportcrypto=1{event}"; + client.DefNumWant = 80; + // client.Parse = true; + client.SearchString = "&peer_id=-TR2500-"; + client.ProcessName = "Transmission"; + // client.StartOffset = 0; + // client.MaxOffset = 200000000; + break; + } + #endregion #region ABC case "ABC 3.1": {