Лучшей практикой для этого будет поддержание одного соединения с каналами, но создание подписки для каждого элемента в списке напоминаний.
Таким образом, вы бы позвонили pusher.subscribePrivate для каждого элемента в списке напоминаний, а затем на стороне сервера публикует sh для каждого отдельного канала, когда необходимо отправить напоминание.
Например, если пользователь хотел напомнить о «Чужих вещах» и «Оранжевый - это новый черный», вы бы подписались на:
pusher.subscribePrivate("private-app_ch.strangerthings"
и
pusher.subscribePrivate("private-app_ch.orangeisthenewblack"
Ваш сервер будет публиковать sh напоминаний о «Чужих вещах» в канал Чужих вещей и OISTNB в канал OISTNB и т. Д.
Таким образом, клиенту (серверу отправляются только соответствующие обновления). фильтрация). Если вы подпишетесь только на один канал, клиент получит сообщения, о которых он может не хотеть обновлений, и вам придется отфильтровать их на стороне клиента.
Это также объясняется здесь: https://support.pusher.com/hc/en-us/articles/360025398514-Should-i-subscribe-to-lots-of-Channels-
Еще один важный момент, который стоит учитывать, заключается в том, что каналы будут поддерживать активное соединение, только когда приложение открыто. Соединение будет закрыто, когда приложение будет заземлено / закрыто. Это означает, что для отправки напоминаний пользователь всегда должен быть в вашем приложении. Вы можете также рассмотреть возможность отправки уведомлений pu sh, когда приложение закрыто, чтобы пользователь не пропустил напоминания.