सीधे Fleet Engine से यात्रा का डेटा वापस पाएं

इस गाइड में, उपभोक्ता SDK टूल के विकल्प के तौर पर, सीधे Fleet Engine से यात्रा का डेटा वापस पाने का तरीका बताया गया है. इस तरीके का इस्तेमाल करके, असली उपयोगकर्ता के अनुभव को बेहतर बनाया जा सकता है. साथ ही, Fleet Engine की मदद से वाहन की जगह की सटीक और रीयल-टाइम जानकारी, ईटीए, और रास्ते की जानकारी का फ़ायदा भी लिया जा सकता है.

उपभोक्ता 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 टाइप का दोहराया गया फ़ील्ड होता है. इस फ़ील्ड में वे सभी वेपॉइंट शामिल होते हैं जिन पर वाहन को ऑर्डर के तौर पर, इस यात्रा के आखिरी ड्रॉप-ऑफ़ पॉइंट से पहले जाना होगा. जर्नी शेयरिंग व्यू के बारे में बताने पर, फ़्लीट इंजन को शेष_waypoints[0] में अपडेट की गई जानकारी डालने के लिए कहा जाता है TripWaypoint. सफ़र की जानकारी शेयर करने वाले व्यू के अलावा, अन्य व्यू में, वह वेपॉइंट आम तौर पर असाइन किए गए वाहन की मौजूदा जगह नहीं दिखाता. आरपीसी या REST के लिए रेफ़रंस देखें.

ज़्यादा जानकारी के लिए, यात्रा के बारे में जानकारी गाइड में यात्रा का स्टेटस और वाहन के बचे हुए वेपॉइंट देखें.

यहां एक यात्रा के लिए remaining_waypoints फ़ील्ड का एक उदाहरण दिया गया है, जिसे यात्रा A के लिए इस्तेमाल किया जाता है:

[0] location.point = trip.pickup_point.point
trip_id = "trip_A"
waypoint_type = PICKUP_WAYPOINT_TYPE
path_to_waypoint = LatLng[] पिक अप के लिए, बाकी रास्ते से पहला LatLng
पिकअप करने के लिए, बाकी बचे रास्ते का दूसरा LatLng
...
पिकअप करने के लिए, बाकी बचे रास्ते का आखिरी LatLng
pickup_point, अगर पिछले से अलग है
traffic_data
Range_meters = पिक अप के लिए path_to_waypoint के साथ मौजूदा वाहन_जगह से दूरी
eta = updated ETA
अवधि = अपडेट किया गया समय
[1] location.point = trips.dropoff_point.point
trip_id = "trip_A"
वेपॉइंट_टाइप = DROP_OFF_WAYPOINT_TYPE
path_to_waypoint = LatLng[] ड्रॉप ऑफ़ लेग से पहला LatLng
ड्रॉपऑफ़ लेग का दूसरा LatLng
...
ड्रॉप ऑफ़ लेग से आखिरी LatLng
ड्रॉप-ऑफ़_पॉइंट, अगर आखिरी से अलग है
traffic_data
distance_meters = पिकअप से, path_to_waypoint के रास्ते से ड्रॉपऑफ़ तक की दूरी
ईटीए = अपडेट किया गया ETA
duration = drop-off leg duration

एक के बाद एक होने वाली और शेयर की जाने वाली पूलिंग ट्रिप के साथ, इस सूची में दूसरी यात्राओं के वेपॉइंट शामिल हो सकते हैं जिनका पता इस सफ़र से पहले किया जाना है. उदाहरण के लिए, ऐसी स्थिति पर विचार करें जिसमें यात्रा B, यात्रा A वाले वाहन को असाइन किया गया हो. इसके बाद, यात्रा A के लिए remaining_waypoints फ़ील्ड में, इस तरह से जानकारी अपने-आप भर जाएगी. कम शब्दों में बताने के लिए, ज़्यादातर फ़ील्ड हटा दिए गए हैं. हालांकि, पिछले उदाहरण के मुताबिक इनमें जानकारी अपने-आप भर जाएगी.

[0] Travel_id = "trip_A"
waypoint_type = PICKUP_WAYPOINT_TYPE
[1] trip_id = "trip_B"
waypoint_type = PICKUP_WAYPOINT_TYPE
[2] trip_id = "trip_B"
वेपॉइंट_टाइप = DROP_OFF_WAYPOINT_TYPE
[3] Travel_id = "trip_A"
वेपॉइंट_टाइप = DROP_OFF_WAYPOINT_TYPE

यात्रा B का remaining_waypoint फ़ील्ड इसी तरह से पॉप्युलेट किया जाएगा. हालांकि, इसमें सिर्फ़ पहली तीन एंट्री मौजूद होंगी, क्योंकि यात्रा A का ड्रॉप-ऑफ़ पॉइंट, यात्रा B के रूट का हिस्सा नहीं है.