इस गाइड में, सीधे Fleet Engine से ट्रिप डेटा हासिल करने का तरीका बताया गया है. यह तरीका, Consumer SDK टूल का इस्तेमाल करने के विकल्प के तौर पर उपलब्ध है. इस तरीके का इस्तेमाल करके, असली उपयोगकर्ता के अनुभव को बेहतर बनाया जा सकता है. साथ ही, Fleet Engine की मदद से वाहन की जगह की सटीक और रीयल-टाइम जानकारी, ईटीए, और रास्ते की जानकारी का फ़ायदा भी लिया जा सकता है.
Consumer SDK टूल का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, ऑन-डिमांड सफ़र के लिए यात्रा की जानकारी शेयर करना लेख पढ़ें.
यात्रा की जानकारी हासिल करना
सीधे Fleet Engine से यात्रा की जानकारी पाने के लिए, GetTrip
व्यू की जानकारी देकर, JOURNEY_SHARING_V1S
तरीका इस्तेमाल करें. आरपीसी या
REST के लिए रेफ़रंस देखें.
आम तौर पर, जब यात्री वाहन की स्थिति पर नज़र रखता है, तब आपका सर्वर हर यात्रा के स्टेटस के लिए, यात्रा की सेवा से पोल करता है. वाहन की जगह की जानकारी आम तौर पर हर 10 सेकंड में अपडेट होती है. इसलिए, आपके सिस्टम को भी इसी दर से पोल करना चाहिए. Trip.last_location.update_time
फ़ील्ड को मॉनिटर करके यह देखा जा सकता है कि GetTrip
को किए गए पिछले कॉल के बाद, कोई अपडेट हुआ है या नहीं.
static final String PROJECT_ID = "my-rideshare-co-gcp-project";
static final String TRIP_ID = "trip-A";
String tripName = "providers/" + PROJECT_ID + "/trips/" + TRIP_ID;
GetTripRequest getTripRequest =
GetTripRequest.newBuilder()
.setName(tripName)
.setView(JOURNEY_SHARING_V1S)
.build();
Trip trip = tripService.getTrip(getTripRequest);
इस Trip
ऑब्जेक्ट में, यात्रा के लिए उपलब्ध सबसे नई जानकारी वाले ये फ़ील्ड होते हैं:
name |
trip_status |
remaining_waypoints |
vehicle_id |
trip_type |
last_location |
number_of_passengers |
pickup_point |
view (== JOURNEY_SHARING_V1S) |
actual_pickup_point |
intermediate_destinations |
intermediate_destination_index |
pickup_time |
intermediate_destinations_version |
dropoff_point |
actual_dropoff_point |
dropoff_time |
|
यात्रा के बाकी वे पॉइंट वापस पाना जहां आपको जाना है
ट्रिप इकाई में, TripWaypoint
टाइप का दोहराया गया फ़ील्ड होता है. इस फ़ील्ड में वे सभी वेपॉइंट शामिल होते हैं जिन पर वाहन को यात्रा के दौरान, ट्रिप के आखिरी ड्रॉप-ऑफ़ पॉइंट से पहले, क्रम से जाना होगा. यात्रा शेयर करने के व्यू की जानकारी देने पर, Fleet Engine को remaining_waypoints[0]TripWaypoint
में अपडेट की गई जानकारी डालने के लिए कहा जाता है. सफ़र की जानकारी शेयर करने वाले व्यू के अलावा, अन्य व्यू में, वह वेपॉइंट आम तौर पर असाइन किए गए वाहन की मौजूदा जगह नहीं दिखाता. आरपीसी या REST के लिए रेफ़रंस देखें.
ज़्यादा जानकारी के लिए, यात्रा के बारे में जानकारी गाइड में यात्रा का स्टेटस और वाहन के बचे हुए वेपॉइंट देखें.
यहां किसी यात्रा, ट्रिप A के लिए remaining_waypoints
फ़ील्ड का उदाहरण दिया गया है:
| |||||||||||||||||||||
|
एक के बाद एक और शेयर की गई पूलिंग यात्राओं के लिए, इस सूची में उन अन्य यात्राओं के वे रास्ते शामिल हो सकते हैं जिन पर इस यात्रा से पहले जाना जाना है. उदाहरण के लिए, उस स्थिति पर विचार करें जहां ट्रिप B को उसी वाहन को असाइन किया गया है जिसे ट्रिप A को असाइन किया गया है. इसके बाद, remaining_waypoints
फ़ील्ड में, ट्रिप A के लिए इस तरह जानकारी अपने-आप भर जाएगी.
कम शब्दों में बताने के लिए, ज़्यादातर फ़ील्ड हटा दिए गए हैं. हालांकि, पिछले उदाहरण के मुताबिक इनमें जानकारी अपने-आप भर जाएगी.
[0] | trip_id = "trip_A" |
---|---|
waypoint_type = PICKUP_WAYPOINT_TYPE | |
[1] | trip_id = "trip_B" |
waypoint_type = PICKUP_WAYPOINT_TYPE | |
[2] | trip_id = "trip_B" |
waypoint_type = DROP_OFF_WAYPOINT_TYPE | |
[3] | trip_id = "trip_A" |
waypoint_type = DROP_OFF_WAYPOINT_TYPE |
यात्रा B का remaining_waypoint
फ़ील्ड इसी तरह से पॉप्युलेट किया जाएगा. हालांकि, इसमें सिर्फ़ पहली तीन एंट्री मौजूद होंगी, क्योंकि यात्रा A का ड्रॉप-ऑफ़ पॉइंट, यात्रा B के रूट का हिस्सा नहीं है.