12 Nortel GSM/UMTS AMA Cartridge Pack

This document describes how to configure the Oracle Communications Offline Mediation Controller Nortel GSM/UMTS AMA Cartridge Pack.

Topics in this document:

About the Nortel GSM/UMTS AMA Cartridge Pack

The AMA cartridge pack provides the functionality to collect AMA data from DMS-MSC SDMs, process that data and send it to downstream applications such as billing systems and/or databases. The cartridge pack includes nodes that are responsible for collecting, processing and distributing the data. The DMS-MSC CC node collects G-CDR and GHOT records from DMS-MSC SDMs and these records are distributed in AMA DIRP, ASCII or ASN.1 format to downstream billing systems and to databases for storage and search capabilities.

The cartridge pack includes Input Stream Monitoring on the DMS-MSC CC node, NRTT CC node and on all DC nodes. Input stream monitoring is enabled on a per-cartridge basis to detect whether any records have been received for an operator-defined period of time. The nodes raise an alarm when they do not receive any new records within a specified time period, and clear the alarm when it begins to receive records again.

Figure 12-1 shows the G-CDR collection of AMA DIRP files.

Figure 12-1 AMA Architecture with G-CDR Collection in AMA DIRP File Format

Description of Figure 12-1 follows
Description of "Figure 12-1 AMA Architecture with G-CDR Collection in AMA DIRP File Format"

Figure 12-2 shows the G-CDR collection with NRTT distribution.

Figure 12-2 AMA Architecture with G-CDR Collection in NRTT Distribution

Description of Figure 12-2 follows
Description of "Figure 12-2 AMA Architecture with G-CDR Collection in NRTT Distribution"

Figure 12-3 shows G-CDR and GHOT collection in AMA DIRP file format.

Figure 12-3 AMA Architecture with G-CDR and GHOT Collection in AMA DIRP File Format

Description of Figure 12-3 follows
Description of "Figure 12-3 AMA Architecture with G-CDR and GHOT Collection in AMA DIRP File Format"

File Errors

The AMA DIRP file that the nodes move to the bad file directory retains its original name. The name of the error report file is in the format AMA_DIRP_filename_error_report.txt.

There are two types of errors:

  • An error in the DIRP file structure. For example, the size of the record is corrupted. When the DMS-MSC CC node detects this error, the remaining information in the file is no longer readable. In this case, the node processes the AMA DIRP file up to the position where the error was detected. The node cannot process the remainder of the file.

  • An error within an AMA record. For example, an unknown module code index. When the DMS-MSC CC node detects this error, it stops processing the record. The remaining information in the AMA DIRP file is still reliable, so the node continues processing, starting with the next AMA record.

The error report identifies the position of the processed and unprocessed AMA records.

Configuring the DMS-MSC CC Node

This section contains the information on the requirements for creating and configuring the DMS-MSC CC node.

The DMS-MSC CC node will generate a warning alarm if it has not received any data files from a device for a period of time. The operator can configure a different time interval for each node. The DMS-MSC CC node will clear the alarm when it receives a new input file. The input stream monitoring functionality can be enabled or disabled via the node configuration window.

The input stream monitoring feature should only be used when the node is operating in FTP mode. In Open-FTP mode, the node should normally receive no records, and therefore this monitoring feature should be disabled. However, the node cannot automatically do this. The user must manually disable this feature when choosing Open-FTP mode.

To configure the DMS-MSC CC node, configure standard options and the options in the AMA CC tab. Table 12-1 shows the options to configure in the AMA CC tab.

Table 12-1 AMA CC Tab

Field Description

Select the Transport

Select FTP Push or Open FTP.

Input directory

The directory the DMS-MSC SDM system sends CDRs to on the Offline Mediation Controller system.

Bad File directory

The directory to hold the AMA DIRP files that contain errors. When the DMS-MSC CC node detects a bad AMA DIRP file, it moves the file to this directory and creates an error report file that it writes to this directory. The node raises an alarm in the GUI and writes an error log to the node log file.

File completion extension

The expected file extension that the DMS-MSC CC node adds to the AMA DIRP file when the FTP is complete. There is no default extension. If the field is left blank, the transferring SDM does not add an extension when the file transfer is complete.

Check for new files period

Defines the period that the node waits before checking the input directory for a new AMA DIRP file. The range is 1 second to 60 minutes.

Keep/Delete processed files

Controls whether the node deletes the processed AMA DIRP file or keeps the processed file for a user-defined period of time.

Keep processed files directory

Becomes active if you configure the node to keep the processed files. You must specify the directory where the node will store the processed files. The processed files will be prefixed with P.

Keep processed files duration

Becomes active if you configure the node to keep the processed files. You must specify how long the node will keep the processed files. The range is 1 hour to 60 days.

Keep/Delete recovery files

Indicates whether to track previously processed files. To prevent duplicate record processing, select Keep.

Keep recovery files duration

Becomes active if you configure the node to keep the recovery files. You must specify how long the node will keep the recovery files. The range is 1 hour to 60 days.

Process Files

Indicates the file types that are being processed. In FTP Push mode, all input files are processed. In Open FTP Push mode, only closed files are processed.

Active file prefix

Becomes active if you select Open FTP transport. It is the prefix of the active AMA DIRP files. This prefix should match the prefix setting on the MSC SDM.

Active file suffix

Becomes active if you select Open FTP Push. It is the suffix of the active AMA DIRP files. This suffix should match the suffix setting on the MSC SDM.

Closed file prefix

Becomes active if you select Open FTP Push. It is the prefix of the closed AMA DIRP files. This prefix should match the prefix setting on the MSC SDM.

Configuring the NRTT CC Node

The NRTT CC node receives GHOT files from DMS-MSC SDMs.

The NRTT CC node generates an alarm if it has not received any data files from a device for a period of time, or if it has not received any new records in the current active file within the configured period of time. The NRTT CC will clear the alarm when it receives a new input file or a new record. The input stream monitoring functionality can be enabled or disabled via the node configuration window.

To configure the DMS-MSC CC node, configure standard options and the options in the NRTT CC Node tab. The NRTT CC Node tab includes the same options as the AMA CC tab. See "Configuring the DMS-MSC CC Node".

Creating and Configuring the ASCII DC

Before beginning this procedure, edit the NPL rule file that will be used for this DC. Replace the str2int NPL function with the str2decimal function in the code fragments with the following syntax:

yearInt = str2int(tmpValue);
DMS MSC (32.005 v3.6.0)

This change provides a more targeted range of warnings for date stamps from a device.

Note:

This NPL rule file change only applies to customized NPL files and not the default files.

Follow these guidelines when creating and configuring the ASCII DC:

  • The output includes information from the Billing Block Header Record, Billing File Transfer In Record, and Billing File Transfer Out Record.

  • The leading f character is deleted in the following fields:

    • Called number

    • Calling number

    • Calling equipment

    • Calling party

    • Called party

    • Dialed digits

    • MSC number

    • Destination routing address

    • SCP address

    • Group call

  • The Numbering_Plan_Identifier field is split into four fields, as follows:

    • spare field

    • extension fields

    • type of number

    • number plan indicator

      For example, if the value for Numbering_Plan_Identifier is 01201, the spare field will be 0, extension fields will be 1, type of number will be 2, and number plan indicator will be 01.

To create and configure the ASCII DC node, configure the standard file management, FTP, and file retention options.

ASCII DC Output Files

This section explains how multiple occurrences of modules are handled in ASCII output files.

For example, the Supplementary Service Module can appear multiple times and contains the following attributes:

  • SS_ModuleCode
  • SS_SsCode
  • SS_SsAction
  • SS_DateAndTime
  • SS_SsParameters
  • SS_ResultIndicator

If a CDR contains 3 SS modules, the output appears as:

Header: regular_preceding_CDR_attribute_names, SS_ModuleCode, SS_SsCode, SS_SsAction, SS_DateAndTime, SS_SsParameters, SS_ResultIndicator, regular_following_CDR_attribute_names
Fields: module_code_number, val1_val2_val3,val1__,val1__val3,_val2_val3,__val3

The field values are separated with an underscore where the val1 fields apply to the first SS module instance, the val2 fields apply to the second SS module instance and the val3 fields apply to the third SS module instance.

If there is no field value for a module, the output appears as two underscores. For example, val1_ _val3.

If there is no specific value for any of the modules, the output appears as two underscores. For example, _ _.

This information applies to other modules, such as Location and Channel Information and Supplementary Service Action.

ASCII DC Sample Output

The following is sample output from the ASCII DC with version hiding from GSM 17 to GSM 15:

