Как узнать, видно сообщение или нет - PullRequest
0 голосов
/ 06 апреля 2020

Мы отображаем список сообщений в фиде сообщений пользователя. Сообщения хранятся в коллекции каналов, где ее организуют пользователи. Мы хотим отслеживать, видел ли пользователь сообщение или нет

feed/{user_id}/
              {message_id1: {seen:0,score:0.2}}
              {message_id2: {seen:0,score:0.2}}
              {message_id3: {seen:1,score:0.2}} 

В настоящее время мы думаем обновить «увиденное» логическое значение для данного сообщения, если пользователь его увидел. Существуют ли более эффективные способы сделать это в firebase (например, нативная аналитика firebase). Не уверен, если делать так много записей эффективно обратно

1 Ответ

1 голос
/ 06 апреля 2020

Существует два распространенных способа отследить, какие сообщения видел пользователь:

  1. Сохранять флаг для каждого сообщения, которое видел пользователь.
  2. Сохранение отметки времени / ключа последнее сообщение, увиденное пользователем.

Письмо гораздо проще реализовать, но полагается на то, что пользователи обычно читают сообщение по порядку: прокручивая от самого старого непрочитанного сообщения до самого нового сообщения. , Если это не так для вас, на самом деле нет лучшего варианта, чем отслеживание статуса для каждого сообщения (и в многопользовательской комнате чата, для каждого пользователя тоже).

Также см .:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...