юзеров у каждого по M чатов.
1) Для каждого чата создавать по одному топику и подписывать на него юзера и в итоге выходит, что каждый юзер одновременно выполнил M FCM подписок на топики по одной на каждый чат.
FirebaseMessage.getInstance().subscribeToTopic(...)
Метод возвращает таску. На сколько я понимаю в итоге у юзера будет M открытых сокетов и это довольно таки избыточно, верно?
2) Выполнять рассылку по токену каждому юзеру. В чате есть N юзеров и серверу придётся по отдельности разослать месседж каждому юзеру по отдельности - взять массив receivers[id1,... idn] к каждому сделать запрос на получение нотификейшн токена и разослать нотификахи, тоже, как-то стремно и больно выглядит.
Что меньшее зло?
Ещё нужно учесть что нотификахи должны приходить в бекграунде и ещё одной проблемой первого подхода будет избыточное энергопотребление из за M открытых сокетов, или я не правильно понимаю механику подписок?
Можно отослать 1к юзеров сразу
Обсуждают сегодня