Find JSRs
Submit this Search


Ad Banner
 
 
 
 

Summary  |  Proposal  |  Detail (Summary & Proposal)
JSRs: Java Specification Requests
JSR 281: IMS Services API

Stage Access Start Finish
Maintenance Release Download page 22 Apr, 2009  
Maintenance Draft Review 2 Download page 23 Feb, 2009 30 Mar, 2009
Maintenance Draft Review Download page 09 Dec, 2008 19 Jan, 2009
Final Release Download page 14 Jul, 2008  
Final Approval Ballot View results 20 May, 2008 02 Jun, 2008
Proposed Final Draft Download page 13 Mar, 2008  
Public Review Ballot View results 23 Oct, 2007 29 Oct, 2007
Public Review Download page 25 Sep, 2007 29 Oct, 2007
Early Draft Review Download page 14 Nov, 2006 14 Dec, 2006
Expert Group Formation   09 Aug, 2005 21 Dec, 2005
JSR Review Ballot View results 26 Jul, 2005 08 Aug, 2005
Status: Maintenance
JCP version in use: 2.6
Java Specification Participation Agreement version in use: 2.0


Description:
This JSR provides a high-level API to access IP Multimedia Subsystem (IMS) services. This API hides IMS technology details and exposes service-level support to enable easy development of IMS applications.

Please direct comments on this JSR to the Spec Lead(s)
Team

Specification Leads
  Piotr Kessler Ericsson AB
  Stefan Svenberg Ericsson AB
Expert Group
  AT&T China Mobile Communications Co. Ltd Ericsson AB
  Esmertec AG Infineon Technologies AG LG Electronics Inc.
  Motorola NEC Corporation NMS Communications
  Orange France SA Research In Motion, LTD (RIM) Samsung Electronics Corporation
  Siemens AG Sirf Technology Holdings, Inc Sony Ericsson Mobile Communications AB
  Sprint Sun Microsystems, Inc. T-Mobile Austria GmbH
  Telecom Italia Vodafone Group Services Limited

If you would like to be added to the observer alias for this JSR and receive e-mail updates on the progress of the JSR, please send e-mail to the Spec Lead with "Add to observer alias" in the subject line.

Updates to the Java Specification Request (JSR)

The following information has been updated from the original JSR:

2008.05.21: Specification Lead: Piotr Kessler, Stefan Svenberg - Ericsson AB.

Updates to the Java Specification Request (JSR)

The following information has been updated from the original JSR:

2007.09.24:

2.1 Please describe the proposed Specification:

This JSR is intended to enable application programmers to easily write applications that can integrate with the IP Multimedia Subsystem (IMS). The specification will expose IMS functionality through high-level APIs in an integrated and consistent way. The API hides IMS implementation details to the maximum extent. The API abstracts the underlying technology and at the same time provides the developers with maximum flexibility. This approach secures conformance to IMS related standards and at the same time gives developers possibility to focus on the functionality of the services and not on the IMS technology implementation details. In this way IMS domain will be revealed to the broad Java ME developer community and will encourage faster adoption of the IMS services provided by the wireless networks.

The IMS API defines a set of high-level functions enabling Java ME applications to access IMS functionality, e.g.:

  • High-level support for the IMS registration mechanism
  • Support for co-location of multiple IMS Services
  • Use of IMS service sessions (based on SIP sessions)
  • Use of media connections
  • Addressing Quality of Service
  • Hiding and encapsulating internal protocols managed and used by the IMS protocol stack.
The IMS Services API allows application developers for mobile devices to easily utilize the IMS functionality without requiring knowledge of the underlying protocols and IMS implementation details. By direct support of the service bundling concept, the API supports one of the strengths of the IMS. The IMS Services API facilitates application developers to avoid violations of SIP and IMS conventions. In particular, the authentication mechanism used, is completely hidden from the application. As the user of the API does not have to be involved, the security risks associated with application level handling of authentication tokens is minimized.

