- 리소스: DeviceSession
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- SessionState
- SessionStateEvent
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 메서드
리소스: DeviceSession
기기 메시지를 설명하는 Protobuf 메시지로, 여러 RPC에서 사용됩니다.
JSON 표현 |
---|
{ "name": string, "displayName": string, "state": enum ( |
필드 | |
---|---|
name |
선택사항입니다. DeviceSession의 이름입니다. 예: 'projects/{projectId}/deviceSessions/{session_id}' |
displayName |
출력 전용입니다. UI에 표시될 DeviceSession의 제목입니다. |
state |
출력 전용입니다. DeviceSession의 현재 상태입니다. |
stateHistories[] |
출력 전용입니다. 현재 세션 상태를 포함한 sessionState 메시지의 이전 상태 전환입니다. |
inactivityTimeout |
출력 전용입니다. ACTIVE에서 TIMEOUT_INACTIVITY으로 전환되기 전에 기기와 상호작용해야 하는 시간 간격입니다. 소수점 아래가 최대 9자리까지이고 ' |
createTime |
출력 전용입니다. 세션이 생성된 시간입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
activeStartTime |
출력 전용입니다. 세션이 처음 활성화 상태가 된 타임스탬프입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
androidDevice |
필수 항목입니다. 요청한 기기 |
통합 필드
|
|
ttl |
선택사항입니다. 기기가 처음에 할당되는 시간입니다. 이는 최종적으로 deviceSessions.patch RPC로 확장될 수 있습니다. 기본값은 15분입니다. 소수점 아래가 최대 9자리까지이고 ' |
expireTime |
선택사항입니다. 이때 기기가 여전히 사용 중이면 모든 연결이 종료되고 SessionState가 ACTIVE에서 FINISHED로 전환됩니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
세션 상태
기기 세션이 있는 상태입니다.
열거형 | |
---|---|
SESSION_STATE_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
REQUESTED |
세션 요청의 초기 상태입니다. 세션의 정확성을 확인하는 중이며 기기가 아직 요청되지 않았습니다. |
PENDING |
세션이 확인되었으며 기기 대기열에 있습니다. |
ACTIVE |
세션이 부여되었으며 기기가 연결을 수락하고 있습니다. |
EXPIRED |
세션 시간이 기기의 예약 기간을 초과하여 자동으로 타임아웃되었습니다. |
FINISHED |
사용자가 세션을 종료했지만 요청이 아직 할당 중이거나 할당 후 및 기기 사용 기간 중에 사용자에 의해 취소되었습니다. |
UNAVAILABLE |
기기를 사용할 수 없고 스케줄러를 통해 할당할 수 없으므로 세션을 완료할 수 없습니다. 예를 들어 카탈로그에 없는 기기가 요청되었거나 할당 큐에서 요청이 만료되었습니다. |
ERROR |
인프라 장애와 같은 내부적인 이유로 세션을 완료할 수 없습니다. |
세션 상태 이벤트
일련의 세션 상태와 DeviceSession이 이러한 상태에 처음 진입한 시간을 요약한 메시지입니다.
JSON 표현 |
---|
{
"sessionState": enum ( |
필드 | |
---|---|
sessionState |
출력 전용입니다. 이 이벤트에서 추적하는 sessionState입니다. |
eventTime |
출력 전용입니다. sessionState에서 해당 상태를 처음 발견한 시간입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 |
stateMessage |
출력 전용입니다. 상태를 설명하는 사람이 읽을 수 있는 메시지입니다. |
메소드 |
|
---|---|
|
POST /v1/projects/{project_id}/deviceSessions/{device_session_id}:cancel DeviceSession을 FINISHED 상태로 변경하고 모든 연결을 종료합니다. |
|
POST /v1/projects/{project_id}/deviceSessions |
|
GET /v1/projects/{project_id}/deviceSessions/{device_session_id} 할당 상태와 기기 할당 여부를 기록하는 DeviceSession을 반환합니다. |
|
GET /v1/projects/{project_id}/deviceSessions 프로젝트 사용자가 소유한 기기 세션을 나열합니다. |
|
PATCH /v1/projects/{projectId}/deviceSessions/deviceSessionId}:updateDeviceSession update_mask가 설명하는 필드로 현재 기기 세션을 업데이트합니다. |