एक मंज़िल की यात्रा बनाएं

इस दस्तावेज़ में एक गंतव्य यात्रा बनाने का तरीका बताया गया है. इसके लिए सही जगह की जानकारी डालें फ़ील्ड में बदलाव कर सकता है और उसे पूरा करने के लिए किसी वाहन को असाइन कर सकता है. इसमें हम मान लेते हैं कि आपने फ़्लीट सेट अप कर लिया है इंजन और यह जानकारी कि आपने गाड़ियां बनाई हैं, आपके पास ड्राइवर ऐप्लिकेशन है, और विकल्प के तौर पर, उपभोक्ता ऐप्लिकेशन. इसके बारे में नीचे दी गई गाइड देखें:

यात्रा तैयार करने से जुड़ी बुनियादी बातें

इस सेक्शन में, Fleet Engine में यात्रा बनाने के लिए ज़रूरी अनुरोध की जानकारी दी गई है. gRPC और REST, दोनों में से किसी एक का इस्तेमाल करके, कलेक्शन बनाने का अनुरोध किया जाता है.

  • CreateTrip() तरीका: gRPC या REST
  • CreateTripRequest मैसेज: सिर्फ़ gRPC

यात्रा के फ़ील्ड

फ़्लीट इंजन में कोई ट्रिप बनाने के लिए, नीचे दिए गए फ़ील्ड का इस्तेमाल करें. अलग-अलग सोर्स का इस्तेमाल करें अलग-अलग तरह की यात्राओं के लिए फ़ील्ड: एक या कई डेस्टिनेशन, एक के बाद एक या शेयर किए जाने वाले पूलिंग ट्रिप. आपने लोगों तक पहुंचाया मुफ़्त में यात्रा बनाते समय वैकल्पिक फ़ील्ड दे सकते हैं या उन्हें सेट कर सकते हैं जब आप यात्रा अपडेट करते हैं.

यात्रा के फ़ील्ड
नाम ज़रूरी है? ब्यौरा
माता-पिता हां ऐसी स्ट्रिंग जिसमें प्रोजेक्ट आईडी शामिल होता है. यह आईडी, इस्तेमाल किए गए आईडी से मेल खाना चाहिए एक ही सेवा खाते से, सभी Fleet Engine इंटिग्रेशन पर काम करें भूमिकाएं.
trip_id हां आपकी बनाई गई स्ट्रिंग, जो इस यात्रा की खास तौर पर पहचान करती है. यात्रा आईडी में ये हैं कुछ पाबंदियां, जैसा कि रेफ़रंस में बताया गया है.
trip_type हां जो यात्रा टाइप बनाया जा रहा है उसके लिए इन वैल्यू पर TripType सेट करें:
  • एक डेस्टिनेशन: SHARED या EXCLUSIVE पर सेट करें.
  • एक से ज़्यादा डेस्टिनेशन: EXCLUSIVE पर सेट करें.
  • एक के बाद एक: इसे EXCLUSIVE पर सेट करें.
  • शेयर की गई पूलिंग: SHARED पर सेट करें.
pickup_point हां यात्रा का मूल बिंदु.
बीच के लेवल पर डेस्टिनेशन हां

सिर्फ़ एक से ज़्यादा डेस्टिनेशन की यात्राएं: उन इंटरमीडिएट डेस्टिनेशन की सूची जिन पर ड्राइवर के बीच में विज़िट किया जाता है लेने और छोड़ने की सुविधा उपलब्ध है. dropoff_point की तरह ही, यह फ़ील्ड को बाद में UpdateTrip पर कॉल करके भी सेट किया जा सकता है, लेकिन यह एक से ज़्यादा डेस्टिनेशन है यात्रा की परिभाषा में, बीच के डेस्टिनेशन शामिल हैं.

vehicle_waypoints हां

सिर्फ़ शेयर की गई पूलिंग यात्राएं: इस फ़ील्ड की मदद से, एक से ज़्यादा यात्राओं के वेपॉइंट इंटरलीव किए जा सकते हैं. इसमें, असाइन किए गए वाहन के लिए बचे हुए सभी वेपॉइंट के साथ-साथ, इस यात्रा के लिए पिकअप और ड्रॉप-ऑफ़ वेपॉइंट भी शामिल होते हैं. आप इस फ़ील्ड को सेट कर सकते हैं CreateTrip या UpdateTrip पर कॉल करके. आप यह भी कर सकते हैं waypoints फ़ील्ड से होकर वाहन के वेपॉइंट को UpdateVehicle पर कॉल करें. यह सेवा GetTrip कॉल पर यह जानकारी नहीं दिखाती है निजता की वजह से.

number_of_passengers नहीं यात्रा में शामिल यात्रियों की संख्या.
dropoff_point नहीं यात्रा की मंज़िल.
vehicle_id नहीं यात्रा के लिए असाइन किए गए वाहन का आईडी.

उदाहरण: एक मंज़िल की यात्रा

नीचे दिए गए उदाहरण में ग्रैंड इंडोनेशिया की यात्रा बनाने का तरीका बताया गया है ईस्ट मॉल. इस यात्रा में दो यात्री शामिल हैं, जो खास है और इसकी स्थिति है NEW. यात्रा का provider_id और Google Cloud एक ही होना चाहिए प्रोजेक्ट आईडी का इस्तेमाल करता है. उदाहरणों में प्रोजेक्ट आईडी वाला Google Cloud प्रोजेक्ट दिखाया गया है my-rideshare-co-gcp-project. इस प्रोजेक्ट में सेवा खाता भी शामिल होना चाहिए ताकि आप Fleet Engine को कॉल कर सकें. ज़्यादा जानकारी के लिए, सेवा खाते की भूमिकाएं देखें.

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

आगे क्या करना है