Go to JSR:
On this page:
 
Print Format
JSRs: Java Specification Requests
JSR 180: SIP API for J2METM

SIP API for J2ME defines a multipurpose SIP API for J2ME clients. It enables SIP applications to be executed in memory limited terminals, especially targeting to mobile phones.

  Status: Final              
  Stage       Start   Finish  
  Final Release 3   Download page   23 Mar, 2007      
  Maintenance Draft Review 2   Download page   07 Dec, 2006   08 Jan, 2007  
  Final Release 2   Download page   13 Jan, 2005      
  Maintenance Draft Review   Download page   15 Oct, 2004   15 Nov, 2004  
  Final Release   Download page   10 Dec, 2003      
  Final Approval Ballot   View results   14 Oct, 2003   27 Oct, 2003  
  Proposed Final Draft   Download page   27 Aug, 2003      
  Public Review   Download page   29 Apr, 2003   29 May, 2003  
  Community Draft Ballot   View results   18 Mar, 2003   24 Mar, 2003  
  Community Review   Login page   19 Feb, 2003   24 Mar, 2003  
  Expert Group Formation       09 Apr, 2002   08 Aug, 2002  
  JSR Review Ballot   View results   26 Mar, 2002   08 Apr, 2002  
   
JCP version in use: 2.1
Java Specification Participation Agreement version in use: 1.0
Please direct comments on this JSR to: jsr-180-comments@jcp.org
 
 
Specification Lead
Jan Seppanen   Nokia Corporation 
 
Expert Group
Aplix Corporation   AromaSoft Corporation   Cingular Wireless
Cisco Systems   Dynamicsoft, Inc   Hegde, Anupama
Hutchison 3G UK Limited   Leapstone Systems, Inc.   Motorola
Nokia Corporation   Panasonic Information and Network Technologies Laboratory   Siemens AG
Sun Microsystems, Inc.   Symbian Ltd   Tata Consultancy Services
Tira Wireless   Ubiquity Software Corporation
 

Original Java Specification Request (JSR)

Identification | Request | Contributions

Section 1. Identification

Submitting Member: Nokia

Name of Contact Person: Chris Bouret

E-Mail Address: christophe.bouret@nokia.com

Telephone Number: +358 50 483 72 77

Fax Number: +358 7180 36852


Specification Lead: Chris Bouret

E-Mail Address: christophe.bouret@nokia.com

Telephone Number: +358 50 483 72 77

Fax Number: +358 7180 36852


Initial Expert Group Membership:

Nokia, Dynamicsoft

Supporting this JSR:

Nokia, Dynamicsoft



Section 2: Request

2.1 Please describe the proposed Specification:

The Session Initiation Protocol (SIP) is used to establish and manage multimedia IP sessions. This same mechanism can also be used to provide instant messaging, presence and gaming services. This JSR requests the creation of a general SIP API for J2ME based on SIP protocol defined in IETF and 3GPP and targeted to resource constrained platform.

SIP will become important protocol in the future IP mobile phone environment and SIP based applications will be essential enablers. MIDP 2.0 opens up the possibility to use TCP & UDP sockets, but it is important that SIP is used with rigid security model and thus it is important to define the SIP API for Java MIDP in the early phase. It also targets to have one SIP API, so that there will not become several different SIP APIs in the MIDP devices using TCP or UDP. It can also bring the new security requirements that should be fit to the MIDP security model early enough.

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

J2ME.

SIP API for J2ME will be based on the Generic Connection Framework defined in the J2ME Connected Limited Device Configuration (CLDC) and will use the existing I/O classes of CLDC.

SIP API for J2ME will be typically used in conjunction with the Mobile Information Device Profile (MIDP), but it can be used with other profiles.

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

The proposed API enables terminals supporting MIDP/CLDC to run SIP enabled MIDlets. The expert group will define an actual API as well as possible dependences with other existing APIs (security, networking). SIP API for J2ME will integrate with the CLDC Generic Connection Framework pattern and take into consideration the resource constraints of the platform.

The SIP API for J2ME specification must address the following requirements:

  • allow terminal to handle SIP requests in the delivery of SIP related MIDlets. This requires the ability to respond to requests and initiate new requests.

  • provide session management support, allowing users to deposit and retrieve data from objects which potentially span multiple SIP requests, and calls.

  • provide high level access to SIP objects, such as requests and responses, with the ability to manipulate key headers and field values. Emphasis is on simplicity and minimalism rather than completeness.

  • must hide the complexities of SIP wherever possible; developers should not need to be SIP experts.

  • the core platform security model will be applied with the SIP API.

  • handle all type of SIP applications including for example Instant Messaging, Presence, Chatting and Gaming.

    This list of requirements is not necessarily complete and neither will all items be addressed by the first version . We intend to define the API in a progression of specifications that address the requirements in an incremental fashion.

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

    The JAIN SIP API (JSR 32) defines a general purpose API that is intended for low-level SIP processing in clients as well as servers. The platform targeted is J2EE/SE and is not adapted to J2ME terminals.

    The JAIN SIP Lite (JSR 125) defines a general purpose API that is intended for simplifying the handling of SIP multimedia dialogs, while SIP API for J2ME is generic. The platform targeted is J2EE/SE and not taking into account J2ME CLDC terminal limitations.

    The JAIN SIMPLE Presence (JSR 164) and JAIN SIMPLE IM (JSR 165) defines an application level API specific to a certain task and IETF standard. It is suppose to be platform agnostic. In opposite the SIP API for J2ME is a generic SIP API that doesn't make any assumptions on the standard and application used. It is dedicated to the J2ME platform in order to satisfy the stringent requirements of small platforms.

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

    SIP (RFC2543) is a protocol specified by IETF/3GPP and used for example in 3G networks for establishing, managing, and terminating sessions between two or more IP endpoints. It defines a number of network entities, notably user agents (UAs) that are the endpoints that initiate and respond to SIP requests, and proxies that makes routing decisions and forward SIP messages towards their destination UA. One of the main functions of SIP is routing session invitations from UA clients via a path of SIP proxies to UA servers.

    Java MIDP/CLDC platform was designed to support small platform requirements. MIDlets can be downloaded to the platform and use the local services.

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

    The API will be under javax.microedition.sip and javax.microedition.io

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

    No

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

    The security model should be the same as in the MIDP.

    2.9 Are there any internationalization or localization issues?

    None

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

    No

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

    The target schedule is to get the specification finalized Q2/2003.

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

    The anticipated working model will use:

    A dedicated mailing list.
    Monthly conference calls.
    Face-to-face meetings each quarter.





    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.

    M. Handley, H. Schulzrinne, E. Schooler, and J. Rosenberg, RFC 2543 "SIP: Session Initiation Protocol" (RFC number will change March 2002)

    IETF SIMPLE WG, SIP for Instant Messaging and Presence Leveraging Extensions

    IETF SIPPING WG, Session Initiation Protocol InvestiGation, 3GPP requirements on SIP; draft-garcia-sipping-3gpp-reqs-03.txt, March 2002

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

    SIP API for J2ME will be based on the SIP specification in the RFC 2543 and potential extensions required by IETF SIMPLE and SIPPING work. It will also take into account 3GPP requirements.



 
Sun Microsystems
What's New
JSRs
JCP Procedures
Community Resources
Participation
Press & Success
What is the JCP