9 Call Control and MO SMS control by SIM

3GPP51.014Release 4Specification of the SIM Application Toolkit for the Subscriber Identity Module - Mobile Equipment (SIM - ME) interfaceTS

9.1 Call Control by SIM

9.1.1 Procedure for mobile originated calls

If the service "call control" is allocated and activated in the SIM Service Table (see TS 51.011 [20]), then the ME shall follow the procedure below:

– For all call set-up attempts (even those resulting from a SET UP CALL proactive SIM command, from the Bearer Independant Protocol proactive SIM commands where CSD is selected, or those occurring when another call is already in progress), the ME shall first pass the call set-up details (dialled digits and associated parameters) to the SIM, using the ENVELOPE (CALL CONTROL) command defined below. SIM applications should take into account the following two exceptions:

– when the ME is managing automatic redial attempts, the ME may pass the call set-up details to the SIM for the first attempt only. The SIM can identify MEs which send ENVELOPE (CALL CONTROL) each time during redial attempts by evaluating the indication "Envelope Call Control always sent to the SIM during automatic redial mode" in the TERMINAL PROFILE. If the ME is sending ENVELOPE (CALL CONTROL) as part of a redial attempt, the call setup details shall be the same as the first with the exception of "Location Information" which shall be the current information;

– when the user is dialling "112" or an emergency call code stored in EFECC, for which the ME sets up an emergency call instead of passing the call set-up details to the SIM.

– If the SIM responds with ’90 00′, the ME shall set up the call with the dialled digits and other parameters as sent to the SIM.

– If the SIM responds with ’93 00′, the ME shall not set up the call and may retry the command.

– If the SIM responds with ‘9F XX’, the ME shall use the GET RESPONSE command to get the response data. The response data from the SIM shall indicate to the ME whether to set up the call as proposed, not set up the call, set up a call using the data supplied by the SIM, or instead send a supplementary service or USSD operation using the data supplied by the SIM. It is mandatory for the ME to perform the call set-up request and the supplementary service or USSD operation in accordance with the data from the SIM, if it is within the ME’s capabilities to do so. If the SIM requires a call set-up or supplementary service or USSD operation that is beyond the ME’s capabilities (e.g. the SIM maps a speech call to a data call, and the ME does not support data calls), then the ME shall not perform the call set-up request or supplementary service or USSD operation at all. It is possible for the SIM to request the ME to set up an emergency call by supplying the number "112" as the response data. If the SIM supplies a number stored in EFECC, this shall not result in an emergency call.

In the case where the initial call set-up request results from a proactive command SET UP CALL:

– if the call control result is "not allowed", the ME shall inform the SIM using TERMINAL RESPONSE "interaction with call control by SIM or MO short message control by SIM, action not allowed".

– if the call set-up request is changed by call control in a supplementary service or USSD operation, and if the supplementary service or USSD operation is within the ME’s capabilities, then the ME shall send this request to the network. The ME shall then send back a TERMINAL RESPONSE to the SET UP CALL command at the same time it would have done for the proactive command equivalent to the action requested by call control (i.e. SEND SS or SEND USSD). However, in that case, the TERMINAL RESPONSE shall contain the response data given in the response to ENVELOPE (CALL CONTROL) and a second Result TLV identical to the one given in response to the proactive command equivalent to the action requested by call control (i.e. SEND SS or SEND USSD). The mapping between the general result in the first Result TLV and the general result in the second Result TLV is given below :

– the general result "command performed, but modified by call control by SIM" shall be given in the first Result TLV if the general result of the second Result TLV is ‘0X’ or ‘1X’.

– the general result "interaction with call control by SIM, temporary problem" shall be given in the first Result TLV if the general result of the second Result TLV is ‘2X’.

– the general result "interaction with call control by SIM or MO short message control by SIM, permanent problem" shall be given in the first Result TLV if the general result of the second Result TLV is ‘3X’.

