İsteğe bağlı geziler için araç oluşturun

İsteğe bağlı geziler için Fleet Engine'de araç oluşturmak istiyorsanız CreateVehicle kullanın. CreateVehicleRequest ile uç nokta. Bu uç nokta, aşağıdaki özelliklere sahip bir hesap gerektirir: Fleet Engine On-İsteğe Bağlı Yöneticisi rolüne sahip olmanız gerekir.

Talep üzerine seyahat araçları için alanlar

Talep üzerine seyahatler için araç oluştururken zorunlu alanları ayarlamanız gerekir. Ayrıca, belirli araç alanlarının Fleet Engine'daki diğer işlevleri nasıl etkilediği hakkında bilgi sahibi olmanız gerekir. Bunun için Araç alanlarını güncelleme başlıklı makaleyi inceleyin.

İsteğe bağlı geziler için zorunlu alanlar

  • vehicle_state: Varsayılan olarak bilinmiyor değerine ayarlanır, ancak ÇEŞİTLİ veya ÇEŞİTLİ olarak ayarlanmalıdır. ÇEVRİMDIŞI. Araç durumu alanını ayarlama hakkında bilgi için Araç alanlarını güncelleme başlıklı makaleyi inceleyin.
  • supported_trip_types: Varsayılan olarak bilinmiyor değerine ayarlanır, ancak PAYLAŞILAN, ÖZEL veya her ikisi. Ayrıntılar için Seç-iste seyahatler kılavuzundaki Seyahat türleri bölümüne bakın.
  • maximum_capacity: Aracın taşıyabileceği yolcu sayısı, dahil edilir.
  • vehicle_type: Değerler AUTO, TAXI, TRUCK, TWO_WHEELER, BICYCLE veya PEDESTRIAN'dir. Araçlar için araçları filtrelemek amacıyla kullanılabilir gösterir. Bu durum, tahmini varış zamanı ve rota hesaplamalarını da etkiler. Filo Motoru hareket moduna karşılık gelen rota ve seyahat hesaplamaları sağlar aşağıdaki araç türü gruplarına göre seyahat edebilir:
    • AUTO, TAXI veya TRUCK: Örneğin, otoyollar.
    • TWO_WHEELER: Örneğin, 2 tekerlekli araç kullanan kişilerin bulunmadığı rotalar döndürülmez izin verilir.
    • BICYCLE: örneğin, bisiklet yolları.
    • PEDESTRIAN: örneğin, yayalara özel köprüler ve yaya yolları.

Diğer alanlar

Araç oluştururken ayarlayabileceğiniz diğer alanlar için Aracı güncelleme konusuna bakın. alanları hakkında daha fazla bilgi edinin.

Araç oluşturma örneği

CreateVehicle öğesinden döndürülen değer, oluşturulan Vehicle öğesidir.

Java

static final String PROJECT_ID = "project-id";

VehicleServiceBlockingStub vehicleService =
    VehicleService.newBlockingStub(channel);

String parent = "providers/" + PROJECT_ID;
Vehicle vehicle = Vehicle.newBuilder()
    .setVehicleState(VehicleState.OFFLINE)  // Initial state
    .addSupportedTripTypes(TripType.EXCLUSIVE)
    .setMaximumCapacity(4)
    .setVehicleType(VehicleType.newBuilder().setCategory(VehicleType.Category.AUTO))
    .addAttributes(VehicleAttribute.newBuilder()
        .setKey("on_trip").setValue("false"))  // Opaque to the Fleet Engine
    // Add .setBackToBackEnabled(true) to make this vehicle eligible for trip
    // matching while even if it is on a trip.  By default this is disabled.
    .build();

CreateVehicleRequest createVehicleRequest =
    CreateVehicleRequest.newBuilder()  // no need for the header
        .setParent(parent)
        .setVehicleId("vid-8241890")  // Vehicle ID assigned by Rideshare or Delivery Provider
        .setVehicle(vehicle)  // Initial state
        .build();

// In this case, the Vehicle is being created in the OFFLINE state and
// no initial position is being provided.  When the Driver App checks
// in with the Rideshare or Delivery Provider, the state can be set to ONLINE and
// the Driver App will update the Vehicle Location.

try {
  Vehicle createdVehicle =
      vehicleService.createVehicle(createVehicleRequest);
} catch (StatusRuntimeException e) {
  Status s = e.getStatus();
  switch (s.getCode()) {
    case ALREADY_EXISTS:
      break;
    case PERMISSION_DENIED:
      break;
  }
  return;
}
// If no Exception, Vehicle created successfully.

REST

curl -X POST \
  "https://fleetengine.googleapis.com/v1/providers/project-id/vehicles?vehicleId=vid-8241890" \
  -H "Authorization: Bearer $JWT" \
  -H "Content-Type: application/json" \
  --data-binary @- << EOM
{
    "vehicleState": "OFFLINE",
    "supportedTripTypes": ["EXCLUSIVE"],
    "maximumCapacity": 4,
    "vehicleType": {"category": "AUTO"},
    "attributes": [{"key": "on_trip", "value": "false"}]
}
EOM

providers.vehicles.create referansını inceleyin.

Sırada ne var?