Skip Headers
Oracle® Real-Time Decisions Base Application Installation and Reference Guide
Release 3.1

Part Number E19020-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

5 Base Customer Service

This chapter describes the elements in the Inline Service RTD_Base_Customer_Service. It contains the following topics:

5.1 Introduction to Base Customer Service

This chapter describes the configuration of the Inline Service, RTD_Base_Customer_Service. This Inline Service is independent of any specific front-end application or back-end data schema. As a standalone solution, users will adapt this solution by integrating it into their current environment, and selecting the components of the Inline Service that apply to their own workflow.

This Base Inline Service contains an extensive entity model that can be used to model customer profile attributes as well as current interaction data related to their service interactions. Combining data about the customer and what the customer is doing allows Oracle RTD to perform real time analysis of the interaction and provide predictions on "next best actions" within the context of the current set of actions. These predictions are based on a combination of user-defined rules and likelihood scores determined by Oracle RTD's modeling.

The next best actions include predicting the best offer or promotion to present to the customer, or in some cases basic messaging, where an offer presentation is deemed to be inappropriate, for example, in escalation or complaint calls.

RTD_Base_Customer_Service contains a variety of integration points to allow users to incorporate Oracle RTD directly into their workflow. As a result of letting Oracle RTD learn on current interaction data passed to it through these integration points, Oracle RTD can model not only the results of next best actions, for example, offers, promotions, messaging, but also the interaction itself. This allows users of this Inline Service to model and ultimately predict interaction based attributes such as Interaction Duration, Interaction Reason, and Customer Attrition. As a result, customers can better understand the driving factors behind the metrics that matter to them.

The workflow described in this chapter applies to a generic customer service interaction and supports the following scenarios:

5.2 Business Process Flows

This section describes a general service workflow with the integration points supported by RTD_Base_Customer_Service, followed by an example of a Contact Center interaction flow that has been enhanced by RTD_Base_Customer_Service.

This section consists of the following topics:

5.2.1 General Service Workflow

The Inline Service RTD_Base_Customer_Service contains a variety of Oracle RTD Informant and Advisor integration points that users can implement into their workflow process. As depicted in the diagram that follows, these integration points can be arranged in any fashion to support the workflow where Oracle RTD is to be integrated to. Not all integration points need to be utilized for the Inline Service to function correctly. Users can configure and customize each integration point according to their own specific requirements.

The following diagram shows an overview of the stages of a typical service application and several of its possible interactions with the RTD_Base_Customer_Service Inline Service.

Note:

The description in the long box in the middle of the workflow is intentionally generic, to represent a general customer application. Exact details will be provided by the customer's own specific interaction workflow.
Surrounding text describes spa_flow.gif.

5.2.2 Service Interaction Workflow

The flow chart that follows depicts a sample service interaction flow that has been enabled by the Oracle RTD Inline Service RTD_Base_Customer_Service.

Shaded process boxes indicate touch points for Oracle RTD Integration Points, as follows:

  • Shaded boxes with a standard thickness border indicate touch points for Informants

  • Shaded boxes with a thicker, bold border indicate touch points for Advisors

These touch points indicate which integration points from the base solution have been integrated. The diagram is as an example of how a user can design the integration points to use and sequence them in the order that makes the most sense.

Surrounding text describes sr_flow1.gif.

In this example, the user has chosen to use the Inline Service RTD_Base_Customer_Service to provide multiple predictions for the interaction workflow. The Oracle RTD Advisors and Informants enable the user application to achieve the following objectives:

  1. The user aims to have Oracle RTD provide a predictive profile of the customer to alert the service agent of the most likely interaction profile (such as interaction reason) and if the customer is a flagged customer.

  2. Depending on the customer's "flagged" status, the intention is to allow Oracle RTD to suggest the best likely action for this customer and have the agent determine if the call should move forward, For example, if the customer has an outstanding bill, Oracle RTD can alert the agent to reroute the call to a billing specialist.

  3. Assuming that the call continues, based on the customer profile and what the customer is calling about, Oracle RTD can rank a list of suggested solutions to handle the customers needs.

  4. After the customer's main interaction reason is addressed, as a final step, Oracle RTD can then be used to suggest any possible offers or promotions that the agent can tell the customer about.

In order for Oracle RTD to provide the best predictions for each customer interaction, it is critical that the Inline Service is configured to have access to both historical and profile data about the customer as well as the current interaction data.

Information from both the front-end application as well as existing data sources allows Oracle RTD to build models that ultimately predict unique scores for each customer and for each individual interaction. For example, if Oracle RTD was not informed of the real time interaction, similar offers could be recommended for complaint calls as well as support request calls.

Therefore, it is important for users to consider how they would pass data to the RTD server for each interaction (Informants) and what data can be made readily available from existing sources (Data Sources).

Considering the service interaction workflow that appears in this section, the user has chosen to implement the following operations:

  1. To call an Oracle RTD informant as soon as the customer is identified, to allow Oracle RTD to begin to build out its session data with back-end historical and profile data about the customer.

  2. As more information is gathered during the interaction, to call Oracle RTD to update the session with current interaction data, for example, Interaction Reason, Interaction Product.

  3. As each solution is tried, to alert Oracle RTD of which solutions were tried and which ultimately solved the customer's issue.

  4. For any offers presented to the customer, to alert Oracle RTD of which offers were presented and if any were accepted by the customer.

  5. After the interaction has been completed, to provide Oracle RTD with the final outcomes of the interaction and to allow Oracle RTD to update existing models with the new data.

Ultimately, by applying from this Inline Service the components that are most useful for their workflow, users will be able to reduce their application design and configuration time.

5.3 Performance Goals

The performance goals included with this Inline Service are:

Each performance goal is scored according to the scoring parameters for the specific choice group that uses them. In some cases, not all of the performance goals are used at the same time for any given decision. See Section 5.4, "Choice Groups" for further details. The scoring methods tied to each performance goal can be completely reconfigured to support customer requirements.

5.4 Choice Groups

This section consists of the following topics:

5.4.1 Analysis-Oriented Choice Groups

For the business flows described in Section 5.2, "Business Process Flows," the following analysis-oriented choice groups have been configured in this Inline Service. Most of these choice groups are tied to dynamic choices, while choice groups with "Yes/No" values as choices are tied to static choices.

Surrounding text describes spa_ana_ch_gps.gif.

This section contains descriptions of the following choice groups:

5.4.1.1 Call Product Choice Group

This choice group contains choices associated with Call Product. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-1 describes the configuration parameters for the Call Product choice group, including a list of the choice attributes.

Table 5-2 describes the choice attributes in more detail.

Table 5-3 describes the dynamic choice parameters for this choice group.

Table 5-1 Configuration Parameters for Call Product Choice Group

Parameter Description

Choice Group Name

Call Product

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-2.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Product List

Group Eligibility

None

Dynamic Choices

For details, see Table 5-3.


Table 5-2 Choice Attribute Details for Call Product Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Call Product entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs CallProductModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-3 Dynamic Choice Details for Call Product Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Product List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.1.2 Customer Attrition Choice Group

This choice group contains choices associated with Customer Attrition. Its choices are static and configured in the Inline Service. The configured choices are:

  • Attrition

  • No Attrition

Table 5-4 describes the configuration parameters for the Customer Attrition choice group, including a list of the choice attributes.

Table 5-5 describes the choice attributes in more detail.

Table 5-4 Configuration Parameters for Customer Attrition Choice Group

Parameter Description

Choice Group Name

Customer Attrition

Choice Attributes

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-5.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-5 Choice Attribute Details for Customer Attrition Choice Group

Choice Attribute Type Value

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs CustomerAttritionModel and "this" choice.

Name

String

Specified at the choice level.

Type

String

Specified at the choice level.


5.4.1.3 Customer Satisfaction Choice Group

This choice group contains choices associated with Customer Satisfaction. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-6 describes the configuration parameters for the Customer Satisfaction choice group, including a list of the choice attributes.

Table 5-7 describes the choice attributes in more detail.

Table 5-8 describes the dynamic choice parameters for this choice group.

Table 5-6 Configuration Parameters for Customer Satisfaction Choice Group

Parameter Description

Choice Group Name

Customer Satisfaction

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-7.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Satisfaction Values List

  • Customer Satisfaction List Entity is populated by the Get Analysis Values List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-8.


Table 5-7 Choice Attribute Details for Customer Satisfaction Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Satisfaction Values entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs CustomerSatisfactionModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-8 Dynamic Choice Details for Customer Satisfaction Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Satisfaction Values List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.1.4 First Call Resolution Choice Group

This choice group contains choices associated with First Call Resolution. Its choices are static and configured in the Inline Service. The configured choices are:

  • FCR Not Resolved

  • FCR Resolved

Table 5-9 describes the configuration parameters for the First Call Resolution choice group, including a list of the choice attributes.

Table 5-10 describes the choice attributes in more detail.

Table 5-9 Configuration Parameters for First Call Resolution Choice Group

Parameter Description

Choice Group Name

First Call Resolution

Choice Attributes

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-10.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-10 Choice Attribute Details for First Call Resolution Choice Group

Choice Attribute Type Value

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs FirstCallResolutionModel and "this" choice.

Name

String

Specified at the choice level.

Type

String

 

5.4.1.5 Interaction Abandonment Choice Group

This choice group contains choices associated with Interaction Abandonment. Its choices are static and configured in the Inline Service. The configured choices are:

  • Abandoned

  • Not Abandoned

Table 5-11 describes the configuration parameters for the Interaction Abandonment choice group, including a list of the choice attributes.

Table 5-12 describes the choice attributes in more detail.

Table 5-11 Configuration Parameters for Interaction Abandonment Choice Group

Parameter Description

Choice Group Name

Interaction Abandonment

Choice Attributes

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-12.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-12 Choice Attribute Details for Interaction Abandonment Choice Group

Choice Attribute Type Value

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionAbandonmentModel and "this" choice.

Name

String

Specified at the choice level.

Type

String

Specified at the choice level.


5.4.1.6 Interaction Duration Choice Group

This choice group contains choices associated with Interaction Duration. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-13 describes the configuration parameters for the Interaction Duration choice group, including a list of the choice attributes.

Table 5-14 describes the choice attributes in more detail.

Table 5-15 describes the dynamic choice parameters for this choice group.

Table 5-13 Configuration Parameters for Interaction Duration Choice Group

Parameter Description

Choice Group Name

Interaction Duration

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-14.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Interaction Duration List

  • Interaction Duration List Entity is populated by the Get Analysis Values List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-15.


