Questo documento descrive come elencare i veicoli per la consegna.
Ambienti e limiti
Puoi elencare i veicoli per la consegna da un ambiente server o browser. Il conducente L'SDK non supporta le schede dei veicoli per la consegna.
L'elenco dei veicoli per la consegna delle schede richiede l'accesso ampio ai veicoli per la consegna ed è ed è destinata esclusivamente a utenti attendibili. Utilizza il Lettore parco risorse o Fleet Engine Delivery Admin (Amministratore consegna) quando effettua richieste relative ai veicoli per la consegna dell'elenco.
I seguenti campi dei veicoli per la consegna elencati sono stati oscurati a causa del loro impatto dimensioni risposta:
CurrentRouteSegment
RemainingVehicleJourneySegments
Utilizzo
Puoi elencare i veicoli in base ai filtri degli attributi e ai limiti dell'area visibile. Se specifichi nessun filtro o area visibile, la risposta include tutti i veicoli per la consegna.
Elenco con filtri per attributi
Puoi elencare i veicoli per la consegna filtrando in base alla loro proprietà attributes
. Per
Ad esempio, per eseguire query su un attributo con chiave my_key
e valore my_value
, utilizza
attributes.my_key = my_value
. Per eseguire query per più attributi, unisci le query
utilizzando gli operatori logici AND
e OR
come in attributes.key1 = value1 AND
attributes.key2 = value2
. Per una descrizione completa, vedi AIP-160
della sintassi delle query di filtro. Se combini i filtri con i limiti dell'area visibile, il filtro
funge da operatore AND
per il limite dell'area visibile. Visita la pagina Filtro degli attributi dei veicoli
query per i dettagli.
Elenco con limiti dell'area visibile
Puoi filtrare i veicoli per la consegna elencati per località utilizzando la richiesta viewport
. Il parametro di richiesta viewport
definisce le aree visibili utilizzando due delimitazioni
coordinate: latitudine e longitudine di high
(nord-est) e low
(sud-ovest)
la coppia di coordinate. Le richieste vengono rifiutate se contengono una latitudine elevata
geograficamente inferiore a una latitudine bassa.
Elenca risposte
Per impostazione predefinita, gli elenchi di veicoli per la consegna vengono impaginati utilizzando dimensioni della pagina ragionevoli. Se specifichi una dimensione di pagina, la richiesta restituisce solo il numero specificato dal limite, o meno. Se le dimensioni di pagina richieste superano una dimensione massimo, viene utilizzato il valore massimo interno. La pagina predefinita e quella massima le dimensioni sono entrambe 100 veicoli.
Un elenco di veicoli per la consegna può includere un token per la lettura della pagina successiva di che consentono di analizzare i dati e visualizzare i risultati. Un token di pagina è presente in una risposta solo quando più pagine di pubblicazione di veicoli disponibili per il recupero. Per recuperare la pagina successiva di attività, utilizza il token della pagina con una richiesta altrimenti identica alla precedente richiesta.
Elenco di esempi di veicoli
Puoi utilizzare la libreria gRPC Java o REST per elencare i veicoli di consegna in una regione specifica con un determinato attributo. Una risposta corretta può comunque essere vuoto. In questo caso, significa che nessun veicolo con l'attributo specificato nell'area visibile specificata.
Java
static final String PROJECT_ID = "my-delivery-co-gcp-project";
DeliveryServiceBlockingStub deliveryService =
DeliveryServiceGrpc.newBlockingStub(channel);
// Tasks request
String parent = "providers/" + PROJECT_ID;
ListDeliveryVehiclesRequest listDeliveryVehiclesRequest =
ListDeliveryVehiclesRequest.newBuilder() // No need for the header
.setParent(parent)
.setViewport(
Viewport.newBuilder()
.setHigh(LatLng.newBuilder()
.setLatitude(37.45)
.setLongitude(-122.06)
.build())
.setLow(LatLng.newBuilder()
.setLatitude(37.41)
.setLongitude(-122.11)
.build())
.setFilter("attributes.my_key = my_value")
.build();
try {
ListDeliveryVehiclesResponse listDeliveryVehiclesResponse =
deliveryService.listDeliveryVehicles(listDeliveryVehiclesRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND:
break;
case PERMISSION_DENIED:
break;
}
return;
}
REST
# HTTP request
html GET https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles
# Request with a filter
# Request sets JWT, PROJECT_ID, and VEHICLE_ID in the local environment
curl -H "Authorization: Bearer ${JWT}" \
"https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryVehicles?filter=attributes.my_key%20%3D%20my_value%20&viewport.high.latitude=37.45&viewport.high.longitude=-122.06&viewport.low.latitude=37.41&viewport.low.longitude=-122.11"
Se la ricerca ha esito positivo, il corpo della risposta conterrà dati con quanto segue struttura:
// JSON representation
{
"deliveryVehicles": [
{
object (DeliveryVehicle)
}
],
"nextPageToken": string,
"totalSize": integer
}