3 Provisioning Telco Services by Using Services Framework Manager

This document describes how to set up services framework for provisioning telco services in Oracle Communications Billing and Revenue Management (BRM).

Topics in this document:

See also:

Setting Up Event Notification for Provisioning

BRM uses event notification to start the Services Framework provisioning process. You specify which notification events trigger provisioning by editing the event notification configuration file and then loading it into the database with the load_pin_notify utility.

To configure event notification for provisioning:

  1. Open the BRM_home/sys/data/config/pin_notify_telco file in a text editor.

  2. If your system has multiple configuration files for event notification, merge them with the pin_notify_telco file.

  3. Add the following entry for each service or device type that you want to provision:

    OpcodeNumber    Flag    Event
    

    where:

    • OpcodeNumber specifies the hard-coded number for an opcode. To find an opcode's number, see the opcode header files (*.h) in the BRM_home/include/ops directory.

    • Flag is the name of the flag to pass to the opcode when it is called by the event notification feature. 0 means no flag is passed.

    • Event is the name of the event that triggers the execution of the opcode. You can use any BRM default or custom event defined in your system.

    The default pin_notify_telco file includes the following lines, which indicate that PCM_OP_TCF_PROV_CREATE_SVC_ORDER (opcode number 4016), PCM_OP_TCF_PROV_HANDLE_SVC_ORDER (opcode number 4017), and PCM_OP_TCF_PROV_UPDATE_PROV_OBJECT (opcode number 4019) are called whenever these notification events occur:

    4016    0       /event/notification/service/pre_create
    4016    0       /event/notification/service/create
    4016    0       /event/notification/service/pre_change
    4016    0       /event/notification/service/post_change
    4016    0       /event/device/associate
    4016    0       /event/device/disassociate
    4016    0       /event/device/replace
    4016    0       /event/notification/profile/pre_modify
    4016    0       /event/notification/profile/modify
    4016    0       /event/device/state
    4017    0       /event/provisioning/service_order/telco 
    4017    0       /event/provisioning/service_order/telco/gsm 
    4017    0       /event/provisioning/service_order/telco/gsm/telephony 
    4017    0       /event/provisioning/service_order/telco/gsm/data 
    4017    0       /event/provisioning/service_order/telco/gsm/fax 
    4017    0       /event/provisioning/service_order/telco/gsm/sms 
    4017    0       /event/provisioning/service_order/telco/gprs 
    4019    0       /event/provisioning/service_order/telco 
    4019    0       /event/provisioning/service_order/telco/gsm 
    4019    0       /event/provisioning/service_order/telco/gsm/telephony 
    4019    0       /event/provisioning/service_order/telco/gsm/data 
    4019    0       /event/provisioning/service_order/telco/gsm/fax 
    4019    0       /event/provisioning/service_order/telco/gsm/sms 
    4019    0       /event/provisioning/service_order/telco/gprs
    
  4. Save and close the file.

  5. Load your final event notification list (pin_notify_file) into the BRM database by using the load_pin_notify utility:

    load_pin_notify pin_notify_file
    
  6. Restart the Connection Manager (CM).

For more information, see "Using Event Notification" in BRM Developer's Guide.

Specifying the Details to Add to the Service Order

You specify the services and associated devices (if any) to include in a provisioning service order by editing the pin_telco_provisioning file. You load the file into the BRM database's /config/telco/provisioning object by using the "load_pin_telco_provisioning" utility.

Note:

Including associated devices in service order is not the same as pre-provisioning devices, although you use the pin_telco_provisioning file for both operations.

