Расширения
Центральный Пульт поддерживает установку расширений, дополняющих функционал системы.
Установка расширений
К списку установленных расширений имеют доступ все пользователи через меню текущего пользователя ( ), но доступ к данным ограничен их правами и доступом к объектам.
Для добавления нового расширения необходимо нажать кнопку или , или перейти на страницу saymon.tech/extensions.
В открывшемся каталоге перейти на страницу интересующего расширения и выполнить шаги, описанные в инструкции по установке.
Пользовательские расширения
Пользователи могут писать собственные web-приложения, расширяющие или использующее возможности Центрального Пульта.
Чтобы включить такие приложения в состав сервера Центрального Пульта, необходимо:
-
Добавить секцию extensions в конфигурационный файл сервера и в параметре
path
указать путь к папке с расширениями, например,"/opt/saymon-extensions"
:"extensions": { "path": "/opt/saymon-extensions" }
-
Расположить содержимое каждого расширения в отдельной папке внутри корневой. Например,
/opt/saymon-extensions/my-extension
. Эта папка будет точкой входа в клиентскую часть расширения, доступную по URL:<Адрес_Сервера_Центрального_Пульта>/extensions/my-extension
. -
В файле
/etc/nginx/sites-enabled/saymon
добавить секциюlocation ^~ /extensions
и указать в параметреalias
папку изextensions.path
:# SAYMON Extensions folder. location ^~ /extensions { alias /opt/saymon-extensions/; try_files $uri $uri$args $uri$args/ @extension; autoindex on; }
Чтобы расширение было доступно в общем списке расширений, отображаемых в web-интерфейсе Центрального Пульта, оно должно содержать файл package.json
или meta.json
(данные meta.json
приоритетнее).
Формат и поля файла meta.json
:
Параметр | Описание | ||
---|---|---|---|
author |
Автор расширения. |
||
date |
Дата выхода установленного расширения. |
||
description |
Краткое описание расширения. |
||
homepage |
Ссылка на домашнюю страницу расширения. |
||
icon |
Прямая ссылка на иконку расширения. По умолчанию используется файл |
||
name |
Название расширения.
|
||
nameInUrl |
Часть ссылки для перехода на страницу с расширением. Совпадает с названием папки, в которой лежит файл |
||
urlToMeta |
Прямая ссылка на файл |
||
version |
Версия установленного расширения. |
Пример файла meta.json
:
{
"author": "SAYMON User",
"date": "2020/12/31",
"description": "Very useful custom extension",
"homepage": "https://saymon.tech/extensions/my-extension/",
"icon": "https://saas.saymon.info/extensions/my-extension/favicon.ico",
"name": "My Extension",
"nameInUrl": "my-extension",
"urlToMeta": "https://saymon.tech/extensions_meta/my-extension/meta.json",
"version": "1.0.1"
}