Package maps.fleetengine.delivery.v1

Индекс

Служба доставки

Служба доставки последней мили.

Пакетное создание задач

rpc BatchCreateTasks( BatchCreateTasksRequest ) returns ( BatchCreateTasksResponse )

Создает и возвращает пакет новых объектов Task .

CreateDeliveryVehicle

rpc CreateDeliveryVehicle( CreateDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Создает и возвращает новый DeliveryVehicle .

CreateTask

rpc CreateTask( CreateTaskRequest ) returns ( Task )

Создает и возвращает новый объект Task .

УдалитьДоставочноеСредство

rpc DeleteDeliveryVehicle( DeleteDeliveryVehicleRequest ) returns ( Empty )

Удаляет DeliveryVehicle из Fleet Engine.

Возвращает FAILED_PRECONDITION, если для DeliveryVehicle назначены ОТКРЫТЫЕ задачи.

DeleteTask

rpc DeleteTask( DeleteTaskRequest ) returns ( Empty )

Удаляет одну задачу.

Возвращает FAILED_PRECONDITION, если задача ОТКРЫТА и назначена средству доставки.

GetDeliveryVehicle

rpc GetDeliveryVehicle( GetDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Возвращает указанный экземпляр DeliveryVehicle .

GetTask

rpc GetTask( GetTaskRequest ) returns ( Task )

Получает информацию о Task .

GetTaskTrackingInfo

rpc GetTaskTrackingInfo( GetTaskTrackingInfoRequest ) returns ( TaskTrackingInfo )

Возвращает указанный экземпляр TaskTrackingInfo .

СписокДоставочныхСредств

rpc ListDeliveryVehicles( ListDeliveryVehiclesRequest ) returns ( ListDeliveryVehiclesResponse )

Получает все DeliveryVehicle , которые соответствуют указанным критериям фильтрации.

СписокЗадач

rpc ListTasks( ListTasksRequest ) returns ( ListTasksResponse )

Получает все Task , соответствующие указанным критериям фильтрации.

ОбновлениеДоставкиАвтомобиля

rpc UpdateDeliveryVehicle( UpdateDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Записывает обновлённые данные DeliveryVehicle в Fleet Engine и назначает Tasks DeliveryVehicle . Имя DeliveryVehicle изменить нельзя. Можно обновить remaining_vehicle_journey_segments , но он должен содержать все VehicleJourneySegment , чтобы быть сохранённым в DeliveryVehicle . Идентификаторы task_id извлекаются из remaining_vehicle_journey_segments , и соответствующие им Tasks назначаются DeliveryVehicle , если они ещё не были назначены.

UpdateTask

rpc UpdateTask( UpdateTaskRequest ) returns ( Task )

Обновляет данные Task .

BatchCreateTasksRequest

Сообщение-запрос BatchCreateTask .

Поля
header

DeliveryRequestHeader

Необязательно. Стандартный заголовок запроса Delivery API. Примечание: если вы зададите это поле, то поле заголовка в сообщениях CreateTaskRequest должно быть либо пустым, либо совпадать с этим полем.

parent

string

Обязательно. Родительский ресурс, общий для всех задач. Это значение должно быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project . Поле parent в сообщениях CreateTaskRequest должно быть либо пустым, либо совпадать с этим полем.

requests[]

CreateTaskRequest

Обязательно. Запрос, в котором указаны ресурсы для создания. Примечание: можно создать не более 500 задач в пакете.

BatchCreateTasksResponse

Ответное сообщение BatchCreateTask .

Поля
tasks[]

Task

Созданные Задачи.

CreateDeliveryVehicleRequest

Сообщение-запрос CreateDeliveryVehicle .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Обязательно. Должен быть в формате providers/{provider} . Поставщик должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

delivery_vehicle_id

string

Обязательно. Идентификатор транспортного средства должен быть уникальным и соответствовать следующим ограничениям:

  • Должна быть допустимой строкой Unicode.
  • Длина пароля ограничена 64 символами.
  • Нормализовано в соответствии с формой нормализации Unicode C.
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
delivery_vehicle

DeliveryVehicle

Обязательно. Создаваемая сущность DeliveryVehicle . При создании нового транспортного средства доставки вы можете задать следующие необязательные поля:

  • тип
  • последнее_местоположение
  • атрибуты

Примечание: Поле name DeliveryVehicle» игнорируется. Все остальные поля DeliveryVehicle не должны быть заполнены; в противном случае возвращается ошибка.

CreateTaskRequest

Сообщение-запрос CreateTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Обязательно. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

task_id

string

Обязательно. Идентификатор задачи должен быть уникальным, но не должен быть идентификатором отслеживания отправления. Для сохранения идентификатора отслеживания отправления используйте поле tracking_id . Обратите внимание, что несколько задач могут иметь один и тот же tracking_id . На идентификаторы задач распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Длина пароля ограничена 64 символами.
  • Нормализовано в соответствии с формой нормализации Unicode C.
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
task

Task

Обязательно. Задача, которую нужно создать. При создании задачи необходимо заполнить следующие поля:

  • type
  • state (должно быть установлено на OPEN )
  • tracking_id (нельзя задавать для задач UNAVAILABLE или SCHEDULED_STOP , но требуется для всех остальных типов задач)
  • planned_location (необязательно для UNAVAILABLE задач)
  • task_duration

При желании можно задать следующие поля:

  • target_time_window
  • task_tracking_view_config
  • attributes

Примечание: Поле name задачи» игнорируется. Все остальные поля задачи не должны быть заполнены; в противном случае возвращается ошибка.

DeleteDeliveryVehicleRequest

Сообщение-запрос DeleteDeliveryVehicle.

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Обязательно. Должен быть в формате providers/{provider}/deliveryVehicles/{delivery_vehicle} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

DeleteTaskRequest

Сообщение-запрос DeleteTask.

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Обязательно. Должен быть в формате providers/{provider}/tasks/{task} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

DeliveryRequestHeader

RequestHeader содержит поля, общие для всех запросов Delivery RPC.

Поля
language_code

string

Код языка BCP-47, например en-US или sr-Latn. Подробнее см. http://www.unicode.org/reports/tr35/#Unicode_locale_identifier . Если код не указан, ответ может быть на любом языке, с предпочтением английского, если такое имя существует. Пример значения поля: en-US .

region_code

string

Обязательно. Код региона CLDR, откуда исходит запрос. Пример значения поля: US .

sdk_version

string

Версия вызывающего SDK, если применимо. Формат версии: «major.minor.patch», например: 1.1.2 .

os_version

string

Версия операционной системы, на которой работает вызывающий SDK. Примеры значений полей: 4.4.1 , 12.1 .

device_model

string

Модель устройства, на котором запущен вызывающий SDK. Примеры значений полей: iPhone12,1 , SM-G920F .

sdk_type

SdkType

Тип SDK, отправляющего запрос.

maps_sdk_version

string

Версия MapSDK, от которой зависит вызывающий SDK (если применимо). Формат версии: «major.minor.patch», например: 5.2.1 .

nav_sdk_version

string

Версия NavSDK, от которой зависит вызывающий SDK (если применимо). Формат версии: «major.minor.patch», например: 2.1.0 .

platform

Platform

Платформа вызывающего SDK.

manufacturer

string

Производитель устройства Android из вызывающего SDK. Применимо только для Android SDK. Пример значения поля: Samsung .

android_api_level

int32

Уровень API Android вызывающего SDK, применим только для Android SDK. Пример значения поля: 23 .

trace_id

string

Дополнительный идентификатор, который может быть предоставлен для целей регистрации с целью идентификации запроса.

Платформа

Платформа вызова SDK.

Перечисления
PLATFORM_UNSPECIFIED Значение по умолчанию. Используется, если платформа не указана.
ANDROID Запрос поступает от Android.
IOS Запрос поступает со стороны iOS.
WEB Запрос поступает из Интернета.

SDKType

Возможные типы SDK.

Перечисления
SDK_TYPE_UNSPECIFIED Значение по умолчанию. Используется, если sdk_type не указан.
CONSUMER Вызывающий SDK — Consumer.
DRIVER Вызывающий SDK — Driver.
JAVASCRIPT Вызывающий SDK — это JavaScript.

Доставка

Сообщение DeliveryVehicle . Транспортное средство доставки перевозит грузы со склада в пункт доставки и из пункта выдачи на склад. В некоторых случаях транспортные средства доставки также перевозят грузы непосредственно из пункта выдачи в пункт доставки.

Примечание: в API gRPC и REST используются разные соглашения об именовании полей. Например, поле DeliveryVehicle.current_route_segment в API gRPC и поле DeliveryVehicle.currentRouteSegment в API REST ссылаются на одно и то же поле.

Поля
name

string

Уникальное имя этого средства доставки. Формат: providers/{provider}/deliveryVehicles/{vehicle} .

last_location

DeliveryVehicleLocation

Последнее сообщенное местонахождение средства доставки.

past_locations[]

DeliveryVehicleLocation

Только для ввода. Места, где это транспортное средство доставки уже побывало, но ещё не передано в Fleet Engine. Это используется в UpdateDeliveryVehicleRequest для записи местоположений, информацию о которых ранее не удавалось отправить на сервер. Обычно это происходит, когда у транспортного средства доставки нет подключения к Интернету.

navigation_status

DeliveryVehicleNavigationStatus

Навигационный статус средства доставки.

current_route_segment

bytes

Закодированная ломаная линия, определяющая маршрут, рекомендуемый навигацией к следующей точке маршрута. Ваше водительское приложение обновляет его при достижении или прохождении остановки, а также при изменении маршрута навигацией. Эти значения LatLng возвращаются в Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) ​​для всех активных задач, назначенных транспортному средству.

Есть несколько случаев, когда это поле может не использоваться для заполнения Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • Конечная точка current_route_segment не соответствует DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) или DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST).

  • Приложение для водителей давно не обновляло свое местоположение, поэтому последнее обновленное значение в этом поле может быть устаревшим.

  • Приложение для водителей недавно обновило свое местоположение, но current_route_segment устарел и указывает на предыдущую остановку транспортного средства.

