38 Pipeline Manager iRules

This chapter provides reference information for Oracle Communications Billing and Revenue Management (BRM) Pipeline Manager iRules.

IRL_EventTypeSplitting

The IRL_EventTypeSplitting iRule sends EDRs to separate output streams based on service codes.

See "Sending EDRs to Pipeline Output Streams".

To run the iRule, configure the FCT_IRules module. See:

Dependencies

This module must run after the FCT_ServiceCodeMap module and before the FCT_Reject module.

This is typically the last module before the FCT_Reject module.

For more information, see "Function Module Dependencies".

Sample Registry

EventSplitting 
{
 ModuleName = FCT_IRules
 Module 
 { 
    Active = True 
    Source = Database 
    DataConnection = ifw.DataPool.DataConnection 
    Rules {}
 }
}

EDR Container Fields

Table 38-1 lists the IRL_EventTypeSplitting EDR Container fields.

Table 38-1 IRL_EventTypeSplitting EDR Container Fields

Alias field nameDefault field name Type Access Description

INTERN_SERVICE_CODE

DETAIL.INTERN_SERVICE_CODE

String

Read

Internal service code.


IRL_EventTypeSplitting_tt

The IRL_EventTypeSplitting_tt iRule sends EDRs to separate output streams based on the In-Memory Database (IMDB) Cache logical partition and service code.

See "Sending EDRs to Pipeline Output Streams".

To run the iRule, configure the FCT_IRules module. See:

Dependencies

This module must run after the FCT_ServiceCodeMap module and before the FCT_Reject module.

This is typically the last module before the FCT_Reject module.

For more information, see "Function Module Dependencies".

Sample Registry

ServiceOutputSplit 
{
 ModuleName = FCT_IRules
 Module 
 { 
    Active = True 
    Source = Files 
    Rules
    {
    }
    Descriptions
    {
        ServiceCodeSplit = ./iScriptLib/iScriptLib_Standard/IRL_EventTypeSplitting_tt.irl
    }
 }
}

EDR Container Fields

Table 38-2 lists the IRL_EventTypeSplitting_tt EDR Container fields.

Table 38-2 IRL_EventTypeSplitting_tt EDR Container Fields

Alias field nameDefault field name Type Access Description

LOGICAL_PARTITION_ID

DETAIL.LOGICAL_PARTITION_ID

String

Read

Logical Partition ID.

INTERN_SERVICE_CODE

DETAIL.INTERN_SERVICE_CODE

String

Read

Internal service code.


IRL_LeastCostPerEDR

The IRL_LeastCostPerEDR iRule flags all EDRs that satisfy the criteria for BRM least=1 cost rating. For more information, see "About Least Cost Rating".

You set up the criteria that an EDR must meet to qualify for least=1 cost rating in the IRL_LeastCostPerEDR.irl and IRL_LeastCostPerEDR.data files. See "Specifying the Rules to Qualify for Least Cost Rating".

To run the iRule, configure the FCT_IRules module. See:

Dependencies

This module must run:

  • Before the "FCT_CustomerRating" module, because FCT_CustomerRating uses the flag set by this module to decide whether to create charge packets for all products.

  • After the "FCT_Filter_Set" module, because the rules you set up in IRL_LeastCostRating.data frequently use filter sets as one criteria for least=1 cost rating.

For more information, see "Function Module Dependencies".

Registry Entries

Table 38-3 lists the IRL_LeastCostEDR registry entries.

Table 38-3 IRL_LeastCostEDR Registry Entries

Entry Description Mandatory

Active

Specifies if the module is active or inactive.

  • True = Active

  • False = Inactive

Yes

LeastCostCheck

Specifies the path to the IRL_LeastCostPerEDR.irl file.

See "Specifying the Rules to Qualify for Least Cost Rating".

Yes

Source

Specifies whether the least= cost rating data is stored in a file or in a database table.

  • File = The iRules data is stored in a file.

  • Database = The iRules data is stored in a database table.

Yes


Sample Registry

LeastCostPerEDR
{
   ModuleName = FCT_IRules
   Module
   {
      Active = False
      Source = Database 
      DataConnection = ifw.DataPool.DataConnection 
              Rules {}
   }
   }

EDR Container Fields

Table 38-4 lists the IRL_LeastCostEDR EDR Container fields.

