19 Using Standard Recycling to Recycle Suspended EDRs

This chapter explains how to use the Oracle Communications Billing and Revenue Management (BRM) pin_recycle utility to recycle suspended EDRs. EDRs are usually recycled for one of two reasons:

  • They were suspended by the pipeline because of a problem with the pipeline or the EDR. Once the problem is fixed, you recycle the EDRs by using the BRM standard recycling tools in another attempt to rate them. The standard recycling tools recycle all EDRs from the same CDR file at the same time.

  • They were suspended intentionally by a BRM program that required a temporary interruption in rating. These programs mark the EDRs with a recycle key and store them until the interruption is over. All EDRs with the same recycle key are recycled at the same time.

In both cases you use pin_recycle to recycle the suspended EDRs back through the pipeline to rate them and capture the revenue they represent. See "pin_recycle".

For information on how to configure Pipeline Manager to suspend calls see "Configuring Suspense Manager".

For details on the pin_recycle utility, see "pin_recycle".

About the Standard Recycling Mechanism

The BRM standard recycling feature uses the FCT_Reject, FCT_Suspense, and FCT_PreSuspense pipeline modules, along with the pin_recycle utility to suspend and recycle calls that originated in the same CDR input file. After examining the Pipeline Manager log files to determine why calls were suspended, Pipeline Manager administrators fix the pipeline, and then use this utility to attempt to rate these calls again. For details on setting up and using the standard recycling tools, see "Configuring Standard Recycling".

Configuring the pipeline requires system administration experience. You need to be familiar with:

  • Modifying BRM pipeline modules to append EDRs with data. For details on setting up and administering pipeline rating, see "About Pipeline Rating".

  • Creating a crontab file entry to run the pin_recycle utility to recycle or delete EDRs. See your operating system documentation for details on creating a cron command.

Setting Up EDR Recycling by CDR File

To set up BRM to recycle EDRs by CDR file:

  1. Configure the pipeline to reject EDRs according to your business policies. For details, see "Configuring Standard Recycling".

  2. Run pin_recycle utility with the -f option as needed to recycle suspended within a CDR file. You can test recycle, recycle, or delete all the failed EDRs contained in that CDR file. For the complete pin_recycle syntax, see "pin_recycle".

    You can run this utility like any other BRM utility, but you will probably want to run it manually as needed. How often you run this script depends on how many EDRs your pipeline rejects. When you make frequent or significant changes to your pipeline, you need to check your log files frequently. If a lot of EDRs are being rejected, you need to run pin_recycle often.

About Recycling Suspended EDRs after Rating Interruptions

Some BRM programs and features temporarily interrupt and then restart rating for certain accounts. These programs and features use pin_recycle to recycle calls for those accounts when the interruption is over. These features, such as account migration and pipeline-triggered billing, temporarily stop rating by directing the pipeline to suspend calls that come in during the interruption. As these call records arrive in the pipeline, they are appended with a recycle key. When the interruption is over, you use pin_recycle to rate all the stored calls that contain that recycle key. You can further configure this feature by using any number of different recycle keys to control when suspended EDRs get recycled.

Note:

This feature is compatible with both Suspense Manager and standard recycling.

The -k recycle key option directs pin_recycle to search for all EDRs that contain a specific recycle key string and a status of suspended, and queues them for rating. The BRM feature that suspends EDRs determines which EDRs contain the same recycle key and need to be recycled together. This gives pin_recycle the flexibility to selectively restrict recycling to just the EDRs with specific characteristics.

For example, the account migration feature moves groups of accounts across databases, and must temporarily stop rating for each group of accounts while they are being moved. Account migration uses internal job IDs to keep track of the accounts being moved, and it also uses these job IDs in the recycle keys for suspended EDRs associated with those same accounts.

In contrast, the pipeline-triggered billing feature interrupts all rating for all accounts. Therefore, pipeline-triggered billing only needs to use one recycle key (Trigger_Billing) for all EDRs that arrive during the temporary suspension.

Before using pin_recycle, you must first configure a pipeline module to add the recycle key. For details, see "Setting Up EDR Recycling by Recycle Key".

Setting Up EDR Recycling by Recycle Key

To set up BRM to recycle suspended EDRs by recycle key:

  1. Configure the pipeline to suspend EDRs according to your business policies. For details, see "Configuring Standard Recycling".

  2. Configure BRM to add the recycle key to EDRs during the temporary interruptions. The feature requiring the temporary interruption has a pipeline module associated with it that does this. For example, the pipeline-triggered billing feature uses the FCT_TriggerBilling module, and Account Migration Manager uses the FCT_AccountRouter module.

    Important:

    AMM is not part of base BRM. Contact your BRM account manager for information about using AMM.

    The recycle key can be any string that corresponds to a set of EDRs to recycle. You configure a pipeline module to add your recycle key to the DETAIL.ASS_SUSPENSE_EXT.RECYCLE_KEY field of each EDR. The specific module to use depends on the program running billing and the strategy you use for recycling.

  3. Configure pin_recycle to run periodically. You do this by adding it to a cron file. For details, see "Setting Up pin_recycle to Run Periodically".

  4. Configure pin_recycle to run periodically with the -d option to remove the successfully recycled EDRs from the BRM database. You can do this by adding pin_recycle to a cron file. For details, see "Setting Up pin_recycle to Run Periodically".

Setting Up pin_recycle to Run Periodically

You need to run pin_recycle periodically both to queue the temporarily stored EDRs for rating, and to delete them. The cron command is the typical way to do this, although you can run pin_recycle like any other BRM command-line utility. This section explains how to set up cron command to run pin_recycle.

You need to add two pin_recycle entries to the cron command. One to search for and recycle EDRs, and the other to delete them after they are recycled. See "pin_recycle" for the syntax.

Adding EDR Recycle Entries

To run pin_recycle periodically, add entries like the following. The optimal frequency depends on your recycling strategy.

Running pin_recycle

Use a cron job with a crontab entry to run the pin_recycle script. The following crontab entry runs pin_recycle at 1:00 a.m. daily, and queues EDRs with a recycle key of Trigger_Billing for rating:

0 1 * * * BRM_Home/bin/pin_recycle -k Trigger_Billing &

BRM_Home is the directory where you installed BRM components.

Adding EDR Delete Entries

To remove EDRs from the BRM database, add an entry like the following. The optimal frequency depends on your recycling strategy.

Running pin_recycle

Use a cron job with a crontab entry to run the pin_recycle script. The following crontab entry runs pin_recycle at 1:00 a.m. daily, and deletes EDRs with a recycle key of Trigger_Billing:

0 1 * * * BRM_Home/bin/pin_recycle -k Trigger_Billing -d &