REST Resource: providers.tasks

Risorsa: attività

Un'attività nell'API Delivery rappresenta una singola azione da monitorare. In generale, esiste una distinzione tra Tasks relativo alla spedizione e Tasks interrotto. A una spedizione possono essere associate più attività. Ad esempio, potrebbe esserci un'attività per il ritiro e un'altra per la consegna o il trasferimento. Inoltre, veicoli diversi possono gestire attività diverse per una determinata spedizione. Ad esempio, un veicolo potrebbe gestire il ritiro, facendo in modo che il pacco arriva fino all'hub, mentre un altro può guidare la stessa spedizione dall'hub al punto di consegna.

Nota: le API gRPC e REST utilizzano convenzioni di denominazione dei campi diverse. Ad esempio, il campo Task.journey_sharing_info nell'API gRPC e il campo Task.journeySharingInfo nell'API REST fanno riferimento allo stesso campo.

Rappresentazione 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)
    }
  ]
}
Campi
name

string

Deve essere nel formato providers/{provider}/tasks/{task}.

type

enum (Type)

obbligatorio. Immutabile. Definisce il tipo di attività. Ad esempio, una pausa o una spedizione.

state

enum (State)

obbligatorio. Lo stato di esecuzione attuale dell'attività.

taskOutcome

enum (TaskOutcome)

Il risultato dell'attività.

taskOutcomeTime

string (Timestamp format)

Il timestamp che indica quando il risultato di Task è stato impostato dal provider.

Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

La località in cui è stato impostato il risultato di Task. Questo valore viene aggiornato nell'ambito di tasks.patch. Se questo valore non viene aggiornato esplicitamente dal fornitore, Fleet Engine lo completa per impostazione predefinita con l'ultima posizione nota del veicolo (la posizione grezza).

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

Indica da dove proviene il valore di taskOutcomeLocation.

trackingId

string

Immutabile. Questo campo facilita l'archiviazione di un ID per evitare di utilizzare una mappatura complicata. Non puoi impostare trackingId per attività di tipo UNAVAILABLE e SCHEDULED_STOP. Questi ID sono soggetti alle seguenti limitazioni:

  • Deve essere una stringa Unicode valida.
  • Lunghezza massima: 64 caratteri.
  • Normalizzata secondo lo standard Unicode Normalization Form C.
  • Non può contenere nessuno dei seguenti caratteri ASCII: "/", ":", "?", "," o "#".
deliveryVehicleId

string

Solo output. L'ID del veicolo su cui è in corso questa attività. Gli ID veicolo per la consegna sono soggetti alle seguenti limitazioni:

  • Deve essere una stringa Unicode valida.
  • Lunghezza massima: 64 caratteri.
  • Normalizzata secondo lo standard Unicode Normalization Form C.
  • Non può contenere nessuno dei seguenti caratteri ASCII: "/", ":", "?", "," o "#".
plannedLocation

object (LocationInfo)

Immutabile. La posizione in cui verrà completata l'attività. Facoltativo per UNAVAILABLE Tasks, ma obbligatorio per tutte le altre attività.

taskDuration

string (Duration format)

obbligatorio. Immutabile. Il tempo necessario per eseguire un'attività in questa posizione.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

targetTimeWindow

object (TimeWindow)

La finestra temporale durante la quale deve essere completata l'attività.

journeySharingInfo

object (JourneySharingInfo)

Solo output. Campi specifici della condivisione del percorso. Non compilato quando lo stato è CLOSED.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

La configurazione per il monitoraggio delle attività che specifica quali elementi di dati sono visibili agli utenti finali e in quali circostanze.

attributes[]

object (TaskAttribute)

Un elenco di attributi personalizzati delle attività. Ogni attributo deve avere una chiave univoca.

Tipo

Il tipo di attività.

Enum
TYPE_UNSPECIFIED Impostazione predefinita, il tipo di attività è sconosciuto.
PICKUP Un'attività di ritiro è l'azione intrapresa per ritirare una spedizione da un cliente. I ritiri dei veicoli con feeder o deposito devono essere di tipo SCHEDULED_STOP.
DELIVERY Un'attività di consegna è l'azione intrapresa per consegnare una spedizione a un cliente finale. Le riduzioni dei veicoli per il deposito o la stazione di carico devono essere di tipo SCHEDULED_STOP.
SCHEDULED_STOP Un'attività con interruzione pianificata viene utilizzata a scopo di pianificazione. Ad esempio, potrebbe rappresentare il ritiro o la consegna delle spedizioni dai veicoli con feeder o dai depositi. Non deve essere utilizzato per qualsiasi spedizione ritirata o consegnata da un cliente finale.
UNAVAILABLE Un'attività che indica che il veicolo non è disponibile per il servizio. Ciò può accadere, ad esempio, quando il conducente fa una pausa o quando il veicolo viene rifornito.

