====== Описание WEB-API UniServer AUTO. Плагин устройства дискретного ввода-вывода UDVV. ======
===== Включение/отключение обмена данными с устройством дискретного ввода-вывода =====
** Формат запроса к опубликованным методам плагина **
Наименование метода: **UDVV1_Enable**
В запросе используется один дополнительный параметр, который может принимать значения **true** для включения обмена и **false** для отключения обмена.
Пример запроса к плагину UDVV1: \\
**[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=UDVV1_Enable&Value=true&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=UDVV1_Enable&Value=true&auth_user=user&auth_password=user]]**
Успешное выполнение команды подтверждается статусом ответа **200 OK**
===== Получение всех параметров от плагина (состояние обмена, состояние дискретных входов/выходов и т.п.) =====
**Формат запроса к WEB интерфейсу плагина**
Наименование метода: **Parameters**
Пример запроса к плагину UDVV1: \\
**http://uniserver.vesysoft.ru:8123/core/plugins/UDVV1/Parameters?auth_user=user&auth_password=user**
\\ \\
**Формат запроса к опубликованным методам плагина**
Наименование метода: **UDVV1_GetParameters**
Пример запроса к плагину UDVV1: \\
**http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=UDVV1_GetParameters&auth_user=user&auth_password=user**
\\ \\
**Формат ответа**
Система формирует ответ на данный запрос в формате **JSON**
\\
Пример ответа системы:
{
"Enabled": false,
"In1": false,
"In2": false,
"In3": false,
"In4": false,
"In5": false,
"In6": false,
"In7": false,
"In8": false,
"In9": false,
"In10": false,
"In11": false,
"In12": false,
"In13": false,
"In14": false,
"In15": false,
"In16": false,
"Out1": false,
"Out2": false,
"Out3": false,
"Out4": false,
"Out5": false,
"Out6": false,
"Out7": false,
"Out8": false,
"Out9": false,
"Out10": false,
"Out11": false,
"Out12": false,
"Out13": false,
"Out14": false,
"Out15": false,
"Out16": false,
"PluginName": "UDVV1",
"RxByte": 0,
"RxPacket": 0,
"SerialPort_StState": "Порт ОТКЛЮЧЕН: ",
"StState": "Остановлено",
"State": 0,
"StateInWord": 0,
"StateName": "Stop",
"StateOutWord": 0,
"TxByte": 0,
"TxPacket": 0
}
\\
**Перечень полей, содержащихся в ответе**
^ Наименование поля ^ Тип принимаемого значения ^ Описание ^
|Enable| Логическое (true/false) | Флаг состояния активности плагина (включен/выключен) |
|State| Число | Код состояния связи с весовым индикатором |
|StateName| Строка | Имя состояния связи с весовым индикатором (короткое наименование латинскими буквами для анализа) |
|StState| Строка | Описание состояние связи с весовым индикатором (на русском языке для вывода в пользовательский интерфейс) |
|RxPacket| Число | Количество пакетов, принимаемых с весового индикатора в секунду |
|RxByte| Число | Количество байт, принимаемых с весового индикатора в секунду |
|TxPacket| Число | Количество пакетов, отправляемых на весовой индикатор в секунду |
|TxByte| Число | Количество байт, отправляемых на весовой индикатор в секунду |
|PluginName| Строка | Наименование плагина |
|SerialPort_StState| Строка | Состояние используемого плагина COM порта |
|StateInWord| Число | Слово состояния дискретных входов |
|StateOutWord| Число | Слово состояния дискретных выходов |
|In1| Логическое (true/false) | Состояние дискретного входа 1 |
|In2| Логическое (true/false) | Состояние дискретного входа 2 |
|In3| Логическое (true/false) | Состояние дискретного входа 3 |
|In4| Логическое (true/false) | Состояние дискретного входа 4 |
|In5| Логическое (true/false) | Состояние дискретного входа 5 |
|In6| Логическое (true/false) | Состояние дискретного входа 6 |
|In7| Логическое (true/false) | Состояние дискретного входа 7 |
|In8| Логическое (true/false) | Состояние дискретного входа 8 |
|In9| Логическое (true/false) | Состояние дискретного входа 9 |
|In10| Логическое (true/false) | Состояние дискретного входа 10 |
|In11| Логическое (true/false) | Состояние дискретного входа 11 |
|In12| Логическое (true/false) | Состояние дискретного входа 12 |
|In13| Логическое (true/false) | Состояние дискретного входа 13 |
|In14| Логическое (true/false) | Состояние дискретного входа 14 |
|In15| Логическое (true/false) | Состояние дискретного входа 15 |
|In16| Логическое (true/false) | Состояние дискретного входа 16 |
|Out1| Логическое (true/false) | Состояние дискретного выхода 1 |
|Out2| Логическое (true/false) | Состояние дискретного выхода 2 |
|Out3| Логическое (true/false) | Состояние дискретного выхода 3 |
|Out4| Логическое (true/false) | Состояние дискретного выхода 4 |
|Out5| Логическое (true/false) | Состояние дискретного выхода 5 |
|Out6| Логическое (true/false) | Состояние дискретного выхода 6 |
|Out7| Логическое (true/false) | Состояние дискретного выхода 7 |
|Out8| Логическое (true/false) | Состояние дискретного выхода 8 |
|Out9| Логическое (true/false) | Состояние дискретного выхода 9 |
|Out10| Логическое (true/false) | Состояние дискретного выхода 10 |
|Out11| Логическое (true/false) | Состояние дискретного выхода 11 |
|Out12| Логическое (true/false) | Состояние дискретного выхода 12 |
|Out13| Логическое (true/false) | Состояние дискретного выхода 13 |
|Out14| Логическое (true/false) | Состояние дискретного выхода 14 |
|Out15| Логическое (true/false) | Состояние дискретного выхода 15 |
|Out16| Логическое (true/false) | Состояние дискретного выхода 16 |
===== Установка состояния дискретного выхода =====
**Запрос к ядру системы через список опубликованных команд**
Наименование метода: **UDVV1_SetOutBit**
Пример запроса к плагину UDVV1: \\
**[[http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=UDVV1_SetOutBit&Value={"nbit":5,"value":1}&auth_user=user&auth_password=user|http://uniserver.vesysoft.ru:8123/core/SendMsg?Name=UDVV1_SetOutBit&Value={"nbit":5,"value":1}&auth_user=user&auth_password=user]]** \\
С помощью данного запроса выполняется установка значения 1 дискретному входу 6, набор параметров включает в себя 1 параметр **Value** в формате **JSON**, в котором **nbit** - номер бита в слове-команде, передаваемом плагином в УДВВ, **value** - состояние бита
* Value={"nbit":5,"value":1} - установить состояние "0" дискретному входу №6.
Нумерация **nbit** начинается с "0", а нумерация дискретных выходов с "1", соответственно, дискретному выходу 6 соответствует **nbit** 5.
Успешное выполнение команды подтверждается статусом ответа **200 OK**