REST Resource: providers.tasks

Ressource: Aufgabe

Eine Aufgabe in der Delivery API stellt eine einzelne zu verfolgende Aktion dar. Im Allgemeinen wird zwischen versandbezogenen Aufgaben und Unterbrechungsaufgaben unterschieden. Mit einer Sendung können mehrere Aufgaben verknüpft sein. Es könnte beispielsweise eine Aufgabe für das Abholen und eine für die Abgabe oder den Umstieg geben. Außerdem können verschiedene Aufgaben für eine bestimmte Lieferung von unterschiedlichen Fahrzeugen abgewickelt werden. Zum Beispiel könnte ein Fahrzeug die Abholung übernehmen und die Sendung zum Hub bringen, während ein anderes Fahrzeug dieselbe Sendung vom Hub zum Abholort transportiert.

Hinweis: gRPC und REST APIs verwenden unterschiedliche Namenskonventionen für Felder. Das Feld Task.journey_sharing_info in der gRPC API und das Feld Task.journeySharingInfo in der REST API verweisen beispielsweise auf dasselbe Feld.

JSON-Darstellung
{
  "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)
    }
  ]
}
Felder
name

string

Muss das Format providers/{provider}/tasks/{task} haben.

type

enum (Type)

Erforderlich. Nicht veränderbar. Definiert den Aufgabentyp. Zum Beispiel eine Pause oder ein Versand.

state

enum (State)

Erforderlich. Der aktuelle Ausführungsstatus der Aufgabe.

taskOutcome

enum (TaskOutcome)

Das Ergebnis der Aufgabe.

taskOutcomeTime

string (Timestamp format)

Der Zeitstempel, der angibt, wann das Ergebnis des Task vom Anbieter festgelegt wurde.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

Der Ort, an dem das Ergebnis für Task festgelegt wurde. Dieser Wert wird im Rahmen von tasks.patch aktualisiert. Wenn dieser Wert nicht explizit vom Anbieter aktualisiert wird, gibt Fleet Engine standardmäßig den letzten bekannten Fahrzeugstandort (den rohen Standort) ein.

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

Gibt an, woher der Wert von taskOutcomeLocation stammt.

trackingId

string

Nicht veränderbar. Dieses Feld erleichtert das Speichern einer ID, sodass Sie die Verwendung einer komplizierten Zuordnung vermeiden können. Sie können trackingId nicht für Aufgaben vom Typ UNAVAILABLE und SCHEDULED_STOP festlegen. Diese IDs unterliegen den folgenden Einschränkungen:

  • Muss ein gültiger Unicode-String sein.
  • Sie ist auf maximal 64 Zeichen beschränkt.
  • Nach der Unicode-Normalisierungsform C normalisiert.
  • Darf keines der folgenden ASCII-Zeichen enthalten: '/', ':', '?', , oder '#'.
deliveryVehicleId

string

Nur Ausgabe. Die ID des Fahrzeugs, das diese Aufgabe ausführt. Lieferfahrzeug-IDs unterliegen den folgenden Einschränkungen:

  • Muss ein gültiger Unicode-String sein.
  • Sie ist auf maximal 64 Zeichen beschränkt.
  • Nach der Unicode-Normalisierungsform C normalisiert.
  • Darf keines der folgenden ASCII-Zeichen enthalten: '/', ':', '?', , oder '#'.
plannedLocation

object (LocationInfo)

Nicht veränderbar. Der Ort, an dem die Aufgabe erledigt wird. Optional für UNAVAILABLE-Aufgaben, aber für alle anderen Tasks erforderlich.

taskDuration

string (Duration format)

Erforderlich. Nicht veränderbar. Die Zeit, die zum Ausführen einer Aufgabe an diesem Ort benötigt wird.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

targetTimeWindow

object (TimeWindow)

Das Zeitfenster, in dem die Aufgabe abgeschlossen werden sollte.

journeySharingInfo

object (JourneySharingInfo)

Nur Ausgabe. Spezifische Felder für das Teilen von Reisen. Wird nicht ausgefüllt, wenn der Status CLOSED ist.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

Die Konfiguration für das Aufgaben-Tracking, die angibt, welche Datenelemente unter welchen Umständen für die Endnutzer sichtbar sind.

attributes[]

object (TaskAttribute)

Eine Liste benutzerdefinierter Aufgabenattribute. Jedes Attribut muss einen eindeutigen Schlüssel haben.

Typ

Der Aufgabentyp.

Enums
TYPE_UNSPECIFIED Standardeinstellung. Der Aufgabentyp ist unbekannt.
PICKUP Eine Abholaufgabe ist die Aktion, die bei der Abholung einer Sendung von einem Kunden ausgeführt wird. Für Abholung von Fahrzeugen in Depots oder Feeder sollte der Typ SCHEDULED_STOP verwendet werden.
DELIVERY Eine Lieferaufgabe ist die Aktion, die für die Zustellung einer Sendung an einen Endkunden ausgeführt wird. Bei Abgabestellen für Depots oder Feeder muss der Typ SCHEDULED_STOP verwendet werden.
SCHEDULED_STOP Eine Aufgabe für geplante Stopps wird zu Planungszwecken verwendet. Sie können beispielsweise Lieferungen von Feeder-Fahrzeugen oder -Depots abholen oder abgeben. Er sollte nicht für Sendungen verwendet werden, die von einem Endkunden abgeholt oder abgegeben werden.
UNAVAILABLE Eine Aufgabe, die bedeutet, dass das Fahrzeug nicht verfügbar ist. Das kann zum Beispiel passieren, wenn der Fahrer eine Pause macht oder das Fahrzeug betankt wird.

