8 Customizing Revenue Assurance Manager

This chapter describes how to customize Oracle Communications Billing and Revenue Management (BRM) Revenue Assurance Manager.

See "Understanding Revenue Assurance Manager" for general information about Revenue Assurance Manager and its capabilities.

To customize Revenue Assurance Manager, you should have knowledge of the Pipeline Manager system architecture, BRM system architecture, PCM opcodes, flists, storable classes, aggregation scenarios, iScripts, and iRules. For more information, see:

  • BRM Concepts

  • BRM System Administrator's Guide

  • BRM Developer's Guide

About the Revenue Assurance Manager Opcodes

Revenue Assurance Manager uses these Process Audit FM standard opcodes:


    This opcode creates audit objects for revenue assurance. It is called by PCM_OP_BILL_MAKE_BILL_NOW and PCM_OP_BILL_MAKE_BILL_ON_DEMAND and the UE Loader.

    This opcode performs the following actions:

    • Reads the primary database ID for storing /process_audit objects.

    • Calls the PCM_OP_PROCESS_AUDIT_CREATE_AND_LINK opcode to create /process_audit/batchstat objects.

    • Calls the PCM_OP_PROCESS_AUDIT_POL_CREATE policy opcode to validate data and check for duplicate objects.

    • Calls PCM_OP_CREATE_OBJ to create audit objects.


    This opcode creates /process_audit/batchstat objects and links them together.

    This opcode performs the following actions:

    • Calls the PCM_OP_PROCESS_AUDIT_POL_CREATE_AND_LINK policy opcode to check for duplicate objects and entries.

    • Calls the PCM_OP_PROCESS_AUDIT_LINK opcode to create the necessary links between /process_audit/batchstat objects.


    This opcode links /process_audit/batchstat objects according to the configuration specified in the /config/link_controlpoint object.


    This opcode creates a summary of a write-off operation. It is triggered by a notification event generated by Suspense Manager when a suspended EDRs are written off. This opcode gets information about the written-off EDRs from the notification event, including the EDR's suspended batch ID and its original batch ID.


    This opcode searches for and returns revenue assurance data from groups of /process_audit/batchstat objects.

    You pass in:

    • A /process_audit/batchstat object subclass type.

    • A control point name.

    • The detailed grouping or summary data you want.

    • The type of search to perform.

    The opcode returns the relevant statistics.

Using Policy Opcodes to Customize Revenue Assurance Manager

You can use the following policy opcodes to customize Revenue Assurance Manager:

Customizing Audit Object Validation

The PCM_OP_PROCESS_AUDIT_POL_CREATE policy opcode checks for duplication of audit objects and validates audit data. It is called by the PCM_OP_PROCESS_AUDIT_CREATE opcode.

This policy opcode performs the following actions:

  • Checks for duplicate objects and validates data.

  • Performs validation only if there are no duplicate audit objects.

The opcode returns any validated data and duplicate records.

You can customize PCM_OP_PROCESS_AUDIT_POL_CREATE by modifying the fields in the flist, modifying duplicate checks, and adding validation checks.

Customizing /process_audit/batchstat Object Validation

To validate /process_audit/batchstat objects, use the PCM_OP_PROCESS_AUDIT_POL_CREATE_AND_LINK policy opcode.

This opcode checks for duplication of audit objects and entries. It is called by PCM_OP_PROCESS_AUDIT_CREATE_AND_LINK.

You can customize this opcode by modifying the fields in the flist, modifying duplicate checks, and adding validation checks.

This opcode sets and returns errors if there are any duplicate objects or entries, otherwise it returns the POIDs of the /process_audit/batchstat objects.

Customizing Alert Behavior

Revenue Assurance Manager uses the PCM_OP_PROCESS_AUDIT_POL_ALERT policy opcode to send email alerts when configured threshold values are crossed. See "Configuring Email Alerts" for information on configuring email alerts.

PCM_OP_PROCESS_AUDIT_POL_ALERT reads the details of the alert from the notification event and sends an alert email message using the details in the /config/ra_alerts object. These details include the recipient e-mail addresses, the locale to be used for subject, and the message body text.

PCM_OP_PROCESS_AUDIT_POL_ALERT calls the PCM_OP_DELIVERY_MAIL_SENDMSGS opcode to send email messages using dm_email.

You can customize this opcode to notify an external system or change email. For example, you may want to send alerts via text messages or collect alert information in error logs in addition to sending emails.

Customizing the Revenue Assurance Written-Off EDR Summaries

After Suspense Manager writes off an EDR, Revenue Assurance Manager creates a summary of the EDR by calling the PCM_OP_PROCESS_AUDIT_POL_CREATE_WRITEOFF_SUMMARY policy opcode. You can change this process by adding custom code to this opcode.

