Not sure if this should *depend on* or *block* bug 32281 (shared notification infrastructure for user talk, lqt, watchlists, etc).
Need to be able to:
- fetch a count of 'unseen' notifications
- fetch a list of recent notifications, indicating which have been previously marked as seen
- set the last-seen cutoff
Can then be used to do live updates of 'you have new messages' on the web UI, a more detailed display of those (similar to, say, opening the 'notification' dropdown on Facebook).
Will also want long-poll, WebSockets-style, or Server-sent-events variants for more efficient usage, but these all require additional server-side support.
(See also sister bugs for iOS & Android push notification backends.)
AFAICT, Echo is the centralized notification system, you can already poll the API, and it has Flow integration for new messages.
Realtime would be nice, but there is a separate task for that (T34284: Update Echo Notifications in real time without page reloads), and the current task specifically asks for polling as its scope.