'GsmRecordHeader_GsmCallTypeCode','FileName','TimeStamp','AdditionalInformation','AccessNetwork','AnswerTime','CallDuration','CalledEquipment','CalledNumber_BcdOrHexString','CalledNumber_DmsMscNumberType','CalledNumber_NPI_SpareField','CalledNumber_NPI_ExtendedField','CalledNumber_NPI_TypeOfNumber','CalledNumber_NumberingPlanIndicator','CalledParty_BcdOrHexString','CalledParty_DmsMscNumberType','CalledParty_NPI_SpareField','CalledParty_NPI_ExtendedField','CalledParty_NPI_TypeOfNumber','CalledParty_NumberingPlanIndicator','CalledSubscriberCategory','CallIndicator','CallingEquipment','CallingNumber_BcdOrHexString','CallingNumber_DmsMscNumberType','CallingNumber_NPI_SpareField','CallingNumber_NPI_ExtendedField','CallingNumber_NPI_TypeOfNumber','CallingNumber_NumberingPlanIndicator','CallingParty_BcdOrHexString','CallingParty_DmsMscNumberType','CallingParty_NPI_SpareField','CallingParty_NPI_ExtendedField','CallingParty_NPI_TypeOfNumber','CallingParty_NumberingPlanIndicator','CallingSubscriberCategory','CallForwardIndicator','CallReference','CauseForTermination','CellIdentity','ChannelAllocationTime','ClassmarkTimeStamp','DateAndTime','DateAndTimeRelease','DateAndTimeSeizure','DeliveryTimestamp','Diagnostic','DialedDigits_BcdOrHexString','DialedDigits_DmsMscNumberType','DisconnectTime','EquipmentIdentity','EquipmentType','GsmRecordHeader_DmsMscStructureCode','GsmRecordHeader_HexadecimalId','HalfRateInUse','HotBillingIndicator','IncomingMeteringClass','IncomingRouteGroup','IncomingTrunkGroup','IncomingTrunkMember','LocationAreaCode','LogicalNetwork','MessageReference','MeteringZone','MsClassmark','MscNumber_BcdOrHexString','MscNumber_NPI_SpareField','MscNumber_NPI_ExtendedField','MscNumber_NPI_TypeOfNumber','MscNumber_NumberingPlanIndicator','OffAirCallSetup','OutgoingMeteringClass','OutgoingRouteGroup','OutgoingTrunkGroup','OutgoingTrunkMember','RecordNumber','ReleaseTime','ResultIndicator','RoamingNumber_BcdOrHexString','RoamingNumber_DmsMscNumberType','RoamingNumber_NPI_SpareField','RoamingNumber_NPI_ExtendedField','RoamingNumber_NPI_TypeOfNumber','RoamingNumber_NumberingPlanIndicator','ServiceCenter_BcdOrHexString','ServiceCenter_NPI_SpareField','ServiceCenter_NPI_ExtendedField','ServiceCenter_NPI_TypeOfNumber','ServiceCenter_NumberingPlanIndicator','SmsResult','SmsTimestamp','StudyIndicator','SupplementaryServiceAction','SupplementaryServiceCode','SupplementaryServiceParameter','TrunkReleaseTime','TrunkSeizureIncoming','TrunkSeizureOutgoing','AuxiliaryRecordHeader_RecordingOfficeIdentity','AuxiliaryRecordHeader_RecordingOfficeType','AuxiliaryRecordHeader_SensorIdentity','AuxiliaryRecordHeader_SensorType','BlockCount','BlockNumber','DateAndTimeNew','DateAndTimeOld','EmergencyFsn','FileSequenceNumber','FileTransferType','GenericIdentity','RecordCount','SwitchRestartType','AgeOfLocation','GeographicalLocationOfTargetUE','IdentityOfTargetUE','LCSClientExternalID','LCSClientType','LCSRecordType','LCSResult','LCSInitiationTime','LCSTerminationTime','RequestedQualityOfService','RecordTime','PriorityCallTag','GroupCallReference','FunctionalNumber','PriorityLevel','PriorityCallCause','PriorityCallDuration','PriorityReleaseTime','EOM_ModuleCode','BS_ModuleCode','BS_BearerService','BS_DateAndTime','LC_ModuleCode','LC_RoamingNumber_DmsMscNumberType','LC_RoamingNumber__NPI_SpareField','LC_RoamingNumber__NPI_ExtendedField','LC_RoamingNumber__NPI_TypeOfNumber','LC_RoamingNumber_NumberingPlanIndicator','LC_RoamingNumber_BcdOrHexString','LC_MscNumber_NPI_SpareField','LC_MscNumber_NPI_ExtendedField','LC_MscNumber_NPI_TypeOfNumber','LC_MscNumber_NumberingPlanIndicator','LC_MscNumber_BcdOrHexString','LC_IncomingTrunkGroup','LC_IncomingTrunkMember','LC_LocationAreaCode','LC_CellIdentity','LC_ChannelType','LC_ChannelDescription','LC_DateAndTime','LC_AccessNetwork','SS_ModuleCode','SS_SsCode','SS_SsAction','SS_DateAndTime','SS_SsParameters','SS_ResultIndicator','T_ModuleCode','T_Teleservice','T_DateAndTime','AP_ModuleCode','AP_SsCode','AP_DateAndTime','AP_EParameter1','AP_EParameter2','AP_EParameter3','AP_EParameter4','AP_EParameter5','AP_EParameter6','AP_EParameter7','AP_AocParmReason','TC_ModuleCode','TC_ChargeZone','TC_SubscriberService','TC_TariffClass','DS_ModuleCode','DS_IwfTrunkGroupMsSide','DS_IwfTrunkMemberMsSide','DS_IwfTrunkGroupNetworkSide','DS_IwfTrunkMemberNetworkSide','DS_DataVolume','DS_DataRate','DS_ConnectionElement','DS_InformationTransferCapability','DS_DataCompression','DS_NumberOfFaxPages','DS_IwfDiagnosticCode','DS_IwfActivationTimestamp','OA_ModuleCode','OA_TerminatingLocation','LO_ModuleCode','LO_MscNumber_NPI_SpareField','LO_MscNumber_NPI_ExtendedField','LO_MscNumber_NPI_TypeOfNumber','LO_MscNumber_NumberingPlanIndicator','LO_MscNumber_BcdOrHexString','LO_LocationAreaCode','LO_CellIdentity','LO_AccessNetwork','P_ModuleCode','P_PartialRecordSequenceNumber','P_PartialRecordEventCode','P_PartialRecordReason','P_PartialRecordReferenceNumber','TU_ModuleCode','TU_TrunkUsageReason','GI_ModuleCode','GI_DetectionPoint','GI_ServiceKey','GI_DestinationRoutingAddress','GI_ScpAddress','GI_OffBoardInServiceIdentifier','GI_OffBoardInServiceIndicator','GI_ChargeNumber_DmsMscNumberType','GI_ChargeNumber_BcdOrHexString','GI_TimeStamp1','GI_TimeStamp2','GI_OperationIndication','GIC_ModuleCode','GIC_FciFreeform1','GIC_FciFreeform2','GIC_FciFreeform3','GA_ModuleCode','GA_PreTranslatedCalledPartyNumber_DmsMscNumberType','GA_PreTranslatedCalledPartyNumber_NPI_SpareField','GA_PreTranslatedCalledPartyNumber_NPI_ExtendedField','GA_PreTranslatedCalledPartyNumber_NPI_TypeOfNumber','GA_PreTranslatedCalledPartyNumber_NumberingPlanIndicator','GA_PreTranslatedCalledPartyNumber_BcdOrHexString','GA_OriginalCallingNumber_DmsMscNumberType','GA_OriginalCallingNumber_NPI_SpareField','GA_OriginalCallingNumber_NPI_ExtendedField','GA_OriginalCallingNumber_NPI_TypeOfNumber','GA_OriginalCallingNumber_NumberingPlanIndicator','GA_OriginalCallingNumber_BcdOrHexString','GCR_ModuleCode','GCR_NetworkCallReferenceNumber','GCR_MscAddress_NPI_SpareField','GCR_MscAddress_NPI_ExtendedField','GCR_MscAddress_NPI_TypeOfNumber','GCR_MscAddress_NumberingPlanIndicator','GCR_MscAddress_BcdOrHexString','GCC_ModuleCode','GCC_FreeFormatData','GCC_PartyToCharge','MNP_ModuleCode','MNP_RoutingNumber','MNP_QueryMethod','MNP_PortedStatus','OT_ModuleCode','OT_ChargeNumberANI_DmsMscNumberType','OT_ChargeNumberANI_NPI_SpareField','OT_ChargeNumberANI_NPI_ExtendedField','OT_ChargeNumberANI_NPI_TypeOfNumber','OT_ChargeNumberANI_NumberingPlanIndicator','OT_ChargeNumberANI_BcdOrHexString','OT_OriginatingLineInformation','OT_OriginatingNumberingPlanArea','OT_AutomaticNumberIdentificationIndicator','OT_TerminatingNumberingPlanArea','OT_GenericAddressParameter','EA_ModuleCode','EA_InterExchangeInternationalCarrierPrefix','EA_TypeOfCarrierIdentificationCode','EA_CarrierConnectTimestamp','EA_InterExchangeInternationalCarrierPrefixCallEventStatus','TF_ModuleCode','TF_TollFreeCallTypeCode','TF_CalledPartyOffHookIndicator','TF_ServiceFeatureCode','TF_ScpDeterminedTerminatedNumber','TF_OverseasIndicator','TF_Lata','TF_InterExchangeInternationalCarrierRoutingIndicator','LNP_ModuleCode','LNP_PartyIdentifier','LNP_LocationRoutingNumber','LNP_ServiceProviderIdentity','LNP_Location','LNP_SupportingInformation','SING_ModuleCode','SING_XcliIndicator','SING_NationalInternationalIndicator','SING_OtherSubscriberCustgrp','SING_OtherSubscriberNcos','SING_CallingPartyCategory','SING_CityWideCentrex','CSC_ModuleCode','CSC_SelectedCarrierIdentificationCode','CSC_DefaultCarrierIdentificationCode','CSC_SubscriberCustomerGroup'
'011','u030915094268gcdr','1086060297590','','','20030310061651','0000003','','12141215034','0','0','1','1','01','','','','','','','','','','','0','0','1','0','00','','','','','','','','','0020511','000','','','','','','','','04016','','','','','','00013','aa','','','001','112','00601','00011','','000','','000','','12148020000','0','1','1','01','','','','','','00000000032','','','','','','','','','','','','','','','','0','','','','20030310061654','030310061649900','','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'002','u030915094268gcdr','1086060297625','','','20030310061653','0000002','','12141215034','2','0','1','1','01','310022141215034','1','','','','','000','0000000','','','0','0','1','0','00','','','','','','','','0','0020511','000','','','','','','','','04016','','','','','','10003','aa','0','','','112','00601','00011','','','','','fff0ff0','12148020000','0','1','1','01','0','','','','','00000000033','20030310061654','','','','','','','','','','','','','','','0','','','','','030310061649900','','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','006','011','20030310061650','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','018_018','012_012','00000000000_00000000000','_','197260200000_197260200000','_','_','0_0','_','20030310061651_','20030310061652_','4_0','019','acac00000000000000000000000000000000000000000','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','011_011','0_0','0_0','1_1','0_0','00_00','_','_','0214800_0214800','_','214_214','25508100003ffffffffffffffffff_25508100003ffffffffffffffffff','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'001','u030915094268gcdr','1086060297649','','','20030310061651','0000003','','12141215034','2','0','1','1','01','','','','','','','','0000002','','','0','0','1','0','00','310022141215034','1','','','','','000','0','0102415','000','','','','','','','','04016','12141215034','6','','','','10002','aa','0','','','','','','','','','','fff0ff0','12148020000','0','1','1','01','0','','','','','00000000034','20030310061654','','','','','','','','','','','','','','','0','','','','','','030310061651500','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','003','3','0','1','1','01','ffffffffff12144030150','0','1','0','00','','','','00000000000','','FFFFF','','','0','','','','','','','006','011','20030310061650','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','018','000','00000000000','','','','','0','','','','3','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','011','0','0','1','0','00','','062','','','214','25508100003ffffffffffffffffff','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'002','u030915094268gcdr','1086060297668','','','20030310061651','0000003','100000000000034','12141215034','2','0','1','1','01','310022141215034','1','','','','','010','0000000','','','0','0','1','0','00','','','','','','','','0','0102415','000','','20030310061651','20030310061651','','','','','04016','','','20030310061654','','','10003','aa','0','','','','','','','','','','2100000','12148020000','0','1','1','01','0','','','','','00000000035','20030310061654','','','','','','','','','','','','','','','0','','','','','','','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','003','3','0','1','1','01','ffffffffff12144030150','0','1','1','01','ffffffffff12148020000','00622','00001','03100200401','00002','FFFFF','','20030310061651','0','','','','','','','006','011','20030310061651','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','022','f0000000000000001','0','1','1','01','ffffffffff12148020000','','','','','','','','011','0','0','1','0','00','','062','0214800','','214','25508100003ffffffffffffffffff','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'012','u030915094971gcdr','1086060297864','','','20030310062416','0000003','','101022214050325001','0','0','1','2','01','','','','','','','','','','2141215031','2','0','1','2','01','','','','','','','','','0086078','000','','','','','','','','','','','','','','00014','aa','','','','','','','','','','','','12148020000','0','1','1','01','','001','113','00603','00001','00000000044','','','','','','','','','','','','','','','','0','','','','20030310062418','','030310062416400','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'001','u030915094971gcdr','1086060297928','','','20030310062420','0000004','','12141215032','2','0','1','1','01','','','','','','','','0000002','100000000000031','12141215031','2','0','1','1','01','310022141215031','1','','','','','010','0','0086078','000','','20030310062416','20030310062415','','','','','00016','101033312141215032','6','20030310062423','','','10002','aa','0','','','','','','','','','','2100000','12148020000','0','1','1','01','0','','113','00603','00001','00000000045','20030310062423','','','','','','','','','','','','','','','0','','','','','','030310062420000','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','003','3','0','1','1','01','ffffffffff12144030149','0','1','1','01','ffffffffff12148020000','00622','00004','03100200401','00007','FFFFF','','20030310062416','0','','','','','','','006','011','20030310062415','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','018_018','002_002','00000000000_00000000000','12141215032_14050325001','19726022001_19726022001','_','_','0_0','_','_20030310062416','_20030310062418','0_2','','','','','','','','','','','','','','','','','','022','f0000000000000007','0','1','1','01','ffffffffff12148020000','','','','','','','','011_011','7_7','0_0','1_1','2_0','00_00','fffffffffffffffffffff2141215031_fffffffffffffffffffff1412150600','062_062','0214702_0214702','_','214_405','25508100003ffffffffffffffffff_25508100003ffffffffffffffffff','012','02221','0','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'002','u030915094971gcdr','1086060297946','','','20030310062420','0000004','100000000000032','12141215032','2','0','1','1','01','310022141215032','1','','','','','010','0000000','','2141215031','0','0','1','2','01','','','','','','','','0','0086078','000','','20030310062420','20030310062419','','','','','00016','','','20030310062423','','','10003','aa','0','','','','','','','','','','2100000','12148020000','0','1','1','01','0','','','','','00000000046','20030310062423','','','','','','','','','','','','','','','0','','','','','030310062419300','','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','003','3','0','1','1','01','ffffffffff12144030149','0','1','1','01','ffffffffff12148020000','00622','00005','03100200401','00007','FFFFF','','20030310062420','0','','','','','','','006','011','20030310062419','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','022','f0000000000000008','0','1','1','01','ffffffffff12148020000','','','','','','','','011','7','0','1','2','00','fffffffffffffffffffff2141215031','062','0214702','','214','25508100003ffffffffffffffffff','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''
'001','u030915095472gcdr','1086060298322','','','','0000000','','12140325001','0','0','1','1','01','','','','','','','','0000002','','12141215071','2','0','1','1','01','310022141215071','1','','','','','010','1','0000031','000','','','','','','','','00016','992141215072','6','','','','10002','aa','0','','','','','','','','','','fff0ff0','12148020000','0','1','1','01','0','','113','00603','00001','00000000047','20030310062927','','','','','','','','','','','','','','','0','','','','','','030310062926300','','','','','','','','','','','','01500','','','','','','','','','','','','','','','','','','','','','000','','','','','','','','','','','','','','','','','','','','','','','','005','029','5','20030310062925','fffffffff992141215072','001','006','011','20030310062925','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','018','003','00000000000','12140325001','19726023001','','','0','','20030310062926','20030310062927','2','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','','011_011','0_0','0_0','1_1','0_0','00_00','_','062_062','_','_','214_992','25508100003ffffffffffffffffff_25508100003ffffffffffffffffff','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''

