Cisco BTS 10200 Softswitch Billing Interface Guide
Chapter 1. Operational Procedures

Table Of Contents

Operational Procedures

Call Data Transport Management

Call Data Alarm Management

Call File Management

Call Detail Data Queries

Call Data Provisioning


Operational Procedures


This chapter describes the Cisco BTS 10200 Softswitch billing operational procedures. The following sections provide detailed information on how to manage and control accounting information generated by the Cisco BTS 10200 Softswitch. Actual examples are provided with explanations to illustrate the operational mechanics. These and other commands are documented in the Cisco BTS 10200 Softswitch Release 4.2 Command Line Interface Reference Guide and the Cisco BTS 10200 Softswitch Release 4.2 Operations, Maintenance, and Troubleshooting Guide.

This chapter is organized as follows:

Call Data Transport Management

Call Data Alarm Management

Call File Management

Call Detail Data Queries

Call Data Provisioning


Note This guide deals exclusively with the call detail block (CDB) based billing subsystem. For information on the event message (EM) based billing system used in packet cable environments, please refer to the Cisco BTS 10200 Softswitch Release 4.2 Packet Cable Feature Guide.


Call Data Transport Management

Call detail blocks (CDBs) are produced from the current information sent from the billing generator in the Call Agent (CA) to the billing manager in the Element Management System (EMS). Each billing event message (BEM) that is issued by a call in progress is stored in a staging area in the billing generator, waiting for call completion. The Billing Generator determines that a call is in a completed state when a signal stop is detected for the call. After that, the system waits for Quality of Service (QoS) metrics , but it does not wait longer than five seconds. Once this has occurred, the billing generator is triggered to send all data associated with that call to the Billing manager.

The Cisco BTS 10200 Softswitch stores the raw CDBs in flat ASCII files on the persistent store associated with the Bulk Data Management System (BDMS). The Cisco BTS 10200 Softswitch stores from 10 megabytes to 5 gigabytes of billing records in a flat disk partition that is user-definable with respect to size, with the default set at 1 gigabyte. This data is subsequently sent to the specified remote accounting office or billing server or mediation device using the File Transfer Protocol (FTP), as shown in Figure 1-1.

Figure 1-1 Billing Database Redundancy Configuration

The Cisco BTS 10200 Softswitch provides command line interface (CLI) commands to manage the collection and delivery of the accounting information generated.

The user must first ensure that the call detail block (CDB) based billing subsystem is enabled in the call-agent-profile entry for that call agent. The following command enables CDB-based billing:

change call-agent-profile id=CA146; cdb-billing-supp=y;

The billing-acct-address command provides the ability to specify how the billing data files are named, where to the send the files to in the network, the directory to place the files into at the destination node, the username and password to use for access to the destination node, and the interval to send the data.

The show command displays the current settings for the billing-acct-address, as shown here:

CLI> show billing-acct-addr

BILLING_DIRECTORY = /opt/bms/ftp/billing
BILLING_FILE_PREFIX = bil
BILLING_SERVER_DIRECTORY = /dev/null
POLLING_INTERVAL = 15

Reply : Success: Request was successful.

The following is an example of the command used to modify the billing-acct-address parameters to setup the FTP transport parameters:

CLI> change billing-acct-addr billing-file-prefix=CALL_DETAIL_DATA_; 
billing-server-directory=/import/billing/ftp/inbound; 
billing-server-addr=rao.customer.com; user-name=customer001; password=test; 
polling-interval=15;

The following is a list of the command line tokens associated with this command and the valid values and purpose of each:

billing-directory—an optional ASCII string from 1 to 64 characters in length.

This string specifies the directory path on the EMS where the accounting information is stored prior to being sent to the remote mediation system or accounting office via FTP. The default value for this token is "/opt/bms/ftp/billing."

billing-file-prefix—an optional ASCII string from 1 to 20 characters in length that defaults to "bil."

This string is appended to the front of each file sent to the remote mediation system or accounting office via FTP. The files are uniquely identified by appending a timestamp to the end of each filename.

billing-server-directory—an optional ASCII character string from 1 to 64 characters in length.

This string specifies the directory path on the remote mediation system or accounting office to which the accounting information is sent via FTP. The default value for this token is "/dev/null".

If a billing-server-directory is specified, the following three tokens are mandatory. If not, then they are optional.

billing-server-addr—an ASCII character string from 1 to 64 characters in length.

This string specifies the IP address or DNS domain name of the remote mediation system or accounting office to which the accounting information is sent via FTP.

