Skip Headers
Oracle® Communications Billing and Revenue Management Elastic Charging Engine 11.2 Concepts
Release 7.5

E39807-04
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

6 About Notifications

The Oracle Communications Billing and Revenue Management (BRM) Elastic Charging Engine (ECE) notification framework publishes notification events which can be used by external systems. For example, for policy-driven charging, Oracle Communications Online Mediation Controller can use the data in notification events for sending information to Policy and Charging Rule Functions (PCRFs). This chapter describes the purpose of publishing notification events and how the notification framework publishes them.

See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for information about configuring the service events that trigger the publishing of notification events.

Overview of Notifications in ECE

ECE supports in-session notifications and external asynchronous notifications. See the following topics for information about each notification type:

You can enable or disable ECE from publishing external notifications for various events that occur in the ECE system. You can enable or disable ECE from sending in-session notifications as part of the usage response. See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for more information.

About In-Session Notifications

In-session notifications are returned in the usage response back to the network mediation system. The online mediation session controller uses the in-session notification information and the customer preferences to determine the messages that must be sent to the customer.

ECE supports in-session notifications for the Advice of Charge (AoC) charging scenario in addition to supporting asynchronous external notifications for AoC. See "About Advice of Charge (AoC)" for information about AoC. ECE also supports in-session notifications for threshold breach scenarios when a customer's balance breaches a credit threshold value.

For details about in-session notifications returned in the usage response for AoC, refer to the documentation for oracle.communication.brm.charging.messages.usage in BRM Elastic Charging Engine Java API Reference.

ECE supports in-session notifications for policy-driven charging by publishing asynchronous external notifications during a policy session. Policy clients, such as Online Mediation Controller, consume the data in these notifications for sending in-session notifications to the PCRF.

For details about in-session notifications returned in the policy response for policy-driven charging, refer to the documentation for oracle.communication.brm.charging.messages.policy in BRM Elastic Charging Engine Java API Reference.

About External Notifications

When certain events or state changes occur in ECE, ECE can publish asynchronous external notifications to a JMS queue. The external notifications contain the information about the event. For example, when a customer breaches one of his credit thresholds, ECE publishes the ThresholdBreachServiceEvent which contains the information about the breach such as the balance element (currency or non-currency) and the quantity of the breach (amount or percentage).

The external notification payload that is published into the JMS queue has a well defined XML format. External systems parse the XML strings of the payload to obtain the required information such as the balance element and current balance and so on. For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

Examples of client applications that would obtain information from external notifications for their own processing are:

  • The network mediation system can use data in the external notification in conjunction with customer policy data for implementing network policy control.

  • Oracle Communications Billing and Revenue Management (BRM) can use data in the external notification for running billing for a specific customer. The BRM Gateway sends the relevant data to BRM in the external notification for triggering billing.

  • BRM can use data in the external notification for updating the first usage validity period of a customer's balance item. The BRM Gateway synchronizes the first-usage validity settings from ECE to BRM when first-usage notifications are configured.

Specific ECE service events trigger ECE to publish external notifications. You can enable or disable each of the service events from triggering external notifications. See "About Service Events that Trigger External Notifications" for information about the service events for which ECE supports publishing external notifications.

You must configure JMS credentials for publishing external notifications. See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for instructions on configuring the JMS credentials in ECE.

See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for information about enabling and disabling external notifications.

External notifications are published by the notification framework. See "About the Notification Framework" for information about configuring ECE to publish external notifications for various service events.

About Notifications Used By BRM

ECE sends notifications to BRM for synchronizing data and triggering required processes such as billing. For more information, see the discussion of implementing ECE with BRM in BRM Elastic Charging Engine Implementation Guide.

About Notifications Used by Policy Clients

When changes occur to policy counters (balances) or policy-related subscriber preferences that are associated with products that have an active policy session, ECE publishes asynchronous notifications to the JMS notification queue. Online Mediation Controller, interacting with ECE as a policy client, subscribes for receiving the policy notifications when it initiates the policy sessions. Online Mediation Controller uses the information in the notifications to send Sy and Sp messages to the PCRF.

ECE publishes policy notifications for products that have an active Sy session if the balance threshold is breached because of a usage session, or a balance top-up, or a subscription activity. ECE does not generate notifications for threshold breaches that occur outside of an Sy session (when the customer is not using the product) as these breaches could generate unnecessary notifications. For example, it would be a waste of system resources for ECE to publish notifications for breaches caused by monthly resets of resource allowances for products that are not being used by customers.

For Java API descriptions of the service event objects published as policy notifications, refer to the documentation for oracle.communication.brm.charging.messages.policy in BRM Elastic Charging Engine Java API Reference.

For information about the XML data structure of ECE policy notifications, see the discussion about integrating ECE with policy clients in BRM Elastic Charging Engine Implementation Guide.

Spending Limit Notifications

ECE publishes SpendingLimit notifications when it detects a policy threshold breach. ECE generates a SpendingLimit notification when usage results in a threshold breach of pre-defined policy tiers. A threshold breach causes ECE to send a label tagging this condition to the PCRF. Based on this label, the PCRF will take a policy action (such as request the PCEF to throttle bandwidth, or block a service, and so on).

The customer balance change could occur as a result of any of the following:

  • Usage requests coming from the network mediation system

  • Update requests coming from BRM (as the customer management system)

  • Top ups coming from top-up systems

