ECA is a no-code solution that allows you to orchestrate your Drupal site. Integrated with graphical user interfaces such as BPMN.iO, Camunda, ECA Classic Modeller or other possible future modellers, ECA is a robust system for building conditionally triggered action sets.
ECA is triggered for each Drupal event. It validates these events against event-condition-action models and processes all models for the current event. ECA models are stored in config, so they can be imported and exported via the admin UI or Drush.
If you want to read more about ECA, be sure to check out the ECA guide.There is a lot of interesting information, as well as a library of downloadable ECA models and video tutorials.
https://ecaguide.org/
ECA is currently integrated with the following modellers:
- BPMN.iO: JavaScript-based implementation for building models as two-dimensional diagrams, integrated into the Drupal admin UI
- Camunda: user-friendly desktop client for designing and implementing automated processes
- ECA Classic Modeller: “low-level” modeling tool using Drupal core's form API
So with ECA you can put together a lot of things that until now modules were made for.
An example:
“After login, if I have a certain role, I want users to be redirected to a certain dashboard. “
There are modules that do this (e.g. redirect_after_login or user_redirect or login_destination) that are used on a lot of sites (these 3 modules alone on 48000+ sites).
We see in many places that developers build this custom.
The need for this is completely eliminated with ECA. The functionalities in these modules or custom code can also be implemented in a no-code way with ECA.
An example flow after login on ECA (this flow does the login redirect and much more, check the diagram).
https://www.drupal.org/project/eca