Different Notification Types By Type
I am making a notification system and using the great tutorial on here to do it. I am going to have a few different channels that a notification can be sent out with: email, web push, text message, in-app.
I would love to do something like what slack does where I get a web push notification on my computer but if the message isn't marked as read after a certain amount of time I get a push notification to my phone, and then if I don't answer that there's emails.
It would be super annoying to get a notification on all of those different channels, all at once, everytime I got a message on slack.
Can anyone help me wrap my mind around how I would go about building that?
Someone at Slack posted this flowchart of the rules used to determine whether or not to send a notification:
haha wow ... that's a heck of a flowchart. But from a technical standpoint do they just poll regularly on a queue to see if they have to get to the next step?
I imagine they go through most of it, and then just schedule a background job to notify via mobile if it hasn't already been marked as sent. I'm not sure what their delay is but it's like 3 minutes or something for mobile.