'webconstr' capability for WebSocket User API

Overview

The module serves the operation of the `Web Builder' application, designed to create interactive User Interface.

The web constructor in its pure form is packaged in the role application archive, where additionally metadata describes the event processing. Additionally, scripts for interacting with instances of such role-based applications can be configured on the server.

UI event processing in scenarios

Each event generated in the UI can be configured to send a request to the server. As a result of such a request, the service script assigned in the role application metadata is executed, which results in an update to the application’s stack. By applying the update to the UI stack, the UI changes its appearance or is filled with content. The script can be packaged together with the designer in the role application archive and not be visible to users and the system administrator through the API. Thus, the most initiating event, load, is executed at load time and serves to initially populate the UI with forms and content.

Generation of events by the server

The server can script-initiatedly generate a change of steit to any of the users in any of its applications. Handling a server event on a change in the state results in changes to the UI - the form, style or content may change - up to and including a complete replacement UI.

Detecting connections from web builder applications is done in the registry using components Operation(Svc) m Operation(IVR). A filter by user and application name (folder) is specified. Distinguishing between copies of the same application launched by the same user must be decided in the script based on other user data.