Hướng dẫn này trình bày cách truy xuất dữ liệu chuyến đi trực tiếp từ Fleet Engine, dưới dạng thay thế cho việc sử dụng SDK người tiêu dùng. Bạn có thể sử dụng phương pháp này để biết thêm kiểm soát trải nghiệm của người dùng cuối trong khi vẫn khai thác được Fleet Thông tin vị trí xe chính xác theo thời gian thực, giờ đến dự kiến và tuyến đường của động cơ.
Để biết thông tin chi tiết về cách sử dụng SDK người tiêu dùng, hãy xem bài viết Chia sẻ hành trình theo yêu cầu chuyến đi.
Truy xuất thông tin chuyến đi
Để truy xuất trực tiếp thông tin chuyến đi từ Fleet Engine, hãy gọi GetTrip
, chỉ định khung hiển thị JOURNEY_SHARING_V1S
. Xem tài liệu tham khảo về RPC hoặc
REST.
Thông thường, máy chủ của bạn sẽ thăm dò dịch vụ chuyến đi để biết trạng thái của mỗi chuyến đi
trong khi tài xế đang chủ động theo dõi tiến trình của xe. Vị trí xe
quá trình cập nhật thường diễn ra 10 giây một lần và hệ thống của bạn sẽ thăm dò ý kiến
tỷ lệ tương tự. Bạn có thể theo dõi trường Trip.last_location.update_time
để xem
có thông tin cập nhật nào kể từ lệnh gọi GetTrip
trước đó.
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);
Đối tượng Trip
thu được có các trường sau được điền sẵn thông tin mới nhất
thông tin hiện có cho chuyến đi:
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 |
|
Truy xuất các điểm tham chiếu chuyến đi còn lại
Thực thể Chuyến đi chứa trường lặp lại thuộc loại TripWaypoint
Trường này
bao gồm tất cả các điểm tham chiếu mà xe sẽ cần di chuyển theo thứ tự trước khi
điểm trả khách cuối cùng của chuyến đi này. Việc chỉ định chế độ xem Chia sẻ hành trình sẽ cho biết
Fleet Engine để đưa thông tin cập nhật vào còn lại_waypoints[0]
TripWaypoint
. Trong các chế độ xem không phải Chia sẻ hành trình, điểm tham chiếu đó không
thường cho biết vị trí mới nhất của chiếc xe được chỉ định. Xem
tài liệu tham khảo cho RPC hoặc REST.
Để biết thêm thông tin, hãy xem Trạng thái chuyến đi và các điểm tham chiếu xe còn lại trong hướng dẫn Giới thiệu về chuyến đi.
Dưới đây là ví dụ về trường remaining_waypoints
cho một chuyến đi, Chuyến đi A:
| |||||||||||||||||||||
|
Đối với các chuyến đi gộp lại và đi chung, danh sách này có thể chứa điểm tham chiếu
từ các chuyến đi khác sẽ đi qua trước hành trình này. Ví dụ: hãy cân nhắc
trường hợp Chuyến đi B được chỉ định cho cùng một xe như Chuyến đi A. Chiến lược phát hành đĩa đơn
Khi đó, trường remaining_waypoints
cho Chuyến đi A sẽ được điền như sau.
Hầu hết các trường đã bị bỏ qua để đảm bảo tính súc tích, nhưng các trường này vẫn sẽ được
được điền sẵn như ví dụ trước.
[0] | Trip_id = "trip_A" |
---|---|
điểm tham chiếu = PICKUP_WAYPOINT_TYPE | |
[1] | Trip_id = "trip_B" |
điểm tham chiếu = PICKUP_WAYPOINT_TYPE | |
[2] | Trip_id = "trip_B" |
tham chiếu_type = DROP_OFF_WAYPOINT_TYPE | |
[3] | Trip_id = "trip_A" |
tham chiếu_type = DROP_OFF_WAYPOINT_TYPE |
Trường remaining_waypoint
của chuyến đi B sẽ được điền tương tự, nhưng chỉ có trường
ba mục nhập đầu tiên sẽ xuất hiện, do điểm trả khách của Chuyến đi A không phải là một phần
tuyến đường của Chuyến đi B.