The demo app contains a proto-CRM and a quick implementation of a SIP server. It runs on Java 8+.
Please tell me what you think about this thing. Are there any services or apps that you would draw with such a tool once it's ready?
I was exploring the existing visual process design toolkits like BPMN execution engines for my work (fintech), but I quickly learned that they weren't working as I was expecting.
They were aiming on orchestrating the workflows as business processes, without focus on real-time execution. For integration purposes a developer would need to embed and configure some different tool along with the process engine.
So I started coding, implementing the engine from scratch, redefining slightly the meaning of BPMN elements to my understanding:
- Message Event became an Apache Camel endpoint consumer or producer - basically waiting or issuing an external system call via some API. The user, with an Apache's extensive component list and their docs as a cheat sheet  would define the app's integration points: reading files, listening to restful requests ans so on.
- User Task instead of being just an input form became a full blown web page or page fragment. The user is presented with the process-bound data in a legible form to make a decision and to complete the user task.
- I added web page templates to the processes themselves. Now you may design a complex web page with dynamical parts that are represented by the currently waiting process User Tasks page fragments.
- The "multi-instance" elements will work with long streams sequentially splitting them in chunks;
- Some other less obvious things were made like the "stream parallelizer" to direct the stream bytes to different consumers simultaneously. The process, for example, will be able to send audio to the user and in parallel to the speech recognition software (and then to the user in a form of text).
So what do you think this may grow into?