|
UniSet 2.44.4
|
Вспомогательная обёртка над uniset.opcua (реализовано на C++ через open62541/open62541pp).
Даёт удобный объектный API для подключения к серверу OPC UA, чтения и записи переменных из JScript.
Фабрика проверяет наличие всех нативных методов (connect, disconnect, read, write) и кидает исключение, если движок собран без OPC UA.
Подключается к OPC UA серверу.
Параметры (объект):
endpoint / url / address — строка вида opc.tcp://host:port; обязательно;user / username — (опционально) логин;pass / password — (опционально) пароль.Возвращает true при успешном установлении сессии, иначе кидает исключение с текстом из нативного клиента.
Закрывает текущее соединение, повторные вызовы безопасны.
Читает значения узлов.
nodeIds может быть строкой ("ns=1;s=MyVar") или массивом строк. Типичный ответ для двух узлов:
Опции:
keepArray — даже если запрошен один nodeId, вернуть массив (как в примере выше), что упрощает унифицированную обработку;asMap — вернуть объект вида { "nodeId" : result }.Упрощённая версия read, которая возвращает только value (или undefined, если status != GOOD). Пример:
Опции (keepArray, asMap) работают аналогично read.
Записывает значения.
Допустимые формы аргументов:
write("ns=1;s=TestInt", 123) — одиночный узел;write("ns=1;s=TestFloat", 1.23, "float") — с явным типом (int32, float, double, bool);write([{ nodeId, value, type }, ...]) — массив объектов;write({ "ns=1;s=Out1": 10, "ns=1;s=Flag": true }) — карта.Возвращает UA_StatusCode (0 при успехе). При первой неудачной записи код ошибки сохраняется в лог JSOPCUAClient.