トラックルートにドライバースケジュールを追加
このパラメータdriver[schedule]
は、ドライバーが予定された休憩を取る必要があるルートを計算する場合に役立ちます。 パラメータ値は、最大許容ドライブ期間と 休憩期間を交互に示す、コンマで区切られた期間のリスト(秒単位)です。
たとえば、ドライバーが 4.5 時間のドライブを希望するルートを作成し、 30 分間休憩を取り、さらに 4.5 時間のドライブと 11 時間の休憩を待っているとします。 このようなシーケンスは、driver[schedule]=16200,1800,16200,39600
としてエンコード されます。
上記の例では、ルートが少なくとも 2 つのセクションに分割され、ドライブ時間が16200
秒に近い状態になります。 各セクションには、休憩時間 (1800
および39600
) と等しい長さのwait
ポストアクションがあります
{
"postActions" : [
{
"action" : "wait",
"duration" : 1800
}
]
}
ルートの移動時間がスケジュール内の合計運転時間を超える場合、スケジュールされた運転時間の後のセクション (ルート計画に via
ウェイポイントがある場合は複数のセクション) が wait
のアクションを行わずに追加されますが、 通知 travelTimeExceedsDriverWorkHours
が含まれています。
リクエストとレスポンスの例。 ルートはスケジュールに従って分割されます。
curl -X GET 'https://router.hereapi.com/v8/routes?apikey={YOUR_API_KEY}&origin=37.409438,-6.043584&destination=43.574211,1.424529&return=polyline,summary,actions,instructions&transportMode=truck&driver[schedule]=16200,1800,16200,39600'
{
"routes" : [
{
"id" : "7b316838-eaba-49b7-9419-ddce4c97162a",
"sections" : [
{
"arrival" : {
"place" : {
"location" : {
"lat" : 40.36571,
"lng" : -5.83282
},
"type" : "place"
}
},
"departure" : {
"place" : {
"location" : {
"lat" : 37.4031659,
"lng" : -5.9855658
},
"originalLocation" : {
"lat" : 37.4031999,
"lng" : -5.9857921
},
"type" : "place"
}
},
"id" : "99b4e3f6-cdd9-4e52-a4ed-3f15423a8fba",
"postActions" : [
{
"action" : "wait",
"duration" : 900
}
],
"summary" : {
"baseDuration" : 16871,
"duration" : 16871,
"length" : 380112
},
"transport" : {
"mode" : "truck"
},
"travelSummary" : {
"baseDuration" : 15971,
"duration" : 15971,
"length" : 380112
},
"type" : "vehicle"
},
{
"arrival" : {
"place" : {
"location" : {
"lat" : 42.65055,
"lng" : -3.07539
},
"type" : "place"
}
},
"departure" : {
"place" : {
"location" : {
"lat" : 40.36571,
"lng" : -5.83282
},
"type" : "place"
}
},
"id" : "7aff75f1-fe0a-4a5b-b4d5-32757101aa62",
"postActions" : [
{
"action" : "wait",
"duration" : 39600
}
],
"summary" : {
"baseDuration" : 55576,
"duration" : 55576,
"length" : 389440
},
"transport" : {
"mode" : "truck"
},
"travelSummary" : {
"baseDuration" : 15976,
"duration" : 15976,
"length" : 389440
},
"type" : "vehicle"
},
{
"arrival" : {
"place" : {
"location" : {
"lat" : 43.5581371,
"lng" : 1.3858864
},
"originalLocation" : {
"lat" : 43.558096,
"lng" : 1.3858439
},
"type" : "place"
}
},
"departure" : {
"place" : {
"location" : {
"lat" : 42.65055,
"lng" : -3.07539
},
"type" : "place"
}
},
"id" : "721c295d-3b7c-48b7-98ab-bd5e314e71b8",
"notices" : [
{
"code" : "travelTimeExceedsDriverWorkHours",
"severity" : "critical",
"title" : "Travel time exceeds maximum scheduled driver time"
}
],
"summary" : {
"baseDuration" : 20882,
"duration" : 20882,
"length" : 485031
},
"transport" : {
"mode" : "truck"
},
"travelSummary" : {
"baseDuration" : 20882,
"duration" : 20882,
"length" : 485031
},
"type" : "vehicle"
}
]
}
]
}