REST Resource: projects.trips

Recurso: Trip

Un viaje.

Representación JSON
{
  "name": string,
  "config": {
    object (TripConfig)
  },
  "androidAppId": string,
  "iosAppId": string,
  "authToken": {
    object (AuthToken)
  },
  "state": enum (State),
  "execution": {
    object (TripExecution)
  },
  "createTime": string,
  "updateTime": string
}
Campos
name

string

Solo salida. Es el identificador. Es el nombre del recurso del viaje. Formato: projects/{project_number}/trips/{tripId}.

config

object (TripConfig)

Inmutable. Es la configuración del viaje.

androidAppId

string

Solo entrada. Inmutable. Es el ID de aplicación para Android de la aplicación para dispositivos móviles que usará el viaje. Se debe configurar al menos uno de los valores androidAppId o iosAppId.

iosAppId

string

Solo entrada. Inmutable. Es el ID del paquete de iOS de la aplicación para dispositivos móviles que usará el viaje. Se debe configurar al menos uno de los valores androidAppId o iosAppId.

authToken

object (AuthToken)

Solo salida. Es un token opaco que autoriza el acceso para comenzar un viaje de NavConnect en Google Maps o Waze, y otorga a estas aplicaciones acceso para actualizar el viaje. Solo lo devuelve trips.create.

state

enum (State)

Solo salida. Es el estado del viaje.

execution

object (TripExecution)

Solo salida. Son los datos más recientes sobre la ejecución del viaje. Es posible que no se establezca si el viaje está en estado de error.

createTime

string (Timestamp format)

Solo salida. Fecha y hora según el servidor en la que se creó el viaje.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Fecha y hora en que el servidor recibió la actualización de viaje más reciente.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

TripConfig

Es la configuración del viaje.

Representación JSON
{
  "enableHighFrequencyUpdates": boolean,
  "enablePubsub": boolean,
  "pubsubFieldMask": string,
  "enableRemainingRouteReporting": boolean
}
Campos
enableHighFrequencyUpdates

boolean

Opcional. Indica si se deben habilitar las actualizaciones de viaje de alta frecuencia.

NOTA: Si habilitas esta función, el viaje se registrará como uso del nivel Enterprise y estará sujeto a las tarifas de ese nivel.

enablePubsub

boolean

Opcional. Indica si se deben habilitar las notificaciones de Pub/Sub para el viaje.

pubsubFieldMask

string (FieldMask format)

Opcional. Si se configura, solo se incluirá el subconjunto especificado de los campos de Trip en las notificaciones de Pub/Sub.

Si no se configura, todos los campos de Trip se incluirán en las notificaciones de Pub/Sub (comportamiento predeterminado).

Los siguientes campos no son compatibles:

  • androidAppId
  • iosAppId
  • authToken
  • config

NOTA: Este campo se ignora si enablePubsub es falso.

Esta es una lista separada por comas de los nombres de campos totalmente calificados. Ejemplo: "user.displayName,photo".

enableRemainingRouteReporting

boolean

Opcional. Indica si se debe habilitar el informe de la ruta restante para el viaje.

NOTA: Si habilitas esta función, el viaje se registrará como uso del nivel Enterprise y estará sujeto a las tarifas de ese nivel.

AuthToken

Es un token de autenticación.

Representación JSON
{
  "token": string,
  "expireTime": string
}
Campos
token

string

Solo salida. Es el token de autenticación que se debe pasar a la aplicación para dispositivos móviles.

expireTime

string (Timestamp format)

Solo salida. Fecha y hora en la que vencerá el token de autenticación.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Estado

Son todos los estados posibles del viaje.

Enums
STATE_UNSPECIFIED El estado del viaje no está especificado.
NEW Se creó el viaje, pero aún no comenzó.
ENROUTE El transportista está en camino al destino.
ARRIVED El transportista llegó al destino.
SUSPENDED Se suspendió el viaje.
FAILED El viaje no se completó correctamente.
CLIENT_ERROR El viaje falló debido a un error del cliente.
CANCELED El desarrollador canceló el viaje de forma explícita.

TripExecution

Son datos sobre la ejecución del viaje.

Representación JSON
{
  "origin": {
    object (Location)
  },
  "destination": {
    object (Stop)
  },
  "location": {
    object (Location)
  },
  "remainingRoute": {
    object (Route)
  },
  "traveledDuration": string,
  "remainingDuration": string,
  "traveledDistanceMeters": integer,
  "remainingDistanceMeters": integer,
  "stopAddedInRoute": boolean
}
Campos
origin

object (Location)

Solo salida. Es el origen del viaje, que suele ser la ubicación del transportista al inicio del viaje de NavConnect.

destination

object (Stop)

Solo salida. Es el destino del viaje según lo informa la aplicación para dispositivos móviles.

location

object (Location)

Solo salida. Es el indicador de ubicación que representa la última ubicación conocida del transportista. Esta será la ubicación ajustada a la ruta si está disponible.

remainingRoute

object (Route)

Solo salida. Proporciona la polilínea para la parte restante de la ruta.

