-
Notifications
You must be signed in to change notification settings - Fork 154
Plugins
BiglyBT supports various plugins to extend its features. Some are actually built into BiglyBT and don't need installing. Others have separate repositories and documentation, see https://github.com/BiglySoftware/
For example, the 'Command Runner' plugin can be found at https://github.com/BiglySoftware/BiglyBT-plugin-azexec
External plugins can be installed by going to the Tools menu and selecting Plugins->Get Plugins
This was added in 2801_B20 to initially support a the adding of a tag or category to a download but can easily be extended. The intent is that it would be called from a local script - the external plugin "BiglyBT Web Remote" has a very extensive API for interacting with BiglyBT but is more complicated to use, hence the addition of this plugin.
An 'apikey' is required for all operations as a security measure, this can be found in the plugin configuration under Plugins->Simple API. You can set this to whatever you want or use the suggested value.
Operations are performed via a simple URL and currently the response is via HTTP code - 200 indicates success.
Typically the plugin will accept connections to local host on the (default) port of 6906:
http://127.0.0.1:6906/?apikey=<key>&...
To add a tag to a download the remainder of the URL is
method=addtag&hash=<download hash>&tag=<tag name>
To remove a tag from a download:
method=removetag&hash=<download hash>&tag=<tag name>
To set a download's category: (Use "" for uncategorized):
method=setcategory&hash=<download hash>&category=<category name>
To set a download's networks (valid networks are "Public", "I2P" and "Tor"): (Since 2801_B25)
method=setnetworks&hash=<download hash>&networks=<comma separated network list>
For simple attributes this method can be used: (Since 2801_B29)
method=setdownloadattribute&hash=<download hash>&name=<attribute_name>&value=<attribute_value>[&name=<...>&value=<...>]*
Supported attributes:
- completedon: value=seconds since January 1st 1970
- displayname: download's display name
- savepath: download save path - rename the download name/folder only, can't be used to generally move the download location
- torrentname: name of the torrent
- usercomment: user comment
- ipfilterenable: whether or not the download's IP filter is enabled; value=true/false (since 2901_B11)
To raise an alert against a download: (details is optional)
method=alert&caption=<caption>&type=<info|error>&details=<extra information>
Rather than continually extending the 'execute on assign' Tag function with more and more features it made sense to enhance the existing 'script' option to invoke SimpleAPI features directly. Given that this is an internal invocation the 'apikey' is not required. Also as it applies to a specific download the 'hash' is implicit. For example, to invoke the 'setnetworks' method to set the download's networks to 'I2P you would use the following script
plugin( simpleapi, "method=setnetworks&networks=I2P" )
Multiple commands can be executed by semi-colon separating them.
bigly help