Would you like to tell us how we are doing?

You bet No thanks

Sorry about the red box, but we really need you to update your browser. Read this excellent article if you're wondering why we are no longer supporting this browser version. Go to Browse Happy for browser suggestions and how to update.

Features

Low-level and high-level APIs

At its core, a push solution communicates with the PPG using PAP messages. Around this basic functionality is the rest of the push solution: user subscription and user management, push message validation, the management of result notifications (acknowledgements), and so on.

The Push Service SDK provides low-level and high-level APIs to handle the functionality in a push solution. Depending on your development environment and the design of the push solution, you might choose to use the low-level APIs to create PAP messages, and develop the rest of the solution on your own. Alternatively, you might want to use the high-level APIs to handle some of the more complex operations of your solution.

APIs

Description

Components

Low-level APIs

The low-level APIs focus on the creation and parsing of PAP messages, as well as the communication with the PPG. These APIs provide a simple API layer over the PAP XML, removing the need for developers to write and parse PAP control entities and multipart MIME messages.

  • Commons component (contains the commons package)
  • PAP component (contains the pap and query packages)

High-level APIs

The high-level APIs are built on top of the functionality provided by the low-level APIs, and provide a number of value-added features.

Typically, you would use the functionality provided by high-level APIs if you want to use the SDK to automatically handle the processing and storage of push responses, subscriptions, and acknowledgements.

When you use the high-level APIs, you can store SDK data in system memory or a database. If you send a lot of push messages, using a database is preferable to system memory.

  • Core component (contains the push, pushappmgmt, and subscription packages)
  • Acknowledgement component (contains the acknowledgement package)
  • Monitoring component (contains the monitoring package)

Support for typical feature sets

You can use the Push Service SDK to develop your own Push Initiator. When you develop your Push Initiator, you can choose a feature set from the following table that corresponds to your business needs and the Push Essentials or Push Plus service level.

Feature set

Advantages

Disadvantages

Required service level

The Push Initiator automatically tracks push messages using the SDK's built-in acknowledgement handling capability.

You need to set the store push requests flag to true in your application to use this feature set.

  • The PPG sends a result notification to the Push Initiator so that you know the final outcome of the push message that the PPG delivered to each subscriber.
  • You can perform a status query in the local database, instead of contacting the PPG, to check the status of a push message to each subscriber.
  • You can store details about a push message in the local database for as long as you want. The PPG keeps details about a push message for only 24 hours.
  • Based on the delivery status of the push message, you can perform subscription maintenance.
  • The delivery status of push messages is stored in the local database, so there is increased use of the database.

Push Plus

You manually track push messages using result notification.

You need to set the store push requests flag to false in your application to use this feature set.

  • The PPG sends a result notification to the Push Initiator so that you know the final outcome of the push message that the PPG delivered to each subscriber.
  • The delivery status of push messages is not stored in the local database, so there is less use of the database.
  • Based on the delivery status of the push message, you can perform subscription maintenance or track your push messages yourself.
  • You must process the result notification manually.

Push Plus

You manually track push messages using status query.

  • You can perform a remote status query to the PPG to check the status of a push message to each subscriber.
  • The delivery status of push messages is not stored in the local database, so there is less use of the database.
  • You do not have to process incoming result notifications.
  • To determine the delivery status of a push message, you must manually query the PPG multiple times.
  • You can query the status of a push message for only 24 hours.

Push Plus

You do not track push messages. You send a push message, but do not track its delivery.

  • There is very little overhead with this type of Push Initiator. You just need to determine the list of subscribers and the content that you want to send.
  • You do not need to check if a push message reached each subscriber.
  • You do not know the delivery status of a push message.
  • You must perform subscription maintenance manually.
Push Essentials

Sample Push Initiators

The Push Service SDK includes the following sample Push Intiators. You can run the samples to better understand how the Push Service SDK works, and to quickly access some of the features of the SDK with little or no development effort. You can also use what you learn from the samples to develop your own Push Initiator.

Samples

Description

Low-level sample Push Initiator

You can use the sample to perform the following tasks:

  • Send a push request message.
  • Query the PPG database to get the status of previously submitted push request messages by using various criteria.
  • Cancel the delivery of a previously submitted push request.
  • Query the PPG database to view the subscription status of the subscribers.

You can also use the sample to test and debug your push-enabled applications.

High-level sample Push Initiator

You can use the sample to perform the following tasks:

  • Send a push request message.
  • Cancel the delivery of a previously submitted push request.
  • Query the PPG database to get the status of previously submitted push request messages by using various criteria.
  • Add, update, or delete a push-enabled application record from the SDK storage.
  • Update the credentials of a push-enabled application.
  • Update the status of a push-enabled application.
  • List all the push-enabled applications in the SDK storage.
  • Suspend or resume a subscription.
  • Unsubscribe a subscriber.
  • View the list of subscribers of a push-enabled application.
  • View the details of a specific subscriber.
  • Query the subscription status of the subscribers in the SDK storage or in the PPG database.
  • Synchronize the status of subscribers between the SDK storage and the PPG database.

You can also use the sample to test and debug your push-enabled applications.

You can find the source code for the sample Push Initiators in the following places after you install the SDK:

  • In the SDK distribution for the high-level APIs, the path is: pushsdk-high-level\high-level-sample\high-level-sample-1.2.x.xx-sources.jar.
  • In the SDK distribution for the low-level APIs, the path is: pushsdk-low-level\low-level-sample\low-level-sample-1.2.x.xx-sources.jar.