В этих случаях Fleet Engine заполняет это поле маршрутом от последней пройденной остановки VehicleStop до предстоящей остановки VehicleStop, чтобы гарантировать, что потребитель этого поля имеет наилучшую доступную информацию о текущем пути транспортного средства доставки.

current_route_segment_end_point

LatLng

Местоположение, где заканчивается current_route_segment . В настоящее время это значение не заполняется приложением водителя, но вы можете указать его при вызовах UpdateDeliveryVehicle . Это либо LatLng от предстоящей остановки транспортного средства, либо LatLng последнего сегмента current_route_segment . После этого Fleet Engine постарается интерполировать данные до фактической VehicleStop .

Это поле игнорируется в вызовах UpdateDeliveryVehicle , если поле current_route_segment пусто.

remaining_distance_meters

Int32Value

Оставшееся расстояние для current_route_segment . Приложение Driver обычно предоставляет это поле, но в некоторых случаях Fleet Engine переопределяет значение, отправленное приложением. Подробнее см. в разделе DeliveryVehicle.current_route_segment . Это поле возвращается в Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) или Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) ​​для всех активных Task , назначенных транспортному средству доставки.

Fleet Engine игнорирует это поле в UpdateDeliveryVehicleRequest , если поле current_route_segment пустое.

remaining_duration

