Enabling the Sh Interface Provider
9.6 Monitoring Profile Data with ProfileListener
The IMS Sh interface enables applications to receive automatic notifications when a subscribers profile data changes. WebLogic Server provides an easy-to-use API for managing profile data subscriptions. A SIP Servlet registers to receive notifications by implementing the com.bea.wcp.profile.ProfileListener interface, which consists of a single update method that is automatically invoked when a change occurs to profile to which the Servlet is subscribed. Notifications are not sent if that same Servlet modifies the profile information for example, if a user modifies their own profile data.9.6.1 Prerequisites for Listener Implementations
In order to receive a call back for subscribed profile data, a SIP Servlet must do the following: ■ Implement com.bea.wcp.profile.ProfileListener. ■ Create one or more subscriptions using the subscribe method in the com.bea.wcp.profile.ProfileService helper class. ■ Register itself as a listener using the listener element in sip.xml. Implementing ProfileListener describes how to implement ProfileListener and use the susbscribe method. In addition to having a valid listener implementation, the Servlet must declare itself as a listener in the sip.xml deployment descriptor file. For example, it must add a listener element declaration similar to: listener lisener-classcom.mycompany.MyLisenerServletlistener-class listener9.6.2 Implementing ProfileListener
Actual subscriptions are managed using the subscribe method of the com.bea.wcp.profile.ProfileService helper class. The subscribe method requires that you supply the current SipApplicationSession and the key for the profile data document you want to monitor. See Creating a Document Selector Key for Application-Managed Profile Data . Applications can cancel subscriptions by calling ProfileSubscription.cancel. Also, pending subscriptions for an application are automatically cancelled if the application session is terminated. Example 9–2 shows sample code for a Servlet that implements the ProfileListener interface. Example 9–2 Sample Servlet Implementing ProfileListener Interface package demo; import com.bea.wcp.profile.; import javax.servlet.sip.SipServletRequest; Note: In a replicated environment, Diameter relay nodes always attempt to push notifications directly to the engine tier server that subscribed for profile updates. If that engine tier server is unavailable, another server in the engine tier cluster is chosen to receive the notification. This model succeeds because session information is stored in the SIP data tier, rather than the engine tier.Parts
» Oracle Fusion Middleware Online Documentation Library
» Multiple Responses SIP Servlets Versus HTTP Servlets
» Receiving Responses SIP Servlets Versus HTTP Servlets
» Proxy Functions SIP Servlets Versus HTTP Servlets
» Servlet Request Message Body
» Servlet Response Message Body
» Application Management Role of a Servlet Container
» Sends a 200 response to the CANCEL request.
» Sends a 487 response to the INVITE request to be cancelled.
» Invokes a doCancel method on the SIP servlet. This allows the application to
» Utility Functions Role of a Servlet Container
» Overview of Converged Applications
» Assembling and Packaging a Converged Application
» Using the Converged Application Example
» Overview of Header Format APIs and Configuration Summary of Compact Headers
» Assigning Header Formats with WlssSipServletMessage
» Summary of API and Configuration Behavior
» Overview Generating SNMP Traps from Application Code
» Requirement for Accessing SipServletSnmpTrapRuntimeMBean
» Obtaining a Reference to SipServletSnmpTrapRuntimeMBean
» Overview of Developing Distributed Applications
» Applications Must Not Create Threads
» Servlets Must Be Non-Blocking
» Store all Application Data in the Session
» All Session Data Must Be Serializable
» Use setAttribute to Modify Session Data in “No-Call” Scope
» Mark SIP Servlets as Distributable
» Session Expiration Best Practices
» Observe Best Practices for Java EE Applications
» Application Composition Model Oracle Fusion Middleware Online Documentation Library
» Using the Default Application Router
» Configuring a Custom Application Router
» Session Key-Based Request Targeting
» Overview of SIP Servlet Security
» Role Mapping Features Oracle Fusion Middleware Online Documentation Library
» Using Implicit Role Assignment
» Important Requirements Assigning Roles Using security-role-assignment
» Assigning run-as Roles Role Assignment Precedence for SIP Servlet Roles
» Debugging Security Features weblogic.xml Deployment Descriptor Reference
» Specifying a Predefined Logging Level
» Customizing Log Records Enabling Message Logging
» Overview Specifying Content Types for Unencrypted Logging
» Example Message Log Configuration and Output
» Configuring Log File Rotation
» Diameter Protocol Packages Oracle Fusion Middleware Online Documentation Library
» File Required for Compiling Application Using the Diameter API
» Implementing a Diameter Application
» Sending Request Messages Sending Answer Messages
» Creating New Attributes Working with AVPs
» Working with Diameter Sessions Creating Converged Diameter and SIP Applications
» Overview of Profile Service API and Sh Interface Support
» Enabling the Sh Interface Provider
» Using a Constructed Document Key to Manage Profile Data
» Prerequisites for Listener Implementations
» Implementing ProfileListener Monitoring Profile Data with ProfileListener
» Overview of the Profile Service API
» Implementing Profile Service API Methods
» Mapping Profile Requests to Profile Providers
» Configuring Profile Providers Using the Administration Console
» Overview of Rf Interface Support
» Understanding Offline Charging Events
» Configuring the Rf Application
» Specifying the Session Expiration Sending Asynchronous Events
» Accessing the Rf Application Implementing Event-Based Charging
» Using the Accounting Session State
» Overview of Ro Interface Support
» Credit Authorization with Unit Determination
» Credit Authorization with Direct Debiting
» Determining Units and Rating
» Configuring the Ro Application
Show more