Elenca veicoli per la consegna

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 agisce da operatore AND per il limite dell'area visibile. Consulta il 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
  }

Passaggi successivi