Table 38-4 IRL_LeastCostEDR EDR Container Fields

Alias field nameDefault field name Type Access Description

DETAIL.CUST_A.LEAST_COST

Integer

Write

Toggles least= cost rating on and off. A value of 1 means do not apply least cost rating; a value of 2 specifies to apply least= cost rating.

DETAIL.CUST_A.MARKET_SEGMENT

String

Read

Specifies the filter set associated with the EDR.

DETAIL.CUST_A.PRODUCT_PRIORITY

String

Read

Contains a list of the priorities for all products that are associated with the same service and event.

DETAIL.CUST_A.INTERN_FOUND_PP_INDEX

String

Write

Contains the index of the highest priority rating product.

This is the product with the highest rate priority for an event. In the case of two products with matching priorities, the product with the first start time is selected.


IRL_PipelineSplitting

The IRL_PipelineSplitting iRule is used in the pre-recycling pipeline to send EDRs to different output streams depending on their original pipeline names. The EDRs are then routed to their original pipelines for recycling.

The PipelineSplitting.irl file specified in the registry references a data file called PipelineSplitting.data, which you must modify based on your pipeline names. The default contents of the file are:

ALL_RATE;PreRecycleOutput
ALL_RATE_2;PreRecycleOutput_2
.*;PreRecylceOutput

See "Configuring a Pre-Recycling Pipeline".

For more information about iRules, see "Creating iScripts and iRules" in BRM Developer's Guide.

To run the iRule, configure the FCT_IRules module. See:

Sample Registry

PipelineSplit
{
  ModuleName = FCT_IRules
  Module
  {
    Active = True
      Source = Database 
      DataConnection = ifw.DataPool.DataConnection 
      Rules
      {
      }
  }
}

IRL_PromotionalSavingPerEDR

The IRL_PromotionalSavingPerEDR iRule flags all EDRs that satisfy the criteria for a promotional savings calculation.

You set up the rules to qualify for the promotional savings calculation in the promotional savings iRules files (IRL_PormotionalSavingPerEDR.irl and IRL_PromotionalSavingPerEDR.data).

For more information, see "About Calculating the Promotional Savings".

To run the iRule, configure the FCT_IRules module. See:

Dependencies

This module must run before the IRL_LeastCost module and the FCT_CustomerRating module.

For more information, see "Function Module Dependencies".

Registry Entries

Table 38-5 lists the IRL_PromotionalSavingPerEDR registry entries.

Table 38-5 IRL_PromotionalSavingPerEDR Registry Entries

Entry Description Mandatory

Active

Specifies if the module is active or inactive.

  • True = Active

  • False = Inactive

Yes

PromotionalSaving

Specifies the path to the IRL_PromotionalSavingPerEDR.irl file.

See "Specifying the Rules to Qualify for Promotional Savings".

No

Source

Specifies whether the iRules data is stored in a file or database table.

  • File = The iRules data is stored in a file.

  • Database = The iRules data is stored in a database table.

Yes


Sample Registry

PromotionalSavingPerEDR
{
   ModuleName = FCT_IRules
   Module
   {
      Active = True
      Source = Database 
      DataConnection = ifw.DataPool.DataConnection 
          Rules {}
   }
}

EDR Container Fields

Table 38-6 lists the IRL_PromotionalSavingPerEDR EDR Container fields.

Table 38-6 IRL_PromotionalSavingPerEDR EDR Container Fields.

Alias field nameDefault field name Type Access Description

DETAIL.CUST_A.PROMOTIONAL_SAVING

Integer

Write

Toggles promotional savings on and off. A value of 1 means do not apply promotional savings. A value of 2 applies promotional savings.

DETAIL.CUST_A.MARKET_SEGMENT

String

Read

Specifies the filter set associated with an EDR.

DETAIL.CUST_A.PRODUCT_PRIORITY

String

Read

Contains a list of the priorities for all products that are associated with the same service and event.

DETAIL.CUST_A.INTER_RATING_PRODUCTS

String

Write

Contains the product rating indexes.

This is a comma-separated list of all rating products' indexes associated with the same service and event, and their priorities.


IRL_UsageType

The IRL_UsageType iRule assigns usage types to EDRs.

See "Mapping usage types" in BRM Setting Up Pricing and Rating.

