Trigger-Based Execution of Marketing Programs

Once a trigger is associated with a campaign, the event capture application sets the steps illustrated in the figure in this topic in motion. These steps are as follows:

  1. The trigger service receives the event and maps the trigger to all eligible programs.

  2. The event capture application determines the programs that are executed as follows:

    • If a custom workflow has been created to handle cross-program prioritization, then this workflow is invoked to return the set of programs to execute. The custom workflow includes the following elements, all of which are extensible though configuration in Siebel Tools:

      • Customer_ID

      • Maximum number of program stages that are required to be returned (optional)

      • Event Code

      • Event Name

      • Event Category

      • An array consisting of Input Program Stages (stage IDs), the Program Type of each program associated with the stage, and the program priority of each stage

    • If no custom workflow exists, then the following parameters determine the programs to execute. If programs have identical priorities, then they are prioritized randomly.

      • Maximum number of Concurrent Programs for a Trigger

      • Program Priorities (in case of a tie)

  3. For each of the program stages to be executed, the trigger service passes the CUSTOMER_ID to the program stage, then the program stage uses the CUSTOMER_ID to pass the correct context to the Oracle BI segmentation engine to execute the segments.

    The segmentation engine restricts each segment to this CUSTOMER_ID so that either 0 or 1 record is loaded into S_CAMP_CON.

    Note: To accommodate the CUSTOMER_ID value, the Marketing Stage Execution workflow contains a CUSTOMER_ID input parameter, which is passed to the Load-Launch Campaigns step of the workflow. This calls the Marketing Campaign Load workflow, which contains a Get List Format System Data step that uses the BI Server to perform a WriteListFiles operation. This maps the CUSTOMER_ID to the value passed as input.

    The following figure illustrates trigger-based execution of marketing programs.

    Trigger-Based Execution of Marketing Programs. This image is described in surrounding text.

    If the Execute Event Trigger Web service is called in batch mode (that is, if Real Time Flag is set to N), then all the records remain queued in the History table and are picked up when the number of records reaches the threshold specified in the Stage Allocation Threshold server parameter. All the customer Ids are then concatenated and sent to Oracle BI as a single, comma-separated Id and are then processed. For information about adding a trigger to a campaign, see Adding Triggers to a Campaign Stage.

    Note: Real Time Flag is a parameter for the stage threshold in the Marketing Event Trigger Execution Web service. You can change this value when calling this Web service. Real Time Flag is a case-sensitive parameter.

    To enable throttling during a campaign load, a parameter called '"-Contact Profile".ROW_ID' stores the Customer Id value in the Get List Format System Data step of the Marketing Campaign Load workflow. You can enable throttling on other parameters by adding them to the same workflow step. You can also use the '"-Contact Profile".ROW_ID' parameter to enable throttling in the Marketing Create Lead and Marketing Create Responses workflows. If you have modified the name of the Contact Profile variable in Oracle Business Intelligence, then be sure to modify the parameter name to match.