OmniStudio Architecture can be broken down into this three layers:
Let’s go over each and I’ll cover each of them in detail in future post
Digital Experience
This layer entails the primary UI components or the front end, these components are built from Lightning Web Component framework.
- FlexCards – displays contextual information
- OmniScripts – guided scripts, forms or screens to complete a business process.
Service Management
Includes data services used for create, read, update, delete (CRUD) operations. We can also do transform, calculation and track data in this layer which technically is the back end.
- Integration Procedures – declarative configuration for server side processes that execute multiple actions in a single server call
- DataRaptors – configuration services for retrieving, transforming and updating data
- 4 types of DataRaptors
- Turbo Extract – get data from a single SObject
- Extract – get one or more SObjects
- Load – save data on one or more SObjects
- Transform – manipulate any data from inside/outside Salesforce
- 4 types of DataRaptors
- Calculation Procedures and Matrices – run a detailed set of mathematical steps when complex calculations are required. Calculation procedures can call one more more calculation matrices(lookup tables)
Developer Experience
This layer we can loosely put as the devops entailing the deployment details.
- IDX Build Tools – command line automation tool that packages and migrates omnistudio datapacks in source control friendly format. Preserves dependencies, validates data and verifies the success of migration
- IDX Workbench – a desktop application that migrates datapacks and salesforce metadata from one org to another
- Run Test Procedures – an integration procedure that performs unit test of almost anything an integration procedure can invoke
- dataraptor
- calculation matrix
- apex class
- or another integration procedure
- Run Test Procedures – an integration procedure that performs unit test of almost anything an integration procedure can invoke