Duration

Оставшееся время в пути для current_route_segment . Приложение Driver обычно предоставляет это поле, но в некоторых случаях Fleet Engine переопределяет значение, отправленное приложением. Подробнее см. в разделе DeliveryVehicle.current_route_segment . Это поле возвращается в Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) или Task.remainingVehicleJourneySegments[0].drivingDuration (REST) ​​для всех активных задач, назначенных транспортному средству доставки.

Fleet Engine игнорирует это поле в UpdateDeliveryVehicleRequest , если поле current_route_segment пустое.

remaining_vehicle_journey_segments[]

VehicleJourneySegment

Сегменты маршрута, назначенные данному транспортному средству доставки, начиная с последнего указанного местоположения. Это поле не будет заполнено в ответе ListDeliveryVehicles .

attributes[]

DeliveryVehicleAttribute

Список настраиваемых атрибутов средства доставки. Средство доставки может иметь не более 100 атрибутов, и каждый атрибут должен иметь уникальный ключ.

type

DeliveryVehicleType

Тип данного средства доставки. Если не задано, по умолчанию будет использоваться значение AUTO .

ТипДоставки

Тип транспортного средства доставки.

Перечисления
DELIVERY_VEHICLE_TYPE_UNSPECIFIED Значение не используется.
AUTO Автомобиль.
TWO_WHEELER Мотоцикл, мопед или другое двухколесное транспортное средство
BICYCLE Транспорт, приводимый в движение человеком.
PEDESTRIAN Средство для перемещения людей, обычно идущее или бегущее по пешеходным дорожкам.

АтрибутДоставкиВехиклес

Описывает атрибут транспортного средства как пару «ключ-значение». Длина строки «ключ:значение» не может превышать 256 символов.

Поля
key

string

Ключ атрибута.

value

string

Значение атрибута.

Поле объединения delivery_vehicle_attribute_value . Значение атрибута может быть строковым, логическим или типом double. delivery_vehicle_attribute_value может быть только одним из следующих:
string_value

string

Значение атрибута, типизированное как строка.

Примечание: Это идентично полю value , которое в конечном итоге будет объявлено устаревшим. Для методов create или update можно использовать любое из полей, но настоятельно рекомендуется использовать string_value . Если заданы и string_value , и value , они должны быть идентичны, иначе возникнет ошибка. Оба поля заполняются в ответах.

bool_value

bool

Значение атрибута логического типа.

number_value

double

Значение атрибута двойного типа.

ДоставкаТранспортМестоположение

Местоположение, скорость и направление движения транспортного средства в определенный момент времени.

Поля
location

LatLng

Местоположение транспортного средства. При отправке в Fleet Engine местоположение транспортного средства определяется по GPS. В ответе местоположение транспортного средства может быть либо по GPS, либо по дополнительному местоположению, либо по другому приблизительному местоположению. Источник данных указан в location_sensor .

horizontal_accuracy
(deprecated)

DoubleValue

Устарело: вместо этого используйте latlng_accuracy .

latlng_accuracy

DoubleValue

Точность определения location в метрах в виде радиуса.

heading

Int32Value

Направление движения транспортного средства в градусах. 0 соответствует северу. Допустимый диапазон — [0,360].

bearing_accuracy
(deprecated)

DoubleValue

Устарело: вместо этого используйте heading_accuracy .

heading_accuracy

DoubleValue

Точность heading в градусах.

altitude

DoubleValue

Высота в метрах над WGS84.

vertical_accuracy
(deprecated)

DoubleValue

Устарело: вместо этого используйте altitude_accuracy .

altitude_accuracy

DoubleValue

Точность altitude в метрах.

speed_kmph
(deprecated)

Int32Value

Скорость транспортного средства в километрах в час. Устарело: вместо этого используйте speed .

speed

DoubleValue

Скорость транспортного средства в метрах/секунду

speed_accuracy

DoubleValue

Точность speed в метрах/секунду.

update_time

Timestamp

Время, когда датчик сообщил location в соответствии с часами датчика.

server_time

Timestamp

Только вывод. Время получения сервером информации о местоположении.

location_sensor

DeliveryVehicleLocationSensor

Поставщик данных о местоположении (например, GPS ).

is_road_snapped

BoolValue

Привязано ли location к дороге.

is_gps_sensor_enabled

BoolValue

Только ввод. Указывает, включен ли датчик GPS на мобильном устройстве.

