หากต้องการสร้างยานพาหนะใน Fleet Engine สำหรับการเดินทางแบบออนดีมานด์ ให้ใช้ปลายทาง CreateVehicle
 กับ CreateVehicleRequest ปลายทางนี้ต้องใช้บัญชีที่มีบทบาทผู้ดูแลระบบ Fleet Engine สำหรับบริการแบบออนดีมานด์
ฟิลด์สำหรับยานพาหนะที่ใช้ในการเดินทางแบบออนดีมานด์
เมื่อสร้างยานพาหนะสำหรับการเดินทางแบบออนดีมานด์ คุณต้องตั้งค่าฟิลด์ที่จำเป็น นอกจากนี้ คุณควรทราบว่าฟิลด์ยานพาหนะบางรายการส่งผลต่อฟังก์ชันอื่นๆ ใน Fleet Engine อย่างไร ดูข้อมูลดังกล่าวได้ที่อัปเดตฟิลด์ยานพาหนะ
ฟิลด์ที่ต้องระบุสำหรับการเดินทางตามต้องการ
- vehicle_state: ค่าเริ่มต้นคือไม่ทราบ แต่ควรตั้งค่าเป็น ONLINE หรือ OFFLINE ดูข้อมูลเกี่ยวกับการตั้งค่าฟิลด์สถานะของยานพาหนะได้ที่อัปเดต ฟิลด์ยานพาหนะ
- supported_trip_types: ค่าเริ่มต้นคือไม่รู้จัก แต่ควรตั้งค่าเป็น SHARED, EXCLUSIVE หรือทั้ง 2 อย่าง ดูรายละเอียดได้ที่ประเภทการเดินทางในคำแนะนำเกี่ยวกับการเดินทางตามความต้องการ
- maximum_capacity: จำนวนผู้โดยสารที่ยานพาหนะรับได้ ซึ่งไม่รวมคนขับ (ตามคำจำกัดความ)
- vehicle_type: ค่าคือ- AUTO,- TAXI,- TRUCK,- TWO_WHEELER,- BICYCLEหรือ- PEDESTRIANใช้เพื่อกรองยานพาหนะสำหรับการค้นหายานพาหนะได้ ซึ่งยังส่งผลต่อการคำนวณเวลาถึงโดยประมาณและเส้นทางด้วย Fleet Engine จะให้เส้นทางและการคำนวณการเดินทางที่สอดคล้องกับโหมดการเดินทาง โดยอิงตามกลุ่มประเภทรถต่อไปนี้- AUTO,- TAXIหรือ- TRUCK: เช่น ทางหลวง
- TWO_WHEELER: เช่น จะไม่แสดงเส้นทางที่ไม่อนุญาตให้ใช้ยานพาหนะ 2 ล้อ
- BICYCLE: เช่น เส้นทางจักรยาน
- PEDESTRIAN: เช่น สะพานและทางเดินสำหรับคนเดินเท้าเท่านั้น
 
ฟิลด์อื่นๆ
ดูช่องอื่นๆ ที่คุณตั้งค่าได้เมื่อสร้างยานพาหนะได้ที่อัปเดตฟิลด์ ยานพาหนะ
ตัวอย่างการสร้างยานพาหนะ
ค่าที่แสดงผลจาก CreateVehicle คือเอนทิตี Vehicle ที่สร้างขึ้น
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