Bu dokümanda, aşağıdakileri kullanarak sunucu ortamından nasıl araç oluşturacağınız açıklanmaktadır: gRPC veya REST olabilir. Aşağıdaki koşulları sağlayan Driver SDK'sından araç oluşturabilirsiniz: uygun kimlik bilgileri.
Araç oluşturmak amacıyla Sürücü SDK'sının nasıl kullanılacağını anlamak için aşağıdakileri inceleyin:
- Planlanmış görevler için Sürücü SDK'sı
- Fleet Engine Essentials altındaki hizmet hesabı rolleri.
Sunucu ortamından yeni bir araç oluşturmak için
Fleet Engine'e CreateDeliveryVehicle
isteği. Şunu kullanın:
CreateDeliveryVehicleRequest
nesnesini tanımlayacak yeni
teslimat aracı.
Planlı görev araçları için alanlar
DeliveryVehicle
oluştururken aşağıdaki isteğe bağlı alanları ayarlarsınız:
attributes
last_location
type
İsteğe bağlı alanlar ayarlamadan araç oluşturmak için
CreateDeliveryVehicleRequest
içindeki DeliveryVehicle
alanı kaldırıldı.
Araç örneği oluştur
Araç veya REST oluşturmak için Java gRPC kitaplığını kullanabilirsiniz.
Java
static final String PROJECT_ID = "my-delivery-co-gcp-project";
static final String VEHICLE_ID = "vehicle-8241890"; // Avoid auto-incrementing IDs.
DeliveryServiceBlockingStub deliveryService =
DeliveryServiceGrpc.newBlockingStub(channel);
// Vehicle settings
String parent = "providers/" + PROJECT_ID;
DeliveryVehicle vehicle = DeliveryVehicle.newBuilder()
.addAttributes(DeliveryVehicleAttribute.newBuilder()
.setKey("route_number").setValue("1")) // Opaque to the Fleet Engine
.build();
// Vehicle request
CreateDeliveryVehicleRequest createVehicleRequest =
CreateDeliveryVehicleRequest.newBuilder() // No need for the header
.setParent(parent)
.setDeliveryVehicleId(VEHICLE_ID) // Vehicle ID assigned by the Provider
.setDeliveryVehicle(vehicle)
.build();
// Error handling
// If Fleet Engine does not have vehicle with that ID and the credentials of the
// requestor pass, the service creates the vehicle successfully.
try {
DeliveryVehicle createdVehicle =
deliveryService.createDeliveryVehicle(createVehicleRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case ALREADY_EXISTS:
break;
case PERMISSION_DENIED:
break;
}
return;
}
REST
Sunucu ortamından araç oluşturmak için HTTP REST çağrısı yapın
Hedef: CreateDeliveryVehicle
:
POST https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles?deliveryVehicleId=<id>
POST gövdesi, oluşturulacak DeliveryVehicle
varlığını temsil eder. Şunları yapabilirsiniz:
aşağıdaki isteğe bağlı alanları belirtin:
attributes
lastLocation
type
# Set $JWT, $PROJECT_ID, and $VEHICLE_ID in the local
# environment
curl -X POST "https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryVehicles?deliveryVehicleId=${VEHICLE_ID}" \
-H "Content-type: application/json" \
-H "Authorization: Bearer ${JWT}" \
--data-binary @- << EOM
{
"attributes": [{"key": "model", "value": "sedan"}],
"lastLocation": {"location": {"latitude": 12.1, "longitude": 14.5}}
}
EOM
Herhangi bir alan ayarlamadan araç oluşturmak için POST gövdesini bırakın
boş bırakın. Yeni oluşturulan araç, daha sonra
deliveryVehicleId
parametresi eklemeniz gerekir.
Örnek:
# Set $JWT, $PROJECT_ID, and $VEHICLE_ID in the local
# environment
curl -X POST "https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryVehicles?deliveryVehicleId=${VEHICLE_ID}" \
-H "Content-type: application/json" \
-H "Authorization: Bearer ${JWT}"