Availability of silent notification

1. Does the "important" description for silent notification in the documentation still valid?

(Pushing background updates to your App)

The system treats background notifications as low priority: you can use them to refresh your app’s content, but the system doesn’t guarantee their delivery. In addition, the system may throttle the delivery of background notifications if the total number becomes excessive. The number of background notifications allowed by the system depends on current conditions, but don’t try to send more than two or three per hour.

I would like to implement notification that would wake up my application in all state to perform AVSpeechSynthesizer, but I am confused with the availability of the silent notification.

I attempted to send silent notification to my ipad to see the exact behaviour, but it seems like it has not been throttle even after a few tens attempts within the same hour.

{
  "aps": {
    "content-available": 1,
    "alert": { "title": "Title", "body": "Content"},
    "sound": "default"
  }
}

2. I am also confused if mixing the "content-available" key pair with "alert" in the aps payload will make the Heads-up Notification been throttle as well?

Yes, the important description is still valid. If you are seeing this work better than expected while you are testing your app on your own device, there will be several factors that make it so. When the app is being tested via Xcode, the throttle is removed so you can test your messaging flow. Also, if your app is in the foreground during the test, there will be no throttle.

Additionally, the throttle is based on device wide budgets for silent notifications. If your app is the only one receiving notifications during the test, it will behave better than on customer devices which may have other apps sending silent notifications, eating into the budget.

If you are sending purely silent notifications, then you have to set the priority to 5 (low), which will cause the notification to be throttled first at APNs, and then on the device when delivering to your app.

If you have visible content in the content-available notification, then you are allowed to use priority 10 (default), and the notification will not be throttled at APNs, and the visible content will be shown as a regular notification, but passing the content to your app will still be throttled.

But in any case, all of this is moot for your use case, as you would not be able to start an audio session while your app is in the background.

Availability of silent notification
 
 
Q