Tài liệu này mô tả cách tạo một chuyến đi đến một đích đến, đặt đúng các trường và chỉ định chuyến đi đó cho một xe để thực hiện. Giả sử bạn đã thiết lập Nhóm Công cụ và bạn đã tạo phương tiện, ứng dụng dành cho người lái xe hoạt động và ứng dụng người tiêu dùng (không bắt buộc). Hãy xem các hướng dẫn liên quan sau đây về vấn đề đó:
Thông tin cơ bản về cách tạo chuyến đi
Phần này mô tả thông tin chi tiết về yêu cầu cần thiết để tạo chuyến đi ở Fleet Engine. Bạn đưa ra yêu cầu tạo bằng gRPC và REST.
Trường chuyến đi
Sử dụng các trường sau để tạo một chuyến đi trong Fleet Engine. Bạn có thể sử dụng các trường cho các loại chuyến đi khác nhau: một điểm đến hoặc nhiều điểm đến, các chuyến đi gộp hoặc liên kết chung. Bạn có thể cung cấp các trường tuỳ chọn khi tạo chuyến đi, hoặc bạn có thể đặt các trường đó khi bạn cập nhật chuyến đi.
Tên | Bắt buộc? | Mô tả |
---|---|---|
cha mẹ | Có | Một chuỗi chứa mã dự án. Mã này phải giống với mã được sử dụng trong toàn bộ quá trình tích hợp với Công cụ quản lý đội xe, với cùng vai trò tài khoản dịch vụ. |
trip_id | Có | Một chuỗi bạn tạo để nhận dạng duy nhất chuyến đi này. Mã chuyến đi có một số hạn chế nhất định, như được chỉ định trong tài liệu tham khảo. |
trip_type | Có | Đặt TripType thành các giá trị sau cho loại chuyến đi mà bạn đang tạo:
|
pickup_point | Có | Điểm xuất phát của chuyến đi. |
Đích đến trung gian | Có | Chỉ các chuyến đi nhiều điểm đến: Danh sách các điểm đến trung gian mà tài xế ghé thăm
đến lấy hàng và trả xe. Tương tự như với |
vehicle_waypoints | Có | Chỉ các chuyến đi chung: Trường này hỗ trợ việc xen kẽ các điểm tham chiếu từ nhiều chuyến đi.
Địa điểm này cũng chứa tất cả các điểm tham chiếu còn lại của xe được chỉ định,
làm điểm đón và trả khách cho chuyến đi này. Bạn có thể đặt trường này bằng cách gọi |
number_of_passengers | Không | Số lượng hành khách trong chuyến đi. |
dropoff_point | Không | Điểm đến của chuyến đi. |
vehicle_id | Không | Mã của xe được chỉ định cho chuyến đi. |
Ví dụ: chuyến đi một điểm đến
Ví dụ sau minh hoạ cách tạo một chuyến đi đến Grand Indonesia
Trung tâm mua sắm East. Chuyến đi này có hai hành khách (chỉ có khách hàng thân thuộc) và trạng thái của chuyến đi là
NEW
. provider_id
của chuyến đi phải giống với provider_id
của Google Cloud
mã dự án. Các ví dụ minh hoạ một dự án trên Google Cloud có mã dự án
my-rideshare-co-gcp-project
. Dự án này cũng phải bao gồm một tài khoản dịch vụ
để gọi Fleet Engine. Tham khảo bài viết Vai trò trong tài khoản dịch vụ để biết thông tin chi tiết.
static final String PROJECT_ID = "my-rideshare-co-gcp-project";
TripServiceBlockingStub tripService = TripService.newBlockingStub(channel);
// Trip initial settings.
String parent = "providers/" + PROJECT_ID;
Trip trip = Trip.newBuilder()
.setTripType(TripType.EXCLUSIVE) // Use TripType.SHARED for carpooling.
.setPickupPoint( // Grand Indonesia East Mall.
TerminalLocation.newBuilder().setPoint(
LatLng.newBuilder()
.setLatitude(-6.195139).setLongitude(106.820826)))
.setNumberOfPassengers(2)
// Provide the drop-off point if available.
.setDropoffPoint(
TerminalLocation.newBuilder().setPoint(
LatLng.newBuilder()
.setLatitude(-6.1275).setLongitude(106.6537)))
.build();
// Create trip request
CreateTripRequest createTripRequest = CreateTripRequest.newBuilder()
.setParent(parent)
.setTripId("trip-8241890") // Trip ID assigned by the provider.
.setTrip(trip) // The initial state is NEW.
.build();
// Error handling.
try {
Trip createdTrip = tripService.createTrip(createTripRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case ALREADY_EXISTS:
break;
case PERMISSION_DENIED:
break;
}
return;
}