使用 SignalR,是否可以只发送一个人或一组消息?
With SignalR, is it possible to send only one person or group message?
包括 MSDN 在内的许多站点都举例说明了向所有客户端发送消息。
例如;使用Clients.All.addNewMessageToPage(),消息发送给所有用户。
如果我只想向正在聊天的一群人发送一条消息,应该怎么办?
或向单个联系人发送消息...
谢谢...
是的,你可以通过像这样加入群组来发送给一群人
public class ContosoChatHub : Hub
{
public Task JoinRoom(string roomName)
{
return Groups.Add(Context.ConnectionId, roomName);
}
public Task LeaveRoom(string roomName)
{
return Groups.Remove(Context.ConnectionId, roomName);
}
}
并通过
向该群组发送消息
Clients.Group(groupName).addChatMessage(name, message);
您可以查看此 link 了解更多信息
https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/working-with-groups
包括 MSDN 在内的许多站点都举例说明了向所有客户端发送消息。
例如;使用Clients.All.addNewMessageToPage(),消息发送给所有用户。
如果我只想向正在聊天的一群人发送一条消息,应该怎么办?
或向单个联系人发送消息...
谢谢...
是的,你可以通过像这样加入群组来发送给一群人
public class ContosoChatHub : Hub
{
public Task JoinRoom(string roomName)
{
return Groups.Add(Context.ConnectionId, roomName);
}
public Task LeaveRoom(string roomName)
{
return Groups.Remove(Context.ConnectionId, roomName);
}
}
并通过
向该群组发送消息Clients.Group(groupName).addChatMessage(name, message);
您可以查看此 link 了解更多信息 https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/working-with-groups