6 Setting Up EDR Enrichment

This chapter describes ways to enrich event data record (EDR) data for rating by the Oracle Communications Billing and Revenue Management (BRM) Pipeline Manager.

For information about pipeline rating, see "About Pipeline Rating".

Identifying the Network Operator/Service Provider

If your network supports multiple network operator/service providers (NO/SPs), you can use the FCT_NOSP module to identify the various NO/SPs. This module uses the source and destination codes and A number prefix in the EDR to assign a new source and destination code for the NO/SP.

Use this module when you need to identify the NO/SP and the NO/SP information is not available in the EDR; for example, when mobile networks are separated by means of the A number and you need to segment calls.

To map NO/SP data, you do the following:

  1. Use Pricing Center to create NO/SP maps. See "Creating an NO/SP Map".

    You can also use a file to configure the NO/SP map.

  2. Configure the FCT_NOSP module. See "FCT_NOSP".

  3. Configure the DAT_NOSP module. See "DAT_NOSP".

    If you store NO/SP data in a file, see "Creating an NO/SP Data File".

Creating an NO/SP Map

To create NO/SP mappings, you use Pricing Center or a text file to set up the data that specifies how to map NO/SPs.

The mappings are based on the following data:

  • Map group.

  • The order in which mappings are applied. The first NO/SP map that matches is used.

  • The source network and network destination recorded in the CDR.

  • The phone number prefix to match.

  • The new network source and destination to use in the EDR.

For information on the regular expressions you can use, see "About Using Regular Expressions when Specifying the Data to Extract".

Pricing Center stores the mappings in the IFW_NOSP database table.

For information on using a file to specify NO/SP maps, see "Creating an NO/SP Data File".

Creating an NO/SP Data File

You can store data for the DAT_NOSP module in the Pipeline Manager database or in a text file.

The configuration file must be an ASCII file. Each row defines one mapping rule. All fields in a row are separated by a semicolon (;). The fields in one row have the following order:

  1. MAPGROUP (NOT NULL)

  2. RANK (NOT NULL)

  3. OLD_SOURCE

  4. OLD_DESTINATION

  5. A_PREFIX

  6. NEW_SOURCE (NOT NULL)

  7. NEW_DESTINATION (NOT NULL)

Setting Up Social Numbers

In some cases, customers want a B number to not appear on an invoice. For example, some countries require that certain called numbers remain anonymous, such as the number for a treatment center. You can set up social numbers to hide specific B numbers.

The social flag functionality is executed by the FCT_SocialNo module. When it finds a social number, the module sets a flag in the EDR B_MODIFICATION_INDICATOR field. You can use this flag to customize how to handle the number; for example, remove the last three digits or not allow the EDR to be included in an invoice.

To set up social numbers:

  1. Use Pricing Center to specify social numbers.

    To specify social number, you specify the number that identifies it internally and give the number a descriptive name.

    The FCT_SocialNo module looks for an exact match of this number in the EDR.

    You can also use a file to specify social numbers. See "Creating a Social Number Data File".

  2. Configure the FCT_SocialNo module. See "FCT_SocialNo".

Creating a Social Number Data File

You can specify social numbers in Pricing Center or in a file.

The social number data file uses the following syntax:

number1
number2
...

The number uses the same format as the normalized B number in the EDR.

International-access-code c\Country-code National-destination-code Access-code

For example:

0014085555555 

Creating Call Destination Descriptions

You can set up descriptions for call destination area codes. For example, a prefix of 001408 can be described as "San Jose, California." The description is displayed on the customer's bill.

Prefix/description mapping is performed by the FCT_PrefixDesc module. You set up a mapping between prefixes and descriptions. The module finds the best match for the prefix and adds the description to the EDR DESCRIPTION field.

To set up prefix/description mapping:

  1. Map prefixes and descriptions in Pricing Center.

    Note:

    You can also use a text file. See "Creating a Prefix/Description Data File".
  2. Configure the FCT_PrefixDesc module. See "FCT_PrefixDesc".

  3. Configure the DAT_PrefixDesc module. See "DAT_PrefixDesc".

