UX Specs: Notification Schedule

Overview

It's essential to maintain a balance between connectivity and productivity in work environments. The 'Notification Schedule' feature enables users to manage their availability by specifying times they wish to receive notifications. Outside these hours, their status automatically switches to "Do Not Disturb," silencing all notifications. This feature is particularly useful for:

  • Maintaining focus during deep work sessions without interruptions.

  • Limiting work-related notifications after working hours.

  • Adapting notification preferences to different work shifts or time zones.

 

Setting up the Notification Schedule

Desktop

Figma file

There are two ways for users to open the notification schedule setup UI in the webapp.

  1. Users can navigate to Settings and select the ‘Notifications' tab. Here, there’ll be a new section called `Notifications Schedule` where users can enable or disable the schedule and configure the preferred time frame for receiving notifications.

    image-20240509-223538.png

  2. They can also click on their profile icon in the top right, hover on the Do Not Disturb menu item, and choose Notification Schedule from the submenu. Clicking on this option should also open the Settings modal with the Notification Schedule section expanded.

    image-20240509-222847.png

Configuration options

Once the user enables notification schedule, they should be able to configure when they want to receive notifications with the following options:

  1. Days of week: Users can select from the following three options

    1. Every day

    2. Weekdays (Monday - Friday)

    3. Custom Schedule – If the user selects Custom schedule, the UI below this field should expand to show all days of the week and the user should be able to click on a day to enable or disable notifications on that day.

  2. Time: Users also need to select a time range within which they should receive notifications. Unless they select Custom schedule, they will have a single time range option which will apply to all days when notifications are active (every day or only weekdays based on the selection). If the user had selected Custom schedule earlier, they will be able to set a different time range against every day of the week. Any time outside of these hours, the user’s status will be set to Do Not Disturb and will not receive notifications.

    The time range fields should respect the Clock Display configuration (12-hour clock or 24-hour clock) of the user. Default values for the time range will be 9:00 AM to 5:00 PM (or 09:00 to 17:00).

    Time increments within these time inputs will align with the half-hour increments used for the custom time Do Not Disturb modal.

 

Mobile

Figma file

Users can tap on the profile icon in the bottom bar, go to Settings and select the ‘Notifications' option. Here, there’ll be a menu item called `Notifications schedule` where users can enable or disable the schedule and configure the preferred time frame for receiving notifications.

Configuration options

Once the user enables notification schedule, they should be able to configure when they want to receive notifications with the following options:

  1. Days of week: Users can select from the following three options

    1. Every day

    2. Weekdays (Monday - Friday)

    3. Custom Schedule

  1. Time: Users also need to select a time range within which they should receive notifications. Unless they select Custom schedule, they will have the option to select a start and end time which will apply to all days when notifications are active (every day or only weekdays based on the selection). If the user had selected Custom schedule earlier, they will be able to select the days of the week in which they want to enable notifications and then select a different time range against each one of those days. Any time outside of these hours, the user’s status will be set to Do Not Disturb and will not receive notifications.

Notification Schedule in Action

  • Once a notification schedule is set, the user’s status icon should automatically get updated 'Do Not Disturb' during the selected period.

  • This should happen irrespective of the current activity status of the user.

  • If the user clicks on the profile icon, Do Not Disturb should be the selected status and it should show until when it is going to remain like that, just like it happens if the status is changed to Do Not Disturb manually with an expiry.

  • The user can however choose to manually update their status at anytime, in which case it should not auto-switch to Do Not Disturb until the next cycle starts.