(U)SIM Application Toolkit (USAT)22.0383GPPRelease 17Service descriptionStage 1TS
6.1 (U)SAT APIs
The (U)SIM-API is defined in ETSI TS 102 240 . This API is valid for (U)SAT and is referred to in this TS as (U)SAT API.
The (U)SAT API for the UICC shall allow application programmers easy access to the functions and data described in 3GPP TS 51.011 , TS 31.101 , TS 31.102 , TS 51.014 , TS 31.111 , such that (U)SIM based services can be developed and loaded onto UICCs (independent of the UICC manufacturer), quickly and, if necessary, remotely, after the card has been issued. The (U)SAT API shall support pro-active functions as described in 3GPP TS 51.014  and TS 31.111 , and transport functions as described in 3GPP TS 51.011  and TS 31.102 .
6.2 USAT proactive capability
The USAT proactive capability is a mechanism whereby the UICC can request specific actions to be taken by the ME by issuing "proactive commands" thus establishing and maintaining an interactive dialogue with the user and/or communicating with the network or an external device.
An ME may have a variety of configurations, for example, it may consist of a modem connected to an external display. The USAT proactive capability requirements are applicable to the ME as a whole without regard to any particular configuration.
The ME shall inform the UICC of the success or otherwise of each command issued to it by the UICC, and also indicate the command details and if applicable add more specific information.
The proactive command set allows the USAT to instruct the ME to:
1 display text supplied by the USAT on the ME’s display, with an indication of priority (normal or high), and a defined action (user activity or timeout) to terminate the text display.
2 display a text string and obtain the response in the form of a single user keystroke or a string of keys entered by the user and pass the response to the UICC. If the response is designated as private by the UICC the ME shall not display the users response on the screen.
3 set up a voice call to an address with a specific priority as indicated by the UICC with all parameters indicated by the UICC.
4 set up a data call to an address with specific bearer capability and priority, all parameters are indicated by the UICC.
5 set up and manage a data channel (using CSD, Packet service bearer (e.g.: GPRS, UTRAN packet service, HSDPA, …), SMS, USSD or I-WLAN) between the UICC and an address using information provided by the UICC. It shall be possible for the USAT application to provide the ME with the network connectivity parameters to be used (e.g. PDP context parameters) to establish IP connectivity between a USAT application and a remote entity.
6 send data through a previously set up data channel. The UICC informs the ME if the data is to be sent immediately.
7 retrieve data from the ME that has previously been received via a data channel set up using (5) above. The UICC informs the ME as to how much data it expects to retrieve.
8 send a short message to the network. The short message text is supplied by the UICC to the ME in either packed or unpacked SMS 7-bit alphabet, or UCS2 alphabet.
9 send a SS control, SS MMI string or USSD string, indicating which alphabet is used where applicable.
10 play a tone in the appropriate audio device.
11 negotiate, within reasonable tolerances, a periodic "polling" of the USIM Toolkit.
12 refresh the image (if applicable) of the USIM data contained in the ME memory, either entirely, or partially, or instruct the ME to re-initialize completely.
13 set up an event list in the ME such that the UICC is informed by the ME when an indicated event has occurred.
14 set up an additional menu in the ME, by issuing the ME with a menu list, and allow indication back to the UICC of the user selected menu item.
15 provide requested information from the ME to the UICC, for example the MCC, MNC and IMEI.
16 communicate bi-directionally with an auxiliary device, e.g. a second card reader.
17 set up, refresh and interrogate several timers, and inform the UICC when these expire, within reasonable tolerances.
18 display additional MMI information such as display information or tones with commands that employ network resources, with an indication to the ME as to the required level of ME generated MMI as a result of the interaction with the network.
19 allow the ME to display help information with the commands, by providing the associated text, related to the user action (e.g. menu selection).
20 Provide indication from the ME to the USAT when a key on the MMI has been pressed in a "menu" (response to prompt) or and event (independent action) methods, with key identification. This indication shall be done in a secure manner.
21 send a MM to the network, using a data channel as (5) above. The MM content is supplied by the ME or the UICC.
22 start an ME-based application that the USAT application knows about. For example USAT applications have the ability to launch a micro-browser if provided by the ME as already described in this document (see Interactions with MExE), or may ask the ME to initiate a data synchronisation process.
Note: addressing of ME applications and other relevant parameters if needed, shall be properly defined by the corresponding USAT specifications.
23 Provide location information from the ME to the UICC (e.g. GPS, A-GPS, Galileo, etc) if the ME is equipped with a positioning feature.
24 Provide a list of the CSG identities available application for selection together with the corresponding HNB Names from the ME to the UICC applications, if available to the ME.
25 Inform the UICC applications when selecting and leaving a CSG cell and to provide the corresponding CSG identity and HNB Name, if HNB Name is available.
Unless otherwise stated the following shall apply:
– The format of text to be displayed is designated by the UICC and is either SMS default alphabet (packed or unpacked) or UCS2 alphabet.
– The format of the response from the ME is designated by the UICC and is either keypad digit (0‑9, *, #, +), SMS default alphabet characters or UCS2 alphabet characters.
6.3 ME Capability for support of bearer independent protocol
The ME supporting bearer independent protocol shall provide to the USIM a common interface for any type of data bearer. This interface is in addition to dedicated commands (e.g. SMS, SS and USSD) for USAT application to exchange data with entities outside the UICC.
The communication is initiated by the UICC. The ME negotiates with the UICC and the addressed entity to establish the optimum channel considering the UICC request, the network and ME capabilities.
The ME is responsible for maintaining and restoring the link should there be a link error.
6.4 ME equipped with positioning features
It shall be possible for the UICC to request the current location information from the ME for USAT applications if the ME is equipped with a positioning feature capable of operating in autonomous, MS Assisted or MS Based modes (e.g. GPS, A-GPS, Galileo, etc).
It shall be possible for the UICC to detect the presence of a positioning feature in the Terminal Profile if the ME is equipped with a positioning feature.
The ME shall inform the UICC if the location feature is disabled when the UICC requests the ME to send the location information.
The ME shall inform the UICC if the location information retrieval is not possible (e.g. due to lack of GPS coverage) when the UICC requests the ME to send the location information.
The UICC request for location information shall be treated in accordance with the principles defined in TS 22.071 .