REST Resource: providers.tasks

Kaynak: Görev

Delivery API'deki bir Görev, izlenecek tek bir işlemi temsil eder. Genel olarak, sevkiyatla ilgili Görevler ile aradaki görevler arasında bir fark vardır. Bir gönderiyle ilişkili birden fazla görev olabilir. Örneğin, teslim alma için bir Görev ve teslim etme ya da aktarma için başka bir Görev olabilir. Ayrıca, belirli bir gönderi için farklı görevler farklı araçlar tarafından gerçekleştirilebilir. Örneğin, bir araç teslimi alarak kargoyu merkeze yönlendirirken başka bir araç aynı gönderiyi merkezden teslim noktasına doğru götürebilir.

Not: gRPC ve REST API'lerinde farklı alan adlandırma kuralları kullanılır. Örneğin, gRPC API'sindeki Task.journey_sharing_info alanı ile REST API'deki Task.journeySharingInfo alanı aynı alana işaret eder.

JSON gösterimi
{
  "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)
    }
  ]
}
Alanlar
name

string

providers/{provider}/tasks/{task} biçiminde olmalıdır.

type

enum (Type)

Zorunlu. Sabit. Görevin türünü tanımlar. Örneğin, ara veya kargo.

state

enum (State)

Zorunlu. Görevin mevcut yürütme durumu.

taskOutcome

enum (TaskOutcome)

Görevin sonucu.

taskOutcomeTime

string (Timestamp format)

Task sonucunun sağlayıcı tarafından ne zaman ayarlandığını gösteren zaman damgası.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

Task sonucunun ayarlandığı konum. Bu değer, tasks.patch kapsamında güncellenir. Bu değer, sağlayıcı tarafından açıkça güncellenmezse Fleet Engine, varsayılan olarak değeri bilinen son araç konumuyla (ham konum) doldurur.

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

taskOutcomeLocation değerinin nereden geldiğini gösterir.

trackingId

string

Sabit. Bu alan, karmaşık bir eşleme kullanmaktan kaçınmanızı sağlayacak bir kimliğin depolanmasını kolaylaştırır. UNAVAILABLE ve SCHEDULED_STOP türündeki Görevler için trackingId değerini ayarlayamazsınız. Bu kimlikler aşağıdaki kısıtlamalara tabidir:

  • Geçerli bir Unicode dizesi olmalıdır.
  • Maksimum 64 karakterle sınırlıdır.
  • Unicode Normalleştirme Formu C'ye göre normalleştirilmiştir.
  • Şu ASCII karakterlerden hiçbirini içeremez: '/', ':', '?', ',' veya '#'.
deliveryVehicleId

string

Yalnızca çıkış. Bu görevi yürüten aracın kimliği. Teslimat Aracı Kimlikleri aşağıdaki kısıtlamalara tabidir:

  • Geçerli bir Unicode dizesi olmalıdır.
  • Maksimum 64 karakterle sınırlıdır.
  • Unicode Normalleştirme Formu C'ye göre normalleştirilmiştir.
  • Şu ASCII karakterlerden hiçbirini içeremez: '/', ':', '?', ',' veya '#'.
plannedLocation

object (LocationInfo)

Sabit. Görevin tamamlanacağı konum. UNAVAILABLE Görevler için isteğe bağlıdır ancak diğer tüm Görevler için gereklidir.

taskDuration

string (Duration format)

Zorunlu. Sabit. Bu konumda bir Görevi yürütmek için gereken süre.

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

targetTimeWindow

object (TimeWindow)

Görevin tamamlanması gereken zaman aralığı.

journeySharingInfo

object (JourneySharingInfo)

Yalnızca çıkış. Yolculuk paylaşımına özel alanlar. Eyalet CLOSED olduğunda doldurulmaz.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

Hangi veri öğelerinin hangi durumlarda son kullanıcılar tarafından görülebileceğini belirten görev izleme yapılandırması.

attributes[]

object (TaskAttribute)

Özel Görev özelliklerinin listesi. Her özelliğin benzersiz bir anahtarı olmalıdır.

Tür

Görevin türü.

Sıralamalar
TYPE_UNSPECIFIED Varsayılan olarak Görev türü bilinmiyor.
PICKUP Teslim alma görevi, bir müşteriden gönderi teslim almak için gerçekleştirilen işlemdir. Depo veya besleyici araç teslim alma işlemlerinde SCHEDULED_STOP türü kullanılmalıdır.
DELIVERY Teslimat görevi, bir gönderimi son müşteriye teslim etmek için gerçekleştirilen işlemdir. Depo veya besleyici araç bırakma değerleri SCHEDULED_STOP türünü kullanmalıdır.
SCHEDULED_STOP Planlanmış bir durdurma görevi, planlama amacıyla kullanılır. Örneğin, besleyici araçlarından veya depolarından gönderilerin alınmasını ya da bırakılmasını gösterebilir. Son müşteriden alınan veya son müşteriden bırakılan gönderiler için kullanılmamalıdır.
UNAVAILABLE Aracın servis için kullanılamadığını ifade eden bir görev. Örneğin, sürücü mola verdiğinde veya araç yakıt verildiğinde bu durum gerçekleşebilir.

