Plugin API
P=>S - Запрос от плагина к серверу
P<=S - Ответ от сервера плагину
1.1 Получение параметров
P=>S { type: "get", tablename: "params"}
P<=S { type: "get", params:{host:"localhost",.., debug:"on" }, response:1 }
В объект params включаются все параметры из массива params манифеста плагина.
Формат <имя параметра>:<значение>
Добавляется параметр "debug", если включен режим отладки
1.2 Получение конфигурации каналов
P=>S { type: "get", tablename: "config"}
P<=S { type: "get", config:[{"id":"DI1", <"desc":"", ..>}], response:1 }
Массив "config" содержит каналы. Свойства каналов зависят от структуры каналов, описанных в манифесте. Обязательным является только "id" канала.
1.3 Получение дополнительных (расширенных) данных
P=>S { type: "get", tablename: "extra"}
P<=S { type: "get", extra:[{...}], response:1 }
Массив "extra" содержит расширенные данные (например, сообщения от контроллера для MegaD). Структура данных также описывается в манифесте.
P=>S { type: "channels", data: [{"id":"AI1", <"desc":"AI1", "adr":7878, ...>]}
Каждый элемент массива содержит id канала.
Остальные свойства каналов зависят от структуры каналов, описанных в манифесте.
Используется, если плагин сам определяет каналы.
P=>S { type: "data", data: [{"id":"AI1", "value":23.78, <"ext":{volt:220, power:42 }>]}`
Каждый элемент массива содержит id канала, основное значение и/или набор дополнительных свойств. Дополнительные свойства для каналов описываются в манифесте
P=>S { type: "log", txt:"Это сообщение от плагина возможно запишется в лог"}
P=>S { type: "sub", id:"xx", event:"devices", filter:{..} }}
P<=S { type: "sub", id:"xx", response:1 }
Используется сервисными плагинами.
S=>P { type: "act", data:[{id:"DO1", command:"on"|"off"|"set" <, value:1>}]}
S=>P { type: "debug", mode:"on"}