time_since_update

Int32Value

Только ввод. Время (в секундах) с момента первой отправки данных о местоположении на сервер. При первом обновлении это значение будет равно нулю. Если время неизвестно (например, при перезапуске приложения), это значение сбрасывается до нуля.

num_stale_updates
(deprecated)

Int32Value

Только ввод. Устарело: теперь для определения устарелости местоположения используются другие сигналы.

raw_location

LatLng

Первичное местоположение транспортного средства (необработанное дорожным фотографом).

raw_location_time

Timestamp

Метка времени, связанная с исходным местоположением.

raw_location_sensor

DeliveryVehicleLocationSensor

Источник исходного местоположения. По умолчанию — GPS .

raw_location_accuracy

DoubleValue

Точность raw_location как радиуса в метрах.

flp_location

LatLng

Местоположение от поставщика комбинированных местоположений Android.

flp_update_time

Timestamp

Обновить временную метку flp_location

flp_latlng_accuracy_meters

DoubleValue

Точность flp_location в метрах в виде радиуса.

flp_heading_degrees

Int32Value

Направление движения транспортного средства в градусах, определяемое поставщиком комбинированного местоположения. 0 соответствует направлению на север. Допустимый диапазон — [0,360].

supplemental_location

LatLng

Дополнительное местоположение, предоставленное интегрирующим приложением.

supplemental_location_time

Timestamp

Метка времени, связанная с дополнительным местоположением.

supplemental_location_sensor

DeliveryVehicleLocationSensor

Источник дополнительного местоположения. По умолчанию — CUSTOMER_SUPPLIED_LOCATION .

supplemental_location_accuracy

DoubleValue

Точность supplemental_location в виде радиуса в метрах.

road_snapped
(deprecated)

bool

Устарело: вместо этого используйте is_road_snapped .

Датчик местоположения транспортного средства доставки

Датчик или методология, используемые для определения местоположения.

Перечисления
UNKNOWN_SENSOR Датчик не указан или неизвестен.
GPS GPS или Assisted GPS.
NETWORK Вспомогательный GPS, идентификатор вышки сотовой связи или точка доступа WiFi.
PASSIVE Идентификатор вышки сотовой связи или точки доступа WiFi.
ROAD_SNAPPED_LOCATION_PROVIDER Местоположение, определенное мобильным устройством как наиболее вероятное положение на дороге.
CUSTOMER_SUPPLIED_LOCATION Местоположение, предоставленное клиентом из независимого источника. Как правило, это значение используется для местоположения, полученного из источников, отличных от мобильного устройства, на котором установлен Driver SDK. Если исходный источник описан одним из других значений перечисления, используйте это значение. Местоположение с пометкой CUSTOMER_SUPPLIED_LOCATION обычно предоставляется через датчик last_location.supplemental_location_sensor объекта DeliveryVehicle.
FLEET_ENGINE_LOCATION Местоположение, рассчитанное Fleet Engine на основе доступных ему сигналов. Только вывод. Это значение будет отклонено, если оно получено в запросе.
FUSED_LOCATION_PROVIDER Поставщик объединённых данных о местоположении Android.
CORE_LOCATION Поставщик данных о местоположении в операционных системах Apple.

ДоставкаТранспортНавигацияСтатус

Состояние навигации транспортного средства.

Перечисления
UNKNOWN_NAVIGATION_STATUS Неуказанный статус навигации.
NO_GUIDANCE Навигация в приложении Driver находится в режиме FREE_NAV .
ENROUTE_TO_DESTINATION Пошаговая навигация доступна, и навигационное приложение для водителей перешло в режим GUIDED_NAV .
OFF_ROUTE Транспортное средство отклонилось от предложенного маршрута.
ARRIVED_AT_DESTINATION Транспортное средство находится примерно в 50 м от пункта назначения.

GetDeliveryVehicleRequest

Сообщение-запрос GetDeliveryVehicle .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Обязательно. Должен быть в формате providers/{provider}/deliveryVehicles/{delivery_vehicle} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

GetTaskRequest

Сообщение-запрос GetTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Обязательно. Должен быть в формате providers/{provider}/tasks/{task} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

GetTaskTrackingInfoRequest

Сообщение-запрос GetTaskTrackingInfoRequest .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Обязательно. Должен быть в формате providers/{provider}/taskTrackingInfo/{tracking_id} . В provider должен быть указан идентификатор проекта Google Cloud, а в tracking_id — идентификатор отслеживания, связанный с задачей. Пример имени: providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id .

СписокДоставокТранспортныхСредствЗапрос

Сообщение-запрос ListDeliveryVehicles .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Обязательно. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

page_size

int32

Необязательно. Максимальное количество возвращаемых транспортных средств. Сервис может возвращать меньшее количество. Если вы не укажете это количество, сервер сам определит количество возвращаемых результатов.

page_token

string

Необязательно. Токен страницы, полученный в результате предыдущего вызова ListDeliveryVehicles . Необходимо предоставить его для получения следующей страницы.

При пагинации все остальные параметры, предоставленные ListDeliveryVehicles должны соответствовать вызову, который предоставил токен страницы.

filter

string

Необязательный. Фильтрующий запрос, применяемый при выводе списка транспортных средств доставки. Примеры синтаксиса фильтра см. на странице http://aip.dev/160 . Если значение не указано или задана пустая строка для фильтра, будут возвращены все транспортные средства доставки.