To specify the service, device, and profile object fields to add to service orders:

  1. Open the BRM_home/sys/data/config/pin_telco_provisioning file in a text editor.

  2. Add the following lines for each service that you want to provision:

    Service provisioning info:
    ServiceType, ProvAction,
    Field1,
    Field2,
    Field3
    

    where:

    • ServiceType specifies the type of service being provisioned.

    • ProvAction specifies the provisioning action sent in the service order. The external provisioning system uses this information to determine the appropriate provisioning action. Use A (activate), C (close), D (deactivate), I (ignore), P (provisioning), R (reactivate), and S (suspend).

    • FieldX specifies the service object fields to include in the service order.

    For example, the following lines specify to add the bearer service name, APN name, and QOS profile name to the service order when a GPRS service is being activated. Note that the fields specified are part of the /service/telco/gprs schema.

    Service provisioning info:
    /service/telco/gprs, A,
    PIN_FLD_GPRS_INFO.PIN_FLD_BEARER_SERVICE,
    PIN_FLD_APN_ARRAY[*].PIN_FLD_APN,
    PIN_FLD_APN_ARRAY[*].PIN_FLD_QOS_PROFILE_NAME
    
  3. (Optional) Add the following lines to specify devices associated with the service. Each device you include requires a separate line, separated by commas.

    Device provisioning info:
    DeviceType, ProvAction, Field1, “String1",
    DeviceType, ProvAction, Field2, “String2"
    

    where:

    • DeviceType specifies the type of device associated with the service.

    • ProvAction specifies the provisioning action for the device objects in the service order. The external provisioning system uses this information to determine the appropriate provisioning action. Use A (activate), C (close), D (deactivate), I (ignore), P (provisioning), R (reactivate), and S (suspend).

    • FieldX specifies the name of a field that contains a device attribute to include in the service order. Field names are replaced by values when you run pin_telco_provisioning.

    • StringX specifies a string used in the service order to identify the attribute specified by the Field value. You can query for the string in the service order.

    For example, the following line activates a phone number. The phone number value is included in the service order identified by the MSISDN string.

    /device/num, A, PIN_FLD_DEVICE_ID, "MSISDN"
    
  4. Save and close the pin_telco_provisioning file.

  5. Use the following command to load the file into the database:

    load_pin_telco_provisioning pin_telco_provisioning 
    

    For the complete command syntax, see "load_pin_telco_provisioning".

  6. Restart the Connection Manager (CM).

To verify that the data was loaded, you can display the /config objects by using the Object Browser or use the robj command with the testnap utility. See testnap and "Reading an Object and Writing Its Contents to a File" in BRM Developer's Guide.

Specifying the Available States for Each Service Order

You specify the available service order state transitions for each service by editing the pin_telco_service_order_state file. You then load the file into the BRM database's /config/telco/service_order_state/* object by using the "load_pin_telco_service_order_state" utility.

To specify the state transitions:

  1. Open the BRM_home/sys/data/config/pin_telco_service_order_state file in a text editor.

  2. Add the following lines for each service that you want to provision:

    ServiceType
    StateID: StateType: OpcodeNum: Flags
                NextState:OpcodeNum:Flags
                NextState:OpcodeNum:Flags
                NextState:OpcodeNum:Flags
    

    where:

    • ServiceType specifies the service being provisioned.

    • StateID specifies the starting service order state: NEW (1), READY (2), PROCESSING (3), COMPLETED (4), and FAILED (5).

    • StateType specifies the state type: raw (0), init (1), normal (2), and end (3).

    • NextState specifies the state to which the service order can be transitioned to from the starting state: NEW (1), READY (2), PROCESSING (3), COMPLETED (4), and FAILED (5).

    • OpcodeNum specifies the opcode to call when the transition is made. To not call an opcode, use 0.

    • Flags specifies the flag to pass to the opcode.

    For example, the following lines specify that service orders can transition from a NEW state to a READY state, from a READY state to a PROCESSING state, and from a PROCESSING state to a COMPLETED or FAILED state:

    /event/service_order/telco/gsm
    1: 1: 0: 0
          2: 0:0
    2: 2: 0: 0
          3: 0:0
    3: 3: 0: 0
          4: 0:0
          5: 0:0
    
  3. Save and close the pin_telco_service_order_state file.

  4. Use the following command to run the load_pin_telco_service_order_state utility:

    load_pin_telco_service_order_state pin_telco_service_order_state
    

    For the complete command syntax, see "load_pin_telco_service_order_state".

  5. Restart the Connection Manager (CM).

To verify that the data was loaded, you can display the /config objects by using the Object Browser or use the robj command with the testnap utility. (See "Reading an Object and Writing Its Contents to a File" in BRM Developer's Guide.)

Configuring Service Status Change for Device-to-Service Associations

By default, when you associate a device with a service, BRM activates the service, provisions the associated supplementary features, updates the status of the service and the associated supplementary features, and generates a service order that contains the service status and the status of the associated supplementary features. When you disassociate a device from a service, BRM deactivates the service, unprovisions the associated supplementary features, updates the status of the service and the associated supplementary features, and updates the service order.

You can configure BRM to not update the status of a service when you associate a device with a service or disassociate a device from a service.

To enable this feature, run the pin_bus_params utility to change the RestrictDeviceToServiceStatePropagation business parameter. For information about this utility, see BRM Developer's Guide.

To configure service status change for device-to-service associations:

  1. Go to BRM_home/sys/data/config.

  2. Create an XML file from the /config/business_params object:

    pin_bus_params -r BusParamsTCF bus_params_TCF.xml 
      
  3. In the file, change disabled to enabled:

    <RestrictDeviceToServiceStatePropagation>enabled</RestrictDeviceToServiceStatePropagation>
    
  4. Save the file as bus_params_TCF.xml.

  5. Load the XML file into the BRM database:

    pin_bus_params bus_params_TCF.xml
    
  6. Stop and restart the CM.