|
Pump Up Your Technical Knowledge
Listen and watch as industry luminaries bring you the latest on Java technologies
This session shows the available options for writing an SIP (Session Initiation Protocol) communication service on the Java Platform, Micro Edition (Java ME platform) and the server-side part on the Java Platform, Enterprise Edition (Java EE platform). It explains the typical use cases in which the SIP protocol adds value, compared to synchronous solutions such as HTTP. It also explains how an MIDP 2.0 terminal can be adapted to make use of SIP by deploying a JSR 180 implementation. SIP is an Internet standard, derived from HTTP, with asynchronous behavior added by the Internet Engineering Task Force (IETF). It supports messaging, session establishment, and the subscribe/notify framework. Implementing corresponding functions in HTTP requires hard-to-maintain solutions that lack in responsiveness and performance due to the synchronous nature of HTTP. Examples of popular SIP applications are VoIP telephony, video, conferencing, message chat, and presence (mood indication). On the Java ME technology-based SIP client side, the new Mobile Service Architecture (JSR 248) mandates the support of JSR 180, so the majority of the new mobile terminals being sold have this support already built in. The API is fairly low-level and requires fairly in-depth knowledge of SIP, so guidance is in place. In addition, deployment in mobile networks provides a challenge, because Network Address Translator (NAT/middlebox) converts IP addresses. This is one reason why a higher-level approach is needed. Ericsson is the specification lead in JSR 281, which implements a higher-level communications API, also based on SIP, that is intended for the IMS (IP Multimedia System), the new mobile network infrastructure that overcomes problems such as the NAT. On the server side, the Java EE technology-based Project Sailfin SIP Servlet container is used. Project Sailfin adds SIP capability to a Java EE 5 technology-based GlassFish 2 project application server. In Project Sailfin, the goal is to have an open-source implementation of JSR 289, SIPServlets 1.1. The purpose in this context is to demonstrate the collaboration between the Java ME technology-based client and the Project Sailfin server. The session shows how the NetBeans integrated development environment can be used to develop the client side with Mobility Toolkit and the Sailfin side with the plug-ins available in the open-source project. The first example shows a simple instant message being sent and replied to. JSR 289 will demonstrate the possibilities of JSR 281 and some useful libraries on the server side, such as a Session Description Protocol (SDP) parser and open source jVoiceBridge component reuse to handle media.
Watch The Session |
FREE White Papers on Java SE, Java EE, cloud computing and database technologies.
| ||||||
|
| ||||||||||||