Table 5-14 Choice Attribute Details for Interaction Duration Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Interaction Duration entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionDurationModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-15 Dynamic Choice Details for Interaction Duration Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Interaction Duration List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.1.7 Interaction Escalation Choice Group

This choice group contains choices associated with Interaction Escalation. Its choices are static and configured in the Inline Service. The configured choices are:

  • Escalated

  • Not Escalated

Table 5-16 describes the configuration parameters for the Interaction Escalation choice group, including a list of the choice attributes.

Table 5-17 describes the choice attributes in more detail.

Table 5-16 Configuration Parameters for Interaction Escalation Choice Group

Parameter Description

Choice Group Name

Interaction Escalation

Choice Attributes

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-17.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-17 Choice Attribute Details for Interaction Escalation Choice Group

Choice Attribute Type Value

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionEscalationModel and "this" choice.

Name

String

 

Type

String

 

5.4.1.8 Interaction Outcome Choice Group

This choice group contains choices associated with Interaction Outcome. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-18 describes the configuration parameters for the Interaction Outcome choice group, including a list of the choice attributes.

Table 5-19 describes the choice attributes in more detail.

Table 5-20 describes the dynamic choice parameters for this choice group.

Table 5-18 Configuration Parameters for Interaction Outcome Choice Group

Parameter Description

Choice Group Name

Interaction Outcome

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-19.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Interaction Outcome List

  • Interaction Outcome List Entity is populated by the Get Analysis Values List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-20.


Table 5-19 Choice Attribute Details for Interaction Outcome Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Interaction Outcome entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionOutcomeModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-20 Dynamic Choice Details for Interaction Outcome Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Interaction Outcome List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.1.9 Interaction Reason Choice Group

This choice group contains choices associated with Interaction Reason. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-21 describes the configuration parameters for the Interaction Reason choice group, including a list of the choice attributes.

Table 5-22 describes the choice attributes in more detail.

Table 5-23 describes the dynamic choice parameters for this choice group.

Table 5-21 Configuration Parameters for Interaction Reason Choice Group

Parameter Description

Choice Group Name

Interaction Reason

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-22.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Interaction Reason List

  • Interaction Reason List Entity is populated by the Get Analysis Values List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-23.


Table 5-22 Choice Attribute Details for Interaction Reason Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Interaction Reason List entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionReason ListModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-23 Dynamic Choice Details for Interaction Reason Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Interaction Reason List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.1.10 Interaction Transfer Choice Group

This choice group contains choices associated with Interaction Transfer. Its choices are static and configured in the Inline Service. The configured choices are:

  • Transferred

  • Not Transferred

Table 5-24 describes the configuration parameters for the Interaction Transfer choice group, including a list of the choice attributes.

Table 5-25 describes the choice attributes in more detail.

Table 5-24 Configuration Parameters for Interaction Transfer Choice Group

Parameter Description

Choice Group Name

Interaction Transfer

Choice Attributes

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-25.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-25 Choice Attribute Details for Interaction Transfer Choice Group

Choice Attribute Type Value

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs InteractionTransferModel and "this" choice.

Name

String

Specified at the choice level.

Type

String

Specified at the choice level.


5.4.1.11 Service Level Choice Group

This choice group contains choices associated with Service Level of the Interaction. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-26 describes the configuration parameters for the Service Level choice group, including a list of the choice attributes.

Table 5-27 describes the choice attributes in more detail.

Table 5-28 describes the dynamic choice parameters for this choice group.

Table 5-26 Configuration Parameters for Service Level Choice Group

Parameter Description

Choice Group Name

Service Level

Choice Attributes

Dynamic Choice

Category

Choice Id

Choice Likelihood

Name

Type

For choice attribute details, see Table 5-27.

Scores

For the performance goal Maximize Likelihood, score is the choice attribute Choice Likelihood.

Choice Events

None

Choice Eligibility

None

Group Attributes

Service Level List

  • Service Level List Entity is populated by the Get Analysis Values List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-28.


Table 5-27 Choice Attribute Details for Service Level Choice Group

Choice Attribute Type Value

Dynamic Choice

Analysis Value

Used to store the singular entity value pulled from the Service Level entity array group attribute.

Category

String

None

Choice Id

String

None

Choice Likelihood

Double

Calculated by the function Get Choice Likelihood, with the inputs ServiceLevelModel and "this" choice.

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-28 Dynamic Choice Details for Service Level Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Service Level List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2 Decision-Oriented Choice Groups

For the business flows described in Section 5.2, "Business Process Flows," the following decision-oriented choice groups have been configured in this Inline Service. All of these choice groups are tied to dynamic choices and a corresponding choice event model. See Section 5.8, "Models" for further details.

Surrounding text describes spa_dec_ch_gps.gif.

This section contains descriptions of the following choice groups:

5.4.2.1 Follow Up Actions Choice Group

This choice group contains choices associated with Follow Up Actions. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-29 describes the configuration parameters for the Follow Up Actions choice group, including a list of the choice attributes.

Table 5-30 describes the choice attributes in more detail.

Table 5-31 describes the dynamic choice parameters for this choice group.

Table 5-29 Configuration Parameters for Follow Up Actions Choice Group

Parameter Description

Choice Group Name

Follow Up Actions

Choice Attributes

Dynamic Choice

Action Id

Category

Description Text

External Rule

Marketing Priority

Name

Type

For choice attribute details, see Table 5-30.

Scores

For the performance goal Maximize Expected Revenue, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Marketing Priority, score is the choice attribute Marketing Priority.

Choice Events

Accepted

Interested

Choice Eligibility

None

Group Attributes

Follow Up Action List

  • Follow Up Action List Entity is populated by the Get Follow Up Action List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-31.


Table 5-30 Choice Attribute Details for Follow Up Actions Choice Group

Choice Attribute Type Value

Dynamic Choice

Action

Used to store the singular entity value pulled from the Follow Up Action entity array group attribute.

Action Id

String

Dynamic Choice / Action Id

Category

String

None

Description Text

String

Dynamic Choice / Description Text

External Rules

String

None

Marketing Priority

Double

Dynamic Choice / Marketing Priority

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-31 Dynamic Choice Details for Follow Up Actions Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Follow Up Action List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2.2 Retention Actions Choice Group

This choice group contains choices associated with Retention Actions. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-32 describes the configuration parameters for the Retention Actions choice group, including a list of the choice attributes.

Table 5-33 describes the choice attributes in more detail.

Table 5-34 describes the dynamic choice parameters for this choice group.

Table 5-32 Configuration Parameters for Retention Actions Choice Group

Parameter Description

Choice Group Name

Retention Actions

Choice Attributes

Dynamic Choice

Action Id

Category

Description Text

External Rule

Marketing Priority

Name

Type

For choice attribute details, see Table 5-33.

Scores

For the performance goal Maximize Expected Revenue, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Marketing Priority, score is the choice attribute Marketing Priority.

Choice Events

Accepted

Interested

Choice Eligibility

None

Group Attributes

Retention Action List

  • Retention Action List Entity is populated by the Get Retention Action List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-34.


Table 5-33 Choice Attribute Details for Retention Actions Choice Group

Choice Attribute Type Value

Dynamic Choice

Action

Used to store the singular entity value pulled from the Retention Action entity array group attribute.

Action Id

String

Dynamic Choice / Action Id

Category

String

None

Description Text

String

Dynamic Choice / Description Text

External Rules

String

None

Marketing Priority

Double

Dynamic Choice / Marketing Priority

Name

String

Dynamic Choice / Name

Type

String

Dynamic Choice / Type


Table 5-34 Dynamic Choice Details for Retention Actions Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Retention Action List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2.3 Cross Sell Offers Choice Group

This choice group contains choices associated with Cross Sell Offers. Its choices are configured dynamically and are determined by users based on their customer workflow. This choice group relies on either a provided product id (see Group attributes) in order to determine which dynamic choices should be populated dynamically according to the interaction product, or a list of cross sell offers provided as an attribute to the Get Offers or Get Cross Sell offers integration point.

Table 5-35 describes the configuration parameters for the Cross Sell Offers choice group, including a list of the choice attributes.

Table 5-36 describes the choice attributes in more detail.

Table 5-37 describes the dynamic choice parameters for this choice group.

Table 5-35 Configuration Parameters for Cross Sell Offers Choice Group

Parameter Description

Choice Group Name

Cross Sell Offers

Choice Attributes

Dynamic Choice

Category

Cost

External Rule

Marketing Priority

Name

Offer ID

Offer Type

Revenue

For choice attribute details, see Table 5-36.

Scores

For the performance goal Maximize Expected Revenue, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Marketing Priority, score is the choice attribute Marketing Priority.

Choice Events

Fulfilled

Interested

Presented

Choice Eligibility

None

Group Attributes

Cross Sell Products

  • Cross Sell Product List Entity populated by the Get Cross Sell Product List function whose input is the interaction product id. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-37.


Table 5-36 Choice Attribute Details for Cross Sell Offers Choice Group

Choice Attribute Type Value

Dynamic Choice

Action

Used to store the singular entity value pulled from the Cross Sell Products entity array group attribute.

Category

String

Dynamic Choice / Category

Cost

Double

Dynamic Choice / Unit Price

External Rules

String

None

Marketing Priority

Double

Dynamic Choice / Marketing Priority

Name

String

Dynamic Choice / Name

Offer Id

String

Dynamic Choice / Product Id

Offer Type

String

"Cross Sell"

Revenue

Double

None


Table 5-37 Dynamic Choice Details for Cross Sell Offers Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Cross Sell Products

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Offer Id

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2.4 Promotions Choice Group

This choice group contains choices associated with Promotions. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-38 describes the configuration parameters for the Promotions choice group, including a list of the choice attributes.

Table 5-39 describes the choice attributes in more detail.

Table 5-40 describes the dynamic choice parameters for this choice group.

Table 5-38 Configuration Parameters for Promotions Choice Group

Parameter Description

Choice Group Name

Promotions

Choice Attributes

Dynamic Choice

Category

Cost

External Rule

Marketing Priority

Name

Offer ID

Offer Type

Revenue

For choice attribute details, see Table 5-39.

Scores

For the performance goal Maximize Expected Revenue, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Marketing Priority, score is the choice attribute Marketing Priority.

Choice Events

Fulfilled

Interested

Presented

Choice Eligibility

None

Group Attributes

Promotion List

  • Promotion List Entity populated by the Get Promotion List function. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-40.


Table 5-39 Choice Attribute Details for Promotions Choice Group

Choice Attribute Type Value

Dynamic Choice

Action

Used to store the singular entity value pulled from the Promotions entity array group attribute.

Category

String

Dynamic Choice / Category

Cost

Double

None

External Rules

String

None

Marketing Priority

Double

Dynamic Choice / Marketing Priority

Name

String

Dynamic Choice / Name

Offer Id

String

Dynamic Choice / Promotion Id

Offer Type

String

"Promotions"

Revenue

Double

None


Table 5-40 Dynamic Choice Details for Promotions Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Promotion List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Offer Id

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2.5 Up Sell Offers Choice Group

This choice group contains choices associated with Up Sell Offers. Its choices are configured dynamically and are determined by users based on their customer workflow. This choice group relies on either a provided product id (see Group attributes) in order to determine which dynamic choices should be populated dynamically according to the interaction product, or a list of up sell offers provided as an attribute to the Get Offers or Get Up Sell offers integration point.

Table 5-41 describes the configuration parameters for the Up Sell Offers choice group, including a list of the choice attributes.

Table 5-42 describes the choice attributes in more detail.

Table 5-43 describes the dynamic choice parameters for this choice group.

Table 5-41 Configuration Parameters for Up Sell Offers Choice Group

Parameter Description

Choice Group Name

Up Sell Offers

Choice Attributes

Dynamic Choice

Category

Cost

External Rule

Marketing Priority

Name

Offer ID

Offer Type

Revenue

For choice attribute details, see Table 5-42.

Scores

For the performance goal Maximize Expected Revenue, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

For the performance goal Maximize Marketing Priority, score is the choice attribute Marketing Priority.

Choice Events

Fulfilled

Interested

Presented

Choice Eligibility

None

Group Attributes

Up Sell Products

  • Up Sell Product List Entity populated by the Get Up Sell Product List function whose input is the interaction product id. See Section 5.5, "Entities" for more details.

Group Eligibility

None

Dynamic Choices

For details, see Table 5-43.


Table 5-42 Choice Attribute Details for Up Sell Offers Choice Group

Choice Attribute Type Value

Dynamic Choice

Action

Used to store the singular entity value pulled from the Up Sell Products entity array group attribute.

Category

String

Dynamic Choice / Category

Cost

Double

Dynamic Choice / Unit Price

External Rules

String

None

Marketing Priority

Double

Dynamic Choice / Marketing Priority

Name

String

Dynamic Choice / Name

Offer Id

String

Dynamic Choice / Product Id

Offer Type

String

"Up Sell"

Revenue

Double

None


Table 5-43 Dynamic Choice Details for Up Sell Offers Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Up Sell Products

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Offer Id

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.4.2.6 Predictive Summary Choice Group

The Predictive Summary choice group contains the single static choice, Predictive Summary. It is used in conjunction with the Select Predictive Summary decision and returns a collective summary of call detail decisions related to the customer.

Table 5-44 describes the configuration parameters for the Predictive Summary choice group, including a list of the choice attributes.

Table 5-45 describes the choice attributes in more detail.

Table 5-44 Configuration Parameters for Predictive Summary Choice Group

Parameter Description

Choice Group Name

Predictive Summary

Choice Attributes

Abandonment Likelihood

Attrition Likelihood

Escalation Likelihood

First Call Resolution Likelihood

Interaction Duration Likelihood

Interaction Reason Likelihood

Likely Interaction Duration

Likely Interaction Reason

Likely Product

Product Likelihood

Transfer Likelihood

For choice attribute details, see Table 5-45.

Scores

None

Choice Events

None

Choice Eligibility

None

Group Attributes

None

Group Eligibility

None

Dynamic Choices

None


Table 5-45 Choice Attribute Details for Predictive Summary Choice Group

Choice Attribute Type Value

Abandonment Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters InteractionAbandonmentModel and Abandoned.

Attrition Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters CustomerAttritionModel and Attrition.

Escalation Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters InteractionEscalationModel and Escalated.

First Call Resolution Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters FirstCallResolutionModel and FcrResolved.

Interaction Duration Likelihoods

Double

Calculated by the Get Specific Choice Likelihood function for the parameters InteractionDurationModel and the value returned from the function Get Top Interaction Duration.

Interaction Reason Likelihoods

Double

Calculated by the Get Specific Choice Likelihood function for the parameters InteractionReasonModel and the value returned from the function Get Top Interaction Reason.

Likely Interaction Duration

String

Determined by the function Get Top Interaction Duration.

Likely Interaction Reason

String

Determined by the function Get Top Interaction Reason.

Likely Product

String

Determined by the function Get Top Call Product.

Product Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters CallProduct and the value returned from the function Get Top Call Product.

Transfer Likelihood

Double

Calculated by the Get Specific Choice Likelihood function for the parameters InteractionTransferModel and Transferred.


5.4.2.7 Solutions Choice Group

This choice group contains choices associated with Solutions. Its choices are configured dynamically and are determined by users based on their customer workflow.

Table 5-46 describes the configuration parameters for the Solutions choice group, including a list of the choice attributes.

Table 5-47 describes the choice attributes in more detail.

Table 5-48 describes the dynamic choice parameters for this choice group.

Table 5-46 Configuration Parameters for Solutions Choice Group

Parameter Description

Choice Group Name

Solutions

Choice Attributes

Description Text

Dynamic Choice

Name

Product Name

Solution ID

For choice attribute details, see Table 5-47.

Scores

For the performance goal Maximize Likelihood, score is determined by likelihood from corresponding choice event model.

Choice Events

Accepted

Presented

Choice Eligibility

None

Group Attributes

Solution List

Group Eligibility

None

Dynamic Choices

For details, see Table 5-48.


Table 5-47 Choice Attribute Details for Solutions Choice Group

Choice Attribute Type Value

Description Text

String

Dynamic Choice / Description Text

Dynamic Choice

Solution

Used to store the singular entity value pulled from the Solution entity array group attribute.

Name

String

Dynamic Choice / Name

Product Name

String

 

Solution Id

String

Dynamic Choice / Solution Id


Table 5-48 Dynamic Choice Details for Solutions Choice Group

Parameter Value

Group attribute containing the list of entities for choices

Solution List

Choice attribute to assign the entity data

Dynamic Choice

Entity attribute that contains the choices id

Name

Distribution mode for choices over choice group folders

Spill

Maximum number of choices in one Decision Center folder

100


5.5 Entities

There are two types of entity in the Inline Service RTD_Base_Customer_Service, namely session entities and entities used for dynamic choices.

This section consists of the following topics:

5.5.1 Session Entity Model

The Inline Service RTD_Base_Customer_Service contains a predefined session entity model that models attributes related to both the profile of the Oracle RTD current interaction and the customer's profile and history. In addition to these learning entities, all of the required entities for mapping a choice group to its dynamic choices are also defined.

As database table mappings are not defined in the base application, users must map their own data to the provided logical model. Each entity included in the Inline Service is fully extensible. This allows users to add or remove attributes that are available to their workflow.

The following diagram shows the entities, together with some of their attributes, and the relationships between the entities defined in RTD_Base_Customer_Service.

Surrounding text describes spa_ents1.gif.

Notation

The diagram shows the standard notation used in UML class diagrams, with each directed line representing a relationship from element A to element B, as follows:

  • A line with no diamond represents an association between elements A and B.

  • A line with a clear diamond represents an aggregation, with element A "owning" element B. However, with aggregation, removing an instance of element A does not remove the corresponding B element instances.

  • A line with a filled diamond represents a composition, with element A "owning" element B. For a composition, removing an instance of element A also removes the corresponding B element instances.

The multiplicity of a relationship restricts how many element B instances the relationship may have. The restriction denotes either a precise limit, such as 1 or 0..1, or an open-ended upper limit, such as "zero or more" or "one or more."

5.5.2 Session Entities

Session entities have a primary use for storing the attributes used for model learning.

This section describes the following entities:

5.5.2.1 Session Entity

(Key = Interaction Id)

Table 5-49 Session Entity

Attribute Type Array Comments

Current Interaction

Current Interaction

No

None

Customer

Customer

No

None

Interaction Churn Propensity

Double

No

None

Rank Offers

Rank Offers

No

Utilized when ranking offers directly from an Offer advisor instead of read from a data source.


5.5.2.2 Account

The Account entity is associated with the session through the Customer entity.

Table 5-50 Account Entity

Attribute Type Array Comments

Account Type

String

No

None

Annual Revenue

Double

No

None

Industry

Industry

No

None

Line of Business

String

No

None

No of Employees

Double

No

None

Number Of Years Established

Integer

No

None

Region

String

No

None


5.5.2.3 Agent

The Agent entity contains attributes associated with the agent interacting with the customer.

Table 5-51 Agent Entity

Attribute Type Array Comments

Work Queue

String

No

None

Shift Period

String

No

None

Tenure

Integer

No

None

Training Level

String

No

None


5.5.2.4 Campaign

The Campaign entity is a learning entity that is referenced by the Campaign History entity of the customer. It is initialized by the Identify Customer informant.

Table 5-52 Campaign Entity

Attribute Type Array Comments

Campaign Id

String

No

Not used for analysis

Category

String

No

None

Name

String

No

None

Period

String

No

None

Type

String

No

None


5.5.2.5 Campaign History

The Campaign History entity is a learning entity that contains campaign history of the customer. It is initialized by the Identify Customer informant.

Table 5-53 Campaign History Entity

Attribute Type Array Comments

Campaign Items

Campaign Item

Yes

None

Campaigns In Past 30 Days

String

Yes

Calculated by the function Get Campaign Names In Past Days

Days Since Last Campaign

Integer

No

Calculated by the function Get Days Since Last Campaign

Last Campaign Category

String

No

Calculated by the function Get Last Campaign Category

Last Campaign Delivery Method

String

No

Calculated by the function Get Last Campaign Delivery Method

Last Campaign Name

String

No

Calculated by the function Get Last Campaign Name

Last Campaign Type

String

No

Calculated by the function Get Last Campaign Type


5.5.2.6 Campaign Item

The Campaign Item entity is a learning entity that is referenced by the Campaign History entity of the customer. It is initialized by the Identify Customer informant.

Table 5-54 Campaign Item Entity

Attribute Type Array Comments

Campaign

Campaign

No

None

Campaign Date

Date

No

None

Delivery Method

String

No

None


5.5.2.7 Current Interaction

