Are you developing Converged Applications?
Date: Friday , February 29, 2008
The latest industry trend is towards Converged Applications that have high reachability and high ROI. Let us look at the latest acquisitions that Google has made:
Zaiku – An activity stream and presence-sharing service that works from the Web and mobile phones (Helsinki), in Oct 2007.
Zingku – Mobile social network and communication platform, in September 2007.
Grand Central – VoIP Phone Aggregation, in July 2007.
dodgeball.com – a mobile social software.
twitter.com – blogging service from mobile.
dopplr.com – sharing your travel plans using the mobile.
So, are you up to the latest industry trend?
In the telecommunications industry the concept of ‘any content’ like audio, video, and data on ‘any network’ like HTTP, SIP, PSTN, Mobile, etc. on ‘any device’ like Web Browser, PSTN phone, Mobile, and SIP Softphone is referred to as Convergence.
With the evolution of telecommunications the demand for real time communication is increasing day-by-day in all enterprise (converged) applications. For example as soon as the user makes a bank transaction using the bank’s online portal, the portal should send an SMS to the phone registered against that user. As soon as there is a checkout in a shopping portal by a customer the details of the order should reach the administrator either as an SMS or as a phone call (using the text to speech conversion technology). As soon as a transaction takes place on one’s credit card, an SMS should be sent to its user. It’s not limited to passing the information one way; but an interactive communication that should take place between the communication device and the web application. Unless and until the user approves of the transaction by his or her phone the credit card is not charged!
With the advent of Java Api for Intelligent Network – Service Logic Execution Environment (JAIN SLEE - JSR 240, also referred to as JSLEE) and other JAIN Specifications, you can have a platform for developing the VoIP applications. Just like the JEE brings value to the development of Web Applications, JSLEE helps develop VoIP Applications. JAIN SLEE is the JEE for Communications – event driven, high-throughput, low latency.
So why will Open Source VoIP platform Work?
Let us look at the current challenges faced by the Telco Industry:
* Currently the Average Revenue Per User (ARPU) is decreasing fast. Operators cannot survive with the traditional business model of charging customers for making and receiving calls, SMS and MMS. The IP-based convergence is forcing operators to invent new business models for survival; for example the Value Added Services (VAS) is one such opportunity.
* Telco stocks are not performing well as the investors prefer to go on the ‘wait and watch’ mode for the next generation services, while operators aggressively manipulate the scene.
* Tougher regulations and disruptive technologies (VoIP) lower the barriers to entry, facilitating the entry of new players, leading to an increase in customer expectations.
The Pain Points
* Switching costs for customers have never been lower.
* New entrants are increasing competition for customers.
* Quality of service is more important than ever.
* Investment in next generation network infrastructure.
* Investment in triple play services that combine voice, video, and data.
* Increased pressure from the investment community to perform and manage costs.
So the moot points are need for innovation, faster time to market, and lower cost solutions. This is only achievable if the operators embrace the OSS and develop a middleware VoIP platform (also referred to as Service Delivery Platform – SDP) that enables rapid development and deployment of new converged multimedia services, from basic Plain Old Telephone Service (POTS to complex audio and video conferencing for Multi Player Games (MPGs).
This will open up a whole new world for JEE applications which can then integrate seamlessly with the operators’ SDP, and any JEE application can deliver any data to the user on any device.
The JAIN SLEE Goals
* Defining the standards for building distributed OO communications applications in Java.
* Decoupling low level transaction and state management details, multi-threading, connection pooling, and other complex low-level APIs.
* Adopting the Write Once, Run Anywhere™ philosophy of Java.
* Addressing the development, deployment, and runtime aspects of a communications application’s life cycle.
* Defining a pluggable resource adaptor framework that allows resources to be plugged into the SLEE environment.
* Compatibility with the Java Enterprise Edition platform (JEE).
* Compatibility with the Java Management Extensions (JMX) specification.
* Compatibility with other Java programming language APIs.
Standardization necessitates the introduction of SLEE. There are SLEE like software existing as we speak, but they are not standardized and hence the components cannot be reused. Also, the components developed or deployed on one proprietary SLEE can’t communicate with the components developed or deployed in other proprietary SLEE. The proprietary solutions are very expensive and with standards in place the vendors can leverage Open Source and the huge community that it attracts to develop a Open Source VoIP Middleware platform.
JSLEE compliments Java EE to enable the development, deployment, and management of applications that integrate voice, video, and data across a range of networks and devices. JSLEE provides Network Abstraction layer and hence an application deployed on JSLEE platform can talk to any network environment, be it IP or legacy. The application logic is network protocol agnostic. For example, a Voice mail application remains the same irrespective
of the application talking to a PSTN line, a mobile, or an SIP Phone.
Third Party Integration
JSLEE exposes the management APIs that are based on JMX (JSR 146, and now part of JDK 5) which allows easy integration with third party software like OSS/BSS. Management APIs also give full visibility for remote monitoring and management.
JAIN SLEE can be invoked by any non-java application using web services by means of remote JEE connectivity via JCA.
The Industry Realization of JAIN SLEE technology
The work towards this has already begun, look at mobicents.org (from Jboss, a division of RedHat), the only Open Source Implementation of JAIN SLEE that is also used in production by quite a few Telcos around the world. All the biggies like IBM, BEA, Oracle, etc. too have their offerings for SDPs but they rely on the SIP Servlet (JSR 116). The other JAIN SLEE vendors are jNETx and Open Cloud, but none of them is Open Source.
There are two main VoIP middleware standards - JSLEE and SIP Servlets. Each has its own domain of applications - JSLEE for core telco app logic spanning legacy (PSTN, SS7, H323, SMPP) and new generation apps (SIP, XMPP), while SIP Servlets are focused on higher productivity for all IP apps based on HTTP and SIP. Mobicents implements both the specifications and has core SLEE containers as well as SIP Servlet containers that run as individual services on top of JBoss AS. Hence, by using Mobicents one can develop a converged application that can make the best use of both technologies and will work as integrated application in one JVM.
The Mobicents get easily integrated with JBoss SOA, JBoss Business Process Management, jBPM, JBoss Rules, and JBoss Portal and hence the communications part can be easily pitched to one’s existing applications. Converged applications deployed on top of Mobicents have easy access to all the building block technologies like EJB3, Seam, Hibernate, etc. that are available with JBoss AS. The Eclipse Plugin for Mobicents (available today) will be soon integrated with JBoss Developers Studio for fast development of Converged Applications.