– if the call set-up request is changed by call control into a supplementary service or USSD operation, and if the supplementary service or USSD operation is beyond the ME’s capabilities, then the ME shall send back a TERMINAL RESPONSE to the SET UP CALL command, without performing the supplementary service or USSD operation at all. In that case, the TERMINAL RESPONSE shall contain the response data given in the response to ENVELOPE (CALL CONTROL) and a second Result TLV identical to the one given in response to the proactive command equivalent to the action requested by call control (i.e. SEND SS or SEND USSD). The mapping between the general result in the first Result TLV and the general result in the second Result TLV is given below:

– the general result "interaction with call control by SIM or MO short message control by SIM, permanent problem" shall be given in the first Result TLV, and the general result "command beyond ME’s capabilities" shall be given in the second Result TLV.

If the ME supports the Last Number Dialled service, the ME shall update EFLND with the call set-up details (digits string and associated parameters) corresponding to the initial user request.

The ME shall then follow the call set-up procedure defined in TS 04.08 [8] or the supplementary service or USSD operation procedure defined in TS 24.080 [10].

9.1.2 Procedure for Supplementary Services and USSD

If the service "call control" is allocated and activated in the SIM Service Table (see TS 51.011 [20]), then for all supplementary service and USSD operations (including those resulting from a SEND SS or SEND USSD proactive SIM command), the ME shall first pass the supplementary service or USSD control string (corresponding to the supplementary service or USSD operation and coded as defined in TS 02.30 [4], even if this SS or USSD operation has been performed via a specific menu of the ME) to the SIM, using the ENVELOPE (CALL CONTROL) command defined below. The ME shall also pass to the SIM in the ENVELOPE (CALL CONTROL) command the current serving cell.

The SIM shall respond in the same way as for mobile originated calls. The ME shall interpret the response as follows:

– If the SIM responds with ’90 00′, the ME shall send the supplementary service or USSD operation with the information as sent to the SIM.

– If the SIM responds with ’93 00′, the ME shall not send the supplementary service or USSD operation and may retry the command.

– If the SIM responds with ‘9F XX’, the ME shall use the GET RESPONSE command to get the response data. The response data from the SIM shall indicate to the ME whether to send the supplementary service or USSD operation as proposed, not send the SS or USSD operation, send the SS or USSD operation using the data supplied by the SIM, or instead set up a call using the data supplied by the SIM. It is mandatory for the ME to perform the supplementary service or USSD operation or the call set-up request in accordance with the data from the SIM, if it is within the ME’s capabilities to do so. If the SIM requires a call set-up or supplementary service or USSD operation that is beyond the ME’s capabilities (e.g. the SIM maps a USSD operation to a data call, and the ME does not support data calls), then the ME shall not the perform the call set-up request or supplementary service or USSD operation at all.

In the case where the initial SS or USSD request results from a proactive command SEND SS or SEND USSD:

– if the call control result is "not allowed", the ME shall inform the SIM using TERMINAL RESPONSE ("interaction with call control by SIM or MO short message control by SIM, action not allowed").

– if the SS or USSD request is changed by call control in a call set-up request, then the ME shall set up the call using the data given by the SIM, if it is within the ME’s capabilities to do so. If the SIM requires a call set-up that is beyond the ME’s capabilities (e.g. the SIM maps a USSD operation to a data call, and the ME does not support data calls), then the ME shall not set up the call at all. The ME shall send back a TERMINAL RESPONSE to the initial proactive command at the same time it would have done for the proactive command equivalent to the action requested by call control (i.e. SET UP CALL). However, in that case, the TERMINAL RESPONSE shall contain the response data given in the response to ENVELOPE (CALL CONTROL) and a second Result TLV identical to the one given in response to the proactive command equivalent to the action requested by call control (i.e. SET UP CALL). The mapping between the general result in the first Result TLV and the general result in the second Result TLV is the same as the one described in section 9.1.1.

