Us gps

Материал из WiKi - UserSide

ВНИМАНИЕ: Данный модуль является устаревшим и более не продаётся. Рекомендуется перейти на модуль usm_gps


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


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


ВАЖНО: На данный момент модуль поддерживает следующие треккеры:

  • Traccar Client (Android/iOS-устройства. Приложение). https://www.traccar.org/client/
  • GT-06
  • GT-02
  • GPS/TK-102/103/104
  • Автофон Маяк 5
  • OKO-NAVI
  • h02

Для добавления иных моделей треккеров - свяжитесь с нами.


Таким образом - можно установить клиент на смартфон/планшет сотрудника, оснащенный GPS-модулем, либо настроить аппаратные GPS-треккеры на передачу информации на свой сервер и начать получать данные.


Общие данные

Язык модуля: Perl

Текущая версия: см. на странице: Модули

Статус модуля: Платный

Необходимые модули Perl:

DBI
Time::Local
FindBin
IO::Socket

Информацию по установке модуля и общую информацию для всех модулей см. на странице: Модули

Настройка модуля осуществляется в файле us_config.tmp

Параметры

$usUrl    - URL к ERP "UserSide"
$usApiKey - API-ключ ERP "UserSide" (Указывается в файле "userside3/main/config/config.php")
$ps_logpath - путь к логам модуля
$zsilence - не выводить уведомления о работе модуля в консоль
$zport - порт, на котором слушаем сообщения от GPS-устройств

Запуск модуля

  • Настройка - Модули - us_gps - Включаем работу модуля
  • Запускаем для теста модуль вручную и убедимся, что ошибок не возникает
perl us_gps.pl

Модуль требуется прописать в системный cron с частотой запуска - раз в 4 часа.

1 */4 * * * perl us_gps.pl &> /dev/null

При повторном запуске модуль уничтожит свою предыдущую копию. Периодический перезапуск обеспечивает более высокую стабильность работы, т.к. закрывает все "зависшие" соединения и буфера.

Настройка GPS-треккеров и приложений

По-умолчанию модуль слушает порт 5005. А IP-адресом выступает адрес сервера, где запущен модуль. Используйте эти параметры в настройке GPS-устройств/приложений.

Логика работы

  • Модуль работает многопоточно, параллельно поддерживая связь либо принимая пакеты от множества устройств
  • Требуется указать правильные IMEI всем контролируемым объектам (см.ниже). Если на модуль будет поступать информация от незарегистрированных устройств, то он будет её отбрасывать
  • Частота фиксации информации зависит исключительно от того, как часто устройство присылает её. Все записи будут зафиксированы.
  • Информация фиксируется по времени, которое присылает устройство. При этом время конвертируется в локальное время (из UTC). Некоторые устройства могут присылать информацию за тот период, когда у них не было связи с сервером. Эту старую информацию модуль тоже зафиксирует
  • Обратите внимание, что GPS-устройства не всегда имеют точные данные о своём местоположении. Это зависит от уровня сигнала GPS-приемника, времени работы и пр. Таким образом объект, который находится на одном месте и постоянно передаёт свои координаты - казалось бы должен выводится на карте в одной точке, но на самом деле получится замысловатая картина.

Использование

В карточке сотрудника или карточке автотранспорта есть поле для ввода IMEI GPS-устройства

После того, как модуль включен - на карте покрытия будет доступен новый слой

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

Имеется возможность просмотра позиций и маршрутов за более ранний период.


Установка модуля usm_gps (для Traccar)

Работа приложения Traccar с конца 2014 года идёт по новому протоколу "osmand". Для его работы требуется настроить модуль usm_gps

Это потребует изменений в настройке веб-сервера, где установлен userside

1. Выделите отдельный каталог в web-каталоге с userside. Абсолютно произвольный. Также создайте отдельный каталог для логов модуля. Не забудьте указать для него права на запись.

2. Перенесите туда файлы из архива модуля (usm_gps). Пример файла конфигурации "usm_gps.conf.php-example" переименуйте в "usm_gps.conf.php". В нём выполните настройку параметров. Перечень возможных параметров указан ниже.

3. Настройте веб-сервер:

3.1. В файле apache/conf/httpd.conf:

- добавьте строку 

Listen 5055

- раскомментируйте строку
 
Include conf/extra/httpd-vhosts.conf

3.2. В файле apache/conf/extra/httpd-vhosts.conf добавьте блок (настроив под себя)

<VirtualHost *:5055>
   DocumentRoot "/usr/local/.../usm_gps"
   ServerName gps
   ServerAlias gps
   ErrorLog "logs/gps-error.log"
   CustomLog "logs/gps-access.log" common
   Options Indexes FollowSymLinks
   DirectoryIndex usm_gps.php
</VirtualHost>

4. Перезапустите веб-сервер

5. Попробуйте открыть в адресной строке адрес своего веб-сервера:порт

http://127.0.0.1:5055

Должны создаться логи работы модуля.

Если не создался лог usm_gps.log - то запустите вручную один раз модуль в консоли сервера

php usm_gps.php

6. Прописываем в приложении Traccar - обращение к нужному IP-адресу и нужному порту (5055)

Параметры usm_gps.conf.php

$usersideUrl - URL к ERP UserSide
$usersideApiKey - UserSide API-key (userside/main/config/config.php)
$logPath - путь к каталогу для логов
$isSilence - флаг - выводить ли сообщения в консоль