Anyone have any recommendations on how would you track whether a user has read a message or not?

I'm building a chat app and need to track which messages from various conversations the logged in user hasn't read yet.

I've seen a few ways of doing this already online.

  1. Check the last time the user was active, then check all the conversation messages that have been sent past that time and use this as a count to show unread messages.
  2. I didn't fully understand what they meant with this one, but something along the lines of creating another table called read_user_messages and create a link to all the messages they've read?
Please find my current db design attached
Untitled.png
Was this page helpful?