Feature: Download client rules (#18)

* feat(web): add and update download client rules

* feat: add and update download client rules

* feat: add active downloads check

* chore: update pkg

* feat: deluge max active downloads

* feat: use basic rules for deluge

* feat: add as paused

* refactor: download file if needed

* feat: better errors qbit
This commit is contained in:
Ludvig Lundgren 2021-09-10 16:54:30 +02:00 committed by GitHub
parent 09eb0b1716
commit c02f16b64d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
25 changed files with 628 additions and 228 deletions

View file

@ -177,3 +177,42 @@ const (
// 4 Tracker has been contacted, but it is not working (or doesn't send proper replies)
TrackerStatusNotWorking TrackerStatus = 4
)
type ConnectionStatus string
const (
ConnectionStatusConnected = "connected"
ConnectionStatusFirewalled = "firewalled"
ConnectionStatusDisconnected = "disconnected"
)
// TransferInfo
//
// https://github.com/qbittorrent/qBittorrent/wiki/WebUI-API-(qBittorrent-4.1)#get-global-transfer-info
//
// dl_info_speed integer Global download rate (bytes/s)
//
// dl_info_data integer Data downloaded this session (bytes)
//
// up_info_speed integer Global upload rate (bytes/s)
//
// up_info_data integer Data uploaded this session (bytes)
//
// dl_rate_limit integer Download rate limit (bytes/s)
//
// up_rate_limit integer Upload rate limit (bytes/s)
//
// dht_nodes integer DHT nodes connected to
//
// connection_status string Connection status. See possible values here below
//
type TransferInfo struct {
ConnectionStatus ConnectionStatus `json:"connection_status"`
DHTNodes int64 `json:"dht_nodes"`
DlInfoData int64 `json:"dl_info_data"`
DlInfoSpeed int64 `json:"dl_info_speed"`
DlRateLimit int64 `json:"dl_rate_limit"`
UpInfoData int64 `json:"up_info_data"`
UpInfoSpeed int64 `json:"up_info_speed"`
UpRateLimit int64 `json:"up_rate_limit"`
}