Веб-расширения

Раздел для разработчиков.

Веб-расширения — сторонние программы (веб-модули) внутри приложения Bpium. Расширение состоит из js-файла, css-файл и других ресурсов (например, шаблонов или изображений).

Типы расширений

  • Модальные — открываются в отдельном слое поверх открытого раздела в Bpium (например, каталога с записями). Могут занимать часть экрана или всю рабочую область приложения. При этом основной экран приложение Bpium остается в DOM-дереве. Пример — панель телефонии Oktell.

  • Экранные — экранные модули занимают всю рабочую область приложения, замещая в DOM-дереве открытый раздел приложения. Этот тип расширений поддерживается пока не полностью.

  • Фоновые — веб-расширение работает в фоне и управляет DOM-деревом (встраивает элементы) в нужный ему момент.

Создание расширений

1. Выберите уникальное название

Каждое расширение имеет уникальный код-идентификатор. Код может состоять из латинских букв, цифр и знака дефис.

2. Напишите расширение

Исходный код минимального расширения приведен в нашем публичном репозитарии: https://bitbucket.org/snippets/bpium/d4bMe/blank-modal-extension

3. Регистрация расширения

Bpium защищает расширения от тиражирования между системами в разных компаниях. Все расширения проходят через систему лицензирования. Подключение расширения к системе возможно только при наличии лицензии на это расширение в лицензии компании.

Чтобы зарегистрировать расширение в системе лицензирования Bpium, напишите письмо на почту [email protected], указан выбранный уникальный код расширения и ваш регистрационный номер лицензии.

Без регистрации расширения в системе лицензирования подключить его будет невозможно.

Подключение расширений

Подключать сторонние и собственные расширения можно только в серверной версии.

Файлы расширения необходимо разместить на внешнем веб-сервере или положить в рабочую папку на сервере Bpium (если у вас несколько серверов, то на каждый сервер): bpium_path/www/modules/my-extension/

Список подключенных расширений храниться в каталоге «Расширения» в отделе «Система». Для подключения расширения создайте новую запись в этом каталоге:

  • Название — название расширения в главном меню приложения

  • Иконка — иконка расширения в главном меню иконка (список доступных значений)

  • Код — уникальный идентификатор расширения, должен совпадать названием модуля в скрипте (переменная moduleName)

  • JS URL — относительный или абсолютный путь до js-скртипта. Например для локально размещенного расширения: modules/my-extension/main.js

  • CSS URL — относительный или абсолютный путь до js-скртипта. Например для локально размещенного расширения: modules/my-extension/main.css

Сохраните запись и обновите страницу в браузере. Если все верно, то в консоле браузера в вкладке Network можно увидеть запросы к вашим файлам.

Проверка подключения

При старте веб-приложение Бипиум делает запрос к серверу: /auth/company

Ответ сервера содержит набор подключенных расширений: { "domain": "admin", "title": "Моя компания", "extensions": [ массив расширений ]}

Сервер не вернет расширения, на которые не получена лицензия для компании.