Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/trossr32/ps-transmission
A Powershell module that integrates with the Transmission RPC API
https://github.com/trossr32/ps-transmission
api api-wrapper cmdlet cmdlets net6 powershell powershell-module powershell-modules transmission transmission-api transmission-rpc
Last synced: 2 months ago
JSON representation
A Powershell module that integrates with the Transmission RPC API
- Host: GitHub
- URL: https://github.com/trossr32/ps-transmission
- Owner: trossr32
- License: mpl-2.0
- Created: 2020-08-31T16:30:31.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-04T22:28:53.000Z (about 1 year ago)
- Last Synced: 2024-11-02T13:20:46.881Z (3 months ago)
- Topics: api, api-wrapper, cmdlet, cmdlets, net6, powershell, powershell-module, powershell-modules, transmission, transmission-api, transmission-rpc
- Language: C#
- Homepage: https://www.powershellgallery.com/packages/Transmission
- Size: 217 KB
- Stars: 22
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PsTransmission
[![PowerShell Gallery Version](https://img.shields.io/powershellgallery/v/Transmission?label=Transmission&logo=powershell&style=plastic)](https://www.powershellgallery.com/packages/Transmission)
[![PowerShell Gallery](https://img.shields.io/powershellgallery/dt/Transmission?style=plastic)](https://www.powershellgallery.com/packages/Transmission)A Powershell module that integrates with the Transmission RPC API.
Available in the [Powershell Gallery](https://www.powershellgallery.com/packages/Transmission)
## Description
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](https://github.com/transmission/transmission/blob/master/extras/rpc-spec.txt).
## Installation (from the Powershell Gallery)
```powershell
Install-Module Transmission
Import-Module Transmission
```## Supplying API credentials
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:
```powershell
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:
```powershell
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:
```powershell
Remove-TransmissionCredentials -DeletePermanent
```## Included cmdlets
### Credentials
```powershell
Set-TransmissionCredentials
Remove-TransmissionCredentials
```### Session
```powershell
Close-TransmissionSession
Get-TransmissionSession
Get-TransmissionSessionStatistics
Set-TransmissionAltSpeedLimits
Set-TransmissionSession
```### System
```powershell
Test-TransmissionPort
Update-TransmissionBlockLists
Invoke-TransmissionWeb
```### Torrents
```powershell
Add-TransmissionTorrents
Assert-TransmissionTorrentsVerified
Get-TransmissionTorrents
Invoke-TransmissionTorrentsReannounce
Move-TransmissionTorrentsQueue
Remove-TransmissionTorrents
Rename-TransmissionTorrentPath
Set-TransmissionTorrents
Set-TransmissionTorrentsLocation
Start-TransmissionTorrents
Start-TransmissionTorrentsNow
Stop-TransmissionTorrents
```## Building the module and importing locally
### Build the .NET core solution
```powershell
dotnet build [Github clone/download directory]\ps-transmission\src\PsTransmission.sln
```### Copy the built files to your Powershell modules directory
Remove any existing installation in this directory, create a new module directory and copy all the built files.
```powershell
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
```## Contribute
Please raise an issue if you find a bug or want to request a new feature, or create a pull request to contribute.