Setting Up Prefix/Description Mapping in Pricing Center

To set up prefix/description mapping in Pricing Center, enter the following:

  • The area code prefix. The prefix must have the same format that is used for normalization within a pipeline. The FCT_PrefixDesc module does not normalize numbers.

  • The prefix type:

  • The description to use, for example, "New York City."

    Important:

    All prefix/description pairs must be unique.

Creating a Prefix/Description Data File

You can define prefix/description mappings in the Pipeline Manager database, or in a file.

The mapping file has the following structure:

Prefix1; Description1
Prefix2; Description2

Mapping Multiple Phone Numbers to a Single Number

Customers with more than one telephone number sometimes want to get only one bill for all their numbers. You can map multiple telephone numbers to one number. This mapping is performed by the FCT_CliMapping module. The module uses the A number to search for a mapping entry. If there is a mapping entry, the A number is replaced by the Caller Line Identification (CLI) number

For example, a customer with a primary number 14085722000 could have five extra telephone numbers but would like to be billed as if they originated from the same number. To accomplish this for all the calls originating from the other five numbers, the A number is mapped to 14085722000 in the EDR.

To configure CLI mapping:

  1. Define the mapping in a file. See "Creating a CLI Mapping File".

  2. Configure the FCT_CliMapping module. See "FCT_CliMapping".

Creating a CLI Mapping File

As shown in Table 6-1, the FCT_CliMapping module requires an ASCII mapping file that contains the numbers to map to a single number.

  • Every new line defines a mapping.

  • Fields are separated by semicolons (;).

  • There should be no semicolon at the end of a line.

    Table 6-1 FCT_CliMapping Module File Structure

    Column Name Position Length Format Description

    1

    CLI_FROM

    1

    25

    X(25)

    Start CLI

    2

    SERVICE_CODE

    27

    5

    X(5)

    Service Code

    3

    MAPPING_CLI

    33

    25

    X(25)

    Mapping CLI

    4

    CUST_NUMBER

    59

    10

    X(10)

    Customer number

    5

    SUBSC_NUMBER

    70

    20

    X(20)

    Subscriber number

    6

    ISDN_RANK

    91

    1

    X(1)

    Rank of the ISDN number


Managing Number Portability

Customers may want to change network operators but retain their existing phone number. You can maintain number portability data to keep a track of the network operator a customer uses.

