REST Resource: projects.deviceSessions

Recurso: DeviceSession

Mensaje de protobuf que describe el mensaje del dispositivo, usado desde varias RPC.

Representación JSON
{
  "name": string,
  "displayName": string,
  "state": enum (SessionState),
  "stateHistories": [
    {
      object (SessionStateEvent)
    }
  ],
  "inactivityTimeout": string,
  "createTime": string,
  "activeStartTime": string,
  "androidDevice": {
    object (AndroidDevice)
  },

  // Union field expiration can be only one of the following:
  "ttl": string,
  "expireTime": string
  // End of list of possible types for union field expiration.
}
Campos
name

string

Opcional. Es el nombre de la DeviceSession, p.ej., “projects/{projectId}/deviceSessions/{session_id}”

displayName

string

Solo salida. Es el título de DeviceSession que se presentará en la IU.

state

enum (SessionState)

Solo salida. Estado actual de DeviceSession.

stateHistories[]

object (SessionStateEvent)

Solo salida. Las transiciones de estado históricas del mensaje sessionState, incluido el estado actual de la sesión

inactivityTimeout

string (Duration format)

Solo salida. El intervalo de tiempo con el que se debe interactuar con este dispositivo antes de pasar de ACTIVE a TIMEOUT_INACTIVITY.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

createTime

string (Timestamp format)

Solo salida. Indica la hora a la que se creó la sesión.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

activeStartTime

string (Timestamp format)

Solo salida. La marca de tiempo en la que la sesión pasó a estar ACTIVA por primera vez.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

androidDevice

object (AndroidDevice)

Obligatorio. El dispositivo solicitado

Campo de unión expiration.

expiration puede ser una de las siguientes opciones:

ttl

string (Duration format)

Opcional. Es la cantidad de tiempo que se asignará inicialmente a un dispositivo. Con el tiempo, esto se puede extender con la RPC deviceSessions.patch. Valor predeterminado: 15 minutos.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

expireTime

string (Timestamp format)

Opcional. Si el dispositivo aún está en uso, se finalizarán todas las conexiones y SessionState pasará de ACTIVE a FINISHED.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

Estado de sesión

Es el estado en el que reside la sesión del dispositivo.

Enums
SESSION_STATE_UNSPECIFIED Valor predeterminado Este valor no se usa.
REQUESTED Estado inicial de una solicitud de sesión. Se está validando la precisión de la sesión, y aún no se solicita un dispositivo.
PENDING La sesión se validó y está en la cola de un dispositivo.
ACTIVE Se otorgó la sesión y el dispositivo acepta conexiones.
EXPIRED La duración de la sesión superó el período de reserva del dispositivo y se agotó el tiempo de espera automáticamente.
FINISHED El usuario finalizó la sesión, y esta se canceló mientras la solicitud seguía asignando o después de la asignación y durante el período de uso del dispositivo.
UNAVAILABLE No se pudo completar la sesión porque el dispositivo no estaba disponible y no se pudo realizar la asignación a través del programador. Por ejemplo, se solicitó un dispositivo que no estaba en el catálogo o se venció la solicitud en la cola de asignación.
ERROR No se pudo completar la sesión por un motivo interno, por ejemplo, una falla de la infraestructura.

Evento de estado de sesión

Un mensaje que encapsula una serie de estados de Session y la hora en que la DeviceSession ingresó esos estados por primera vez.

Representación JSON
{
  "sessionState": enum (SessionState),
  "eventTime": string,
  "stateMessage": string
}
Campos
sessionState

enum (SessionState)

Solo salida. El sessionState al que le hace un seguimiento este evento

eventTime

string (Timestamp format)

Solo salida. Indica la hora a la que sessionState encontró ese estado por primera vez.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

stateMessage

string

Solo salida. Un mensaje legible por humanos que explique el estado.

Métodos

cancel

POST /v1/projects/{project_id}/deviceSessions/{device_session_id}:cancel Cambia DeviceSession al estado FINISHED y finaliza todas las conexiones.

create

POST /v1/projects/{project_id}/deviceSessions

get

GET /v1/projects/{project_id}/deviceSessions/{device_session_id} Muestra una DeviceSession, que documenta el estado de asignación y si el dispositivo está asignado.

list

GET /v1/projects/{project_id}/deviceSessions enumera las sesiones del dispositivo que pertenecen al usuario del proyecto.

patch

PATCH /v1/projects/{projectId}/deviceSessions/deviceSessionId}:updateDeviceSession Actualiza la sesión actual del dispositivo a los campos descritos por update_mask.