Event Integration into the BPMN Engine
Various events can occur in Citeck, such as:
creation of a new document;
status change;
adding a comment;
modification of document properties;
etc.
In a business process, it must be possible to react to these events — for example, send notifications when a comment is added, or trigger a subprocess when certain document properties are changed. The configuration of event reactions should be as simple and user-friendly as possible.
The following requirements were set for event integration into the BPMN engine:
Selecting an event type from the list of available events.
Support for third-party “custom” events, including those arising in user-defined modules.
When reacting to events, it must be possible to retrieve event information and configure an additional model based on the Records API.
Catch events must support predicates to determine whether a reaction to the event is required.
Based on these requirements, the capabilities of signal and message in Camunda BPMN were analyzed. As a result, it was decided to use signals as the foundation for event integration into the BPMN engine, since messages have significant limitations and do not provide the required flexibility.
Base architecture: