Перейти к содержанию
Кейс · RANGER-SOS

// 09 — Кейс

Природоохрана · Конго

Чек-ин на маршруте — в контур безопасности парка

Национальный парк в ДР Конго: сотовой связи на большинстве маршрутов нет, чек-ин — журнал на КПП. Мы построили оффлайн-контур безопасности: турист добровольно чек-инится в PWA, SOS уходит через LoRa-шлюзы на вышках, дежурный видит сектора и поднимает ближайший патруль.

чек-ин → маршрут → SOS → сектор → патруль · без сети

CASE.09 — ПАТРУЛЬХРЕБЕТ

// Чек-ин добровольный · выход из системы — в один тап

LIVE
Роль
Контур безопасности: туристы, офицеры, дежурный
Ядро
Оффлайн-SOS · локализация по секторам LoRa-вышек
Срок
16 недель до пилота · монтаж вышек — в сухой сезон
Команда
4 роли TO-DEV + полевой инженер парка
Статус
В эксплуатации · сезон отработан · география обезличена

// Полный паспорт кейса — в главах ниже: стек, сроки, метрики

01Задача

Журнал на КПП и рации: поиск человека начинался со слов «кто его видел»

Туристы уходили на маршруты «примерно до вечера» — запись в журнале на КПП с подписью. Если группа не возвращалась, поиск начинался с опроса: кто последним видел людей на тропе. Каждый такой вечер — часы, потраченные на рацию, при пустой карте

Сотовой связи на большей части маршрутов нет: она ловится только у вышек на краю парка; спутниковые телефоны — единицы, у старших офицеров. Инциденты — слон-одиночка на тропе, браконьеры, травма — требовали координации офицеров по рации с неполными данными. А лагерям нечем было быстро поднять тревогу: до ближайшей рации — пешком

  • «Примерно до вечера» в журнале КПП: просроченный чек-ин замечают, когда уже темно
  • Поиск стартует с «кто последний видел» — часы опросов по рации вместо координат
  • Инциденты с животными и браконьерами — офицеры координируются с неполными данными
  • Лагерю нечем сообщить тревогу быстро: до ближайшей рации — пешком по тропе

Приватность-контуры зафиксировали до старта: отслеживание — только по явному согласию туриста, чек-ин добровольный, выход из системы — в один тап. Позиции автоматически удаляются через 30 дней, профилирования нет

KPI зафиксировали до старта, чтобы не спорить о результатах потом: локализация туриста при SOS — не дольше 15 минут; не меньше 75% маршрутов под покрытием LoRa-шлюзов; каждая тревога — с журналом отклика

02Что построили

SOS без сети: пакет уходит через вышку, а не через сотового оператора

Ядро — туристская PWA и радиоконтур. SOS-пакет уходит через LoRa-шлюз на вышке, как только телефон попадает в радиовидимость, — сотовая связь для этого не нужна. Очередь пакетов лежит в IndexedDB и не теряется

Панель дежурного собирает картину целиком: кто на маршруте, какие чек-ины просрочены, где тревога и какой патруль ближе всех. Просроченный чек-ин виден заранее — до того, как превратился в ночной поиск

  • PWA чек-ина туриста: маршрут-план, расчётное время возврата, контакты, SOS-кнопка — всё работает оффлайн
  • SOS-пакет (позиция, время, батарея) уходит через LoRa-шлюз на вышке при появлении радиовидимости — очередь в IndexedDB не теряется
  • Офлайн-карты маршрутов (векторные тайлы) — в той же PWA, без интернета
  • Панель дежурного парка: группы на карте, статусы чек-инов, тревоги, сектора вышек
  • Локализация по секторам: сигнал телефона видят 2–3 шлюза — пересечение секторов даёт круг поиска, трек чек-ина уточняет
  • Эскалация патруля: ближайший отряд получает задачу с картой и меткой
  • Журнал инцидентов: тревога → отклик → исход — отчёт для руководства парка
  • Радиошлюз: инциденты дублируются в эфир дежурного офицера

// Галерея кейса · клик открывает кадр крупно

FIG.R.01 — ЧЕК-ИНСОГЛАСИЕ · SOS
FIG.R.02 — ПАНЕЛЬДЕЖУРНЫЙ
FIG.R.03 — SOS-КОНВЕЙРБЕЗ СЕТИ
FIG.R.04 — ЛОКАЛИЗАЦИЯКРУГ 600 М
FIG.R.05 — ЖУРНАЛТРЕВОГА → ИСХОД

03Технологии и интеграции

Стек собран под отсутствие связи, а не наоборот

Требование было одно: система обязана работать там, где интернета нет неделями. От него подбирали каждый инструмент — от мобильного контура до спутникового бэкхолла

Мобильный контур

PWAService WorkerIndexedDBОфлайн-тайлы

Интернет на маршруте не появится от слов — приложение проектируется из допущения «связи может не быть неделями»: чек-ин, карты и SOS работают локально, синхронизация — когда есть канал

Радиоконтур

LoRaWAN-шлюзы на вышкахThe Things StackПакет SOS ≤ 60 байт

Вышки питаются от солнца и АКБ, LoRa держит километры при ваттах мощности. Компактный пакет SOS проходит даже при плохой радиовидимости — радиопланирование делали по рельефу до монтажа

Бэкенд

Python 3.12FastAPIPostgreSQL + PostGIS

Гео-запросы по секторам вышек и трекам чек-инов — в PostGIS. Очередь пакетов переживает недоступность бэкхолла: пакет, пришедший с задержкой, не теряется, а попадает в журнал по времени события

