REST Resource: providers.tasks

Ресурс: Задача

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

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

JSON-представление
{
  "name": string,
  "type": enum (Type),
  "state": enum (State),
  "taskOutcome": enum (TaskOutcome),
  "taskOutcomeTime": string,
  "taskOutcomeLocation": {
    object (LocationInfo)
  },
  "taskOutcomeLocationSource": enum (TaskOutcomeLocationSource),
  "trackingId": string,
  "deliveryVehicleId": string,
  "plannedLocation": {
    object (LocationInfo)
  },
  "taskDuration": string,
  "targetTimeWindow": {
    object (TimeWindow)
  },
  "journeySharingInfo": {
    object (JourneySharingInfo)
  },
  "taskTrackingViewConfig": {
    object (TaskTrackingViewConfig)
  },
  "attributes": [
    {
      object (TaskAttribute)
    }
  ]
}
Поля
name

string

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

type

enum ( Type )

Необходимый. Неизменяемый. Определяет тип Задачи. Например, перерыв или пересылка.

state

enum ( State )

Необходимый. Текущее состояние выполнения Задачи.

task Outcome

enum ( TaskOutcome )

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

task Outcome Time

string ( Timestamp format)

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

task Outcome Location

object ( LocationInfo )

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

task Outcome Location Source

enum ( TaskOutcomeLocationSource )

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

tracking Id

string

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

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

string

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

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

object ( LocationInfo )

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

task Duration

string ( Duration format)

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

Продолжительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

target Time Window

object ( TimeWindow )

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

journey Sharing Info

object ( JourneySharingInfo )

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

task Tracking View Config

object ( TaskTrackingViewConfig )

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

attributes[]

object ( TaskAttribute )

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

Тип

Тип задачи.

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

TaskOutcomeLocationSource

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

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

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

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

JSON-представление
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
Поля
remaining Vehicle Journey Segments[]

object ( 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

object ( DeliveryVehicleLocation )

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

last Location Snappable

boolean

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

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

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

JSON-представление
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
Поля
route Polyline Points Visibility

object ( VisibilityOption )

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

estimated Arrival Time Visibility

object ( VisibilityOption )

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

estimated Task Completion Time Visibility

object ( VisibilityOption )

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

remaining Driving Distance Visibility

object ( VisibilityOption )

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

remaining Stop Count Visibility

object ( VisibilityOption )

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

vehicle Location Visibility

object ( VisibilityOption )

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

Вариант видимости

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

JSON-представление
{

  // Union field visibility_option can be only one of the following:
  "remainingStopCountThreshold": integer,
  "durationUntilEstimatedArrivalTimeThreshold": string,
  "remainingDrivingDistanceMetersThreshold": integer,
  "always": boolean,
  "never": boolean
  // End of list of possible types for union field visibility_option.
}
Поля
Поле объединения visibility_option . Выбран конкретный вариант видимости. visibility_option может быть только одним из следующих:
remaining Stop Count Threshold

integer

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

duration Until Estimated Arrival Time Threshold

string ( Duration format)

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

Продолжительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

remaining Driving Distance Meters Threshold

integer

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

always

boolean

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

never

boolean

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

Методы

batch Create

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

create

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

get

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

list

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

patch

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