APIを使用して コンピュータ & パートナーリストからグループを削除する方法について

評価なし

 

概要

TeamViewerでは、データにアクセスして、TeamViewerアカウントのさまざまな側面をコントロールできるウェブベースのAPIを提供しています。

APIを利用することで、TeamViewerの機能を自社環境に統合するアプリケーションを開発したり、誰もが使用できるアプリケーションを開発したりすることができます。

例えばデバイスを含むグループを削除する必要があると仮定します。

グループを1つずつ削除しなければなりません。デバイスが数台の場合は問題ありません。ですが、何百台もデバイスが存在する場合は手間がかかります。

このような場合には、APIを活用して、グループが含むデバイスとグループを、自動的に削除するスクリプトを作成しましょう。APIトークンとグループ名を指定するだけで、これを実行することができます。

 

以下では、その方法を説明します。

この方法では、グループ管理およびデバイス管理API関数を使用します。ソリューションの実装には、Windows PowerShellが使用されていました。ユーザートークンを使用すると、コードは、デバイスとグループを管理コンソールから取得して表示します。これによって、削除するグループを選択することができます。選択すると、結果が整然とコンソールに表示されます。

 

開始

TeamViewerアカウントを持っていることを確認してください。アカウントがない場合、http://login.teamviewer.comで無料で作成することができます。

スクリプトを作成するには、TeamViewerアカウントでTeamViewer Management Consoleにログインして、スクリプトトークンを作成します。

コンソールで、ウェブサイト右上のプロファイル設定を開きます。[アプリケーション] を選択して、[スクリプトトークンの作成] をクリックします。フォームに記入してトークンを定義します。

• スクリプト名を入力します。

• スクリプトトークンの説明を入力します。

• スクリプトトークンの権限を選択します。

• [グループ管理] – グループを表示、作成、削除、編集、共有します。

• [コンピュータ & パートナー] – エントリを表示、追加、編集、削除します。

• スクリプトトークンを保存します。

これでトークンが安全な場所に保存されました。スクリプトが実行されると、これが要求されます。

コード

$token = Read-Host -Prompt ここに自分のアカウントトークンを貼り付けてください $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 削除するグループを選択してください  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  

 

スクリプトの実行

スクリプトコードを任意のテキストエディタにコピーして (メモ帳など)、.ps1ファイルとして保存します。(test.ps1)

 

動画

スクリプトの動作方法の詳細については、次の動画をご覧ください。

 

結論

TeamViewer APIは、Management Consoleを最大限活用する必要がある時は貴重なツールです。これをプログラミング言語と創造的に組み合わせることで、お望みの結果を日々の作業で簡単に実現することができます。ぜひご利用ください!

 

バージョン履歴
改訂番号
2/2
最終更新:
‎18 9 2018, 10:35 AM
更新者:
 
寄稿者: