Package maps.fleetengine.delivery.v1

Índice

DeliveryService

El servicio de entrega de último tramo.

BatchCreateTasks

rpc BatchCreateTasks(BatchCreateTasksRequest) returns (BatchCreateTasksResponse)

Crea y muestra un lote de objetos Task nuevos.

CreateDeliveryVehicle

rpc CreateDeliveryVehicle(CreateDeliveryVehicleRequest) returns (DeliveryVehicle)

Crea y muestra un DeliveryVehicle nuevo.

CreateTask

rpc CreateTask(CreateTaskRequest) returns (Task)

Crea y muestra un objeto Task nuevo.

GetDeliveryVehicle

rpc GetDeliveryVehicle(GetDeliveryVehicleRequest) returns (DeliveryVehicle)

Muestra la instancia DeliveryVehicle especificada.

GetTask

rpc GetTask(GetTaskRequest) returns (Task)

Obtiene información sobre un Task.

GetTaskTrackingInfo

rpc GetTaskTrackingInfo(GetTaskTrackingInfoRequest) returns (TaskTrackingInfo)

Muestra la instancia TaskTrackingInfo especificada.

ListDeliveryVehicles

rpc ListDeliveryVehicles(ListDeliveryVehiclesRequest) returns (ListDeliveryVehiclesResponse)

Obtiene todos los DeliveryVehicle que cumplen con los criterios de filtrado especificados.

ListTasks

rpc ListTasks(ListTasksRequest) returns (ListTasksResponse)

Obtiene todos los Task que cumplen con los criterios de filtrado especificados.

UpdateDeliveryVehicle

rpc UpdateDeliveryVehicle(UpdateDeliveryVehicleRequest) returns (DeliveryVehicle)

Escribe datos de DeliveryVehicle actualizados en Fleet Engine y asigna Tasks a DeliveryVehicle. No puedes actualizar el nombre del DeliveryVehicle. Puedes actualizar remaining_vehicle_journey_segments, pero debe contener todos los VehicleJourneySegment para que se conserven en DeliveryVehicle. Los elementos task_id se recuperan de remaining_vehicle_journey_segments, y sus Tasks correspondientes se asignan a DeliveryVehicle si aún no se asignaron.

UpdateTask

rpc UpdateTask(UpdateTaskRequest) returns (Task)

Actualiza los datos de Task.

BatchCreateTasksRequest

El mensaje de solicitud BatchCreateTask.

Campos
header

DeliveryRequestHeader

Opcional. Es el encabezado de solicitud estándar de la API de Delivery. Nota: Si configuras este campo, el campo del encabezado en los mensajes de CreateTaskRequest debe estar vacío o debe coincidir con este campo.

parent

string

Obligatorio. Es el recurso superior que comparten todas las tareas. Este valor debe tener el formato providers/{provider}. provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project. El campo superior de los mensajes CreateTaskRequest debe estar vacío o coincidir con este campo.

requests[]

CreateTaskRequest

Obligatorio. Es el mensaje de solicitud que especifica los recursos que se crearán. Nota: Puedes crear un máximo de 500 tareas en un lote.

BatchCreateTasksResponse

El mensaje de respuesta BatchCreateTask.

Campos
tasks[]

Task

Las tareas creadas

CreateDeliveryVehicleRequest

El mensaje de solicitud CreateDeliveryVehicle.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

parent

string

Obligatorio. Debe tener el formato providers/{provider}. El proveedor debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project

delivery_vehicle_id

string

Obligatorio. El ID del vehículo de entrega debe ser único y estar sujeto a las siguientes restricciones:

  • Debe ser una cadena Unicode válida.
  • Tiene una longitud máxima de 64 caracteres.
  • Se normalizó según el Formato de normalización C de Unicode.
  • No puede contener ninguno de los siguientes caracteres ASCII: '/', ':', '?', ',' o '#'.
delivery_vehicle

DeliveryVehicle

Obligatorio. La entidad DeliveryVehicle que se creará. Cuando creas un nuevo vehículo de entrega, puedes configurar los siguientes campos opcionales:

  • tipo
  • last_location
  • attributes

Nota: Se ignora el campo name de DeliveryVehicle. No se deben configurar los demás campos de DeliveryVehicle. De lo contrario, se mostrará un error.

CreateTaskRequest

El mensaje de solicitud CreateTask.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

parent

string

Obligatorio. Debe tener el formato providers/{provider}. provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project.

task_id

string

Obligatorio. El ID de tarea debe ser único, pero no debe ser un ID de seguimiento del envío. Para almacenar un ID de seguimiento del envío, usa el campo tracking_id. Ten en cuenta que varias tareas pueden tener el mismo tracking_id. Los IDs de tareas están sujetos a las siguientes restricciones:

  • Debe ser una cadena Unicode válida.
  • Tiene una longitud máxima de 64 caracteres.
  • Se normalizó según el Formato de normalización C de Unicode.
  • No puede contener ninguno de los siguientes caracteres ASCII: “/”, “:”, “?”, “,” o “'#'”.
task

Task

Obligatorio. La entidad Task que se creará. Cuando crees una tarea, se requerirán los siguientes campos:

  • type
  • state (debe configurarse como OPEN)
  • tracking_id (no se debe establecer para tareas UNAVAILABLE ni SCHEDULED_STOP, pero es obligatorio para todos los demás tipos de tareas)
  • planned_location (opcional para tareas UNAVAILABLE)
  • task_duration

Nota: Se ignora el campo name de la tarea. No se deben configurar los demás campos de Task. De lo contrario, se mostrará un error.

DeliveryRequestHeader

Un RequestHeader contiene campos comunes a todas las solicitudes de RPC de entrega.

Campos
language_code

string

Es el código de idioma BCP-47, como en-US o sr-Latn. Para obtener más información, consulta http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Si no se especifica ninguno, la respuesta puede estar en cualquier idioma, con preferencia por el inglés si existe ese nombre. Ejemplo de valor de campo: en-US.

region_code

string

Obligatorio. Código regional de CLDR de la región donde se origina la solicitud. Ejemplo de valor de campo: US.

sdk_version

string

Versión del SDK de llamada, si corresponde. El formato de la versión es "major.minor.patch", ejemplo: 1.1.2.

os_version

string

Versión del sistema operativo en el que se ejecuta el SDK que realiza la llamada. Ejemplos de valores de campo: 4.4.1, 12.1.

device_model

string

Es el modelo del dispositivo en el que se ejecuta el SDK de llamada. Ejemplos de valores de campo: iPhone12,1, SM-G920F.

sdk_type

SdkType

El tipo de SDK que envía la solicitud.

maps_sdk_version

string

Versión del MapSDK de la que depende el SDK de llamada, si corresponde. El formato de la versión es “major.minor.patch”, por ejemplo, 5.2.1.

nav_sdk_version

string

Es la versión del NavSDK de la que depende el SDK de llamada, si corresponde. El formato de la versión es “major.minor.patch”, por ejemplo, 2.1.0.

platform

Platform

Es la plataforma del SDK que realiza la llamada.

manufacturer

string

Es el fabricante del dispositivo Android del SDK de llamada. Solo se aplica a los SDK de Android. Ejemplo de valor de campo: Samsung.

android_api_level

int32

Es el nivel de API de Android del SDK que realiza la llamada, solo aplicable a los SDKs de Android. Ejemplo de valor de campo: 23.

trace_id

string

Es un ID opcional que se puede proporcionar para registrar la solicitud y así identificarla.

Plataforma

Es la plataforma del SDK que realiza la llamada.

Enumeraciones
PLATFORM_UNSPECIFIED Es el valor predeterminado. Este valor se usa si se omite la plataforma.
ANDROID La solicitud proviene de Android.
IOS La solicitud proviene de iOS.
WEB La solicitud proviene de la Web.

SdkType

Tipos posibles de SDK.

Enumeraciones
SDK_TYPE_UNSPECIFIED Es el valor predeterminado. Este valor se usa si se omite sdk_type.
CONSUMER El SDK que realiza la llamada es de consumidor.
DRIVER El SDK que realiza la llamada es Driver.
JAVASCRIPT El SDK de llamada es JavaScript.

DeliveryVehicle

El mensaje DeliveryVehicle. Un vehículo de entrega transporta envíos de un depósito a una ubicación de entrega y de una ubicación de retiro al depósito. En algunos casos, los vehículos de entrega también transportan los envíos directamente desde la ubicación de retiro hasta la ubicación de entrega.

Nota: Las APIs de gRPC y REST usan convenciones de nombres de campo diferentes. Por ejemplo, el campo DeliveryVehicle.current_route_segment en la API de gRPC y el campo DeliveryVehicle.currentRouteSegment en la API de REST hacen referencia al mismo campo.

Campos
name

string

Es el nombre único de este vehículo de entrega. El formato es providers/{provider}/deliveryVehicles/{vehicle}.

last_location

DeliveryVehicleLocation

La última ubicación informada del vehículo de entrega.

navigation_status

DeliveryVehicleNavigationStatus

El estado de navegación del vehículo de entrega

current_route_segment

bytes

Es la polilínea codificada que especifica la ruta que la navegación recomienda tomar hasta el siguiente punto de referencia. La app del conductor actualiza esta información cuando se llega a una parada o se pasa por ella, y cuando la navegación cambia de ruta. Estos LatLng se muestran en Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) para todas las tareas activas asignadas al vehículo.

Hay algunos casos en los que este campo podría no usarse para propagar Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • El extremo de current_route_segment no coincide con DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) ni DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST).

  • La app del conductor no actualizó su ubicación recientemente, por lo que el valor actualizado más reciente de este campo podría estar desactualizado.

  • La app del conductor actualizó su ubicación recientemente, pero el current_route_segment está inactivo y apunta a una parada anterior del vehículo.

En estos casos, Fleet Engine completa este campo con una ruta desde la VehicleStop que pasó más recientemente hasta la VehicleStop que pasó para garantizar que el consumidor de este campo tenga la mejor información disponible sobre la ruta actual del vehículo de entrega.

current_route_segment_end_point

LatLng

Es la ubicación donde termina current_route_segment. Actualmente, la app del conductor no propaga este valor, pero puedes proporcionarlo en las llamadas a UpdateDeliveryVehicle. Es el LatLng de la próxima parada del vehículo o el último LatLng del current_route_segment. Luego, Fleet Engine hará todo lo posible para interpolar a un VehicleStop real.

Este campo se ignora en las llamadas a UpdateDeliveryVehicle si el campo current_route_segment está vacío.

remaining_distance_meters

Int32Value

La distancia en automóvil restante para el current_route_segment. La aplicación del controlador generalmente proporciona este campo, pero hay algunas circunstancias en las que Fleet Engine anulará el valor que envía la aplicación. Para obtener más información, consulta DeliveryVehicle.current_route_segment. Este campo se muestra en Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) o Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) para todos los Task activos asignados al vehículo de entrega.

Fleet Engine ignora este campo en UpdateDeliveryVehicleRequest si el campo current_route_segment está vacío.

remaining_duration

Duration

Tiempo de conducción restante: current_route_segment. La aplicación del controlador generalmente proporciona este campo, pero hay algunas circunstancias en las que Fleet Engine anulará el valor que envía la aplicación. Para obtener más información, consulta DeliveryVehicle.current_route_segment. Este campo se muestra en Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) o Task.remainingVehicleJourneySegments[0].drivingDuration (REST) para todas las tareas activas asignadas al vehículo de entrega.

Fleet Engine ignora este campo en UpdateDeliveryVehicleRequest si el campo current_route_segment está vacío.

remaining_vehicle_journey_segments[]

VehicleJourneySegment

Los segmentos de viaje asignados a este vehículo de entrega, a partir de la ubicación informada más reciente del vehículo Este campo no se propagará en la respuesta de ListDeliveryVehicles.

attributes[]

DeliveryVehicleAttribute

Una lista de atributos personalizados de vehículos de entrega. Un vehículo de reparto puede tener un máximo de 100 atributos, y cada uno debe tener una clave única.

type

DeliveryVehicleType

Es el tipo de vehículo de entrega. Si no la estableces, la configuración predeterminada será AUTO.

DeliveryVehicleType

Es el tipo de vehículo de entrega.

Enumeraciones
DELIVERY_VEHICLE_TYPE_UNSPECIFIED El valor no se usa.
AUTO Un automóvil
TWO_WHEELER Una motocicleta, ciclomotor y otro vehículo de dos ruedas
BICYCLE Transporte manual.
PEDESTRIAN Un medio de transporte humano, por lo general, a pie o corriendo, que se desplaza por senderos peatonales.

DeliveryVehicleAttribute

Describe un atributo del vehículo como un par clave-valor. La longitud de la cadena "clave:valor" no puede superar los 256 caracteres.

Campos
key

string

Es la clave del atributo.

value

string

Es el valor del atributo.

Campo de unión delivery_vehicle_attribute_value. El valor del atributo puede ser de tipo cadena, booleano o doble. Las direcciones (delivery_vehicle_attribute_value) solo pueden ser una de las siguientes opciones:
string_value

string

Valor del atributo de tipo de cadena.

Nota: Es idéntico al campo value, que eventualmente dejará de estar disponible. Para los métodos de creación o actualización, se puede usar cualquiera de los campos, pero se recomienda usar string_value. Si se configuran string_value y value, deben ser idénticos o se arrojará un error. Ambos campos se propagan en las respuestas.

bool_value

bool

Valor de atributo escrito en formato booleano.

number_value

double

Valor de atributo escrito dos veces.

DeliveryVehicleLocation

La ubicación, la velocidad y el rumbo de un vehículo en un momento determinado.

Campos
location

LatLng

Es la ubicación del vehículo. Cuando se envía a Fleet Engine, la ubicación del vehículo es una ubicación GPS. Cuando la recibes en una respuesta, la ubicación del vehículo puede ser una ubicación GPS, una ubicación complementaria o alguna otra ubicación estimada. La fuente se especifica en location_sensor.

horizontal_accuracy
(deprecated)

DoubleValue

Obsoleto: Usa latlng_accuracy en su lugar.

latlng_accuracy

DoubleValue

Precisión de location en metros como radio.

heading

Int32Value

Es la dirección en la que se mueve el vehículo en grados. 0 representa el norte. El rango válido es [0,360).

bearing_accuracy
(deprecated)

DoubleValue

Obsoleto: Usa heading_accuracy en su lugar.

heading_accuracy

DoubleValue

Precisión de heading en grados.

altitude

DoubleValue

Es la altitud en metros sobre el WGS84.

vertical_accuracy
(deprecated)

DoubleValue

Obsoleto: Usa altitude_accuracy en su lugar.

altitude_accuracy

DoubleValue

Precisión de altitude en metros

speed_kmph
(deprecated)

Int32Value

Es la velocidad del vehículo en kilómetros por hora. Obsoleto: Usa speed en su lugar.

speed

DoubleValue

Velocidad del vehículo en metros/segundo

speed_accuracy

DoubleValue

Precisión de speed en metros por segundo.

update_time

Timestamp

La hora a la que el sensor informó location según su reloj.

server_time

Timestamp

Solo salida. Es la hora en la que el servidor recibió la información de ubicación.

location_sensor

DeliveryVehicleLocationSensor

Es el proveedor de datos de ubicación (por ejemplo, GPS).

is_road_snapped

BoolValue

Indica si location está ajustado a una ruta.

is_gps_sensor_enabled

BoolValue

Solo entrada. Indica si el sensor de GPS está habilitado en el dispositivo móvil.

time_since_update

Int32Value

Solo entrada. Es el tiempo (en segundos) desde que se envió esta ubicación por primera vez al servidor. Este valor será cero para la primera actualización. Si la hora es desconocida (por ejemplo, cuando se reinicia la app), este valor se restablece a cero.

num_stale_updates
(deprecated)

Int32Value

Solo entrada. Obsoleto: Ahora se usan otros indicadores para determinar si una ubicación está inactiva.

raw_location

LatLng

Ubicación sin procesar del vehículo (sin procesar por el generador de imágenes de rutas)

raw_location_time

Timestamp

Marca de tiempo asociada con la ubicación sin procesar.

raw_location_sensor

DeliveryVehicleLocationSensor

Fuente de la ubicación sin procesar. La configuración predeterminada es GPS.

raw_location_accuracy

DoubleValue

Precisión de raw_location como radio, en metros.

supplemental_location

LatLng

Es la ubicación complementaria que proporciona la app de integración.

supplemental_location_time

Timestamp

Es la marca de tiempo asociada con la ubicación complementaria.

supplemental_location_sensor

DeliveryVehicleLocationSensor

Es la fuente de la ubicación complementaria. La configuración predeterminada es CUSTOMER_SUPPLIED_LOCATION.

supplemental_location_accuracy

DoubleValue

Precisión de supplemental_location como radio, en metros.

road_snapped
(deprecated)

bool

Obsoleto: Usa is_road_snapped en su lugar.

DeliveryVehicleLocationSensor

El sensor o la metodología que se usó para determinar la ubicación.

Enumeraciones
UNKNOWN_SENSOR El sensor no se especifica o es desconocido.
GPS GPS o GPS asistido
NETWORK GPS asistido, ID de la torre de telefonía celular o punto de acceso Wi-Fi
PASSIVE ID de torre de telefonía celular o punto de acceso Wi-Fi.
ROAD_SNAPPED_LOCATION_PROVIDER Es una ubicación que el dispositivo móvil determina como la posición más probable en la ruta.
CUSTOMER_SUPPLIED_LOCATION Una ubicación proporcionada por el cliente desde una fuente independiente. Por lo general, este valor se usa para una ubicación proporcionada desde fuentes que no son el dispositivo móvil que ejecuta el SDK de Driver. Si uno de los otros valores de enumeración describe la fuente original, usa ese valor. Las ubicaciones marcadas como CUSTOMER_SUPPLIED_LOCATION se proporcionan, por lo general, a través de un last_location.supplemental_location_sensor de DeliveryVehicle.
FLEET_ENGINE_LOCATION Es una ubicación que calcula el motor de flota en función de los indicadores disponibles. Solo salida. Este valor se rechazará si se recibe en una solicitud.
FUSED_LOCATION_PROVIDER El proveedor de ubicación combinada de Android
CORE_LOCATION Es el proveedor de ubicación en los sistemas operativos de Apple.

DeliveryVehicleNavigationStatus

Es el estado de navegación del vehículo.

Enumeraciones
UNKNOWN_NAVIGATION_STATUS Estado de navegación no especificado.
NO_GUIDANCE La navegación de la app para conductores está en modo FREE_NAV.
ENROUTE_TO_DESTINATION La navegación paso a paso está disponible y la navegación de la app para conductores entró en el modo GUIDED_NAV.
OFF_ROUTE El vehículo salió de la ruta sugerida.
ARRIVED_AT_DESTINATION El vehículo se encuentra a unos 50 m del destino.

GetDeliveryVehicleRequest

El mensaje de solicitud GetDeliveryVehicle

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

name

string

Obligatorio. Debe tener el formato providers/{provider}/deliveryVehicles/{delivery_vehicle}. provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project.

GetTaskRequest

El mensaje de solicitud GetTask.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

name

string

Obligatorio. Debe tener el formato providers/{provider}/tasks/{task}. El provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project.

GetTaskTrackingInfoRequest

El mensaje de solicitud GetTaskTrackingInfoRequest

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

name

string

Obligatorio. Debe tener el formato providers/{provider}/taskTrackingInfo/{tracking_id}. provider debe ser el ID del proyecto de Google Cloud y tracking_id debe ser el ID de seguimiento asociado con la tarea. Un nombre de ejemplo puede ser providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id.

ListDeliveryVehiclesRequest

El mensaje de solicitud ListDeliveryVehicles.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

parent

string

Obligatorio. Debe tener el formato providers/{provider}. provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project.

page_size

int32

Opcional. Es la cantidad máxima de vehículos que se mostrarán. El servicio puede devolver menos que este número. Si no especificas este número, el servidor determina la cantidad de resultados que se mostrarán.

page_token

string

Opcional. Un token de página, recibido desde una llamada ListDeliveryVehicles anterior. Debes proporcionarlo para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListDeliveryVehicles deben coincidir con la llamada que proporcionó el token de la página.

filter

string

Opcional. Es una consulta de filtro que se aplica cuando se enumeran los vehículos de reparto. Consulta http://aip.dev/160 para ver ejemplos de la sintaxis de filtro. Si no especificas un valor o si especificas una cadena vacía para el filtro, se muestran todos los vehículos de reparto.

Ten en cuenta que las únicas consultas compatibles con ListDeliveryVehicles son las de atributos de vehículos (por ejemplo, attributes.<key> = <value> o attributes.<key1> = <value1> AND attributes.<key2> = <value2>). Además, todos los atributos se almacenan como cadenas, por lo que las únicas comparaciones compatibles con los atributos son las comparaciones de cadenas. Para compararlos con valores numéricos o booleanos, los valores deben incluirse entre comillas de forma explícita para que se traten como cadenas (por ejemplo, attributes.<key> = "10" o attributes.<key> = "true").

La cantidad máxima de restricciones permitidas en una consulta de filtro es 50. Una restricción es una parte de la consulta del formulario attribute.<KEY> <COMPARATOR> <VALUE>. Por ejemplo, attributes.foo = bar es 1 restricción.

viewport

Viewport

Opcional. Es un filtro que limita los vehículos que se muestran a aquellos cuya última ubicación conocida estaba en el área rectangular definida por la vista del puerto.

ListDeliveryVehiclesResponse

El mensaje de respuesta ListDeliveryVehicles

Campos
delivery_vehicles[]

DeliveryVehicle

Es el conjunto de vehículos de entrega que cumplen con los criterios de filtrado solicitados. Cuando no se especifica ningún filtro, la solicitud muestra todos los vehículos de entrega. Una respuesta correcta también puede estar vacía. Una respuesta vacía indica que no se encontraron vehículos de entrega que cumplan con los criterios de filtro solicitados.

next_page_token

string

Puedes pasar este token en ListDeliveryVehiclesRequest para seguir enumerando los resultados. Cuando se muestren todos los resultados, este campo no estará en la respuesta o será una cadena vacía.

total_size

int64

Es la cantidad total de vehículos de reparto que coinciden con los criterios de la solicitud en todas las páginas.

ListTasksRequest

El mensaje de solicitud ListTasks.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

parent

string

Obligatorio. Debe tener el formato providers/{provider}. provider debe ser el ID del proyecto de Google Cloud. Por ejemplo, sample-cloud-project.

page_size

int32

Opcional. Es la cantidad máxima de tareas que se mostrarán. El servicio puede mostrar menos que este valor. Si no especificas este valor, el servidor determinará la cantidad de resultados que se mostrarán.

page_token

string

Opcional. Es un token de página recibido de una llamada a ListTasks anterior. Puedes proporcionar esto para recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a ListTasks deben coincidir con la llamada que proporcionó el token de la página.

filter

string

Opcional. Es una consulta de filtro que se aplica cuando se muestra una lista de tareas. Consulta http://aip.dev/160 para ver ejemplos de sintaxis de filtro. Si no especificas un valor o si filtras una cadena vacía, se mostrarán todas las Tasks. Para obtener información sobre las propiedades de Tasks que puedes filtrar, consulta Enumera tareas.

ListTasksResponse

La respuesta ListTasks que contiene el conjunto de tareas que cumplen con los criterios de filtro en ListTasksRequest

Campos
tasks[]

Task

El conjunto de tareas que cumplen con los criterios de filtrado solicitados. Cuando no se especifica ningún filtro, la solicitud muestra todas las tareas. Una respuesta correcta también puede estar vacía. Una respuesta vacía indica que no se encontraron tareas que cumplan con los criterios de filtro solicitados.

next_page_token

string

Pasa este token en ListTasksRequest para seguir enumerando los resultados. Si se muestran todos los resultados, este campo es una cadena vacía o no aparece en la respuesta.

total_size

int64

Es la cantidad total de tareas que coinciden con los criterios de la solicitud en todas las páginas.

LocationInfo

Una ubicación con cualquier identificador adicional.

Campos
point

LatLng

Las coordenadas de la ubicación

Tarea

Una tarea en la API de Delivery representa una sola acción de la que se realiza un seguimiento. En general, existe una distinción entre las tareas relacionadas con el envío y las tareas de descanso. Un envío puede tener varias Tasks asociadas a él. Por ejemplo, puede haber una tarea para el retiro y otra para la entrega o transferencia. Además, distintos vehículos pueden manejar diferentes Tasks para un envío determinado. Por ejemplo, un vehículo podría encargarse de la recolección y conducir el envío al centro de distribución, mientras que otro vehículo conduce el mismo envío del centro de distribución a la ubicación de entrega.

Nota: Las APIs de gRPC y REST usan convenciones de nombres de campo diferentes. Por ejemplo, el campo Task.journey_sharing_info en la API de gRPC y el campo Task.journeySharingInfo en la API de REST hacen referencia al mismo campo.

Campos
name

string

Debe tener el formato providers/{provider}/tasks/{task}.

type

Type

Obligatorio. Inmutable. Define el tipo de tarea. Por ejemplo, una pausa o un envío.

state

State

Obligatorio. Es el estado de ejecución actual de la tarea.

task_outcome

TaskOutcome

El resultado de la tarea.

task_outcome_time

Timestamp

Es la marca de tiempo que indica cuándo el proveedor estableció el resultado de Task.

task_outcome_location

LocationInfo

Es la ubicación en la que se estableció el resultado de Task. Este valor se actualiza como parte de UpdateTask. Si el proveedor no actualiza este valor de forma explícita, Fleet Engine lo propaga de forma predeterminada con la última ubicación conocida del vehículo (la ubicación sin procesar).

task_outcome_location_source

TaskOutcomeLocationSource

Indica de dónde provino el valor de task_outcome_location.

tracking_id

string

