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".
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:
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.
Configure the FCT_NOSP module. See "FCT_NOSP".
Configure the DAT_NOSP module. See "DAT_NOSP".
If you store NO/SP data in a file, see "Creating an NO/SP Data File".
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".
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:
MAPGROUP (NOT NULL)
RANK (NOT NULL)
OLD_SOURCE
OLD_DESTINATION
A_PREFIX
NEW_SOURCE (NOT NULL)
NEW_DESTINATION (NOT NULL)
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:
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".
Configure the FCT_SocialNo module. See "FCT_SocialNo".
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
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:
Map prefixes and descriptions in Pricing Center.
Note:
You can also use a text file. See "Creating a Prefix/Description Data File".Configure the FCT_PrefixDesc module. See "FCT_PrefixDesc".
Configure the DAT_PrefixDesc module. See "DAT_PrefixDesc".
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:
National
International
Special
Note:
If you use a file to store the mappings, you do not enter any prefix type. See "Creating a Prefix/Description Data File".The description to use, for example, "New York City."
Important:
All prefix/description pairs must be unique.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
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:
Define the mapping in a file. See "Creating a CLI Mapping File".
Configure the FCT_CliMapping module. See "FCT_CliMapping".
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 |
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.
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.
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:
Purge data from the primary number portability file. To purge data from the file, use the purge utility (purge.np_data.pl). See "Purging and Reloading the Memory Records".
Reload the data from the primary number portability file to the memory. See "Purging and Reloading the Memory Records".
Append the data from the delta number portability file to the memory and subsequently to the primary number portability file. See "Appending Additional Number Portability Records".
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.
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:
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.
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.
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:
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".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".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
To set up number portability for the batch pipeline:
Configure the FCT_NumberPortability module. See "FCT_NumberPortability".
Configure the DAT_NumberPortability module. See "DAT_NumberPortability".
When you configure the DAT_NumberPortability module, you specify the following:
The search method. See "Configuring Number Portability Search".
Normalization. See "Configuring Normalization for Number Portability".
The number portability data file. See "Creating a Number Portability Data File".
To set up number portability for the real-time pipeline:
Configure the FCT_NumberPortability module. See "FCT_NumberPortability".
Configure the DAT_NumberPortability module. See "DAT_NumberPortability".
When you configure the DAT_NumberPortability module, you specify the following:
The search method. See "Configuring Number Portability Search".
Normalization. See "Configuring Normalization for Number Portability".
The number portability data file. See "Creating a Number Portability Data File".
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".
Configure the ISC_MapNetworkOperatorInfo iScript and place it after the ISC_PopulateOpcodeAndUtilBlock_Diameter iScript in the registry file. See "ISC_MapNetworkOperatorInfo".
Configure the FCT_Opcode module and place it in the processing pipeline after the ISC_PopulateOpcodeAndUtilBlock_Diameter iScript. See "FCT_Opcode".
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".
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