Обратите внимание, что для ListDeliveryVehicles поддерживаются только запросы по атрибутам транспортных средств (например, attributes.<key> = <value> или attributes.<key1> = <value1> AND attributes.<key2> = <value2> ). Кроме того, все атрибуты хранятся в виде строк, поэтому поддерживаются только сравнения с атрибутами. Для сравнения с числовыми или логическими значениями значения должны быть явно заключены в кавычки, чтобы они обрабатывались как строки (например, attributes.<key> = "10" или attributes.<key> = "true" ).

Максимальное количество ограничений, разрешенных в запросе фильтра, составляет 50. Ограничение является частью запроса формы attribute.<KEY> <COMPARATOR> <VALUE> , например, attributes.foo = bar — это 1 ограничение.

viewport

Viewport

Необязательный. Фильтр, ограничивающий возвращаемые транспортные средства теми, чьё последнее известное местоположение находилось в прямоугольной области, определяемой областью просмотра.

СписокДоставокТранспортныхСредствОтвет

Ответное сообщение ListDeliveryVehicles .

Поля
delivery_vehicles[]

DeliveryVehicle

Набор транспортных средств доставки, соответствующих запрошенным критериям фильтрации. Если фильтр не указан, запрос возвращает все транспортные средства доставки. Успешный ответ также может быть пустым. Пустой ответ означает, что не найдено ни одного транспортного средства доставки, соответствующего запрошенным критериям фильтрации.

next_page_token

string

Вы можете передать этот токен в запросе ListDeliveryVehiclesRequest , чтобы продолжить вывод списка результатов. После возврата всех результатов это поле не будет отображаться в ответе или будет содержать пустую строку.

total_size

int64

Общее количество транспортных средств доставки, соответствующих критериям запроса, на всех страницах.

ListTasksRequest

Сообщение-запрос ListTasks .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Обязательно. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

page_size

int32

Необязательно. Максимальное количество возвращаемых задач. Сервис может возвращать меньше этого значения. Если это значение не указано, сервер сам определяет количество возвращаемых результатов.

page_token

string

Необязательно. Токен страницы, полученный из предыдущего вызова ListTasks . Вы можете предоставить его для получения следующей страницы.

При разбиении на страницы все остальные параметры, предоставленные ListTasks должны соответствовать вызову, который предоставил токен страницы.

filter

string

Необязательный. Фильтрующий запрос, применяемый при выводе списка задач. Примеры синтаксиса фильтра см. на странице http://aip.dev/160 . Если значение не указано или фильтрация выполняется по пустой строке, будут возвращены все задачи. Сведения о свойствах задач, по которым можно фильтровать, см. в разделе Список задач .

СписокЗадачОтвет

Ответ ListTasks , содержащий набор задач, соответствующих критериям фильтра в ListTasksRequest .

Поля
tasks[]

Task

Набор задач, соответствующих запрошенным критериям фильтрации. Если фильтр не указан, запрос возвращает все задачи. Успешный ответ также может быть пустым. Пустой ответ означает, что не найдено ни одной задачи, соответствующей запрошенным критериям фильтрации.

next_page_token

string

Передайте этот токен в запросе ListTasksRequest , чтобы продолжить вывод списка результатов. Если возвращены все результаты, это поле либо пустое, либо отсутствует в ответе.

total_size

int64

Общее количество задач, соответствующих критериям запроса, на всех страницах.

Информация о местоположении

Местоположение с любыми дополнительными идентификаторами.

Поля
point

LatLng

Координаты местоположения. В качестве входных данных необходимо указать либо point , либо place . Если указаны оба, для маршрутизации будет использоваться point , а для метаданных — place . Если в качестве входных данных указано только place , point будет рассчитана на основе place и включена в выходные данные.

place

string

Имя ресурса места, представляющего это местоположение. Формат: places/{place_id} . В качестве входных данных необходимо указать либо point , либо place . Если указаны оба, point будет использоваться для маршрутизации, а place — для метаданных. place включается в выходные данные только в том случае, если оно было включено во входные данные, то есть поиск place по LatLng не выполняется.

Это экспериментальная функция.

point_location_source

PointSource

Только вывод. Источник поля широты и долготы point . Это часть экспериментальной функции.

PointSource

Указывает источник LatLng .

Перечисления
POINT_SOURCE_UNSPECIFIED Источник не указан.
POINT_SOURCE_DEVELOPER_PROVIDED LatLng были явно предоставлены разработчиком.
POINT_SOURCE_CALCULATED_FROM_PLACE LatLng были рассчитаны на основе указанного места.

Задача

Задача в API доставки представляет собой одно отслеживаемое действие. В целом, существует различие между задачами, связанными с доставкой, и задачами, связанными с доставкой. С одной доставкой может быть связано несколько задач. Например, одна задача может быть связана с забором, а другая — с выгрузкой или передачей. Кроме того, разные задачи для одной и той же отправки могут выполняться разными транспортными средствами. Например, одно транспортное средство может забирать груз, доставляя его в транспортный узел, а другое — перевозить тот же груз из транспортного узла в пункт выгрузки.

