6.3.7 Envelope Response Posting

3GPP51.013Release 17Test specification for Subscriber Identity Module (SIM) Application Programming Interface (API) for Java CardTS

6.3.7.1 EVENT_CALL_CONTROL_BY_SIM

Test Area Reference: FWK_ERP_ECCN

6.3.7.1.1 Conformance Requirements

6.3.7.1.1.1 Normal Execution

  • CRRN1: The SIM Toolkit Framework can’t reply busy when an Envelope(Call Control) is sent to the SIM.

6.3.7.1.1.2 Parameters error

No requirements.

6.3.7.1.1.3 Context Errors

No requirements.

6.3.7.1.2 Test Area Files

Test Script: FWK_ERP_ECCN_1.scr

Test Applet: FWK_ERP_ECCN_1.java

FWK_ERP_ECCN_2.java

FWK_ERP_ECCN_3.java

Load Script: FWK_ERP_ECCN_1.ldr

Cleanup Script: FWK_ERP_ECCN_1.clr

Parameter File: FWK_ERP_ECCN_1.par

6.3.7.1.3 Test Procedure

Id

Description

API/Framework Expectation

APDU Expectation

1

Applet1 is registered on the EVENT_CALL_CONTROL_BY_SIM, Applet2 is registered and triggered on the EVENT_MENU_SELECTION.

1-Applet2 invokes the method send()and no fetch is performed

2-Envelope(Call Control) is sent to the SIM

3-Applet1 calls the method EnvelopeResponseHandler.postASBERTLV() to change any incoming dialling number into +11 22 33 44.

4-A Fetch command is sent to the SIM

5-A Terminal Response command is sent to the SIM

6-Delete Applet1 & Applet2

7-Install Applet3

Applet2 is suspended

Applet1 is triggered.

Applet2’s execution shall continue.

The SIM answer 9Fxx to the Envelope(Call Control)

The dialling number is retrieved with a GetResponse command.

The SIM answers to the Get Response command with status words 91xx.

2

Applet3 is registered on both the events EVENT_CALL_CONTROL_BY_SIM and EVENT_MENU_SELECTION.

1-Envelope Menu Selection is sent to the SIM.

2-Applet3 invokes the method send()and no fetch is performed)

3-Envelope(Call Control) is sent to the SIM

4-Applet3 calls the method EnvelopeResponseHandler.postASBERTLV() to change any incoming dialling number into +11 22 33 44.

5-A Fetch command is sent to the SIM

6-A Terminal Response command is sent to the SIM

Applet3 is triggered on the EVENT_MENU_SELECTION

Applet3 is suspended on the send() method

Applet3 is triggered on the EVENT_CALL_CONTROL_BY_SIM.

The Applet3’s execution shall continue.

The SIM answer 9Fxx to the Envelope(Call Control)

The dialling number is retrieved with a GetResponse command.

The SIM answers to the Get Response command with status words 91xx.

6.3.7.1.4 Test Coverage

CRR Number

Test Case Number

CRRN1

1, 2

6.3.7.2 EVENT_MO_SHORT_MESSAGE_CONTROL_BY_SIM

Test Area Reference: FWK_ERP_EMCN

6.3.7.2.1 Conformance Requirements

6.3.7.2.1.1 Normal Execution

  • CRRN1: The SIM Toolkit Framework can’t reply busy when an Envelope(MO-Short Message Control) is sent to the SIM.

6.3.6.2.1.2 Parameters error

No requirements.

6.3.6.2.1.3 Context Errors

No requirements.

6.3.7.2.2 Test Area Files

Test Script: FWK_ERP_EMCN_1.scr

Test Applet: FWK_ERP_EMCN_1.java

FWK_ERP_EMCN_2.java

FWK_ERP_EMCN_3.java

Load Script: FWK_ERP_EMCN_1.ldr

Cleanup Script: FWK_ERP_EMCN_1.clr

Parameter File: FWK_ERP_EMCN_1.par

6.3.7.2.3 Test Procedure

Id

Description

API/Framework Expectation

APDU Expectation

1

Applet1 is registered on the EVENT_MO_SHORT_MESSAGE_CONTROL_BY_SIM; Applet2 is registered and triggered on the EVENT_MENU_SELECTION.

1-Applet2 invokes the method send()and no fetch is performed)

2-Envelope(MO-SM control) is sent to the SIM

3-Applet1 calls the method EnvelopeResponseHandler.postASBERTLV() to change any incoming TP_Destination_Address and any RP_Destination_Address of the Service Center into +11 22 33 44

4-A Fetch command is sent to the SIM

5-A Terminal Response command is sent to the SIM

6-Delete Applet1 & Applet2

7-Install Applet3

Applet2 is suspended

Applet1 is triggered.

The Applet’s execution shall continue.

The SIM answers 9Fxx to the Envelope(MO-Short Message Control)

The TP_Destination_Address is retrieved with a GetResponse command.

The SIM answers to the Get Response command with status words 91xx.

2

Applet3 is registered on both the events EVENT_MO_SHORT_MESSAGE_CONTROL_BY_SIM and EVENT_MENU_SELECTION.

1-Applet3 invokes the method send()and no fetch is performed)

2-Envelope(MO-SM control) is sent to the SIM

3-Applet3 calls the method EnvelopeResponseHandler.postASBERTLV() to change any incoming TP_Destination_Address and any RP_Destination_Address of the Service Center into +11 22 33 44.

4-A Fetch command is sent to the SIM

