IM Application Launch API Specification DocumentChanges in IM Application Launcher documentation
Changes in IM Application Launcher PurposeIM Application Launch API is an API that the application must implement in order to receive application startup requests in case a new message is coming when the application is not running but the user is logged in to the remote server. This is an ECom API. The application must implement it as an ECom plug-in. Note that the server has to send the correct identification in the message for the ECom plug-in to be loaded. API descriptionThe interface includes the asynchronous methods for launching the application and canceling the launch. The interface is implemented by the ECom plug-ins. Application ID is used for routing the messages. Application ID has to be registered as mentioned in the IM API. Only that application which has registered using a certain ID can receive the message sent by the server (with the same ID). API class structure
Related APIs
Using IM Application Launch APIReceiving an orphaned messageInitially the user is logged in (CSP session exists), and the user application which receives the instant message is running. This user application has registered itself using an ID as specified in IM API. Now if the user application stops running (but the user is logged in to the remote server) and if the server sends an instant message, the ECom plug-in is loaded. This plug-in must start the user application again. This application must implement the APIs mentioned in IM API to receive the messages. Once the application starts, it starts receiving the instant messages. All pending messages are sent to the application. Since the whole process may take some time, the user application can use appropriate mechanism to inform the user. Receiving an orphaned message when application start is ongoingAn instant message is received and it triggers the application start and the start is ongoing. In case of different Application ID, the request is queued too. In case of the same Application ID, the user application is started and both instant messages are received. In case of a different user ID, both user applications are started and each receives its instant message. After the application is started successfully, all orphaned messages are received by the application. If the Application ID was different from the Application ID, which triggered the ongoing launching, the new launching is initiated starting the application registered with that Application ID. Launching the application which handles the instant message received by the IM protocol stackThe plug-in for launching the user application implements the ECom interface for launching the user application. Upon the process creation, a string can be passed to the launcher process as a parameter. The string is the actual Application ID of the user application. In order to launch the application which handles the instant message received by the IM protocol stack, an ECom plug-in needs to be installed which implements the following interface from imlaucherplugin.h include file. Creating a resource file ECom plug-in resource file has the Application ID in the default_data field.
Example code: The following example code is an implementation of two interfaces
Related APIs
Memory and error handlingGlossaryAbbreviations
Definitions
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. License: EPL
|