คู่มือนี้จะแสดงวิธีเรียกข้อมูลการเดินทางจาก Fleet Engine โดยตรง ซึ่งเป็นทางเลือกในการใช้ Consumer SDK คุณสามารถใช้วิธีนี้เพื่อ ควบคุมประสบการณ์ของผู้ใช้ปลายทางได้มากขึ้น ขณะที่ยังคงใช้ประโยชน์จากตำแหน่งของรถ เวลาถึงโดยประมาณ และการกำหนดเส้นทางของ Fleet Engine ที่แม่นยำและแบบเรียลไทม์
โปรดดูรายละเอียดเกี่ยวกับการใช้ Consumer 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 |
|
เรียกข้อมูลจุดแวะพักที่เหลือของการเดินทาง
เอนทิตีการเดินทางมีฟิลด์ที่ซ้ำกันซึ่งมีประเภทเป็น TripWaypoint
ฟิลด์นี้รวมจุดแวะพักทั้งหมดที่ยานพาหนะจะต้องเดินทางตามลำดับก่อนถึงจุดส่งผู้โดยสารสุดท้ายของการเดินทางนี้ การระบุมุมมองการแชร์เส้นทางจะบอกให้
Fleet Engine ใส่ข้อมูลที่อัปเดตแล้วในจุดอ้างอิงที่เหลือ[0]
TripWaypoint
ในมุมมองอื่นๆ ที่ไม่ใช่มุมมองการแชร์เส้นทาง โดยปกติจุดอ้างอิงนั้นไม่ได้แสดงถึงตำแหน่งล่าสุดของยานพาหนะที่กำหนด ดูข้อมูลอ้างอิงสำหรับ RPC หรือ REST
ดูข้อมูลเพิ่มเติมได้ที่สถานะการเดินทางและจุดแวะพักที่เหลือของยานพาหนะในคู่มือข้อมูลเบื้องต้นเกี่ยวกับการเดินทาง
ต่อไปนี้คือตัวอย่างของฟิลด์ remaining_waypoints
สำหรับการเดินทาง A
| |||||||||||||||||||||
|
รายการนี้อาจมีจุดอ้างอิงจากการเดินทางอื่นๆ ที่จะข้ามผ่านก่อนการเดินทางนี้เมื่อมีการเดินทางแบบต่อเนื่องและแบบกลุ่มแบบแชร์ร่วมกัน ตัวอย่างเช่น ลองพิจารณาสถานการณ์ที่ระบบกำหนดการเดินทาง ข. ให้กับยานพาหนะเดียวกันกับการเดินทาง ก. จากนั้นระบบจะป้อนข้อมูลในช่อง remaining_waypoints
สำหรับการเดินทาง ก ดังนี้
ไม่ได้ใส่ช่องส่วนใหญ่เพื่อให้กระชับ แต่จะป้อนข้อมูลให้สอดคล้องกับตัวอย่างก่อนหน้านี้
[0] | trip_id = "trip_A" |
---|---|
waypoint_type = PICKUP_WAYPOINT_TYPE | |
[1] | trip_id = "trip_B" |
Wapoint_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 |
ระบบจะป้อนข้อมูลในช่อง remaining_waypoint
ของการเดินทาง ข. ในลักษณะเดียวกัน แต่จะมีเฉพาะรายการ 3 รายการแรกเท่านั้น เนื่องจากจุดส่งผู้โดยสารของการเดินทาง ก. ไม่ได้อยู่ในเส้นทางของการเดินทาง ข.