Creating and Configuring the DMS-MSC ASN.1 DC

The DMS-MSC ASN.1 DC outputs data according to the 3GPP 32.005 version 3.6 specification.

Ensure the rule file selection corresponds to the incoming GSM data:

  • For incoming GSM 18 data, select the rule file DMS MSC ASN1 GSM 18

  • For incoming GSM 17 data, select the rule file DMS MSC ASN1 GSM 17

  • For incoming GSM 16 data, select the rule file DMS MSC ASN1 GSM 16

  • For incoming GSM 15 data, select the rule file DMS MSC ASN1 GSM 15

  • For incoming GSM 13 data, select the rule file DMS MSC ASN1 GSM 13

To create and configure the DMS-MSC ASN.1 DC, configure the standard file management, FTP, and file retention options.

DMS-MSC ASN.1 Sample Output

The DMS-MSC ASN.1 DC outputs data according to the 3GPP 32.005 version 3.6 specification. Below is sample output that has been translated into a readable format.

* * * * * * * Record 1 * * * * * * *
------------------
value CallEventRecord ::= incGatewayRecord : {
  recordType incGatewayRecord,
  calledNumber '912141215130F4'H,
  recordingEntity '912141080200F0'H,
  mscIncomingTKGP tkgpName : "00601",
  seizureTime '0303100616492B0000'H,
  answerTime '0303100616512B0000'H,
  releaseTime '0303100616542B0000'H,
  callDuration 3,
  causeForTerm normalRelease,
  diagnostics manufacturerSpecificCause : {
    identifier { 0 1 2 3 },
    information -- OCTET STRING : '020110'H --
  },
  callReference 20511
}
* * * * * * * Record 2 * * * * * * *
DMS MSC (32.005 v3.6.0)
------------------
value CallEventRecord ::= mtCallRecord : {
  recordType mtCallRecord,
  servedIMSI '13002241215130F4'H,
  servedMSISDN '912141215130F4'H,
  recordingEntity '912141080200F0'H,
  mscIncomingTKGP tkgpName : "00601",
  basicService teleservice : '11'H,
  seizureTime '0303100616492B0000'H,
  answerTime '0303100616532B0000'H,
  releaseTime '0303100616552B0000'H,
  callDuration 2,
  causeForTerm normalRelease,
  diagnostics manufacturerSpecificCause : {
    identifier { 0 1 2 3 },
    information -- OCTET STRING : '020110'H --
  },
  callReference 20511
}
* * * * * * * Record 3 * * * * * * *
DMS MSC (32.005 v3.6.0)
------------------
value CallEventRecord ::= moCallRecord : {
  recordType moCallRecord,
  servedIMSI '13002241215130F4'H,
  calledNumber '912141215130F4'H,
  translatedNumber '912141215130F4'H,
  roamingNumber '912141040351F0'H,
  recordingEntity '912141080200F0'H,
  location {
    locationAreaCode "00000",
    cellIdentifier '0000'H
  },
  basicService teleservice : '11'H,
  answerTime '0303100616512B0000'H,
  releaseTime '0303100616542B0000'H,
  callDuration 3,
  causeForTerm normalRelease,
  diagnostics manufacturerSpecificCause : {
    identifier { 0 1 2 3 },
    information -- OCTET STRING : '020110'H --
  },
  callReference 102415,
  additionalChgInfo {
    chargeIndicator charge
  },
  systemType unknown
}