Примечание: в gRPC и REST API используются разные соглашения об именовании полей. Например, поле Task.journey_sharing_info в gRPC API и поле Task.journeySharingInfo в REST API относятся к одному и тому же полю.

Поля
name

string

Должен быть в формате providers/{provider}/tasks/{task} .

type

Type

Обязательное. Неизменяемое. Определяет тип задачи. Например, перерыв или отгрузка.

state

State

Обязательно. Текущее состояние выполнения задачи.

task_outcome

TaskOutcome

Результат Задачи.

task_outcome_time

Timestamp

Метка времени, указывающая, когда результат Task был установлен поставщиком.

task_outcome_location

LocationInfo

Местоположение, в котором был задан результат выполнения Task . Это значение обновляется в рамках UpdateTask . Если поставщик явно не обновляет это значение, Fleet Engine по умолчанию заполняет его последним известным местоположением транспортного средства ( исходным местоположением).

task_outcome_location_source

TaskOutcomeLocationSource

Указывает, откуда взялось значение task_outcome_location .

tracking_id

string

Неизменяемое. Это поле упрощает хранение идентификатора, позволяя избежать сложного сопоставления. tracking_id нельзя задать для задач типа UNAVAILABLE и SCHEDULED_STOP . На эти идентификаторы распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Длина пароля ограничена 64 символами.
  • Нормализовано в соответствии с формой нормализации Unicode C.
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
delivery_vehicle_id

string

Только вывод. Идентификатор транспортного средства, выполняющего эту задачу. На идентификаторы транспортных средств доставки распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Длина пароля ограничена 64 символами.
  • Нормализовано в соответствии с формой нормализации Unicode C.
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
planned_location

LocationInfo

Неизменяемый. Место, где будет выполнена задача. Необязательно для UNAVAILABLE задач, но обязательно для всех остальных задач.

task_duration

Duration

Обязательно. Неизменяемо. Время, необходимое для выполнения задачи в этом месте.

target_time_window

TimeWindow

Временной интервал, в течение которого задача должна быть выполнена.

journey_sharing_info

JourneySharingInfo

Только вывод. Поля, специфичные для совместного использования поездок. Не заполняются, если состояние — CLOSED .

task_tracking_view_config

TaskTrackingViewConfig

Конфигурация отслеживания задач, которая определяет, какие элементы данных видны конечным пользователям и при каких обстоятельствах.

attributes[]

TaskAttribute

Список пользовательских атрибутов задачи. Каждый атрибут должен иметь уникальный ключ.

JourneySharingInfo

Совместное путешествие по конкретным областям.

Поля
remaining_vehicle_journey_segments[]

VehicleJourneySegment

Информация об остановках, которые назначенное транспортное средство совершит до завершения этой задачи. Обратите внимание, что этот список может содержать остановки, связанные с другими задачами.

Первый сегмент, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), содержит информацию о маршруте от последнего известного местоположения водителя до предстоящей остановки VehicleStop . Информация о текущем маршруте обычно поступает из приложения водителя, за исключением некоторых случаев, описанных в документации к DeliveryVehicle.current_route_segment . Остальные сегменты в Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments (REST) ​​заполняются Fleet Engine. Они предоставляют информацию о маршруте между оставшимися VehicleStops .

last_location

DeliveryVehicleLocation

Указывает последнее сообщенное местонахождение назначенного транспортного средства.

last_location_snappable

bool

Указывает, можно ли привязать lastLocation транспортного средства к current_route_segment . Значение False равно False, если last_location или current_route_segment не существуют. Это значение вычисляется Fleet Engine. Обновления от клиентов игнорируются.

Состояние

Состояние задачи. Отображает ход её выполнения.

Перечисления
STATE_UNSPECIFIED По умолчанию. Используется для неопределённого или нераспознанного состояния задачи.
OPEN Либо задача еще не назначена транспортному средству доставки, либо транспортное средство доставки еще не проехало назначенную Task остановку транспортного средства.
CLOSED При проезде транспортного средства остановитесь для выполнения этого задания.

TaskOutcome

Результат попытки выполнить задачу. Когда TaskState закрывается, TaskOutcome указывает, была ли задача выполнена успешно.

Перечисления
TASK_OUTCOME_UNSPECIFIED Результат задачи до установки его значения.
SUCCEEDED Задача выполнена успешно.
FAILED Задание либо не удалось выполнить, либо оно было отменено.

TaskOutcomeLocationSource

Идентификатор источника, заполнившего task_outcome_location .

Перечисления
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Результат задачи до ее постановки.
PROVIDER Поставщик указал task_outcome_location .
LAST_VEHICLE_LOCATION Поставщик не указал task_outcome_location , поэтому Fleet Engine использовал последнее известное местоположение транспортного средства.

Тип

Тип задачи.

Перечисления
TYPE_UNSPECIFIED По умолчанию тип задачи неизвестен.
PICKUP Задача забора груза — это действие, выполняемое для забора груза у клиента. Для забора груза со склада или из подъездного транспорта следует использовать тип SCHEDULED_STOP .
DELIVERY Задача доставки — это действие, выполняемое для доставки груза конечному потребителю. Для доставки на склад или в подъездной путь следует использовать тип SCHEDULED_STOP .
SCHEDULED_STOP Запланированная задача по остановке используется для планирования. Например, она может представлять собой забор или выгрузку грузов с транспортных средств или складов. Её не следует использовать для грузов, которые забираются или выгружаются у конечного потребителя.
UNAVAILABLE Задача, которая означает, что транспортное средство недоступно для обслуживания. Например, это может произойти, когда водитель делает перерыв или когда транспортное средство заправляется.

