ডেলিভারি যানবাহন তালিকা

এই নথিতে ডেলিভারি যানবাহন তালিকাভুক্ত করার পদ্ধতি বর্ণনা করা হয়েছে।

পরিবেশ এবং সীমাবদ্ধতা

আপনি সার্ভার বা ব্রাউজার পরিবেশ থেকে ডেলিভারি যানবাহন তালিকাভুক্ত করতে পারেন। ড্রাইভার এসডিকে ডেলিভারি যানবাহন তালিকাভুক্ত করা সমর্থন করে না।

ডেলিভারি যানবাহন তালিকাভুক্ত করার জন্য সেগুলিতে ব্যাপক অ্যাক্সেসের প্রয়োজন হয় এবং এটি শুধুমাত্র বিশ্বস্ত ব্যবহারকারীদের জন্য উদ্দিষ্ট। ডেলিভারি যানবাহন তালিকাভুক্ত করার অনুরোধ করার সময় ডেলিভারি ফ্লিট রিডার বা ফ্লিট ইঞ্জিন ডেলিভারি অ্যাডমিন টোকেন ব্যবহার করুন।

প্রতিক্রিয়ার আকারের উপর প্রভাবের কারণে তালিকাভুক্ত ডেলিভারি যানবাহনগুলোর নিম্নলিখিত ক্ষেত্রগুলো গোপন রাখা হয়েছে:

  • CurrentRouteSegment
  • RemainingVehicleJourneySegments

ব্যবহার

আপনি অ্যাট্রিবিউট ফিল্টার এবং ভিউপোর্ট বাউন্ড ব্যবহার করে যানবাহনগুলোর তালিকা করতে পারেন। যদি আপনি কোনো ফিল্টার বা ভিউপোর্ট নির্দিষ্ট না করেন, তাহলে রেসপন্সে সমস্ত ডেলিভারি যানবাহন অন্তর্ভুক্ত থাকবে।

অ্যাট্রিবিউট ফিল্টার সহ তালিকা

আপনি ডেলিভারি যানবাহনগুলির attributes প্রপার্টি ব্যবহার করে ফিল্টারের মাধ্যমে তাদের তালিকা তৈরি করতে পারেন। উদাহরণস্বরূপ, my_key কী এবং my_value ভ্যালু সহ একটি অ্যাট্রিবিউট কোয়েরি করতে, attributes.my_key = my_value ব্যবহার করুন। একাধিক অ্যাট্রিবিউট কোয়েরি করতে, লজিক্যাল AND এবং OR অপারেটর ব্যবহার করে কোয়েরিগুলিকে যুক্ত করুন, যেমন attributes.key1 = value1 AND attributes.key2 = value2 । ফিল্টার কোয়েরি সিনট্যাক্সের সম্পূর্ণ বিবরণের জন্য AIP-160 দেখুন। আপনি যদি ভিউপোর্ট বাউন্ডের সাথে ফিল্টার একত্রিত করেন, তাহলে ফিল্টারটি ভিউপোর্ট বাউন্ডের উপর একটি AND অপারেটর হিসাবে কাজ করে। বিস্তারিত জানার জন্য Vehicle attributes filter queries দেখুন।

ভিউপোর্ট সীমানা সহ তালিকা

আপনি viewport রিকোয়েস্ট প্যারামিটার ব্যবহার করে অবস্থান অনুসারে তালিকাভুক্ত ডেলিভারি যানবাহনগুলো ফিল্টার করতে পারেন। viewport রিকোয়েস্ট প্যারামিটারটি দুটি বাউন্ডিং কোঅর্ডিনেট ব্যবহার করে ভিউপোর্ট নির্ধারণ করে: একটি high (উত্তর-পূর্ব) এবং low (দক্ষিণ-পশ্চিম) অক্ষাংশ ও দ্রাঘিমাংশের জোড়া। অনুরোধগুলো প্রত্যাখ্যান করা হয় যদি সেগুলোতে এমন কোনো উচ্চ অক্ষাংশ থাকে যা ভৌগোলিকভাবে নিম্ন অক্ষাংশের চেয়ে নিচু।

প্রতিক্রিয়া তালিকাভুক্ত করুন

ডেলিভারি গাড়ির তালিকা ডিফল্টরূপে একটি যুক্তিসঙ্গত পেজ সাইজ ব্যবহার করে পেজিনেট করা হয়। আপনি যদি একটি পেজ সাইজ নির্দিষ্ট করে দেন, তাহলে অনুরোধটি শুধুমাত্র সেই সীমা দ্বারা নির্দিষ্ট সংখ্যক বা তার চেয়ে কম সংখ্যক গাড়ি ফেরত দেবে। যদি অনুরোধ করা পেজ সাইজ একটি অভ্যন্তরীণ সর্বোচ্চ মান অতিক্রম করে, তাহলে সেই অভ্যন্তরীণ সর্বোচ্চ মানটিই ব্যবহৃত হবে। ডিফল্ট এবং সর্বোচ্চ উভয় পেজ সাইজই হলো ১০০টি গাড়ি।

ডেলিভারি যানবাহনের তালিকায় ফলাফলের পরবর্তী পৃষ্ঠা পড়ার জন্য একটি টোকেন অন্তর্ভুক্ত থাকতে পারে। একটি রেসপন্সে পেজ টোকেন তখনই উপস্থিত থাকে, যখন ডেলিভারি যানবাহনের আরও পৃষ্ঠা পুনরুদ্ধারের জন্য উপলব্ধ থাকে। টাস্কের পরবর্তী পৃষ্ঠা পুনরুদ্ধার করতে, পূর্ববর্তী রিকোয়েস্টের সাথে অন্যথায় অভিন্ন একটি রিকোয়েস্টের সাথে পেজ টোকেনটি ব্যবহার করুন।

যানবাহনের উদাহরণ তালিকাভুক্ত করুন

আপনি জাভা gRPC লাইব্রেরি অথবা REST ব্যবহার করে একটি নির্দিষ্ট অ্যাট্রিবিউট সহ কোনো নির্দিষ্ট অঞ্চলের ডেলিভারি যানবাহনগুলির তালিকা দেখতে পারেন। একটি সফল প্রতিক্রিয়াও খালি থাকতে পারে। যখন এমনটা হয়, তার মানে হলো নির্দিষ্ট ভিউপোর্টে নির্দিষ্ট অ্যাট্রিবিউট সহ কোনো যানবাহন নেই। সমর্থিত ভাষাগুলির সম্পূর্ণ তালিকার জন্য, নির্ধারিত টাস্ক পরিষেবাগুলির জন্য ক্লায়েন্ট লাইব্রেরি দেখুন।

জাভা


  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;
  }

বিশ্রাম

  # 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
  }

এরপর কী?