WebAPI/WebSTK: Difference between revisions
< WebAPI
Jump to navigation
Jump to search
Allstars.chh (talk | contribs) |
Allstars.chh (talk | contribs) |
||
Line 4: | Line 4: | ||
= Interface = | = Interface = | ||
<pre> | |||
interface nsIDOMMozStkConstants : nsISupports | interface nsIDOMMozStkConstants : nsISupports | ||
{ | { | ||
Line 77: | Line 77: | ||
const unsigned short STK_MENU_PRESENTATION_TYPE_NAVIGATION_OPTIONS = 0x03; | const unsigned short STK_MENU_PRESENTATION_TYPE_NAVIGATION_OPTIONS = 0x03; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkTextMessage : nsISupports | interface nsIDOMMozStkTextMessage : nsISupports | ||
{ | { | ||
Line 118: | Line 119: | ||
//TODO: icon | //TODO: icon | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkItem : nsISupports | interface nsIDOMMozStkItem : nsISupports | ||
{ | { | ||
Line 137: | Line 139: | ||
//TODO: icon | //TODO: icon | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkMenu : nsISupports | interface nsIDOMMozStkMenu : nsISupports | ||
{ | { | ||
Line 187: | Line 190: | ||
// items icon | // items icon | ||
}; | }; | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* RESPONSE LENGTH data object. | * RESPONSE LENGTH data object. | ||
* TS 11.14, clause 12.11 | * TS 11.14, clause 12.11 | ||
*/ | */ | ||
interface nsIDOMMozStkResponseLength : nsISupports | interface nsIDOMMozStkResponseLength : nsISupports | ||
{ | { | ||
Line 205: | Line 209: | ||
readonly attribute unsigned short maxLength; | readonly attribute unsigned short maxLength; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkInput : nsISupports | interface nsIDOMMozStkInput : nsISupports | ||
{ | { | ||
Line 278: | Line 283: | ||
//TODO icon | //TODO icon | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkCmdParameter : nsISupports | interface nsIDOMMozStkCmdParameter : nsISupports | ||
{ | { | ||
//TODO icon | //TODO icon | ||
}; | }; | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
Line 290: | Line 298: | ||
* STK_CMD_SEND_*. | * STK_CMD_SEND_*. | ||
*/ | */ | ||
interface nsIDOMMozStkCmdDisplayTextParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdDisplayTextParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
readonly attribute nsIDOMMozStkTextMessage textMessage; | readonly attribute nsIDOMMozStkTextMessage textMessage; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
* STK_CMD_SELECT_ITEM or STK_CMD_SET_UP_MENU. | * STK_CMD_SELECT_ITEM or STK_CMD_SET_UP_MENU. | ||
*/ | */ | ||
interface nsIDOMMozStkCmdSelectItemParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdSelectItemParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
Line 307: | Line 315: | ||
readonly attribute boolean loadTitleIcon; | readonly attribute boolean loadTitleIcon; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
* STK_CMD_GET_INKEY or STK_CMD_GET_INPUT. | * STK_CMD_GET_INKEY or STK_CMD_GET_INPUT. | ||
*/ | */ | ||
interface nsIDOMMozStkCmdGetInputParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdGetInputParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
readonly attribute nsIDOMMozStkInput input; | readonly attribute nsIDOMMozStkInput input; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
Line 323: | Line 334: | ||
*/ | */ | ||
/* TODO | /* TODO | ||
interface nsIDOMMozStkCmdLaunchBrowserParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdLaunchBrowserParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
Line 329: | Line 339: | ||
}; | }; | ||
*/ | */ | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
Line 335: | Line 347: | ||
*/ | */ | ||
/* TODO | /* TODO | ||
interface nsIDOMMozStkCmdSetupCallParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdSetupCallParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
Line 341: | Line 352: | ||
}; | }; | ||
*/ | */ | ||
</pre> | |||
<pre> | |||
/** | /** | ||
* Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is | ||
Line 347: | Line 360: | ||
*/ | */ | ||
/* | /* | ||
interface nsIDOMMozStkCmdPlayToneParam : nsIDOMMozStkCmdParameter | interface nsIDOMMozStkCmdPlayToneParam : nsIDOMMozStkCmdParameter | ||
{ | { | ||
Line 353: | Line 365: | ||
}; | }; | ||
*/ | */ | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkCmdDetails : nsIDOMMozStkConstants | interface nsIDOMMozStkCmdDetails : nsIDOMMozStkConstants | ||
{ | { | ||
Line 375: | Line 388: | ||
readonly attribute unsigned short commandQualifier; | readonly attribute unsigned short commandQualifier; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkCommand : nsIDOMMozStkConstants | interface nsIDOMMozStkCommand : nsIDOMMozStkConstants | ||
{ | { | ||
Line 391: | Line 405: | ||
//TODO: add deviceId for multi-SIM | //TODO: add deviceId for multi-SIM | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkCommandEvent : nsIDOMEvent | interface nsIDOMMozStkCommandEvent : nsIDOMEvent | ||
{ | { | ||
readonly attribute nsIDOMMozStkCommand command; | readonly attribute nsIDOMMozStkCommand command; | ||
}; | }; | ||
</pre> | |||
<pre> | |||
interface nsIDOMMozStkResponse : nsIDOMMozStkConstants | interface nsIDOMMozStkResponse : nsIDOMMozStkConstants | ||
{ | { | ||
Line 443: | Line 459: | ||
//TODO add deviceId for multi-SIM | //TODO add deviceId for multi-SIM | ||
}; | }; | ||
</pre> | |||
= Examples = | = Examples = |
Revision as of 09:59, 15 June 2012
Overview
To provide DOM API for the STK(SIM Toolkit), or CAT (Card Application Toolkit), which allows web contents can interact with SIM applications.
Interface
interface nsIDOMMozStkConstants : nsISupports { /** * STK Proactive commands. * * @see TS 11.14, clause 13.4 */ const unsigned short STK_CMD_REFRESH = 0x01; const unsigned short STK_CMD_SET_UP_CALL = 0x10; const unsigned short STK_CMD_SEND_SS = 0x11; const unsigned short STK_CMD_SEND_USSD = 0x12; const unsigned short STK_CMD_SEND_SMS = 0x13; const unsigned short STK_CMD_SEND_DTMF = 0x14; const unsigned short STK_CMD_LAUNCH_BROWSER = 0x15; const unsigned short STK_CMD_PLAY_TONE = 0x20; const unsigned short STK_CMD_DISPLAY_TEXT = 0x21; const unsigned short STK_CMD_GET_INKEY = 0x22; const unsigned short STK_CMD_GET_INPUT = 0x23; const unsigned short STK_CMD_SELECT_ITEM = 0x24; const unsigned short STK_CMD_SET_UP_MENU = 0x25; const unsigned short STK_CMD_SET_UP_IDLE_MODE_TEXT = 0x28; /** * STK Result code. * * @see TS 11.14, clause 12.12 */ const unsigned short STK_RESULT_OK = 0x00; const unsigned short STK_RESULT_PRFRMD_WITH_PARTIAL_COMPREHENSION = 0x01; const unsigned short STK_RESULT_PRFRMD_WITH_MISSING_INFO = 0x02; const unsigned short STK_RESULT_PRFRMD_WITH_ADDITIONAL_EFS_READ = 0x03; const unsigned short STK_RESULT_PRFRMD_ICON_NOT_DISPLAYED = 0x04; const unsigned short STK_RESULT_PRFRMD_MODIFIED_BY_NAA = 0x05; const unsigned short STK_RESULT_PRFRMD_LIMITED_SERVICE = 0x06; const unsigned short STK_RESULT_PRFRMD_WITH_MODIFICATION = 0x07; const unsigned short STK_RESULT_PRFRMD_NAA_NOT_ACTIVE = 0x08; const unsigned short STK_RESULT_PRFRMD_TONE_NOT_PLAYED = 0x09; const unsigned short STK_RESULT_UICC_SESSION_TERM_BY_USER = 0x10; const unsigned short STK_RESULT_BACKWARD_MOVE_BY_USER = 0x11; const unsigned short STK_RESULT_NO_RESPONSE_FROM_USER = 0x12; const unsigned short STK_RESULT_HELP_INFO_REQUIRED = 0x13; const unsigned short STK_RESULT_USSD_SS_SESSION_TERM_BY_USER = 0x14; const unsigned short STK_RESULT_TERMINAL_CRNTLY_UNABLE_TO_PROCESS = 0x20; const unsigned short STK_RESULT_NETWORK_CRNTLY_UNABLE_TO_PROCESS = 0x21; const unsigned short STK_RESULT_USER_NOT_ACCEPT = 0x22; const unsigned short STK_RESULT_USER_CLEAR_DOWN_CALL = 0x23; const unsigned short STK_RESULT_CONTRADICTION_WITH_TIMER = 0x24; const unsigned short STK_RESULT_NAA_CALL_CONTROL_TEMPORARY = 0x25; const unsigned short STK_RESULT_LAUNCH_BROWSER_ERROR = 0x26; const unsigned short STK_RESULT_MMS_TEMPORARY = 0x27; const unsigned short STK_RESULT_BEYOND_TERMINAL_CAPABILITY = 0x30; const unsigned short STK_RESULT_CMD_TYPE_NOT_UNDERSTOOD = 0x31; const unsigned short STK_RESULT_CMD_DATA_NOT_UNDERSTOOD = 0x32; const unsigned short STK_RESULT_CMD_NUM_NOT_KNOWN = 0x33; const unsigned short STK_RESULT_SS_RETURN_ERROR = 0x34; const unsigned short STK_RESULT_SMS_RP_ERROR = 0x35; const unsigned short STK_RESULT_REQUIRED_VALUES_MISSING = 0x36; const unsigned short STK_RESULT_USSD_RETURN_ERROR = 0x37; const unsigned short STK_RESULT_MULTI_CARDS_CMD_ERROR = 0x38; const unsigned short STK_RESULT_USIM_CALL_CONTROL_PERMANENT = 0x39; const unsigned short STK_RESULT_BIP_ERROR = 0x3a; const unsigned short STK_RESULT_ACCESS_TECH_UNABLE_TO_PROCESS = 0x3b; const unsigned short STK_RESULT_FRAMES_ERROR = 0x3c; const unsigned short STK_RESULT_MMS_ERROR = 0x3d; /** * STK Menu Presentation types. */ const unsigned short STK_MENU_PRESENTATION_TYPE_NOT_SPECIFIED = 0x00; const unsigned short STK_MENU_PRESENTATION_TYPE_DATA_VALUES = 0x01; const unsigned short STK_MENU_PRESENTATION_TYPE_NAVIGATION_OPTIONS = 0x03; };
interface nsIDOMMozStkTextMessage : nsISupports { /** * Text String. * * @see TS 11.14, clause 12.15, Text String. */ readonly attribute DOMString text; /** * Indicate this text message is high priority or normal priority. * * @see TS 11.14, clause 12.6, Command Qualifier, Display Text, bit 1. * true: high priority * false: normal priority */ readonly attribute boolean isHighPriority; /** * Need to wait for user to clear message or not. * * @see TS 11.14, clause 12.6, Command Qualifier, Display Text, bit 8. * * true: Wait for user to clear message. * false: clear message after a delay. */ readonly attribute boolean userClear; /** * Need to response immediately or not. * * @see TS 11.14, clause 12.43, Immediate response. */ readonly attribute boolean responseNeeded; //TODO: duration //TODO: title //TODO: icon };
interface nsIDOMMozStkItem : nsISupports { /** * Identifier of item. * * The identifier is a single byte between '01' and 'FF'. Each item shall * have a unique identifier within an Item list. */ readonly attribute unsigned short identifier; /** * Text string of item. */ readonly attribute DOMString text; //TODO: icon };
interface nsIDOMMozStkMenu : nsISupports { /** * Array of nsIDOMMozStkItem. * * @see TS 11.14, clause 12.9 */ readonly attribute jsval items; // nsIDOMMozStkItem[] /** * Presentation type, one of STK_MENU_PRESENTATION_TYPE_*. */ readonly attribute unsigned short presentationType; /** * Title of the menu. */ readonly attribute DOMString title; /** * Default item identifier of the menu. */ readonly attribute unsigned short defaultItem; /** * Selection preference. * * @see TS 11.14, clause 12.6, Command Qualifier, SET UP MENU, bit 1. * * true: selection using soft key preferred. * false: no selection preference. */ readonly attribute boolean isSoftKeyPreferred; /** * Help information available or not. * * @see TS 11.14, clause 12.6, Command Qualifier, SET UP MENU, bit 8. * * true: help information available. * false: no help information available. */ readonly attribute boolean isHelpAvailable; // TODO // title icon // items icon };
/** * RESPONSE LENGTH data object. * TS 11.14, clause 12.11 */ interface nsIDOMMozStkResponseLength : nsISupports { /** * Minimum length of response. */ readonly attribute unsigned short minLength; /** * Maximum length of response. */ readonly attribute unsigned short maxLength; };
interface nsIDOMMozStkInput : nsISupports { /** * Text for the ME to display in conjunction with asking the user to respond. */ readonly attribute DOMString text; /** * The minimum and maximum acceptable lengths in characters for the response * from the user. */ readonly attribute nsIDOMMozStkResponseLength responseLength; /** * Text for the ME to display, corresponds to a default text string offered * by the SIM. */ readonly attribute DOMString defaultText; /** * Input format. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INPUT, bit 1. * * true: Alphabet set. * false: Digits only. */ readonly attribute boolean isAlphabet; /** * Alphabet encoding. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INPUT, bit 2. * * true: UCS2 alphabet. * false: default SMS alphabet. */ readonly attribute boolean isUCS2; /** * Visibility of input. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INPUT, bit 3. * * true: User input shall not be revealed in any way. * false: ME may echo user input on the display. */ readonly attribute boolean hideInput; /** * Yes/No response is requested. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INKEY, bit 3. * * true: Yes/No response is requested. * false: Character sets (Alphabet set and UCS2) are enabled. */ readonly attribute boolean yesNo; /** * Packed or unpacked. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INPUT, bit 4. * * true: User input to be in SMS packed format. * false: User input to be in unpacked format. */ readonly attribute boolean isPacked; //TODO icon };
interface nsIDOMMozStkCmdParameter : nsISupports { //TODO icon };
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_DISPLAY_TEXT, STK_CMD_SET_UP_IDLE_MODE_TEXT, STK_CMD_REFRESH and * STK_CMD_SEND_*. */ interface nsIDOMMozStkCmdDisplayTextParam : nsIDOMMozStkCmdParameter { readonly attribute nsIDOMMozStkTextMessage textMessage; };
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_SELECT_ITEM or STK_CMD_SET_UP_MENU. */ interface nsIDOMMozStkCmdSelectItemParam : nsIDOMMozStkCmdParameter { readonly attribute nsIDOMMozStkMenu menu; readonly attribute boolean loadTitleIcon; };
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_GET_INKEY or STK_CMD_GET_INPUT. */ interface nsIDOMMozStkCmdGetInputParam : nsIDOMMozStkCmdParameter { readonly attribute nsIDOMMozStkInput input; };
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_LAUNCH_BROWSER. */ /* TODO interface nsIDOMMozStkCmdLaunchBrowserParam : nsIDOMMozStkCmdParameter { }; */
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_SET_UP_CALL. */ /* TODO interface nsIDOMMozStkCmdSetupCallParam : nsIDOMMozStkCmdParameter { }; */
/** * Used as command parameter when typeOfCommand in nsIDOMMozStkCommand is * STK_CMD_PLAY_TONE. */ /* interface nsIDOMMozStkCmdPlayToneParam : nsIDOMMozStkCmdParameter { }; */
interface nsIDOMMozStkCmdDetails : nsIDOMMozStkConstants { /** * Command number is the number of command issued by ICC. And it is assigned * by ICC may take any hexadecimal value betweean '01' and 'FE'. * * @see TS 11.14, clause 6.5.1 */ readonly attribute unsigned short commandNumber; /** * One of STK_CMD_*. */ readonly attribute unsigned short typeOfCommand; /** * Qualifiers specific to the command. */ readonly attribute unsigned short commandQualifier; };
interface nsIDOMMozStkCommand : nsIDOMMozStkConstants { /** * The detail information of the proactive command issued by ICC. */ readonly attribute nsIDOMMozStkCmdDetails cmdDetails; /** * One of nsIDOMMozStkCmd*Param. */ readonly attribute nsIDOMMozStkCmdParameter param; //TODO: add deviceId for multi-SIM };
interface nsIDOMMozStkCommandEvent : nsIDOMEvent { readonly attribute nsIDOMMozStkCommand command; };
interface nsIDOMMozStkResponse : nsIDOMMozStkConstants { /** * The detail information of the proactive command issued by ICC. */ readonly attribute nsIDOMMozStkCmdDetails cmdDetails; /** * One of STK_RESULT_*. */ attribute unsigned short resultCode; /** * The identifier of the menu item selected by user. */ attribute unsigned short menuSelection; /** * User input. */ attribute DOMString input; /** * YES/NO response. * * @see TS 11.14, clause 12.6, Command Qualifier, GET INKEY, bit 3. * * true: User selects 'Yes'. * false: User selects 'No'. */ attribute boolean yesNo; /** * User has accepted or rejected the call during STK_CMD_CALL_SET_UP. * * @see RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM * * true: Confirmed by User. * false: Rejected by User. */ attribute boolean confirmation; //TODO add deviceId for multi-SIM };