У меня есть вопрос. Я работаю с Rabbitmq в течение некоторого времени, но я всегда использовал Rabbimq с опубликованными c доступными сообщениями через WebSocket (например, длинное обновление, которое длится около часа, веб-интерфейс получил соединение WebSocket с Rabbimq, и немногие потребители отправляют уведомления о прогрессе ( например, 5%, 10%, 15% - модуль A завершен, 20% и т. д. c). В этом примере сообщения, отправляемые через WebSocket (consumer => rabbimq => WebSocket в браузере), должны быть общедоступными (каждый должен см. их).
Но что, если я хочу, чтобы только указанный c WebSocket будет получать сообщения, отправленные потребителем? (например, только user_id = 99, потому что это личное сообщение / личное уведомление).
Как это сделать? Можно отправлять user_id указанные c сообщения от потребителя => rabbitmq => websocket (browser)?
Есть ли способ, например, во время JS Соединение инициализации Websocket отправляет user_id в Rabbitmq, а затем Rabbitmq будет отправлять только те сообщения, которые соответствуют данному user_id?
Например:
on-js-websocket-connect send { user_id: 99 }
on-consumer-message send { user_id: 99, message: "Hi, how are you?" }
И Rabbitmq отправит это сообщение только одному указанному c WebSocket (или многим WebSocket, если user_id совпадение - например, пользователь открыл много вкладок в браузере).