In diesem Dokument wird beschrieben, wie Sie eine Fahrt mit einem einzelnen Ziel erstellen, den richtigen und es einem Fahrzeug zuweisen, das erfüllt werden soll. Es wird davon ausgegangen, dass Sie Flotte eingerichtet haben und dass ihr Fahrzeuge erstellt, eine funktionierende Fahrer-App habt optional eine Nutzer-App. Weitere Informationen dazu finden Sie in den folgenden Leitfäden:
Grundlagen der Reiseplanung
In diesem Abschnitt werden die Anfragedetails beschrieben, die zum Erstellen einer Fahrt in Fleet Engine Sie senden eine Erstellungsanfrage entweder mit gRPC oder REST.
Fahrtfelder
Verwenden Sie die folgenden Felder, um eine Fahrt in Fleet Engine zu erstellen. Sie können unterschiedliche Felder für die verschiedenen Arten von Fahrten verwenden: Fahrten mit einem oder mehreren Zielen, Fahrten nacheinander oder Fahrten mit geteiltem Pool. Ich können beim Erstellen der Fahrt die optionalen Felder ausfüllen oder wenn Sie die Fahrt aktualisieren.
Name | Erforderlich? | Beschreibung |
---|---|---|
parent | Ja | Ein String, der die Projekt-ID enthält. Diese ID muss mit der verwendeten ID übereinstimmen für die gesamte Fleet Engine-Einbindung über dasselbe Dienstkonto Rollen. |
trip_id | Ja | Ein von Ihnen erstellter String, der diese Fahrt eindeutig identifiziert. Fahrten-IDs unterliegen bestimmten Einschränkungen, die in der Referenz angegeben sind. |
trip_type | Ja | Legen Sie für TripType die folgenden Werte für die erstellte Fahrtart fest:
|
pickup_point | Ja | Ausgangspunkt der Fahrt. |
Ziele für Fortgeschrittene | Ja | Nur Fahrten mit mehreren Zielen: Die Liste der Zwischenziele, die der Fahrer dazwischen besucht.
Abholung und Abgabe. Wie bei |
vehicle_waypoints | Ja | Nur gemeinsam genutzte Pooling-Fahrten: In diesem Feld können die Wegpunkte mehrerer Fahrten verschränkt werden.
Es enthält alle verbleibenden Wegpunkte für das zugewiesene Fahrzeug sowie
als Start- und Zielort für diese Fahrt angeben. Sie können dieses Feld
durch Aufrufen von |
number_of_passengers | Nein | Die Anzahl der Fahrgäste für die Fahrt. |
dropoff_point | Nein | Das Ziel der Reise. |
vehicle_id | Nein | Die ID des Fahrzeugs, das der Fahrt zugewiesen ist. |
Beispiel: Fahrt mit einem Ziel
Das folgende Beispiel zeigt, wie Sie eine Reise nach Grand Indonesia erstellen
East Mall Die Fahrt umfasst zwei Fahrgäste, ist exklusiv und ihr Status ist
NEW
Die provider_id
der Fahrt muss mit der Google Cloud übereinstimmen
Projekt-ID. Die Beispiele zeigen ein Google Cloud-Projekt mit der Projekt-ID.
my-rideshare-co-gcp-project
Dieses Projekt muss auch ein Dienstkonto enthalten
um Fleet Engine aufzurufen. Weitere Informationen finden Sie unter Dienstkontorollen.
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;
}