Bu dokümanda, tek bir hedef seyahat oluşturma, doğru alanları ayarlama ve seyahatleri yerine getirmek için bir araca atama işlemleri açıklanmaktadır. Filoyu kurduğunuz varsayılır Araç oluşturduğunuzu, çalışan bir sürücü uygulamanız olduğunu ve isteğe bağlı olarak bir tüketici uygulaması. Bununla ilgili aşağıdaki kılavuzlara göz atın:
Gezi oluşturmayla ilgili temel bilgiler
Bu bölümde, Londra'da seyahat oluşturmak için gereken istek ayrıntıları Filo Motoru. gRPC veya REST kullanarak bir oluşturma isteği gönderirsiniz.
Seyahat Alanları
Fleet Engine'de gezi oluşturmak için aşağıdaki alanları kullanın. Farklı veri türleri için farklı seyahat türlerine yönelik alanlar sunar: tek veya çok hedefli, ortak havuz gezileri olabilir. Siz isteğe bağlı alanları geziyi oluştururken sağlayabilir veya bunları ya da siz de bu sırada gezinebilirsiniz.
Ad | Zorunlu mu? | Açıklama |
---|---|---|
parent | Evet | Proje kimliğini içeren bir dize. Bu kimlik, kullanılan kimlikle aynı olmalıdır aynı hizmet hesabını kullanarak, Fleet Engine entegrasyonunuzun tamamında rolleri. |
trip_id | Evet | Sizin oluşturduğunuz ve bu seyahati benzersiz şekilde tanımlayan bir dize. Gezi kimlikleri referansta belirtildiği şekilde bazı kısıtlamalara tabi olacaktır. |
trip_type | Evet | TripType'ı, oluşturduğunuz gezi türü için aşağıdaki değerlere ayarlayın:
|
pickup_point | Evet | Seyahatin kalkış noktası. |
Orta düzey hedefler | Evet | Yalnızca çok hedefli geziler: Sürücün arada ziyaret ettiği ara hedeflerin listesi
yardımcı olur. |
vehicle_waypoints | Evet | Yalnızca ortak havuz gezileri: Bu alan, birden fazla seyahatteki ara noktaların arasına katılmayı destekler.
Burada, atanan aracın kalan tüm ara noktaları da
olarak ayarlayabilirsiniz. Bu alanı,
|
number_of_passengers | Hayır | Gezideki yolcu sayısı. |
dropoff_point | Hayır | Gezinin varış noktası. |
vehicle_id | Hayır | Seyahate atanan aracın kimliği. |
Örnek: tek hedefli gezi
Aşağıdaki örnekte, Grand Indonesia East Mall'a yapılacak bir gezi nasıl oluşturulacağı gösterilmektedir. Seyahat iki yolcu içeriyor, özel ve durumu NEW
. Gezinin provider_id
tarihi, Google Cloud ile aynı olmalıdır
proje kimliği. Örnekler, proje kimliğine sahip bir Google Cloud projesini göstermektedir
my-rideshare-co-gcp-project
Bu projede bir hizmet hesabı da bulunmalıdır
amacıyla Fleet Engine'i arayacağım. Ayrıntılar için Hizmet hesabı rolleri bölümüne bakın.
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;
}