Package maps.fleetengine.delivery.v1

Индекс

ДоставкаСервис

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

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

rpc BatchCreateTasks( BatchCreateTasksRequest ) returns ( BatchCreateTasksResponse )

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

СоздатьДоставкуТранспортное средство

rpc CreateDeliveryVehicle( CreateDeliveryVehicleRequest ) returns ( DeliveryVehicle )

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

Создать задачу

rpc CreateTask( CreateTaskRequest ) returns ( Task )

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

ПолучитьДоставкаАвтомобиль

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 , если они еще не были назначены.

Обновление задачи

rpc UpdateTask( UpdateTaskRequest ) returns ( Task )

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

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

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

Поля
header

DeliveryRequestHeader

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

parent

string

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

requests[]

CreateTaskRequest

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

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

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

Поля
tasks[]

Task

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

Создание запроса на доставку транспортного средства

Сообщение запроса 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

Необходимый. Сущность Task, которую необходимо создать. При создании Задачи обязательны следующие поля:

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

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

Заголовок запроса на доставку

RequestHeader содержит поля, общие для всех запросов 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

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

trace_ id

string

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

Платформа

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

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

Тип Сдк

Возможные типы 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 в REST API относятся к одному и тому же полю.

Поля
name

string

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

last_ location

DeliveryVehicleLocation

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

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 . Значение атрибута может иметь строковый, логический или двойной тип. delivery_vehicle_attribute_value может быть только одним из следующих:
string_ value

string

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

Примечание. Это идентично полю value , которое со временем станет устаревшим. Для методов создания или обновления можно использовать любое поле, но настоятельно рекомендуется использовать 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 как радиуса в метрах.

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 или вспомогательный GPS.
NETWORK Вспомогательный GPS, идентификатор вышки сотовой связи или точка доступа Wi-Fi.
PASSIVE Идентификатор сотовой вышки или точки доступа Wi-Fi.
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 Поставщик Fused Location для Android.
CORE_LOCATION Поставщик местоположения в операционных системах Apple.

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

Статус навигации автомобиля.

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

ПолучитьЗапрос на доставку транспортного средства

Сообщение запроса 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

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

Список задачЗапрос

Сообщение запроса 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 для примеров синтаксиса фильтров. Если вы не укажете значение или отфильтруете пустую строку, будут возвращены все задачи. Информацию о свойствах задачи, по которым можно фильтровать, см. в разделе Список задач .

ListTasksResponse

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

Поля
tasks[]

Task

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

next_ page_ token

string

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

total_ size

int64

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

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

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

Поля
point

LatLng

Координаты локации.

Задача

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

Примечание. API-интерфейсы gRPC и REST используют разные соглашения об именах полей. Например, поле Task.journey_sharing_info в API gRPC и поле 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

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

ПутешествиеОбменИнформация

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

Поля
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, если 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 Задача, означающая, что Транспортное средство недоступно для обслуживания. Например, это может произойти, когда водитель делает перерыв или когда автомобиль заправляется.

TaskAttribute

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

Поля
key

string

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

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

string

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

bool_ value

bool

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

number_ value

double

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

Тасктрекингинформо

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

Поля
name

string

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

tracking_ id

string

Неизменяемый. Идентификатор отслеживания задачи. * Должна быть допустимой строкой Юникода. * Максимальная длина ограничена 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

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

Тасктрекингвиевконфиг

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

Поля
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

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

duration_ until_ estimated_ arrival_ time_ threshold

Duration

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

remaining_ driving_ distance_ meters_ threshold

int32

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

always

bool

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

never

bool

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

ВремяОкно

Временной диапазон.

Поля
start_ time

Timestamp

Необходимый. Время начала временного окна (включительно).

end_ time

Timestamp

Необходимый. Время окончания временного окна (включительно).

ОбновлениеДоставкаАвтомобильЗапрос

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

Поля
header

DeliveryRequestHeader

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

delivery_ vehicle

DeliveryVehicle

Необходимый. Обновление сущности DeliveryVehicle , которое необходимо применить. Примечание. Вы не можете обновить имя DeliveryVehicle .

update_ mask

FieldMask

Необходимый. Маска поля, указывающая, какие поля DeliveryVehicle обновлять. Обратите внимание, что update_mask должен содержать хотя бы одно поле.

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

Запрос обновления задачи

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

Поля
header

DeliveryRequestHeader

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

task

Task

Необходимый. Задача, связанная с обновлением. Следующие поля поддерживаются Fleet Engine. Не обновляйте их с помощью 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" .

Транспортное средствоПутешествиеСегмент

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

Поля
stop

VehicleStop

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

driving_ distance_ meters

Int32Value

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

driving_ duration

Duration

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

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

path[]

LatLng

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

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

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 .