Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Deluge

Hierarchy

  • Deluge

Implements

  • TorrentClient

Index

Constructors

constructor

  • new Deluge(options?: Partial<TorrentSettings>): Deluge
  • Parameters

    • Default value options: Partial<TorrentSettings> = {}

    Returns Deluge

Properties

Private Optional _cookie

_cookie: Cookie

Private _msgId

_msgId: number = 0

config

config: TorrentSettings

Methods

Private _normalizeTorrentData

  • _normalizeTorrentData(id: string, torrent: Torrent): NormalizedTorrent
  • Parameters

    Returns NormalizedTorrent

Private _validateAuth

  • _validateAuth(): Promise<void>
  • Returns Promise<void>

addLabel

  • Parameters

    • label: string

    Returns Promise<DefaultResponse>

addTorrent

addTorrentMagnet

changePassword

  • Parameters

    • password: string

    Returns Promise<BooleanStatus>

checkSession

  • checkSession(): Promise<boolean>
  • Checks current session is valid

    Returns Promise<boolean>

    true if valid

connect

  • connect(selectedHost?: undefined | string, hostIdx?: number): Promise<ListMethods>
  • Connects deluge and returns a list of available methods

    Parameters

    • Optional selectedHost: undefined | string
    • Default value hostIdx: number = 0

      index of host to use in result of get hosts

    Returns Promise<ListMethods>

connected

  • connected(): Promise<boolean>
  • Returns Promise<boolean>

disablePlugin

  • Parameters

    • plugins: string[]

    Returns Promise<DefaultResponse>

disconnect

  • disconnect(): Promise<boolean>
  • Disconnects deluge - warning all instances connected to this client will also be disconnected. Other instances may also reconnect. Not really sure why you would want to disconnect

    Returns Promise<boolean>

enablePlugin

  • Parameters

    • plugins: string[]

    Returns Promise<DefaultResponse>

getAllData

  • getAllData(): Promise<AllClientData>
  • Returns Promise<AllClientData>

getConfig

getHostStatus

  • Gets host status

    Parameters

    • host: string

      pass host id from this.getHosts()

    Returns Promise<GetHostStatusResponse>

getHosts

getLabels

getPluginInfo

  • getPluginInfo(plugins: string[]): Promise<PluginInfo>
  • Parameters

    • plugins: string[]

    Returns Promise<PluginInfo>

getPlugins

getTorrent

  • getTorrent(id: string): Promise<NormalizedTorrent>
  • Parameters

    • id: string

    Returns Promise<NormalizedTorrent>

getTorrentFiles

  • Get list of files for a torrent

    Parameters

    • torrentId: string

    Returns Promise<TorrentFiles>

getTorrentInfo

  • getTorrentInfo(tmpPath: string): Promise<TorrentInfo>
  • used to get torrent info before adding

    Parameters

    • tmpPath: string

      use path returned from upload torrent looks like '/tmp/delugeweb-DfEsgR/tmpD3rujY.torrent'

    Returns Promise<TorrentInfo>

getTorrentStatus

  • getTorrentStatus(torrentId: string, additionalFields?: string[]): Promise<TorrentStatus>
  • get torrent state/status

    Parameters

    • torrentId: string
    • Default value additionalFields: string[] = []

      fields ex - ['label']

    Returns Promise<TorrentStatus>

getVersion

  • returns the version ex - 2.0.3-2-201906121747-ubuntu18.04.1

    Returns Promise<StringStatus>

listMethods

  • Lists methods

    Parameters

    • Default value auth: boolean = true

      disable or enable auth connection

    Returns Promise<ListMethods>

    a list of method names

listTorrents

  • Parameters

    • Default value additionalFields: string[] = []
    • Default value filter: {} = {}
      • [key: string]: string

    Returns Promise<TorrentListResponse>

login

  • login(): Promise<boolean>
  • Login deluge

    Returns Promise<boolean>

    true if success

logout

  • logout(): Promise<boolean>
  • Logout deluge

    Returns Promise<boolean>

    true if success

normalizedAddTorrent

  • normalizedAddTorrent(torrent: string | Buffer, options?: Partial<NormalizedAddTorrentOptions>): Promise<NormalizedTorrent>
  • Parameters

    • torrent: string | Buffer
    • Default value options: Partial<NormalizedAddTorrentOptions> = {}

    Returns Promise<NormalizedTorrent>

pauseTorrent

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

queueBottom

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

queueDown

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

queueTop

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

queueUp

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

removeLabel

  • Parameters

    • label: string

    Returns Promise<DefaultResponse>

removeTorrent

  • removeTorrent(torrentId: string, removeData?: boolean): Promise<BooleanStatus>
  • Parameters

    • torrentId: string

      torrent id from list torrents

    • Default value removeData: boolean = true

      true will delete all data from disk

    Returns Promise<BooleanStatus>

request

  • request<T>(method: string, params?: any[], needsAuth?: boolean, autoConnect?: boolean): Promise<Response<T>>
  • Type parameters

    • T: object

    Parameters

    • method: string
    • Default value params: any[] = []
    • Default value needsAuth: boolean = true
    • Default value autoConnect: boolean = true

    Returns Promise<Response<T>>

resetSession

  • resetSession(): void
  • Returns void

resumeTorrent

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

setConfig

setTorrentLabel

  • setTorrentLabel(torrentId: string, label: string): Promise<DefaultResponse>
  • Parameters

    • torrentId: string
    • label: string

    Returns Promise<DefaultResponse>

setTorrentOptions

setTorrentTrackers

  • Parameters

    • torrentId: string
    • Default value trackers: Tracker[] = []

    Returns Promise<DefaultResponse>

updateTorrentTrackers

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>

upload

  • Parameters

    • torrent: string | Buffer

    Returns Promise<UploadResponse>

verifyTorrent

  • Parameters

    • torrentId: string

    Returns Promise<DefaultResponse>