Configuring the JDBC DC Node

Before beginning this procedure, edit the NPL rule file that will be used for this DC. Replace the str2int NPL function with the str2decimal function in the code fragments with the following syntax:

yearInt = str2int(tmpValue);
chown oracle /opt/mslvdblogs

This change provides a more targeted range of warnings for date stamps from a device.

Note:

This NPL rule file change only applies to customized NPL files and not the default files.

Follow these guidelines when configuring the JDBC DC node:

  • The original file name of the binary MSC file that produces the CDR is stored in the database

  • All date and time fields stored in the database are in the format: YYYYMMDDhhmmss (year/month/day/hour/minute/seconds)

  • For incoming GSM data, the leading f character is removed for the following fields:

    • MSC Number field in the Location and Channel Information Module and the Location Only Information Module

    • PreTranslated Called Party Number field in the Generic Address Information Module

    • Original Calling Number field in the Generic Address Information Module

    • Timestamp format in fields TrunkSeizureOutgoing and TrunkSeizureIncoming

    • Called number

    • Calling number

    • Calling equipment

    • Calling party

    • Called party

    • Dialed digits

    • MSC number

    • Destination routing address

    • SCP address

    • Group call

  • The Numbering_Plan_Identifier field is split into four fields, as follows:

    • spare field

    • extension fields

    • type of number

    • number plan indicator

      For example, if the value for Numbering_Plan_Identifier is 01201, the spare field will be 0, extension fields will be 1, type of number will be 2, and number plan indicator will be 01.

Creating and Configuring the DMS-MSC AMA DIRP DC

To create and configure the DMS-MSC AMA DIRP DC node, configure the standard file management and FTP options, and the nodes in the tabs described below.

On the Compression tab, select NONE for no compression, or zip or gzip for compression. If you archive or delete files, this option compresses them before archiving or deleting them.

Note:

When you enable compression, existing files in the output folder will not be archived or deleted after a compression option is selected. As a result, they should be archived or deleted manually.

Table 12-2 shows the options to configure in the File Matching tab.

Table 12-2 File Matching Tab

Field Description

Generate File Based on Input file

Creates only one output file for one AMA file received by the CC node.

Output Directory

Location of the output files.

Bad File Directory

Location of files with errors output from the DC node.

File Prefix

Prefix of the output file. The default value is U. Multiple characters can be used in the prefix. A cannot be used as a prefix since it is reserved for currently written files.

File Suffix

Should match the suffix setting on the MSC SDM.

Table 12-3 shows the options to configure in the Office Identification tab.

Table 12-3 Office Identification Tab

Field Description

Sensor Type

Type of switching equipment from which record information is received.

  • 001 = MSC

  • 008 = 5ESS (OSPS)

  • 011 = TSPS-SPC

  • 029 = DMS-10

  • 031 = TSPS-3B

  • 036 = DMS-100F (DMS-200/TOPS)

Sensor Identification

Individual switch type. The ID is assigned by the operating company. Default is 0000000.

Recording Office Type

Type of recording machine that produced this record.

  • 001 = MSC

  • 008 = 5ESS (OSPS)

  • 011 = TSPS-SPC

  • 029 = DMS-10

  • 031 = TSPS-3B

  • 32 = AT&T KS (IBM Series 1) AMATPS collector

  • 036 = DMS-100F (DMS-200/TOPS)

  • 200 = Telescience collector

  • 220 = Teltone AMATPS collector

  • 270 = AT&T Billdats 3B20 AMATPS collector

  • 271 = AT&T Billdats 3B5 AMATPS collector

Recording Office ID

Individual recording machine. The ID is assigned by the operating company. Default is 0000000.

Rotation Time

Time, in seconds, for the AMA DC to close an output file and open a new output file. Rotation time is 60 seconds (1 min) by default, which means the DC closes the file within a minute. If there is no data for this period, the DC does not keep the output file unless the Keep Empty File checkbox is selected.

Output Extension

Suffix applied to the file produced by the AMA DC.

Output Directory

Directory path to the location where Offline Mediation Controller stores the files produced by the DC. Default is /tmp.

Keep Empty File

Select this checkbox if you want the node to keep the empty file.

Generate FTOR

Select this checkbox if you want the node to add the File Transfer Out Record parameter to the AMA output file.

Configuring the DMS-MSC NRTT DC Node

To create and configure the DMS-MSC NRTT DC, configure standard options and the options in the tabs described below.

Table 12-4 shows the options to configure in the Office Identification tab.

Table 12-4 Office Identification Tab

Field Description

Sensor Type

Type of switching equipment from which record information is received.

  • 001 = MSC

  • 008 = 5ESS (OSPS)

  • 011 = TSPS-SPC

  • 029 = DMS-10

  • 031 = TSPS-3B

  • 036 = DMS-100F (DMS-200/TOPS)

Sensor Identification

Individual switch type. The ID is assigned by the operating company. Default is 0000000.

Recording Office Type

Type of recording machine that produced this record.

  • 001 = MSC

  • 008 = 5ESS (OSPS)

  • 011 = TSPS-SPC

  • 029 = DMS-10

  • 031 = TSPS-3B

  • 32 = AT&T KS (IBM Series 1) AMATPS collector

  • 036 = DMS-100F (DMS-200/TOPS)

  • 200 = Telescience collector

  • 220 = Teltone AMATPS collector

  • 270 = AT&T Billdats 3B20 AMATPS collector

  • 271 = AT&T Billdats 3B5 AMATPS collector

Recording Office ID

Individual recording machine. The ID is assigned by the operating company. Default is 0000000.

Rotation Time

Time, in seconds, for the NRTT DC to close an output file and open a new output file. Rotation time is 60 seconds (1 minute) by default, which means the DC closes the file within a minute.

Maximum AMA Blocks

Maximum number of AMA blocks in one file - minimum of two blocks.

Table 12-5 shows the options to configure in the NRTT tab.

Table 12-5 NRTT Tab

Field Description

Billing Centre Host

The name or IP address of the billing centre server the node sends data to.

Billing Centre Port

The port on the billing centre server that the node uses to communicate with the server.

Billing Centre ACK Timeout

The time, in seconds, the DC waits for the Billing Centre to acknowledge it has received the end of the file.

If the DC does not receive an acknowledgment from the Billing Centre that it has received the end of the file, it attempts to resend the file after the interval set in Resend File Timeout.

Resend File Timeout

A timer that is needed to fix a limitation of the Sun Java socket class. The limitation is that when the process tries to send a packet but the network cable on the billing centre is disconnected, the sending method is blocked for several minutes before it realizes that loss of connection. In this case, the node will be blocked and will remain idle until the sending method is returned or until the timer expires - in this case the node will raise alarm to indicate a loss of connection to the billing centre. After that, the node will continue to process and store the data on the local disk. When the Rotation Time or the Max AMA Blocks value expires, whichever one occurs first, the node opens a new connection. It then attempts to resend the entire stored file. When configuring the timer, be aware that the node will automatically interrupt the current sending action if the billing centre does not receive the packet before the timer expires. Do not set the timer too low, otherwise the node will prematurely interrupt the sending of the current packets.

MSC Name

The name of the MSC device. This field value is five characters long and must be the same in the NRTT CC, DMS-MSC NRTT DC and DMS-MSC Active GHOT NRTT DC configurations. Contact your Billing Centre administrator to determine the field value expected by the billing system.

NM Version

The version of the Offline Mediation Controller software. This value must be five characters long.

Configuring the DMS-MSC Active GHOT NRTT DC Node

To configure the DMS-MSC Active GHOT NRTT DC node, configure the standard options, and the options in the Office Identification and NRRT tabs. For information, see "Configuring the DMS-MSC NRTT DC Node".

Configuring the Node Chains

You can configure the following node chains:

G-CDR Collection with AMA DIRP File Distribution

To configure a chain for G-CDR collection with AMA DIRP file distribution, you configure a DMS-MSC CC node and a DMS-MSC AMA DIRP DC node, and connect the two nodes using multicast routing.

You must configure the DMS-MSC SDM to send the unprocessed files to this CC. When configuring the G-CDR stream, ensure you configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM.

In the node configuration window, on the AMA CC tab, select FTP Push.

The AMA DIRP DC node can be configured to write all Network Accounting Records (NAR) from one input file to one output file. This one-to-one (1:1) matching applies to GSM version hiding as well.

To activate the file matching feature, click on the File Matching tab in the configuration window and check the Generate File Based on Input File.

Table 12-6 lists the instances where 1-to-1 file matching is supported when the appropriate 1:1 NPL rule file is chosen:

Table 12-6 Instances Supporting 1-to-1 File Matching

In: AMA DIRP Out: AMA DIRP

GSM 18

GSM 18

GSM 18

GSM 16

GSM 16

GSM 16

GSM 16

GSM 15

GSM 15

