Методология работы с API IoTVegaServer
- Самуил
- Просто смотрю
- Сообщения: 80
- Зарегистрирован: Вт, 02 июл 2019 13:10
- Откуда: Россия
- Контактная информация:
Методология работы с API IoTVegaServer
День добрый!
Что есть:
1) БС Вега 1.2
2) Скачанный и запущенный iotvegaserver
3) Три десятка счётчиков воды и пять счётчиков энергии с поддержкой LoRa
Задача: написать приложение опрашивающее сервер через открытое API и собирающее показания счётчиков
Вопросы: каким методом ведётся работа с сервера? сервер сам инициирует связь с приложением? или постоянный опрос? если опрос то как часто?
счётчик прислал показания на сервер. сервер сам информирует приложение пользователя что что-то пришло, или нет?
Прошу подробного разъяснения по написанию сторонних приложений с использованием открытого API IoTVegaServer.
upd: прошу выложить пример на любом языке программирования.
P.S. прошу русскоязычной версии документа API VEGA-LoRa Rev23.pdf
Что есть:
1) БС Вега 1.2
2) Скачанный и запущенный iotvegaserver
3) Три десятка счётчиков воды и пять счётчиков энергии с поддержкой LoRa
Задача: написать приложение опрашивающее сервер через открытое API и собирающее показания счётчиков
Вопросы: каким методом ведётся работа с сервера? сервер сам инициирует связь с приложением? или постоянный опрос? если опрос то как часто?
счётчик прислал показания на сервер. сервер сам информирует приложение пользователя что что-то пришло, или нет?
Прошу подробного разъяснения по написанию сторонних приложений с использованием открытого API IoTVegaServer.
upd: прошу выложить пример на любом языке программирования.
P.S. прошу русскоязычной версии документа API VEGA-LoRa Rev23.pdf
Re: Методология работы с API IoTVegaServer
Добрый день!
По порядку:
1. Русскоязычной версии API нету и пока не планируется
2. Пример ПО подключения к серверу и работы с его API
- на нашем сайте есть пример WEB приложения AdminTool где используется 95% API сервера
- в течении месяца должны быть опубликованы исходники ПО (на С++) по добавлению устройств на сервер. Будет новость на сайте - следите.
Если кратко, то используется WebSocket и происходит обмен текстовыми сообщениями в формате JSON.
3. Сервер на борту имеет WebSocketServer, к которому подключается клиентское ПО. Проходите авторизацию на соответствующего пользователя. И (1) если пользователю разрешено получение онлайн сообщений и (2) устройство находится в области видимости пользователя, то клиентское ПО по WebSocket получит уведомление о получении новых данных от соответствующего устройства (пакет "rx").
Имеющаяся версия сервера (1.2.х) предназначена для работы с низкой нагрузкой по клиентской стороне, поэтому опрос советуем производить не чаще чем раз в минуту (более точно выясняется в конкретной ситуации сам пользователь). Если есть желание мгновенно получать новые данные - оставайтесь на коннекте с сервером.
По порядку:
1. Русскоязычной версии API нету и пока не планируется
2. Пример ПО подключения к серверу и работы с его API
- на нашем сайте есть пример WEB приложения AdminTool где используется 95% API сервера
- в течении месяца должны быть опубликованы исходники ПО (на С++) по добавлению устройств на сервер. Будет новость на сайте - следите.
Если кратко, то используется WebSocket и происходит обмен текстовыми сообщениями в формате JSON.
3. Сервер на борту имеет WebSocketServer, к которому подключается клиентское ПО. Проходите авторизацию на соответствующего пользователя. И (1) если пользователю разрешено получение онлайн сообщений и (2) устройство находится в области видимости пользователя, то клиентское ПО по WebSocket получит уведомление о получении новых данных от соответствующего устройства (пакет "rx").
Имеющаяся версия сервера (1.2.х) предназначена для работы с низкой нагрузкой по клиентской стороне, поэтому опрос советуем производить не чаще чем раз в минуту (более точно выясняется в конкретной ситуации сам пользователь). Если есть желание мгновенно получать новые данные - оставайтесь на коннекте с сервером.
Re: Методология работы с API IoTVegaServer
Веговский лора ван сервер работает по API WebSocket. WebSocket говорит о том что вы создаете подключение с сервером и держите его. Cервер по своей инициативе время от времени будет присылать online сообщения о том что происходит в lora ван сети. В случае если что то нужно отправлять на устройства, вы можете отправлять по апи данные на устройства.
Создали коннект -> Авторизовались -> ждете rx пакеты (при желании можете отправлять команды)
Посмотрите TimeCorrector
https://github.com/VegaAbsolute/IotVegaTimeCorrector
-
- Мимо проходил
- Сообщения: 1
- Зарегистрирован: Чт, 04 июл 2019 18:07
Re: Методология работы с API IoTVegaServer
Мы сейчас экспериментируем с RapidScada, написали под нее драйвер и собираем данные с объектов в часовом разрезе. СИ-11 Работает без проблем, с СИ-13 пока драйвер на доработке. У нас в системе разношерстные устройства (не только компании Вега), под них тоже пишем драйвера. Но все данные приходят на сервер Веги и оттуда вытаскиваются через АПИ. К концу следующей недели планируем запустить в полное тестирование, если интересно, может поделить результатами.
Re: Методология работы с API IoTVegaServer
На С#
url = "ws://" + IPAddress + ":" + TCPPort;
WSclient = new WebSocket(url);
output = "{\"cmd\":\"get_devices_req\"}";
WSclient.Send(output);
полученный ответ сериализируем и вытягиваем нужные данные.
url = "ws://" + IPAddress + ":" + TCPPort;
WSclient = new WebSocket(url);
output = "{\"cmd\":\"get_devices_req\"}";
WSclient.Send(output);
полученный ответ сериализируем и вытягиваем нужные данные.
- Самуил
- Просто смотрю
- Сообщения: 80
- Зарегистрирован: Вт, 02 июл 2019 13:10
- Откуда: Россия
- Контактная информация:
Re: Методология работы с API IoTVegaServer
То есть json данные передаются как текст и этим текстом передаются логин и пароль?Создали коннект -> Авторизовались -> ждете rx пакеты (при желании можете отправлять команды)
хотелось бы посмотреть, даК концу следующей недели планируем запустить в полное тестирование, если интересно, может поделить результатами.
стандартный виндовая библиотека для вебсокетов или иная?WSclient = new WebSocket(url);
- Самуил
- Просто смотрю
- Сообщения: 80
- Зарегистрирован: Вт, 02 июл 2019 13:10
- Откуда: Россия
- Контактная информация:
Re: Методология работы с API IoTVegaServer
Вопрос оффтопик, но отвечу:
я не веб разработчик но браузеров у меня зоопарк. Иногда приходится прогать камни с сетевым интерфейсом и там натягивать веб сервера со страничками настройки.
я не веб разработчик но браузеров у меня зоопарк. Иногда приходится прогать камни с сетевым интерфейсом и там натягивать веб сервера со страничками настройки.
- Самуил
- Просто смотрю
- Сообщения: 80
- Зарегистрирован: Вт, 02 июл 2019 13:10
- Откуда: Россия
- Контактная информация:
Re: Методология работы с API IoTVegaServer
Пишу сейчас программу на C# для общения с сервером джсоном через вебсокет.
будет очень полезно если разработчики выложат *.cs *.cpp файлы или иные подобные, с классами, подклассами для ускорения разработки. меня интересую только классы которые может выдавать сервер в ответ на запросы.
будет очень полезно если разработчики выложат *.cs *.cpp файлы или иные подобные, с классами, подклассами для ускорения разработки. меня интересую только классы которые может выдавать сервер в ответ на запросы.
Re: Методология работы с API IoTVegaServer
Выше вам уже приводили ссылку на наш Git репозиторий.
Все что есть для открытого доступа - размещено там. Возможно чем-то поможет.
Все что есть для открытого доступа - размещено там. Возможно чем-то поможет.