Teslimat araçlarını listeleme

Bu dokümanda, teslimat araçlarının nasıl listeleneceği açıklanmaktadır.

Ortamlar ve sınırlamalar

Teslimat araçlarını bir sunucu veya tarayıcı ortamından listeleyebilirsiniz. Sürücü SDK, yayınlama araçlarının listelenmesini desteklemiyor.

Teslimat araçlarını listelemek, teslimat araçlarına geniş kapsamlı erişim talep eder ve yalnızca güvenilir kullanıcılara yöneliktir. Teslim Filosu Okuyucu veya Fleet Engine'i kullanın Liste yayınlama aracı istekleri yaparken, Yayınlama Yöneticisi jetonları.

Listelenen yayın araçlarında, yanıt boyutunu etkiledikleri için aşağıdaki alanlar çıkartılır:

  • CurrentRouteSegment
  • RemainingVehicleJourneySegments

Kullanım

Araçları özellik filtrelerine ve görüntü alanı sınırlarına göre listeleyebilirsiniz. Filtre veya görüntü alanı belirtmezseniz yanıt tüm yayın araçlarını içerir.

Özellikleri filtreleyen liste

Teslimat araçlarını attributes özelliğini kullanarak filtreye göre listeleyebilirsiniz. Örneğin, my_key anahtarına ve my_value değerine sahip bir özelliği sorgulamak için attributes.my_key = my_value değerini kullanın. Birden fazla özellik için sorgu yapmak istiyorsanız attributes.key1 = value1 AND attributes.key2 = value2'de olduğu gibi mantıksal AND ve OR operatörlerini kullanarak sorguları birleştirin. Tam açıklama için bkz. AIP-160 yardımcı olur. Filtreleri görüntü alanı sınırlarıyla birleştirirseniz filtre görüntü alanına bağlı bir AND operatörü gibi işlev görür. Araç özellikleri filtresine göz atın. sorguları başlıklı makaleye bakın.

Görüntü alanı sınırları olan liste

Listelenen yayın araçlarını viewport istek parametresini kullanarak konuma göre filtreleyebilirsiniz. viewport istek parametresi, iki sınırlama kullanarak görüntü alanlarını tanımlar koordinatlar: high (kuzeydoğu) ve low (Güneybatı) enlemi ve boylamı koordinat çiftinin değeri. Coğrafi olarak düşük enlemden daha düşük bir enlem içeren istekler reddedilir.

Yanıtları listeleme

Teslimat aracı listeleri, makul bir sayfa boyutu kullanılarak varsayılan olarak sayfalara ayrılır. Eğer bir sayfa boyutu belirtirseniz istek yalnızca araç sayısını döndürür. en fazla bir değer olabilir. İstenen sayfa boyutu dahili bir sınırı aşıyorsa dahili maksimum değer kullanılır. Varsayılan ve maksimum sayfa her ikisi de 100 araç.

Teslimat araçları listesinde sonraki sayfanın okunması için bir jeton sonuç. Sayfa jetonu, yalnızca yayınlama sayfası daha fazla olduğunda yanıtlarda bulunur araç alınabilir. Görevlerin sonraki sayfasını almak için Öncekine benzer bir istek içeren sayfa jetonu isteği gönderin.

Araç örneklerini listeleme

Teslimat araçlarını belirli bir ölçekte listelemek için Java gRPC kitaplığını veya REST'i belirli bir özellikteki belirli bir bölge. Başarılı bir yanıt hâlâ boştur. Bu durumda, belirtilen özelliğe sahip hiçbir araç yoktur bulunmalıdır.

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"

Arama başarılı olursa yanıt gövdesinde aşağıdakilerin bulunduğu veriler yer alır: yapı:

  // JSON representation
  {
    "deliveryVehicles": [
      {
        object (DeliveryVehicle)
      }
    ],
    "nextPageToken": string,
    "totalSize": integer
  }

Sırada ne var?