Inmutable. Este campo facilita el almacenamiento de un ID para que puedas evitar usar una asignación complicada. No puedes configurar tracking_id para tareas de tipo UNAVAILABLE y SCHEDULED_STOP. Estos IDs están sujetos a las siguientes restricciones:

  • Debe ser una cadena Unicode válida.
  • Tiene una longitud máxima de 64 caracteres.
  • Se normalizó de acuerdo con el formulario C de normalización de Unicode.
  • No puede contener ninguno de los siguientes caracteres ASCII: “/”, “:”, “?”, “,” o “'#'”.
delivery_vehicle_id

string

Solo salida. Es el ID del vehículo que ejecuta esta tarea. Los IDs de vehículos de entrega están sujetos a las siguientes restricciones:

  • Debe ser una cadena Unicode válida.
  • Tiene una longitud máxima de 64 caracteres.
  • Se normalizó según el Formato de normalización C de Unicode.
  • No puede contener ninguno de los siguientes caracteres ASCII: '/', ':', '?', ',' o '#'.
planned_location

LocationInfo

Inmutable. Es la ubicación donde se completará la tarea. Es opcional para UNAVAILABLE Tasks, pero obligatorio para todas las demás Tasks.

task_duration

Duration

Obligatorio. Inmutable. El tiempo necesario para ejecutar una tarea en esta ubicación.

target_time_window

TimeWindow

El período durante el cual se debe completar la tarea.

journey_sharing_info

JourneySharingInfo

Solo salida. Campos específicos para compartir viajes No se propaga cuando el estado es CLOSED.

task_tracking_view_config

TaskTrackingViewConfig

Es la configuración del seguimiento de tareas que especifica qué elementos de datos son visibles para los usuarios finales y en qué circunstancias.

attributes[]

TaskAttribute

Una lista de atributos de Task personalizados. Cada atributo debe tener una clave única.

JourneySharingInfo

Campos específicos para compartir viajes

Campos
remaining_vehicle_journey_segments[]

VehicleJourneySegment

Información de seguimiento de las paradas que hará el vehículo asignado antes de completar esta tarea. Ten en cuenta que esta lista puede contener paradas de otras tareas.

El primer segmento, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), contiene información de ruta desde la última ubicación conocida del controlador hasta la próxima VehicleStop. La información de la ruta actual suele provenir de la app del conductor, excepto en algunos casos que se indican en la documentación de DeliveryVehicle.current_route_segment. Fleet Engine propaga los otros segmentos en Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments (REST). Proporcionan información de ruta entre los VehicleStops restantes.

last_location

DeliveryVehicleLocation

Indica la última ubicación informada del vehículo asignado.

last_location_snappable

bool

Indica si la última ubicación del vehículo se puede ajustar a current_route_segment. Este valor es falso si no existen last_location o current_route_segment. Fleet Engine calcula este valor. Se ignoran las actualizaciones de los clientes.

Estado

Es el estado de una tarea. Esto indica el progreso de las tareas.

Enumeraciones
STATE_UNSPECIFIED Predeterminado. Se usa para un estado de tarea no especificado o no reconocido.
OPEN La tarea aún no se asignó a un vehículo de entrega o el vehículo de entrega aún no pasó por la parada asignada de Task.
CLOSED Cuando el vehículo pasa por la parada de esta tarea.

TaskOutcome

El resultado de intentar ejecutar una tarea. Cuando se cierra TaskState, TaskOutcome indica si se completó correctamente.

Enumeraciones
TASK_OUTCOME_UNSPECIFIED El resultado de la Task antes de que se establezca su valor.
SUCCEEDED La tarea se completó correctamente.
FAILED La tarea no se pudo completar o se canceló.

TaskOutcomeLocationSource

La identidad de la fuente que propagó el task_outcome_location.

Enumeraciones
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED El resultado de la tarea antes de que se establezca.
PROVIDER El proveedor especificó task_outcome_location.
LAST_VEHICLE_LOCATION El proveedor no especificó el task_outcome_location, por lo que Fleet Engine usó la última ubicación conocida del vehículo.

Tipo

Es el tipo de tarea.

Enumeraciones
TYPE_UNSPECIFIED De forma predeterminada, el tipo de tarea es desconocido.
PICKUP Una tarea de retiro es la acción que se realiza para retirar un envío de un cliente. Los puntos de partida de los vehículos de depósito o alimentador deben usar el tipo SCHEDULED_STOP.
DELIVERY Una tarea de entrega es la acción que se realiza para entregar un envío a un cliente final. Las bajadas de vehículos de depósito o alimentador deben usar el tipo SCHEDULED_STOP.
SCHEDULED_STOP Una tarea de parada programada se usa con fines de planificación. Por ejemplo, podría representar la recolección o entrega de envíos desde vehículos alimentadores o depósitos. No se debe usar para ningún envío que se retire o entregue a un cliente final.
UNAVAILABLE Es una tarea que indica que el vehículo no está disponible para el servicio. Por ejemplo, esto puede suceder cuando el conductor se toma un descanso o cuando el vehículo se está repostando.

TaskAttribute

Describe un atributo de tarea como un par clave-valor. La longitud de la cadena "clave:valor" no puede superar los 256 caracteres.

Campos
key

string

Es la clave del atributo. Las claves no pueden contener el carácter dos puntos (:).

Campo de unión task_attribute_value. El valor del atributo puede ser de tipo cadena, booleano o doble. Si no se establece ninguno, el valor de cadena de TaskAttribute se almacenará como la cadena vacía "". task_attribute_value puede ser solo uno de los siguientes:
string_value

