Subscription query request message

With either level of service in the Push Service, you can request information about the status of a subscriber. The subscription query is an extension to the PAP standard, and it is available to all content providers who use the Push Service.

With a <subscriptionquery-message> request, you can explicitly poll the Push Service database to identify which BlackBerry devices are no longer subscribed. You can then deactivate those subscriptions in your database. When you remove or deactivate those subscriptions, you shorten your push cycle and then you can push more messages before reaching your push quota.

To understand the results of a subscription query, you need to understand how the Push Service responds when a BlackBerry device user no longer has your client application, either because the user removed the application without cancelling the subscription, or changed BlackBerry devices.

After you send a push message with confirmed reliability, the following events happen for each addressed BlackBerry device without your application:
  • If the push fails to reach a BlackBerry device with your application on it, it will begin a counter.
  • If a successful push or new registration to the PPG is not delivered within 60 days, the subscription becomes inactive (unsubscribed). This is only a status change, and does not remove the subscription.
  • The Push Service no longer sends data to the application on the device.
  • If the Push Service did send the data, the device user would be charged for the data even though the BlackBerry device had discarded the data because the intended application is not there.
  • After the Push Service removes the subscription in its records, any subsequent push messages will not be sent for that application to that device.

For content providers with the Push Plus level of service, if you send the status query for a PIN or token without a client application, the Push Service sends an error back to you.

All content providers can use a subscription query request to query the status of up to 10,000 PINs or tokens. The Push Service returns the status for each PIN or token so that you can process it accordingly. You can also request a specific status (active or suspended), and the Push Service returns a list of PINs or tokens that have that status. You should deactivate any PINs or tokens in your push initiator that the Push Service does not record as active or suspended.

Was this information helpful? Send us your comments.