Геонастройки / Routing
Приложение поставляется с предустановленными геофайлами, что обеспечивает его готовность к работе сразу после установки. Актуальность геофайлов поддерживается обновлением версии ядра внутри приложения.
Добавление правил маршрутизации
Приложение позволяет добавлять правила маршрутизации автоматически, используя специальные ссылки, которые можно создать на сайте https://routing.happ.su.
Ссылки могут быть переданы одним из следующих способов:
Через буфер обмена.
С использованием deeplink.
Через QR-код.
В виде HTTP-заголовков или тела подписки.
Для передачи через HTTP-заголовок используется параметр routing, а для добавления в тело подписки достаточно указать ссылку.
Обработка ошибок загрузки
Приложение использует менеджер загрузки геофайлов, который работает в фоновом режиме.
Если загрузка геофайлов не завершается в течение 3 минут, процесс останавливается.
На главном экране появляется сообщение об ошибке.
В списке профилей рядом с проблемным профилем отображается красный восклицательный знак.
Устранение ошибок
Проблемное состояние профиля исчезает автоматически после:
Успешного завершения загрузки файлов.
Удаления проблемного профиля.
Если в списке больше нет проблемных профилей, уведомления об ошибках удаляются.
Виды ссылок:
happ://routing/add/{base64}: Добавляет профиль в список профилей. Первый добавленный профиль становится активным только после успешной загрузки геофайлов. Если профиль с таким именем уже существует, он перезаписывается.happ://routing/onadd/{base64}: Добавляет и автоматически активирует профиль, даже если другие профили уже активны. Если профиль с таким именем уже существует, он перезаписывается.happ://routing/off: Отключит функционал маршрутизации
{base64}:это JSON-профиль, преобразованный в текстовый формат base64.
Структура профилей
Приложение использует профили маршрутизации, которые настраиваются через JSON.
Профиль по умолчанию содержит базовые настройки, используемые для заполнения отсутствующих или некорректных параметров.
Пример профиля по умолчанию:
Пример пользовательского профиля:
Особенности работы с профилями
Если профиль с таким же именем уже существует, его данные обновляются.
Если у профиля есть параметр
"LastUpdated": ""и он содержит дату в формате Unix, которая больше предыдущего значения, он будет обновлён.
Схема добавления / обновления профиля
Пример http headers:
Пример тела подписки:
Last updated