string

Valor del atributo escrito como cadena.

bool_value

bool

Valor de atributo escrito en formato booleano.

number_value

double

Valor de atributo escrito dos veces.

TaskTrackingInfo

El mensaje TaskTrackingInfo. El mensaje contiene información de seguimiento de tareas que se usará para mostrarlas. Si un ID de seguimiento está asociado con varias tareas, Fleet Engine utiliza una heurística para decidir qué TaskTrackingInfo de Task seleccionar.

Campos
name

string

Debe tener el formato providers/{provider}/taskTrackingInfo/{tracking}, en el que tracking representa el ID de seguimiento.

tracking_id

string

Inmutable. Es el ID de seguimiento de una tarea. * Debe ser una cadena Unicode válida. * Tiene una longitud máxima de 64 caracteres. * Se normalizó según el Formato de normalización C de Unicode. * No puede contener ninguno de los siguientes caracteres ASCII: '/', ':', '?', ',' o '#'.

vehicle_location

DeliveryVehicleLocation

La última ubicación del vehículo.

route_polyline_points[]

LatLng

Es una lista de puntos que, cuando se conectan, forman una polilínea de la ruta esperada del vehículo a la ubicación de esta tarea.

remaining_stop_count

Int32Value

Indica la cantidad de paradas que le quedan al vehículo hasta llegar a la parada de la tarea, incluida la parada de la tarea. Por ejemplo, si la siguiente parada del vehículo es la parada de tarea, el valor será 1.

remaining_driving_distance_meters

Int32Value

Es la distancia total restante en metros hasta el VehicleStop de interés.

estimated_arrival_time

Timestamp

Es la marca de tiempo que indica la hora de llegada estimada a la ubicación de la parada.

estimated_task_completion_time

Timestamp

Es la marca de tiempo que indica el tiempo de finalización estimado de una tarea.

state

State

Es el estado de ejecución actual de la tarea.

task_outcome

TaskOutcome

El resultado de intentar ejecutar una Task.

task_outcome_time

Timestamp

Es la marca de tiempo que indica cuando el proveedor estableció el resultado de la Task.

planned_location

LocationInfo

Inmutable. Es la ubicación donde se completará la tarea.

target_time_window

TimeWindow

Es el período durante el cual se debe completar la tarea.

attributes[]

TaskAttribute

Los atributos personalizados configurados en la tarea.

TaskTrackingViewConfig

Es el mensaje de configuración que define cuándo los usuarios finales deben ver un elemento de datos de una tarea.

Campos
route_polyline_points_visibility

VisibilityOption

Es el campo que especifica cuándo se pueden ver los puntos de polilínea de la ruta. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

estimated_arrival_time_visibility

VisibilityOption

Es el campo que especifica cuándo se puede ver la hora de llegada estimada. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

estimated_task_completion_time_visibility

VisibilityOption

Es el campo que especifica cuándo se puede ver el tiempo estimado de finalización de la tarea. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

remaining_driving_distance_visibility

VisibilityOption

El campo que especifica cuándo se puede ver la distancia de conducción restante. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

remaining_stop_count_visibility

VisibilityOption

Es el campo que especifica cuándo se puede ver el recuento de paradas restantes. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

vehicle_location_visibility

VisibilityOption

Es el campo que especifica cuándo puede ser visible la ubicación del vehículo. Si no se especifica este campo, se usará la configuración de visibilidad predeterminada a nivel del proyecto para estos datos.

VisibilityOption

Es el mensaje de opción que define cuándo un elemento de datos debe ser visible para los usuarios finales.

Campos
Campo de unión visibility_option. La opción de visibilidad específica que se eligió Las direcciones (visibility_option) solo pueden ser una de las siguientes opciones:
remaining_stop_count_threshold

int32

Los usuarios finales pueden ver este elemento de datos si el recuento de paradas restantes <= remaining_stop_count_threshold.

duration_until_estimated_arrival_time_threshold

Duration

Los usuarios finales pueden ver este elemento de datos si la hora de llegada estimada a la parada es <= duration_until_estimated_arrival_time_threshold.

remaining_driving_distance_meters_threshold

int32

Los usuarios finales pueden ver este elemento de datos si la distancia de conducción restante en metros <= remaining_driving_distance_meters_threshold.

always

bool

Si se configura como verdadero, este elemento de datos siempre estará visible para los usuarios finales sin umbrales. Este campo no se puede establecer como falso.

never

bool

Si se configura como verdadero, este elemento de datos siempre está oculto para los usuarios finales sin umbrales. Este campo no se puede establecer como falso.

TimeWindow

Un intervalo de tiempo.

Campos
start_time

Timestamp

Obligatorio. Es la hora de inicio del período (inclusive).

end_time

Timestamp

Obligatorio. Es la hora de finalización del período (inclusive).

UpdateDeliveryVehicleRequest

El mensaje de solicitud UpdateDeliveryVehicle.

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

delivery_vehicle

DeliveryVehicle

Obligatorio. Es la actualización de la entidad DeliveryVehicle que se aplicará. Nota: No puedes actualizar el nombre de DeliveryVehicle.

update_mask

FieldMask