To run the iRule, configure the FCT_IRules module. See:

Dependencies

This module must be run after the FCT_Account module and before the FCT_USC_Map module.

For more information, see "Function Module Dependencies".

Sample Registry

IRules
{
  ModuleName = FCT_IRules
  Module
  {
     Active = True
     Source = Database 
     DataConnection = integrate.DataPool.DataConnection 
     Rules {}
  }
}

EDR Container Fields

Table 38-7 lists the IRL_UsageType EDR Container fields.

Table 38-7 IRL_UsageType EDR Container Fields

Alias field nameDefault field name Type Access Description

DETAIL.CUST_A.ERA.PROFILE

String

Read

Contains the profile for customer A

DETAIL.CUST_B.ERA.PROFILE

String

Read

Contains the profile for customer B

DETAIL.CUST_A.PRODUCT.ERA.PROFILE

String

Read

Contains the product profile for customer A

DETAIL.CUST_B.PRODUCT.ERA.PROFILE

String

Read

Contains the product profile for customer B

DETAIL.CUST_A.ERA.PA.KEY

String

Read

Contains the customer A profile attribute key

DETAIL.CUST_A.ERA.PA.VALUE

String

Read

Contains the customer A profile attribute value

DETAIL.CUST_B.ERA.PA.KEY

String

Read

Contains the customer B profile attribute key

DETAIL.CUST_B.ERA.PA.VALUE

String

Read

Contains the customer B profile attribute value

DETAIL.CUST_A.PRODUCT.ERA.PA.KEY

String

Read

Contains the customer A product profile attribute key

DETAIL.CUST_A.PRODUCT.ERA.PA.VALUE

String

Read

Contains the customer A product profile attribute key

DETAIL.CUST_B.PRODUCT.ERA.PA.KEY

String

Read

Contains the customer B product profile attribute key

DETAIL.CUST_B.PRODUCT.ERA.PA.VALUE

String

Read

Contains the customer B product profile attribute key

DETAIL.CUST_A.INTERN_FOUND_PP_INDEX

String

Read

Contains the internal found purchases product index.

DETAIL.USAGE_DIRECTION

String

Read

Contains the usage direction.

DETAIL.CONNECT_SUB_TYPE

String

Read

Contains the connection subtype

DETAIL.CUST_A.ACCOUNT_NO

String

Read

Contains the customer A account number.

DETAIL.CUST_B.ACCOUNT_NO

String

Read

Contains the customer B account number

DETAIL.CUST_A.SYSTEM_BRAND

String

Read

Contains the system brand for customer A

DETAIL.CUST_B.SYSTEM_BRAND

String

Read

Contains the system brand for customer B

DETAIL.CUST_A.BILL_CYCLE

String

Read

Contains the customer A bill cycle

DETAIL.B_NUMBER

String

Read

Contains the B number for call

DETAIL.ASS_GSMW_EXT.CELL_ID

String

Read

Contains the cell ID for GSM call

DETAIL.CHARGING_START_TIMESTAMP

String

Read

Contains the start time for call

DETAIL.CUST_A.PRODUCT.RATEPLAN_NAME

String

Read

Contains the rate plan for customer A product

DETAIL.CUST_B.PRODUCT.RATEPLAN_NAME

String

Read

Contains the rate plan for customer B product


iRuleValidation

iRuleValidation is an instance of the FCT_IRules module used to validate the data in individual CIBER fields in the EDR container. iRuleValidation uses the CIBER_VAL.xml file that specifies the rules and rule items for validating CIBER fields.

You must load the rules in the CIBER_VAL.xml file into the Pipeline Manager database before starting Pipeline Manager. See "Importing and Exporting Validation Rules" in BRM Developer's Guide.

For information about validating CIBER records for incollect processing, see "About Validating Roaming Usage Data" in BRM Configuring Roaming in Pipeline Manager.

To run the iRule, configure the FCT_IRules module. See:

Dependencies

Run this iRule before the ISC_TapSplitting module.

For more information , see "Function Module Dependencies".

Sample Registry

iRuleValidation
{
  ModuleName = FCT_IRules
  Module
  {
     Active = True
     Source = Database
     DataConnection = ifw.DataPool.DataConnection
     Rules
     {
        CIBER_VAL
     }
  }
}