traveledDuration

string (Duration format)

Solo salida. Tiempo transcurrido hasta el momento.

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

remainingDuration

string (Duration format)

Solo salida. Tiempo restante de este viaje, según la estimación de Google.

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

traveledDistanceMeters

integer

Solo salida. Distancia recorrida desde el origen en metros.

remainingDistanceMeters

integer

Solo salida. Distancia restante al destino en metros.

stopAddedInRoute

boolean

Solo salida. Indica si se agregó una parada a lo largo de la ruta.

Ubicación

Es una ubicación según la informa la aplicación para dispositivos móviles.

Representación JSON
{
  "point": {
    object (LatLng)
  },
  "sourceTime": string,
  "serverTime": string
}
Campos
point

object (LatLng)

Solo salida. Es la ubicación de latitud y longitud.

sourceTime

string (Timestamp format)

Solo salida. Es la fecha y hora en que el cliente indicó que se obtuvo la ubicación.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

serverTime

string (Timestamp format)

Solo salida. Es la fecha y hora en la que el servidor recibió esta actualización de ubicación.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

LatLng

Es un objeto que representa un par de valores de latitud y longitud. Esto se expresa como un par de números de punto flotante de doble precisión que representan los grados de latitud y longitud. A menos que se especifique lo contrario, este objeto debe cumplir con el estándar WGS84. Los valores deben pertenecer a rangos normalizados.

Representación JSON
{
  "latitude": number,
  "longitude": number
}
Campos
latitude

number

La latitud expresada en grados. Debe pertenecer al rango [-90.0, +90.0].

longitude

number

La longitud expresada en grados. Debe pertenecer al rango [-180.0, +180.0].

Detener

Es una parada en el viaje en la que se debe realizar alguna tarea.

Representación JSON
{
  "point": {
    object (LatLng)
  }
}
Campos
point

object (LatLng)

Obligatorio. Ubicación de la parada como latitud y longitud.

Ruta

Es una polilínea de ruta.

Representación JSON
{
  "trafficInformation": [
    {
      object (SpeedReadingInterval)
    }
  ],

  // Union field format can be only one of the following:
  "simplePolyline": {
    object (SimplePolyline)
  },
  "encodedPolyline": string,
  "s2Polyline": string,
  "geoJson": {
    object
  }
  // End of list of possible types for union field format.
}
Campos
trafficInformation[]

object (SpeedReadingInterval)

Solo salida. Es la información del tráfico en la polilínea que se describe como intervalos de lectura de velocidad.

NOTAS:

  • Los intervalos no se superponen.
  • Los intervalos son contiguos.
  • Los intervalos cubren toda la polilínea.
  • Los intervalos se ordenan según el índice creciente.
  • La velocidad se especifica para cada intervalo.

Campo de unión format. Es el formato de la ruta.

El formato que se completa se controla con el parámetro route_polyline_format. Si no se establece, se usa una polilínea simple de forma predeterminada. format puede ser solo uno de los parámetros siguientes:

simplePolyline

object (SimplePolyline)

Solo salida. Es la ruta como una lista simple de objetos LatLng.

encodedPolyline

string

Solo salida. Es la ruta como una polilínea codificada. Consulta https://developers.google.com/maps/documentation/utilities/polylinealgorithm.

s2Polyline

string (bytes format)

Solo salida. Es la ruta como una S2Polyline codificada. Consulta https://s2geometry.io/devguide/basic_types.html.

String codificada en base64.

geoJson

object (Struct format)

Solo salida. Es la ruta como un LineString de GeoJSON. Consulta https://tools.ietf.org/html/rfc7946#section-3.1.4.

SimplePolyline

Representa una polilínea con una lista simple de puntos.

Representación JSON
{
  "points": [
    {
      object (LatLng)
    }
  ]
}
Campos
points[]

object (LatLng)

Solo salida. Lista ordenada de puntos que representan la polilínea.

SpeedReadingInterval

Indicador de densidad del tráfico en un tramo contiguo de una ruta. Dada una ruta con puntos P_0, P_1, …, P_N (índice basado en cero), el objeto SpeedReadingInterval define un intervalo y describe su tráfico con las categorías de Speed.

Representación JSON
{
  "speed": enum (Speed),
  "startPolylinePointIndex": integer,
  "endPolylinePointIndex": integer
}
Campos
speed

enum (Speed)

Solo salida. Velocidad del tráfico en este intervalo.

startPolylinePointIndex

integer

Solo salida. Índice inicial de este intervalo en la ruta.

endPolylinePointIndex

integer

Solo salida. Es el índice final de este intervalo en la ruta.

Velocidad

Es la clasificación de la velocidad de la polilínea según los datos de tráfico.

Enums
SPEED_UNSPECIFIED La velocidad no está especificada.
NORMAL Velocidad normal, sin demoras en el tráfico.
SLOW Se detectó una desaceleración, con una cantidad de tráfico de leve a moderada.
TRAFFIC_JAM Demoras en el tráfico, incluido el tráfico detenido

Métodos

create

Crea un viaje.

get

Obtiene un viaje.