Obligatorio. Es una máscara de campo que indica qué campos DeliveryVehicle se deben actualizar. Ten en cuenta que update_mask debe contener al menos un campo.

Esta es una lista separada por comas de los nombres de campos totalmente calificados. Ejemplo: "remaining_vehicle_journey_segments".

UpdateTaskRequest

El mensaje de solicitud UpdateTask

Campos
header

DeliveryRequestHeader

Opcional. El encabezado de la solicitud a la API de entrega estándar.

task

Task

Obligatorio. La tarea asociada con la actualización. Fleet Engine mantiene los siguientes campos. No las actualices con Task.update.

  • last_location.
  • last_location_snappable.
  • name.
  • remaining_vehicle_journey_segments.
  • task_outcome_location_source.

Nota: No puedes cambiar el valor de task_outcome una vez que lo configures.

Si la tarea se asignó a un vehículo de entrega, no configures el estado de la tarea como CERRADA con Task.update. En su lugar, quita el VehicleStop que contiene la tarea del vehículo de entrega, lo que establece automáticamente el estado de la tarea como CERRADA.

update_mask

FieldMask

Obligatorio. Es la máscara de campo que indica qué campos de Task se deben actualizar. Nota: El update_mask debe contener al menos un campo.

Esta es una lista separada por comas de los nombres de campos totalmente calificados. Ejemplo: "task_outcome,task_outcome_time,task_outcome_location".

VehicleJourneySegment

Representa el tramo de viaje de un vehículo, desde la parada anterior hasta la parada actual. Si es la primera parada activa, es desde la ubicación actual del vehículo hasta esta parada.

Campos
stop

VehicleStop

Especifica la ubicación de la parada, junto con los Task asociados a ella. Es posible que algunos campos de VehicleStop no estén presentes si este segmento de viaje forma parte de JourneySharingInfo.

driving_distance_meters

Int32Value

Solo salida. Es la distancia recorrida desde la parada anterior hasta esta parada. Si la parada actual es la primera de la lista de segmentos de viaje, el punto de partida es la ubicación del vehículo registrada en el momento en que se agregó esta parada a la lista. Es posible que este campo no esté presente si este segmento del recorrido forma parte de JourneySharingInfo.

driving_duration

Duration

Solo salida. Es el tiempo de viaje desde la parada anterior hasta esta parada. Si la parada actual es la primera de la lista de segmentos de viaje, el punto de partida es la ubicación del vehículo registrada en el momento en que se agregó esta parada a la lista.

Si este campo está definido en la ruta Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) o Task.remainingVehicleJourneySegments[0].drivingDuration (REST), se puede propagar con el valor de DeliveryVehicle.remaining_duration (gRPC) o DeliveryVehicle.remainingDuration (REST). Esto proporciona la duración restante en automóvil desde la ubicación conocida más reciente de la app para conductores, en lugar de la duración del viaje desde la parada anterior.

path[]

LatLng

Solo salida. Es la ruta de la parada anterior a esta parada. Si la parada actual es la primera parada de la lista de tramos de viaje, esta es la ruta desde la ubicación actual del vehículo hasta la parada en el momento en que esta se agregó a la lista. Es posible que este campo no esté presente si este segmento del recorrido forma parte de JourneySharingInfo.

Si este campo está definido en la ruta Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST), puede propagarse con los LatLng decodificados de DeliveryVehicle.current_route_segment (gRPC) o DeliveryVehicle.currentRouteSegment (REST). Esto proporciona la ruta de conducción desde la ubicación conocida más reciente de la app del conductor, en lugar de la ruta desde la parada anterior.

VehicleStop

Describe un punto en el que un vehículo se detiene para realizar una o más Task.

Campos
planned_location

LocationInfo

Obligatorio. Es la ubicación de la parada. Ten en cuenta que las ubicaciones de los Tasks pueden no coincidir exactamente con esta ubicación, pero estarán a una distancia corta de ella. Este campo no se propagará en la respuesta de una llamada a GetTask.

tasks[]

TaskInfo

Es la lista de Task que se deben realizar en esta parada. Este campo no se propagará en la respuesta de una llamada a GetTask.

state

State

Es el estado de VehicleStop. Este campo no se propagará en la respuesta de una llamada a GetTask.

Estado

Es el estado actual de un VehicleStop.

Enumeraciones
STATE_UNSPECIFIED Desconocido.
NEW Se creó, pero no se enrutaba de forma activa.
ENROUTE Enrutamiento asignado y activo
ARRIVED Llegaste a la parada. Supone que, cuando el vehículo se dirige a la siguiente parada, se completaron todas las paradas anteriores.

TaskInfo

Información adicional sobre la tarea que se realizó en esta parada.

Campos
task_id

string

El ID de la tarea. Este campo no se propagará en la respuesta de una llamada a GetTask. Los IDs de tareas están sujetos a las siguientes restricciones:

  • Debe ser una cadena Unicode válida.
  • Tiene una longitud máxima de 64 caracteres.
  • Se normalizó según el Formato de normalización C de Unicode.
  • No puede contener ninguno de los siguientes caracteres ASCII: '/', ':', '?', ',' o '#'.
task_duration

Duration

Solo salida. Es el tiempo necesario para realizar la tarea.

target_time_window

TimeWindow

Solo salida. Es el período durante el cual se debe completar la tarea. Esto solo se establece en la respuesta a GetDeliveryVehicle.