REST Resource: providers.tasks

Ressource : Task

Dans l'API Delivery, une tâche représente une seule action à suivre. En général, il existe une distinction entre les tâches liées à l'expédition et les tâches de pause. Une expédition peut être associée à plusieurs tâches. Par exemple, il peut y avoir une tâche pour la prise en charge et une pour le dépôt ou la correspondance. De plus, différentes tâches d'un même envoi peuvent être gérées par différents véhicules. Par exemple, un véhicule peut assurer la prise en charge, en transportant l'envoi vers le hub, tandis qu'un autre véhicule transporte le même envoi du hub vers le lieu de dépôt.

Remarque : Les API gRPC et REST utilisent différentes conventions de dénomination des champs. Par exemple, le champ Task.journey_sharing_info de l'API gRPC et le champ Task.journeySharingInfo de l'API REST font référence au même champ.

Représentation 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)
    }
  ]
}
Champs
name

string

Doit se présenter sous la forme providers/{provider}/tasks/{task}.

type

enum (Type)

Obligatoire. Immuable. Définit le type de la tâche. (par exemple, une pause ou une expédition).

state

enum (State)

Obligatoire. État actuel de l'exécution de la tâche.

taskOutcome

enum (TaskOutcome)

Résultat de la tâche.

taskOutcomeTime

string (Timestamp format)

Code temporel indiquant quand le résultat de Task a été défini par le fournisseur.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

Emplacement où le résultat de Task a été défini. Cette valeur est mise à jour dans tasks.patch. Si cette valeur n'est pas explicitement mise à jour par le fournisseur, Fleet Engine la renseigne par défaut avec la dernière position connue du véhicule (la position brute).

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

Indique d'où provient la valeur de taskOutcomeLocation.

trackingId

string

Immuable. Ce champ facilite le stockage d'un ID afin d'éviter d'utiliser une mise en correspondance complexe. Vous ne pouvez pas définir trackingId pour les tâches de type UNAVAILABLE et SCHEDULED_STOP. Ces identifiants sont soumis aux restrictions suivantes :

  • Doit être une chaîne de caractères Unicode valide.
  • Limité à 64 caractères maximum.
  • Normalisé selon la forme de normalisation Unicode C.
  • Ne doit pas contenir l'un des caractères ASCII suivants : '/', ':', '?', ',' ou '#'.
deliveryVehicleId

string

Uniquement en sortie. ID du véhicule qui exécute cette tâche. Les ID de véhicule de livraison sont soumis aux restrictions suivantes :

  • Doit être une chaîne de caractères Unicode valide.
  • Ne doit pas dépasser 64 caractères.
  • Normalisé selon la forme de normalisation Unicode C.
  • Ne doit pas contenir l'un des caractères ASCII suivants : '/', ':', '?', ',' ou '#'.
plannedLocation

object (LocationInfo)

Immuable. Le lieu où la tâche sera effectuée. Facultatif pour UNAVAILABLE Tasks, mais obligatoire pour toutes les autres tâches.

taskDuration

string (Duration format)

Obligatoire. Immuable. Temps nécessaire pour exécuter une tâche à cet emplacement.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

targetTimeWindow

object (TimeWindow)

Période pendant laquelle la tâche doit être effectuée.

journeySharingInfo

object (JourneySharingInfo)

Uniquement en sortie. Champs spécifiques au partage de parcours. Non renseigné lorsque l'état est CLOSED.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

Configuration du suivi des tâches qui spécifie les éléments de données visibles par les utilisateurs finaux et dans quelles circonstances.

attributes[]

object (TaskAttribute)

Liste des attributs de tâche personnalisés. Chaque attribut doit avoir une clé unique.

Type

Type de tâche.

Enums
TYPE_UNSPECIFIED Par défaut, le type de tâche est inconnu.
PICKUP Une tâche de retrait est l'action effectuée pour récupérer un colis chez un client. Les collectes de véhicules de dépôt ou de distribution doivent utiliser le type SCHEDULED_STOP.
DELIVERY Une tâche de livraison est l'action entreprise pour livrer un envoi à un client final. Les dépôts ou les dépôts de véhicules de distribution doivent utiliser le type SCHEDULED_STOP.
SCHEDULED_STOP Une tâche d'arrêt programmé est utilisée à des fins de planification. Par exemple, il peut s'agir de la collecte ou du dépose de colis depuis des véhicules de recharge ou des dépôts. Il ne doit pas être utilisé pour les envois qui sont retirés ou déposés par un client final.
UNAVAILABLE Une tâche indiquant que le véhicule n'est pas disponible pour l'entretien. Cela peut se produire, par exemple, lorsque le conducteur fait une pause ou que le véhicule est en train d'être ravitaillé.

