Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

APNS changes for time sensitive notifications #22

Open
ShezHsky opened this issue Mar 5, 2022 · 0 comments
Open

APNS changes for time sensitive notifications #22

ShezHsky opened this issue Mar 5, 2022 · 0 comments
Labels
enhancement Improvements to existing features with relevant impact
Milestone

Comments

@ShezHsky
Copy link
Member

ShezHsky commented Mar 5, 2022

Raising this as a reminder for discussion later.

The next release of the iOS app adds the time sensitive notification entitlement - giving us elevated permissions to show notifications to the user regardless of their Focus setting (i.e. even with Do Not Disturb on, they'll still get a nudge from us). The app will mark event reminders as time sensitive to avoid them being missed. By default, legacy APNS payloads will continue to alert the user in the same manner as previous OS releases (that is, if Do Not Disturb is on they'll remain on the lock screen for later).

In the APNS payload, a new key (interruption-level) should be added within the aps dictionary like so:

{
    "aps" : {
        "alert" : {
            // all the current stuff goes here
        }
        "interruption-level" : "<value>"
    }
}

Where <value> will depend on how much we want the notification to break through the user's device. There's a few options:

  • passive - the notification is delivered but the device isn't woken up, or plays a sound
  • active - same behaviour as prior to iOS 15 - the device will be woken up and play a sound, assuming Do Not Disturb is not enabled
  • time-sensitive - assuming the user has not revoked time sensitive permissions for the app, the notification is delivered and can break through Focus/Do Not Disturb options to convey something very relevant (within the next hour)
  • critical - we can't use this, but for full disclosure this will always alert the user and play a sound. This requires another permission from Apple (which we won't request, given we won't be delivering anything that important)

By default, we should stick to using active. However there may be a few scenarios worth considering elevating to time-sensitive, such as:

  • Important announcements during the convention (however we'd need to emphasise to anyone posting them to not abuse this)
  • Art show deadlines
  • Maybe more?
@Fenrikur Fenrikur added this to the EF27 (2024) milestone Sep 9, 2023
@Fenrikur Fenrikur added the enhancement Improvements to existing features with relevant impact label Sep 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improvements to existing features with relevant impact
Projects
None yet
Development

No branches or pull requests

2 participants