Skip to content

devynspencer/powershell-teamviewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 

Repository files navigation

PowerShell TeamViewer

Interact with the TeamViewer API using PowerShell.

Getting Started

cd ~\Downloads
git clone https://github.com/devynspencer/powershell-teamviewer

$UserModulesPath = ($env:PSModulePath -split ";")[0]
Copy-Item -Recurse "~\Downloads\powershell-teamviewer\TeamViewer" "$UserModulesPath\TeamViewer"
Import-Module -Force -Verbose TeamViewer

Dependencies

This project uses the Microsoft.PowerShell.SecretStore module to simplify management of API tokens and other secrets. This requires the installation of a few dependencies:

Install-Module -Name "Microsoft.PowerShell.SecretManagement", "Microsoft.PowerShell.SecretStore"

Secret Store

Setup a new secret store to hold TeamViewer passwords, API tokens, and other secrets:

Register-SecretVault -ModuleName Microsoft.PowerShell.SecretStore -Name TeamViewer -Verbose
Set-SecretStoreConfiguration -Authentication Password -Scope CurrentUser -Interaction None -Confirm:$false

API Token

Generate a new API script token from your TeamViewer profile, then add it to the secret store:

Unlock-SecretStore # Will prompt for password set in previous step

$ApiToken = "ABCDEFG1234567890HIJKLMNOPQ" # Replace with a real token, obviously
Set-Secret -Vault TeamViewer -Name TEAMVIEWER_API_TOKEN -Secret $ApiToken

Examples

Get TeamViewer devices, and filter based on specific criteria:

Get-TeamViewerDevice -GroupName "Developer Workstations"

# Alternatively
Get-TeamViewerGroupMember -Identity "Developer Workstations"

Rename a device:

Set-TeamViewerDevice -Id 1095514322 -Name "PRDWRK01"

Update group memberships:

Add-TeamViewerGroupMember -Identity "Developer Workstations" -Members "PRDWRK01"

# Alternatively
Set-TeamViewerDevice -Id 1095514322 -Group 1234567

See the built-in help for information on each function:

help Get-TeamViewerDevice -Detailed

Releases

No releases published

Packages

No packages published