If the ME supports the Last Number Dialled service, the ME shall update EFLND with the supplementary service or USSD control string corresponding to the initial user request.

The ME shall then follow the supplementary service or USSD operation procedure defined in TS 24.080 [10] or the call set-up procedure defined in TS 04.08 [8].

9.1.3 Indication to be given to the user

The SIM may optionally include an alpha-identifier in the response data to the ENVELOPE (CALL CONTROL) message, in order to inform the user at the time the response is received by the ME. The use of this alpha identifier by the ME is described in TS 102 223 [37] with the additional rules listed here:

– if the SIM responds with "allowed, with modifications", and the data supplied by the SIM is an SS String, and the modified request is within the ME’s capabilities, then :

– if the alpha identifier is provided by the SIM and is not a null data object, the ME shall use it to inform the user. The ME shall then not display the SS string given by the SIM. This is also an indication that the ME should not give any other information to the user on the changes made by the SIM to the initial user request;

– if the alpha identifier is provided by the SIM and is a null data object (i.e. length = ’00’ and no value part), this is an indication that the ME should not give any information to the user on the changes made by the SIM to the initial user request. The ME shall not display the SS string given by the SIM. The ME should not modify the display corresponding to the initial user request;

– if the alpha identifier is not provided by the SIM, the ME may indicate to the user that the initial user request has been changed.

– if the SIM responds with "allowed, with modifications" to a request by a proactive command SEND SS or SEND USSD, and the modified request is beyond the ME’s capabilities, then the ME shall not give any information to the user on the fact that the modified request is beyond the ME’s capabilities, and shall give a TERMINAL RESPONSE to the proactive command (i.e. SEND SS or SEND USSD) as detailed in subsections 9.1.1 and 9.1.2. The responsibility to inform the user in this case lies with the SIM application which sent the proactive command.

9.1.4 Interaction with Fixed Dialling Number

The procedure defined in TS 102 223 [37] for calls applies. In addition, it shall apply in the same way for supplementary service operations, the supplementary service control string being checked as if it was a called number.

The ME shall check the number (or the supplementary service control string) in accordance with TS 22.101 [ZZ].

9.1.5 Support of Barred Dialling Number (BDN) service

The procedure defined in TS 102 223 [37] for calls applies. In addition, it shall apply in the same way for supplementary service operations, the supplementary service control string being checked as if it was a called number.

The ME shall check the number (or the supplementary service control string) in accordance with TS 22.101 [ZZ].

9.1.6 Structure of ENVELOPE (CALL CONTROL)

Direction: ME to SIM

The command header is specified in TS 51.011 [20].

Command parameters/data:

Description

Section

M/O

Min

Length

Call control tag

13.1

M

Y

1

Length (A+B+C+D+E+F)

M

Y

1 or 2

Device identities

12.7

M

Y

A

Address or SS string or USSD string

12.1, 12.14 or 12.17

M

Y

B

Capability configuration parameters 1

12.4

O

N

C

Subaddress

12.3

O

N

D

Location information

12.19

M

N

E

Capability configuration parameters 2

12.4

O

N

F

– Device identities: the ME shall set the device identities to:

Source: ME

Destination: SIM

– Address or SS string or USSD string: only one data object shall be sent to the SIM.

For a call set-up, the address data object is used and holds the Called Party Number, as defined in TS 04.08 [8], to which the ME is proposing setting up the call.

For a supplementary service, the SS string data object is used and holds the corresponding supplementary service.

For a USSD operation, the USSD string data object is used and holds the corresponding USSD control string.

