ASP.NET Core SignalR
Я знаю, что мы можем отправлять сообщения группе. Я знаю, что мы можем отправлять сообщения пользователю. Есть ли способ отправлять сообщения пользователю в группе, то есть пересечении предыдущих аудиторий.
Насколько я понимаю: группа - это набор подключений с именем группы в метаданных, а пользователь - это набор подключений с именем пользователя в утверждениях аутентификации. Пользователь в группе будет набором соединений, которые принадлежат определенному пользователю и являются частью определенной группы.
Судя по тому, как SignalR работает внутри, это должно быть возможно, но вероятно, что такой метод не был раскрыт.
Пример использования: предположим, что у вас есть чат-группы с группой людей, и вы хотите отправить определенное системное сообщение одному из пользователей в группе. Например, предположим, что серверу необходимо случайным образом выбрать одного из пользователей в группе и отправить ему секретный код для игры, который другие не должны знать (предположим, что на сервере уже есть список всех пользователей в группе и это не меняется, могут меняться только соединения). Сообщение должно отправляться конкретному пользователю, но не всем его подключениям. У него могут быть другие связи, которые активны для другой чат-группы, поэтому мы не хотим уведомлять эти связи. Мы хотим настроить таргетинг только на соединения, принадлежащие этому пользователю, которые в настоящее время являются частью определенной чат-группы.
Я использую службу Azure SignalR в бессерверном режиме с приложениями-функциями Azure NodeJS. Также могут помочь ответы для режима сервера по умолчанию в C #.
.NET Core SignalR
значительно отличается от.NET SignalR
5 лет назад - stackoverflow.com/questions/34381104/ - person Codi   schedule 08.12.2020