Couchbase Sync Function - Как я могу получить всех пользователей, которые имеют доступ к каналу в рамках функции синхронизации - PullRequest
0 голосов
/ 19 мая 2018

Я хотел бы получить все идентификаторы пользователей, которые имеют доступ к каналу из шлюза синхронизации.Например, если я предоставлю двум разным пользователям доступ к каналу.Затем приходит новый документ, который будет назначен этому каналу, я хотел бы получить массив пользователей, которые имеют доступ к этому каналу первым.

Мне нужен массив пользователей, которые имеют доступ к этому каналу, такчто я могу разослать APNS (push-уведомление яблок) пользователям этого канала, когда прибудет документ, который будет добавлен в этот канал.

В идеале было бы неплохо, если бы я мог просто сделать

{
   var usr_arr = channel(the_channel).users();
}

1 Ответ

0 голосов
/ 29 мая 2018

Эта возможность в настоящее время не существует в Sync Gateway (начиная с версии 2.0).

Вы можете сопоставить пользователей с каналами, поэтому я решил эту проблему (также для использования с push-уведомлениями):обратная карта, сканируя пользователей и получая каналы, к которым у них есть доступ.Затем я обновляю ленту изменений шлюза синхронизации.Ищите идентификаторы записей, которые начинаются с _user/.

. Это служит двойной цели: я также слушаю ленту изменений для мутаций в документах с обозначением канала.Затем я отправляю уведомление пользователям, имеющим доступ к этому каналу, для запуска репликации вместо того, чтобы репликации были всегда включены.

...