REST Resource: providers.tasks

Ressource: Task

Une tâche dans l'API Delivery représente une action unique à suivre. En général, il existe une distinction entre les tâches liées à l'expédition et les tâches de rupture. Un envoi peut être associé à 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 pour une livraison donnée peuvent être gérées par différents véhicules. Par exemple, un véhicule peut prendre en charge le retrait, conduisant la livraison au centre, tandis qu'un autre véhicule la même livraison du hub au point de dépôt.

Remarque: Les API gRPC et REST utilisent des conventions d'attribution de noms de champs différentes. 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 rupture ou une livraison.

state

enum (State)

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

taskOutcome

enum (TaskOutcome)

Le résultat de la tâche

taskOutcomeTime

string (Timestamp format)

Code temporel qui indique quand le résultat de l'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 identifiant afin d'éviter d'utiliser un mappage compliqué. Vous ne pouvez pas définir trackingId pour les tâches de type UNAVAILABLE et SCHEDULED_STOP. Ces identifiants sont soumis aux restrictions suivantes:

  • Veuillez saisir une chaîne Unicode valide.
  • Ne doit pas dépasser 64 caractères.
  • Normalisée selon le formulaire C de normalisation Unicode.
  • Ne doit pas contenir les caractères ASCII suivants : "/", ":", "?", "," ou "#".
deliveryVehicleId

string

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

  • Veuillez saisir une chaîne Unicode valide.
  • Ne doit pas dépasser 64 caractères.
  • Normalisée selon le formulaire C de normalisation Unicode.
  • Ne doit pas contenir les 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)

La période pendant laquelle la tâche doit être terminé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 quels éléments de données sont visibles par les utilisateurs finaux et dans quelles circonstances.

attributes[]

object (TaskAttribute)

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

Type

Type de tâche.

Enums
TYPE_UNSPECIFIED Le type de tâche est inconnu par défaut.
PICKUP Une tâche de retrait est l'action effectuée pour récupérer un colis chez un client. Les ramassage des véhicules en dépôt ou en borne 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 de véhicules dans un dépôt ou une ligne de dépôt 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. Vous ne devez pas l'utiliser pour les envois récupérés ou déposés chez un client final.
UNAVAILABLE Tâche indiquant que le véhicule n'est pas disponible pour réparation. Cela peut se produire lorsque le conducteur fait une pause ou lorsque le véhicule est en cours de ravitaillement.

TaskOutcomeLocationSource

Identité de la source qui a renseigné le taskOutcomeLocation.

Enums
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Le 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 pour le partage du parcours.

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

object (VehicleJourneySegment)

Informations de suivi des arrêts effectués par le véhicule attribué avant d'effectuer cette tâche. Notez que cette liste peut contenir des arrêts associés à 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 depuis la dernière position connue du conducteur jusqu'au 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 dans 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 le lastLocation du véhicule peut être ancré au 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 le moment où 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 le temps d'exécution estimé 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 à quel moment la distance de conduite restante 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 indique quand le nombre d'arrêts restants 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 le moment où 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 à = restreintStopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

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

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 de conduite restante en mètres <= todayDrivingDistanceMetersThreshold.

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

S'il est défini 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 renvoie un lot de nouveaux 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 correspondent aux critères de filtrage spécifiés.

patch

Met à jour les données Task.