Runtime environment notes

System Properties

The SIP API has the following system property:

Table 54: SIP API system properties

String

Description

microedition.sip.version

If the API is supported, a version of JSR 180 specification is returned. For example, the value returned can be "1.0.1"

Security settings

The SIP API for J2ME (JSR-180) security model implemented in Java Platform for S60 is based on the security requirements specified in Mobile Information Device Profile for J2ME, Version 2.0 and Java Technology for the Wireless Industry Specification, Version 1.0. The user is asked for the Access right in the Connector.open() operation.

Function group

Manufacturer

Operator

Trusted third-party

Untrusted

Net Access

default setting: Blanket

other settings: Blanket

default setting: Blanket

other settings: Blanket

default setting: Session

other settings: No, Oneshot

default setting: Session

other settings: No, Oneshot

The interaction modes (or user permission settings) specify how to prompt the user to grant permissions to a specific API with one of the following modes:

  • “Blanket” is valid for every invocation of an API by a MIDlet suite until it is uninstalled or the permission is changed by the user.

  • “Session” is valid from the invocation of a MIDlet suite until it terminates. “Session” mode MUST prompt the user on or before the first invocation of the API or function which is protected. When the user re-invokes the MIDlet suite the prompt MUST be repeated.

  • “Oneshot” MUST prompt the user on each invocation of the API or function which is protected.

Error codes

This section gives information from error codes used by S60 implementation. Error codes can be divided into three categories: Symbian OS, sip stack and S60 implementation specific error codes. These error codes are set as part of the exception text.

Note: Files mentioned below can be found from the S60 3rd Edition SDK for Symbian OS Supporting Feature Pack 1, for MIDP environment.

Symbian OS error codes

Symbian OS error codes can be found from the \epoc32\include\e32err.h file.

Sip stack error codes

Sip stack uses these error codes if sending request/response is not possible for some reason.

Error codes for URI and sip headers can be found from the \epoc32\include\sipcodecerr.h file.

Rest of sip stack specific error codes can be found from the \epoc32\include\siperr.h file.

S60 implementation specific error codes

Table contains error codes created for S60 implementation of SIP API.

Error code

Description

-20000

ACK has been already sent in the INVITE dialog

-20001

"*" is not supported as value of the Contact header

-20002

“To” header has not been set by midlet

-20003

“From” header has not been set by midlet

-20004

In the deregistering, URI of the Contact header doesn't match to any Contact header of existing registrations

-20005

URI of the “To” header is equal with AOR of existing profile in the REGISTER case

-20007

Error response has been arrived to INVITE request and MIDlet tries to initialize ACK request

-20008

Network connection is not active