GSM 15

G-CDR Collection with NRTT Distribution

To configure a chain for G-CDR collection with NRTT distribution, you must create and configure a DMS-MSC CC node and a DMS-MSC NRTT DC node, and connect the two nodes using multicast routing.

You must configure the DMS-MSC SDM to send the unprocessed files to this CC. When configuring the G-CDR stream, ensure you configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM.

In the node configuration window, on the AMA CC tab, select FTP Push.

G-CDR and GHOT Collection with AMA DIRP File Distribution

This node chain contains three streams - one for processing G-CDR files, one for processing closed GHOT files and one for processing active GHOT files.

To configure a stream for G-CDR collection with AMA DIRP file distribution, you must configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select FTP Push.

To configure a stream for processing GHOT unprocessed files with AMA DIRP file distribution, you must configure the DMS-MSC SDM to send files to a different directory than the one provisioned for the G-CDR stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select OpenFTP Push. Connect the DMS-MSC CC to the DMS-MSC AMA DIRP DC using multicast routing.

To configure a stream for processing GHOT active files with AMA DIRP file distribution, on the NRTT CC node configuration window, on the NRTT CC Node tab, the Input directory value should match the setting on the DMS-MSC SDM. Configure the DMS-MSC SDM to send files to the same directory as the one provisioned for the stream to process closed GHOT files. Connect the NRTT CC node to the DMS-MSC AMA DIRP DC node using multicast routing.

G-CDR Collection with AMA DIRP Distribution, GHOT Collection with NRTT Distribution, No Recovery

This node chain contains three streams - one for processing G-CDR files, one for processing closed GHOT files and one for processing active GHOT files.

To configure a stream for G-CDR collection with AMA DIRP file distribution, you must configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select FTP Push.

To configure a stream for processing GHOT unprocessed files with NRTT distribution, you must configure the DMS-MSC SDM to send files to a different directory than the one provisioned for the G-CDR stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select OpenFTP Push. Connect the DMS-MSC CC to the DMS-MSC NRTT DC node using multicast routing.

To configure a stream for processing GHOT active files with NRTT distribution, on the NRTT CC node configuration window, on the NRTT CC Node tab, the Input directory value should match the setting on the DMS-MSC SDM. Configure the DMS-MSC SDM to send files to the same directory as the one provisioned for the stream to process closed GHOT files. Connect the NRTT CC node to the DMS-MSC NRTT DC node by using multicast routing.

G-CDR Collection with AMA DIRP Distribution, GHOT Collection with NRTT Distribution, Recovery

This node chain contains three streams - one for processing G-CDR files, one for processing closed GHOT files and one for processing active GHOT files.

To configure a stream for G-CDR collection with AMA DIRP file distribution, you must configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select FTP Push.

The DMS-MSC CC node to DMS-MSC NRTT DC node portion of the node chain processes Closed GHOT files and sends the data to the buffered port of the Hot Billing Centre.

The NRTT CC node to DMS-MSC Active GHOT NRTT DC node portion of the node chain processes Active GHOT files and sends the data to the active port of the Hot Billing Centre.

You should configure the two GHOT streams if you want a stream to handle active data and a recovery stream to handle data when there is a loss of connectivity with the HOT Billing Centre. You can configure the two GHOT streams to output data to the same HOT Billing Centre server, or to different ones.

Configuration rules for the GHOT streams

  1. In the GHOT streams, configure both the NRTT CC node and the DMS-MSC CC node to have the same input directory, to ensure the NRTT CC node only processes the active files and the DMS-MSC CC node only processes the closed files.

    Ensure you configure the DMS-MSC SDM to send files to a different directory than the one provisioned for the G-CDR stream. In the DMS-MSC CC node configuration window - on the AMA CC tab, and in the NRTT CC node configuration window - on the NRTT CC tab, the Input Directory value should match the setting on the DMS-MSC SDM.

  2. To configure a recovery stream for GHOT unprocessed file collection, you must configure the DMS-MSC CC node to collect and process only the closed files. In the CC node configuration window, on the AMA CC tab, select Open FTP Push.

  3. Use Multicast routing to connect the NRTT CC node to the DMS-MSC Active GHOT NRTT DC node.

  4. When starting the GHOT streams, start both DC nodes first, then start the CC nodes. When stopping the GHOT streams, stop the CC nodes first, then stop the DC nodes.

G-CDR and GHOT Collection with ASCII File and Database Distribution

This node chain contains multiple streams to process G-CDR files, closed GHOT files and active GHOT files.

To configure a stream for G-CDR collection with ASCII file distribution, you must configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM.

On the DMS-MSC CC node configuration window, on the AMA CC tab, select FTP Push. Connect the DMS-MSC CC node to the ASCII DC node using multicast routing.

To configure a stream for processing GHOT unprocessed files with ASCII distribution, you must configure the DMS-MSC SDM to send files to a different directory than the one provisioned for the G-CDR stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select Open FTP Push. Connect the DMS-MSC CC node to the ASCII DC node using multicast routing.

To configure a stream for processing GHOT active files with ASCII distribution, on the NRTT CC node configuration window, on the NRTT CC Node tab, the Input directory value should match the setting on the DMS-MSC SDM. Configure the DMS-MSC SDM to send files to the same directory as the one provisioned for the stream to process closed GHOT files. Connect the NRTT CC to the ASCII DC using multicast routing.

To configure a stream for G-CDR collection with Database distribution, you must configure the DMS-MSC SDM to send files to the configuration input directory on the DMS-MSC CC node for this stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select FTP Push. Connect the DMS-MSC CC node to the Database Storage and Reporting DC using multicast routing.

To configure a stream for processing GHOT unprocessed files with JDBC distribution, you must configure the DMS-MSC SDM to send files to a different directory than the one provisioned for the G-CDR stream. In the DMS-MSC CC node configuration window, on the AMA CC tab, the Input Directory value should match the setting on the DMS-MSC SDM. On the DMS-MSC CC node configuration window, on the AMA CC tab, select Open FTP Push. Connect the DMS-MSC CC node to the Database Storage and Reporting DC using multicast routing.

To configure a stream for processing GHOT active files with Database distribution, in the NRTT CC node configuration window, on the NRTT CC Node tab, the Input directory value should match the setting on the DMS-MSC SDM. Configure the DMS-MSC SDM to send files to the same directory as the one provisioned for the stream to process closed GHOT files. Connect the NRTT CC node to the Database Storage and Reporting DC using multicast routing.

Invalid AMA Input File

When there is invalid data in the AMA input file, the CC raises a critical alarm and information about the error type and location are written to an error file. The AMA input file is then moved to the configured "bad file" directory.

There are three types of invalid data:

  1. Invalid Block Descriptor Word (BDW): this error occurs when the block size does not match the content of the block. When the CC detects this error, the remaining information in the file is no longer readable. In this case, the CC processes the AMA DIRP file up to the position where the error was detected.

    The CC cannot process the remainder of the file and will output the following alarm:

    "Critical; Invalid Data; Invalid input data; An error occurred while processing file filename, a copy of this file has been placed in OMC_Home/amadirpei/2s4dgk-99f-e00sohaf/badAmaFilesDir: Error detected in the AMA DIRP file structure at offset_number(block no: block_number, record no:record_number) Invalid Block Descriptor Word"

    An error report file will be created in the node's configured bad file directory. The name of the error report file has the format AMA_DIRP_closed_filename_error_report.txt. The error report identifies the position of the BDW error.

  2. Invalid Record Descriptor Word (RDW): this error occurs when the record size does not match the content of the record. When the CC detects this error, the remaining information in the file is no longer readable. In this case, the CC processes the AMA DIRP file up to the position where the error was detected.

    The CC cannot process the remainder of the file and will output the following alarm:

    "Critical; Invalid Data; Invalid input data; An error occurred while processing file filename, a copy of this file has been placed in OMC_Home/amadirpei/2s4dgk-99f-00sohaf/badAmaFilesDir: Error detected in the AMA DIRP file structure at offset: offset_number(block no: block_number, record no:record_number) Invalid Record Descriptor Word"

    An error report file will be created in the node's configured "bad file" directory. The name of the error report file has the format AMA_DIRP_closed_filename_error_report.txt. The error report identifies the position of the RDW error.

  3. An error within an AMA record: for example, an unknown module code index. When the CC detects this error, it stops processing the record. The remaining information in the AMA DIRP file is still reliable, so the CC continues processing, starting with the next AMA record.

    The CC outputs the following alarm:

    "Critical; Invalid Data; Invalid input data; An error occurred while processing file <filename>, a copy of this file has been placed in OMC_Home/amadirpei/2s4dgk-99f-00sohaf/badAmaFilesDir: Unable to process the AMA record at block: block_number, record number: record_number, fileOffset: offset_number, recordSize: record_sizeerror_specific_information"

    An error report file will be created in the node's configured "bad file" directory. The name of the error report file has the format AMA_DIRP_closed_filename_error_report.txt. The error report identifies the position(s) of the invalid data error.

Error Handling in 1:1 File Matching Situations

The following behaviors explain how errors are handled in various 1:1 file matching situations.