SIM Applications and MEs should take into account that early implementations of SIM application Toolkit use the SS string data object for coding of USSD control strings (instead of the USSD string data object). This behaviour is only possible for USSD control strings consisting of digits (0-9,*,#). The SIM can identify MEs having this early implementation by evaluating the indication "USSD string data object supported in Call Control" in the TERMINAL PROFILE. The ME can identify SIMs having this early implementation by evaluating the indication "USSD string data object supported in Call Control" in the SIM Service Table.

– Capability configuration parameters: Only used for a call set-up, this contains the Bearer capabilities that the ME is proposing to send to the network. The first capability configuration parameters corresponds to the bearer capability 1 information element of a mobile originating SETUP message, as defined in TS 04.08 [8]. The second capability configuration parameters correspond to the bearer capability 2 information element of a mobile originating SETUP message, as defined in TS 04.08 [8]. If no capability configuration parameters are present, this shall indicate a speech call.

– Subaddress: Only used for a call set-up, this contains the called party subaddress that the ME is proposing to send to the network. If one is not present, this shall indicate that the ME is proposing not to send this information element to the network.

– Location information: This data object contains the identification (MCC, MNC, LAC, Cell Identity) of the current serving cell of the MS. The comprehension required flag of this data object in this command shall be set to ‘0’.

Response parameters/data:

It is permissible for the SIM to provide no response data, by responding with SW1 / SW2 = ’90 00′. If the SIM does not provide any response data, then this shall have the same meaning as "allowed, no modification".

Description

Section

M/O

Min

Length

Call control result

M

Y

1

Length (A+B+C+D+E+F)

M

Y

1 or 2

Address or SS string or USSD string

12.1, 12.14 or 12.17

O

N

A

Capability configuration parameters 1

12.4

O

N

B

Subaddress

12.3

O

N

C

Alpha identifier

12.2

O

N

D

BC repeat indicator

12.42

M/O

N

E

Capability configuration parameters 2

12.4

O

N

F

– Call control result:

Contents: the command that the SIM gives to the ME concerning whether to allow, bar or modify the proposed call (or supplementary service operation).

Coding:

’00’ = Allowed, no modification

’01’ = Not allowed

’02’ = Allowed with modifications

– Address or SS string or USSD string : Only one data object may be included if the SIM requests the call (or supplementary service or USSD operation) details to be modified.

The SIM should take into account that early implementations of SIM Application Toolkit in some MEs are unable to support coding of USSD control strings in the USSD string data object and the SIM should instead use the SS string data object. The SIM can identify MEs having this early implementation by evaluating the indication "USSD string data object supported in Call Control" in the TERMINAL PROFILE.

For a call set-up, if the address data object is not present, then the ME shall assume the Dialling number is not to be modified.

For a supplementary service, if the SS string data object is not present, then the ME shall assume that SS is not to be modified.

For a USSD operation, if the USSD string data object is not present, then the ME shall assume that the USSD operation is not to be modified.

– Capability configuration parameters: Only used for a call set-up, this data object is only required if the SIM requests the call details to be modified. The first capability configuration parameters corresponds to the bearer capability 1 information element of a mobile originating SETUP message, as defined in TS 04.08 [8]. The second capability configuration parameters corresponds to the bearer capability 2 information element of a mobile originating SETUP message, as defined in TS 04.08 [8]. If the capability configuration parameters are not present, then the ME shall assume the parameters are not to be modified.

– Subaddress: Only used for a call set-up, this data object is only required if the SIM requests the call details to be modified. If the subaddress is not present, then the ME shall assume the called party subaddress is not to be modified. If the subaddress supplied by the SIM is a null data object, then the ME shall not provide a called party subaddress to the network. A null data object shall have length = ’00’ and no value part.

– Alpha identifier: this data object is only required if the SIM requests a particular indication to be given to the user. The handling of this data object by the ME is described in section 9.1.3. The comprehension required flag of this data object shall be set to ‘0’.

– BC repeat indicator: indicates how the associated bearers shall be interpreted. The change of bearer occurs on a network event. This BC repeat indicator is conditioned to the presence of the second capability configuration parameters and is coded as defined in TS 24.008 [10].

It is mandatory for the SIM to provide at least one of the optional data objects if it has set the Call control result to "allowed with modifications".

9.2 MO Short Message Control by SIM

9.2.1 Description

If the service "MO Short Message Control" is allocated and activated in the SIM Service Table (see TS 51.011 [20]), then the ME shall follow the procedure below:

– For all MO short message attempts (even those resulting from a SEND SM proactive SIM command), the ME shall first pass the RP_destination_address of the service center and the TP_Destination_Address to the SIM, using the ENVELOPE (MO SHORT MESSAGE CONTROL) command defined below. The ME shall also pass to the SIM in the ENVELOPE (MO SHORT MESSAGE CONTROL) command the current serving cell

– If the SIM responds with ’90 00′, the ME shall send the short message with the addresses unchanged.

– If the SIM responds with ’93 00′, the ME shall not send the short message and may retry the command.

– If the SIM responds with ‘9F XX’, the ME shall use the GET RESPONSE command to get the response data. The response data from the SIM shall indicate to the ME whether to send the short message as proposed, not send the short message or send a short message using the data supplied by the SIM. It is mandatory for the ME to perform the MO short message request in accordance with the data from the SIM.

The ME shall then follow the MO Short Message procedure defined in TS 24.011 [9].

In the case where the initial MO short message request results from a proactive command SEND SHORT MESSAGE, if the MO short message control result is "not allowed", the ME shall inform the SIM using TERMINAL RESPONSE, "interaction with call control by SIM or MO short message control by SIM, action not allowed".

9.2.2 Structure of ENVELOPE (MO SHORT MESSAGE CONTROL)

Direction: ME to SIM

The command header is specified in TS 51.011 [20].

Command parameters/data:

Description

Section

M/O

Min

Length

MO Short Message control tag

13.1

M

Y

1

Length (A+B+C+D)

M

Y

1 or 2

Device identities

12.7

M

Y

A

Address data object 1

12.1

M

Y

B

Address data object 2

12.1

M

Y

C

Location information

12.19

M

Y

D

– Device identities: the ME shall set the device identities to:

Source: ME

Destination: SIM

– Address data object 1 : this address data object 1 contains the RP_Destination_Address of the Service Center to which the ME is proposing to send the short message.

– Address data object 2 : this address data object 2 contains the TP_Destination_Address to which the ME is proposing to send the short message.

– Location information : this data object contains the identification (MCC, MNC, LAC, Cell Identity) of the current serving cell of the MS.

Response parameters/data:

It is permissible for the SIM to provide no response data, by responding with SW1 / SW2 = ’90 00′. If the SIM does not provide any response data, then this shall have the same meaning as "allowed, no modification".

Description

Section

M/O

Min

Length

MO short message control result

M

Y

1

Length (A+B+C)

M

Y

1 or 2

Address data object 1

12.1

O

N

A

Address data object 2

12.1

O

N

B

Alpha identifier

12.2

O

N

C

– MO Short Message control result:

Contents: the command that the SIM gives to the ME concerning whether to allow, bar or modify the proposed short message.

Coding:

’00’ = Allowed, no modification

’01’ = Not allowed

’02’ = Allowed with modifications

– Address data object 1: if the address data object 1 is not present, then the ME shall assume the RP_Destination_Address of the Service Center is not to be modified.

– Address data object 2: if the address data object 2 is not present, then the ME shall assume the TP_Destination_Address is not to be modified.

– Alpha identifier: this data object is only required if the SIM requests a particular indication to be given to the user. The handling of this data object by the ME is described in section 9.2.3.

The SIM shall provide the two optional address data objects if it has set the MO Short Message control result to "allowed with modifications".

9.2.3 Indication to be given to the user

The SIM may optionally include an alpha-identifier in the response data to the ENVELOPE (MO SHORT MESSAGE CONTROL) message, in order to inform the user at the time the response is received by the ME. The use of this alpha identifier by the ME is identical to the one described in section 9.1.3 relative to call control by SIM.