একটি একক-গন্তব্য ট্রিপ তৈরি করুন

এই দস্তাবেজটি বর্ণনা করে যে কীভাবে একটি একক গন্তব্য ট্রিপ তৈরি করতে হয়, সঠিক ক্ষেত্রগুলি সেট করতে হয় এবং এটি পূরণ করার জন্য একটি গাড়িতে বরাদ্দ করা হয়। এটি ধরে নেয় যে আপনি ফ্লিট ইঞ্জিন সেট আপ করেছেন এবং আপনি যানবাহন তৈরি করেছেন, একটি কার্যকরী ড্রাইভার অ্যাপ রয়েছে এবং ঐচ্ছিকভাবে, একটি ভোক্তা অ্যাপ রয়েছে। এর জন্য নিম্নলিখিত সম্পর্কিত গাইড দেখুন:

ট্রিপ তৈরির মৌলিক বিষয়

এই বিভাগটি ফ্লিট ইঞ্জিনে একটি ট্রিপ তৈরি করার জন্য প্রয়োজনীয় অনুরোধের বিবরণ বর্ণনা করে। আপনি gRPC এবং REST ব্যবহার করে একটি তৈরির অনুরোধ জারি করেন।

  • CreateTrip() পদ্ধতি: gRPC বা REST
  • CreateTripRequest বার্তা: শুধুমাত্র gRPC

ট্রিপ ক্ষেত্র

ফ্লিট ইঞ্জিনে একটি ট্রিপ তৈরি করতে নিম্নলিখিত ক্ষেত্রগুলি ব্যবহার করুন৷ আপনি বিভিন্ন ধরণের ভ্রমণের জন্য বিভিন্ন ক্ষেত্র ব্যবহার করতে পারেন: একক- বা বহু-গন্তব্য, ব্যাক-টু-ব্যাক, বা শেয়ার্ড পুলিং ট্রিপ। আপনি ট্রিপ তৈরি করার সময় ঐচ্ছিক ক্ষেত্রগুলি সরবরাহ করতে পারেন, অথবা আপনি যখন ট্রিপ আপডেট করবেন তখন আপনি সেগুলি সেট করতে পারেন৷

ট্রিপ ক্ষেত্র
নাম প্রয়োজন? বর্ণনা
অভিভাবক হ্যাঁ একটি স্ট্রিং যা প্রজেক্ট আইডি অন্তর্ভুক্ত করে। এই আইডিটি অবশ্যই একই আইডি হতে হবে যা আপনার পুরো ফ্লিট ইঞ্জিন ইন্টিগ্রেশন জুড়ে একই পরিষেবা অ্যাকাউন্টের ভূমিকা সহ ব্যবহৃত হয়৷
trip_id হ্যাঁ আপনার তৈরি করা একটি স্ট্রিং যা এই ট্রিপটিকে অনন্যভাবে চিহ্নিত করে। ট্রিপ আইডির নির্দিষ্ট কিছু বিধিনিষেধ রয়েছে, যেমনটি রেফারেন্সে উল্লেখ করা হয়েছে।
ট্রিপ_টাইপ হ্যাঁ আপনি যে ট্রিপ টাইপ তৈরি করছেন তার জন্য নিম্নলিখিত মানগুলিতে TripType সেট করুন:
  • একক গন্তব্য : SHARED বা EXCLUSIVE সেট করুন।
  • মাল্টি-গন্তব্য : EXCLUSIVE সেট করুন।
  • ব্যাক-টু-ব্যাক : EXCLUSIVE তে সেট করুন।
  • শেয়ার্ড পুলিং : SHARED এ সেট করুন।
পিকআপ_পয়েন্ট হ্যাঁ ট্রিপ এর মূল বিন্দু.
মধ্যবর্তী গন্তব্য হ্যাঁ

শুধুমাত্র মাল্টি-ডেস্টিনেশন ট্রিপ : পিকআপ এবং ড্রপ-অফের মধ্যে ড্রাইভার ভিজিট করে এমন মধ্যবর্তী গন্তব্যগুলির তালিকা। dropoff_point মতো, এই ক্ষেত্রটিও UpdateTrip কল করে পরে সেট করা যেতে পারে, তবে সংজ্ঞা অনুসারে একটি বহু-গন্তব্য ট্রিপে মধ্যবর্তী গন্তব্য রয়েছে।

