'webconstr' capability для WebSocket User API

Обзор

Модуль обслуживает работу приложения Веб-конструктор, призванного создавать интерактивный User Interface.

Веб-конструктор в чистом виде упаковывается в архив ролевого приложения, где дополнительно метаданными описывается процесс обработки событий. Дополнительно на сервере могут настраиваться сценарии взаимодействия с экземплярами таких ролевых приложений.

Обработка событий UI в сценариях

Каждое событие, генерируемое в UI, может быть настроено на отправку запроса на сервер. В результате такого запроса исполняется назначенный в метаданных ролевого приложения служебный сценарий, результатом которого является обновление для стейта приложения. Применяя обновление к стейту UI меняет вид или наполняется содержанием. Сценарий может быть упакован вместе с конструктором в архив ролевого приложения и не быть виден пользователям и администратора системы через API. Так, самое инициирующее событие - load - исполняется во время загрузки и служит для первоначального наполнения UI формами и содержанием.

Генерация событий сервером

Сервер может по инициативе сценария сгенерировать изменение стейта любому из пользователей в любом из его приложений. Обработка события сервера на изменение стейта приводит к изменениям в UI - может измениться форма, стиль или содержание - вплоть до полной замены UI.

Обнаружение подключений из приложений вебконструктора производится в регистраре с помощью компонентов Операция(Svc) м Операция(IVR). Указывается фильтр по пользователю и названию приложения (folder). Различение копий одного и того же приложения, запущенных одним пользователем, должно решаться в сценарии на основании иных пользовательских данных.