In diesem Dokument wird beschrieben, wie Lieferfahrzeuge aufgelistet werden.
Umgebungen und Einschränkungen
Sie können Lieferfahrzeuge aus einer Server- oder Browserumgebung auflisten. Das Driver SDK unterstützt keine Einträge für Lieferfahrzeuge.
Das Eintragen von Lieferfahrzeugen erfordert umfassenden Zugriff auf Lieferfahrzeuge und ist die nur für vertrauenswürdige Nutzer bestimmt sind. Verwenden Sie Delivery Fleet Reader oder Fleet Engine. Delivery Admin für Anfragen mit Listen von Lieferfahrzeugen
Bei aufgeführten Lieferfahrzeugen wurden die folgenden Felder aufgrund ihrer Auswirkungen entfernt zur Antwortgröße:
CurrentRouteSegment
RemainingVehicleJourneySegments
Nutzung
Sie können Fahrzeuge anhand von Attributfiltern und Begrenzungen des Darstellungsbereichs auflisten. Wenn Sie kein Filter oder Darstellungsbereich vorhanden ist, enthält die Antwort alle Lieferfahrzeuge.
Liste mit Attributfiltern
Sie können Lieferfahrzeuge mithilfe der attributes
-Property filtern. Für
Um beispielsweise ein Attribut mit dem Schlüssel my_key
und dem Wert my_value
abzufragen, verwenden Sie
attributes.my_key = my_value
JOIN-Abfragen, um mehrere Attribute abzufragen
mithilfe der logischen Operatoren AND
und OR
, wie in attributes.key1 = value1 AND
attributes.key2 = value2
. Eine vollständige Beschreibung finden Sie unter AIP-160.
der Filterabfragesyntax. Wenn Sie Filter mit Grenzen des Darstellungsbereichs kombinieren,
agiert als AND
-Operator für den Darstellungsbereich. Siehe Filter für Fahrzeugattribute
finden Sie weitere Informationen.
Liste mit Grenzen des Darstellungsbereichs
Sie können aufgelistete Lieferfahrzeuge mithilfe des Anfrageparameters viewport
nach Standort filtern. Der Anfrageparameter viewport
definiert Darstellungsbereiche mithilfe von zwei Begrenzungen
Koordinaten: Breiten- und Längengrad für high
(Nordosten) und low
(Südwesten)
-Koordinatenpaar. Anfragen werden abgelehnt, wenn sie einen hohen Breitengrad enthalten
geografisch niedriger als ein niedriger Breitengrad ist.
Antworten auflisten
Listen mit Fahrzeugen werden standardmäßig mit einer angemessenen Seitengröße paginiert. Wenn Wenn Sie eine Seitengröße angeben, wird in der Anfrage nur die Anzahl der Fahrzeuge zurückgegeben. durch das Limit festgelegt oder niedriger aus. Wenn die angeforderte Seitengröße einen internen Maximalwert, wird der interne Maximalwert verwendet. Die Standard- und die maximale Seitengröße sind jeweils 100 Fahrzeuge.
Eine Liste der Lieferfahrzeuge kann ein Token zum Lesen der nächsten Seite Ergebnisse. Ein Seitentoken ist nur in einer Antwort vorhanden, wenn weitere Seiten mit Lieferfahrzeugen zum Abrufen verfügbar sind. Um die nächste Seite mit Aufgaben abzurufen, verwenden Sie Das Seitentoken mit einer Anfrage, die ansonsten mit dem vorherigen identisch ist
Beispiele für Fahrzeuge auflisten
Sie können die gRPC-Bibliothek für Java oder REST verwenden, um Bereitstellungsfahrzeuge in einem bestimmte Region mit einem bestimmten Attribut. Eine erfolgreiche Antwort kann trotzdem leer sein. In diesem Fall können keine Fahrzeuge mit dem angegebenen Attribut im angegebenen Darstellungsbereich vorhanden sind.
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"
Wenn die Suche erfolgreich ist, enthält der Antworttext Daten mit den folgenden Struktur:
// JSON representation
{
"deliveryVehicles": [
{
object (DeliveryVehicle)
}
],
"nextPageToken": string,
"totalSize": integer
}