The Current Interaction entity is a learning entity that contains all of the attributes tied to the session's current interaction.

Table 5-55 Current Interaction Entity

Attribute Type Array Comments

Abandonment Status

String

No

None

Agent

Agent

No

None

Agent Id

String

No

None

Attrition Status

String

No

None

Call Center Location

String

No

None

Duration

String

No

None

Escalation Status

String

No

None

Final Solution

String

No

None

Hold Time

Integer

No

None

Interaction Date

Date

No

None

Interaction Product Id

String

No

None

Interaction Reason

String

No

None

IVR Path

String

No

None

Outcome

String

No

None

Priority

String

No

None

Product Name

String

No

None

Resolution

String

No

None

Satisfaction Rating

String

No

None

Service Level

String

No

None

Solutions Offered

String

Yes

None

Status

String

No

None

Transfer Status

String

No

None


5.5.2.8 Customer

The Customer entity is a learning entity that contains all attributes tied to the customer identified in the session.

Table 5-56 Customer Entity

Attribute Type Array Comments

Customer Id

String

No

Not used for analysis

Account

Account

No

None

Account Id

String

No

Not used for analysis

Address City

String

No

None

Address Country

String

No

None

Address Postal Code

String

No

None

Address Region

String

No

None

Address State Province

String

No

None

Campaign History

Campaign History

No

None

Credit Hold

String

No

None

Household

Household

No

None

Household Id

String

No

Not used for analysis

Interaction History

Interaction History

No

None

Lead Opportunity History

Lead Opportunity History

No

None

Lifetime Value Score

Double

No

None

Offline Churn Propensity

Double

No

None

Person

Person

No

None

Person Id

String

No

Not used for analysis

Phone Area Code

String

No

None

Purchase History

Purchase History

No

None

Service Request History

Service Request History

No

None

Status

String

No

None

Target Market Segment

String

No

None

Tenure

Double

Yes

None

Total Credit Limit

Double

No

None

Type

String

No

None


5.5.2.9 Household

The Household entity is a learning entity that contains all household related attributes.

Table 5-57 Household Entity

Attribute Type Array Comments

No. in household

Integer

No

None

No. of children

Integer

No

None

No. of Pets

Integer

No

None


5.5.2.10 Interaction

The Interaction entity is a learning entity that contains interaction history details of the customer. It is initialized by the Identify Customer informant.

Table 5-58 Interaction Entity

Attribute Type Array Comments

Interaction Id

String

No

Key

Abandonment Status

String

No

None

Agent

Agent

No

None

Agent Id

String

No

Not used for analysis

Escalation Status

String

No

None

Final Solution

String

No

None

Hold Time

Integer

No

None

Interaction Channel

String

No

None

Interaction Date

Date

No

None

Interaction Duration

Integer

No

None

Interaction Reason

String

No

None

Interaction Status

String

No

None

Interaction Type

String

No

None

Outcome

String

No

None

Product Name

String

No

None

Resolution

String

No

None

Satisfaction Rating

String

No

None

Transfer Status

String

No

None


5.5.2.11 Interaction History

The Interaction History entity is a learning entity that contains interaction history of the customer. It is initialized by the Identify Customer informant.

Table 5-59 Interaction History Entity

Attribute Type Array Comments

Days Since Last Interaction

Integer

No

Calculated by the function Get Days Since Last Interaction

Interaction Types In Past 30 Days

String

Yes

Calculated by the function Get Interaction Types In Past Days

Last Interaction Status

String

No

Calculated by the function Get Last Interaction Status

Last Interaction Type

String

No

Calculated by the function Get Last Interaction Type

Number Of Interactions In Past 30 Days

Integer

No

Calculated by the function Get Number Of Interactions In Past Days

Number Of Interactions In Past 90 Days

Integer

No

Calculated by the function Get Number Of Interactions In Past Days

Number Of Interactions In Past Year

Integer

No

Calculated by the function Get Number Of Interactions In Past Days

Past Interactions

Interaction

Yes

Not used for analysis


5.5.2.12 Lead

The Lead entity is associated with the session through the Lead Opportunity History entity.

Table 5-60 Lead Entity

Attribute Type Array Comments

Create Date

Date

No

None

Lead Product

Product

No

None

Opportunity Promotion Date

Date

No

None

Sales Stage

String

No

None


5.5.2.13 Lead Opportunity History

The Lead Opportunity History entity is a learning entity that contains lead opportunity history of the customer. It is initialized by the Identify Customer informant.

Table 5-61 Lead Opportunity History Entity

Attribute Type Array Comments

Days Since Last Opportunity

Integer

No

Calculated by the function Get Days Since Last Opportunity

Last Opportunity Expected Revenue

String

No

Calculated by the function Get Last Opportunity Expected Revenue

Last Opportunity Product

String

No

Calculated by the function Get Last Opportunity Product

Last Opportunity Product Line

String

No

Calculated by the function Get Last Opportunity Product Line

Last Opportunity Sales Stage

Integer

No

Calculated by the function Get Last Opportunity Sales Stage

Number Of Opportunities In Past Year

Integer

No

Calculated by the function Get Number Of Opportunities In Past Days

Opportunity Product Lines

String

Yes

Calculated by the function Get Opportunity Product Lines

Past Leads

Lead

Yes

None

Past Opportunities

Opportunity

Yes

None


5.5.2.14 Opportunity

The Opportunity entity is associated with the session through the Lead Opportunity History entity.

Table 5-62 Opportunity Entity

Attribute Type Array Comments

Create Date

Date

No

None

Expected Revenue

Double

No

None

Opportunity Product

Product

No

None

Sales Stage

String

No

None


5.5.2.15 Person

The Person entity is associated with the session through the Customer entity.

Table 5-63 Person Entity

Attribute Type Array Comments

Age

Integer

No

None

Annual Income

Double

No

None

Ethnicity

String

No

None

Gender

String

No

None

Job Title

String

No

None

Marital Status

String

No

None

Preferred Language

String

No

None


5.5.2.16 Purchased Item

The Purchased Item entity contains purchase instance data of a product used in the customer Purchase History entity.

Table 5-64 Purchased Item Entity

Attribute Type Array Comments

Purchase Amount

Double

No

None

Purchase Date

Date

No

None

Purchased Product

Product

No

None


5.5.2.17 Purchase History

The Purchase History entity is a learning entity that contains purchase history of the customer. It is initialized by the Identify Customer informant.

Table 5-65 Purchase History Entity

Attribute Type Array Comments

Average Purchase Amount

Double

No

None

Days Since Last Purchase

Integer

No

Calculated by the function Get Days Since Last Purchase

Last Purchased Amount

Double

No

Calculated by the function Get Last Last Purchased Amount

Last Purchased Product

String

No

Calculated by the function Get Last Purchased Product

Last Purchased Product Line

String

No

Calculated by the function Get Last Purchased Product Line

Product Lines Owned

String

Yes

Calculated by the function Get Product Lines Owned

Purchased Items

Purchased Item

Yes

None

Total Amount Spent

Double

No

Calculated by the function Get Total Amount Spent

Total Amount Spent In Last 90 Days

Double

No

Calculated by the function Get Total Amount Spent In Last 90 Days


5.5.2.18 Rank Offers

The Rank Offers entity is a transient attribute for holding an array of offer id's to be ranked supplied as incoming parameter of Get offer advisor calls.

Table 5-66 Rank Offers Entity

Attribute Type Array Comments

CrossSellOffers

String

Yes

None

In Use

Boolean

No

None

Promotions

String

Yes

None

UpSellOffers

String

Yes

None


5.5.2.19 Service Request

The Service Request entity is a singular entity used in the Service Request History customer entity.

Table 5-67 Service Request Entity

Attribute Type Array Comments

Account Id

String

No

Key

Agent

Agent

No

None

Agent Id

String

No

Not used for analysis

Closed Date

Date

No

None

Create Date

Date

No

None

Product

String

No

None

Product Id

String

No

None

Reason

String

No

None

Solution Id

String

No

None

Solution Name

String

No

None

Status

String

No

None

Type

String

No

None


5.5.2.20 Service Request History

The Service Request History entity is a learning entity that contains the Service Request history of the customer. It is initialized by the Identify Customer informant.

Table 5-68 Service Request History Entity

Attribute Type Array Comments

Current Open SR

Boolean

 

None

Days Since Last Service Request

Integer

No

Calculated by the function Get Days Since Last Service Request

Last Service Request Product

String

No

Calculated by the function Get Last Service Request Product

Last Service Request Reason

String

No

Calculated by the function Get Last Service Request Reason

Last Opportunity Sales Solution

Integer

No

Calculated by the function Get Last Service Request Solution

Last Service Request Status

String

No

Calculated by the function Get Last Service Request Status

Last Opportunity Sales Type

Integer

No

Calculated by the function Get Last Service Request Type

Past Service Requests

Service Request

Yes

Not used for analysis

Service Requests In Past 90 Days

Integer

No

Calculated by the function Get Number Of Service Requests In Past Days

Service Requests In Past Year

Integer

No

Calculated by the function Get Number Of Service Requests In Past Days


5.5.3 Dynamic Choice Entity Models

In addition to the entities created for session learning, Inline Service entities used for dynamic choices are also defined for this solution. These entities are used to populate the specific choices for each of the choice groups configured to used dynamic choices. Further details are available in Section 5.4, "Choice Groups."

5.5.3.1 Analysis Value

The following diagram depicts the relations of the List entities specified with the Analysis Value entity:

Surrounding text describes spa_dc_ana_val.gif.

5.5.3.2 Product

The following diagram depicts the relations of the List entities specified with the Product entity:

Surrounding text describes spa_dc_prod.gif.

5.5.3.3 Action

The following diagram depicts the relations of the List entities specified with the Action entity:

Surrounding text describes spa_dc_action.gif.

5.5.3.4 Solution

The following diagram depicts the relations of the List entities specified with the Solution entity:

Surrounding text describes spa_dc_sol.gif.

5.5.4 Dynamic Choice Entities

As a general note, each dynamic choice group will have a corresponding set of entities - a "list" entity and an "individual" entity. For example, the Promotions dynamic choice group is associated with a Promotion entity and a Promotions List entity. The attributes of these entities are also the choice attributes for promotion.

This section describes the following entities:

5.5.4.1 Action

The Action entity is the singular entity used in the dynamic list entities Follow Up Action List and Retention Action List.

Table 5-69 Action Entity

Attribute Type Array Comments

Action Id

String

No

None

Description Text

String

No

None

Marketing Priority

