REST Resource: providers.deliveryVehicles

Recurso: veículo de entrega

A mensagem DeliveryVehicle. Um veículo de entrega transporta encomendas de um depósito para um local de entrega e de um local de retirada para o depósito. Em alguns casos, os veículos de entrega também transportam encomendas diretamente do local de retirada para o local de entrega.

Observação: as APIs gRPC e REST usam convenções de nomenclatura de campo diferentes. Por exemplo, o campo DeliveryVehicle.current_route_segment na API gRPC e o campo DeliveryVehicle.currentRouteSegment na API REST se referem ao mesmo campo.

Representação JSON
{
  "name": string,
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "navigationStatus": enum (DeliveryVehicleNavigationStatus),
  "currentRouteSegment": string,
  "currentRouteSegmentEndPoint": {
    object (LatLng)
  },
  "remainingDistanceMeters": integer,
  "remainingDuration": string,
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "attributes": [
    {
      object (DeliveryVehicleAttribute)
    }
  ],
  "type": enum (DeliveryVehicleType)
}
Campos
name

string

O nome exclusivo desse veículo de entrega. O formato é providers/{provider}/deliveryVehicles/{vehicle}.

lastLocation

object (DeliveryVehicleLocation)

O último local informado do veículo de entrega.

navigationStatus

enum (DeliveryVehicleNavigationStatus)

Status de navegação do veículo de entrega.

currentRouteSegment

string (bytes format)

A polilinha codificada que especifica o trajeto que a navegação recomenda usar até o próximo waypoint. O app do motorista atualiza o trajeto quando uma parada é alcançada ou ultrapassada e quando a navegação volta a rota. Esses LatLngs são retornados em Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) para todas as tarefas ativas atribuídas ao veículo.

Há alguns casos em que esse campo pode não ser usado para preencher Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • O endpoint de currentRouteSegment não corresponde a DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) ou DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST).

  • Como o app do motorista não atualizou a localização recentemente, o último valor atualizado desse campo pode estar desatualizado.

  • O app do motorista atualizou recentemente o local, mas o currentRouteSegment está desatualizado e aponta para uma parada anterior do veículo.

Nesses casos, o Fleet Engine preenche esse campo com uma rota da VehicleStop que passou mais recentemente até a próxima VehicleStop para garantir que o consumidor desse campo tenha as melhores informações disponíveis sobre o caminho atual do Veículo de entrega.

Uma string codificada em base64.

currentRouteSegmentEndPoint

object (LatLng)

O local em que o currentRouteSegment termina. No momento, ele não é preenchido pelo app do motorista, mas pode ser fornecido em chamadas deliveryVehicles.patch. É o LatLng da próxima parada de veículo ou o último LatLng do currentRouteSegment. O Fleet Engine vai fazer o possível para interpolar com um VehicleStop real.

Esse campo será ignorado em chamadas deliveryVehicles.patch se o campo currentRouteSegment estiver vazio.

remainingDistanceMeters

integer

A distância de carro restante do currentRouteSegment. O app Driver normalmente fornece esse campo, mas há algumas circunstâncias em que o Fleet Engine substitui o valor enviado pelo app. Para mais informações, consulte DeliveryVehicle.current_route_segment. Esse campo é retornado em Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) ou Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) para todos os Tasks ativos atribuídos ao Veículo de entrega.

O Fleet Engine vai ignorar este campo em UpdateDeliveryVehicleRequest se o campo currentRouteSegment estiver vazio.

remainingDuration

string (Duration format)

O tempo de viagem restante para o currentRouteSegment. O app Driver normalmente fornece esse campo, mas há algumas circunstâncias em que o Fleet Engine substitui o valor enviado pelo app. Para mais informações, consulte DeliveryVehicle.current_route_segment. Esse campo é retornado em Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) ou Task.remainingVehicleJourneySegments[0].drivingDuration (REST) para todas as tarefas ativas atribuídas ao veículo de entrega.

O Fleet Engine vai ignorar este campo em UpdateDeliveryVehicleRequest se o campo currentRouteSegment estiver vazio.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

Os segmentos de viagem atribuídos a esse veículo de entrega, começando no local informado mais recentemente. Esse campo não vai ser preenchido na resposta de deliveryVehicles.list.

attributes[]

object (DeliveryVehicleAttribute)

Uma lista de atributos personalizados do veículo de entrega. Um veículo de entrega pode ter no máximo 100 atributos, e cada atributo precisa ter uma chave exclusiva.

type

enum (DeliveryVehicleType)

O tipo deste veículo de entrega. Se não for definido, o padrão será AUTO.

DeliveryVehicleNavigationStatus

Status de navegação do veículo.

Enums
UNKNOWN_NAVIGATION_STATUS Status de navegação não especificado.
NO_GUIDANCE A navegação do app do motorista está no modo FREE_NAV.
ENROUTE_TO_DESTINATION A navegação guiada está disponível, e a navegação do app do motorista entrou no modo GUIDED_NAV.
OFF_ROUTE O veículo saiu do trajeto sugerido.
ARRIVED_AT_DESTINATION O veículo está a aproximadamente 50 m do destino.

DeliveryVehicleAttribute

Descreve um atributo de veículo como um par de chave-valor. O comprimento da string "key:value" não pode exceder 256 caracteres.

Representação JSON
{
  "key": string,
  "value": string,

  // Union field delivery_vehicle_attribute_value can be only one of the
  // following:
  "stringValue": string,
  "boolValue": boolean,
  "numberValue": number
  // End of list of possible types for union field
  // delivery_vehicle_attribute_value.
}
Campos
key

string

A chave do atributo.

value

string

O valor do atributo.

Campo de união delivery_vehicle_attribute_value. O valor do atributo, pode estar em string, bool ou tipo duplo. delivery_vehicle_attribute_value pode ser apenas de um dos tipos a seguir:
stringValue

string

Valor do atributo do tipo string.

Observação: ele é idêntico ao campo value, que terá o uso suspenso. Para métodos "create" ou "update", ambos os campos podem ser usados, mas é altamente recomendável usar stringValue. Se stringValue e value forem definidos, eles precisarão ser idênticos, ou um erro será gerado. Ambos os campos são preenchidos nas respostas.

boolValue

boolean

Valor de atributo tipo booleano.

numberValue

number

Valor de atributo de dois tipos.

DeliveryVehicleType

O tipo de veículo de entrega.

Enums
DELIVERY_VEHICLE_TYPE_UNSPECIFIED O valor não é usado.
AUTO Um automóvel.
TWO_WHEELER Uma motocicleta, ciclomoto ou outro veículo de duas rodas
BICYCLE Transporte com recursos humanos.
PEDESTRIAN Um transportador humano, normalmente andando ou correndo, percorrendo caminhos de pedestres.

Métodos

create

Cria e retorna um novo DeliveryVehicle.

get

Retorna a instância de DeliveryVehicle especificada.

list

Recebe todos os DeliveryVehicles que atendem aos critérios de filtragem especificados.

patch

Grava dados atualizados de DeliveryVehicle no Fleet Engine e atribui Tasks ao DeliveryVehicle.