TeamViewer (Classic) incluye una API basada en web, que te permite acceder a tus datos y controlar diversos aspectos de tu cuenta de TeamViewer. Puedes utilizar la API para desarrollar aplicaciones que integren las funciones de TeamViewer en tu entorno corporativo, o bien aplicaciones de desarrollo propio que pueda utilizar cualquiera.

Introducción

Imagina que necesitas eliminar un grupo que contiene diferentes dispositivos, los cuales tendrías que eliminar uno a uno antes de eliminar el grupo. Cuando el grupo contiene pocos dispositivos, nos es muy laborioso, pero si son cientos, puede resultar bastante problemático. Saca partido a la tecnología de la API creando un script que elimine el grupo de manera automática, incluyendo los dispositivos que contiene. Para ello, solo necesitas el token de la API y el nombre del grupo. Este artículo te mostrará cómo hacerlo.

Vamos a utilizar las funciones de administración de grupos y administración de dispositivos de la API. Para implementar la solución, se ha utilizado Windows PowerShell. Utilizando un token de usuario, el código recuperará los dispositivos y grupos de tu Management Console, los mostrará y te permitirá seleccionar el grupo que deseas eliminar. Como resultado, la Management Console quedará limpia.

Primeros pasos

Es necesaria una cuenta de TeamViewer. Si aún no tienes una, regístrate de forma gratuita en http://login.teamviewer.com

Para crear un script, inicia sesión en la Management Console de TeamViewer (Classic) con tu cuenta de TeamViewer y crea un token de script.

En la Management Console, abre la configuración de tu perfil en la esquina superior derecha. A continuación, selecciona «Aplicaciones» y haz clic en «Crear token de script». Completa el formulario para configurar tu token:

• Introduce el nombre del script

• Introduce una descripción para el token de script

• Selecciona los permisos del token de script

• Gestión de grupos: Ver, crear, borrar, editar y compartir grupos

• Ordenadores y contactos: Ver, agregar, editar y eliminar entradas

• Guarda el token de script

Guarda el token en un lugar seguro. Cuando ejecutes el script, este te lo solicitará.

Código

$token = Read-Host -Prompt "Paste your account token code here"
$bearer = "Bearer",$token

$header = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$header.Add("authorization", $bearer)

$webrequest = Invoke-RestMethod -Uri "https://webapi.teamviewer.com/api/v1/groups/" -Method Get -Headers $header
$machine = Invoke-RestMethod -Uri "Https://webapi.teamviewer.com/api/v1/devices/" -Method Get -Headers $header

$i=1
$grpArr = @()

ForEach($grp in $webrequest.groups)
{
    Write-Host $i ")" $grp.name " - " $grp.id
    $grpArr += $grp.id;
    ForEach($dev in $machine.devices)
    {
        If($dev.groupid -eq  $grp.id)
        {
            Write-Host "     " $dev.alias
        }
    } 
    $i += 1
}
$ig = Read-Host -Prompt "Select the group you will like to remove"

ForEach ($dgrp in $machine.devices)
{
    if($dgrp.groupid -eq $grpArr[$ig - 1])
    {
        Write-Host "Delete device: " $dgrp.alias
        $item = $dgrp.device_id
        $delete = Invoke-WebRequest -Uri "Https://webapi.teamviewer.com/api/v1/devices/$item" -Method Delete -Headers $header
    }

}
Write-Host "Delete group id: " $grpArr[$ig - 1] 
   $gid = $grpArr[$ig - 1]
   $remove = Invoke-WebRequest -Uri "Https://webapi.teamviewer.com/api/v1/groups/$gid" -Method Delete -Headers $header 

Ejecutar el script

Copia el código del script en tu editor de texto preferido (por ejemplo, bloc de notas), y guárdelo como .ps1. (prueba.ps1)

Vídeo

Para obtener información detallada acerca del funcionamiento del script, mira el siguiente vídeo.

Conclusión

La API de TeamViewer (Classic) es una herramienta muy valiosa para sacar el máximo partido a la Management Console. El lenguaje de programación y tu imaginación pueden hacer que logres soluciones inmediatas como esta para facilitar tus tareas diarias. ¡Sácale partido!