যানবাহন_ওয়েপয়েন্ট হ্যাঁ

শুধুমাত্র শেয়ার্ড-পুলিং ট্রিপ : এই ক্ষেত্রটি একাধিক ট্রিপ থেকে ওয়েপয়েন্ট ইন্টারলেভিং সমর্থন করে। এটিতে নির্ধারিত গাড়ির জন্য বাকি সমস্ত পথপয়েন্ট রয়েছে, সেইসাথে এই ট্রিপের জন্য পিকআপ এবং ড্রপ-অফ ওয়েপয়েন্ট রয়েছে৷ আপনি CreateTrip বা UpdateTrip কল করে এই ক্ষেত্রটি সেট করতে পারেন। এছাড়াও আপনি UpdateVehicle এ কল দিয়ে waypoints ফিল্ডের মাধ্যমে গাড়ির ওয়েপয়েন্ট আপডেট করতে পারেন। গোপনীয়তার কারণে পরিষেবাটি GetTrip কলে এই তথ্য ফেরত দেয় না।

যাত্রীদের_সংখ্যা না ট্রিপে যাত্রীর সংখ্যা।
ড্রপঅফ_পয়েন্ট না ভ্রমণের গন্তব্য।
vehicle_id না ভ্রমণের জন্য নির্ধারিত গাড়ির আইডি।

উদাহরণ: একক-গন্তব্য ভ্রমণ

নীচের উদাহরণটি দেখায় কিভাবে গ্র্যান্ড ইন্দোনেশিয়া ইস্ট মলে একটি ট্রিপ তৈরি করতে হয়। ট্রিপে দুজন যাত্রী জড়িত, একচেটিয়া, এবং এর স্থিতি NEW । ট্রিপের provider_id অবশ্যই Google ক্লাউড প্রোজেক্ট আইডির মতোই হতে হবে। উদাহরণগুলি প্রজেক্ট আইডি my-rideshare-co-gcp-project সহ একটি Google ক্লাউড প্রকল্প দেখায়। ফ্লীট ইঞ্জিন কল করার জন্য এই প্রকল্পে অবশ্যই একটি পরিষেবা অ্যাকাউন্ট অন্তর্ভুক্ত করতে হবে। বিশদ বিবরণের জন্য পরিষেবা অ্যাকাউন্টের ভূমিকা দেখুন।

static final String PROJECT_ID = "my-rideshare-co-gcp-project";

TripServiceBlockingStub tripService = TripService.newBlockingStub(channel);

// Trip initial settings.
String parent = "providers/" + PROJECT_ID;

Trip trip = Trip.newBuilder()
    .setTripType(TripType.EXCLUSIVE) // Use TripType.SHARED for carpooling.
    .setPickupPoint(                 // Grand Indonesia East Mall.
        TerminalLocation.newBuilder().setPoint(
            LatLng.newBuilder()
                .setLatitude(-6.195139).setLongitude(106.820826)))
    .setNumberOfPassengers(2)
    // Provide the drop-off point if available.
    .setDropoffPoint(
        TerminalLocation.newBuilder().setPoint(
            LatLng.newBuilder()
                .setLatitude(-6.1275).setLongitude(106.6537)))
    .build();

// Create trip request
CreateTripRequest createTripRequest = CreateTripRequest.newBuilder()
    .setParent(parent)
    .setTripId("trip-8241890")  // Trip ID assigned by the provider.
    .setTrip(trip)              // The initial state is NEW.
    .build();

// Error handling.
try {
  Trip createdTrip = tripService.createTrip(createTripRequest);
} catch (StatusRuntimeException e) {
  Status s = e.getStatus();
  switch (s.getCode()) {
    case ALREADY_EXISTS:
      break;
    case PERMISSION_DENIED:
      break;
  }
  return;
}

এরপর কি