Бэкхолл

Спутниковый модем в лагере · батчингРадиошлюз DMR для дежурного

Пакеты уходят батчами, когда спутниковый канал свободен; тревоги — вне очереди. Дежурный офицер слышит инцидент в эфире DMR, даже когда панель перед глазами не открыта

Приватность

Согласие и выход — в один тапАвтоудаление позиций через 30 днейОтчёт о доступахНикаких профилей туристов

Отслеживание — строго с согласия: турист сам чек-инится и сам выходит из системы, офицеры носят выданные устройства. Позиции удаляются автоматически через 30 дней, каждое обращение — под отчётом

04Результат

Первый сезон: от SOS до задачи патрулю — восемь минут

8 мин

От SOS до задачи патрулю

Среднее за сезон; было — часы по журналу и опросам на рации

78%

Маршрутов под LoRa-покрытием

Цель была ≥75%; остальное — участки с радиотенью, домонтаж в плане

1 200

Туристов с чек-ином

За первый сезон, каждый — добровольно, с выходом в один тап

3 из 3

инцидентов отработаны

Травма, слон на тропе, потерявшаяся группа — все с полным журналом

Локализация по секторам дала круг поиска 600 метров вместо «весь маршрут». Дежурный видит просроченные чек-ины заранее — до того, как пропажа превратилась бы в ночной поиск

Метрики первого сезона, округлены. Парк и оператор не названы по требованию безопасности — см. главу 08

05Сроки

16 недель до пилота — календарь подчинён сухому сезону

Софт писали параллельно с радиопланированием, но монтаж вышек ждал сухого сезона: в дожди к точкам не пройти. Поэтому радиоплан утвердили в первые две недели — до первой строки кода панели

Недели 01–02

Дискавери

Карта маршрутов и КПП, радиопланирование по рельефу, регламент тревог и приватность-контуры

Недели 03–05

PWA туриста

Чек-ин с маршрут-планом, SOS-очередь в IndexedDB, офлайн-карты в векторных тайлах

Недели 06–08

Радиоконтур

Монтаж двух вышек, LoRa-шлюзы, тесты пакетов с хребтов — сухой сезон, дороги проходимы

Недели 09–11

Панель и локализация

Панель дежурного: сектора вышек, пересечение секторов, эскалация ближайшего патруля

Недели 12–13

Журнал и радиошлюз

Журнал инцидентов «тревога → отклик → исход», дубль в эфир дежурного офицера

Недели 14–16

Полевые испытания и пилот

Тесты на маршрутах в сухой сезон, обучение офицеров и лагерей — в поле, два дня

Итого: 16 недель · пилот в сухой сезон · сезон отработан без потерь пакетов

06Экспертиза

Четыре роли TO-DEV — и полевой инженер парка

Системный аналитик~25% часов

Регламент тревог и эскалаций, приватность-контуры (согласие, автоудаление, отчёты о доступах), радиопланирование секторов по рельефу

Бэкенд-разработчик~30% часов

Очередь пакетов с переживанием недоступности бэкхолла, гео-локализация по секторам в PostGIS, журнал инцидентов и отчёты

PWA-разработчик~25% часов

Оффлайн-первый чек-ин, SOS без сети с очередью в IndexedDB, офлайн-карты в векторных тайлах

Полевая инженерия~20% часов

Энергетика вышек (солнце + АКБ), монтаж и антенны, тесты радиовидимости, обучение офицеров и лагерей

Полевой инженер парка знал, где вышка «видит» хребет, а где радиотень, — радиопланирование до монтажа сэкономило недели. Обучение «в поле» заняло два дня, не презентацию

07Ориентир для повторения

Что нужно, чтобы повторить такой контур

Нужно от заказчика

01Карта маршрутов, КПП и лагерей с реальной геометрией — по ней считаются радиоплан и сектора
02Договор со спутниковым оператором для бэкхолла лагерей
03Ответственный за дежурство с полномочием менять регламент тревог

Артефакты старта

04Точки, где физически можно поставить вышку: собственность, доступ, безопасность монтажников
05Регламент реагирования парка: кто идёт, кто командует, когда эвакуация
06Согласие вышестоящих организаций на публикацию обезличенного кейса

Вилки сроков и команды

07Рельеф враждебен радиоволнам — закладывайте недели на домонтаж дополнительных шлюзов; радиопланирование делайте заранее
08Сезонность: монтаж только в сухой сезон — календарь проекта подчинён погоде, не спринтам
09Команда: 4 роли TO-DEV + обязательно полевой инженер на месте — без него любая схема «из офиса» развалится при монтаже

Типовая вилка такого контура — 14–20 недель. Критичный путь — радиоплан и монтаж вышек, не софт

08Честно оговорим

Что обезличено — и что не показываем

01

Парк, оператор и география не названы по требованию безопасности — детали охранных мер не публикуем

02

Метрики показаны за первый сезон и округлены; сырые дашборды не публикуем

03

Фотография — временный плейсхолдер; интерфейсы и карты показаны схемами, а не скриншотами, — по той же причине

04

Хотите такой контур безопасности для своей территории — расскажите о задаче в форме ниже

// CTA — Разбор задачи

Контур безопасности для вашей территории — расскажите

Двух коротких вопросов и контакта хватит для первого ответа. Если задачу закрывает готовое решение — скажу об этом первым делом

Развернуть полный бриф — на главной

Достаточно контакта — задачу обсудим в ответ. Имя и подробности не обязательны: это минимум данных