user-name—an ASCII character string from 1 to 32 characters in length.

This string specifies the FTP login name to use to access the remote mediation system or accounting office.

password—an ASCII character string from 1 to 32 characters in length.

This string specifies the FTP password to use to access the remote mediation system or accounting office.

polling-interval—an optional token with a valid range from 1 minute to 60 minutes.

This token specifies the time, in minutes, between the FTP file transfers from the Cisco BTS 10200 Element Management System and the remote mediation system or accounting office. The default value is 15 minutes.

If there is any problem transferring the accounting data to the remote mediation system or accounting office, the Element Management System (EMS) issues a BILLING 6 or BILLING 33 event report. This is an indication that billing data is available for transfer, but transport is unable to FTP the data to the proper destination. Use of the above commands is the correct place to start diagnosis of this situation.

Call Data Alarm Management

The Cisco BTS 10200 Softswitch billing manager (BMG) process in the EMS tracks the total number of records the billing database can store, the number of unacknowledged records, and the current percentage of the database that is occupied by unacknowledged records. This information is then compared against the threshold levels set in the billing alarm database. If the current amount of billing data in the database exceeds thresholds, then the billing manager issues alarms. The billing manager resets the alarms when the storage levels drop below the specified thresholds.

The Cisco BTS 10200 Softswitch provides CLI user commands to manage the thresholds at which alarms are issued pertaining to billing data overwrite scenarios. These commands provide the ability to specify to what levels the billing partition is filled before issuing an alarm of the appropriate level.

The following is an example of the show billing-alarm command and the response that displays the current settings for billing alarms:

CLI>show billing-alarm

MINOR_THRESH = 70
MAJOR_THRESH = 80
CRITICAL_THRESH = 90
MAXIMUM_SPACE = 1000
MAXIMUM_SIZE = 2
MAXIMUM_RECORD = 1000
MAXIMUM_TIME = 3600
REGULAR_SPACE = 60

Reply : Success: Request was successful.

The following is an example of the change billing-alarm command used to set the threshold levels at which billing alarms are issued:

change billing-alarm minor-thresh=75; major-thresh=85; critical-thresh=95; 
maximum-space=2000; maximum-size=2; maximum-record=3000; maximum-time=30; 
regular-space=70;

The following is a list of the command line tokens associated with this command and the valid values and purpose of each:

minor-thresh—an optional percentage, from 2 percent to 97 percent, with a default value of 70 percent that represents an initial billing database usage threshold. When this specified percentage of the billing database is consumed by billing records that have not been written into ASCII batch files, a minor alarm is issued. The value of this token must be less than that of the major-thresh token.

major-thresh—an optional percentage, from 3 percent to 98 percent, with a default value of 80 percent that represents an intermediate billing database usage threshold. When this specified percentage of the billing database is consumed by billing records that have not been written into ASCII batch files, a major alarm is issued. The value of this token must be less than that of the critical-thresh token.

critical-thresh—an optional percentage, from 4 percent to 99 percent, with a default value of 90 percent that represents a final billing database usage threshold. When this specified percentage of the billing database is consumed by billing records that have not been written into ASCII batch files, a critical alarm is issued.

maximum-space—an optional token that specifies the allocated storage capacity for billing data in megabytes. This token's value can range from 10 MB to 5 GB and has a default value of 1 GB.

maximum-size—an optional token that specifies the maximum size of a CDB flat file in megabytes. This token's value can range from 1 MB to 10 MB and has a default value of 2 MB.

maximum-record—an optional token that specifies the maximum number of records to be stored in a given flat file. This token's value can range from 500 records to 10,000 records and has a default value of 1,000 records.

maximum-time—an optional token that specifies the maximum number of seconds a given flat file can remain open for addition of new records. This token's value can range from 10 seconds to 3600 seconds and has a default value of 3,600 seconds (1 hour).

regular-space—an optional token that specifies the real time capacity used, as a percentage of the available capacity, before secondary files are deleted. This token's value can range from 1 percent to 90 percent and has a default value of 60 percent. The value of this token must be less than the value for minor-thresh.

If there is a problem creating the ASCII accounting information files, the EMS will issue BILLING 14, BILLING 15, or BILLING 52 event reports. This is an indication that ASCII accounting data files cannot be created and stored on disk in the EMS. In these cases, verify that the alarm threshold levels are not set too low and that there is sufficient storage area available on the EMS to hold the FTP files. Use of the above commands is the appropriate place to start diagnosis of this situation.