The IMS area is continuously developing with more functionality and Services. These will be of interest to Java. To avoid fragmentation issues in the future, the IMS Services API is designed so that it can function as a core API layer for future JSRs implementing IMS Services such as Push to Talk over Cellular (PoC) and Group List Management (GLM).

2.5 What need of the Java community will be addressed by the proposed specification?

This API provides high-level access to IMS functionality for the development of innovative applications such as multi-party games, as well as applications that utilize standardized IMS functionality of today and in the future.

2.6 Why isn't this need met by existing specifications?

Existing JSRs are either low-level (such as JSR-180) or high-level but specific to a particular application (such as JSR-186/187). JSR-180 requires detailed SIP knowledge and focuses a lot on P2P SIP based communication. Additionally usage of JSR 180 for applications utilizing the IMS, can lead to security issues if IMS conventions are not observed by the application developer. A high-level API does not only minimize those security problems but also reduces the risk to affect the operational safety of the IMS by restricting applications to proper behavior.

2.7 Please give a short description of the underlying technology or technologies:

IMS is a multimedia platform for packet-oriented access networks such as UMTS, EDGE, GPRS or W-LAN standardized by the 3GPP (3rd Generation Partnership Project). It enables mobile operators to offer numerous voice, multimedia and data services based on IP (Internet Protocol), SIP (Session Initiation Protocol) and 3GPP Release 5. An IMS subscriber can make use of a whole host of interaction and communication options - from games for the entertainment sector to business applications - with a single login. IMS offers a variety of basic network services, such as session control services (including registration, routing and roaming) and secure authentication. In addition is is also possible to implement flexible charging and payment, quality of service, presence and Push-to-Talk over Cellular..

2.13 Please describe the anticipated schedule for the development of this specification.

Expert Group formation: Q3 2005
Early Draft: Q4 2006
Public Draft: Q3 2007
Proposed Final Draft: Q2 2008
Final Approval Ballot: Q2 2008

2007.04.11: Jim Lee is the current temporarily acting co-Spec Lead.

2006.11.07: Specification Lead: Piotr Kessler, Stefan Svenberg, Volker Bauche, Mirko Naumann

E-Mail Address: Piotr.Kessler@ericsson.com, stefan.svenberg@ericsson.com, volker.bauche@benqmobile.com, Mirko.Naumann@benqmobile.com

Telephone Number: +46 8 7570086, +46 46.232.809, +49 89.4111.4187, +49 89 722 33459

Fax Number: +46 8 404 9222, +46 46.232.329, +49 89 722 35087

EDR Q4 2006
PR Q1 2007
PFD Q2 2007
FAB Q2 2007

2005.10.17: Siemens AG transferred its co-Spec Lead position to BenQ Corporation.


Original Java Specification Request (JSR)

Identification | Request | Contributions | Additional Information

Section 1. Identification

Submitting Member: Ericsson / Siemens

Name of Contact Person: Angana Ghosh, Calinel Pasteanu

E-Mail Address: angana.ghosh@ericsson.com, calinel.pasteanu@siemens.com

Telephone Number: +1 919 472-6821, +49 89 722 32517

Fax Number: +1 919 472 7471, +49 89 722 31219


Specification Lead: Piotr Kessler, Volker Bauche, Mirko Naumann

Note that this information has been updated from the original JSR.

E-Mail Address: Piotr.Kessler@ericsson.com, Volker.Bauche@siemens.com, Mirko.Naumann@siemens.com

Telephone Number: +46 8 7570086, +49 89 722 31644, +49 89 722 33459

Fax Number: +46 8 404 9222, +49 89 722 35087

Note that this information has been updated from the original JSR.

Initial Expert Group Membership:

BenQ
Ericsson
Intel
Motorola
Siemens
Sony Ericsson
Sun Microsystems
T-Mobile

Supporting this JSR:

BenQ
Cingular
Ericsson
Intel
Motorola
Siemens
Sony Ericsson
Sun Microsystems
T-Mobile
Vodafone