Scenario 1 - Input AMA file is corrupted

  1. If the FTIR is corrupted or missing from an input file, the CC will continue to process the rest of the file.

    The DC will:

    1. Generate an output file.
    2. Create a copy of this file and place it in the Bad File directory (configured in the DC).
    3. Raise an alarm. For example:
      Major
      Invalid Data; Missing mandatory data; FTIR is missing in the file U021031154105gcdr. A copy of this file is created in badfile directory configured in the Node.
  2. If the file header/first block descriptor word is corrupted, the CC will move the corrupted file to the Bad File directory (configured in the CC). An alarm will be raised by the CC and there will be no output from the DC for this corrupted file as there is no records received from CC. See "Invalid AMA Input File".

  3. If any record other than the FTIR is corrupted, the CC will move the corrupted file to the Bad File directory (configured in the CC). An alarm will be raised. See "Invalid AMA Input File".

    The DC will:

    1. Generate an output file.
    2. Create a copy of this file and place it in the Bad File directory (configured in the DC).
    3. Raise an alarm. For example:
      Major
      Invalid Data; Missing mandatory data; There might be loss of data. Record Count is not matching with FTOR in the file U021031154105gcdr. A copy of this file is created in badfile directory configured in the Node.
  4. If the AMA record count contained in the FTOR does not match the number of records received, the DC will:

    1. Generate an output file.
    2. Create a copy of this file and place it in the Bad File directory (configured in the DC).
    3. Raise an alarm. For example:
      Major
      Invalid Data; Missing mandatory data; There might be loss of data. Record Count is not matching with FTOR in the file U021031154105gcdr. A copy of this file is created in badfile directory configured in the Node.
  5. If the FTOR is not received for a particular file ( it is decided if records of next input file is received when waiting for FTOR of current file), the DC will:

    1. Generate an output file.
    2. Create a copy of this file and place it in the Bad File directory (configured in the DC).
    3. Raise an alarm. For example:
      Major
      Invalid Data; Missing mandatory data; FTOR is missing in the file U031118200303. A copy of this file is created in badfile directory configured in the Node.

Scenario 2 - NAR data corruption within the cartridge chain

If the NAR data is corrupted:

  1. NAR are written to the .badarch file in the scratch directory of that cartridge.

  2. All valid NARs prior to the corrupted NAR will be transmitted to the DC.

    In this instance, the DC will:

    1. Generate an output file.
    2. Create a copy of this file and place it in the Bad File directory (configured in the DC).
    3. Raise an alarm. For example:
      Major
      Invalid Data; Missing mandatory data; There might be loss of data. Record Count is not matching with FTOR in the file U021031154105gcdr. A copy of this file is created in badfile directory configured in the Node.

Database Storage and Reporting

The Database Storage and Reporting functionality allows you to configure DMS-MSC node chains that can process and distribute data to both a billing system and an Oracle 19c database.

The Database Storage solution lets you configure DMS-MSC node chains that process and distribute data to both a billing system and an Oracle 19c database.

Figure 12-4 shows the recommended configuration of the Database Storage node chain. The DMS-MSC CC collects data from DMS-MSC network devices and passes the data to both the DMS-MSC AMA DIRP DC and the JDBC DC. The DMS-MSC AMA DIRP DC sends the data to a billing system. The JDBC DC sends the data to an Oracle 19c database.

Figure 12-4 Database Storage Architecture

Description of Figure 12-4 follows
Description of "Figure 12-4 Database Storage Architecture"

The Repository Manager is a Offline Mediation Controller tool that runs on an Oracle server and can import and export CDRs from an Oracle 19c Enterprise database. You can configure the Repository Manager to export CDRs at a specific time and store them in an accessible way, such as on Digital Audio Tape (DAT) or Digital Linear Tape (DLT). The Repository Manager can import the archived CDRs at a later date, if necessary. You can also configure the Repository Manager to delete CDRs from the database at the same time every day, if you do not wish to archive them.

The Oracle database stores call records it receives from the JDBC DC. The database stores each CDR it receives as a separate record in a table. You can access and modify the CDRs with standard SQL commands.

Offline Mediation Controller supports Oracle 19c Enterprise Edition.

For more information, see the following Oracle 19c documentation:

  • Oracle 19c Installation Guide

  • Oracle 19c Administrator's Reference

  • Oracle 19c Real Application Clusters Guard I Configuration Guide

Installing and Configuring Oracle Database Components

The Database Storage tasks are as follows:

  • Creating an Oracle user and dba group

  • Installing Oracle

  • Verifying the Oracle installation

  • Loading the Offline Mediation Controller schema

  • Configuring Oracle

  • Configuring Linux executables

  • Configuring and using the Repository Manager

  • Installing the Oracle Client

  • Modifying tnsnames.ora

  • Installing the Oracle JDBC driver

  • Configuring Oracle for automatic restart

  • Verifying the Oracle automatic restart

Oracle Database Installation Summary

To install Oracle database, you need to:

Create an Oracle user and dba group. See Oracle 19c documentation.

  1. Run the Oracle database installation tool, select components and install. See Oracle 19c documentation.

  2. Verify the Oracle database installation. See Oracle 19c documentation.

  3. Load the Offline Mediation Controller schema files.

  4. Install the Oracle Client.

  5. Download and install the Oracle JDBC driver.

    See the Oracle database documentation for more information.

The Oracle database components require upgrading if the Database Storage and Reporting functionality is configured.

Upgrading If AMA 1.4.x Cartridge Packs Were Installed

Upgrade the database components if you were running an AMA 1.4.x cartridge pack before you installed the new AMA cartridge pack:

  1. As the Oracle user, run the Oracle Enterprise Manager by typing oemapp worksheet and pressing Enter.

  2. Select connect directly to database.

  3. For Username, type NMUSER1.

  4. For Password, type NMUSER1.

  5. For Service, type NMCDRS.

  6. For Connect, type normal.

  7. Click OK.

    You are now connected to the NMCDRS schema.

  8. Stop the Repository Manager using the command:

    EXEC NMUSER1.MSLV_STOP_REPOMAN
    
  9. Navigate to the OMC_Home/db_scripts/dbstorage/Oracle9i/Upgrade/ directory where you un-jarred the AMA jar file.

  10. If you have a GSM 1.0.4 cartridge pack installed, go to next step; otherwise, go to Step 12.

  11. Load Upgrade_From_AMA14_GSMR104.sql.

  12. Load Upgrade_From_AMA14.sql.

  13. Navigate to the OMC_Home/db_scripts/dbstorage/Oracle9i/Repoman/ directory where you un-jarred the AMA jar file.

  14. Load PLSQL_NMCDRS_PKG.sql.

  15. Load PLSQL_LOGTOFILE.sql.

  16. Load JAVA_UTIL.sql.

  17. Load PLSQL_RUN_CMD.sql.

  18. Load PLSQL_RC.sql.

  19. Load PLSQL_PARFILEWRITER.sql.

  20. Load PLSQL_BUILD_EXCHANGE.sql.

  21. Load PLSQL_DROP_PARTITIONS.sql.

  22. Load PLSQL_BUILD_PARTITIONS.sql.

  23. Load PLSQL_MSLV_START_REPOMAN.sql.

  24. Load PLSQL_MSLV_STOP_REPOMAN.sql.

  25. The repoman_configuration table has three new columns. Change the values of the fields in these columns to the appropriate values. These columns are as follows:

    1. TABLENAME - 1 to 24 bytes. This is the name of the base table (for example MSLV_ENHCDR_STORAGE).

    2. NO_DATAFILES_PER_TS -1 to n. This is the number of data files that the tablespace will deploy and should always be set to 1 (unless you desire more as in the case of CHT).

    3. TBLSPC_NAME - 1 to 10 bytes. This is the base portion of the tablespace name (for example MSLV_). The rest will be filled in by appending a datestamp to the end (for example MSLV_20061219).

      Note:

      TBLSPC_SIZE has been renamed to DATAFILE_SIZE; as a result, the values for DATAFILE_SIZE have to be re-entered.

  26. Start the Repository Manager using the following command.

    EXEC NMUSER1.MSLV_START_REPOMAN(N);
    

    where N is the config_num configured in REPOMAN_CONFIGURATION

Upgrading If AMA 4.0.0 to 4.0.7 Cartridge Packs Were Installed

Upgrade the database components if you were running an AMA 4.0.0 to AMA 4.0.7 cartridge pack before you installed the new AMA cartridge pack.

  1. As the Oracle user, run the Oracle Enterprise Manager by typing oemapp worksheet and pressing Enter.

  2. Select connect directly to database.

  3. For Username, type NMUSER1.

  4. For Password, type NMUSER1.

  5. For Service, type NMCDRS.

  6. For Connect, type normal.

  7. Click OK.

    You are now connected to the NMCDRS schema.

  8. Stop the Repository Manager using the command:

    EXEC NMUSER1.MSLV_STOP_REPOMAN
    
  9. Navigate to the OMC_Home/db_scripts/dbstorage/Oracle9i/Upgrade/ directory where you un-jarred the AMA jar file.

  10. Load Upgrade_From_AMA40.sql.

  11. Navigate to the OMC_Home/db_scripts/dbstorage/Oracle9i/Repoman/ directory where you un-jarred the AMA jar file.

  12. Load PLSQL_NMCDRS_PKG.sql.

  13. Load PLSQL_LOGTOFILE.sql.

  14. Load JAVA_UTIL.sql.

  15. Load PLSQL_RUN_CMD.sql.

  16. Load PLSQL_RC.sql.

  17. Load PLSQL_PARFILEWRITER.sql.

  18. Load PLSQL_BUILD_EXCHANGE.sql.

  19. Load PLSQL_DROP_PARTITIONS.sql.

  20. Load PLSQL_BUILD_PARTITIONS.sql.

  21. Load PLSQL_MSLV_START_REPOMAN.sql.

  22. Load PLSQL_MSLV_STOP_REPOMAN.sql.

  23. The repoman_configuration table has three new columns. Change the values of the fields in these columns to the appropriate values. These columns are as follows:

    1. TABLENAME - 1 to 24 bytes. This is the name of the base table (for example MSLV_ENHCDR_STORAGE).

    2. NO_DATAFILES_PER_TS -1 to n. This is the number of data files that the tablespace will deploy and should always be set to 1 (unless you desire more as in the case of CHT).

    3. TBLSPC_NAME - 1 to 10 bytes. This is the base portion of the tablespace name (for example MSLV_). The rest will be filled in by appending a datestamp to the end (for example MSLV_20061219).

      Note:

      TBLSPC_SIZE has been renamed to DATAFILE_SIZE; as a result, the values for DATAFILE_SIZE have to be re-entered.

  24. Start the Repository Manager using the following command.

    EXEC NMUSER1.MSLV_START_REPOMAN(N);
    

    where N is the config_num configured in REPOMAN_CONFIGURATION