Call File Management

The Cisco BTS 10200 Softswitch provides a command line interface that allows you to view lists of billing files on the Bulk Data Management System (BDMS) platform at any given time. The names of the available files and their operational status can be queried using the commands described.

The following report billing-file command examples allow you to query the BDMS for billing files and their associated information:

report billing-file filename=%—displays all file names stored in /opt/bms/ftp/billing. Depending on the number of files stored, this command might take awhile to complete.

report billing-file filename=xxx—displays the filename specified as well as the current state of the file.

report billing-file state=xxx—displays all filenames that are in the state entered by the user.

The following is a list of the command line tokens associated with this command and the valid values and purpose of each:

filename—name of the billing file to report.

If the file name entered does not exist, the user is notified that the file does not exist currently.

state—current state of a given file. The valid states are:

OPEN—file is currently being written to

PRIMARY—file has not been sent to or acknowledged by the external billing mediation system

SECONDARY—file has been sent to and acknowledged by the external billing mediation system.

start-row—row to start displaying from in the returned result set. The default value is 1.

limit—maximum number of rows to display from the returned result set. The default value is 50.

display—data columns to display from the ones supported by this command. The default is to display all available columns.

order—column that the display is to be ordered by from the returned result set.

auto-refresh—specifies whether a new result set is to be created or the existing result set is to be used (if one is available). The default value is Y (use the existing result set).

Call Detail Data Queries

The Cisco BTS 10200 Softswitch provides a command line interface to query CDB records from the ASCII flat files stored in /opt/bms/ftp/billing on the EMS. This mechanism provides the ability to specify record(s) to display based on the supplied information.

The following is an example of the command line for searching based on a time interval:

report billing-record start-time=2004-03-27 12:00:00; end-time=2004-03-27 
12:05:00; orig-number=9726712355;

The example shown above scans the ASCII flat files on the EMS for any call detail records that match the supplied criteria. Each record written between 12:00:00 and 12:05:00 on the 27th of March 2004 with a originating number field containing 972-671-2355 would be displayed to the user.

The following is an example of the command line for searching based on a specified file:

report billing-record filename=bil-ca1-20000327-120000; orig-number=9726712355;

The example shown above scans the ASCII flat files on the EMS for any call detail records that match the supplied criteria. Each record written to the file bil-ca1-20000327-120000 with a originating number field containing 972-671-2355 would be displayed to the user.

The user can also use this command with no filename or time interval specified. In this case, the system displays the most recently written call record. The following is an example of the command line syntax to request that the most recently written record be displayed (effectively a tail=1 command):

report billing-record

If a query is entered and no filename or time interval is specified, but a search qualifier is entered (such as call type)—the query is performed over the most recently written filename.

There are several types of searches that can be performed using this query. The billing files can be searched based on filename, start and stop times, or the most recently written file. These searches can be further refined by specifying the call type, orig number, term number, service type, termination cause, or tail parameter. Only one of these refinement parameters can be used at a time.

The following is a list of the search types that can be performed:

Filename—by specifying the actual file name of a group of records, those records can be searched based on the other search qualifiers supplied.

Time Interval—the start and stop times can be specified and all records written within that time period are displayed.

Call Type—the type of call is specified so that all records within the database that match this type are displayed to the user. This query can be further qualified by combining it with the Time Interval or the Filename query.

Service Type—the type of service to search for within a call record(s) is specified and all records within the database that match this service type are displayed to the user. This query can be further qualified by combining it with the Time Interval or the Filename query.

Termination Cause—the type of call termination cause is specified and all records within the database that match this termination cause are displayed to the user. This query can be further qualified by combining it with the Time Interval or the Filename query.

Term Number—each record that contains an exact match with the called number field in the database to the specified directory number is displayed to the user. This query can be further qualified by combining it with the Time Interval or the Filename query.

Orig Number—each record that contains an exact match with the calling number field in the database to the specified directory number is displayed to the user. This query can be further qualified by combining it with the Time Interval or Filename query.

Tail—this query type displays the specified number of records most recently written to the billing database. The valid values range from 1 to 50. When this token is used, the most recently written record(s) is (are) searched. Any CDB files that do not contain actual CDB records are skipped.

The following section decribes the command line tokens associated with the report billing-record command and their valid values and purpose.

start-time—a time stamp value in the format of YYYY-MM-DD HH:MM:SS.

This value indicates the starting time to filter against in the search for when billing records were written to the database. This is an optional token that has no default value.

