RBCAPI: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
(Запрос статуса устройств или устройства)
(Запрос статуса устройств или устройства)
Строка 75: Строка 75:
  
 
-- общее количество видеозаписей
 
-- общее количество видеозаписей
 +
 +
 +
===Запрос на старт записи===
 +
 +
Принцип работы параметра
 +
 +
device-id
 +
 +
аналогичен принципу, описанному в предыдущем разделе.
 +
 +
====Запрос====
 +
 +
<pre>
 +
{ "device-id" : "*",
 +
  "command"  : "start",
 +
  "arguments" : {"devices": [ "front", "rear" ] } }
 +
</pre>
 +
 +
в массиве
 +
 +
arguments.devices
 +
 +
может быть одно или два значения, наличие которых в запросе определяет: запись с каких камер должна осуществляться.
 +
 +
Как минимум, должно быть указано одно устройство
 +
 +
====Ответ====
 +
 +
{ "result" : "success" }
  
 
==От RBC к SRV==
 
==От RBC к SRV==

Версия 23:39, 3 июня 2021

Взаимодействие

Клиент (далее -- RBC (RecBot Client)) подключается к вебсокету вида

https://sys-domain.net:8092/ws

После соединения с серверным API (далее -- SRV) как RBC, так и SRV могут делать запросы в вебсокет, соответственно, противоположная сторона на них должна отвечать.

Для взаимодействия посредством простых json сообщений (кроме получения файла с данными от RBC) для тестирования достаточно использовать утилиту

wscat


Базовые запросы

От SRV к RBC

Запрос статуса устройств или устройства

Запрос

{ "device-id": "*", "command": "status", "arguments": { } }

, где

device-id

-- MAC-адрес RBC, переданный без разделителей например:

5465033FFFF3

В случае указании значения

*

или в случае совпадения передаваемого MAC-адреса с MAC-адресом RBC в ответ на SRV должен придти запрос (он же ответ -- с т.з. RBC) вида:

Ответ

{ "result" : "success",
  "status" :
   { "device-id"      : "5465033FFFF3",
     "device-alias"   : "3",
     "battery-level"  : 100,
     "uptime"         : 17157021,
     "recording?"     : false,
     "current-camera" : 1,
     "recordings": 9 } }

, где

device-alias

-- номер устройства (тот номер, который должен высвечиваться на дисплее устройства)

battery-level

-- процент заряда батарейки RBC

uptime

-- время в секундах с момента загрузки RBC

recording

-- флаг, показывающий: идёт ли в данный момент запись видео на устройство

current-camera

-- номер камеры, которая в данный момент записывает (0 - обе, 1 - первая камера (основная), 2 - вторая камера (дополнительная))

recordings

-- общее количество видеозаписей


Запрос на старт записи

Принцип работы параметра

device-id

аналогичен принципу, описанному в предыдущем разделе.

Запрос

{ "device-id" : "*",
  "command"   : "start", 
  "arguments" : {"devices": [ "front", "rear" ] } }

в массиве

arguments.devices

может быть одно или два значения, наличие которых в запросе определяет: запись с каких камер должна осуществляться.

Как минимум, должно быть указано одно устройство

Ответ

{ "result" : "success" }

От RBC к SRV

Это защищенная страница.