Upgrade the Database Portion of AMA 3.5. to 3.5.5 For the Parameter (PAR) File Enhancement

Upgrading the database will allow timestamps to be added to the PAR script file name.

  1. Stop the Repository Manager using the command:

    EXEC NMUSER1.MSLV_STOP_REPOMAN
    
  2. Navigate to the cartridge_pack/dbstorage/Oracle9i/Upgrade/ directory where you un-jarred the AMA jar file.

  3. Navigate to the cartridge_pack/dbstorage/Oracle9i/Repoman/ directory where you un-jarred the AMA jar file.

  4. Load PLSQL_PARFILEWRITER.sql.

  5. Load PLSQL_DROP_PARTITIONS.sql.

  6. Start the Repository Manager using the below command after verifying configuration values in REPOMAN_CONFIGURATION table.

    EXEC NMUSER1.MSLV_START_REPOMAN(N);
    

    where N is the config_num configured in REPOMAN_CONFIGURATION table

    In order to manage disk space usage, you may want to delete the older PAR files at regular intervals. The PAR files are kept in the /opt/mslvdblogs directory. Ensure that the current PAR file is not deleted.

Loading the Offline Mediation Controller Schema

Use the following procedure to load the Offline Mediation Controller schema.

To load the schema:

  1. As the Oracle user, run the Oracle Enterprise Manager by typing oemapp worksheet and pressing Enter.

  2. Select connect directly to database.

  3. For Username, type system.

  4. For Password, type oracle.

  5. For Service, type NMCDRS.

  6. For Connect, type normal.

  7. Click OK.

    You are now connected to the NMCDRS schema.

  8. Navigate to the OMC_Home/db_scripts/dbstorage/Oracle9i/ directory where you un-jarred the AMA jar file.

  9. As the oracle SYSTEM user, load the following tablespace:

    DDL_create_tblspc_ENHNMCDRS_MAIN.sql

    This is a default tablespace, and does not store daily CDRs.

  10. After loading this script, modify the DATAFILE to match the directory structure on the machine where you installed Oracle.

    For example: Oracle_Home/oradata/dbf_filename

    Set the SIZE parameter to a minimum of 10M (ten megabytes).

  11. As the oracle SYSTEM user, load:

    DDL_create_usr_NMUSER1.sql

    If you run the schema file NMUSER1.sql from the AMA jar file, then you do not need to run this script again.

  12. Disconnect as the SYSTEM user and connect as NMUSER1. The default password is NMUSER1.

  13. Navigate to the OMC_Home/db_scripts/ dbstorage/Oracle9i/ directory where you un-jarred the AMA jar file.

  14. Load DDL_create_tbl_MSLV_ENHCDR_STORAGE.sql.

  15. Navigate to the OMC_Home/db_scripts/ dbstorage/Oracle9i/ directory where you un-jarred the AMA jar file and then to /RepoMan.

  16. Load DDL_create_tbl_REPOMAN_CONFIGURATION.sql.

  17. Load PLSQL_NMCDRS_PKG.sql.

  18. Load PLSQL_LOGTOFILE.sql.

  19. Load JAVA_UTIL.sql.

  20. Load PLSQL_RUN_CMD.sql.

  21. Load PLSQL_RC.sql.

  22. Load PLSQL_PARFILEWRITER.sql.

  23. Load PLSQL_BUILD_EXCHANGE.sql.

  24. Load PLSQL_DROP_PARTITIONS.sql.

  25. Load PLSQL_BUILD_PARTITIONS.sql.

  26. Load PLSQL_MSLV_START_REPOMAN.sql.

  27. Load PLSQL_MSLV_STOP_REPOMAN.sql.

    All required Oracle objects are now loaded into Oracle database.

Changing the Default Oracle Username And Password

To change the default Oracle username and password, you must update the PLSQL_PARFILEWRITER.sql file. When you un-jar the file from the cartridge jar file, the script is located at: /db_scripts/dbstorage/Oracle9i/Repoman.

To change the user name and password in the script:

  1. Open the file PLSQL_PARFILEWRITER.sql for editing.

  2. Scroll down to line 44, which reads v_LineUser:='USERID=''system/oracle AS SYSDBA''';

  3. The line currently displays system as the username and oracle as the password.

  4. Replace the user name and password with new information.

  5. Save the file and close the editing window.

Configuring Oracle Database

You must configure Oracle database to run the Repository Manager.

To configure Oracle database:

  1. From the Linux command line, create a new directory that the oracle user can read and write to.

    For example, run the following commands in the order shown and press Enter:

    mkdir /opt/mslvdblogs
    chmod 777  /opt/mslvdblogs
    

    This directory stores the Repository Manager log files and the parameter file for the archive process.

  2. You must edit an Oracle database initialization parameter in order for the Repository Manager to function correctly.

    Start the Oracle DBA Studio application by logging on to your Oracle server as the oracle user and run the following command:

    oemapp dbastudio &
    TRANSPORT_TABLESPACE=Y
    
  3. Log on with the user ID sys and the password dba, then select SYSDBA from the drop-down list.

  4. In the Oracle DBA Studio window, select the NMCDRS database, then select Instance and then Configuration.

  5. In the Configuration window, go to the General tab and click All Initialization Parameters.

  6. In the Initialization Parameters window, go to the util_file_dir entry and set it to /opt/mslvdblogs.

    This is the directory where the Repository Manager stores its log files. Ensure the oracle user can access this directory.

  7. Click Apply to save the changes and then exit the application.

  8. Restart the database when the DBA Studio prompts you.

  9. Change your connection back to SYSTEM.

Configuring Linux Executable

To configure the Linux executable for the Database Storage system:

  1. Determine the path of the oracle user for the Linux cp program (file copy utility) by logging on to a Linux session as oracle and run the following command:

    which cp
    

    The system responds with a path such as /usr/bin/cp.

  2. Determine the path of the oracle user for the Linux exp program (export utility) by logging on to a Linux session as oracle and run the following command:

    which exp
    
  3. The system responds with a path such as Oracle_Home/bin/exp.

  4. Locate DDL_Java_Permissions.sql and open the file in a text editor program. Then edit the cp and exp information to match the directory path for your system and save the file.

  5. Log on to Oracle SQLPlus as the SYSTEM user.

  6. Load and run the updated DDL_Java_Permissions.sql file.

Configuring and Using the Repository Manager

These sections explain how to configure the Repository Manager.

Adding Entries to the Configuration Table

The Repository Manager requires you to provide some configuration data before it can run. You must insert the data into the Repository Manager NMUSER1.REPOMAN_ CONFIGURATION table.

You can use the table data editor in the Oracle DBA Studio tool to edit the Repository Manager configuration table. Each row in the table represents a configuration and only one configuration is used at a time. You can keep many configurations in the table for testing purposes.

Parameters

The following are the parameters you must configure in the NMUSER1.REPOMAN_ CONFIGURATION table.

CONFIG_NUM

Set to an integer value such as 1, 2, 3, 4, 5 and so on.

DESCRIPTION

Enter a text description of the configuration up to 80 characters.

RUN_MODE

Set to DELETE or ARCHIVE.

NEXT_PRTN_INTERVAL

This setting controls when the Repository Manager creates the next partition, which is usually once a day.

Table 12-7 lists some examples of the settings and their values.

Table 12-7 Example Settings

Functional setting NEXT_PRTN_INTERVAL parameter value

Everyday at midnight-12 am

TRUNC(SYSDATE + 1)

Everyday at 8 pm

TRUNC(SYSDATE + 1) + 8/24

Every Tuesday at noon-12 pm

NEXT_DAY(TRUNC(SYSDATE), "TUESDAY") + 12/24

First day of the month at midnight

TRUNC(LAST_DAY(SYSDATE) + 1)

Last day of the quarter at 11 pm

TRUNC(ADD_MONTHS(SYSDATE + 2/24,3), 'Q') - 1/24

Every Monday, Wednesday and Friday at 9 am

TRUNC(LEAST(NEXT_DAY(SYSDATE, "MONDAY"), NEXT_DAY(SYSDATE, "WEDNESDAY"), NEXT_DAY(SYSDATE, "FRIDAY") ) ) + 9/24

For testing purposes, you can configure the Repository Manager to automatically generate new partitions every minute or every five minutes. For every minute, use the value SYSDATE + 1/1440. For every five minutes, use the value SYSDATE + 5/1440.