Double

No

None

Name

String

No

None

Type

String

No

None


5.5.4.2 Analysis Value

The Analysis Value entity is the singular entity used in all of the Analysis List based entities including Interaction Duration List, Interaction Outcome List, and Interaction Reason List. The List entities are used for populating the dynamic choices for the choice groups of the same name.

Table 5-70 Analysis Value Entity

Attribute Type Array Comments

Name

String

No

None

Type

String

No

None


5.5.4.3 Analysis Values List

The Analysis Value List entity is the List entity used to populate the dynamic choices for the Customer Satisfaction, Interaction Reason, Interaction Duration, Interaction Outcome, and Service Level choice groups. The choice group populated by this list is determined by the value for the key attribute, Category, for example, Category = Interaction Duration, and so on.

Table 5-71 Analysis Values List Entity

Attribute Type Array Comments

Active Flag

String

No

Key

Category

String

No

Key

Values

Analysis Value

Yes

None


5.5.4.4 Cross Sell Product List

The Cross Sell Product List entity is a collection of cross sell products. It is used for data retrieval to populate the Cross Sell Dynamic Choice Group.

Table 5-72 Cross Sell Product List Entity

Attribute Type Array Comments

Product Id

String

No

None

Cross Sell Products

Product

Yes

None


5.5.4.5 Follow Up Action List

The Follow Up Action List entity is a List entity used to populate dynamic choices for the Follow Up Action choice group.

Table 5-73 Follow Up Action List Entity

Attribute Type Array Comments

Active Flag

String

No

Key

Category

String

No

Key

Follow Up Actions

Action

Yes

None


5.5.4.6 Product

The Product entity is used for product descriptions for the Up Sell Offer, Cross Sell Offer, Purchase History, Leads, and Opportunity entities.

Table 5-74 Product Entity

Attribute Type Array Comments

Product Id

String

No

Key

Category

String

No

None

Marketing Priority

Double

No

None

Name

String

No

None

Popularity Rank

Integer

No

None

Product Line

String

No

None

Type

String

No

None

Unit Price

Double

No

None


5.5.4.7 Product List

The Product List entity is a collection of products. It is used for data retrieval to populate the Call Product Choice Group.

Table 5-75 Product List Entity

Attribute Type Array Comments

Active Flag

String

No

Key

Products

Product

Yes

None


5.5.4.8 Promoted Item

The Promoted Item entity contains an instance of a promoted product used in the Promotion entity.

Table 5-76 Promoted Item Entity

Attribute Type Array Comments

Discount Rate

Double

No

None

Promoted Product

Product

Yes

None


5.5.4.9 Promotion

The Promotion entity is a singular entity of a Promotion used in the Promotion List entity.

Table 5-77 Promotion Entity

Attribute Type Array Comments

Promotion Id

String

No

None

Category

String

No

None

Days Left

Integer

No

Calculated by the function Get Days Left

Duration In Days

Integer

No

Calculated by the function Get Duration In Days

Effective Date

Date

No

None

Expiry Date

Date

No

None

Marketing Priority

Double

No

None

Name

String

No

None

Period

String

No

None

Promoted Items

Promoted Item

Yes

None

Type

String

No

None


5.5.4.10 Promotion List

The Promotion List entity is a collection of Promotions. It is used for data retrieval to populate the Promotions Dynamic Choice Group.

Table 5-78 Promotion List Entity

Attribute Type Array Comments

Active

String

No

Key

Promotions

Promotion

Yes

None


5.5.4.11 Retention Action List

The Retention Action List entity is a List entity used to populate dynamic choices for the Retention Action choice group.

Table 5-79 Retention Action List Entity

Attribute Type Array Comments

Active Flag

String

No

Key

Category

String

No

Key

Retention Actions

Action

Yes

None


5.5.4.12 Solution

The Solution entity is a singular entity used in the Solution List entity.

Table 5-80 Solution Entity

Attribute Type Array Comments

Description Text

String

No

None

Name

String

No

None

Product Name

String

No

None

Solution Id

String

No

None


5.5.4.13 Solution List

The Solution List entity is a List entity used to populate dynamic choices for the Solutions choice group.

Table 5-81 Solution List Entity

Attribute Type Array Comments

Active Flag

String

No

Key

Product Id

String

No

Key

Solutions

Solution

No

None


5.5.4.14 Up Sell Product List

The Up Sell Product List entity is a collection of Up Sell products. It is used for data retrieval to populate the Up Sell Dynamic Choice Group.

Table 5-82 Up Sell Product List Entity

Attribute Type Array Comments

Product Id

String

No

None

Up Sell Products

Product

Yes

None


5.6 Informants

The following informants are configured in the Inline Service RTD_Base_Customer_Service:

5.6.1 Action Response

The Action Response informant can be called to record the results of actions recommended by Oracle RTD.

Table 5-83 describes the parameters for the Action Response informant.

Table 5-83 Informant Action Response

Parameter Description

Informant Name

Action Response

Session Keys

Session / Interaction Id

Request Data

Action Id (String)

Action Result (String)

Action Type (String)

External System

CRM System

Order

20

Force session close

No

Logic

Logic is written to record the appropriate Event for the given action id.

Pre-condition

None


5.6.2 Close Session

The Close Session informant records the final outcomes of the customer interaction and updates all analytical choice models at session close.

Table 5-84 describes the parameters for the Close Session informant.

Table 5-84 Informant Close Session

Parameter Description

Informant Name

Close Session

Session Keys

Session / Interaction Id

Request Data

Abandonment Status (String) mapped to Current Interaction.Abandoment Status

Attrition Status (String) mapped to Current Interaction.Attrition Status

Customer Satisfaction (String) mapped to Current Interaction.Satisfaction Rating

Escalation Status (String) mapped to Current Interaction.Escalation StatusFCR Resolved (String) mapped to Current Interaction.FCR Resolved

Interaction Duration (String) mapped to Current Interaction.Duration

Interaction Outcome (String) mapped to Current Interaction.Outcome

Resolution (String) mapped to Current Interaction.Resolution

Solutions Offered (String Array) mapped to Current Interaction.Solutions Offered

Transfer Status (String) mapped to Current Interaction.Transfer Status

External System

CRM System

Order

25

Force session close

Yes

Logic

Logic is written to update all choice models based on incoming request data values for this integration point.

Pre-condition

None


5.6.3 Identify Customer

The Identify Customer informant sends the id values for Account, Person, and Household to Oracle RTD.

Table 5-85 describes the parameters for the Identify Customer informant.

Table 5-85 Informant Identify Customer

Parameter Description

Informant Name

Identify Customer

Session Keys

Session / Interaction Id

Request Data

Account Id (String) mapped to Customer.Account Id

Household Id (String) mapped to Customer.Household Id

Person Id (String) mapped to Customer.Person Id

External System

CRM System

Order

5

Force session close

No

Logic

Logic is written to fill the session().customer() entity.

Pre-condition

None


5.6.4 Offer Response

The Offer Response informant can be called to record the results of offers recommended by Oracle RTD.

Table 5-86 describes the parameters for the Offer Response informant.

Table 5-86 Informant Offer Response

Parameter Description

Informant Name

Offer Response

Session Keys

Session / Interaction Id

Request Data

Offer Id (String)

Event (String)

Offer Type (String)

External System

CRM System

Order

70

Force session close

No

Logic

Logic is written to record the appropriate Event for the given offer id.

Pre-condition

None


5.6.5 Solution Result

The Solution Result informant can be called to record the results of solutions offered to the customer.

Table 5-87 describes the parameters for the Solution Result informant.

Table 5-87 Informant Solution Result

Parameter Description

Informant Name

Solution Result

Session Keys

Session / Interaction Id

Request Data

Solution Id (String Array)

Solution Result (String Array)

External System

CRM System

Order

15

Force session close

No

Logic

Logic is written to record the appropriate results for the given array of solution ids.

Pre-condition

None


5.6.6 Start Session

The Start Session informant is called to initiate the Oracle RTD session and sends initial information regarding the customer interaction.

Table 5-88 describes the parameters for the Start Session informant.

Table 5-88 Informant Start Session

Parameter Description

Informant Name

Start Session

Session Keys

Session / Interaction Id

Request Data

Agent Id (String) mapped to Current Interaction.Agent Id

Customer Id (String) mapped to Customer.Customer Id

Hold Type (String) mapped to Current Interaction.Hold Time

IVR Path (String) mapped to Current Interaction.IVR Path

External System

CRM System

Order

1

Force session close

No

Logic

None

Pre-condition

None


5.6.7 Update Customer Interaction

The Update Customer Interaction informant is called to update attributes regarding the current interaction.

Table 5-89 describes the parameters for the Update Customer Interaction informant.

Table 5-89 Informant Update Customer Interaction

Parameter Description

Informant Name

Update Customer Interaction

Session Keys

Session / Interaction Id

Request Data

Interaction Product Id (String) mapped to Current Interaction.Interaction Product Id

Interaction Reason (String) mapped to Current Interaction.Interaction Reason

Priority (String) mapped to Current Interaction.Priority

Service Level (String) mapped to Current Interaction.Service Level

Status (String) mapped to Current Interaction.Status

External System

CRM System

Order

20

Force session close

No

Logic

None

Pre-condition

None


5.7 Advisors and Associated Decisions

For each advisor listed in this section, a detailed breakdown is provided for the advisor, followed by the decision called by the advisor.

This section contains descriptions of the following advisors (and their corresponding decisions):

5.7.1 Get Actions

The advisor Get Actions returns ranked Actions pulled from the choice group of the same name. It utilizes the Select Actions decision.

Table 5-90 describes the parameters for the advisor Get Actions.

Table 5-90 Advisor Get Actions

Parameter Description

Advisor Name

Get Actions

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

11

Force session close

No

Decision

Select Actions

Group Decision

Select Actions

Default Choices

None

Logic

None

Pre-condition

None


Table 5-91 describes the parameters for the decision for the advisor Get Actions.

Table 5-91 Decision for Advisor Get Actions

Parameter Description

Decision Name

Select Actions

Select Choices From

Actions Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 33%

Maximize Expected Revenue 33%

Maximize Marketing Priority 33%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.2 Get Cross Sell Offers

This advisor returns ranked Cross Sell Offers to the front end application. It utilizes the Select Cross Sell Offers decision.

Table 5-92 describes the parameters for the advisor Get Cross Sell Offers.

Table 5-92 Advisor Get Cross Sell Offers

Parameter Description

Advisor Name

