-Поиск по дневнику

Поиск сообщений в rss_rss_hh_new

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 17.03.2011
Записей:
Комментариев:
Написано: 51


[recovery mode] IOTV — простой HTTP протокол для работы с сообщениями и командами IOT объектов в сервисе VIALATM

Пятница, 11 Августа 2017 г. 23:01 + в цитатник


Несколько разрработчиков, использующих сервис VIALATM для работы с IOT объектами, обратились ко мне с просьбой реализовать простой http протокол. Ранее они использовали MQTT протокол, но в силу каких-то причин им было необходимо более простое решение. Протокол реализован. В этой статье его краткое описание.


Для поддержки портокола IOTV в сервисе зарезервирован порт 7746 (для работы по протоклу https следеут использовать порт — 7745).

HTTP header


Все запросы по протоколу IOTV должны содержать в заголовке (http header) атрибут «iotv-user». Если в настройках учетной записи «IOTV password» установлен, атрибут «iotv-password» в заголвке должен совпадать с этим значением, в противном случае он может быть опущен.



Обязательный атрибут


Все запросы должны содеражать обязательный атрибут«root».



Дополнительные атрибуты


К запросам может быть добавлен атрибут «time». Он должен быть установлен в формате UNIX STAMP (количество секунд с 1 января 1970 года). Если этот атрибут опущен, то временем события считается время поступления запроса на сервер. Все прочие возможные атрибуты зависят от того, как определен объект IOT в сервисе. В ответ на запрос возвращаются текущие значения всех атрибутов объекта

Примеры


GET
Request: vialatm.com:7746/?root=HOME&A1=5&B1=12
Response: A1=5&B1=12&C1=14

POST
Request: vialatm.com:7746/

JSON
Data: {«A1»:«12»,«root»:«HOME»,«B1»:«44»}
Response: {«A1»:«12»,«B1»:«44»,«C2»:«12»}
XML
Data: 73HOME87
Response: 738788
POST FORM
Data: A1=543&root=HOME&B1=12&
Response: command=12.4&A1=543&B1=12&C1=14

Команды в ответ на запросы


Для IOT объектов можно определить команды



В этом случае, когда задается команда для объекта, она посылается в ответе на IOTV запрос:



Примеры ответов на запросы в этих случаях:

GET
Request: vialatm.com:7746/?root=HOME&A1=5&B1=12
Response: command=12.4&A1=5&B1=12&C1=14

POST
Request: vialatm.com:7746/

JSON
Data: {«A1»:«12»,«root»:«HOME»,«B1»:«44»}
Response: {«command»:«12.4»,«A1»:«12»,«B1»:«44»,«C2»:«12»}
XML
Data: 73HOME87
Response: 12.4738788
POST FORM
Data: A1=543&root=HOME&B1=12&
Response: command=12.4&A1=543&B1=12&C1=14
Original source: habrahabr.ru (comments, light).

https://habrahabr.ru/post/335468/

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку