Я ищу конкретную функцию из службы Map Routing API.
Проведя небольшое исследование, я обнаружил, что API Google Directions не предоставляет все функции, которые мне требуются от этого сервиса.
Кто-нибудь нашел/знает о жизнеспособном/потенциальном решении, которое я мог бы дополнительно исследовать?
Необходимые функции API
- Чтобы иметь возможность указать время и продолжительность прибытия для отдельных путевых точек направления движения.
- Если время прибытия не указано, путевая точка будет обрабатываться динамически для оптимизации.
- Это позволит создать оптимизированный маршрут, но с некоторыми путевыми точками, имеющими определенное время встречи.
Пример случая
- У пользователя есть в общей сложности 6 путевых точек в повестке дня за один день.
- Одна встреча имеет определенное время прибытия в 13:00.
- Все остальные встречи не являются критичными по времени и могут генерироваться динамически по наиболее эффективному и оптимизированному маршруту.
В настоящее время поддерживается
- There is a similar feature in the Google Directions API called
ARRIVAL_TIME
. Which appears to be unavailable for driving directions. https://developers.google.com/maps/documentation/directions/intro#RequestParametersdeparture_time
— Specifies the desired time of departure. You can specify the time as an integer in seconds since midnight, January 1, 1970 UTC. Alternatively, you can specify a value of now, which sets the departure time to the current time (correct to the nearest second). The departure time may be specified in two cases:For transit directions:
You can optionally specify one of departure_time or arrival_time. If neither time is specified, the departure_time defaults to now (that is, the departure time defaults to the current time).For driving directions:
Клиенты Google Maps API for Work могут указать время отправления, чтобы получить продолжительность поездки с учетом текущих условий движения. Время отправления должно быть установлено в пределах нескольких минут от текущего времени.
arrival_time
— Specifies the desired time of arrival for transit directions, in seconds since midnight, January 1, 1970 UTC. You can specify either departure_time or arrival_time, but not both. Note that arrival_time must be specified as an integer.- Unfortunately this feature is only available for MASS TRANSIT and not for DRIVING INSTRUCTIONS.
Другие технологии API
- Routific — эти ребята предлагают точную реализацию API, которая нам нужна.
- https://docs.routific.com/docs/input - The VISITS object appears to do exactly what I need.
- The visits object is a hash of each visit and their properties, where the key is the visit ID. Each visit object has to contain a location object with the geographic coordinates. Note that the name parameter in the location object is optional.
- Каждое посещение может иметь ограничение по временному окну, определяемое началом и концом. Временные окна необязательны; когда они не предусмотрены, это подразумевает, что подойдет любое время. Вы также можете сказать «в любое время после 9 утра», установив время начала на 9:00 и опустив параметр окончания. Продолжительность указывает, сколько минут занимает посещение. Если доставка занимает 30 минут и указано временное окно с 12:00 до 13:00, алгоритм позаботится о том, чтобы вы прибыли не позднее 12:30.