5-A Terminal Response command is sent to the SIM

Applet3 is suspended on the send() method

Applet3 is triggered on the EVENT_MO_SHORT_MESSAGE_CONTROL_BY_SIM.

The Applet3’s execution shall continue.

The SIM answers 9Fxx to the Envelope(MO-Short Message Control)

The TP_Destination_Address is retrieved with a GetResponse command.

The SIM answers to the Get Response command with status words 91xx.

6.3.7.2.4 Test Coverage

CRR Number

Test Case Number

CRRN1

1, 2

6.3.7.3 EVENT_UNRECOGNIZED_ENVELOPE

Test Area Reference: FWK_ERP_EUEN

6.3.7.3.1 Conformance Requirements

6.3.7.3.1.1 Normal Execution

  • CRRN1: The EnvelopeResponseHandler is available for the EVENT_UNRECOGNIZED_ENVELOPE.

6.3.7.3.1.2 Parameters error

No requirements.

6.3.7.3.1.3 Context Errors

No requirements.

6.3.7.3.2 Test Area Files

Test Script: FWK_ERP_EUEN_1.scr

Test Applet: FWK_ERP_EUEN_1.java

Load Script: FWK_ERP_EUEN_1.ldr

Cleanup Script: FWK_ERP_EUEN_1.clr

Parameter File: FWK_ERP_EUEN_1.par

6.3.7.3.3 Test Procedure

Id

Description

API/Framework Expectation

APDU Expectation

1

An applet triggered on the EVENT_UNRECOGNIZED_ENVELOPE calls the EnvelopeResponseHandler.post() method

The post() method returns no exception

The SIM answers to the Envelope with status words 9Fxx. The data retrieved with the GetResponse command are the ones posted by the applet.

6.3.7.3.4 Test Coverage

CRR Number

Test Case Number

CRRN1

1

6.3.7.4 EVENT_FORMATTED_SMS_PP_ENV

Test Area Reference: FWK_ERP_EFSE

6.3.7.4.1 Conformance Requirement

6.3.7.4.1.1 Normal Execution

  • CRRN1: If PoR is required a SMS-DELIVER REPORT is sent by the SIM, when the post() or the postAsBERTLV() method is invoked and if bit 6 of the second octet of SPI is set to 0.
  • CRRN2: If PoR is required a SMS-SUBMIT is sent by the SIM, when the post() or the postAsBERTLV() method is invoked and if bit 6 of the second octet of SPI is set to 1. In this case the statusType method parameter is meaningless. The SIM Toolkit Framework shall build and issue a Send Short Message proactive command as defined in TS 11.14 [4].

6.3.7.4.2 Test Suite Files

Test Script: FWK_ERP_EFSE_1.scr

Test Applet: FWK_ERP_EFSE_1.java

FWK_ERP_EFSE _2.java

Load Script: FWK_ERP_EFSE _1.ldr

Cleanup Script: FWK_ERP_EFSE _1.clr

Parameter File: FWK_ERP_EFSE _1.par

6.3.7.4.3 Test Procedure

Id

Description

API/Framework Expectation

APDU Expectation

1

SMS DELIVER REPORT

1- A formatted sms pp envelope with SMS Deliver Report required is sent to the SIM with bit 6 of SPI2 set to 0.

2- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

3- Applet1 builds the answer and calls the post() method with StatusType=SW1_RP_ACK

4- A formatted sms pp envelope with SMS Deliver Report required is sent to the SIM with bit 6 of SPI2 set to 0.

5- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

6- Applet1 builds the answer and calls the postAsBERTLV() method with StatusType=SW1_RP_ACK

1- Applet1 is triggered

2- No exception is thrown.

Applet1 finalizes

4- Applet1 is triggered

5- No exception is thrown.

Applet1 finalizes

3- ME receives 9FXX and checks the response

5- ME receives 9FXX and checks the response

2

SMS-SUBMIT

1- A formatted sms pp envelope with SMS Submit required is sent to the SIM with bit 6 of SPI2 set to 1.

2- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

3- Applet1 builds the answer and calls the post() method with StatusType=SW1_RP_ACK

4- A formatted sms pp envelope with SMS Submit required is sent to the SIM with bit 6 of SPI2 set to 1.

5- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

6- Applet1 builds the answer and calls the post() method with StatusType=SW1_RP_ERROR

7- A formatted sms pp envelope with SMS Submit required is sent to the SIM with bit 6 of SPI2 set to 1.

8- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

9.-Applet1 builds the answer and calls the postAsBERTLV() method with StatusType=SW1_RP_ACK

10- A formatted sms pp envelope with SMS Submit required is sent to the SIM with bit 6 of SPI2 set to 1.

11- EnvelopeResponseHandler.getTheHandler() method is called by Applet1

12- Applet1 builds the answer and calls the postAsBERTLV () method with StatusType=SW1_RP_ERROR

1- Applet1 is triggered

2- No exception is thrown.

Applet1 finalizes

4- Applet1 is triggered

5- No exception is thrown

Applet1 finalizes

7- Applet1 is triggered

8- No exception is thrown.

Applet1 finalizes

10- Applet1 is triggered

11- No exception is thrown.

3- ME receives a Send Short Message proactive command.

6- ME receives a Send Short Message proactive command.

9- ME receives a Send Short Message proactive command.

12- ME receives a Send Short Message proactive command.

6.3.7.4.4 Test Coverage

CRR Number

Test Case Number

CRRN1

1

CRRN2

2