Проблема, решение которое хотели найти

Дети малые, классные, растут и скоро им придется ходить одним. Чем старше становятся, тем больше мы с товарищем, два нерадивых отца из ИТ, не можем расстаться с мыслью что они наш объект мониторинга, который никак нельзя упустить из вида, когда нас нет рядом.

Использовать для этого существующее ПО на телефон для нас кажется:

  1. Не гибко

  2. Неприемлемо куда-то постоянно смотреть и отслеживать

По интернетам и барахолкам также побегали, ничего доступного или рабочего сходу не нашли.

Как выглядит решенная задача на словах

Моё чадо выходит за настроенные параметры ожидаемого местонахождения (или динамики изменения данного местонахождения), я получаю уведомления с точк(ой|ами) на карте. Также просто получаю периодические уведомления в соответствии с настройками. В перспективе имею возможность настроить протоколы реагирования и действий, которые активизируются сами в том или ином случае.

На чем остановились для начала

  1. Сделать back на нашем веб-хостинге, который способен принимать гео-показатели конкретного устройства по https (GET)

  2. Сделать прототип клиентского устройства на малинке (raspberry)

  3. Сделать жизненный цикл регистрации, настройки и использования устройства мониторинга через телеграм бота

  4. Сделать простенькие нативные программы для андроид и эпл, которые бы могли вызывать API из пункта 1.

    На этапе написания статьи были сделаны пункты 1-3 с разной степенью готовности

1. back на нашем веб-хостинге, который способен принимать гео-показатели конкретного устройства по https (GET)

Просто web-API, просто "ест" GET с долготой, широтой и токеном устройства и складывает в базу данных. Все есть на картинке

2. Сделать прототип клиентского устройства на малинке (raspberry)

Пункт 2 был изначально, как казалось, "фишкой" наших работ, но как выяснилось дальше, мы пока не смогли получить нормальной точности даже на прототипе оборудования (из того что было) размером в два кулака. Тем не менее мы поездили с ним и пособирали данных для примера (хотя что я говорю, вовсе не для этого, ведь именно на этих данных мы поняли что они дают "погоду" :) )

3. Сделать жизненный цикл регистрации, настройки и использования устройства мониторинга через телеграм бота

Тут важно оговориться, что "пущенное в сеть устройство" будет отдавать данные раз в 10 секунд (это сейчас кажется приемлемым), независимо от того зарегистрировали его к чату телеграм или нет. Взаимодействие с устройством через телеграм - это по сути взаимодействие с уже собранными/собираемыми данными на бэк. Сейчас сделано:

1. Регистрация чата по токену устройства (не важно, лично ли боту писать, или добавлять его в общий чат)

2. Настройка задержки отображения в секундах: можно безусловно задать обязательное отображение геолокации раз в столько-то секунд (по факту - не чаще чем /delay n секунд, но не реже n + шаг сбора гео-данных с клиентского устройства)

3. Настройка zoom отображения по Красной площади

4. Отображение истории нахождения устройства по запросу

/hist
число
с_какого_часа
в_течении_какого_кол-ва_часов
сколько_точек_показать

На картинке как раз данные собранные с "чудо-механизма" из пункта два (не того что держит Донни =)

Мы не оставляем надежд на реализацию приемлемого по размеру, точности и автономности устройства которое будет способно дергать наше API для сбора данных, но пока мысли научить это делать телефоны наших детей.

Засим все, спасибо что потратили время на чтение. Никогда ничего не делали под мобилку, если кому-то интересно и кто-то может сходу написать службу дергающую API передавая широту и долготу с GPS устройства, прям сейчас могу зарегистрировать устройство в базе и передать токен, будем вместе тестировать. Не думаю что это сильно тяжелая задача.

Мой контакт

P.S. большое спасибо@spc@Olegunза указание на опечатки.

Комментарии (10)


  1. iig
    12.03.2022 11:43
    +4

    Вы пытаетесь изобрести браслет для домашнего ареста?


    1. flomastersql Автор
      12.03.2022 13:59
      +1

      Не)


  1. TimID
    12.03.2022 13:34

    Но это не пассивный, а активный трекинг. Устройство ведь само посылает свои координаты!
    И Android может сам отслеживать положение телефона ребенка, если его аккаунт связан с вашим.


    1. flomastersql Автор
      12.03.2022 14:02

      Пассивный в том плане что ты пассивен и тебе не надо куда-то "втыкать" чтобы получать инфу. Инфа приходит сама. Поэтому вы правы - мониторинг активный. А слежка пассивная :)


  1. Chuvi
    13.03.2022 12:48
    +2

    А ребёнок согласится эту штуку таскать с собой? Не попытается ли потерять/забыть? И если он будет понимать, что эта штука для слежки за ним - не "потеряет" ли он её, если соберётся пойти куда-то?


    1. flomastersql Автор
      13.03.2022 14:10

      Какую-то штуку ребёнок будет носить с собой только если он о ней не будет знать. То есть маленькая, небольшая. Об этом пока речи нет, поэтому как я и написал в статье - сосредоточились на телефоне


    1. sirocco
      14.03.2022 10:56

      Тут зависит от ребёнка. Дочери было разъяснено, что город полон нелегалов и не понятных "гостей столицы", были показаны выдержки из сми о педофилах, один из которых являлся гостем столицы прямо из нашего района. Да, для обывателя этих проблем нет, но если чуть копнуть в эту сторону, то такое раскроется, что уже не о трекерах думаешь, а о личной охране. Ребёнок всё понял, относится в этому как к предмету безопасности, всегда носит при себе. Сейчас ей 12, пока всё нормально. Как она будет смотреть на это повзрослев не знаю, время покажет.


  1. pavelsc
    13.03.2022 14:34
    +1

    Домашний ГУЛАГ какой-то. Ещё пояс верности для жены остаётся сделать, который закрывается при уходе с домашнего WiFi :)


    1. flomastersql Автор
      14.03.2022 02:19
      +1

      Как я уже сказал в статье - акцент на телефон. Спросите у матери в Калуге: променяла ли она домашний ГУЛАГ на потерю ребёнка.


  1. sirocco
    14.03.2022 10:25

    Сделать back на нашем веб-хостинге,

    traccar смотрели? Больше семи лет юзаю, вроде всё, что надо есть. Сторонних трекеров поддерживает сотни штук. Трекером может быть и приложение на мобилке.