In diesem Dokument wird der Dienst für Fahrten auf Abruf in der Fleet Engine beschrieben. Es wird davon ausgegangen, dass Sie den Hilfeartikel Was ist Fleet Engine? gelesen haben und mit der spezifischen Fleet Engine-Dienstfunktion vertraut sind, die Sie benötigen.
Beachten Sie beim Lesen dieser Dokumentation Folgendes:
- Sie weisen Fahrten Fahrzeugen zu, um die reale Verknüpfung zwischen der Fahrt und dem Fahrer zu modellieren, der diese Fahrt ausführt. Lesen Sie den Hilfeartikel Einführung in Fahrzeuge, um mehr über die Funktionsweise von Fahrzeugen in Fleet Engine zu erfahren.
- In diesem Dokument werden auch einige Fahrzeugelemente beschrieben, die nur für Fahrten auf Abruf gelten.
- Fleet Engine für On-Demand-Fahrten verwendet zwei Ressourcen: eine
Trip
und eineVehicle
. Fleet Engine bietet sowohl einen gRPC-Dienst als auch REST-Schnittstellen:
Was ist eine Fahrt auf Abruf?
In Fleet Engine steht eine Fahrt für eine On-Demand-Reise, die eine Vielzahl von Mobilitätszielen erreichen kann. Beispiele:
- Personen: Transport einer oder mehrerer Personen von einem Abhol- zu einem Abgabeort.
- Essen und Waren: Sie holen eine oder mehrere Essensbestellungen an einem bestimmten Geschäftsstandort ab und liefern diese Bestellungen an einen oder mehrere Empfänger an ihren Standorten.
Reiseelemente
Die folgende Abbildung zeigt die grundlegenden Elemente einer Fahrt: die zugewiesene Fahrzeug-ID, den Fahrtstatus und die Wegpunkte der Fahrt. Die Wegpunkttypen variieren je nach Fahrtabschnitt: Abhol-, Zwischen- und Zielort. Bei jeder Fahrt ist ein Zwischenziel oder -wegpunkt optional. Auf dem Bild ist zu sehen, dass das Fahrzeug am Abholort angekommen ist.
Datenmodell für Fahrten
Wenn Ihr Backend Fahrten Fahrzeugen zuweist, muss es auch über andere Fahrten informiert sein, die für das Fahrzeug geplant sind. Aus diesem Grund zeigen die folgenden Diagramme das Datenmodell der Trip
-Ressource zusammen mit dem Diagramm für die zugehörige Vehicle
-Ressource. Sie können sich beide Diagramme ansehen, um die Beziehungen zwischen den beiden Ressourcen zu untersuchen. Beachten Sie dabei Folgendes:
- Fahrten werden einem Fahrzeug anhand der ID zugewiesen.
- Die Zuordnung von Fahrten zu Fahrzeugen ist eine n:1-Beziehung. Das heißt, eine bestimmte Fahrt kann die einzige Fahrt sein, die für das Fahrzeug geplant ist, oder eine von vielen Fahrten für das Fahrzeug.
- Fahrtobjekte enthalten zwei Listen mit Wegpunkten, eine für die Fahrt selbst und eine für das zugewiesene Fahrzeug. Das wird in diesem Dokument ausführlicher erläutert.
- Das On-Demand-Fahrzeug hat auch eine Liste von Wegpunkten für die Fahrt, die in diesem Dokument ausführlicher beschrieben werden.
Datenmodell für Fahrten
Fahrzeugdatenmodell
Fahrttypen
Wenn Ihr Dienst eine Fahrt erstellt, kann das Feld tripType
auf eine der folgenden Optionen festgelegt werden: EXCLUSIVE
oder SHARED
.
Exklusive Reisen
Eine Fahrt gilt als exklusiv, wenn sich die Route nicht mit anderen Fahrten überschneidet und das Fahrzeug sie entweder vor oder nach anderen Fahrten im Fahrplan absolviert. Das bedeutet, dass Ihr System Fahrten nur einem Fahrzeug zuweisen kann, das sie nacheinander und nicht gleichzeitig ausführen kann. So können Sie beispielsweise exklusive Fahrten mit den folgenden Merkmalen erstellen:
- Eine Fahrt mit einer einzigen Abhol- und einer einzigen Bringadresse für ein Fahrzeug, das im Fahrplan keine weiteren Fahrten hat.
- Eine Fahrt mit einem Startpunkt, einem Zwischenstopp und einem Ziel für ein Fahrzeug, das keinen weiteren Fahrplan hat.
- Eine Fahrt mit Abhol- und Abgabeort, die am Ende einer bereits geplanten Fahrt für das Fahrzeug hinzugefügt wurde. In diesen Fällen sind die Fahrten exklusiv, aber sie werden nacheinander angeordnet. Außerdem können solche Fahrten bei Bedarf Zwischenziele umfassen.
Gemeinsame Fahrten
Bei einer geteilten Fahrt kann sich die Fahrtstrecke mit anderen Fahrtbuchungen überschneiden. Für diese Fahrttypen kann Ihr System ihnen zuordnen, dass sie gleichzeitig mit überlappenden Zielen stattfinden. So kann es beispielsweise sein, dass die Abfahrt einer Fahrt nach der Abfahrt einer anderen Fahrt erfolgt. Außerdem können für geteilte Fahrten keine Zwischenziele verwendet werden.
In der Regel verwenden Sie eine gemeinsame Fahrt für eines der Szenarien für die gemeinsame Nutzung, die im Abschnitt Fahrtszenarien dargestellt sind.
Wegpunkte für Fahrten
In Google Maps ist ein Wegpunkt ein Ort entlang einer Route, der in der Regel durch eine Breiten- und Längengradkoordinate definiert wird. Bei Fahrten auf Abruf wird ein Wegpunkt durch ein TripWaypoint
-Objekt dargestellt, das zusätzliche Informationen wie die folgenden enthält:
- Die Reise-ID
- Die
WaypointType
, entweder Start-, Zwischen- oder Zieladresse - Informationen zum Pfad und zur Entfernung zwischen dem vorherigen Wegpunkt der Fahrt und dem aktuellen
- Verkehrslage auf dem Weg zum Wegpunkt der Fahrt
- Reisezeit und voraussichtliche Ankunftszeit zum Wegpunkt der Fahrt
Weitere Informationen finden Sie in den folgenden Referenzen:
Arten von Wegpunkten für Fahrten
Ein Fahrtwegpunkt wird in Bezug auf den allgemeinen Lebenszyklus einer Fahrt definiert:
- Abholpunkt: Wird für den Startpunkt einer Fahrt verwendet, z. B. wenn ein Fahrer eine Essensbestellung für die anschließende Lieferung abholt oder eine Person für die spätere Abgabe abholt.
- Zwischenstopp: Ein Zwischenziel, das für verschiedene Zwecke verwendet werden kann, z. B. wenn ein Fahrer einen Fahrgast derselben Buchung absetzt, die Fahrt aber noch nicht beendet ist, da noch weitere Fahrgäste an Bord sind. Dieser Wegpunkt ist optional und kann nur für Fahrten mit exklusiver Nutzung verwendet werden.
- Abholpunkt: Wird für den Endpunkt der Fahrt verwendet, z. B. wenn der letzte Fahrgast das Fahrzeug verlässt.
Listen mit Wegpunkten für Fahrten
Eine Trip
-Entität enthält zwei Listen mit Wegpunkten, die jeweils ein wiederkehrendes Feld vom Typ TripWaypoint
sind. Eine Liste beschreibt die Felder, die für die Fahrt selbst erforderlich sind, die andere alle verbleibenden Wegpunkte für das mit der Fahrt verknüpfte Fahrzeug. So erhalten Sie ein vollständiges Bild aller Elemente der Fahrt: der Fahrt und der gesamten Fahrtstrecke.
- Verbleibende Wegpunkte für das Fahrzeug: Feld mit dem Namen
vehicle_waypoints
. Er enthält alle verbleibenden Wegpunkte für alle dem Fahrzeug zugewiesenen Fahrten. - Verbleibende Wegpunkte für die Fahrt: Ein Feld namens
remaining_waypoints
. Er enthält Wegpunkte, die das Fahrzeug in der richtigen Reihenfolge durchfahren muss, bevor es den letzten Zielort der Fahrt erreicht. Weitere Informationen finden Sie unter Reisebeispiele.- Bei einer Fahrt mit nur einem Ziel, die einem Fahrzeug zugewiesen ist, in dessen Fahrplan keine weiteren Fahrten enthalten sind, umfasst dies nur einen Start- und einen Zielort, vorausgesetzt, das Fahrzeug hat den Startpunkt nicht verlassen.
- Bei anderen Fahrten, bei denen das Fahrzeug auch für andere Fahrten geplant ist, umfassen die verbleibenden Wegpunkte für jede Fahrt in der Route alle Wegpunkte aus anderen Fahrten, die das Fahrzeug passieren muss, bevor es den Zielwegpunkt für diese Fahrt erreicht. Bei einer Fahrt nacheinander, bei der sich das Fahrzeug auf dem Weg zum Zielort der Fahrt A befindet, enthalten die verbleibenden Wegpunkte für Fahrt B den Zielpunkt der Fahrt A. Die Fleet Engine berechnet diese Informationen anhand des Felds
vehicle_waypoints
.
Siehe die Referenz für die Trip
-Entität: gRPC oder REST.
Fahrtszenarien
Die folgenden Diagramme veranschaulichen verschiedene unterstützte Fahrtszenarien. In diesen Szenarien hat nur die Fahrt mit geteiltem Pool den Typ SHARED
, alle anderen haben den Typ EXCLUSIVE
. Die Diagramme zeigen auch den Fahrtstatus und die verbleibenden Wegpunkte für das Fahrzeug, das die Fahrt durchführt. Diese Konzepte werden später in diesem Leitfaden beschrieben.
Fahrt mit nur einem Ziel
Eine Fahrt mit nur einem Ziel ist eine EXCLUSIVE
-Fahrt mit einem Start- und einem Zielort. Beispiel: Ein Fahrer holt einen Fahrgast an einem Ort ab und bringt ihn an einen anderen oder er holt eine Essensbestellung in einem Restaurant ab und bringt sie zu einem Kunden.
Fahrten mit mehreren Zielen
Eine Fahrt mit mehreren Zielen ist eine EXCLUSIVE
-Fahrt mit einem oder mehreren Zwischenzielen zwischen dem Abhol- und dem Zielort. Beispiel: Drei Fahrgäste buchen gemeinsam eine Fahrt über das Smartphone einer Person, haben aber jeweils ein anderes Ziel.
Fahrten nacheinander
Bei aufeinanderfolgenden Fahrten handelt es sich um EXCLUSIVE
-Fahrten, die eine Reihe unabhängiger Fahrten enthalten, die direkt nacheinander stattfinden. Jede Fahrt in der Kette kann ein oder mehrere Ziele haben. In diesem Szenario verpflichtet sich ein Fahrer, einen weiteren Kunden mitzunehmen, bevor er die aktuelle Fahrt beendet.
Diese Fahrten können nur Fahrzeugen zugewiesen werden, die eine aufeinanderfolgende Planung zulassen. Siehe Vehicle
REST- und gRPC-Referenz.
Fahrten mit Mitfahrgelegenheit
Eine Fahrt mit geteiltem Pool unterscheidet sich von den anderen Fahrttypen. Erstens muss es sich um eine SHARED
-Fahrt und nicht um eine EXCLUSIVE
-Fahrt handeln.
Hier führt das Fahrzeug die Fahrten gleichzeitig aus, nicht nacheinander wie bei Fahrten mit exklusiver Nutzung. Bei einer Fahrt mit Mitfahrgelegenheit wird zwar die Reiseroute mit anderen Fahrten geteilt, aber nicht die Abhol- und Absetzvorgänge. Stattdessen ist jede Fahrt eine exklusive Buchung, sodass der Endnutzer, der eine Fahrt gebucht hat, die Informationen zum Abhol- oder Zielort nur für seine eigene Fahrt sehen kann. Beispiel:
- Ein Flughafenshuttle holt verschiedene Kunden an ihrem Wohnort ab und bringt sie an verschiedenen Flughafenterminals entlang der Route ab. Person 2 kann Ihre Verbraucher-App verwenden, um den Fortschritt der Fahrt zu verfolgen. In ihrer App wird jedoch nur ihr Teil der Fahrt angezeigt, nicht, wo Person 1 abgeholt wurde oder wo sie abgesetzt wird, auch wenn sich Teile ihrer Fahrten überschneiden.
- Ein Lieferservicefahrer holt drei Bestellungen im selben Restaurant ab, um sie an verschiedene Kundenadressen zu liefern. Über Ihre App kann Person 3 sehen, wo und wann ihre Bestellung abgeholt wurde und welche Route der Fahrer gefahren ist. Die Lieferorte von Person 1 und Person 2 werden ihr jedoch nicht angezeigt.
Fahrtstatus und Lebenszyklus
In diesem Abschnitt werden der Fahrtstatus und seine Auswirkungen auf das Fahrzeug sowie verschiedene Szenarien beschrieben, die beim Zuweisen und Verwalten von Fahrten auf Abruf auftreten können.
Eine Fahrt durchläuft in der Regel verschiedene Status, vom Erstellen bis zum Abschluss. Grob gesagt kann eine Fahrt je nach Status aktiv oder inaktiv sein. Der Fahrtstatus wirkt sich auf eine Vielzahl von Anwendungsfällen mit Fleet Engine aus und ermöglicht es Ihnen, den Fortschritt des Fahrzeugs während der Fahrt zu verfolgen. Im Rest dieses Dokuments werden diese Szenarien erläutert.
In der folgenden Tabelle sind die Fahrtstatus nach aktiven und inaktiven Arten aufgeführt.
Status aktiver Fahrten | Inaktive Reisestatus |
---|---|
NEW UNKNOWN_TRIP_STATUS ENROUTE_TO_PICKUP ARRIVED_AT_PICKUP ENROUTE_TO_INTERMEDIATE_DESTINATION ARRIVED_AT_INTERMEDIATE_DESTINATION ENROUTE_TO_DROPOFF
|
COMPLETE CANCELED
|
Fahrtstatus und verbleibende Wegpunkte des Fahrzeugs
Wenn Sie einem Fahrzeug, das bereits eine Fahrt durchführt, zusätzliche Fahrten zuweisen, sollten Sie die Beziehung zwischen den verbleibenden Wegpunkten für das Fahrzeug und die Auswirkungen des Fahrtstatus auf diese verbleibenden Wegpunkte kennen.
Sie können beispielsweise eine neue Mitfahranfrage einem Fahrzeug zuweisen, das nur Fahrten mit einer einzelnen Person unterstützt und gerade eine Fahrt durchführt. In diesem Fall modellieren Sie die Fahrt als aufeinanderfolgende Fahrt. Wenn Sie eine solche Fahrt zuweisen, sollte Ihr System dafür sorgen, dass die Wegpunkte für die neue Fahrt nach den Wegpunkten für die laufende Fahrt kommen.
Während der Fahrt entfernt Fleet Engine einen vorherigen Wegpunkt der Fahrt nur dann aus der Liste der verbleibenden Wegpunkte des Fahrzeugs, wenn das Fahrzeug meldet, dass es sich auf dem Weg zum nächsten Ziel befindet oder die Fahrt abgeschlossen ist. Das sind:
- ENROUTE_TO_INTERMEDIATE_DESTINATION
- ENROUTE_TO_DROPOFF
- ABGESCHLOSSEN
Wenn sich der Fahrtstatus in COMPLETED
ändert, entfernt Fleet Engine den letzten Wegpunkt der Fahrt aus der Liste der verbleibenden Wegpunkte des Fahrzeugs.
Statusänderungen, die das Erreichen eines Wegpunkts anzeigen, haben dagegen in der Regel keine Auswirkungen auf die Liste der verbleibenden Wegpunkte für das Fahrzeug:
- ARRIVED_AT_PICKUP
- ARRIVED_AT_INTERMEDIATE_DESTINATION
- ARRIVED_AT_DROPOFF
Anhand eines Beispiels für eine Fahrt auf Abruf: Angenommen, der Fahrer holt einen Kunden von seinem Wohnort ab, bringt ihn zu einem Veranstaltungsort, wo er wartet, bis der Kunde eine Aufgabe erledigt hat, und bringt ihn dann zurück zu seinem Wohnort. Beim Erstellen hat die Fahrt drei Wegpunkte: PICKUP
, INTERMEDIATE
und DROPOFF
. Die folgende Tabelle zeigt die Ergebnisse einer Abfrage nach verbleibenden Wegpunkten in verschiedenen Status der Fahrt:
Fahrtstatus | Verbleibende Wegpunkte |
---|---|
ARRIVED_AT_PICKUP |
PICKUP INTERMEDIATE DROPOFF
|
ENROUTE_TO_INTERMEDIATE_DESTINATION |
PICKUP INTERMEDIATE DROPOFF
|
ARRIVED_AT_INTERMEDIATE_DESTINATION |
PICKUP INTERMEDIATE DROPOFF
|
ENROUTE_TO_DROPOFF |
PICKUP INTERMEDIATE DROPOFF
|
ARRIVED_AT_DROPOFF |
PICKUP INTERMEDIATE DROPOFF
|
COMPLETE |
PICKUP INTERMEDIATE DROPOFF |
Statusanforderungen für neu zugewiesene oder abgebrochene Fahrten
Bevor Sie eine der folgenden Aktionen ausführen können, müssen Sie den Fahrtstatus auf NEW
oder CANCELED
setzen.
- Beim Ändern der Fahrzeugzuweisungen für eine Fahrt Beispiel: Ein Fahrer lehnt eine Fahrzeugzuweisung für eine Fahrt ab und sie muss einem anderen Fahrzeug zugewiesen werden.
- Wenn Sie eine Fahrzeugzuweisung für eine Fahrt aufheben Wenn ein Fahrer beispielsweise eine Fahrt unterwegs storniert und Sie die Fahrzeugzuweisung löschen möchten, muss der Status entweder
NEW
oderCANCELED
sein.
Suchergebnisse nach Fahrtstatus
Wenn Sie den SearchTrips
-Dienst für ein bestimmtes Fahrzeug verwenden, wird die Liste der aktiven Fahrten in der SearchTripsResponse
zurückgegeben. Aktive Fahrten werden auch im Feld active_trips
der Entität Vehicle
angezeigt. Weitere Informationen finden Sie in der SearchTripsResponse
-Referenz: gRPC oder REST.
Daher werden alle Fahrten mit dem Status „Aktiv“ im Feld active_trips
angezeigt, abgeschlossene oder abgebrochene Fahrten jedoch nicht.