Section 2: Request

2.1 Please describe the proposed Specification:

This JSR is intended to enable application programmers to easily write applications that can integrate with the IP Multimedia Subsystem (IMS). The specification will expose IMS functionality through high-level APIs in an integrated and consistent way. The API hides IMS implementation details to the maximum extent.The API abstracts the underlying technology and at the same time provides the developers with maximum flexibility. This approach secures conformance to IMS related standards and at the same time gives developers possibility to focus on the functionality of the services and not on the IMS technology implementation details. In this way IMS domain will be revealed to the broad J2ME developer community and will encourage faster adoption of the IMS services provided by the wireless networks.
At least three types of functionality will be supported by the API : high-level IMS functionality , Push to Talk over Cellular (PoC) services and Group List Management (GLM) services.
The IMS part of the API defines a set of high-level functions enabling J2ME applications to access IMS services, e.g.:

    - Support for IMS registration - Support for co-location of multiple IMS Services - Use of IMS service sessions (based on SIP sessions) - Use of media connections - Use of presence and group list management functionality - High level support for SDP according to RFC 2327

The PoC part of the API is a high-level abstraction of the complex features provided by the PoC service, thus allowing for application programmers to write applications that make use of these features without having to deal with underlying details. The API allows for initiation, management and termination of PoC sessions with individual participants as well as pre-defined groups of participants. Furthermore it can be used to dynamically modify multiple PoC sessions in terms of adding or removing participants. The API provides support for control of talk bursts and operation of multiple simultaneous PoC sessions. The API facilitates integration of PoC functionality in arbitrary applications (e.g. multi-player games). The GLM part of the API is a high level abstraction to handle group, access and contact lists for arbitrary applications in an easy and straight forward way.

The IMS Services API allows application developers for mobile devices to easily utilize the IMS functionality without requiring knowledge of the underlying SIP and IMS implementation details. By direct support of the service bundling concept, the API supports one of the strengths of the IMS. The IMS Services API facilitates application developers to avoid violations of SIP and IMS conventions. In particular, the authentication mechanism used, is completely hidden from the application. As the user of the API does not have to be involved, the security risks associated with application level handling of authentication tokens is minimized.

NOTE that this section has been updated from this original proposal.

2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)

JavaTM ME - both CLDC and CDC

2.3 The Executive Committees would like to ensure JSR submitters think about how their proposed technology relates to all of the Java platform editions. Please provide details here for which platform editions are being targeted by this JSR, and how this JSR has considered the relationship with the other platform editions.

Targets are the CLDC and CDC platforms within JavaTM ME. There is no direct relationship to other platform editions.

2.4 Should this JSR be voted on by both Executive Committees?

No

2.5 What need of the Java community will be addressed by the proposed specification?

This API provides high-level access to IMS functionality for the development of innovative applications as well as APIs for specific IMS services like PoC and Group List Management on JavaTM ME devices. Furthermore the PoC part facilitates integration of PoC functionality in arbitrary applications, e.g. multi-party games.

NOTE that this section has been updated from this original proposal.

2.6 Why isn't this need met by existing specifications?

Existing JSRs are either low-level (such as JSR-180) or high-level but specific to a particular application (such as JSR-186/187). JSR-180 requires detailed SIP knowledge and focuses a lot on P2P SIP based communication. Additionally usage of JSR 180 for applications utilizing the IMS, can lead to security issues if IMS conventions are not observed by the application developer. A high-level API does not only minimize those security problems but also reduces the risk to affect the operational safety of the IMS by restricting applications to proper behavior. There is currently no JavaTM ME API which supports for PoC services.

NOTE that this section has been updated from this original proposal.

2.7 Please give a short description of the underlying technology or technologies:

