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 SearchTasks( SearchTasksRequest ) returns ( SearchTasksResponse )

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

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

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

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

ПоискЗадачиЗапрос

Устарело: вместо этого выдайте GetTaskTrackingInfoRequest для GetTaskTrackingInfo .

Поля
header

DeliveryRequestHeader

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

parent

string

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

tracking_id

string

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

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

int32

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

page_token

string

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

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

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

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

Поля
tasks[]

Task

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

next_page_token

string

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

Задача

Задача в 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, этот элемент данных всегда скрыт от конечных пользователей без порогов. Это поле не может быть установлено на ложь.

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 Task.remainingVehicleJourneySegments[0].drivingDuration DeliveryVehicle.remaining_duration ) или DeliveryVehicle.remainingDuration (отдых). Это обеспечивает оставшуюся продолжительность вождения от последнего известного местоположения приложения Драйвера, а не время вождения с предыдущей остановки.

path[]

LatLng

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

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

Efacelestop

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

Поля
planned_location

LocationInfo

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

tasks[]

TaskInfo

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

state

State

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

Состояние

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

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

TaskInfo

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

Поля
task_id

string

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

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

Duration

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

target_time_window

TimeWindow

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