Skip to content

Add notification features for Talk Managers #23

@jrrickerson

Description

@jrrickerson

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

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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions