Получить / положить псевдоним устройства с помощью Teamviewer REST API - PullRequest
0 голосов
/ 17 мая 2018

Я ищу список всех устройств в моей учетной записи администратора рабочей группы, используя vb.net. Я также хотел бы иметь возможность изменить «Псевдоним» данного устройства, используя его идентификатор устройства. я очень мало знаю об API. я нашел следующий пример, но я не уверен, как его адаптировать, чтобы получить ответ json.

вместо маркера доступа, я считаю, что мне нужно использовать идентификатор клиента и секретный идентификатор вместе с кодом авторизации, чтобы использовать это. если я запускаю его в его текущем начале, я получаю 401 несанкционированную ошибку. Любая помощь будет оценена.

Я также не знаю, как использовать «PUT» для изменения псевдонима с помощью идентификатора устройства, которое будет введено в текстовые поля. ex alias = textbox1.text и device_id = textbox2.text

Private Sub SurroundingSub()
Dim accessToken As String = "xxxxxxxxxxxxxxxxxxx"
Dim apiVersion As String = "v1"
Dim tvApiBaseUrl As String = "https://webapi.teamviewer.com"
Dim address As String = tvApiBaseUrl & "/api/" & apiVersion & "/devices"

Try
    Dim request As HttpWebRequest = TryCast(WebRequest.Create(address), HttpWebRequest)
    request.Headers.Add("Bearer", accessToken)
    request.Method = "GET"
    Dim webResp As WebResponse = request.GetResponse()
Catch __unusedException1__ As Exception
msgbox(__unusedException1__.ToString)
End Try
End Sub

1 Ответ

0 голосов
/ 02 июня 2018

Вот код Получить все устройства:

Private Sub get_teamviewer_devices()
    Dim accessToken As String = "XXXXXXXXXXXXXXXXXXXXX"
    Dim apiVersion As String = "v1"
    Dim tvApiBaseUrl As String = "https://webapi.teamviewer.com"
    Dim address As String = tvApiBaseUrl & "/api/" & apiVersion & "/devices"
    Dim result_json As String = Nothing
    Try
        Dim request As HttpWebRequest = TryCast(WebRequest.Create(address), HttpWebRequest)
        request.Headers.Add("Authorization", "Bearer " & accessToken)
        request.Method = "GET"
        Dim webResp As WebResponse = request.GetResponse()
        Using reader = New StreamReader(webResp.GetResponseStream)
            result_json = reader.ReadToEnd()
        End Using
        TextBox1.Text = result_json
    Catch __unusedException1__ As Exception
        MsgBox(__unusedException1__.ToString)
    End Try
End Sub

Вот часть PUT для изменения псевдонима:

Public Sub change_alias(ByVal device_id As String, ByVal alias_str As String)
    Dim accessToken As String = "XXXXXXXXXXXXXXXXXXXXX"
    Dim apiVersion As String = "v1"
    Dim tvApiBaseUrl As String = "https://webapi.teamviewer.com"
    Dim address As String = tvApiBaseUrl & "/api/" & apiVersion & "/devices/" & device_id
    Dim result As String
    Dim alias_str_ As String = Chr(34) & alias_str & Chr(34)
    Try
        Dim request As HttpWebRequest = TryCast(WebRequest.Create(address), HttpWebRequest)
        request.Headers.Add("Authorization", "Bearer " & accessToken)
        request.Method = "PUT"
        request.ContentType = "application/json"
        Using requestWriter2 As New StreamWriter(request.GetRequestStream())
            requestWriter2.Write("{""Alias"" : " & alias_str_ & "}")
        End Using
        Dim webResp As WebResponse = request.GetResponse()
        Using reader = New StreamReader(webResp.GetResponseStream)
            result = reader.ReadToEnd()
        End Using
        TextBox1.Text = (result)
    Catch __unusedException1__ As Exception
        MsgBox(__unusedException1__.ToString)
    End Try
End Sub
...