IMS is a multimedia platform for packet-oriented access networks such as UMTS, EDGE, GPRS or W-LAN standardized by the 3GPP (3rd Generation Partnership Project). It enables mobile operators to offer numerous voice, multimedia and data services based on IP (Internet Protocol), SIP (Session Initiation Protocol) and 3GPP Release 5. An IMS subscriber can make use of a whole host of interaction and communication options - from games for the entertainment sector to business applications - with a single login. IMS offers a variety of basic network services, such as session control services (including registration, routing and roaming), secure authentication, flexible charging and payment, quality of service, presence and Push-to-Talk over Cellular.
PoC, defined originally by an industry consortium (Motorola, Ericsson, Nokia, Siemens and AT&T Wireless), is a service that can be based on IMS. The resulting specifications of the consortium have been submitted to OMA to create a well accepted standard out of it. This has happened in the meanwhile and OMA has published the first version of the specification for the OMA PoC service (OMA PoC enabler release V1.0). It allows participants of PoC sessions to exchange talk bursts (half-duplex audio streams). The approach it is based upon, is comparable to walkie-talkies with enhanced functionality like group management, talk burst control and support for multiple simultaneous PoC sessions.
GLM is an enabling service for the IMS that can also be used in combination with non-IMS systems (currently only Wireless Village known). GLM is a standard defined by the Open Mobile Alliance (OMA).The GLM API part offers a wide range of functionality to manage public groups of users as well as the user's personal profile and his contact lists. Group and list management uses a communication protocol that is based upon XML and HTTP (see XCAP - "The Extensible Markup Language (XML) Configuration Access protocol (XCAP)", J. Rosenberg, October 22, 2004, URL: http://www.ietf.org/internet-drafts/draft-ietf-simple-xcap-04.txt ).
NOTE that this section has been updated from this original proposal.

2.8 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)

javax.microedition.ims

2.9 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?

No

2.10 Are there any security issues that cannot be addressed by the current security model?

No. The platform that this API is implemented upon needs to have a security framework that can be used to enforce the appropriate policy. Defining the security framework is out of the scope for this JSR. For example, the MIDP 2.0 security framework can be re-used. In addition, the applications can rely on the security mechanisms provided by the IMS system (e.g. authentication) but this has to be supported by the underlying implementation.

2.11 Are there any internationalization or localization issues?

No

2.12 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?

No

2.13 Please describe the anticipated schedule for the development of this specification.

Expert Group formation: Q3 2005
Early Draft: Q1 2006
Public Draft: Q2 2006
Proposed Final Draft: Q3 2006
Final Approval Ballot: Q4 2006

Note that this information has been updated from the original JSR.

2.14 Please describe the anticipated working model for the Expert Group working on developing this specification.

This group will conduct its work similar to other expert groups, utilizing email lists, frequent telephone conferences, and face-to-face meetings approximately every 6-8 weeks. Decisions will be made by technical consensus of the EG members.

2.15 It is important to the success of the community and each JSR that the work of the Expert Group be handled in a manner which provides the community and the public with insight into the work the Expert Group is doing, and the decisions that the Expert Group has made. The Executive Committees would like to ensure Spec Leads understand the value of this transparency and ask that each JSR have an operating plan in place for how their JSR will address the involvement of the community and the public. Please provide your plan here, and refer to the Spec Lead Guide for a more detailed description and a set of example questions you may wish to answer in your plan.

- Provide an interim version of the specification to the community at least once a month
- Publish meeting minutes and open issues in the JSR observer alias
- Publish news and open a mailing list if necessary
- Maintain an Observer interest list for JCP members outside of the Expert Group (EG). Observers may follow the progress of the JSR by the periodic short briefs about the progress of the remaining open issues and specification drafts created by this JSR, as will be decided by the Expert Group. However, Observers will not be entitled to participate in the Expert Group meetings (face-to-face or telephone conferences). The Expert Group may also use the list to request feedback on key issues facing the group.
- Provide on a quarterly basis a brief JSR status to the JCP PMO, for publication to the Java community. This will include the current schedule for the JSR and notes on any major events that have occurred in the previous quarter.

