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

Notification Feature: Push Notifications to alert users #1055

Open
7 of 20 tasks
sleidig opened this issue Dec 2, 2021 · 3 comments
Open
7 of 20 tasks

Notification Feature: Push Notifications to alert users #1055

sleidig opened this issue Dec 2, 2021 · 3 comments
Assignees
Labels
Client: by X Client: _codo Type: Feature new user-facing feature Type: Summary overview of a larger topic which is broken down into several issues to be worked on
Milestone

Comments

@sleidig
Copy link
Member

sleidig commented Dec 2, 2021

As a user I should get actively pulled into the app with notifications in order to not miss new developments or required actions.

An overall notification feature should help users stay updated without the need to actively open the app and check data. Instead, both within the app (with some notification indicator) as well as through push notifications, the user should be automatically informed about new details.


On a technical level, this feature includes:

  • Service to trigger push notifications in a PWA (if needed, including backend and external services)
  • UI to show details of notifications within the app and an "unread notifications" indicator
  • Configuration logic to allow users to enable/disable different types of notifications for their account individually
  • Triggers for specific notifications for certain events:
    • notification when config is changed that affects certain behavior for users (e.g. a different pre-filter for the matching view)
    • notification when a new/changed entity record matches a criteria (e.g. the current user has been added as the "assigned person" on a task record or a new participant with status "signed up through public form" has been added)
  • in a future version:
    • notification when a planned date is reached (e.g. on the deadline of a task entity)
    • notification when an app update is available (to highlight new features)
    • emails in addition to push notifications

Broken into user stories as implementation steps:

As a user I can

Notifications drawio

@sleidig sleidig added discuss Type: Feature new user-facing feature Type: Summary overview of a larger topic which is broken down into several issues to be worked on labels Dec 2, 2021
@sleidig sleidig changed the title Push Notifications to ping users Push Notifications to alert users Dec 2, 2021
@sleidig sleidig moved this to Triage in All Tasks & Issues Feb 8, 2022
@sleidig sleidig moved this to Idea in Feature Roadmap Feb 8, 2022
@sleidig sleidig moved this from Triage to Todo in All Tasks & Issues Feb 8, 2022
@TheSlimvReal
Copy link
Collaborator

As far as I know there are 2 possible options for this currently:

1. Web Push API

You can send a notification message to a centralized server including the ID of the device where this notification should be triggered. This normally needs a backend service that handles the device IDs as well as the notification scheduling (maybe based on time or things happening in the database). The problem is that the central server can decide to drop a notification if e.g. too many notifications have been sent in the recent time.

2. Notification Triggers

From inside the web application notifications can be registered and scheduled. For the notification a so called trigger can be defined that defines when the application should be shown e.g. show a notification on next Monday morning. This has the great benefit that no backend service is required but probably has high limitations in how these triggers can be defined. Might work well for simple time-bound reminders.

@sleidig sleidig moved this from Idea to Planned in Feature Roadmap Aug 25, 2022
@TheSlimvReal TheSlimvReal self-assigned this Nov 8, 2022
@TheSlimvReal
Copy link
Collaborator

I seems like the main difference is whether the user should also receive notifications while the app is not running. If this is the case then push notifications should be used. Otherwise, notifications are also an option.

See this post

@sleidig sleidig moved this from Triage to Postponed / On Hold in All Tasks & Issues Sep 18, 2023
@sleidig sleidig removed the discuss label Sep 20, 2023
@TheSlimvReal TheSlimvReal mentioned this issue Sep 25, 2023
@sleidig sleidig linked a pull request Sep 25, 2023 that will close this issue
@sleidig sleidig removed a link to a pull request Sep 25, 2023
@TheSlimvReal TheSlimvReal removed their assignment Jan 3, 2024
@sleidig sleidig moved this from Planned to Idea in Feature Roadmap Mar 15, 2024
@sleidig sleidig changed the title Push Notifications to alert users Notification Feature: Push Notifications to alert users Nov 14, 2024
@sleidig sleidig moved this from Postponed / On Hold to Todo (ready for work) in All Tasks & Issues Nov 14, 2024
@sleidig sleidig added this to the Notifications milestone Nov 14, 2024
@sleidig sleidig moved this from Todo (ready for work) to Planned (current "sprint") in All Tasks & Issues Nov 25, 2024
@Ayush8923
Copy link
Contributor

I’ve documented the current behaviour and the proposed solution in this Document for better clarity and understanding.

@sleidig sleidig moved this from In Progress to Planned (current "sprint") in All Tasks & Issues Nov 27, 2024
@sleidig sleidig moved this from Idea to In Progress in Feature Roadmap Nov 27, 2024
@github-project-automation github-project-automation bot moved this to Triage / Analysis in All Tasks & Issues Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Client: by X Client: _codo Type: Feature new user-facing feature Type: Summary overview of a larger topic which is broken down into several issues to be worked on
Projects
Status: Triage / Analysis
Status: In Progress
Development

No branches or pull requests

3 participants