ActionCable: Как проверить, подписан ли пользователь на канал? - PullRequest
1 голос
/ 26 мая 2019

Ситуация: у меня есть небольшое приложение чата с двумя пользователями в каждой комнате.Позволяет называть их Отправителем и Получателем.

Я хотел бы сделать «прочитанные / непрочитанные сообщения».

Чтобы определить, прочитано ли сообщение Отправителя, ему нужно знать, находится ли Получатель в настоящее времяподписался на канал.

Я пытаюсь просмотреть подписки:

# I can retrieve subscriptions from Redis:
redis_record = Redis.new.pubsub("channels", "action_cable/*")
# I can make such id
key = Base64.encode64("gid://test-app/User/1").tr('=', '').tr('actioncable/', '').chomp

Но я не знаю, как искать существующую запись.Пробовал:

Redis.new.scan(0, match: key)

Безрезультатно.

Вопрос: как узнать, активна ли подписка? (при использовании Redis нет необходимости), может быть, ActionCable как-то связан с этим где-то внутри коробки)

...