====== Описание WEB-API UniServer AUTO. Плагин видеокамеры CAMERA. ====== ===== Включение/отключение получения видеопотока от камеры ===== **Формат запроса к WEB интерфейсу плагина** Наименование метода: **Enable** Дополнительный параметр **Enable** может принимать значения **true** для включения обмена и **false** для отключения обмена. Пример запроса: \\ **[[http://uniserver.vesysoft.ru:8123/core/plugins/Camera1/Enable?Enable=true&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/plugins/Camera1/Enable?Enable=true&auth_user=user&auth_password=user]]** Успешное выполнение команды подтверждается статусом ответа **200 OK** ** Формат запроса к опубликованным методам плагина ** Наименование метода для включения первой камеры: **Camera1_Enable** В запросе используется один дополнительный параметр, который может принимать значения **true** для включения и **false** для отключения. Пример запроса: \\ **[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_Enable&Value=true&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_Enable&Value=true&auth_user=user&auth_password=user]]** Успешное выполнение команды подтверждается статусом ответа **200 OK** ===== Получение всех параметров от плагина (состояние связи с камерой, количество кадров и т.п.) ===== **Формат запроса к опубликованным методам плагина** Наименование метода для получения параметров первой камеры: **Camera1_GetParameters** Пример запроса: \\ **[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_GetParameters&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_GetParameters&auth_user=user&auth_password=user]]** \\ \\ **Формат ответа** Система формирует ответ на данный запрос в формате **JSON** \\ Пример ответа системы: { "PageTitle":"Камера 1", "Refresh":40, "URL":"rtsp://192.168.10.100:554/video.avi", "Enabled":true, "StateInt":4, "State":"Запущено. Ok", "StreamInfo":"IP-камера rtsp://192.168.10.100:554/video.avi", "Freq":"19,3", "StreamSizeText":"640x480", "Width":1920, "Height":1078, "Restarted":"2", "UpdateDateTime":"2020-09-21T13:01:39.644" } \\ **Перечень полей, содержащихся в ответе** ^ Наименование поля ^ Тип принимаемого значения ^ Описание ^ |PageTitle| Строка | Наименование плагина | |Refresh| Число | Параметр, устанавливающий таймаут между кадрами | |URL| Строка | URL Строка для подключения к IP камере | |Enabled| Логическое (true/false) | Флаг состояния активности плагина (включен/выключен) | |StateInt| Число | Код состояния плагина | |State| Строка | Состояние подключения к камере | |StreamInfo| Строка | Информация о видеопотоке | |Freq| Строка | Частота кадров видеопотока | |StreamSizeText| Строка | Разрешение кадра видеопотока, транслируемого плагином | |Width| Число | Ширина кадра входящего видеопотока | |Height| Число | Высота кадра входящего видеопотока | |Restarted| Строка | Количество попыток переподключения к камере | |UpdateDateTime| Строка | Момент актуальности полученных данных | ===== Получение изображения с камеры ===== **Формат запроса к опубликованным методам плагина** * Наименование метода для получения изображения в формате JPG с первой камеры: **Camera1_GetFrameJpg** * Наименование метода для получения оригинального изображения в формате JPG с первой камеры: **Camera1_GetFrameOriginalJpg** * Наименование метода для получения изображения в формате BMP с первой камеры: **Camera1_GetFrameBmp** * Наименование метода для получения оригинального изображения в формате BMP с первой камеры: **Camera1_GetFrameOriginalBmp** Пример запроса: \\ **[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_GetFrameJpg&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_GetFrameJpg&auth_user=user&auth_password=user]]** \\ \\ Вариант 2. Запрос к плагину (с указанием размера картинки): \\ **[[http://uniserver.vesysoft.ru:8123/core/plugins/Camera1/Video?Width=600&Height=400&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/plugins/Camera1/Video?Width=600&Height=400&auth_user=user&auth_password=user]]** \\ \\ **Формат ответа** Система формирует ответ на данный запрос в формате **IMAGE** - картинку (текущий кадр с камеры). ===== Вывод надписи поверх изображения с камеры ===== **Формат запроса к опубликованным методам плагина** * Наименование метода для вывода надписи поверх изображения с первой камеры: **Camera1_SetOSD** Данный запрос содержит входной параметр **Value** - JSON с параметрами выводимой строки: * **X** - Координата начала строки по оси X от левого верхнего угла кадра; * **Y** - Координата начала строки по оси Y от левого верхнего угла кадра; * **Size** - Размер текста; * **Text** - Содержимое выводимой строки; * **Blink** - Мигание строки (true - срока мигает, false - строка выводится постоянно); * **Color** - Цвет текста (расшифровка значений цветов представлена ниже); * **Time** - Время вывода строки в милисекундах. Пример запроса: \\ **[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_SetOSD&Value={"X":300,"Y":350,"Name":"Proba2","Size":134,"Text":"Проверка","Blink":false,"Color":"clGreen","Time":10000}&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=Camera1_SetOSD&Value={"X":300,"Y":350,"Name":"Proba2","Size":134,"Text":"Проверка","Blink":false,"Color":"clGreen","Time":10000}&auth_user=user&auth_password=user]]** \\ \\ **Формат ответа** Успешное выполнение команды подтверждается статусом ответа **200 OK** **Расшифровка цветов** ^ Значение поля ^ Цвет ^ |clBlack |Чёрный| |clMaroon |Тёмно-красный| |clGreen |Зелёный | |clOlive |Оливковый | |clNavy |Тёмно-синий | |clPurple |Пурпурный | |clTeal |Стальной | |clGray |Серый | |clSilver |Серебряный | |clRed |Красный | |clLime |Ярко-зелёный | |clYellow |Жёлтый | |clBlue |Синий | |clFuchsia |Фиолетовый | |clAqua |Бирюзовый | |clWhite |Белый |