GetSessionConnectionData - Gerenciador de Sessões do Amazon DCV

GetSessionConnectionData

Obtém informações de conexão para a conexão de um usuário específico com uma sessão especificada do Amazon DCV.

Parâmetros de solicitação

SessionId

O ID da sessão para a qual exibir as informações de conexão.

Tipo: string

Obrigatório: sim

User

O nome do usuário para o qual exibir as informações de conexão.

Tipo: string

Obrigatório: sim

Parâmetros de resposta

Id

O ID exclusivo da sessão.

Name

O nome da sessão.

Owner

O proprietário da sessão.

Server

Informações sobre o servidor no qual a sessão está sendo executada. Essa estrutura de dados inclui os seguintes parâmetros de resposta aninhada:

Ip

O endereço IP ou o nome do host do servidor Amazon DCV.

Hostname

O nome do host do host do servidor Amazon DCV.

Port

A porta pela qual o servidor Amazon DCV se comunica com os clientes do Amazon DCV.

Endpoints

Informações sobre os endpoints do servidor Amazon DCV. Essa estrutura de dados inclui os seguintes parâmetros de resposta aninhada:

IpAddress

O endereço IP do endpoint do servidor.

Port

A porta do endpoint do servidor.

Protocol

O protocolo usado pelo endpoint do servidor. Os possíveis valores incluem:

  • HTTP — O endpoint usa o protocolo WebSocket (TCP).

  • QUIC — O endpoint usa o protocolo QUIC (UDP).

WebUrlPath

O caminho do URL da web do endpoint do servidor. Disponível somente para o protocolo HTTP.

WebUrlPath

O caminho para o arquivo de configuração do servidor Amazon DCV.

Tags

As tags atribuídas ao servidor. Essa estrutura de dados inclui os seguintes parâmetros de resposta aninhada:

Key

A chave de tags.

Value

O valor da tag.

Type

O tipo de sessão.

State

O estado atual da sessão. Os valores possíveis são:

  • CREATING - o Agente está criando a sessão.

  • READY - a sessão está pronta para aceitar conexões de clientes.

  • DELETING - a sessão está sendo excluída.

  • DELETED - a sessão foi excluída.

  • UNKNOWN - incapaz de determinar o estado da sessão. O Agente e o Atendente podem não conseguir se comunicar.

CreationTime

A data e a hora em que a sessão foi criada.

LastDisconnectionTime

A data e a hora da última desconexão do cliente.

NumOfConnections

O número de conexões simultâneas que o usuário tem com a sessão.

ConnectionToken

O token de autenticação usado para conectar a sessão.

Informações adicionais

As informações obtidas dessa API podem ser transmitidas para um cliente do Amazon DCV para se conectar à sessão do Amazon DCV.

No caso do cliente da Web do Amazon DCV, você pode criar um URL que possa ser aberto no navegador. O URL tem o seguinte formato:

https://{Ip}:{Port}{WebUrlPath}?authToken={ConnectionToken}#{SessionId}.

No caso do cliente nativo do Amazon DCV, você pode criar um URL com o esquema dcv://. Quando o cliente nativo do Amazon DCV é instalado, ele se registra no sistema como manipulador de URLs dcv://. O URL tem o seguinte formato:

dcv://{Ip}:{Port}{WebUrlPath}?authToken={ConnectionToken}#{SessionId}.
nota

Se você estiver usando o Amazon EC2, o endereço IP deverá ser público. Se sua configuração tiver hosts do Amazon DCV atrás de um gateway, especifique o endereço do gateway em vez daquele retornado pela API SessionConnectionData.

Exemplo

Python
Solicitação

O exemplo a seguir obtém informações de conexão de um usuário com nome de usuário user1 e sessão com ID sessionId12345.

def get_session_connection_api(): api_instance = swagger_client.GetSessionConnectionDataApi(swagger_client.ApiClient(get_client_configuration())) set_request_headers(api_instance.api_client) return api_instance def get_url_to_connect(api_response): ip_address = api_response.session.server.ip port = api_response.session.server.port web_url_path = api_response.session.server.web_url_path connection_token = api_response.connection_token session_id = api_response.session.id url = f'https://{ip_address}:{port}{web_url_path}?authToken={connection_token}#{session_id}' return url def get_session_connection_data(session_id, user): api_response = get_session_connection_api().get_session_connection_data(session_id=session_id, user=user) url_to_connect = get_url_to_connect(api_response) print('Get Session Connection Data Response:', api_response) print('URL to connect: ', url_to_connect) def main(): get_session_connection_data('sessionId12345', 'user1')
Resposta

Esta é uma saída de exemplo.

{ "Session": { "Id": "sessionId12345", "Name": "a session name", "Owner": "an owner 1890", "Server": { "Ip": "1.1.1.123", "Hostname": "server hostname", "Port": "1222", "endpoints": [ { "port": 8443, "web_url_path": "/", "protocol": "HTTP" }, { "port": 9443, "web_url_path": "/", "protocol": "HTTP" }, { "port": 8443, "web_url_path": "", "protocol": "QUIC" } ], "WebUrlPath": "/path", "Tags": [ { "Key": "os", "Value": "windows" }, { "Key": "ram", "Value": "4gb" } ] }, "Type": "VIRTUAL", "State": "UNKNOWN", "CreationTime": "2020-10-06T10:15:31.633Z", "LastDisconnectionTime": "2020-10-06T10:15:31.633Z", "NumOfConnections": 2 }, "ConnectionToken": "EXAMPLEiOiJmOWM1YTRhZi1jZmU0LTQ0ZjEtYjZlOC04ZjY0YjM4ZTE2ZDkiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJkY3ZTZXNzaW9uSWQiOiJTZXNzaW9uSWQxODk5IiwiZGN2U2Vzc2lvbk93bmVyIjoiYW4gb3duZXIgMTEXAMPLEmRjdlNlc3Npb25Vc2VyIjoibXlVc2VyIiwiZXhwIjoxNjAxOTg1NDA4LCJpYXQiOjE2MDE5ODE4MDgsImp0aSI6IjgwMjljNDUwLTQwMDUtNDJhMy04YTQzLWFmZTM3ZTc4NTQ0ZCJ9.N0RRRT1FZuBgex_0iFwKBAdHdM2JSSADc-tngiKXevUxhhJvm3BPJYRs9NPE4GCJRTc13EXAMPLEIxNEPPh5IMcVmROfU1WKPnry4ypPTp3rsZ7YWjCTSfs1GoN3R_nLFyAxfhPD2yY-Kqtpd5GH0D-E8FwsedV-Q2bRQ4y9y1q0MgFU4QjaSMypUuYR0YjkCaoainjmEZew4A33fG40wATrBvoivBiNWdNpytHX2CDOuk_k0k_DWeZjMvv9jF1f5EXAMPLEm9h5zj_Nb1PKKfBSx9_O6gSJwC9UD-h_GaMgHmltqBIA4jdPD7i0CmC2e7413KFy-EQ4Ej1cM7RjLwhFuWpKWAVJxogJjYpfoKKaPo4KxvJjJIPYhkscklINQpe2W5rnlxCq7sC7ptcGw17DUobP7egRv9H37VD8SrkLyq-hK1G4G8erHvl9HIrTR9_c884fNrTCC8DvC062e4KYdLkAhhJmboN9CAGIGFyd2c1AY_CzzvDL0EXAMLE" }