Ce document explique comment créer un trajet à destination unique, et l'attribuer à un véhicule à remplir. Nous partons du principe que vous avez configuré Fleet que vous avez créé des véhicules, que vous disposez d'une application de pilote opérationnelle, et éventuellement une application grand public. Pour en savoir plus, consultez les guides associés suivants:
Principes de base de la création de voyages
Cette section décrit les détails de la demande nécessaire à la création d'un trajet dans Fleet Engine. Vous pouvez émettre une requête de création à l'aide de gRPC et REST.
Champs de trajet
Utilisez les champs suivants pour créer un trajet dans Fleet Engine. Vous pouvez utiliser différentes pour les différents types de trajets: une seule ou plusieurs destinations, ou de pooling partagés. Toi vous pouvez renseigner les champs facultatifs lors de la création du voyage, ou vous pouvez les définir lorsque vous mettrez à jour le trajet.
Nom | Obligatoire ? | Description |
---|---|---|
parent | Oui | Chaîne incluant l'ID du projet. Cet ID doit être le même que celui utilisé sur l'ensemble de votre intégration Fleet Engine, avec le même compte de service de rôles. |
trip_id | Oui | Chaîne que vous créez et identifie ce trajet de manière unique. Les ID de trajet sont soumis à certaines restrictions, comme indiqué dans la documentation. |
trip_type | Oui | Définissez TripType sur les valeurs suivantes pour le type de voyage que vous créez:
<ph type="x-smartling-placeholder">
|
pickup_point | Oui | Point de départ du trajet. |
Destinations intermédiaires | Oui | Multi-destination trips only (Trajets multidestinations uniquement) : liste des destinations intermédiaires visitées par le conducteur entre le trajet
le retrait et le dépose. Comme pour |
vehicle_waypoints | Oui | Shared-pooling trips only (Trajets avec pooling partagé uniquement) : ce champ permet d'entrelacer les points de cheminement de plusieurs trajets.
Il contient tous les points de cheminement restants pour le véhicule attribué, ainsi que
comme points de cheminement de prise
en charge et de dépose pour ce trajet. Vous pouvez définir ce champ
en appelant |
number_of_passengers | Non | Nombre de passagers du voyage. |
dropoff_point | Non | Destination du voyage. |
vehicle_id | Non | Identifiant du véhicule attribué au trajet. |
Exemple: Trajet à destination unique
L'exemple suivant montre comment créer un trajet vers le Grand Indonesia East Mall. Le trajet implique deux passagers, est exclusif et son état est NEW
. La valeur provider_id
du trajet doit être identique à celle de l'adresse
l'ID du projet associé. Les exemples montrent un projet Google Cloud avec l'ID du projet
my-rideshare-co-gcp-project
Ce projet doit également inclure un compte de service
pour appeler Fleet Engine. Pour en savoir plus, consultez la section Rôles des comptes de service.
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;
}