سرویس محاسبه زمان سفر، مدت زمان و مسافت سفر بین دو یا چند نقطه را تعیین میکند. مختصات جغرافیایی نقاط مبدا و مقصد به سرویس ارسال میشوند و سرویس در پاسخ مسافت و زمان سفر بین آنها را برمیگرداند. ترتیب ارائه زمان و فاصلهی هر سفر برابر با ترتیب نقاط در ورودی است. این سرویس نقطه اول را به عنوان اولین مبدا و نقطه دوم را به عنوان اولین مقصد در نظر میگیرد و زمان و مسافت سفر بین آنها محاسبه میکند. پس از آن زمان و مسافت سفر بین نقطه دوم و نقطه سوم را بهترتیب به عنوان مبدا و مقصد بعدی تعیین میکند به این ترتیب محاسبه فاصلهی زمانی و مکانی سفر بین نقاط تا آخرین جفت نقطه وارد شده ادامه مییابد.
محاسبه زمان سفر با وسیله نقلیه خودرو |
محاسبه زمان سفر با وسیله نقلیه موتورسیکلت |
محاسبه زمان سفر با احتساب ترافیک و یا بدون درنظر گرفتن ترافیک |
محاسبه زمان چندین سفر با وسیله نقلیه خودرو |
محاسبه زمان چندین سفر با وسیله نقلیه موتور سیکلت |
get/direction/eta?parameters
پارامتر | توضیحات |
---|---|
waypoints |
مجموعه نقاط مبدا و مقصد درخواستی را مشخص میکند. این نقاط با | از هم جدا میشوند. هر نقطه دارای طول و عرض جغرافیایی است و با , از هم تفکیک میشوند. این سرویس اولین ورودی را به عنوان مبدا اول و دومین ورودی به عنوان مقصد اول در نظر میگیرد و زمان و مسافت سفر بین آنها را محاسبه میکند. پس از آن نقطه دوم و سوم را به ترتیب به عنوان مبدا و مقصد بعدی در نظر میگیرد و فاصله زمانی و مکانی سفر بین آنها را تعیین میکند. این پیمایش تا آخرین جفت نقاط وارد شده ادامه مییابد. |
پارامترهای اختیاری آپشنها و امکانات مختلف سرویس را ارائه میدهند. ارسال آنها جهت استفاده از سرویس اجباری نیست.
پارامتر | توضیحات | مقدار پیشفرض |
---|---|---|
travel_mode |
نوع وسیله نقلیه را مشخص میکند. این سرویس قابلیت انتخاب وسایل نقلیه خودرو و موتورسیکلت را دارد. درصورتیکه مقدار این پارامتر driving یا 0 باشد و یا مقداری برای آن وارد نشده باشد تخمین زمانی برای ماشین و اگر 1 یا motorcycling باشد تخمین زمانی برای موتور است. |
پیشفرض وسیله نقلیه خودرو (driving ) است. |
traffic |
احتساب و یا عدم احتساب ترافیک در تعیین زمان سفر را تعیین میکند. درصورت درخواست کردن محاسبه زمان سفر با در نظر گرفتن ترافیک، مقدار این پارامتر باید true باشد. در صورت درخواست کردن تعیین زمان سفر بدون در نظر گرفتن ترافیک، مقدار این پارامتر باید به false تغییر یابد. |
پیشفرض، عدم درنظرگرفتن ترافیک (false ) در محاسیه زمان سفر است. |
request_id |
در صورت ست شدن پارامتر فوق، به صورت یکتا در روز میتوان برای پیگیری استفاده نمود. | به صورت پیشفرض، عدم پیگیری در روز است. |
با ارسال مختصات جغرافیایی نقطه مبدا و مقصد، زمان و مسافت سفر بین این دو نقطه در پاسخ برگردانده میشوند.
https://api.parsimap.ir/direction/eta?key=PMI_API_TOKEN&waypoints=51.33769,35.69971|51.34034,35.69687&travel_mode=driving&traffic=true
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۳ ثانیه", "value": 193 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } } ], "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۳ ثانیه", "value": 193 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 }, "status": "OK" }
پارامتر | توضیحات |
---|---|
legs |
مشخصات سفر بین هر جفت نقطه ورودی است. legs شامل بخشهای است که هر بخش خود شامل مسافت، زمان و مختصات نقطه شروع و پایان سفر برای هر دو نقطه تعیین شده در ورودی است. ترتیب این بخشها برابر با ترتیب وارد کردن نقاط در ورودی است، مسافت و زمان هر بخش نشان دهنده مسافت و زمان بین بخش قبل و نقطهی مقصد بعدی است. به این صورت که فاصله زمانی و مکانی بین نقطه اول و دوم وارد شده و سپس فاصله زمانی و مکانی نقطه دوم و سوم و به همین ترتیب تا جفت نقطه انتهایی در خروجی آورده میشود.text ) و حرفی (value ) فاصلهی بین دو نقطه بر حسب متر است.text ) و حرفی (value ) فاصلهی بین دو نقطه بر حسب متر است. |
distance |
مسافت کلی سفر بین اولین نقطه ورودی (اولین مبدا) تا آخرین نقطه ورودی (آخرین مقصد) است. واحد اندازه گیری آن متر است. خروجی به دو صورت مقدار عددی (text ) و مقدار حرفی (value ) نشان داده میشود. |
duration |
این پارامتر زمان کلی سفر بین اولین نقطه ورودی (اولین مبدا) تا آخرین نقطه ورودی (آخرین مقصد) است. واحد اندازه گیری آن ثانیه است. خروجی به دو صورت مقدار عددی (text ) و مقدار حرفی (value ) نشان داده میشود. |
start_location |
مختصات جغرافیایی نقطه شروع است. مختصات این نقطه برابر است با مختصات اولین نقطهای که کاربر وارد کرده است. |
end_location |
مختصات نقطه پایانی سفر است. مختصات این نقطه برابر است با مختصات آخرین نقطهای که کاربر وارد کرده است. |
status |
نتیجه درخواست را نشان میدهد. برای مثال نتیجه این درخواست OK است که به معنی موفق بودن درخواست است. نتیجه پاسخ به درخواست ارسالی توسط کاربر در قالب جدول زیر ارائه شده است: جدول |
با ارسال مختصات جغرافیایی نقاط مبدا و مقصد، زمان و مسافت سفر بین نقاط در پاسخ ارسال میگردد.
https://api.parsimap.ir/direction/eta?key=PMI_API_TOKEN&waypoints=51.33769,35.69971|51.34034,35.69687|51.33108,35.69630&travel_mode=driving&traffic=true
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۹ ثانیه", "value": 199 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } }, { "distance": { "text": "۵ کیلومتر ۹۶۵ متر", "value": 5965 }, "duration": { "text": "۱۰ دقیقه ۵۴ ثانیه", "value": 654 }, "start_location": { "lat": 35.69687, "lng": 51.34034 }, "end_location": { "lat": 35.6963, "lng": 51.33108 } } ], "distance": { "text": "۷ کیلومتر ۲۳۱ متر", "value": 7231 }, "duration": { "text": "۱۴ دقیقه ۱۳ ثانیه", "value": 853 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.6963, "lng": 51.33108 }, "status": "OK" }
با ارسال مختصات جغرافیایی نقاط مبدا و مقصد، مسافت و زمان سفر بین نقاط بدون در نظر گرفتن ترافیک در پاسخ ارسال میگردد.
https://api.parsimap.ir/direction/eta?key=PMI_API_TOKEN&waypoints=51.33769,35.69971|51.34034,35.69687|51.37377, 35.71307 &travel_mode=driving&request_id=0123456789&traffic=false
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۲ دقیقه ۳۶ ثانیه", "value": 156 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } }, { "distance": { "text": "۴ کیلومتر ۷۱۸ متر", "value": 4718 }, "duration": { "text": "۷ دقیقه ۱۹ ثانیه", "value": 439 }, "start_location": { "lat": 35.69687, "lng": 51.34034 }, "end_location": { "lat": 35.71307, "lng": 51.37377 } } ], "travel_mode": "driving", "distance": { "text": "۵ کیلومتر ۹۸۴ متر", "value": 5984 }, "duration": { "text": "۹ دقیقه ۵۵ ثانیه", "value": 595 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.71307, "lng": 51.37377 }, "status": "OK" }
با ارسال مختصات جغرافیایی نقطه مبدا و مقصد و تعیین وسیله نقلیه موتورسیکلت، زمان و مسافت سفر بین این دو نقطه در پاسخ ارسال برگردانده میشوند.
https://api.parsimap.ir/direction/eta?key=PMI_API_TOKEN&waypoints=51.33769,35.69971|51.34034,35.69687&travel_mode=motorcycling
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۳ ثانیه", "value": 193 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } } ], "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۳ ثانیه", "value": 193 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 }, "status": "OK" }
با ارسال مختصات جغرافیایی نقاط مبدا و مقصد و تعیین وسیله نقلیه موتورسیکلت، زمان و مسافت سفر بین این نقاط در پاسخ برگردانده میشوند.
https://api.parsimap.ir/direction/eta?key=PMI_API_TOKEN&waypoints=51.33769,35.69971|51.34034,35.69687|51.33108,35.69630&travel_mode=motorcycling
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۱۲ ثانیه", "value": 192 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } }, { "distance": { "text": "۵ کیلومتر ۹۶۵ متر", "value": 5965 }, "duration": { "text": "۱۰ دقیقه ۳۱ ثانیه", "value": 631 }, "start_location": { "lat": 35.69687, "lng": 51.34034 }, "end_location": { "lat": 35.6963, "lng": 51.33108 } } ], "distance": { "text": "۷ کیلومتر ۲۳۱ متر", "value": 7231 }, "duration": { "text": "۱۳ دقیقه ۴۳ ثانیه", "value": 823 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.6963, "lng": 51.33108 }, "status": "OK" }
پارامترهای سرویس به صورت POST
ارسال میگردند. برای ارسال درخواست با استفاده از متد POST
پارامتر headers
باید به صورت زیر تعیین شود.
"Content-Type": "application/x-www-form-urlencoded"
var request = require("request"); var options = { "method": "POST", "url": "https://api.parsimap.ir/direction/eta?key=8b0f0df5e64140bd9bbd110f9725036e", "headers": { "Content-Type": "application/x-www-form-urlencoded" }, form: { "waypoints": "51.33769,35.69971|51.34034,35.69687|51.33108,35.69630", "travel_mode": "driving" } }; request(options, function (error, response) { if (error) throw new Error(error); console.log(response.body); });
{ "legs": [ { "distance": { "text": "۱ کیلومتر ۲۶۶ متر", "value": 1266 }, "duration": { "text": "۳ دقیقه ۲۲ ثانیه", "value": 202 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.69687, "lng": 51.34034 } }, { "distance": { "text": "۵ کیلومتر ۹۶۵ متر", "value": 5965 }, "duration": { "text": "۱۰ دقیقه ۵۳ ثانیه", "value": 653 }, "start_location": { "lat": 35.69687, "lng": 51.34034 }, "end_location": { "lat": 35.6963, "lng": 51.33108 } } ], "distance": { "text": "۷ کیلومتر ۲۳۱ متر", "value": 7231 }, "duration": { "text": "۱۴ دقیقه ۱۵ ثانیه", "value": 855 }, "start_location": { "lat": 35.69971, "lng": 51.33769 }, "end_location": { "lat": 35.6963, "lng": 51.33108 }, "status": "OK" }