We need to notify people who were inactive when a specific clip / message was sent. Various approaches should be explored from daily email notifications to waiting 3 hours, etc.
Per message emails are too noisy (spam)
One batched email summarizing all missed messages
Daily digest is too slow for team chat
Implementation wise, every 5 minutes, run a job:
Go through all networks, and all streams that have a status of open.
Look at all members of that stream, their playback markers and the last_child_created_at. Compare and only address when the delta is more than 30 minutes.
Build a map of count of streams that every human is behind on.
Go through map, and send summary email if they are offline (pusher service)
Add a setting in Flowy.llink for disabling email notifications.
We need to notify people who were inactive when a specific clip / message was sent. Various approaches should be explored from daily email notifications to waiting 3 hours, etc.
- Per message emails are too noisy (spam)
- One batched email summarizing all missed messages
- Daily digest is too slow for team chat
Implementation wise, every 5 minutes, run a job:
1. Go through all networks, and all streams that have a status of `open`.
2. Look at all members of that stream, their playback markers and the `last_child_created_at`. Compare and only address when the delta is more than 30 minutes.
3. Build a map of count of streams that every human is behind on.
4. Go through map, and send summary email _if they are offline (pusher service)_
5. Add a setting in Flowy.llink for disabling email notifications.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
We need to notify people who were inactive when a specific clip / message was sent. Various approaches should be explored from daily email notifications to waiting 3 hours, etc.
Implementation wise, every 5 minutes, run a job:
open.last_child_created_at. Compare and only address when the delta is more than 30 minutes.