Системные модули
Системные модули — модули, подключаемые для всей JAICP. Зависимости на системные модули доступны во всех ботах без дополнительного объявления.
Доступные системные модули
В облачной версии платформы доступен системный модуль zb-common
.
Он содержит в себе ряд универсальных и часто используемых элементов сценариев:
- Именованные паттерны.
- Справочники и конвертеры для именованных сущностей.
- Функции и библиотеки на JavaScript.
- Готовые сценарные фрагменты.
Использование
Чтобы импортировать файл из системного модуля в сценарий, необходимо в одном из файлов сценария воспользоваться тегом require
:
require: offtopic/fallback.sc
module = sys.zb-common
Здесь:
zb-common
— название системного модуля.offtopic/fallback.sc
— путь к подключаемому файлу.
sys.
.Пользовательские системные модули
On-premise
Если JAICP установлена к вам в контур, ваши сотрудники могут самостоятельно создавать системные модули, которые будут доступны всем пользователям вашей установки.
Есть два способа добавить системные модули:
- Добавить параметры репозиториев с системными модулями в конфигурацию компонента EditorBE.
- Подключить модули с хоста, где установлен компонент BotServer.
Модули из удаленных репозиториев
Разработчики создают удаленный репозиторий с проектом JAICP, который будет подключаться в другие проекты как системный модуль.
Системные администраторы должны добавить параметры репозитория в переопределяющую конфигурацию компонента EditorBE, после чего перезапустить компонент:
configs/hosts/{env_name}/editorbe/application-override.ymlsystem-projects:
projects:
# Системные проекты по умолчанию…
- url: https://gitlab.custom.com/custom-module # URL репозитория.
project-id: custom-module # ID проекта.
branch: main # Ветка в репозитории проекта, по умолчанию master.
module: true # Флаг, указывающий, что это системный модуль.Пользователи вашей установки JAICP смогут подключать файлы из системного модуля через
require
. Название системного модуля соответствует значению параметраproject-id
:require: patterns.sc
module = sys.custom-module
Модули из локальной директории
Системные администраторы должны добавить в переопределяющую конфигурацию компонента BotServer путь до директории, в которой будут размещены системные модули:
configs/hosts/{env_name}/botserver/application-override.ymlbot:
systemModulesFolder: /opt/sys-modulesПроекты, которые предполагается подключать как системные модули, нужно разместить в указанной директории:
└── opt
└── sys-modules
├── custom-module
│ └── src
│ └── patterns.sc
└── js-packages
└── src
├── moment.min.js
└── underscore.min.jsПользователи вашей установки JAICP смогут подключать файлы из системного модуля через
require
. Название системного модуля соответствует названию поддиректории внутриbot.systemModulesFolder
:require: patterns.sc
module = sys.custom-module