Атрибут задачи

Описывает атрибут задачи как пару «ключ-значение». Длина строки «ключ:значение» не может превышать 256 символов.

Поля
key

string

Ключ атрибута. Ключи не могут содержать символ двоеточия (:).

Поле объединения task_attribute_value . Значение атрибута может быть строковым, логическим или типом double. Если ничего не задано, строковое значение атрибута TaskAttribute будет сохранено как пустая строка "". task_attribute_value может быть только одним из следующих:
string_value

string

Значение атрибута, типизированное как строка.

bool_value

bool

Значение атрибута логического типа.

number_value

double

Значение атрибута двойного типа.

TaskTrackingInfo

Сообщение TaskTrackingInfo . Сообщение содержит информацию об отслеживании задач, которая будет использоваться для отображения. Если идентификатор отслеживания связан с несколькими задачами, Fleet Engine использует эвристический алгоритм для определения, какой именно TaskTrackingInfo задачи выбрать.

Поля
name

string

Должен иметь формат providers/{provider}/taskTrackingInfo/{tracking} , где tracking представляет собой идентификатор отслеживания.

tracking_id

string

Неизменяемый. Идентификатор отслеживания задачи. * Должен быть допустимой строкой Unicode. * Ограничен максимальной длиной 64 символа. * Нормализован в соответствии с формой нормализации Unicode C. * Не может содержать следующие символы ASCII: «/», «:», «?», «,» или «#».

vehicle_location

DeliveryVehicleLocation

Последнее местонахождение транспортного средства.

route_polyline_points[]

LatLng

Список точек, которые при соединении образуют полилинию предполагаемого маршрута транспортного средства к месту выполнения данной задачи.

remaining_stop_count

Int32Value

Указывает количество оставшихся остановок транспортного средства до остановки, включая саму остановку. Например, если следующая остановка — остановка, значение будет равно 1.

remaining_driving_distance_meters

Int32Value

Общее оставшееся расстояние в метрах до интересующей VehicleStop .

estimated_arrival_time

Timestamp

Метка времени, указывающая расчетное время прибытия к месту остановки.

estimated_task_completion_time

Timestamp

Метка времени, указывающая предполагаемое время завершения задачи.

state

State

Текущее состояние выполнения задачи.

task_outcome

TaskOutcome

Результат попытки выполнить Задачу.

task_outcome_time

Timestamp

Метка времени, указывающая, когда поставщик установил результат задачи.

planned_location

LocationInfo

Неизменяемый. Место, где будет выполнена задача.

target_time_window

TimeWindow

Временной интервал, в течение которого задача должна быть выполнена.

attributes[]

TaskAttribute

Пользовательские атрибуты, заданные для задачи.

TaskTrackingViewConfig

Сообщение конфигурации, которое определяет, когда элемент данных задачи должен быть виден конечным пользователям.

Поля
route_polyline_points_visibility

VisibilityOption

Поле, определяющее, когда точки полилинии маршрута могут быть видимы. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

estimated_arrival_time_visibility

VisibilityOption

Поле, указывающее, когда предполагаемое время прибытия может быть отображено. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

estimated_task_completion_time_visibility

VisibilityOption

Поле, которое указывает, когда оценивается время выполнения задачи, может быть видно. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

remaining_driving_distance_visibility

VisibilityOption

Поле, которое указывает при оставшемся расстоянии вождения, может быть видно. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

remaining_stop_count_visibility

VisibilityOption

Поле, которое указывает при оставшемся счете, можно увидеть. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

vehicle_location_visibility

VisibilityOption

Поле, которое указывает, когда можно увидеть местоположение автомобиля. Если это поле не указано, будет использоваться конфигурация видимости по умолчанию на уровне проекта для этих данных.

Видимость

Опционное сообщение, которое определяет, когда элемент данных должен быть виден для конечных пользователей.

Поля
Поле visibility_option . Выбран конкретный параметр видимости. visibility_option может быть только одним из следующих:
remaining_stop_count_threshold

int32

Этот элемент данных виден конечным пользователям, если оставшиеся стоп -отсчет <= Оставленный_STOP_COUNT_THRESHOLD.

duration_until_estimated_arrival_time_threshold

Duration

Этот элемент данных виден конечным пользователям, если ETA к остановке <= duration_until_estimated_arrival_time_threshold.

remaining_driving_distance_meters_threshold

int32

Этот элемент данных виден для конечных пользователей, если оставшееся расстояние вождения в метрах <= Оставленный_DRIVIVE_DISTANCE_METERS_THRESHOLD.

always

bool

Если установить на True, этот элемент данных всегда видна конечным пользователям без пороговых значений. Это поле не может быть установлено на ложь.

never

bool

Если установить True, этот элемент данных всегда скрыт от конечных пользователей без порогов. Это поле не может быть установлено на ложь.

TimeWindow

Диапазон времени.

Поля
start_time

Timestamp

Требуется Время начала временного окна (включительно).

end_time

Timestamp

Требуется Время окончания временного окна (включительно).

UpdatedEliveryVehicleQuest

Сообщение запроса UpdateDeliveryVehicle .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

delivery_vehicle

DeliveryVehicle

Требуется ОБНОВЛЕНИЕ ПРЕИМУЩЕСТВО DeliveryVehicle ПРИМЕНЕНИЯ. Примечание. Вы не можете обновить имя DeliveryVehicle .

update_mask

FieldMask

Требуется Полевая маска, которая указывает, какие поля DeliveryVehicle для обновления. Обратите внимание, что Update_mask должен содержать хотя бы одно поле.

Это разделенный запятой список полностью квалифицированных имен полей. Пример: "remaining_vehicle_journey_segments"

UpdateTaskRequest

Сообщение запроса UpdateTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

task

Task

Требуется Задача, связанная с обновлением. Следующие поля поддерживаются флотом двигателем. Не обновляйте их, используя Task.update .

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

Примечание. Вы не можете изменить значение task_outcome , как только вы его установите.

Если задача была назначена транспортному средству, не устанавливайте состояние задачи, чтобы закрыться с помощью Task.update . Вместо этого удалите VehicleStop , которое содержит задачу из транспортного средства, который автоматически устанавливает состояние задачи в закрытие.

update_mask

FieldMask

Требуется Полевая маска, которая указывает, какие поля задачи обновлять. Примечание. update_mask должен содержать хотя бы одно поле.

Это разделенный запятой список полностью квалифицированных имен полей. Пример: "task_outcome,task_outcome_time,task_outcome_location" .

ATHANGJOURNEYSEGMEG

Представляет собой сегмент движения транспортного средства - от предыдущей остановки до текущей остановки. Если это первая активная остановка, то это от текущего местоположения автомобиля до этой остановки.

Поля
stop

VehicleStop

Указывает место остановки, а также Task , связанные с остановкой. Некоторые поля автомобиля может не присутствовать, если этот сегмент путешествия является частью JourneySharingInfo .

driving_distance_meters

Int32Value

Только вывод. Расстояние прохождения от предыдущей остановки к этой остановке. Если текущая остановка является первой остановкой в списке сегментов путешествий, то отправной точкой является местоположение автомобиля, записанное в то время, когда эта остановка была добавлена в список. Это поле может не присутствовать, если этот сегмент путешествия является частью JourneySharingInfo .

driving_duration

Duration

Только вывод. Время в пути от предыдущей остановки до этой остановки. Если текущая остановка является первой остановкой в списке сегментов путешествий, то отправной точкой является местоположение автомобиля, записанное в то время, когда эта остановка была добавлена в список.

Если это поле определено в The Path Task.remaining_vehicle_journey_segments[0].driving_duration (grpc) или Task.remainingVehicleJourneySegments[0].drivingDuration . Это обеспечивает оставшуюся продолжительность вождения от последнего известного местоположения DeliveryVehicle.remaining_duration Драйвера, а не время вождения с DeliveryVehicle.remainingDuration остановки.

path[]

LatLng

Только вывод. Путь от предыдущей остановки к этой остановке. Если текущая остановка является первой остановкой в списке сегментов путешествий, то это путь от текущего местоположения транспортного средства до этой остановки, когда остановка была добавлена в список. Это поле может не присутствовать, если этот сегмент путешествия является частью JourneySharingInfo .

Если это поле определено в The Path Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (grpc) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (grpc) или DeliveryVehicle.currentRouteSegment (REST). Это обеспечивает путь въезда от LatLng известного местоположения DeliveryVehicle.current_route_segment Драйвера, а не пути от предыдущей остановки.

Efacelestop

Описывает точку, когда транспортное средство останавливается, чтобы выполнить одну или несколько Task .

Поля
planned_location

LocationInfo

Требуется Расположение остановки. Обратите внимание, что места в Task могут точно соответствовать этому местоположению, но будут находиться на небольшом расстоянии от него. Это поле не будет заполнено в ответ на вызов GetTask .

tasks[]

TaskInfo

Список Task , которые будут выполнены на этой остановке. Это поле не будет заполнено в ответ на вызов GetTask .

state

State

Состояние VehicleStop . Это поле не будет заполнено в ответ на вызов GetTask .

Состояние

Текущее состояние VehicleStop .

Перечисления
STATE_UNSPECIFIED Неизвестный.
NEW Создано, но не активно маршрутизировать.
ENROUTE Назначен и активно маршрутизация.
ARRIVED Прибыл на остановку. Предполагается, что когда транспортное средство направляется на следующую остановку, все предыдущие остановки были завершены.

TaskInfo

Дополнительная информация о задаче, выполненной на этой остановке.

Поля
task_id

string

Идентификатор задачи. Это поле не будет заполнено в ответ на вызов GetTask . Идентификаторы задачи подлежат следующим ограничениям:

  • Должен быть допустимая строка Unicode.
  • Ограничен максимальной длиной 64 символов.
  • Нормализовано в соответствии с формой нормализации Unicode c .
  • Не может содержать ни одного из следующих символов ASCII: '/', ':', '?', ',' Или '#'.
task_duration

Duration

Только вывод. Время, необходимое для выполнения задачи.

target_time_window

TimeWindow

Только вывод. Временное окно, в течение которого задача должна быть выполнена. Это установлено только в ответе на GetDeliveryVehicle .