stop-time—a time stamp value in the format of YYYY-MM-DD HH:MM:SS.

This value indicates the stopping time to filter against in the search for when billing records were written to the database. This is an optional token that has no default value.

term-cause—an ASCII character string specifying the call termination cause to filter against in the billing database.

The valid values for this token are:

AAL_PARAM_NOT_SUPPORTED

ACCESS_INFO_DISCARDED

BEARER_CAPAB_INCOMPAT_WITH_SERVICE

BEARER_CAPABILITY_NOT_IMPLEMENTED

BEARER_CAPABILITY_UNAVAILABLE

CALL_AWARDED

CALL_PROCEEDING

CALL_REJECTED

CALL_RESTRICTED_WITH_CLIR

CHANNEL_DOES_NOT_EXISIT

CHANNEL_UNACCEPTABLE

CHANNEL_UNAVAILABLE

CIRCUIT_CHANNEL_CONGESTED

DESTINATION_OUT_OF_ORDER

EXCESS_DIGIT_RECD

FACILITY_NOT_IMPLEMENTED

FACILITY_NOT_SUBSCRIBED

FACILITY_REJECTED

INCOMPATIBLE_DESTINATION

INCORRECT_MESSAGE_LENGTH

INFOELEMENT_NONEXISTENT

INTERNETWORKING_ERROR_UNSPECIFIED

INVALID_CALL_REFERENCE

INVALID_ENDPOINT_REFERENCE

INVALID_INFOELEMENT

INVALID_NUMBER_FORMAT

INVALID_TRANSIT_NETW_SELECTION

MANDATORY_INFOELEMENT_MISSING

MESSAGE_INCOMPAT_WITH_CALL_STATE

MESSAGE_TYPE_NONEXISTENT

NETWORK_OUT_OF_ORDER

NO_ROUTE_DESTINATION

NO_ROUTE_TRANSIT_NETWORK

NO_VPCI_VCI_AVAILABLE

NORMAL_CALL_CLEARING

NORMAL_UNSPECIFIED

NUMBER_CHANGED

ONE_DIALED_IN_ERROR

ONE_NOT_DIALED

PROTOCOL_ERROR_THRESHOLD_XCEEDED

PROTOCOL_ERROR_UNSPECIFIED

QOS_UNAVAILABLE

RESOURCE_UNAVAILABLE

SERVICE_DENIED

SERVICE_NOT_IMPLEMENTED

SERVICE_OPERATION_VIOLATED

SERVICE_UNSPECIFIED

SWITCH_EQUIP_CONGESTED

TEMPORARY_FAILURE

TIMER_EXPIRY_RECOVERY

TOO_MANY_PENDING_ADD_PARTY_REQ

UNAUTHORIZED_BEARER_CAPABILITY

UNASSIGNED_NUMBER

UNSUPPORTED_TRAFFIC_PARAMS

USER_ALERTED_NO_ANSWER

USER_BUSY

USER_CELLRATE_UNAVAILABLE

USER_NOT_RESPONDING

VACANT_CODE

VPCI_VCI_ASSIGNMENT_FAIL

VPCI_VCI_NOT_AVAILABLE

ZERO_DIALED_IN_ERROR

call-type—an ASCII character string specifying the type of call record to filter against in the billing database.

The valid values for this token are:

500 (Service Access Code 500 calls using carrier to route the call)

700 (Service Access Code 700 calls using PIC or dialed CAC to route the call)

900 (Service Access Code 900 calls using carrier to route the call)

976 (976-xxxx information services calls)

AIRLINES

AMBULANCE

ATTENDANT (Centrex attendant calls)

BLV (Busy Line Verification calls)

BUSINESS (811 calls)

CARRIER_OPERATOR

CUT_THRU (calls routed to another carrier for collection of additional digits if necessary)

DA (411 or NPA-555-1212 calls)

DA_TOLL (1411 or 1-NPA-555-1212 calls)

EMG (911 calls)

EXTENSION (calls within a business group)

FIRE

INFO (976 type calls)

INTERLATA (InterLATA calls using PIC or dialed CAC)

INTL (01+ calls)

INTL_OPERATOR

INTL_WORLD_ZONE_1

INVALID (partially dialed or abandoned calls)

LOCAL (7D or 10D calls to local area)

LOOPBACK_TEST (108 test calls)

LRN (calls routed via Location Routing Numbers)

NAS (Network Access Server calls)

NATIONAL (NANP based calls)

NATL_OPERATOR

NON_EMG (311 calls)

