במדריך הזה מוסבר איך לאחזר נתוני נסיעה ישירות מ-Fleet Engine, כחלופה לשימוש ב-SDK לצרכנים. כך תוכלו לקבל יותר שליטה בחוויית משתמש הקצה, ובמקביל ליהנות מהיתרונות של מיקום הרכב המדויק בזמן אמת, זמן ההגעה המשוער והניתוב של המנוע של Fleet.
במאמר שיתוף מסלולים בנסיעות על פי דרישה מוסבר על השימוש ב-SDK לצרכנים.
אחזור פרטי הנסיעה
כדי לאחזר פרטי נסיעה ישירות מ-Fleet Engine, צריך להפעיל את השיטה GetTrip
ולציין את התצוגה JOURNEY_SHARING_V1S
. אפשר לעיין בחומר עזר ל-RPC או ל-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 |
|
אחזור של נקודות הדרך הנותרות בנסיעה
הישות Trip מכילה שדה חוזר מסוג TripWaypoint
. השדה הזה כולל את כל נקודות העצירה שהרכב יצטרך לעבור בהן, לפי הסדר, לפני נקודת ההורדה הסופית של הנסיעה. ציון התצוגה 'שיתוף המסלול' מורה ל-Fleet Engine להציב מידע מעודכן ב-remaining_waypoints[0] TripWaypoint
. בתצוגות אחרות, שאינן 'שיתוף המסלול', נקודת הציון הזו בדרך בדרך כלל לא משקפת את המיקום העדכני ביותר של הרכב שהוקצה. אפשר לעיין במאמר העזרה של RPC או REST.
מידע נוסף זמין בקטע סטטוס הנסיעה ונקודות הדרך שנותרו לרכב במדריך מבוא לנסיעות.
דוגמה לשדה remaining_waypoints
לנסיעה, נסיעה א':
| |||||||||||||||||||||
|
בנסיעות רצופות ובנסיעות שיתופיות, הרשימה הזו עשויה לכלול נקודות דרך מנסיעות אחרות שצריך לעבור עליהן לפני הנסיעה הזו. לדוגמה, נניח שנסיעה ב'ב' משויכת לאותו רכב שנסיעה ב'א' משויכת אליו. השדה remaining_waypoints
בנסיעה א' יאוכלס באופן הבא.
רוב השדות הושמטו מטעמי תמציתיות, אבל הם יאוכלסו בהתאם לדוגמה הקודמת.
[0] | Tri_id = "trip_A" |
---|---|
waypoint_type = PICKUP_WAYPOINT_TYPE | |
[1] | Tri_id = "trip_B" |
weekpoint_type = PICKUP_WAYPOINT_TYPE | |
[2] | Tri_id = "trip_B" |
waypoint_type = DROP_OFF_WAYPOINT_TYPE | |
[3] | Tri_id = "trip_A" |
weekpoint_type = DROP_OFF_WAYPOINT_TYPE |
השדה remaining_waypoint
של נסיעה ב' יהיה מאוכלס באופן דומה, אבל רק שלוש הרשומות הראשונות יופיעו, כי נקודת ההורדה של נסיעה א' לא נכללת במסלול של נסיעה ב'.