В библиотеке предусмотрен REST API. Есть два "уровня" доступа к REST API. Первый - это встроенный в UniSetActivator http-сервер.
- См. также
- SharedMemory HTTP API
-
Activator HTTP API
Второй уровень. Это функция apiRequest(query) которую можно вызывать у каждого объекта посредством RPC. Её вызов не требует наличия запущенного http-сервера. Из консоли вызов можно делать при помощи утилиты uniset2-admin.
Например так можно получить свойство "textname" для датчика ID=100
uniset2-admin --apiRequest ObjectName "/api/v01/configure/get?100&props=textname"
А так можно посмотреть текущие параметры для объекта MyProcess
uniset2-admin --apiRequest MyProcess "/api/v01/params/get"
Разные процессы могут расширять список базовых поддерживаемых команд. Для того, чтобы узнать какие объект поддерживает команды, можно вызвать команду help
uniset2-admin --apiRequest MyProcess "/api/v01/help"
- Предупреждения
- С точки зрения надёжности функционирования системы наличие запущенного http-сервера, а так же наличие функций getInfo(userparam) и apiRequest(query) которые возвращают string является ОПАСНЫМ. Т.к. размер запросов и ответов в текущей реализации не контролируется. И при помощи больших запросов можно вызвать переполнение памяти или крах процессов. На текущий момент контроль оставлен на разработчика конкретной реализации getInfo() или apiRequest().