IDataSource.RequestNotification()

Description:

The RequestNotification method notifies the client when entries are created, updated, or deleted in the specified calendar. If no calendar is specified, the default calendar is used.

This is an asynchronous method.

Syntax:

result = so.IDataSource.RequestNotification(criteria, callback);

Arguments:

  • criteria:

    This is an object that specifies which calendar and calendar entries to monitor for changes and when. For more information about the object properties and how to define them, see section Criteria for change notifications.

  • callback:

    The callback argument is the name of the method that is executed when RequestNotification has results or status information to return. You must define this method separately. Follow the instructions in section Defining the callback handler for an asynchronous method to define the callback method.

Return value:

The RequestNotification method returns an object that contains the initial return value for the asynchronous call it started. The actual notification information is returned by the callback method in the ReturnValue property of its result object. The returned information is described in section Returned notification information.

Table: Return value properties for RequestNotification

Property

Description

Value

result.TransactionID

This is a number used as an identification to match transactions started with a RequestNotification call to one or more calls it generates to callback.

 

result.ErrorCode

This is a number that specifies a predefined error code.

See Service API error codes.

result.ErrorMessage

This is a text string that describes the error.

See Calendar Service API error messages.

Remarks:

  • RequestNotification returns notifications until cancelled with Cancel. You can have multiple RequestNotification calls (instances) pending or in use at the same time.

  • The calendar file to be monitored must exist on the device.

Example code:

For the complete source of a sample widget that demonstrates how to use this Service API, see the full example.