2.16 Please describe how the RI and TCK will de delivered, i.e. as part of a profile or platform edition, or stand-alone, or both. Include version information for the profile or platform in your answer.

The RI and TCK will be licensed separately, as stand-alone optional packages for the JavaTM ME platform.

2.17 Please state the rationale if previous versions are available stand-alone and you are now proposing in 2.13 to only deliver RI and TCK as part of a profile or platform edition (See sections 1.1.5 and 1.1.6 of the JCP 2 document).

N/A

2.18 Please provide a description of the business terms for the Specification, RI and TCK that will apply when this JSR is final.

These are initial commercial terms to be used and remain subject to the execution of final legal agreements covering the subject matter hereof.
RI and TCK will be licensed to all interested parties, TCK and RI will be licensed separately. For TCK we plan to introduce a single one time fee of max $50,000 and annual maintenance fee of max $20,000 for a term of four years. TCK will include both binary environment and source code of the test suite.
Maintenance fee covers limited basic support. Major new releases (esp. from new follower JSR) might be subject to additional single one time fee.
For the RI source code we will charge one time access fee, and annual maintenance fee.





Section 3: Contributions

3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.

3GPP TS 24.147 Conferencing using the IP Multimedia (IM)
3GPP TS 24.247: "Messaging service using the IP Multimedia (IM) Core Network (CN) subsystem; Stage 3" (Release 6)
3GPP TS 24.228 Signalling flows for the IP multimedia call control based on SIP and SDP
3GPP TS 24.229: "IP Multimedia Call Control Protocol based on Session Initiation Protocol (SIP) and Session Description Protocol (SDP); Stage 3" (Release 6)
3GPP2 X.S0013.4: "All-IP Core Network Multimedia Domain: IP Multimedia Call Control Protocol Based on SIP and SDP Stage 3"
OMA Push to Talk over Cellular Requirements, Version 1.0 ? 04. Feb 2005, Open Mobile Alliance, OMA-RD-PoC-V1_0-20050204-C.pdf
OMA Push to talk Over Cellular Control Plane, Candidate Version 1.0 ? 17 March 2005, Open Mobile Alliance, OMA-TS-PoC-ControlPlane-V1_0-20050317-C.pdf

OMA Push to talk Over Cellular User Plane, Candidate Version 1.0 ? 17 March 2005, Open Mobile Alliance, OMA-TS_PoC-UserPlane-V1_20050317-C.pdf

Push to talk over Cellular (PoC) - Architecture, Candidate Version 1.0 ? 17 March 2005, Open Mobile Alliance, OMA-AD-PoC-V1_0-20050317-C.pdf
OMA Group and List Management, Draft Version 1.0 - 6 August 2004, Open Mobile Alliance, OMA-PAG-GM-Spec-V1_0_0-20040806-D.doc
Group Management Requirements, Draft Candidate Version 1.0 - 30 Sep 2004, Open Mobile Alliance, OMA-RD_GM-V1_0-20040930-C.doc
Group Management Architecture, Draft Version 1.0 - 19 Aug 2004, Open Mobile Alliance, OMA-PAG-GM-AD-V1_0_0-2004081917-D
Group Management Requirements, Draft Candidate Version 1.0 - 30 Sep 2004, Open Mobile Alliance, OMA-RD_GM-V1_0-20040930-C.doc
Group Management Architecture, Draft Version 1.0 - 19 Aug 2004, Open Mobile Alliance, OMA-PAG-GM-AD-V1_0_0-2004081917-D
OMA Group and List Management, Draft Version 1.0 ? 6 August 2004, Open Mobile Alliance, OMA-PAG-GM-Spec-V1_0_0-20040806-D.doc

3.2 Explanation of how these items might be used as a starting point for the work.

The above listed specifications will serve as infrastructure to map the API on a standards basis.



Section 4: Additional Information (Optional)

4.1 This section contains any additional information that the submitting Member wishes to include in the JSR.