Resource: DeviceSession
Protobuf message describing the device message, used from several RPCs.
JSON representation |
---|
{ "name": string, "displayName": string, "state": enum ( |
Fields | |
---|---|
name |
Optional. Name of the DeviceSession, e.g. "projects/{projectId}/deviceSessions/{session_id}" |
displayName |
Output only. The title of the DeviceSession to be presented in the UI. |
state |
Output only. Current state of the DeviceSession. |
stateHistories[] |
Output only. The historical state transitions of the sessionState message including the current session state. |
inactivityTimeout |
Output only. The interval of time that this device must be interacted with before it transitions from ACTIVE to TIMEOUT_INACTIVITY. A duration in seconds with up to nine fractional digits, ending with ' |
createTime |
Output only. The time that the Session was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
activeStartTime |
Output only. The timestamp that the session first became ACTIVE. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
androidDevice |
Required. The requested device |
Union field
|
|
ttl |
Optional. The amount of time that a device will be initially allocated for. This can eventually be extended with the deviceSessions.patch RPC. Default: 15 minutes. A duration in seconds with up to nine fractional digits, ending with ' |
expireTime |
Optional. If the device is still in use at this time, any connections will be ended and the SessionState will transition from ACTIVE to FINISHED. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
SessionState
The state that the device session resides.
Enums | |
---|---|
SESSION_STATE_UNSPECIFIED |
Default value. This value is unused. |
REQUESTED |
Initial state of a session request. The session is being validated for correctness and a device is not yet requested. |
PENDING |
The session has been validated and is in the queue for a device. |
ACTIVE |
The session has been granted and the device is accepting connections. |
EXPIRED |
The session duration exceeded the device’s reservation time period and timed out automatically. |
FINISHED |
The user is finished with the session and it was canceled by the user while the request was still getting allocated or after allocation and during device usage period. |
UNAVAILABLE |
Unable to complete the session because the device was unavailable and it failed to allocate through the scheduler. For example, a device not in the catalog was requested or the request expired in the allocation queue. |
ERROR |
Unable to complete the session for an internal reason, such as an infrastructure failure. |
SessionStateEvent
A message encapsulating a series of Session states and the time that the DeviceSession first entered those states.
JSON representation |
---|
{
"sessionState": enum ( |
Fields | |
---|---|
sessionState |
Output only. The sessionState tracked by this event |
eventTime |
Output only. The time that the sessionState first encountered that state. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
stateMessage |
Output only. A human-readable message to explain the state. |
Methods |
|
---|---|
|
POST /v1/projects/{project_id}/deviceSessions/{device_session_id}:cancel Changes the DeviceSession to state FINISHED and terminates all connections. |
|
POST /v1/projects/{project_id}/deviceSessions |
|
GET /v1/projects/{project_id}/deviceSessions/{device_session_id} Return a DeviceSession, which documents the allocation status and whether the device is allocated. |
|
GET /v1/projects/{project_id}/deviceSessions Lists device Sessions owned by the project user. |
|
PATCH /v1/projects/{projectId}/deviceSessions/deviceSessionId}:updateDeviceSession Updates the current device session to the fields described by the update_mask. |