For maintaining number portability data, the DAT_NumberPortability module loads the data from the number portability file into the memory (pipeline's run-time memory).

The FCT_NumberPortability gets the number portability data from the DAT_NumberPortability module. The data includes the CLI, the new network operator ID, and the date that the customer changed network operators. The FCT_NumberPortability module uses the date of the event to determine which network operator applies. If the new network operator applies, FCT_NumberPortability module updates the new network operator ID in the EDR.

BRM's number portability feature support batch pipeline (offline mode). See "Number Portability for the Batch Pipeline".

For batch pipeline rating, the FCT_NumberPortability module updates the EDR with the appropriate network operator ID based on the time stamp when the network operator changed.

For real-time pipeline rating, the FCT_NumberPortability module updates the EDR with the appropriate network operator ID based on the time stamp when the network operator changed. The FCT_Opcode module creates an opcode input flist containing the new network operator information. The flist is used for rating the calls in real time.

Number Portability for the Batch Pipeline

BRM uses semaphores to load the number portability data file using the batch process in the pipeline.

The number portability process for the batch pipeline makes the system inactive when the new number portability records are updated in the system.

About Number Portability Files

The number portability file is an ASCII file that stores the number portability data. The data from these files is loaded into the DAT_NumberPortability module.

You enter the following information in the number portability file:

  • CLIs.

  • The time stamp when CLIs are ported to a new network operator.

  • The new network operator ID.

See "Creating a Number Portability Data File".

The following example shows a sample of number portability records in a number portability file:

Call Line ID            Date              Network Operator ID
408555                  20080101000000    D030
408555                  20080110000000    D010

The records in the example show that the subscriber changes the network operator to D030 on January 01, 2008. From January 01 to January 1, the subscriber is with the network operator D030. On January 10, the subscriber changes the network operator to D010.

BRM uses the following number portability files:

  • Primary number portability file: Contains the primary number portability records that already exist.

  • Delta number portability file: Contains the additional number portability records that need to be added to the memory and the primary number portability file.

You use the primary number portability file when you use the reload probe or the Reload semaphore to reload number portability data.

You use the delta number portability file when you use the deltaLoad probe to update the primary number portability file.

To manage number portability data, you can do the following:

Creating a Number Portability Data File

The DAT_NumberPortability module reads the required data from a reverse-sorted ASCII file.

Each row of the number portability file contains a CLI number, a date and time (when the numbers are ported), and a network operator ID as shown in Table 6-2.

Table 6-2 Input File for DAT NumberPortability module

Column Format Description

Call Line Identity Number

String

Specifies the telephone number or a part of the telephone number.

Portation date and time

YYYYMMDDhhmmss

Specifies the date and time of the number portation.

Network Operator ID

Dxxx

Specifies the new telephone carrier.


An example of a sample file:

089761   20020910101230   D030
089761   20020912101230   D018
089545   20020820084000   D017
089545   20020920230010   D030

Important:

The columns are separated by spaces.

Use the DAT_NumberPortability FileName registry entry to specify the file name for the number portability data file.

Purging and Reloading the Memory Records

The purge utility is used to delete existing records (from the number portability file) that are older than a time stamp specified in the utility. You can purge the data from the memory by using the purge utility. For purging the records from the memory, you must first purge records from the number portability file and then use the reload probe to ensure that the records in the number portability file and the memory are in sync.

To purge and reload number portability records:

  1. Run the purge_np_data.pl utility to purge the primary number portability data file:

    purge_np_data.pl NP_FileName TimeStamp [–b backup_filename] [-n]
    

    where,

    • NP_FileName specifies the name of the primary number portability file. For example, Primary_NP_Data.data.

    • TimeStamp specifies the date prior to which all the number portability records are purged. For example, 20080105000000.

    • -b backup_filename specifies the name of the backup file that will contain the unpurged number portability records. For example, Primary_NP_Data.bak.

    This command takes a backup of the existing number portability records in the backup file and deletes all number portability records prior to the date (timestamp) specified from the primary number portability file.

  2. Initiate the reload probe or the Reload semaphore to reload the purged number portability data into the memory.

    This ensures that the records in the number portability file and the memory are in sync.

    The syntax for the reload probe is as follows:

    snmpSet Host_name 1.3.6.1.4.1.3512.1.7.3.1.1.1.1.47.0 -pPort_No
    

    Value: True/False

    where,

    • Host_name specifies the name of the host where you run the SNMP server.

    • Port_No specifies the SNMP port number configured in the pipeline registry configuration.

    Note:

    Use the Reload semaphore only for the batch pipeline. For the sample entry of Reload semaphore, see "Sample Semaphore File Entry".

    If the reload operation fails, the memory data will contain all the unpurged data. The primary number portability data file is moved to a Pipeline_Home/npdata/error directory. Pipeline_Home is the directory where you installed Pipeline Manager.

Appending Additional Number Portability Records

You can use the delta number portability file to append additional or newly ported records to the primary number portability file. The delta number portability file contains the additional records that are in the same format as the primary number portability file. By default, the delta number portability file is stored in the Pipeline_Home directory. You can also manually add the additional records in the primary number portability file but this process is cumbersome when you need to add many records.

To append additional number portability records:

  1. Initiate the deltaLoad probe or the AdditionalNumPortData semaphore with the delta number portability file name as a value. The delta number portability file contains additional entries in the same format as the number portability file.

    The syntax for the deltaLoad probe is follows:

    snmpSet Host_name 1.3.6.1.4.1.3512.1.7.3.1.1.2.1.47.0 -pPort_No
    

    Value: file name

    where:

    • Host_name specifies the name of the host where you run the SNMP server.

    • Port_No is the SNMP port number configured in the pipeline registry configuration.

    • File_name specifies the name of the delta number portability file.

    The additional entries are first added to the memory and then the memory data is dumped into the primary number portability file so that the records in the memory and the primary number portability file are in sync.

    Note:

    Use the AdditionalNumPortData semaphore only for the batch pipeline. For the sample entry of AdditionalNumPortData semaphore, see "Sample Semaphore File Entry".
  2. Initiate a printData probe or a PrintData semaphore to print the records to a file.

    The syntax for the printData probe is as follows:

    snmpSet HOST_NAME 1.3.6.1.4.1.3512.1.7.3.1.1.3.1.47.0 -PPORT_NO
    

    Value: File name or NULL (Upper or Lowercase)

    where:

    • Host_name specifies the name of the host where you run the SNMP server.

    • Port_No specifies the SNMP port number configured in the pipeline registry configuration.

    All number portability data in the memory is copied to the file. By default, this file is created in the Pipeline_Home directory.

    Note:

    Use the PrintData semaphore only for the batch pipeline. For the sample entry of the PrintData semaphore, see "Sample Semaphore File Entry".

Setting Up Number Portability

You must set up number portability to maintain the number portability data to keep track of the network operator a customer is using. You can configure number portability for the following:

  • Batch pipeline

  • Real-time pipeline

Setting Up Number Portability for Batch Pipeline

To set up number portability for the batch pipeline:

  1. Configure the FCT_NumberPortability module. See "FCT_NumberPortability".

  2. Configure the DAT_NumberPortability module. See "DAT_NumberPortability".

    When you configure the DAT_NumberPortability module, you specify the following:

Setting Up Number Portability for Real-Time Pipeline

To set up number portability for the real-time pipeline:

  1. Configure the FCT_NumberPortability module. See "FCT_NumberPortability".

  2. Configure the DAT_NumberPortability module. See "DAT_NumberPortability".

    When you configure the DAT_NumberPortability module, you specify the following:

  3. Configure the ISC_PopulateOpcodeAndUtilBlock_Diameter iScript in the registry file and place it in the processing pipeline after the FCT_NumberPortability module. See "ISC_PopulateOpcodeandUtilBlock_Diameter".

  4. Configure the ISC_MapNetworkOperatorInfo iScript and place it after the ISC_PopulateOpcodeAndUtilBlock_Diameter iScript in the registry file. See "ISC_MapNetworkOperatorInfo".

  5. Configure the FCT_Opcode module and place it in the processing pipeline after the ISC_PopulateOpcodeAndUtilBlock_Diameter iScript. See "FCT_Opcode".

Configuring Number Portability Search

You can configure which of the following search methods the DAT_NumberPortability module uses to find a phone number's current network operator:

  • Best match searches the number portability file for objects with the best combination of matching phone number prefix and recent port date. For example, a number portability file includes the following entries and a pipeline module receives a CDR with a date of November 2 and the phone number 4085551234:

    Call Line ID      Date              Network Operator ID
    408               20081001000000    D030
    408555            20080801000000    D029
    408555            20080708000000    D028
    

    The DAT_NumberPortability module returns network operator D029 because the entry contains the most recent port date with the most matching prefix numbers.

  • Exact match searches for the first object that exactly matches a given phone number.

  • Any prefix match searches for the first object with a matching prefix.

To configure the search method, use the DAT_NumberPortability SearchMethod registry entry. See "DAT_NumberPortability".

Configuring Normalization for Number Portability

Use the following DAT_NumberPortability registry entries to specify number normalization data:

  • CountryCode

  • NationalAccessCode

  • InternationalAccessCode

  • InternationalAccessCodeSign

For example, you can normalize this phone number:

04106760279

so that it becomes:

00494106760279

See "DAT_NumberPortability".