Bu dokümanda, kampanyalarınızda kullanabileceğiniz önemli araç alanları araç oluştururken ve yönetirken güncellememiz gerekir.
|
Araç alanlarının tam listesi için bkz:
|
Araç durumu alanı
Sisteminiz, araç durumunu OFFLINE
veya ONLINE
olarak ayarlayabilir. Örneğin,
araç durumunu her gün 09:00'da ONLINE
ve her gün OFFLINE
olarak ayarlayabilirsiniz
17:00'de.
ÇEVRİMDIŞI modu | ÇEVRİMİÇİ modu |
---|---|
Aracın kabul etmediğini belirtmek için OFFLINE kullanın
yardımcı olabilir. Aracın, atanan gezileri tamamlamaya devam edebileceğini unutmayın.
bu durumda. |
|
Araç özellikleri alanı
Araç attributes
alanını kullanarak
müşterilerin veya filo operatörlerinin filonuzda bulunan araçları daha geniş bir
yardımcı olabilir. Bu da uygulamalarınızın aşağıdakileri yapma kapasitesini geliştirir:
arama ölçütlerini kullanarak elde edeceğinize kıyasla daha iyi araç eşleşmeleri sağlar
araç seti bulunuyor. Her araçta en fazla 100
özellikleri olmalı ve her birinin benzersiz bir anahtarı olmalıdır. Değerler dize olabilir,
booleler veya sayılar.
Örneğin, class adlı özel bir özellik tanımlayarak
araç paylaşımı araçlarınızı sınıf seviyelerinde birbirinden ayırın. Arama için
araç sınıfı seviyelerini temsil eden şu dize değerleri: ECONOMY
,
STANDARD
ve LUXURY
.
Bununla birlikte, özel özellik değerlerinin birbirini dışlamasına gerek yoktur. En son haberleri sunan, evcil hayvan dostu, sigara içmeyen ve daha uzun sürebilir seyahatleri hakkında daha fazla bilgi edinin. Bunların her biri, boole değerini kullanan ayrı birer değerler. Belirli bir araca bu özel özelliklerin üçü de atanabilir class özel özelliği ile birlikte uygun dize değerine ayarlanır.
Özelliklerin bu şekilde kullanılması, aşağıdakileri gerçekleştirmenize yardımcı olacak çok çeşitli özellikler sağlar: özel ihtiyaçları olan seyahatler için araç bulma. Nasıl yapıldığını anlatan özel özellikleri sorgu filtreleri olarak kullanmak için Araç arama bölümüne bakın.
Araç özelliklerini güncelleyin
Araç özelliklerini güncellemek için UpdateVehicle
veya
UpdateVehicleAttributes
. Her attributes
anahtarı her başına yalnızca bir değere sahip olabilir
araç. Özel araç özelliklerini attributes
kullanarak beyan ediyorsunuz
sonra aşağıdaki yönteme göre değerler sağlayarak.
UpdateVehicle |
UpdateVehicleAttributes |
|
---|---|---|
Bu API yalnızca tek bir özelliğin güncellenmesine izin vermez. Bunu kullanırken
attributes kullanımının herhangi bir şekilde
alanı, maskenin tamamını
araç için yeniden beyan edilen araç özellikleri. Bu,
açıkça eklenmeyen önceden var olan bir özelliğin üzerine yazmak
kullanabilirsiniz. Yeni bir özel özellik bildirmek için bu yöntemi kullanırsanız
aracın dönüşüm izleme özelliğini kullanmasını istediğiniz her özel özelliği de
elde eder. Alan maskesinde attributes öğesini hariç tutarsanız
Bu yöntem, mevcut özel özellikleri önceden tanımlandığı gibi bırakır
araçtan bahsediyoruz. Alan maskesinde attributes kullanırsanız
Ancak değer ayarlamadan bu, tüm özel
özelliklerini kullanabilirsiniz.
|
Bu yöntem güncelleyin. İstek yalnızca belirtilen özellikleri günceller veya ekler kullanabilirsiniz. Belirtilmemiş önceden var olan özellikler kalır korunabilir. |
Araç alanlarını güncelleme örneği
Bu bölümde, UpdateVehicleRequest
, araç çubuğu ve dönüşüm izleme gibi
Burada, hangi alanların güncelleneceğini belirten bir update_mask
bulunur. Bkz.
Ayrıntılı bilgi için alan maskeleriyle ilgili Protokol Arabellekleri dokümanlarına bakın.
last_location
dışındaki alanlarda yapılan güncellemeler için Fleet Engine On-İsteğe Bağlı
Yönetici ayrıcalıkları.
Örnek: yeni gezi türünü ve özel özelliği etkinleştirme
Bu örnekte, araç için back_to_back
seyahatleri etkinleştirilir ve ayrıca
yeni özellik: class
. Daha önce Araç özelliklerini güncelleme bölümünde belirtildiği gibi,
Bu yaklaşımı kullanarak attributes
alanını güncellemek için tüm
özel özellikleri seçin. Dolayısıyla, örnekte bir cash_only
bir güncelleme işlemi sırasında üzerine yazılmasını önlemek için yazılan değer
attributes
alanını belirten bir e-posta alırsınız.
Yalnızca bir anahtar/değer özellik çiftinin değerini güncellemek için
UpdateVehicleAttributes
yöntemini kullanın ve attribute
alanını eklemeyin
değerini girin.UpdateVehicle
gRPC ve REST için providers.vehicles.update
referansına bakın.
gRPC
static final String PROJECT_ID = "project-id";
static final String VEHICLE_ID = "vid-8241890";
VehicleServiceBlockingStub vehicleService = VehicleService.newBlockingStub(channel);
String vehicleName = "providers/" + PROJECT_ID + "/vehicles/" + VEHICLE_ID;
Vehicle updatedVehicle = Vehicle.newBuilder()
.setVehicleState(VehicleState.ONLINE)
.addAllAttributes(ImmutableList.of(
VehicleAttribute.newBuilder().setKey("class").setValue("ECONOMY").build(),
VehicleAttribute.newBuilder().setKey("cash_only").setValue("false").build()))
.setBackToBackEnabled(true)
.build();
UpdateVehicleRequest updateVehicleRequest = UpdateVehicleRequest.newBuilder()
.setName(vehicleName)
.setVehicle(updatedVehicle)
.setUpdateMask(FieldMask.newBuilder()
.addPaths("vehicle_state")
.addPaths("attributes")
.addPaths("back_to_back_enabled"))
.build();
try {
Vehicle updatedVehicle =
vehicleService.updateVehicle(updateVehicleRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND:
// Most implementations will call CreateVehicle in this case
break;
case PERMISSION_DENIED:
break;
}
return;
}
// If no Exception, Vehicle updated successfully.
REST
curl -X PUT \
"https://fleetengine.googleapis.com/v1/providers/project-id/vehicles/vid-8241890?updateMask=vehicle_state,attributes,back_to_back_enabled" \
-H "Authorization: Bearer $JWT" \
-H "Content-Type: application/json" \
--data-binary @- << EOM
{
"vehicleState": "ONLINE",
"attributes": [
{"key": "class", "value": "LUXURY"},
{"key": "cash_only", "value": "false"}
],
"backToBackEnabled": true
}
EOM