Using push request reliability

In your push request, you can specify that you want the BlackBerry device to return a result notification when the pushed content is successfully delivered. The BlackBerry MDS Connection Service receives notifications from each BlackBerry device that successfully receives the pushed content and forwards those notifications to the push originator. If a push request is not successfully delivered to one or more BlackBerry devices within the allotted time, the BlackBerry MDS Connection Service sends a notification to the push originator.

If you don't specify a reliability level for your push method, the BlackBerry MDS Connection Service doesn't provide the push originator with any notification regarding the outcome of the push request.

Notification URL

You must also specify a notification URL to which the BlackBerry MDS Connection Service sends result notifications, with every push request that specifies a reliability option. A push request that requests some level of reliability, but doesn't provide a notification URL, is considered invalid and the BlackBerry MDS Connection Service rejects it.

Application ID

If you intend to use application-reliable push requests, you must register the ApplicationID that sets the parameters for the client-side push-enabled app with the BlackBerry MDS Connection Service. Contact your organization's administrator with the unique port numbers that you defined for any client-side apps you develop.

Client-side app

If you have created a client-side app and you want to use application-reliable push requests, you might need to design your app to make a request to the BlackBerry MDS Connection Service the first time the user opens it.

BlackBerry MDS Connection Service

Before you can submit an application-reliable push request, the BlackBerry MDS Connection Service must know the software version for each recipient BlackBerry device, since application-reliable push requests are only supported by devices running BlackBerry Device Software 3.8 or later. The BlackBerry MDS Connection Service acquires the BlackBerry device information from the device profile, which is identified in the UAProf header that is included when a user makes a request for content using the BlackBerry Browser.

Registering your server-side push initiator

If the user must register to use your server-side push initiator, then the BlackBerry MDS Connection Service will already have registered the device information for each recipient. Otherwise, the BlackBerry MDS Connection Service won't have the user profile information it needs before permitting application-reliable requests. You can develop your app so that it sends an HTTP request, to make sure that the BlackBerry MDS Connection Service registers profile information for each BlackBerry device that receives pushed content.

Using the PAP push format

When you use the PAP push format, you need to include the <quality-of-service> element in the <push-message> element of the control entity.

Using the BlackBerry push format

When you use the BlackBerry push format, you need to include the X-Rim-Push-Reliability header in the request.

Levels of reliability

You can choose the reliability level that is appropriate for your push request.

Reliability level

Description

transport

The BlackBerry device sends an acknowledgment notification when the pushed content reaches the device. It doesn't try to verify that the client-side app receives the content.

application

The BlackBerry device sends an acknowledgment notification when the pushed content reaches the client-side app. The device sends the acknowledgment to the BlackBerry MDS Connection Service, which forwards it on to the notification URL provided in the push request.

Before application-reliable push requests can be made, the listen port number on the BlackBerry device must be registered with the BlackBerry MDS Connection Service.

application-preferred

Supported by the BlackBerry push format only. If the BlackBerry device supports application-level reliability (that is, if it is running BlackBerry Device Software 4.0 or later), it sends an acknowledgment notification when the pushed content reaches the client-side app. If the BlackBerry device does not support application-level reliability, it sends an acknowledgment notification when the pushed content reaches the device.

Before application-reliable push requests can be made, the application ID that sets client-side parameters on the BlackBerry device must be registered with the BlackBerry MDS Connection Service.

Receiving push result notifications

If you create a push request that specifies either application-level or transport-level reliability, you must also specify a valid notification URL.

The notification URL is the address to which the BlackBerry MDS Connection Service sends result notifications. When the BlackBerry device receives the pushed content, it returns a delivery confirmation message to the BlackBerry MDS Connection Service. The BlackBerry MDS Connection Service forwards the message to the URL provided in the push request. If the BlackBerry MDS Connection Service is unable to deliver the push request, it sends a result notification informing the push originator of the unsuccessful result.

The BlackBerry MDS Connection Service sends all result notifications to the notification URL as an HTTP POST.

If the push request is sent to multiple recipients specified by using multiple email addresses, multiple BlackBerry device PINs or multiple devices using the same email, the BlackBerry MDS Connection Service sends a unique result notification for each recipient.

If the push request is sent to a BlackBerry device user group, the BlackBerry MDS Connection Service sends a single result notification for the entire group. If one member is unable to receive the content, the push request is considered unsuccessful. For example, using the PAP push format, the delivered state means that the message was successfully delivered to all recipients in the group, and the timeout state means that the delivery timed out before all recipients received the message, although some may have received it.

Using the PAP push format

When you use the PAP push format, you need to specify the notification URL using the ppg-notify-requested-to attribute of the <push-message> element.

Using the BlackBerry push format

When you use the BlackBerry push format, you need to specify the notification URL using the X-Rim-Push_NotifyURL header.

Last modified: 2015-06-11



Got questions about leaving a comment? Get answers from our Disqus FAQ.

comments powered by Disqus