NONE (Indicates that for the given dialing pattern, no call type was provisioned into the BTS)

NULL1

OPERATOR

OPERATOR_ASSISTED

PCS (Personal Communication Services Calls)

POLICE

PREMIUM (900 type calls)

RAILWAYS

RELAY (711 calls)

REPAIR (611 calls)

SERVICE_CODE

SPEED_DIAL (Speed dialing calls)

TANDEM (calls placed to another call agent or switch)

TEST_CALL (100,101,102,103,105 test calls)

TIME

TOLL (IntraLATA calls)

TOLL_FREE (8xx calls)

TRAFFIC

TW (Time and Weather calls)

VACANT (calls to unassigned DNs)

WEATHER

.1. This is a valid call type when call processing does not use the Destination table in the call agent when routing the call. Examples of this are service activation / deactivations and calls involving unallocated numbers.

term-number—an ASCII character string that is 4 characters to 15 characters long.

This value indicates the actual called party directory number to filter against in the billing database. This is an optional token that has no default value.

orig-number—an ASCII character string that is 4 characters to 15 characters long.

This value indicates the actual calling party directory number to filter against in the billing database. This is an optional token that has no default value.

tail—a decimal value from 1 to 50.

This value indicates the number of most recently written records to query. This is an optional token that has no default value

service-type—an ASCII character string specifying the type of service to filter against in the billing database.

The valid values for this token are:

911 HANDLING

ACCOUNT CODE

AIN HANDLING

ANONYMOUS CALL REJECTION

AUTHORIZATION CODE

AUTO RECALL

AUTOMATIC CALLBACK

BUSY LINE VERIFICATION

CALL BLOCK

CALL FORWARD BUSY

CALL FORWARD NO ANSWER

CALL FORWARD UNCONDITIONAL

CALL HOLD

CALL PARK

CALL PARK REOFFERED

CALL PARK RETRIEVAL

CALL TRANSFER

CALL WAITING

CALL WAITING DELUXE

CALL WAITING WITH CALLER IDENTITY

CALLING ID DELIVERY BLOCK PERMANENT

CALLING IDENTITY DELIVERY SUPPRESSION

CALLING NAME DELIVERY

CALLING NAME DELIVERY BLOCKING

CALLING NUMBER DELIVERY

CALLING NUMBER DELIVERY BLOCK

CANCELLED CALL WAITING

CLASS OF SERVICE

CNAM SCP QUERY

CUSTOM DIALING PLAN

CUSTOMER ORIGINATED TRACE

DIRECTED CALL PICKUP WITH BARGE IN

DIRECTED CALL PICKUP WITHOUT BARGE IN

DO NOT DISTURB

DRCW

HOTLINE

HOTLINE VARIABLE

LNP

OUTGOING CALL BARRING

REFER

REJECT CALLER

REMOTE ACTIVATION OF CALL FORWARDING

REMOTE ACTIVATION OF CALL FORWARDING PIN

REPEAT CALL

RETURN CALL

SCREENING LIST EDIT DRCW

SCREENING LIST EDIT SCA

SCREENING LIST EDIT SCF

SCREENING LIST EDIT SCR

SELECTIVE CALL ACCEPTANCE

SELECTIVE CALL FORWARDING

SELECTIVE CALL REJECTION

SERIVCE FEATURE GROUP INCOMING

SERVICE FEAURE GROUP OUTGOING

SPEED CALLING

THREE WAY CALL

THREE WAY CALL DELUXE

TOLL FREE

USER SENSITIVE THREE WAY CALL

WARMLINE

Call Data Provisioning

The Cisco BTS 10200 Softswitch provides a command line interface to manage the types of call detail records generated. This mechanism provides the ability to specify which call detail block types are generated by the system on a per-call-type basis. When the system is installed, all CDB types are enabled by default.

The following is an example of the show billing-cdb command to display the current enable/disable setting for billing CDBs for a specific call type:

CLI>show billing-cdb type=LRN

TYPE=LRN
ENABLE=Y

Reply : Success: Request was successful.

The following is an example of the change billing-cdb command to enable local billing:

change billing-cdb type=LOCAL; enable=y;

The command line tokens associated with the show billing-cdb command and their valid values and purpose are as follows:

type—an ASCII character string specifying the type of call record to provision.

This is a mandatory token with no default value. The valid values for this token are the same as those listed in the previous section for the report billing-record command.

enable—an ASCII character (Y or N).

This string specifies whether the specified CDB type should be enabled or disable for generation. This is an optional token with a default value of Y.