Get Cross Sell Offers

Session Keys

Session / Interaction Id

Request Data

Number of Offers (Integer) - Optional for overriding the default number of offers returned by the advisor.

Product Id (String) - Id is to be used as base product for determining which cross sell offers to rank. If not supplied through the Get Cross Sell Offers integration point, this value must be populated through the Update Customer Interaction integration point.

Rank Offers (String Array) - Optional to let Oracle RTD rank the supplied array of offer ids instead of retrieving the offers from an external data source.

External System

CRM System

Order

60

Force session close

No

Decision

Select Cross Sell Offers

Group Decision

Select Cross Sell Offers

Default Choices

None

Logic

Logic is included to populate the Rank Offers session entity with the incoming offer ids from the Rank Offers attribute if supplied. After this is done, the Select Cross Sell Offers decision is executed to rank either the supplied offer ids or read from the mapped dynamic choice data source.

Pre-condition

None


Table 5-93 describes the parameters for the decision for the advisor Get Cross Sell Offers.

Table 5-93 Decision for Advisor Get Cross Sell Offers

Parameter Description

Decision Name

Select Cross Sell Offers

Select Choices From

Cross Sell Offers Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 50%

Maximize Expected Revenue 50%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.3 Get Follow Up Actions

The advisor Get Follow Up Actions returns ranked Follow Up Actions pulled from the choice group of the same name. It utilizes the Select Follow Up Actions decision.

Table 5-94 describes the parameters for the advisor Get Follow Up Actions.

Table 5-94 Advisor Get Follow Up Actions

Parameter Description

Advisor Name

Get Follow Up Actions

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

11

Force session close

No

Decision

Select Follow Up Actions

Group Decision

Select Follow Up Actions

Default Choices

None

Logic

None

Pre-condition

None


Table 5-95 describes the parameters for the decision for the advisor Get Follow Up Actions.

Table 5-95 Decision for Advisor Get Follow Up Actions

Parameter Description

Decision Name

Select Follow Up Actions

Select Choices From

Follow Up Actions Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 33%

Maximize Expected Revenue 33%

Maximize Marketing Priority 33%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.4 Get Likely Call Product

The advisor Get Likely Call Product returns ranked call products pulled from the choice group of the same name. It utilizes the Select Likely Call Product decision. This decision is also called in the function, Get Top Call Product, which is used to populate the corresponding attribute in the Predictive Summary choice.

Table 5-96 describes the parameters for the advisor Get Likely Call Product.

Table 5-96 Advisor Get Likely Call Product

Parameter Description

Advisor Name

Get Likely Call Product

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

7

Force session close

No

Decision

Select Likely Call Product

Group Decision

Select Likely Call Product

Default Choices

None

Logic

None

Pre-condition

None


Table 5-97 describes the parameters for the decision for the advisor Get Likely Call Product.

Table 5-97 Decision for Advisor Get Likely Call Product

Parameter Description

Decision Name

Select Likely Call Product

Select Choices From

Call Product Choice Group

Number of Choices to Select

1

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Likelihood 100%

Pre Selection Logic

None

Post Selection Logic

None


5.7.5 Get Likely Interaction Duration

The advisor Get Likely Interaction Duration returns ranked duration values pulled from the choice group of the same name. It utilizes the Select Likely Interaction Duration decision. This decision is also called in the function, Get Top Interaction Duration, which is used to populate the corresponding attribute in the Predictive Summary choice.

Table 5-98 describes the parameters for the advisor Get Likely Interaction Duration.

Table 5-98 Advisor Get Likely Interaction Duration

Parameter Description

Advisor Name

Get Likely Interaction Duration

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

7

Force session close

No

Decision

Select Likely Interaction Duration

Group Decision

Select Likely Interaction Duration

Default Choices

None

Logic

None

Pre-condition

None


Table 5-99 describes the parameters for the decision for the advisor Get Likely Interaction Duration.

Table 5-99 Decision for Advisor Get Likely Interaction Duration

Parameter Description

Decision Name

Select Likely Interaction Duration

Select Choices From

Interaction Duration Choice Group

Number of Choices to Select

1

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Likelihood 100%

Pre Selection Logic

None

Post Selection Logic

None


5.7.6 Get Likely Interaction Reason

The advisor Get Likely Interaction Reason returns ranked duration values pulled from the choice group of the same name. It utilizes the Select Likely Interaction Reason decision. This decision is also called in the function, Get Top Interaction Reason, which is used to populate the corresponding attribute in the Predictive Summary choice.

Table 5-100 describes the parameters for the advisor Get Likely Interaction Reason.

Table 5-100 Advisor Get Likely Interaction Reason

Parameter Description

Advisor Name

Get Likely Interaction Reason

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

7

Force session close

No

Decision

Select Likely Interaction Reason

Group Decision

Select Likely Interaction Reason

Default Choices

None

Logic

None

Pre-condition

None


Table 5-101 describes the parameters for the decision for the advisor Get Likely Interaction Reason.

Table 5-101 Decision for Advisor Get Likely Interaction Reason

Parameter Description

Decision Name

Select Likely Interaction Reason

Select Choices From

Interaction Reason Choice Group

Number of Choices to Select

1

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Likelihood 100%

Pre Selection Logic

None

Post Selection Logic

None


5.7.7 Get Offers

This advisor returns ranked offers to the front end application.

Table 5-102 describes the parameters for the advisor Get Offers.

Table 5-102 Advisor Get Offers

Parameter Description

Advisor Name

Get Offers

Session Keys

Session / Interaction Id

Request Data

Number of Offers (Integer) - Optional for overriding the default number of offers returned by the advisor.

Product Id (String) - Id is to be used as base product for determining which offers to rank. If not supplied through the Get Offers integration point, this value must be populated through the Update Customer Interaction integration point.

Rank Offers (String Array) - Optional to let Oracle RTD rank the supplied array of offer ids instead of retrieving the offers from an external data source

External System

CRM System

Order

60

Force session close

No

Decision

Select Offers

Group Decision

Select Offers

Default Choices

None

Logic

Logic is included to populate the Rank Offers session entity with the incoming offer ids from the Rank Offers attribute if supplied. After this is done, the Select Offers decision is executed to rank either the supplied offer ids or read from the mapped dynamic choice data source.

Pre-condition

None


Table 5-103 describes the parameters for the decision for the advisor Get Offers.

Table 5-103 Decision for Advisor Get Offers

Parameter Description

Decision Name

Select Offers

Select Choices From

Offers Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 50%

Maximize Expected Likelihood 50%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.8 Get Predictive Summary

The advisor Get Predictive Summary returns the choice Predictive Summary from the choice group of the same name. It utilizes the Select Predictive Summary decision. The choice attributes tied to the predictive summary choice aggregate a combination of the top advisor predictions tied to the analytical choice group, for example, Interaction Reason, Interaction Duration, Attrition Likelihood, and so on.

Table 5-104 describes the parameters for the advisor Get Predictive Summary.

Table 5-104 Advisor Get Predictive Summary

Parameter Description

Advisor Name

Get Predictive Summary

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

6

Force session close

No

Decision

Select Predictive Summary

Group Decision

Select Predictive Summary

Default Choices

None

Logic

None

Pre-condition

None


Table 5-105 describes the parameters for the decision for the advisor Get Predictive Summary.

Table 5-105 Decision for Advisor Get Predictive Summary

Parameter Description

Decision Name

Select Predictive Summary

Select Choices From

Predictive Summary Choice Group

Number of Choices to Select

1

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Likelihood 100%

Pre Selection Logic

None

Post Selection Logic

None


5.7.9 Get Promotions

This advisor returns ranked promotions to the front end application.

Table 5-106 describes the parameters for the advisor Get Promotions.

Table 5-106 Advisor Get Promotions

Parameter Description

Advisor Name

Get Promotions

Session Keys

Session / Interaction Id

Request Data

Number of Offers (Integer) - Optional for overriding the default number of promotions returned by the advisor.

Product Id (String) - Id is to be used as base product for determining which offers to rank. If not supplied through the Get Promotions integration point, this value must be populated through the Update Customer Interaction integration point.

Rank Offers (String Array) - Optional to let Oracle RTD rank the supplied array of offer ids instead of retrieving the offers from an external data source

External System

CRM System

Order

60

Force session close

No

Decision

Select Promotions

Group Decision

Select Promotions

Default Choices

None

Logic

Logic is included to populate the Rank Offers session entity with the incoming offer ids from the Rank Offers attribute if supplied. After this is done, the Select Promotions decision is executed to rank either the supplied offer ids or read from the mapped dynamic choice data source.

Pre-condition

None


Table 5-107 describes the parameters for the decision for the advisor Get Promotions.

Table 5-107 Decision for Advisor Get Promotions

Parameter Description

Decision Name

Select Promotions

Select Choices From

Promotions Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 50%

Maximize Expected Likelihood 50%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.10 Get Ranked Solutions

The advisor Get Ranked Solutions returns ranked duration values pulled from the choice group of the same name. It utilizes the Select Ranked Solutions decision.

Table 5-108 describes the parameters for the advisor Get Ranked Solutions.

Table 5-108 Advisor Get Ranked Solutions

Parameter Description

Advisor Name

Get Ranked Solutions

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

11

Force session close

No

Decision

Select Ranked Solutions

Group Decision

Select Ranked Solutions

Default Choices

None

Logic

None

Pre-condition

None


Table 5-109 describes the parameters for the decision for the advisor Get Ranked Solutions.

Table 5-109 Decision for Advisor Get Ranked Solutions

Parameter Description

Decision Name

Select Ranked Solutions

Select Choices From

Solutions Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Likelihood 100%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.11 Get Retention Actions

The advisor Get Retention Actions returns ranked Retention Actions pulled from the choice group of the same name. It utilizes the Select Retention Actions decision.

Table 5-110 describes the parameters for the advisor Get Retention Actions.

Table 5-110 Advisor Get Retention Actions

Parameter Description

Advisor Name

Get Retention Actions

Session Keys

Session / Interaction Id

Request Data

None

External System

CRM System

Order

11

Force session close

No

Decision

Select Retention Actions

Group Decision

Select Retention Actions

Default Choices

None

Logic

None

Pre-condition

None


Table 5-111 describes the parameters for the decision for the advisor Get Retention Actions.

Table 5-111 Decision for Advisor Get Retention Actions

Parameter Description

Decision Name

Select Retention Actions

Select Choices From

Retention Actions Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 33%

Maximize Expected Revenue 33%

