A Powershell module that integrates with the Transmission RPC API.
Available in the Powershell Gallery
A collection of Powershell cmdlets that allow integration with a Transmission instance via the RPC API.
All endpoints in the RPC specification are exposed: Transmission RPC spec.
Install-Module Transmission
Import-Module Transmission
Before any of the Transmission cmdlets can be run, both your host and credentials need to be registered to the current session using the Set-TransmissionCredentials cmdlet, for example:
Set-TransmissionCredentials -Host "http://192.168.0.1:9091/transmission/rpc" -User "user" -Password "password"
This registers your credentials for the duration of the session. Adding a -StorePermanent switch to the Set-TransmissionCredentials command will create an encrypted file saved on your machine that will obviate the need to set credentials with each new session:
Set-TransmissionCredentials -Host "http://192.168.0.1:9091/transmission/rpc" -User "user" -Password "password" -StorePermanent
You can remove credentials at any time by using the Remove-TransmissionCredentials cmdlet. To remove a file created using the -StorePermanent switch run the Remove-TransmissionCredentials with a -DeletePermanent switch:
Remove-TransmissionCredentials -DeletePermanent
Set-TransmissionCredentials
Remove-TransmissionCredentials
Close-TransmissionSession
Get-TransmissionSession
Get-TransmissionSessionStatistics
Set-TransmissionAltSpeedLimits
Set-TransmissionSession
Test-TransmissionPort
Update-TransmissionBlockLists
Invoke-TransmissionWeb
Add-TransmissionTorrents
Assert-TransmissionTorrentsVerified
Get-TransmissionTorrents
Invoke-TransmissionTorrentsReannounce
Move-TransmissionTorrentsQueue
Remove-TransmissionTorrents
Rename-TransmissionTorrentPath
Set-TransmissionTorrents
Set-TransmissionTorrentsLocation
Start-TransmissionTorrents
Start-TransmissionTorrentsNow
Stop-TransmissionTorrents
dotnet build [Github clone/download directory]\ps-transmission\src\PsTransmission.sln
Remove any existing installation in this directory, create a new module directory and copy all the built files.
Remove-Item "C:\Users\[User]\Documents\PowerShell\Modules\Transmission" -Recurse -Force -ErrorAction SilentlyContinue
New-Item -Path 'C:\Users\[User]\Documents\PowerShell\Modules\Transmission' -ItemType Directory
Get-ChildItem -Path "[Github clone/download directory]\ps-transmission\src\PsTransmissionCmdlet\bin\Debug\netcoreapp3.1\" | Copy-Item -Destination "C:\Users\[User]\Documents\PowerShell\Modules\Transmission" -Recurse
Please raise an issue if you find a bug or want to request a new feature, or create a pull request to contribute.