TaskOutcomeLocationSource

Die Identität der Quelle, die das taskOutcomeLocation ausgefüllt hat.

Enums
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Das Ergebnis der Aufgabe, bevor es festgelegt wird.
PROVIDER Der Anbieter hat die taskOutcomeLocation angegeben.
LAST_VEHICLE_LOCATION taskOutcomeLocation hat vom Anbieter nicht angegeben, sodass Fleet Engine den letzten bekannten Fahrzeugstandort verwendet hat.

JourneySharingInfo

Bestimmte Felder für die gemeinsame Nutzung von Reisen.

JSON-Darstellung
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
Felder
remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

Trackinginformationen für die Haltestellen, die das zugewiesene Fahrzeug vor Abschluss dieser Aufgabe einlegt. Beachten Sie, dass diese Liste Stopps von anderen Aufgaben enthalten kann.

Das erste Segment, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) oder Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), enthält Routeninformationen vom letzten bekannten Standort des Fahrers zum nächsten VehicleStop. Die Informationen zur aktuellen Route stammen normalerweise von der Fahrer-App, mit Ausnahme einiger Fälle, die in der Dokumentation zu DeliveryVehicle.current_route_segment aufgeführt sind. Die anderen Segmente in Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) oder Task.journeySharingInfo.remainingVehicleJourneySegments (REST) werden von Fleet Engine gefüllt. Sie liefern Routeninformationen zwischen den verbleibenden VehicleStops.

lastLocation

object (DeliveryVehicleLocation)

Gibt den letzten gemeldeten Standort des zugewiesenen Fahrzeugs an.

lastLocationSnappable

boolean

Gibt an, ob „lastLocation“ des Fahrzeugs an currentRouteSegment ausgerichtet werden kann. Dieser Wert ist „False“, wenn lastLocation oder currentRouteSegment nicht vorhanden sind. Dieser Wert wird von Fleet Engine berechnet. Aktualisierungen von Clients werden ignoriert.

TaskTrackingViewConfig

Die Konfigurationsnachricht, die definiert, wann ein Datenelement einer Aufgabe für Endnutzer sichtbar sein soll.

JSON-Darstellung
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
Felder
routePolylinePointsVisibility

object (VisibilityOption)

Das Feld, das angibt, wann Polylinienpunkte der Route sichtbar sind. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

estimatedArrivalTimeVisibility

object (VisibilityOption)

Das Feld, das angibt, wann die voraussichtliche Ankunftszeit angezeigt werden kann. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

Das Feld, das angibt, wann die geschätzte Aufgabenerledigungszeit angezeigt werden kann. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

remainingDrivingDistanceVisibility

object (VisibilityOption)

Das Feld, das die verbleibende Fahrstrecke angibt, kann sichtbar sein. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

remainingStopCountVisibility

object (VisibilityOption)

Das Feld, das angibt, wann die Anzahl der verbleibenden Haltestellen sichtbar ist. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

vehicleLocationVisibility

object (VisibilityOption)

Das Feld, das angibt, wann der Fahrzeugstandort sichtbar ist. Wenn dieses Feld nicht angegeben ist, wird die Standardkonfiguration der Sichtbarkeit auf Projektebene für diese Daten verwendet.

VisibilityOption

Die Optionsnachricht, die definiert, wann ein Datenelement für Endnutzer sichtbar sein soll.

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld visibility_option. Die ausgewählte Sichtbarkeitsoption. Für visibility_option ist nur einer der folgenden Werte zulässig:
remainingStopCountThreshold

integer

Dieses Datenelement ist für Endnutzer sichtbar, wenn die Anzahl der verbleibenden Haltestellen <= verbleibendenStopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

Dieses Datenelement ist für Endnutzer sichtbar, wenn die geschätzte Ankunftszeit für die Haltestelle <= durationUntilestimatedArrivalTimeThreshold.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

remainingDrivingDistanceMetersThreshold

integer

Dieses Datenelement ist für Endnutzer sichtbar, wenn die verbleibende Fahrstrecke in Metern <=reDrivingDistanceMetersThreshold ist.

always

boolean

Wenn die Richtlinie auf „true“ gesetzt ist, ist dieses Datenelement für Endnutzer ohne Grenzwerte immer sichtbar. Dieses Feld darf nicht auf „false“ gesetzt werden.

never

boolean

Wenn die Richtlinie auf „true“ gesetzt ist, wird dieses Datenelement für Endnutzer ohne Grenzwerte immer ausgeblendet. Dieses Feld darf nicht auf „false“ gesetzt werden.

Methoden

batchCreate

Erstellt einen Batch neuer Task-Objekte und gibt ihn zurück.

create

Erstellt ein neues Task-Objekt und gibt es zurück.

get

Ruft Informationen zu einem Task ab.

list

Ruft alle Tasks ab, die den angegebenen Filterkriterien entsprechen.

patch

Aktualisiert Task-Daten.