Maximize Marketing Priority 33%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.7.12 Get Up Sell Offers

This advisor returns ranked Up Sell Offers to the front end application.

Table 5-112 describes the parameters for the advisor Get Up Sell Offers.

Table 5-112 Advisor Get Up Sell Offers

Parameter Description

Advisor Name

Get Up Sell Offers

Session Keys

Session / Interaction Id

Request Data

Number of Offers (Integer) - Optional for overriding the default number of Up Sell offers returned by the advisor.

Product Id (String) - Id is to be used as base product for determining which Up Sell offers to rank. If not supplied through the Get Up Sell Offers integration point, this value must be populated through the Update Customer Interaction integration point.

Rank Offers (String Array) - Optional to let Oracle RTD rank the supplied array of offer ids instead of retrieving the offers from an external data source.

External System

CRM System

Order

60

Force session close

No

Decision

Select Up Sell Offers

Group Decision

Select Up Sell Offers

Default Choices

None

Logic

Logic is included to populate the Rank Offers session entity with the incoming offer ids from the Rank Offers attribute if supplied. After this is done, the Select Up Sell Offers decision is executed to rank either the supplied offer ids or read from the mapped dynamic choice data source.

Pre-condition

None


Table 5-113 describes the parameters for the decision for the advisor Get Up Sell Offers.

Table 5-113 Decision for Advisor Get Up Sell Offers

Parameter Description

Decision Name

Select Up Sell Offers

Select Choices From

Up Sell Offers Choice Group

Number of Choices to Select

5

Select at Random

No

Target Segments

Default

Priorities for Default Segment

Maximize Acceptance Likelihood 50%

Maximize Expected Revenue 50%

Pre Selection Logic

None

Post Selection Logic

Generate learning entries

for (int i = 0; i < choices.size(); i++) {choices.get(i).recordEvent("Presented");}


5.8 Models

This section describes each of the models in the Inline Service RTD_Base_Customer_Service and their configuration parameters.

This section contains the following topics:

5.8.1 Choice Models

Choice models have been configured for each of the choice groups under the Analysis parent choice group.

This section describes the following choice models:

5.8.1.1 Call Product Model

The Call Product model is a choice model associated with the Call Product choice group.

Table 5-114 Call Product Model

Parameter Description

Model Name

Call Product Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Call Product

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Interaction Product Id

Current Interaction - Product Name

Learn Location

On session close

Temporary Data Storage

None


5.8.1.2 Customer Attrition Model

The Customer Attrition model is a choice model associated with the Customer Attrition choice group.

Table 5-115 Customer Attrition Model

Parameter Description

Model Name

Customer Attrition Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Customer Attrition

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Attrition Status

Learn Location

On session close

Temporary Data Storage

None


5.8.1.3 Customer Satisfaction Model

The Customer Satisfaction model is a choice model associated with the Customer Satisfaction choice group.

Table 5-116 Customer Satisfaction Model

Parameter Description

Model Name

Customer Satisfaction Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Customer Satisfaction

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Satisfaction Rating

Learn Location

On session close

Temporary Data Storage

None


5.8.1.4 First Call Resolution Model

The First Call Resolution model is a choice model associated with the First Call Resolution choice group.

Table 5-117 First Call Resolution Model

Parameter Description

Model Name

First Call Resolution Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

First Call Resolution

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.1.5 Interaction Abandonment Model

The Interaction Abandonment model is a choice model associated with the Interaction Abandonment choice group.

Table 5-118 Interaction Abandonment Model

Parameter Description

Model Name

Interaction Abandonment Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Abandonment

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Abandonment Status

Learn Location

On session close

Temporary Data Storage

None


5.8.1.6 Interaction Duration Model

The Interaction Duration model is a choice model associated with the Interaction Duration choice group.

Table 5-119 Interaction Duration Model

Parameter Description

Model Name

Interaction Duration Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Duration

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Duration

Learn Location

On session close

Temporary Data Storage

None


5.8.1.7 Interaction Escalation Model

The Interaction Escalation model is a choice model associated with the Interaction Escalation choice group.

Table 5-120 Interaction Escalation Model

Parameter Description

Model Name

Interaction Escalation Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Escalation

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Escalation Status

Learn Location

On session close

Temporary Data Storage

None


5.8.1.8 Interaction Outcome Model

The Interaction Outcome model is a choice model associated with the Interaction Outcome choice group.

Table 5-121 Interaction Outcome Model

Parameter Description

Model Name

Interaction Outcome Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Outcome

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Outcome

Learn Location

On session close

Temporary Data Storage

None


5.8.1.9 Interaction Reason Model

The Interaction Reason model is a choice model associated with the Interaction Reason choice group.

Table 5-122 Interaction Reason Model

Parameter Description

Model Name

Interaction Reason Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Reason

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Interaction Reason

Learn Location

On session close

Temporary Data Storage

None


5.8.1.10 Interaction Transfer Model

The Interaction Transfer model is a choice model associated with the Interaction Transfer choice group.

Table 5-123 Interaction Transfer Model

Parameter Description

Model Name

Interaction Transfer Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Interaction Transfer

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Transfer Status

Learn Location

On session close

Temporary Data Storage

None


5.8.1.11 Service Level Model

The Service Level model is a choice model associated with the Service Level choice group.

Table 5-124 Service Level Model

Parameter Description

Model Name

Service Level Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Service Level

Mutually Exclusive

Yes

Partitioning Attributes

None

Excluded Attributes

Current Interaction - Service Level

Learn Location

On session close

Temporary Data Storage

None


5.8.2 Choice Event Models

Choice Event models have been configured for each of the choice groups under the Decisioning parent choice group.

This section describes the following choice event models:

5.8.2.1 Cross Sell Offers Event Model

The Cross Sell Offers Event model is a choice model associated with the Cross Sell Offers choice group.

Table 5-125 Cross Sell Offers Event Model

Parameter Description

Model Name

Cross Sell Offers Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Cross Sell Offers

Base Event

Presented

Positive Outcome Events

Interested

Fulfilled

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.2 Follow Up Action Event Model

The Follow Up Action Event model is a choice model associated with the Follow Up Actions choice group.

Table 5-126 Cross Sell Offers Event Model

Parameter Description

Model Name

Follow Up Action Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Follow Up Actions

Base Event

Presented

Positive Outcome Events

Accepted

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.3 Offers Event Model

The Offers Event model is a choice model associated with the Offers choice group.

Table 5-127 Offers Event Model

Parameter Description

Model Name

Offers Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Offers

Base Event

Presented

Positive Outcome Events

Interested

Fulfilled

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.4 Promotions Event Model

The Promotions Event model is a choice model associated with the Promotions choice group.

Table 5-128 Promotions Event Model

Parameter Description

Model Name

Promotions Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Promotions

Base Event

Presented

Positive Outcome Events

Interested

Fulfilled

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.5 Retention Action Event Model

The Retention Action Event model is a choice model associated with the Retention Actions choice group.

Table 5-129 Retention Action Event Model

Parameter Description

Model Name

Retention Action Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Retention Actions

Base Event

Presented

Positive Outcome Events

Accepted

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.6 Solutions Event Model

The Solutions Event model is a choice model associated with the Ranked Solutions choice group.

Table 5-130 Solutions Event Model

Parameter Description

Model Name

Solutions Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Ranked Solutions

Base Event

Presented

Positive Outcome Events

Accepted

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.8.2.7 Up Sell Offers Event Model

The Up Sell Offers Event model is a choice model associated with the Up Sell Offers choice group.

Table 5-131 Up Sell Offers Event Model

Parameter Description

Model Name

Up Sell Offers Event Model

Model Setting

Use for prediction, Randomize Likelihood, Default time window, Algorithm: Bayesian

Choice Group

Up Sell Offers

Base Event

Presented

Positive Outcome Events

Interested

Fulfilled

Partitioning Attributes

None

Excluded Attributes

None

Learn Location

On session close

Temporary Data Storage

None


5.9 Functions

This section catalogs the list of predefined functions included in the Inline Service RTD_Base_Customer_Service.

Table 5-132 RTD_Base_Customer_Service Functions

Function Inputs Outputs Area Utilized In Comments

Get Analysis Values List

Category (String))

Analysis Value Array

Groups Attributes for Choice Groups:

- Customer Satisfaction

- Interaction Outcome

- Interaction Reason

- Interaction Duration

- Service Level

This function retrieves an array of Analysis choice values for various Analysis Choice Groups. It is used to populate the dynamic choices for Customer Satisfaction Choice Group, Interaction Outcome Choice Group, Interaction Reason Choice Group, Interaction Duration Choice Group, and Service Level Choice Group based on the value for the Category input.

Get Campaign Names in Past Days

Campaign Items (Campaign Item Array)

Days (Integer)

String Array

Campaign History Entity

This function loops through all campaign items associated with the customer and returns and unique list of campaign name values within the given number of days from the current date.

Get Choice Likelihood

modelName (String)

thisChoice (Choice)

Double

Choice attribute, Choice Likelihood.

For a given choice model name and choice, this function returns the RTD likelihood score.

Get Cross Sell Product List

Product Id

Product Array

Cross Sell Product Choice Group, Group Attributes

This function is used to return an array of Products for the Cross Sell dynamic choice. The result is either a ranked products array supplied as incoming parameter of an advisor or an array of cross sell products loaded using data source mapping.

Get Days Left

Expiry Date (Date)

Integer

Promotion Entity

This function calculates the number of days from now to expiryDate.

Get Days Since Last Campaign

Campaign Items (Campaign Item Array)

Integer

Campaign History Entity

This function calculates the number of days from last campaign to now based on the Campaign Date.

Get Days Since Last Interaction

Past Interactions (Interaction Array)

Integer

Interaction History Entity

This function calculates the number of days from last interaction to now based on the Interaction Date.

Get Days Since Last Opportunity

Past Opportunities (Opportunity Array)

Integer

Opportunity History Entity

This function calculates the number of days from last customer opportunity to now based on the Opportunity create date.

Get Days Since Last Purchase

Purchased Items (Purchased Item Array)

Integer

Purchase History Entity

This function calculates the number of days from the last purchase to now based on the purchase date.

Get Days Since Last Service Request

Past Service Requests (Service Request Array)

Integer

Service Request History Entity

This function calculates the number of days from last service request to now based on the Service Request create date.

Get Duration In Days

Start Date (Date)

End Date (Date)

Integer

Multiple Objects

This function calculates the number of days from start date to end date.

Get Follow Up Action List

Active (String)Category (String))

Action Entity Array

