• No results found

MSDC manager module connection management

6.5.1 MSDC error notifications 6.5.1.1 Description

If the MSDC wants to notify the app of any generic MSDC error, it uses the msdcError notification. Chapter 14 includes the type of errors that can be notified.

6.5.1.2 Prerequisite

Add MSDC manager module event listener (section 6.2.1) should be complete.

6.5.1.3 Scenarios

If the MSDC does not get enough memory from the OS, the MSDC API responds to the app using msdcError with the error code ERROR_MSDC_UNABLE_TO_ALLOCATE_MEMORY.

In such a case, please check if the device where you are running MSDC has enough free memory See Code Example in section 5.2.2

Figure 6-38 is the corresponding call flow.

App MSDC API

msdcError() Error code =

ERROR_MSDC_UNABLE_TO_

ALLOCATE_MEMORY

Error message = <error message>

Figure 6-38 MSDC – Error notification, Unable to allocate memory

If the MSDC API notifies the app using msdcError with any of the error codes listed below, contact the operator as these are operator-specific errors

ERROR_MSDC_UNABLE_TO_LOCATE_PROVISIONING

ERROR_MSDC_PROVISIONING_FILE_INCOMPATIBILITY

ERROR_MSDC_UNABLE_TO_PARSE_PROVISIONING_FILE

ERROR_MSDC_UNABLE_TO_BIND_PORT

ERROR_MSDC_TIME_SYNC

ERROR_MSDC_MODEM_VERSION_INCOMPATIBLE

ERROR_MSDC_BOOTSTRAP_CONNECTION_FAIL

ERROR_MSDC_UNABLE_TO_PARSE_BOOTSTRAP

ERROR_MDSC_NOT_CONNECTED_TO_HOMECARRIER_LTE

ERROR_MDSC_FAILED_BOOTSTRAP_SERVER_DISCOVERY

ERROR_MDSC_SIM_READ

ERROR_MSDC_UNABLE_TO_ENABLE_MODEM

ERROR_MSDC_MIDDLEWARE_NOT_INSTALLED

ERROR_MSDC_EMBMS_SERVICE_NOT_AVAILABLE

6.5.2 MSDC warning notifications 6.5.2.1 Description

If the MSDC wants to notify the app of any generic MSDC warning, it uses the overloaded msdcWarning notification. Chapter 14 includes the type of errors that can be notified.

6.5.2.1.1 Prerequisite

6.5.2.1.2 Scenarios

If the MSDC detects a change in the network on which the device operates on, the MSDC API warns the app using msdcWarning with the warning code

WARNING_MSDC_NETWORK_CHANGE_DETECTED.

Figure 6-39 is the corresponding call flow.

App MSDC API

msdcWarning() Warning code =

WARNING_MSDC_NETWORK_CHANGE _DETECTED

message = <message>

Figure 6-39 MSDC – Warning notification, network change detected

Here are possible MSDC warnings that the MSDC API notifies the app using msdcWarning:

WARNING_MSDC_NETWORK_CHANGE_DETECTED

WARNING_MSDC_REDUCED_FEATURE_SET

6.5.3 E911 notification 6.5.3.1 Description

E911 stands for Enhanced 911 calls. Once the user has dialed 911, the phone should ideally stop all activities (other than the E911 call) until the end of both the E911 call and the subsequent callback period. The callback period is usually 5 minutes long.

The middleware halts all processing and sends an E911 indication with status IN to the application when the modem indicates that it is in the E911 state.

The middleware resumes normal operations and sends an E911 indication with status OUT to the application when the modem indicates the end of the E911 state.

On receiving an E911 indication from the middleware, it is recommended that the application informs the user of the E911 state and exit.

6.5.3.2 Prerequisite

MSDC manager module connection initialization (section 6.2.2) should be complete.

6.5.3.3 Scenario

The user dials 911, and if the app is running in the background, it receives the E911 notification.

If the user launches the app during the callback period, the app receives the E911 notification after the MSDC initialization and requests to initialize other modules would fail.

Figure 6-40 is the corresponding call flow.

App MSDC API

initializeMSDC()

e911Indication() MSDC Initialize Parameters

initializeMSDCConfirmation()

state = E911_IN

Figure 6-40 MSDC – E911 call flow

6.5.3.4 Interface function

void e911Indication(int state);

6.5.4 MSDC Unavailable notification 6.5.4.1 Description

The UI application receives this notification when there is no connection to MSDC middleware.

This notification includes a possible reason for the connection loss.

□ MSDC_NONE – Indicates there is no MSDC middleware found based on the UI application preference stated in initializeMSDC() call.

□ MSDC_NO_WIFI – Indicates there is no Wi-Fi connection to connect to remote MSDC middleware.

□ MSDC_REMOTE_AVAILABLE – Indicates remote MSDC middleware is available now and the UI application is disconnected from local MSDC middleware on the device while connecting to remote MSDC middleware. The app should receive

6.5.4.2 Prerequisite

Add MSDC manager module event listener (section 6.2.1) should be complete.

6.5.4.3 Interface function

void msdcUnavailableNotification(int reason);

6.5.5 MSDC Available Notification 6.5.5.1 Description

The UI application receives this notification when it is connected to MSDC middleware. This notification includes the type of connection.

□ MSDC_LOCAL – Indicates the UI application is connected to local MSDC middleware found on the same device as the UI.

□ MSDC_REMOTE – Indicates the UI application is connected to remote MSDC middleware found on mobile broadband product.

6.5.5.2 Prerequisite

Add MSDC manager module event listener (section 6.2.1) should be complete.

6.5.5.2.1 Interface function

void msdcAvailableNotification(int which, Object obj);

6.5.6 Information calls

6.5.6.1 Get the MSDC API version 6.5.6.1.1 Description

To get the version of the MSDC API, the app can use the getAPIVersion function. The return value has the version of the MSDC API.

6.5.6.1.2 Prerequisite

MSDC manager module connection initialization (section 6.2.2) should be complete.

6.5.6.1.3 Scenario

Figure 6-41 is the call flow sequence NOTE

- It is recommended to release mediaPlayer after receiving MSDC unavailable notification.

return getServerAPIVersion()

App MSDC API

< Version String >

Figure 6-41 MSDC – Get Server version

6.5.6.1.4 Interface function

String getServerAPIVersion ();

6.5.6.2 Get the MSDC server version 6.5.6.2.1 Description

To get the version of the MSDC server, the app can use the getServerAPIVersion function.

The return value has the version of the MSDC server.

6.5.6.2.2 Prerequisite

None.

6.5.6.2.3 Scenario

Figure 6-42 is the call flow sequence

return getAPIVersion()

App MSDC API

< Version String >

Figure 6-42 MSDC – Get API version

6.5.6.3 Check MSDC initialization status 6.5.6.3.1 Description

To identify whether the connection to the MSDC has been initialized (section 6.2.2), the app uses the isMSDCInitialized function. The return boolean value, if TRUE, indicates that the MSDC connection has been initialized.

6.5.6.3.2 Prerequisite

Add MSDC manager module event listener (section 6.2.1) should be complete.

6.5.6.3.3 Scenario

Figure 6-43 is the call flow sequence

return isMSDCInitialized()

App MSDC API

TRUE / FALSE

Figure 6-43 MSDC – Check MSDC initialization status

6.5.6.3.4 Interface function

boolean isMSDCInitialized();

Related documents