TaskOutcomeLocationSource

L'identità dell'origine che ha compilato taskOutcomeLocation.

Enum
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Il risultato dell'attività prima che sia impostato.
PROVIDER Il provider ha specificato taskOutcomeLocation.
LAST_VEHICLE_LOCATION Il provider non ha specificato taskOutcomeLocation, quindi Fleet Engine ha utilizzato l'ultima posizione nota del veicolo.

JourneySharingInfo

Condivisione di campi specifici nel percorso.

Rappresentazione JSON
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
Campi
remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

Informazioni di monitoraggio relative alle fermate che il veicolo assegnato farà prima che completi questa attività. Tieni presente che questo elenco può contenere fermate da altre attività.

Il primo segmento, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), contiene informazioni sul percorso dall'ultima posizione nota del conducente al VehicleStop successivo. Le informazioni sul percorso corrente in genere provengono dall'app del conducente, ad eccezione di alcuni casi indicati nella documentazione di DeliveryVehicle.current_route_segment. Gli altri segmenti in Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) o Task.journeySharingInfo.remainingVehicleJourneySegments (REST) vengono compilati da Fleet Engine. Forniscono informazioni sul percorso tra i restanti VehicleStops.

lastLocation

object (DeliveryVehicleLocation)

Indica l'ultima posizione segnalata del veicolo.

lastLocationSnappable

boolean

Indica se l'ultima posizione del veicolo può essere agganciata a currentRouteSegment. Questo valore è False se lastLocation o currentRouteSegment non esistono. Questo valore viene calcolato da Fleet Engine. Gli aggiornamenti dai client vengono ignorati.

TaskTrackingViewConfig

Il messaggio di configurazione che definisce quando un elemento di dati di un'attività deve essere visibile agli utenti finali.

Rappresentazione JSON
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
Campi
routePolylinePointsVisibility

object (VisibilityOption)

Il campo che specifica quando possono essere visibili i punti delle polilinee del percorso. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

estimatedArrivalTimeVisibility

object (VisibilityOption)

Il campo che specifica quando può essere visibile l'ora di arrivo prevista. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

Il campo che specifica quando può essere visibile il tempo di completamento stimato dell'attività. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

remainingDrivingDistanceVisibility

object (VisibilityOption)

Il campo che specifica la distanza percorsa rimanente in auto può essere visibile. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

remainingStopCountVisibility

object (VisibilityOption)

Il campo che specifica quando il numero di fermate rimanenti può essere visibile. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

vehicleLocationVisibility

object (VisibilityOption)

Il campo che specifica quando può essere visibile la posizione del veicolo. Se questo campo non viene specificato, verrà utilizzata la configurazione della visibilità predefinita a livello di progetto per questi dati.

VisibilityOption

Il messaggio di opzione che definisce quando un elemento di dati deve essere visibile agli utenti finali.

Rappresentazione 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.
}
Campi
Campo di unione visibility_option. È stata scelta l'opzione di visibilità specifica. visibility_option può essere solo uno dei seguenti:
remainingStopCountThreshold

integer

Questo elemento di dati è visibile agli utenti finali se il numero di fermate rimanenti è <= leftStopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

Questo elemento di dati è visibile agli utenti finali se l'orario di arrivo stimato fino alla fermata <= <= perioduntiltopArrivalTimeThreshold.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

remainingDrivingDistanceMetersThreshold

integer

Questo elemento di dati è visibile agli utenti finali se la distanza percorsa restante in metri è pari a <= reindirizzare securityDistanceMetersThreshold.

always

boolean

Se viene impostato su true, questo elemento di dati è sempre visibile agli utenti finali senza soglie. Questo campo non può essere impostato su false.

never

boolean

Se viene impostato su true, questo elemento di dati è sempre nascosto agli utenti finali senza soglie. Questo campo non può essere impostato su false.

Metodi

batchCreate

Crea e restituisce un batch di nuovi oggetti Task.

create

Crea e restituisce un nuovo oggetto Task.

get

Recupera informazioni su un Task.

list

Recupera tutti i valori Task che soddisfano i criteri di filtro specificati.

patch

Aggiorna i dati di Task.

search
(deprecated)

Deprecato: utilizza GetTaskTrackingInfo.