1

Получение списка объектов

Topic: Получение списка объектов

Всем привет. Есть база машин с трекерами. Есть своя карта на сайте.

Нужно отобразить последние местоположение каждой машины. Какую логику лучше использовать?

В цикле прогонять машины и запрашивать API с помощью метода core/search_items? Как я понимаю, тогда можно столкнуться с ограничениями, потому что машин может быть много.

Или же есть специальный метод API для такой задачи?

2

Получение списка объектов

Re: Получение списка объектов

Добрый день!
Вам нужно запросить данные по всем объектам и по результатам пройтись в цикле для отображения на карте.
Если выполнять запрос core/search_items по всем объектам (avl_unit) с флагами (flags) 0x00000401 (базовый + последнее положение) - объём данных конечно может быть приличным, но не заоблачным - даже на 5000 объектах должен нормально отработать.
Безо всяких ограничений (если конечно не слать его каждые 5 секунд).
Если нужно периодически актуализировать положение на карте - рекомендуется выполнять запрос не в цикле, а после получения результата запроса запускать таймер (например на 3 мин) для запуска следующего запроса.
Просьба уточнить:
1. У Вас Wialon Hosting (Local) или Wialon Pro?
2. На каком языке программирования собираетесь реализовывать эту логику?
3. Какое общее количество объектов?
4. Как часто нужно актуализировать положение на карте?

Head of Wialon Local Department
Gurtam
3

Получение списка объектов

Re: Получение списка объектов

Вариант 2 - Настроить ретранслятор, принимать и обрабатывать данные от него. Получится режим близкий к онлайн. Без постоянного запроса к Виалон.

KazInterSoft - www.soft.kz
4

Получение списка объектов

Re: Получение списка объектов

deal, Спасибо за ответ. Я кое-что забыл уточнить: поиск должен быть по ID трекеров. Похоже на категории. Например, есть 200 машин, они разбиты по категориям и когда заходим на категорию - видим только часть машин. Потому мне нужно сделать поиск по айдишникам, а не выдергивать все объекты разом. В core/search_items, я не понял как делать выборку по ID. Потому и подумал, что можно прогнать в цикле, вызывая core/search_item для каждой машины. Обновление будет происходить раз в 30-60 секунд. Отвечаю на ваши вопросы:
1) Честно говоря, не очень понимаю разницы в этих продуктах, но, по-моему, у нас Wialon Hosting
2) Весь каркас с авторизацией и прочими запросами уже реализован и работает на Node.js, нужно просто добавлять новый функционал
3) Нет верхней границы, но пока около сотни
4) 30-60 секунд, но такого не будет, потому что вряд-ли кто-то будет сидеть и смотреть на карту в течении минуты, нужно просто показать актуальные координаты транспорта в текущей категории

kazintersoft, изначально, мы так и пытались и у нас получилось принимать данные. Но тут загвоздка - типов трекеров может быть очень много, и для каждого писать "драйвер" и разбирать их формат - трудоемкая задача

5

Получение списка объектов

Re: Получение списка объектов

kazintersoft, изначально, мы так и пытались и у нас получилось принимать данные. Но тут загвоздка - типов трекеров может быть очень много, и для каждого писать "драйвер" и разбирать их формат - трудоемкая задача

Можно сделать ретрансляцию в едином формате WialonIPS и сделать парсер только для него. Унификацию сообщений сделает Wialon.

KazInterSoft - www.soft.kz
6

Получение списка объектов

Re: Получение списка объектов

kazintersoft wrote:

kazintersoft, изначально, мы так и пытались и у нас получилось принимать данные. Но тут загвоздка - типов трекеров может быть очень много, и для каждого писать "драйвер" и разбирать их формат - трудоемкая задача

Можно сделать ретрансляцию в едином формате WialonIPS и сделать парсер только для него. Унификацию сообщений сделает Wialon.

Вот здесь поподробнее? Где, что почитать?

7

Получение списка объектов

(edited by kazintersoft 30/06/2015 14:06:18)

Re: Получение списка объектов

akabal wrote:

Вот здесь поподробнее? Где, что почитать?

http://docs.gurtam.com/ru/hosting/cms/retra/retra

Выбираете протокол ретрансляции Wialon IPS (1.1).

Сообщения от объектов, включенных в список ретрансляции, будут приходить по протоколу Wialon IPS. Независимо от типа трекера.
Описание протокола есть у Гуртам.

KazInterSoft - www.soft.kz
8

Получение списка объектов

Re: Получение списка объектов

kazintersoft wrote:

http://docs.gurtam.com/ru/hosting/cms/retra/retra

Выбираете протокол ретрансляции Wialon IPS (1.1).

Сообщения от объектов, включенных в список ретрансляции, будут приходить по протоколу Wialon IPS. Независимо от типа трекера.
Описание протокола есть у Гуртам.

Гениально! Спасибо! Жить стало лучше, жить стало веселей! ))

9

Получение списка объектов

Re: Получение списка объектов

Получить объекты по их уникальным id можно таким запросом:
http://hosting.wialon.com/wialon/ajax.html?svc=core/search_items&sid=a2bcb39d8994d51cf8ffd40b77094dcb&params={"spec":{"itemsType":"avl_unit","propName":"sys_unique_id","propValueMask":"222,43","sortType":"sys_name"},"force":1,"flags":0x00000401,"from":0,"to":0}
В propValueMask можно сформировать строку (через запятую) со всеми интересующими id трекеров.

Head of Wialon Local Department
Gurtam
10

Получение списка объектов

Re: Получение списка объектов

kazintersoft wrote:

Можно сделать ретрансляцию в едином формате WialonIPS ...

Другой подходящий протокол - Wialon Retranslator.
Для него есть пример парсинга пакетов на Python https://gist.github.com/ashmigelski/21c … 55444c4f26

11

Получение списка объектов

Re: Получение списка объектов

Как получить список всех транспортных средств?

12

Получение списка объектов

Re: Получение списка объектов

rovenskiy1c wrote:

Как получить список всех транспортных средств?

Добрый день!

используйте запрос Поиск элементов.

Diana Cheley
Wialon Hosting Expert
Gurtam