Java 4 IMS

The IP Multimedia Subsystem (IMS) represents the evolution of the traditional telecom architectures which will provide to service providers the possibility to create attractive multimedia services based on IP. IMS, as almost every technology in the telecom industry, is being standardized, mainly by 3GPP, OMA and IETF, which will ensure interoperability between different operators. A big disadvantage of this standardization activities is its slow process and the amount of specifications being defined. For service providers, it is a complex task to start developing or creating an architecture for their applications, and it get even worse for new players in the market willing to make some profit from IMS capabilities. The telecom industry is now aware of that, at least from the mobile platform perspective; with the already approved jsr-281 API and the upcoming jsr-325, the developers can effortless access a set of essential IMS Services and Communication Enablers. In the same way, there is also a need of the developer community to have an abstraction, in a similar fashion as JSR-281 and JSR-325 do, to facilitate the development of IMS Applications on the server and desktop side, and in benefit of the developer community, an alignment (see picture bellow) between the different APIs in the different Java platforms will facilitate the creation of one-to-one and one-to-many services.


Currently, On the server side, Java SIP Servlets is the starting point for creating server-side (JavaEE) applications, just as JAIN SIP (jsr-32) and jsr-180 do for the JavaSE and JavaME platform. However, this API are quite different to each other, and many times, developers get confused trying to identify what transaction, dialogs or session means in each API. In addition, those API are SIP protocol related and payload unaware. Well, IMS is a lot more than SIP: media handling, signaling flow, standardized XML schemas in the payload, XCAP protocol, security, authentication and so on, are just some examples of the many different technical issues a programmer has to deal with when creating a application that interacts with the IMS network and its Enablers (presence, messaging, multimedia telephony).

jsr-281 and jsr-325 are already trying to cover many of the already mentioned IMS technical issues, but nothing is already being done on the server and desktop environments. By defining similar (because a 100% mapping is not reachable due the nature of the platforms) IMS APIs both on JavaSE and JavaEE the programmer can smoothly move between different development environments when creating one-to-one/many applications where server and client side coding is needed.

Comments

Popular posts from this blog

A review of Partitioning Attacks

Asynchronous Features for IMS Applications

Homeopathic Ontology