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 coupure. Un envoi peut être associé à plusieurs tâches. Par exemple, il peut y avoir une tâche pour la prise en charge et une autre pour le dépôt ou le transfert. De plus, différentes tâches pour un envoi donné peuvent être traitées par différents véhicules. Par exemple, un véhicule peut s'occuper du retrait et conduire le colis jusqu'au hub, tandis qu'un autre véhicule effectue la même expédition du hub jusqu'au lieu de dépose.

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 pause ou une livraison).

state

enum (State)

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

taskOutcome

enum (TaskOutcome)

Le résultat de la tâche.

taskOutcomeTime

string (Timestamp format)

Code temporel indiquant à quel moment le résultat de la Task a été défini par le fournisseur.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres après la virgule. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

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

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

Indique la provenance de la valeur de taskOutcomeLocation.

trackingId

string

Immuable. Ce champ facilite le stockage d'un identifiant, ce qui vous évite d'utiliser un mappage compliqué. Vous ne pouvez pas définir trackingId pour les tâches de type UNAVAILABLE et SCHEDULED_STOP. Ces ID sont soumis aux restrictions suivantes:

  • Vous devez saisir une chaîne Unicode valide.
  • La longueur ne doit pas dépasser 64 caractères.
  • Normalisée conformément au formulaire de normalisation Unicode C.
  • Ne doit contenir aucun 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:

  • Vous devez saisir une chaîne Unicode valide.
  • La longueur ne doit pas dépasser 64 caractères.
  • Normalisée conformément au formulaire de normalisation Unicode C.
  • Ne doit contenir aucun des caractères ASCII suivants: "/", ":", "?", ""," ou "#".
plannedLocation

object (LocationInfo)

Immuable. Emplacement où la tâche sera terminée. Facultatif pour les tâches UNAVAILABLE, 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 un maximum de neuf chiffres après la virgule, se terminant par "s". Exemple: "3.5s".

targetTimeWindow

object (TimeWindow)

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 les éléments de données visibles par les utilisateurs finaux dans quelles circonstances.

attributes[]

object (TaskAttribute)

Liste d'attributs Task 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 entreprise pour récupérer un colis auprès d'un client. Les retraits de véhicules au niveau des dépôts ou des distributeurs doivent utiliser le type SCHEDULED_STOP.
DELIVERY Une tâche de livraison est l'action entreprise pour livrer un envoi à un client final. Le type SCHEDULED_STOP doit être utilisé pour les dépôts ou les décharges de véhicules d'occasion.
SCHEDULED_STOP Une tâche d'arrêt planifiée est utilisée à des fins de planification. Par exemple, il peut représenter la collecte ou le dépôt des envois dans des véhicules d'alimentation ou des dépôts. Il ne doit pas être utilisé pour les colis récupérés ou déposés par un client final.
UNAVAILABLE Tâche qui signifie que le véhicule n'est pas disponible en réparation. Cela peut se produire lorsque le conducteur fait une pause ou lorsqu'il est en train de faire le plein.

TaskOutcomeLocationSource

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

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

JourneySharingInfo

Partagez des champs spécifiques de parcours.

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

object (VehicleJourneySegment)

Informations de suivi concernant les arrêts que le véhicule assigné passera 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 conducteur, sauf dans certains cas indiqués dans la documentation de 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. Ils 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é à currentRouteSegment. Cette valeur est "False" si lastLocation ou currentRouteSegment n'existe pas. Cette valeur est calculée par Fleet Engine. Les mises à jour des clients sont ignorées.

TaskTrackingViewConfig

Message de configuration qui définit à quel moment 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 indiquant dans quel cas 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 spécifiant le moment auquel 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 le moment auquel le temps estimé d'achèvement 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)

Le champ indiquant quand la distance restante 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 spécifiant 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 indiquant dans quels cas 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. L'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 restant est inférieur ou égal à restantStopCountThreshold.

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 à durationEstimationArrivalTimeThreshold.

Durée en secondes avec un maximum de neuf chiffres après la virgule, 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 en voiture en mètres est inférieure ou égale à resterDrivingDistanceMetersThreshold.

always

boolean

Si cette règle est définie 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 règle 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 renvoie un lot de nouveaux objets Task.

create

Crée et renvoie 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.

search
(deprecated)

Obsolète: utilisez plutôt GetTaskTrackingInfo.