Follow Up Actions Choice Group, Group Attributes

This function retrieves an array of follow up actions. Used with the Follow Up actions dynamic choice group.

Get Interaction Types In Past Days

Past Interactions (Interaction Array)

Days (Integer)

String Array

Interaction History Entity

This function returns array of interaction types within the past given days based on the Interaction create date.

Get Last Campaign Category

Campaign Items (Campaign Item Array)

String

Campaign History Entity

This function returns the campaign category of the most recent campaign item based on campaign date.

Get Last Campaign Delivery Method

Campaign Items (Campaign Item Array)

String

Campaign History Entity

This function returns the campaign delivery method of the most recent campaign item based on campaign date.

Get Last Campaign Name

Campaign Items (Campaign Item Array)

String

Campaign History Entity

This function returns the campaign name of the most recent campaign item based on campaign date.

Get Last Campaign Type

Campaign Items (Campaign Item Array)

String

Campaign History Entity

This function returns the campaign type of the most recent campaign item based on campaign date.

Get Last Interaction Status

Past Interactions (Interaction Array)

String

Interaction History Entity

This function returns the status of the last associated interaction to the customer based on the interaction date.

Get Last Interaction Type

Past Interactions (Interaction Array)

String

Interaction History Entity

This function returns the type of the last associated interaction to the customer based on the interaction date.

Get Last Opportunity Expected Revenue

Past Opportunities (Opportunity Array)

Double

Opportunity History Entity

This function returns the expected revenue of the most recent opportunity associated with the customer.

Get Last Opportunity Product

Past Opportunities (Opportunity Array)

String

Opportunity History Entity

This function returns the product of the most recent opportunity associated with the customer.

Get Last Opportunity Product Line

Past Opportunities (Opportunity Array)

String

Opportunity History Entity

This function returns the product line of the most recent opportunity associated with the customer.

Get Last Opportunity Sales Stage

Past Opportunities (Opportunity Array)

String

Opportunity History Entity

This function returns the current sales stage of the most recent opportunity associated with the customer.

Get Last Purchased Amount

Purchase Items (Purchased Item Array)

Double

Purchase History Entity

This function returns the purchase amount of the most recent purchased product associated with the customer.

Get Last Purchased Product

Purchase Items (Purchased Item Array)

String

Purchase History Entity

This function returns the product name of the most recent purchased product associated with the customer.

Get Last Purchased Product Line

Purchase Items (Purchased Item Array)

String

Purchase History Entity

This function returns the product line of the most recent purchased product associated with the customer.

Get Last Service Request Product

Past Service Requests (Service Request Array)

String

Service Request History Entity

This function returns the product associated with the last created Service Request tied to the customer.

Get Last Service Request Reason

Past Service Requests (Service Request Array)

String

Service Request History Entity

This function returns the reason associated with the last created Service Request tied to the customer.

Get Last Service Request Solution

Past Service Requests (Service Request Array)

String

Service Request History Entity

This function returns the solution name associated with the last created Service Request tied to the customer.

Get Last Service Request Status

Past Service Requests (Service Request Array)

String

Service Request History Entity

This function returns the current status associated with the last created Service Request tied to the customer.

Get Last Service Request Type

Past Service Requests (Service Request Array)

String

Service Request History Entity

This function returns the type associated with the last created Service Request tied to the customer.

Get Number Of Interactions In Past Days

Past Interactions (Interaction Array),

Days (Integer)

Integer

Interaction History Entity

This function counts the number of interactions in the past given days.

Get Number Of Opportunities In Past Days

Past Opportunities (Opportunity Array),

Days (Integer)

Integer

Opportunity History Entity

This function counts the number of opportunities in the past given days.

Get Number Of Service Requests In Past Days

Past Service Requests (Service Requests Array)

Integer

Service Request History Entity

This function counts the number of service requests in the past given days.

Get Opportunity Product Lines

Past Opportunities (Opportunity Array)

String Array

Opportunity History Entity

This function returns the product lines of all customer opportunities.

Get Product Lines Owned

Purchased Items (Purchased Items Array)

String Array

Purchase History Entity

This function returns product lines of the purchased items associated with the customer.

Get Product List

Active (String)

Product Entity Array

Call Product Choice Group, Group Attributes

This function retrieves an array of products. Used with the Call Product dynamic choice group.

Get Promotion List

None

Promotion Entity Array

Promotions Choice Group, Group Attributes

This function is used to return array of Promotion entity for Promotion dynamic choice. The result is either ranked promotion array supplied as incoming parameter of advisors or array of promotions loaded using data source mapping.

Get Retention Action List

Active (String)Category (String))

Action Entity Array

Retention Actions Choice Group, Group Attributes

This function retrieves an array of retention actions. Used with the Retention actions dynamic choice group.

Get Solution List

Active (String)Product Id (String))

Solution Entity Array

Solutions Choice Group, Group Attributes

This function retrieves an array of Solutions. Used with the solutions dynamic choice group.

Get Specific Choice Likelihood

modelName (String)thisChoiceName (string)

Double

Various Choice Attributes

This function returns likelihood for a given inputted choice that is part of a Choice Model (as opposed to a choice event model). As inputs, the user must pass in the value for the "Name" attribute assigned to the choice and the model name that choice is part of.

Get Top Call Product

None

String

Predictive Summary Choice

This function calls the Select Likely Call Product decision and returns the top ranked call product according to it.

Get Top Interaction Duration

None

String

Predictive Summary Choice

This function calls the Select Likely Interaction Duration decision and returns the top ranked call product according to it.

Get Top Interaction Reason

None

String

Predictive Summary Choice

This function calls the Select Likely Interaction Reason decision and returns the top ranked call reason according to it.

Get Total Amount Spent

Purchased Items (Purchase Items Array)

Double

Purchase History Entity

This function sums up the amount the customer spent so far based on purchase amount of products owned.

Get Total Amount Spent in Last 90 Days

Purchased Items (Purchase Items Array)

Double

Purchase History Entity

This function sums up the amount the customer spent in past 90 days.

Get Up Sell Product List

Product Id (String)

Product Entity Array

Up Sell Offers Choice Group, Group Attributes

This function is used to return array of Product entity for Up Sell dynamic choice. The result is either ranked products array supplied as incoming parameter of advisors or array of up sell products loaded using data source mapping.

Multiply

A (Double)B (Double)

Double

Various objects

This function multiplies the given numbers.

Set Choice Model

Choice Model Name (String)Choice Name (String)

None

Close Session integration point

This function is used to store all of the logic needed to set the Choice Models tied to the Choice Groups.

Set Session Rank Offers

Offers (String array)

None

Various Advisor Integration Points

This procedure is used to parse and set the session Rank Offers attribute before decision selection.


5.10 Batch Use of the Base Customer Service Module

The batch examples provided in this base solution demonstrate a technical implementation of the Oracle RTD platform's batch framework. Logic has been included in this Inline Service to allow for the batch operation of this solution. The following scenarios for batch use are:

Each of the above use cases is configured through .java files and adheres to the sequence of API's that the batch framework expects, namely:

  1. init() - Called once by the framework before starting the batch's processing loop.

  2. getNextInput() - Returns the next input row to be processed by the batch.

  3. executeRow() - The batch job implements this method to process the input row that was returned by getNextInput().

  4. flushOutputs() - Called by the framework to allow the batch job to flush its output table buffers.

  5. cleanup() - Called by the framework after the batch is finished or is being stopped. Cleans up any resources allocated by the batch job, such as the result set created by its init() method.

For full details of the methods of the BatchJob interface and execution of the batch framework, refer to the Oracle RTD Batch Framework chapter in Oracle Real-Time Decisions Platform Developer's Guide.

A separate .java file has been created for each of the batch use cases described in this section. These java files are located under the path, RTD_ILS_HOME/RTD_Base_Customer_Service/src/batch where RTD_ILS_HOME is the directory into which the Inline Service RTD_Base_Customer_Service has been saved. The following are the .java files included:

Important:

These java files should not be relocated as their path is referenced by the Inline Service when registering each of the batch process to the batch framework.

This section contains the following topics:

5.10.1 Registering Batch Jobs for Base Customer Service

The logic for registering each of the batch job .java files can be found in the Logic section of the Application object of the Inline Service. Both .java files are registered against the default path, RTD_Base_Customer_Service/src/batch.

If users decide not to include batch functionality with their Inline Service, they must comment out the logic in this section.

5.10.2 BatchLearn.java

The BatchLearn.java file contains the logic to process a list of customers and offer responses, obtained through a SQL query, and calls the Inline Service informant to update its learning models.

init()

The init() API loads all of the batch parameters defined for this batch job, such as the SQL statement that pulls customer interaction data to be processed by the job. Currently, the java file has a default SQL statement that pulls data from a table called BatchInteractions. However, customers should replace this with their own table from which to learn.

getNextInput()

The getNextInput() API processes the given result set of customer data and sets the data into the inputRow object to be processed by the executeRow() API.

executeRow()

The executeRow() API calls the Start Session informant to begin the Oracle RTD session, passing it the appropriate request parameters. It then calls the CloseSessionInformant() API, which in turn calls the Close Session integration point. The Close Session integration point contains the logic that updates all of the learning models tied to the interaction.

flushOutputs()

The flushOutputs() API is not used for this batch job.

cleanup()

The cleanup() API closes out the result set built from the init() API and closes the database connection.

5.10.3 BatchRecommend.java

The BatchRecommend.java file contains the logic to process a list of customers obtained through a SQL query, and calls the Inline Service advisor Get Actions to retrieve the top ranked action for a given customer. This output is then written to an output table defined by the customer.

init()

The init() API loads all of the batch parameters defined for this batch job, such as the SQL statement for pulling the list of customers for whom to retrieve the best action. In this example, the SQL is tied to a table BatchCustomers. However, customers should replace this with their own table from which to predict.

getNextInput()

The getNextInput() API processes the given result set of customer data and sets the data into the inputRow object to be processed by the executeRow() API.

executeRow()

The executeRow() API calls the Get Actions integration point, passing it the appropriate customer id from the inputRow object. The recommended action is then obtained from the response and passed to the insertOrUpdate() API, which uses JDBC functionality and prepares the INSERT or UPDATE statement to be used after the flushOutputs() API is called..

flushOutputs()

The flushOutputs() API is called to execute all of the INSERT and UPDATE statements that have been collected and prepared by the insertOrUpdate() API.

cleanup()

The cleanup() API closes out the result set built from the init() API and closes the database connection.