By default, PCM_OP_PROCESS_AUDIT_POL_PREPARE_WRITEOFF_SUMMARY reads fields from /suspended_usage/telco object and maps them to fields in the /process_audit/batchstat/status object. Table 8-1 below shows the mapping; the new fields are grouped by Batch ID and Original batch ID:

Table 8-1 RA Manager Field Mapping

Maps these Fields in /suspended_usage/telco To these Fields in /process_audit/batchstat/status









PCM_OP_PROCESS_AUDIT_POL_PREPARE_WRITEOFF_SUMMARY sets and returns errors if there are any objects other than /suspended_usage/telco objects in the input flist.

You can change the behavior of PCM_OP_PROCESS_AUDIT_POL_PREPARE_WRITEOFF_SUMMARY to read and aggregate any fields of the /suspended_usage storable class and its subclasses. The opcode can then map this data to corresponding fields in the /process_audit/batchstat/status storable class.

Creating New Aggregation Scenarios for Revenue Assurance

Revenue Assurance Manager uses aggregation scenarios to group the data that it collects from the pipeline. If the aggregation scenarios provided with Revenue Assurance Manager do not meet you needs, you can create your own.


You cannot view data from custom scenarios in Revenue Assurance Center.

See "About Aggregation Scenarios" for more information on how Revenue Assurance Manager uses aggregation scenarios.

To create your own aggregation scenarios:

  1. Create an aggregation scenario by using Pricing Center.

    See the discussion of working with aggregation scenarios in Pricing Center Help.

  2. Create the appropriate /process_audit/batchstat subclasses.

    See "Creating Custom Fields and Storable Classes" in BRM Developer's Guide for more information.


    The new subclasses created must contain an array field of type PIN_FLD_GROUP_DETAILS. The PIN_FLD_ORIGINAL_BATCHID field must also be created in the array.
  3. Create the XML templates used by Universal Event (UE) Loader to load the aggregation data generated by the new scenario.

    For more information on how to create new UE Loader templates, see Developer Center Help.

  4. Modify the PCM_OP_PROCESS_AUDIT_POL_CREATE_AND_LINK policy opcode to check for duplication of records in the newly created /process_audit object.

    See "Customizing /process_audit/batchstat Object Validation" for more information.

Changing the Control Point for Data on Written-Off EDRs

The control point ID to collect revenue assurance data on written-off EDRs is configured in the Connection Manager configuration file (BRM_Home/sys/cm/pin.conf). See "About Collecting Revenue Assurance Data on Written-Off EDRs" for more information.

To change the control point ID:

  1. Open the Connection Manager (CM) BRM_Home/sys/cm/pin.conf file in a text editor.

  2. Change the control point ID in the writeoff_control_point_id entry.

    The default control point ID is CP_SuspenseWriteOff.

  3. Save and close the file.

  4. Stop and restart the CM.

    See the discussion of starting and stopping the BRM system in BRM System Administrator's Guide for more information.

Customizing Revenue Assurance Center

You can use the racustom.properties file to customize some features in Revenue Assurance Center. The file is located in Revenue Assurance Center_home\RevenueAssuranceCenter\lib.

The racustom.properties file contains the following text:

# racustom.properties
# Revenue Assurance Center's customizable properties file
# RA Details screen default view by option is configured using the # following key. The valid value for this key should be any of 0 #or 1 or 2 or 3 or 4
#Service Type = 0
#BatchID      = 1
#Revenue Stream = 2
#Output Stream   = 3
#Suspense Reason = 4

The file specifies:

  • The option settings from the Revenue Assurance Center Customize Table dialog box.

  • The default grouping parameter for the Revenue Assurance Center Details screen. The Details screen displays revenue assurance data organized by the default grouping parameter.

    You can manually change this default configuration by changing the number value in the strings of this type:


    The line above shows Service Type selected as the default. If you change 0 to 2, your default option becomes Revenue Stream.

  • The Service type search options in the rating and rerating Search dialog box.

    Add service types to these lines to add search options to the dialog box:

  • The revenue stream options in the rating and rerating Search dialog boxes.

    Add revenue streams to these lines to add search options to the dialog box:

  • The default system currency. The default is US Dollars (ISO code 840); you can change this to any other currency type. To change the default currency to Euros, use the Unicode escape sequence code shown below:

  • The default decimal separator (.) for the default currency. If the default currency is changed from US Dollars to euros, change the decimal separator to a comma (,).

  • The current locale of the BRM server in which CM is running. You can change this locale if necessary. The default setting is English.


    Table 8-2 lists the additional locales that are supported:

    Table 8-2 Supported Locales

    Language Locale



    Portuguese (Brazilian)