Чтобы создать транспортное средство в Fleet Engine для поездок по запросу, используйте конечную точку CreateVehicle с CreateVehicleRequest. Для этой конечной точки требуется аккаунт с ролью Fleet Engine On-demand Admin (Администратор Fleet Engine по запросу).
Поля для транспортных средств, используемых для поездок по запросу
При создании автомобилей для поездок по запросу необходимо заполнить обязательные поля. Вы также должны знать, как определенные поля транспортных средств влияют на другие функции Fleet Engine. Подробнее о том, как изменить поля транспортного средства…
Обязательные поля для поездок по запросу
vehicle_state: по умолчанию имеет значение "неизвестно", но должно быть установлено значение "онлайн" или "офлайн". Подробнее о том, как задать поле состояния транспортного средства…supported_trip_types– по умолчанию используется значение "Неизвестно", но должно быть задано значение "Общий", "Эксклюзивный" или оба. Подробнее о типах поездок рассказывается в руководстве по поездкам по запросу.maximum_capacity– количество пассажиров, которых может перевозить транспортное средство (без учета водителя).vehicle_type: значенияAUTO,TAXI,TRUCK,TWO_WHEELER,BICYCLEилиPEDESTRIAN. Можно использовать для фильтрации автомобилей при поиске. Это также влияет на расчетное время прибытия и расчет маршрута. Fleet Engine предоставляет маршруты и расчеты поездок, которые соответствуют режиму поездки на основе следующих групп типов транспортных средств:AUTO,TAXIилиTRUCK, например шоссе.TWO_WHEELER: например, не будут возвращаться маршруты, на которых запрещено движение двухколесных транспортных средств.BICYCLE, например велосипедные дорожки.PEDESTRIAN, например пешеходные мосты и дорожки.
Другие поля
Информацию о других полях, которые можно задать при создании автомобиля, можно найти в разделе Обновление полей автомобиля.
Пример создания транспортного средства
Чтобы создать транспортное средство, можно использовать библиотеку gRPC для Java или REST. Полный список поддерживаемых языков приведен в статье Клиентские библиотеки для сервисов поездок по запросу.
Значение, возвращаемое из 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.