How processing works in a workspace

As you learn to work with Opportunity Detect, it is helpful to have a basic understanding of the way the application processes transactions.

Trigger systems process one transaction record at a time. Transaction records always include a customer ID, an audience, a timestamp, and data relating to the customer action that created the record.

Trigger systems turn transaction records into events. Event components perform their operations when they receive an incoming event, and then they send an event of their own that activates other event components that are configured to listen for its event.

Event components can also use data components, which are prompted to perform their operations when the event component needs them to complete its processing.

At a high level, Opportunity Detect processes transactions as follows.

  1. Transaction and profile data is passed into the engine.
  2. State History is loaded. State History contains the following:
    • Incoming event timestamps for components that use incoming events
    • Firing event history for firing frequency evaluation
    • Data saved in Container components
  3. Transactions are processed one at a time across all trigger systems in the workspace.
  4. Backward Inactivity, Forward Inactivity, and Pattern components configured to use negative mode are processed if they have matured.
  5. For each transaction record, an outcome is produced for each trigger system in the workspace, if the criteria in the trigger system are met.

    The format of the outcome data is determined by the data source connector used for outcomes.

  6. State History is packed and saved.
  7. Inactivity events are processed for customers who have had no transactions. This applies to Backward Inactivity, Forward Inactivity, and Pattern components configured to use negative mode.