TaskOutcomeLocationSource

taskOutcomeLocation öğesini dolduran kaynağın kimliği.

Sıralamalar
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Görevin sonucu belirlenmeden önce.
PROVIDER Sağlayıcı, taskOutcomeLocation adını belirtti.
LAST_VEHICLE_LOCATION taskOutcomeLocation, sağlayıcı belirtmediğinden Fleet Engine bilinen son araç konumunu kullandı.

JourneySharingInfo

Belirli alanları paylaşma yolculuğu.

JSON gösterimi
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
Alanlar
remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

Atanan aracın bu görevi tamamlamadan önce yapacağı duraklar hakkında takip bilgileri. Bu listenin diğer görevlere ait duraklar içerebileceğini unutmayın.

İlk segment, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) veya Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), sürücünün bilinen son konumundan sonraki VehicleStop konumuna kadar rota bilgilerini içeriyor. DeliveryVehicle.current_route_segment belgelerinde belirtilen bazı durumlar dışında, mevcut rota bilgileri genellikle sürücü uygulamasından alınır. Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) veya Task.journeySharingInfo.remainingVehicleJourneySegments (REST) içindeki diğer segmentler Fleet Engine tarafından doldurulur. Bunlar, kalan VehicleStops arasındaki rota bilgilerini sağlar.

lastLocation

object (DeliveryVehicleLocation)

Aracın atanan araçla ilgili en son bildirilen konumunu belirtir.

lastLocationSnappable

boolean

Aracın son konumunun currentRouteSegment cihazına tutturulup tutulmayacağını gösterir. lastLocation veya currentRouteSegment yoksa bu değer Yanlış'tır. Bu değer, Fleet Engine tarafından hesaplanmaktadır. İstemcilerden gelen güncellemeler yoksayılır.

TaskTrackingViewConfig

Bir görevin veri öğesinin son kullanıcılara ne zaman görünür olacağını tanımlayan yapılandırma mesajı.

JSON gösterimi
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
Alanlar
routePolylinePointsVisibility

object (VisibilityOption)

Güzergah çoklu çizgi noktalarının ne zaman görünebileceğini belirten alan. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

estimatedArrivalTimeVisibility

object (VisibilityOption)

Tahmini varış saatinin ne zaman görünebileceğini belirten alan. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

Tahmini görev tamamlanma süresinin ne zaman görüneceğini belirten alan. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

remainingDrivingDistanceVisibility

object (VisibilityOption)

Kalan sürüş mesafesini belirten alan gösterilebilir. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

remainingStopCountVisibility

object (VisibilityOption)

Kalan durak sayısının ne zaman olduğunu belirten alan görünür. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

vehicleLocationVisibility

object (VisibilityOption)

Araç konumunun ne zaman gösterilebileceğini belirten alan. Bu alan belirtilmezse bu veriler için proje düzeyindeki varsayılan görünürlük yapılandırması kullanılır.

VisibilityOption

Bir veri öğesinin son kullanıcılara ne zaman görünür olacağını tanımlayan seçenek mesajı.

JSON gösterimi
{

  // 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.
}
Alanlar
Birleştirme alanı visibility_option. İlgili görünürlük seçeneği belirlendi. visibility_option şunlardan yalnızca biri olabilir:
remainingStopCountThreshold

integer

Kalan durdurma sayısı <= geri kalan StopCountThreshold değerine ayarlanırsa bu veri öğesi son kullanıcılar tarafından görülebilir.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

Bu veri öğesi, durdurulacak şekilde tahmini varış süresi <=durationUntilTahminiArrivalTimeThreshold'a aitse son kullanıcılar tarafından görülebilir.

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

remainingDrivingDistanceMetersThreshold

integer

Bu veri öğesi, metre cinsinden kalan sürüş mesafesi <= geri yüklenme süresi MetersThreshold değerine ayarlanırsa son kullanıcılar tarafından görülebilir.

always

boolean

Politika, Doğru değerine ayarlanırsa bu veri öğesi, eşiği olmayan son kullanıcılar tarafından her zaman görülebilir. Bu alan false olarak ayarlanamaz.

never

boolean

Politika, Doğru değerine ayarlanırsa bu veri öğesi, eşiği olmayan son kullanıcılardan her zaman gizlenir. Bu alan false olarak ayarlanamaz.

Yöntemler

batchCreate

Bir grup yeni Task nesnesi oluşturur ve döndürür.

create

Yeni bir Task nesnesi oluşturur ve döndürür.

get

Task hakkında bilgi alır.

list

Belirtilen filtreleme ölçütlerini karşılayan tüm Task'leri alır.

patch

Task verilerini günceller.