vijos / vj4

The online judge service with millions of submissions, since 2005.
https://vijos.org
GNU Affero General Public License v3.0
531 stars 109 forks source link

Support Notification System #266

Open breezewish opened 7 years ago

breezewish commented 7 years ago

A notification system is useful for discussions, comments and in-site messages.

  1. In the following cases a notification is generated:
    • the user is mentioned
    • the user's topic is being commented
    • the user's comment or solution is being replied (notice: we use @ to implement reply, so that we need to distinguish whether an @ is a reply)
    • the user receives a in-site message
    • the user's solution is marked as "editorial solution"
  2. Develop a notification center, displaying all unread and history notifications.
  3. Show unread notification count at the navigation bar.
  4. Nice-to-have: Allow additionally sending an email for each case in Point 1.
    • the user can disable receiving notification email for each case respectively in the preference page.
    • to prevent flooding user's mailbox & prevent our service being abused, the notification email is not send in real time. Instead it aggregates all notifications in past few minutes (e.g. 30 minutes).
  5. The user can disable or re-enable receiving notification for specified topic or comment. When notification for something is disabled, mails are not sent as well.
twd2 commented 7 years ago
  1. Should aggregate all notifications in past 1 week.
breezewish commented 7 years ago

@twd2 I think the delay of one week might be too long. The users may have forgotten the context after one week's time. Usually it is the report instead of the notification delivered in such period.

undefined-moe commented 5 years ago

Users need notification center! Emails are not necessary, but you can add a floating tip on other pages. e.g: When I visits vijos, I can notify the "New message" on the page, then I can click on it to view the message.