הצגת רכבים ברשימה

במסמך הזה מתואר איך לפרסם כלי רכב למשלוחים.

סביבות ומגבלות

אתם יכולים להציג רשימה של כלי רכב למשלוחים מסביבת שרת או דפדפן. הנהג/ת ערכת ה-SDK לא תומכת בכרטיסי מוצר עם משלוחים.

כלי רכב למשלוחים מבקשים גישה רחבה לרכבי משלוחים, שמיועד למשתמשים מהימנים בלבד. שימוש בקריאה של Fleet למשלוחים או ב-Fleet Engine אסימונים של 'אדמין מסירה' כששולחים בקשות של כלי רכב למשלוח רשימות.

בכלי הרכב הרשומים מצונזרים השדות הבאים עקב השפעתם לגבי גודל התגובה:

  • CurrentRouteSegment
  • RemainingVehicleJourneySegments

שימוש

אפשר לרשום כלי רכב לפי מסנני מאפיינים וגבולות אזור תצוגה. אם מציינים אין מסנן או אזור תצוגה, התגובה כוללת את כל כלי הרכב למשלוח.

רשימה עם מסנני מאפיינים

אפשר להציג רשימה של כלי רכב למשלוחים על ידי סינון לפי מאפיין attributes שלהם. עבור לדוגמה, כדי לשלוח שאילתה על מאפיין עם המפתח my_key והערך my_value, משתמשים attributes.my_key = my_value. כדי לשלוח שאילתה לגבי כמה מאפיינים, צריך לחבר שאילתות באמצעות האופרטורים הלוגיים AND ו-OR כמו ב-attributes.key1 = value1 AND attributes.key2 = value2. תיאור מלא זמין בכתובת AIP-160 של תחביר שאילתות הסינון. אם משלבים מסננים עם גבולות של אזור תצוגה, המסנן משמש כאופרטור AND לאזור התצוגה. למידע נוסף, אפשר לעיין בקטע מסנן מאפייני הרכב לפרטים נוספים.

רשימה עם גבולות אזור תצוגה

אפשר לסנן את רכבי המשלוח שצוינו לפי מיקום באמצעות בקשת viewport הפרמטר. פרמטר הבקשה viewport מגדיר אזורי תצוגה באמצעות שני תוחמים קואורדינטות: high (צפון מזרח) ו-low (דרום מערב) קו רוחב וקו אורך בצמד הקואורדינטות. הבקשות נדחות אם הן כוללות קו רוחב גבוה נמוך מבחינה גיאוגרפית מקו רוחב נמוך.

הצגת רשימת התשובות

כברירת מחדל, רשימות של רכבי משלוח מחולקות לדפים, לפי גודל דף סביר. אם המיקום מציינים גודל דף, הבקשה מחזירה רק את מספר כלי הרכב שצוין במגבלה, או פחות. אם גודל הדף המבוקש חורג מגודל פנימי כערך המקסימלי, המערכת תשתמש בערך המקסימלי הפנימי. דף ברירת המחדל ודף המקסימום שני הגדלים הם 100 כלי רכב.

רשימת כלי רכב למשלוחים יכולה לכלול אסימון לקריאת הדף הבא של תוצאות. אסימון דף מוצג בתגובה רק כאשר דפים נוספים של מסירה כלי רכב זמינים לאחזור. כדי לאחזר את דף המשימות הבא: אסימון הדף עם בקשה שזהה אחרת לאסימון הקודם בקשה.

הצגת רשימה של דוגמאות לרכבים

אפשר להשתמש בספריית Java gRPC או ב-REST כדי להציג רשימה של רכבים להעברה אזור מסוים עם מאפיין מסוים. תגובה מוצלחת עדיין יכולה להיות ריק. המשמעות היא שאין כלי רכב עם המאפיין שצוין. קיימים באזור התצוגה שצוין.

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"

אם החיפוש יסתיים בהצלחה, גוף התגובה יכלול נתונים עם הערכים הבאים מבנה:

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

המאמרים הבאים