Ön ayarların kullanılması
Ön ayar, belirli bir senaryoyu veya planlama stratejisini uygulamak için bir dizi ayardır. Ön ayarlar RouteQ tarafında saklanır.
Ön ayarlar, JSON biçiminde parametreler ve değerlerini içerir. Ön ayarlarda API sorguları ile aynı öznitelikleri ve seçenekler kullanır. API sorgusunda, uygulanan ön ayarların adlarını (benzersiz tanımlayıcılar) belirtebilirsiniz. Böyle bir sorguyu yürüttüğünüzde, belirtilen ön ayarlardaki ayarlar sorguya gömülür (bkz. Ön ayarları bir sorguya dahil etmenin özellikleri).
Ön ayar kullanmanın avantajları:
- Ön ayarlar yardımıyla farklı planlama senaryoları tanımlanabilir (örneğin yüksek veya düşük talep koşulları, farklı depolar, hafta içi veya hafta sonu için).
- Ön ayarlar yeniden kullanılabilir, bu da rota planlaması için API sorgularını oluşturmayı) hızlandırır ve kolaylaştırır.
Her ön ayar aşağıdaki türlerde olabilir:
depot
– depo ayarları,location
– sipariş ayarları,vehicle
– kurye veya araç ayarları,vehicle-shift
– kurye değiştirme ayarları,options
– küresel seçenekler.
Belirli bir türdeki bir ön ayar yalnızca ilgili API sorgu alanına dahil edilebilir. API istek alanı bir diziyse ve birden fazla öğe içeriyorsa, her öğe farklı bir ön ayara bağlantı içerebilir. Bununla birlikte, bir nesne yalnızca bir ön ayara bağlantı içerebilir.
Ön ayarlı API sorgu yapısı
{
"depots": [
{
"id": "depot1",
"preset_id": "depot_preset_1",
...
},
],
"locations": [
{
"id": "order1",
"preset_id": "location_preset_1",
...
},
{
"id": "order2",
"preset_id": "location_preset_2",
...
},
...
],
"vehicles": [
{
"id": "vehicle1",
"preset_id": "vehicle_preset_1",
...
"shifts": [
{
"id": "0",
"preset_id": "vehicle-shift_preset_fo",
...
},
...
],
},
...
],
"options": {
"preset_id": "options_preset_id",
...
}
}
Bir ön ayara bağlantı içeren bir API sorgusu alındığında, algoritma ön ayardaki parametre değerlerini istek metnine yerleştiriyor. Uygulanan tüm ön ayarların tanımlayıcıları ayrı bir API yanıt nesnesinde iletilir.
Ön ayarlarda kullanılamayacak alanlar
- depot:
address
description
id
point
ref
title
- location:
address
client_id
comments
delivery_to
delivery_to_any
depot_id
description
id
phone
pickup_from_any
point
ref
title
type
- vehicle:
depot_id
ending_depot_id
finish_at
fixed_planned_route
global_proximity_attraction_point
id
imei
fixed_work_breaks
middle_depot_id
phone
planned_route
ref
shifts
start_at
starting_depot_id
visited_locations
- vehicle-shift:
id
- options:
date
location_groups
Herkese açık ön ayarlar
Herkese açık ön ayarlar tüm şirketler tarafından kullanılabilir, ancak düzenlenemezler.
Herkese açık ön ayarlar, aynı ada sahip ancak farklı türlere ait birkaç parçadan oluşur – nesneler için depots
, locations
, vehicles
, vehicles.shifts
, options
. Ön ayarın tüm parçaları birlikte kullanılmalıdır, bunları ayrı ayrı kullanmak verimsizdir.
Herkese açık ön ayarlar belirli senaryolar için tasarlanmıştır. Ayarları çok sayıda görevden alınmıştır ve çoğu durumda çözümün optimize edilmesini sağlar. Bu, belirli bir görev için sonucu daha da iyileştirecek parametrelerin seçilmesine engel değildir.
Hizmette şu anda herkese açık bir ön ayar var public_minimize_mileage
, içindeki ayarlar mesafeyi en aza indirmeye odaklanıyor.
Ön ayarları bir sorguya dahil etmenin özellikleri
Eğer aynı parametre hem bir ön ayarda hem de bir kullanıcı sorgusunda tanımlanmışsa, kullanıcıdan gelen değere öncelik verilir. Bununla birlikte parametre tüm içine dahil edilmiş alanlarıyla birlikte tek bir yapı olarak kullanılır.
Örneğin, bir kullanıcı sorgusunda penalty.early
parametresi iletiliyorsa ve bunun yanında penalty.late
parametresi tanımlanmış bir ön ayar kullanılıyorsa, sonuç sorgusuna kullanıcıdan penalty
parametresi dahil edilecek ve ön ayardaki tüm içine dahil edilmiş alanlar penalty
iptal edilecektir.
Ön ayar nasıl oluşturulur
Ön ayarlarla API yöntemleri kullanarak çalışılabilir.
Not
Ad, aynı türdeki ön ayarlar için benzersiz olmalıdır. public_
ile başlayamaz ve virgül karakteri içeremez.
Ön ayarları oluştururken veya kullanırken sorun yaşıyorsanız destek ekibiyle iletişime geçin.
Herkese açık ön ayarların kullanılması
Dizindeki ön ayarları ve herkese açık ön ayarları kullanmak için yetkilendirme ile mvrp kaynağına bir sorgu gönderin:
curl -H "Content-Type: application/json" -H "Authorization: OAuth belirteciniz" -X POST -d <istek metni> https://courier.yandex.ru/api/v1/vrs/add/mvrp
Authorization: OAuth belirteciniz
başlı altında belirteciniz
yerine, Takip ile çalışmak için alınan OAuth-belirteciniz ögesini belirtin.
Dikkat
Yetkilendirme isteğindeki yol (OAuth belirteçli), spesifikasyonda belirtilen yoldan (API anahtarlı) farklıdır.