ECE checks for spending limit breaches and generates notifications for any breaches for products that have an active policy session (Sy session).

ECE administers threshold checks during the usage processing flow (in-session) as well as during the balance update flow (off-session) based on the current balance and consumed reservation of the customer balance.

Aggregated Spending Limit Notifications

ECE publishes SpendingLimit notifications for group-based policy-driven charging. When a policy threshold that is associated with a shared policy counter is breached, ECE publishes the AggregatedSpendingLimit notification for all users in a discount sharing group that have an active Sy session.

Subscriber Preference Notifications

ECE publishes SubscriberPreference notifications during an update from BRM for the customer preferences present in a particular product. For example, if a CSR adds a preference to a customer's profile, modifies an existing preference, or adds a new type of customer preference. ECE publishes SubscriberPreference notifications only for active subscriptions of Sp data (SubscribeNotificationRequest).

About Service Events that Trigger External Notifications

When certain state changes occur in the ECE system, service events are created. When configured, the service events can trigger the publishing of notification events (asynchronous external notifications). See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide.

When the following service events occur, they can trigger the notification framework to publish associated external notifications to a JMS notification queue.

For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

About Top-Up Notifications

ECE creates top-up notifications in support of Server Initiated Re-auth Requests (RAR). See "Server Initiated Reauthorization Requests (RAR)" for details on how ECE can support RAR.

For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for information about configuring this notification.

About Billing Notifications

When a customer starts a charging session near the time billing is set to run in BRM, ECE publishes the BillingNotificationServiceEvent service event. If notifications are enabled for this event, when this events occurs, the notification framework publishes the BillingNotificationServiceEvent notification to the JMS notification queue.

For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for information about configuring this notification.

About Breach-Type Notifications

When performing usage-charging, ECE can generate notifications related to breaches in credit limits and thresholds. A client application can use this information for sending a notification back to the customer according to the customer's user preferences. For example, an email or an SMS could be sent to inform the customer that a credit threshold has been breached.

If notifications are configured for breaches in credit limits and thresholds, when the events occurs, the notification framework publishes a notification for each type of event to the JMS notification queue.

For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for information about configuring notifications.

For information about policy-driven threshold notifications, see "About Notifications Used by Policy Clients".

About Threshold Breach Notifications

When a customer's balance breaches a credit threshold value, ECE publishes the ThresholdBreachServiceEvent notification with information about the breach such as the threshold amount or threshold percentage that was breached.

About Credit Ceiling Breach Notifications

When a customer's balance breaches a credit ceiling, ECE publishes the CreditCeilingBreachServiceEvent notification with information about the breach such as the balance element code and balance identifier corresponding to the breach.

About Credit Floor Breach Notifications

When a customer's balance breaches a credit floor, ECE publishes the CreditFloorBreachServiceEvent notification with information about the breach such as the balance element code and balance identifier corresponding to the breach.

About the Notification Framework

The notification framework publishes in-session notifications as well as asynchronous external notifications. When certain state changes occur in the ECE system, service events are created by the Elastic Charging Server. The notification framework, based on how you configure ECE, puts the data from these events either in the usage response (for an in-session notification), or into a notification event (for an external notification), or does both.

The notification framework publishes external notifications asynchronously. To publish external notifications, the notification framework transforms the Java payload of ECE service events into notification events that have a well defined XML payload. These notification events can be consumed by other systems for further processing.

For Java API descriptions of the service events published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

The notification framework publishes external notifications to a JMS topic on a remote JMS server. You must set up a notification topic on a remote JMS server and configure the JMS credentials in ECE to access that server. See the discussion of configuring notifications in BRM Elastic Charging Engine Implementation Guide for instructions on configuring the JMS credentials in ECE.

The notification framework is not used to receive messages from external systems.

Transforming the Service Event Java Payload into XML

The notification framework transforms the Java payload of the ECE service event into XML. The payloads that are published into the JMS notification queue (topic) are XML strings.

The following are examples of the XML structure for external notification messages that can be published.

For Java API descriptions of the service event objects published as external notifications, refer to the documentation for oracle.communication.brm.charging.servicecontext in BRM Elastic Charging Engine Java API Reference.

THRESHOLD_BREACH_EVENT (Breach Direction Up)

The payload published into the JMS topic for a threshold breach (breach direction up) is an XML string in the following format:

 <?xml version="1.0" encoding="UTF-8"   standalone="no"?>
<Notification>
  <NotificationType>THRESHOLD_BREACH_EVENT</NotificationType>
  <BalanceElementId>USD</BalanceElementId>
  <CurrentBalance>-4.00</CurrentBalance>
  <ThresholdAmount>-4.5</ThresholdAmount>
  <ThresholdPercent>55.0</ThresholdPercent>
  <BreachDirection>THRESHOLD_BREACH_UP</BreachDirection>
</Notification>

TOP_UP_NOTIFICATION_EVENT

The payload published into the JMS topic for a top up is an XML string in the following format:

 <?xml version="1.0"encoding="UTF-8" standalone="no"?>
<Notification>
  <NotificationType>TOP_UP_NOTIFICATION_EVENT</NotificationType>
  <ActiveSessionId>54be770f-6786-4240-838d-64e914f49d</ActiveSessionId>
</Notification>