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

Event feed system #2672

Open
Type-kun opened this issue Sep 13, 2016 · 0 comments
Open

Event feed system #2672

Type-kun opened this issue Sep 13, 2016 · 0 comments
Labels

Comments

@Type-kun
Copy link
Collaborator

There are various events which users should or want to be notified about, but using DMails for most of them is a definite overkill. How about creating a simple feed system for such events? 5 columns - id, user_id, event_type, event_text, created_at - should suffice.

Examples of such events are:

  • user's upload is flagged
  • user's upload is undeleted
  • user's flag is resolved
  • post approved by user is flagged
  • new posts in certain forum topic (might replace or complement current email subscription)
  • new comments on certain posts
  • certain posts marked as translated (would work great with Translation Bump functionality #2430)
  • contents of user's note changed
  • user's uploads reaching certain landmarks in favorites or score
  • etc, etc. I'm pretty sure there will be many more applications to this system if it's implemented.

Additionally, events can be separated into mandatory, which users should see, and optional, which users could want to see. Making event stream configurable, with (for example) regular users able to see only mandatory events, and gold+ able to specify which events they want to see, would make for a good upgrade incentive.

UI-wise, I'm not sure what the best way would be. Events should only be visible for user themselves, that's a given. Full listing is necessary. Displaying last 5-10 events in user profile, along with a link to full listing, is one way to do this. Some kind of notification would probably be appreciated as well. Storing last_feed_read_at in user table and displaying count of unread events next to My Account in square brackets, for example. Or create a Feed in main menu, and make it italic when new entries appear.

Either way, I'm pretty sure users would welcome something like this. Basic version is not too hard to implement, either. Storage requirements are questionable, but that depends on the specifics of events, but probably wouldn't get any bigger than comments table, anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants