В моем приложении есть встроенный чат-сервис. Зарегистрированный пользователь выберет другого пользователя, чтобы начать разговор с ним. Как я могу отправить поток для этого нового разговора двум пользователям, не заставляя их повторно получать подписки?
Единственный способ, которым он работает на данный момент, - это повторная подписка на канал разговоров (обновление страницы эмулирует это). Я следовал этому руководству gorails . Они не решали такую проблему.
def subscribed
conversations = current_user.conversations
conversations.each do |conversation|
stream_from "conversations:#{conversation.id}"
end
end
Это функция subscribed
, которая у меня есть. Всякий раз, когда пользователь создает новый диалог, current_user.conversations
изменится, но для потоковой передачи из нового диалога необходимо сбросить подписку. Есть идеи об обходном пути?