DAYS_TO_KEEP

Set to the number of days to keep the CDRs in the database.

TBLSPC_DIRECTORY

This is the directory where Oracle database stores the tablespace data files. The oracle user must have full permissions to this directory. Set this value to the full directory path. For example: /opt/oradata/mydatadisk/

TBLSPC_SIZE

This is the size of each tablespace the Repository Manager generates. As a minimum, set the value to the maximum amount of data stored per day. Use an integer followed by M-megabytes. For example, for a 125 megabyte partition per day, use 125M.

START_PRTN

This is the date the Repository Manager generates the first partition. For example, to set the first partition on March 14, 2006, set the value to 14-Mar-2006 12:00:00 AM

Note:

The time value is not used.

Before you insert data into the database, ensure a partition exists with a date that is equal to or ahead of the date on which you are inserting data. For example, if you insert data on October 22, 2006 and the existing partitions have dates previous to October 22, the CDRs are not inserted.

START_AT

This determines when the Repository Manager starts running. Set this value to a time beyond the current time of the Linux system. To avoid setting times in the past, change this value to a time slightly ahead of the current time whenever you run the Repository Manager.

For example, if you set the value to SYSDATE + 60/1440, you have one hour to start the Repository Manager.

ARCHIVE_OUT_DIRECTORY

This is the directory where the Repository Manager stores the archive partitions when it is running in archive mode. Ensure the oracle user has full permissions to this directory. Oracle recommends that you periodically send the archive files to a storage tape, such as DLT or DAT, and then delete the archive files from the database.

ORACLE_EXP_PATH and LINUX_CP_PATH

Set these parameters to the directory paths for the Oracle export utility and the Linux file copy utility, as described in Configuring Linux Executable. Enter the directory path but not the executable name. For example, for a Linux file copy utility located in /usr/bin/, enter only /usr/bin/.

Starting the Repository Manager

From Oracle SQLPlus, log on to the database as nmuser1. Start the Repository Manager with the execute command and the number of the configuration you wish to use. For example, to use configuration 1, run the following command:

exec nmuser1.MSLV_START_REPOMAN(1)
Stopping the Repository Manager

From Oracle SQLPlus, log on to the database as nmuser1. Stop the Repository Manager with the following command:

exec nmuser1.MSLV_STOP_REPOMAN
Importing Records with the Repository Manager

You can import archive partitions into the Oracle database. If you import an archive partition into the database that you exported from, ensure the tablespace you are importing does not already exist in the database. This situation can occur if the partition was not exported correctly.

To import an archive partition, do the following:

  1. Copy the archive file MSLV_date_TS.dbf to the ARCHIVE_OUT_DIRECTORY as specified in the REPOMAN_CONFIGURATION table.

  2. Create an import parameter file and ensure the oracle user has read access to this file.

    Here is an example of an import parameter file:

    USERID='sys/TBD AS SYSDBA'
    TABLESPACES=(MSLV_20060123)
    DATAFILES=(/opt/Oracle902/oradata/NMCDRS/MSLV_20060127_TS.dbf)
    FILE='/opt/mslvout/MSLV_DBSR_ARCHIVE_20060127.dmp'
    

    where:

    • In the USERID field, you can specify any user with SYSDBA privileges. By default, the oracle SYS user has SYSDBA privileges.

    • In the DATAFILES field, specify the path to the .dbf file and the .dmp file.

  3. Save the file. For example, you can save the file as:

    /my_importfiles/import_date.par
    JDBCUrl
    
  4. Import the file using the Oracle import utility by running the following command:

    imp PARFILE = /my_importfiles/import_date.par
    
  5. The import utility loads the file. The import appears as a table called XCHANGE_ date.

Deleting Records with the Repository Manager

The Repository Manager uses a separate Oracle partition in the MSLV_CDR_ STORAGE table to store all the CDRs for each day. The Repository Manager generates new partitions daily and deletes old partitions that have existed longer than the value set in the DAYS_TO_KEEP parameter. If you wish to archive the old partitions instead of deleting them, run the Repository Manager in archive mode.

To run the Repository Manager in delete mode, set the RUN_MODE parameter to DELETE in the REPOMAN_CONFIGURATION table.

Archiving Records with the Repository Manager

When the Repository Manager runs in archive mode, it sends old partitions to a storage disk before deleting them from the database.

To run the Repository Manager in archive mode, set the RUN_MODE parameter to ARCHIVE in the REPOMAN_CONFIGURATION table.

The Repository Manager creates a pair of files for each partition, and stores them in the ARCHIVE_OUT_DIRECTORY as specified in the REPOMAN_CONFIGURATION table. For example, for an archive partition from January 21, 2006, the Manager generates two files:

  • MSLV_20060121_TS.dbf

  • MSLV_DBSR_ARCHIVE_20060121.dmp

The .dbf file is an Oracle data file and the .dmp file is a metadata file that Oracle uses when importing archive partitions into the database. You can use the Oracle Import program, imp, to load archive partitions into the database. These files are only compatible with the Oracle Transportable Tablespaces export and import mode.

Installing the Oracle Client

You must install the Oracle 19c Client to query the database.

See the Oracle Installation Guide for instructions on installing the Oracle Client. Once you have installed the Oracle Client, you can install the Oracle JDBC driver.

Installing the Oracle JDBC Driver

To use the JDBC DC, you must download and install the Oracle JDBC driver.

To install the Oracle JDBC driver:

  1. Download the ojdbc6.jar file from the following location:

    https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html

  2. On the Offline Mediation Controller server where the Node Manager is running, place the file in the OMC_home/3rdparty_jars directory.

  3. To configure the JDBC-DC node for RAC environment, use the following URL when you define a new NPL for JDBC-DC node:

    JDBCDriver "oracle.jdbc.OracleDriver";
     "jdbc:oracle:thin:(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=
    Host1) (PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=Host2)
     (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=service)))";
  4. You can now start or restart the Offline Mediation Controller Administration Server, Node Manager, and JDBC DC.

Configuring Oracle Database for Automatic Restart

You can set up Oracle database to automatically restart after the server reboots.

To configure Oracle database to automatically restart:

  1. As root, copy the OMC_home/db_scripts/dbstorage/Oracle9i/dbora.sh file and paste the dbora.sh file on the Oracle database server, in the /etc/init.d directory.

  2. Ensure that ORA_Home is set to the same value as the ORACLE_home setting.

  3. Enable NMCDRS in the oratab file by changing the setting of the /var/opt/oracle/oratab directory from N to Y.

  4. As root, in the /etc directory, edit the services file.

    Use the chmod command to modify the file permissions. Add the following line for the Oracle listener:

    listener   1521/tcp    #oracle listener
    ln -s /etc/init.d/dbora /etc/rc2.d/S99dbora
  5. To create symbolic links, run the following commands as root:

    ln -s /etc/init.d/dbora /etc/rc0.d/K10dbora
  6. Create a PFILE that Oracle reads upon start-up that points to a valid SPFILE. Navigate to the Oracle_home/dbs directory. There is an SPFILE called spfileNMCDRS.ora. You must create a new file in this directory called initNMCDRS.ora.

  7. In the new initNMCDRS.ora file, add the following line:

    SPFILE = 'Oracle_Home/dbs/spfileNMCDRS.ora'
    ORAENV_ASK=NO ; export ORAENV_ASK
  8. To set the Oracle profile, as the Oracle user, navigate to the Oracle_home directory.

  9. Create a file called .profile and add:

    PATH=$HOME/bin:$PATH
    ORACLE_SID=NMCDRS ; export ORACLE_SID
    . $HOME/bin/oraenv

    This allows the dbora script in /etc/init.d to access the correct environment to start the Oracle listener.

Verifying the Oracle Database Automatic Restart

To verify the Oracle database automatic restart:

  1. To see the processes that are running, run the following command:

    ps -ef | grep ora
    
  2. As the root user, go to the /etc/init.d directory.

  3. Run the following command to stop the listener and oracle processes:

    ./dbora stop
    

    The listener and oracle processes stop.

  4. Run the following command to start the listener and oracle processes:

    ./dbora start
    

    The listener and oracle processes start.

Known Problems

This cartridge pack contains the following known problems:

  • On the DMS-MSC AMADIRP DC node, if the option "Keep Empty File" is unchecked and there is no CDR data, the file sequence number is erroneously incremented when the cartridge is stopped and restarted.

  • Any input or output directory settings in the node configuration windows must be within the same disk partition where Offline Mediation Controller is installed. Failure to do so can result in errors, alarms, and potentially, loss of data.

  • On the DMS-MSC AMA DIRP DC node, Office Identification tab, the Generate FTOR checkbox (File Transfer Out Record) is supported for GSM 16 only. If you wish to enable this checkbox, ensure a GSM 16 rule file is selected for the node.

  • On the DMS-MSC AMA DIRP DC node, File Matching tab, the Generate File based on input file checkbox is supported for GSM 18, GSM 16 and GSM 15. If you wish to enable this checkbox, ensure File Matching supported NPL rule file (1TO1_GSM18, 1TO1_GSM16, 1TO1_GSM15) is selected for the node. The following configurations are supported for 1:1 file matching:

    • GSM18 in -> GSM18 out

    • GSM18 in -> GSM16 out

    • GSM16 in -> GSM16 out

    • GSM16 in -> GSM15 out

    • GSM15 in -> GSM15 out