-
Notifications
You must be signed in to change notification settings - Fork 74
Open
Description
Create an opt-in notification feature for Talk Managers, so they can be notified of talk-related events.
Proposed design (modifications or suggestions are welcome!):
- Create a Notification Preferences model, which has a link to the User model. The admin page for Notification Preferences should only show the instance attached to the currently logged in user, unless that user is a superuser.
- Provide a list of events the user can turn on or off for notifications. For example:
- A new talk was submitted
- A talk was updated / modified
- A talk was booked
- A talk was canceled
- A new session was added
- A session is coming up which has no booked talks (based on time)
- A talk is available for an upcoming session but hasn't been booked for any session (based on time)
- Provide a list of notification methods
- Web notification while logged into admin (https://docs.djangoproject.com/en/1.11/ref/contrib/messages/ for example)
- Email notifications
- Text notifications
For implementation, the following would be required:
- For email notification, an email provider, configuration for Django's email system, and a set of email message templates for the various events.
- For text notifications, an SMS provider (like Twilio), configuration, and a set of message templates.
- For time-based notifications (ie. "one week until the next session!") a background worker or cron job will have to be enabled to check times and dates.
- The volume of notifications may warrant having the events pushed onto a queuing system and processed by a background worker.
Reactions are currently unavailable