TaskOutcomeLocationSource

Identité de la source qui a renseigné taskOutcomeLocation.

Enums
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Résultat de la tâche avant qu'il ne soit défini.
PROVIDER taskOutcomeLocation spécifié par le fournisseur.
LAST_VEHICLE_LOCATION Le fournisseur n'a pas spécifié le taskOutcomeLocation. Fleet Engine a donc utilisé la dernière position connue du véhicule.

JourneySharingInfo

Champs spécifiques au partage de trajets.

Représentation JSON
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
Champs
remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

Informations de suivi des arrêts que le véhicule attribué effectuera avant d'avoir terminé cette tâche. Notez que cette liste peut contenir des arrêts d'autres tâches.

Le premier segment, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), contient des informations sur l'itinéraire entre le dernier emplacement connu du conducteur et le prochain VehicleStop. Les informations sur l'itinéraire actuel proviennent généralement de l'application du pilote, sauf dans certains cas mentionnés dans la documentation concernant DeliveryVehicle.current_route_segment. Les autres segments de Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments (REST) sont renseignés par Fleet Engine. Elles fournissent des informations sur l'itinéraire entre les VehicleStops restants.

lastLocation

object (DeliveryVehicleLocation)

Indique la dernière position signalée du véhicule attribué.

lastLocationSnappable

boolean

Indique si la dernière position du véhicule peut être alignée sur le currentRouteSegment. Cette valeur est "False" si lastLocation ou currentRouteSegment n'existent pas. Cette valeur est calculée par Fleet Engine. Les mises à jour des clients sont ignorées.

TaskTrackingViewConfig

Message de configuration qui définit quand un élément de données d'une tâche doit être visible par les utilisateurs finaux.

Représentation JSON
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
Champs
routePolylinePointsVisibility

object (VisibilityOption)

Champ qui spécifie quand les points de la polyligne de l'itinéraire peuvent être visibles. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

estimatedArrivalTimeVisibility

object (VisibilityOption)

Champ qui indique quand l'heure d'arrivée estimée peut être visible. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

Champ qui spécifie quand l'heure estimée de la tâche peut être visible. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

remainingDrivingDistanceVisibility

object (VisibilityOption)

Champ qui spécifie quand la distance restante à parcourir en voiture peut être visible. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

remainingStopCountVisibility

object (VisibilityOption)

Champ qui spécifie quand le nombre de stations restantes peut être visible. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

vehicleLocationVisibility

object (VisibilityOption)

Champ qui spécifie quand la position du véhicule peut être visible. Si ce champ n'est pas spécifié, la configuration de visibilité par défaut au niveau du projet pour ces données sera utilisée.

VisibilityOption

Message d'option qui définit quand un élément de données doit être visible par les utilisateurs finaux.

Représentation 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.
}
Champs
Champ d'union visibility_option. Option de visibilité spécifique choisie. visibility_option ne peut être qu'un des éléments suivants :
remainingStopCountThreshold

integer

Cet élément de données est visible par les utilisateurs finaux si le nombre d'arrêts restants est inférieur ou égal à remainingStopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

Cet élément de données est visible par les utilisateurs finaux si l'heure d'arrivée estimée à l'arrêt est inférieure ou égale à la durée jusqu'au seuil d'heure d'arrivée estimée.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

remainingDrivingDistanceMetersThreshold

integer

Cet élément de données est visible par les utilisateurs finaux si la distance restante à parcourir en mètres est inférieure ou égale à remainingDrivingDistanceMetersThreshold.

always

boolean

S'il est défini sur "true", cet élément de données est toujours visible par les utilisateurs finaux sans seuil. Ce champ ne peut pas être défini sur "false".

never

boolean

Si cette valeur est définie sur "true", cet élément de données est toujours masqué pour les utilisateurs finaux, sans seuil. Ce champ ne peut pas être défini sur "false".

Méthodes

batchCreate

Crée et affiche un lot d'objets Task.

create

Crée et affiche un objet Task.

get

Récupère des informations sur un Task.

list

Récupère tous les Task qui répondent aux critères de filtrage spécifiés.

patch

Met à jour les données Task.