REST Resource: providers.tasks

Kaynak: Görev

Delivery API'deki bir görev, izlenecek tek bir işlemi temsil eder. Genel olarak, gönderimle ilgili görevler ile ara verme görevleri arasında bir ayrım vardır. Bir gönderimle ilişkili birden fazla görev olabilir. Örneğin, teslim alma için bir görev ve teslim etme veya aktarma için bir görev olabilir. Ayrıca, belirli bir gönderim için farklı görevler farklı araçlar tarafından ele alınabilir. Örneğin, bir araç kargoyu merkeze götürerek teslim alırken başka bir araç aynı kargoyu merkezden teslimat noktasına götürebilir.

Not: gRPC ve REST API'leri farklı alan adlandırma kuralları kullanır. Örneğin, gRPC API'sindeki Task.journey_sharing_info alanı ile REST API'sindeki Task.journeySharingInfo alanı aynı alanı ifade 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. Değişmez. Görevin türünü tanımlar. Örneğin, ara verme 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ı.

Oluşturulan çıktının her zaman Z normalleştirileceği ve 0, 3, 6 veya 9 kesirli basamak kullanacağı RFC 3339'u kullanır. "Z" dışındaki ofsetler de kabul edilir. Örnekler: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" veya "2014-10-02T15:01:23+05:30".

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 bilinen son araç konumuyla (ham konum) doldurur.

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

taskOutcomeLocation değerinin nereden geldiğini belirtir.

trackingId

string

Değişmez. Bu alan, karmaşık bir eşleme kullanmaktan kaçınabilmeniz için kimliğin depolanmasını kolaylaştırır. UNAVAILABLE ve SCHEDULED_STOP türündeki Görevler için trackingId 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 Biçimi C'ye göre normalleştirilmiştir.
  • Aşağıdaki ASCII karakterlerinden hiçbirini içeremez: '/', ':', '?', ',' veya '#'.
deliveryVehicleId

string

Yalnızca çıkış. Bu görevi yürüten aracın kimliği. Yayınlama 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 Biçimi C'ye göre normalleştirilmiştir.
  • Aşağıdaki ASCII karakterlerinden hiçbirini içeremez: '/', ':', '?', ',' veya '#'.
plannedLocation

object (LocationInfo)

Değişmez. 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. Değişmez. Bu konumda bir Görev'i yürütmek için gereken süre.

En fazla dokuz kesirli basamak içeren 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ış. Yolculuğu paylaşma işlemine özgü alanlar. Durum CLOSED olduğunda doldurulmaz.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

Hangi veri öğelerinin hangi koşullarda son kullanıcılara gösterileceğ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 Alımı gerçekleştirme görevi, bir kargoyu müşteriden almak için yapılan işlemdir. Araç parkı veya besleyici araç alımları için SCHEDULED_STOP türü kullanılmalıdır.
DELIVERY Teslimat görevi, bir gönderimi nihai müşteriye ulaştırmak için gerçekleştirilen işlemdir. Araç parkı veya besleyici araç bırakma noktaları için SCHEDULED_STOP türü kullanılmalıdır.
SCHEDULED_STOP Planlama amacıyla planlanmış durak görevi kullanılır. Örneğin, aktarma araçları veya depolardan kargo alma veya bırakma işlemlerini temsil edebilir. Son müşteriden teslim alınan veya son müşteriye teslim edilen kargolar için kullanılmamalıdır.
UNAVAILABLE Aracın servise hazır olmadığı anlamına gelen bir görev. Örneğin, sürücü ara verdiğinde veya araca yakıt doldurulduğunda bu durumla karşılaşabilirsiniz.

TaskOutcomeLocationSource

taskOutcomeLocation değerini dolduran kaynağın kimliği.

Sıralamalar
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Ayarlanmamış görev sonucu.
PROVIDER Sağlayıcı, taskOutcomeLocation değerini belirtti.
LAST_VEHICLE_LOCATION Sağlayıcı taskOutcomeLocation değerini belirtmediğinden Fleet Engine, bilinen son araç konumunu kullandı.

JourneySharingInfo

Yolculuğu paylaşma ile ilgili belirli alanlar.

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 için takip bilgileri. Bu listenin diğer görevlerdeki durak noktalarını 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'ye kadar olan rota bilgilerini içerir. Mevcut rota bilgileri, DeliveryVehicle.current_route_segment dokümanlarında belirtilen bazı durumlar hariç olmak üzere genellikle sürücü uygulamasından gelir. Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) veya Task.journeySharingInfo.remainingVehicleJourneySegments (REST) içindeki diğer segmentler Fleet Engine tarafından doldurulur. Kalan VehicleStops arasında rota bilgileri sağlar.

lastLocation

object (DeliveryVehicleLocation)

Atanan aracın son bildirilen konumunu gösterir.

lastLocationSnappable

boolean

Aracın lastLocation özelliğinin currentRouteSegment'e bağlanıp bağlanamayacağını belirtir. lastLocation veya currentRouteSegment mevcut değilse bu değer False olur. Bu değer Fleet Engine tarafından hesaplanır. İstemcilerden gelen güncellemeler yok sayılır.

TaskTrackingViewConfig

Bir Görev'in veri öğesinin son kullanıcılara ne zaman gösterileceğini 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)

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

estimatedArrivalTimeVisibility

object (VisibilityOption)

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

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

Görevin tahmini tamamlanma süresinin ne zaman gösterilebileceğini belirten alan. Bu alan belirtilmezse bu veriler için proje düzeyinde varsayılan görünürlük yapılandırması kullanılır.

remainingDrivingDistanceVisibility

object (VisibilityOption)

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

remainingStopCountVisibility

object (VisibilityOption)

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

vehicleLocationVisibility

object (VisibilityOption)

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

VisibilityOption

Bir veri öğesinin son kullanıcılara ne zaman gösterileceğini 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
Birlik alanı visibility_option. Seçilen görünürlük seçeneği. visibility_option yalnızca aşağıdakilerden biri olabilir:
remainingStopCountThreshold

integer

Kalan durak sayısı <= remainingStopCountThreshold ise bu veri öğesi son kullanıcılar tarafından görülebilir.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

Bu veri öğesi, durak için tahmini varış zamanı <= durationUntilEstimatedArrivalTimeThreshold ise son kullanıcılar tarafından görülebilir.

En fazla dokuz kesirli basamak içeren ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

remainingDrivingDistanceMetersThreshold

integer

Kalan sürüş mesafesi (metre cinsinden) <= remainingDrivingDistanceMetersThreshold ise bu veri öğesi son kullanıcılara görünür.

always

boolean

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

never

boolean

Doğru değerine ayarlanırsa bu veri öğesi, eşik olmadan her zaman son kullanıcılardan gizlenir. Bu alan yanlış olarak ayarlanamaz.

Yöntemler

batchCreate

Yeni bir Task nesnesi grubu oluşturup döndürür.

create

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

get

Bir Task hakkında bilgi alır.

list

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

patch

Task verilerini günceller.